diff --git a/.github/workflows/platform-frontend-ci.yml b/.github/workflows/platform-frontend-ci.yml
index ec7dec0017..29394392c4 100644
--- a/.github/workflows/platform-frontend-ci.yml
+++ b/.github/workflows/platform-frontend-ci.yml
@@ -42,7 +42,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- browser: [chromium, firefox, webkit]
+ browser: [chromium, webkit]
steps:
- name: Checkout repository
diff --git a/.gitignore b/.gitignore
index 1838a28a61..d00ab276ce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -173,4 +173,6 @@ LICENSE.rtf
autogpt_platform/backend/settings.py
/.auth
/autogpt_platform/frontend/.auth
-.test-contents
\ No newline at end of file
+
+*.ign.*
+.test-contents
diff --git a/autogpt_platform/autogpt_libs/autogpt_libs/auth/depends.py b/autogpt_platform/autogpt_libs/autogpt_libs/auth/depends.py
index 55fa427366..88409e413c 100644
--- a/autogpt_platform/autogpt_libs/autogpt_libs/auth/depends.py
+++ b/autogpt_platform/autogpt_libs/autogpt_libs/auth/depends.py
@@ -35,3 +35,12 @@ def verify_user(payload: dict | None, admin_only: bool) -> User:
raise fastapi.HTTPException(status_code=403, detail="Admin access required")
return User.from_payload(payload)
+
+
+def get_user_id(payload: dict = fastapi.Depends(auth_middleware)) -> str:
+ user_id = payload.get("sub")
+ if not user_id:
+ raise fastapi.HTTPException(
+ status_code=401, detail="User ID not found in token"
+ )
+ return user_id
diff --git a/autogpt_platform/backend/Dockerfile b/autogpt_platform/backend/Dockerfile
index ee33b0d7d9..22b9d9bb0b 100644
--- a/autogpt_platform/backend/Dockerfile
+++ b/autogpt_platform/backend/Dockerfile
@@ -6,18 +6,23 @@ ENV PYTHONUNBUFFERED 1
WORKDIR /app
+RUN echo 'Acquire::http::Pipeline-Depth 0;\nAcquire::http::No-Cache true;\nAcquire::BrokenProxy true;\n' > /etc/apt/apt.conf.d/99fixbadproxy
+
+RUN apt-get update --allow-releaseinfo-change --fix-missing
+
# Install build dependencies
-RUN apt-get update \
- && apt-get install -y build-essential curl ffmpeg wget libcurl4-gnutls-dev libexpat1-dev libpq5 gettext libz-dev libssl-dev postgresql-client git \
- && apt-get clean \
- && rm -rf /var/lib/apt/lists/*
-
-ENV POETRY_VERSION=1.8.3 \
- POETRY_HOME="/opt/poetry" \
- POETRY_NO_INTERACTION=1 \
- POETRY_VIRTUALENVS_CREATE=false \
- PATH="$POETRY_HOME/bin:$PATH"
+RUN apt-get install -y build-essential
+RUN apt-get install -y libpq5
+RUN apt-get install -y libz-dev
+RUN apt-get install -y libssl-dev
+RUN apt-get install -y postgresql-client
+ENV POETRY_VERSION=1.8.3
+ENV POETRY_HOME=/opt/poetry
+ENV POETRY_NO_INTERACTION=1
+ENV POETRY_VIRTUALENVS_CREATE=false
+ENV PATH=/opt/poetry/bin:$PATH
+
# Upgrade pip and setuptools to fix security vulnerabilities
RUN pip3 install --upgrade pip setuptools
@@ -39,11 +44,11 @@ FROM python:3.11.10-slim-bookworm AS server_dependencies
WORKDIR /app
-ENV POETRY_VERSION=1.8.3 \
- POETRY_HOME="/opt/poetry" \
- POETRY_NO_INTERACTION=1 \
- POETRY_VIRTUALENVS_CREATE=false \
- PATH="$POETRY_HOME/bin:$PATH"
+ENV POETRY_VERSION=1.8.3
+ENV POETRY_HOME=/opt/poetry
+ENV POETRY_NO_INTERACTION=1
+ENV POETRY_VIRTUALENVS_CREATE=false
+ENV PATH=/opt/poetry/bin:$PATH
# Upgrade pip and setuptools to fix security vulnerabilities
diff --git a/autogpt_platform/backend/backend/blocks/pinecone.py b/autogpt_platform/backend/backend/blocks/pinecone.py
index f1b79f4431..adfbc2e33f 100644
--- a/autogpt_platform/backend/backend/blocks/pinecone.py
+++ b/autogpt_platform/backend/backend/blocks/pinecone.py
@@ -143,7 +143,7 @@ class PineconeQueryBlock(Block):
top_k=input_data.top_k,
include_values=input_data.include_values,
include_metadata=input_data.include_metadata,
- ).to_dict()
+ ).to_dict() # type: ignore
combined_text = ""
if results["matches"]:
texts = [
diff --git a/autogpt_platform/backend/backend/data/model.py b/autogpt_platform/backend/backend/data/model.py
index 9e79fd7da3..933d2036ef 100644
--- a/autogpt_platform/backend/backend/data/model.py
+++ b/autogpt_platform/backend/backend/data/model.py
@@ -160,7 +160,7 @@ def SchemaField(
exclude=exclude,
json_schema_extra=json_extra,
**kwargs,
- )
+ ) # type: ignore
class _BaseCredentials(BaseModel):
diff --git a/autogpt_platform/backend/backend/server/rest_api.py b/autogpt_platform/backend/backend/server/rest_api.py
index a45824418e..2a7f84ca4b 100644
--- a/autogpt_platform/backend/backend/server/rest_api.py
+++ b/autogpt_platform/backend/backend/server/rest_api.py
@@ -16,6 +16,7 @@ import backend.data.db
import backend.data.graph
import backend.data.user
import backend.server.routers.v1
+import backend.server.v2.store.routes
import backend.util.service
import backend.util.settings
@@ -84,7 +85,10 @@ def handle_internal_http_error(status_code: int = 500, log_error: bool = True):
app.add_exception_handler(ValueError, handle_internal_http_error(400))
app.add_exception_handler(Exception, handle_internal_http_error(500))
-app.include_router(backend.server.routers.v1.v1_router, tags=["v1"])
+app.include_router(backend.server.routers.v1.v1_router, tags=["v1"], prefix="/api")
+app.include_router(
+ backend.server.v2.store.routes.router, tags=["v2"], prefix="/api/store"
+)
@app.get(path="/health", tags=["health"], dependencies=[])
diff --git a/autogpt_platform/backend/backend/server/routers/v1.py b/autogpt_platform/backend/backend/server/routers/v1.py
index 387027337a..9c5f3522a7 100644
--- a/autogpt_platform/backend/backend/server/routers/v1.py
+++ b/autogpt_platform/backend/backend/server/routers/v1.py
@@ -69,8 +69,7 @@ integration_creds_manager = IntegrationCredentialsManager()
_user_credit_model = get_user_credit_model()
# Define the API routes
-v1_router = APIRouter(prefix="/api")
-
+v1_router = APIRouter()
v1_router.include_router(
backend.server.integrations.router.router,
@@ -132,7 +131,7 @@ def execute_graph_block(block_id: str, data: BlockInput) -> CompletedBlockOutput
@v1_router.get(path="/credits", dependencies=[Depends(auth_middleware)])
async def get_user_credits(
- user_id: Annotated[str, Depends(get_user_id)]
+ user_id: Annotated[str, Depends(get_user_id)],
) -> dict[str, int]:
# Credits can go negative, so ensure it's at least 0 for user to see.
return {"credits": max(await _user_credit_model.get_or_refill_credit(user_id), 0)}
diff --git a/autogpt_platform/backend/backend/server/v2/store/__init__.py b/autogpt_platform/backend/backend/server/v2/store/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/autogpt_platform/backend/backend/server/v2/store/db.py b/autogpt_platform/backend/backend/server/v2/store/db.py
new file mode 100644
index 0000000000..af761a0a47
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/db.py
@@ -0,0 +1,761 @@
+import logging
+import random
+from datetime import datetime
+
+import prisma.enums
+import prisma.errors
+import prisma.models
+import prisma.types
+
+import backend.server.v2.store.exceptions
+import backend.server.v2.store.model
+
+logger = logging.getLogger(__name__)
+
+
+async def get_store_agents(
+ featured: bool = False,
+ creator: str | None = None,
+ sorted_by: str | None = None,
+ search_query: str | None = None,
+ category: str | None = None,
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.StoreAgentsResponse:
+ logger.debug(
+ f"Getting store agents. featured={featured}, creator={creator}, sorted_by={sorted_by}, search={search_query}, category={category}, page={page}"
+ )
+ sanitized_query = None
+ # Sanitize and validate search query by escaping special characters
+ if search_query is not None:
+ sanitized_query = search_query.strip()
+ if not sanitized_query or len(sanitized_query) > 100: # Reasonable length limit
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Invalid search query"
+ )
+
+ # Escape special SQL characters
+ sanitized_query = (
+ sanitized_query.replace("\\", "\\\\")
+ .replace("%", "\\%")
+ .replace("_", "\\_")
+ .replace("[", "\\[")
+ .replace("]", "\\]")
+ .replace("'", "\\'")
+ .replace('"', '\\"')
+ .replace(";", "\\;")
+ .replace("--", "\\--")
+ .replace("/*", "\\/*")
+ .replace("*/", "\\*/")
+ )
+
+ where_clause = {}
+ if featured:
+ where_clause["featured"] = featured
+ if creator:
+ where_clause["creator_username"] = creator
+ if category:
+ where_clause["categories"] = {"has": category}
+
+ if sanitized_query:
+ where_clause["OR"] = [
+ {"agent_name": {"contains": sanitized_query, "mode": "insensitive"}},
+ {"description": {"contains": sanitized_query, "mode": "insensitive"}},
+ ]
+
+ order_by = []
+ if sorted_by == "rating":
+ order_by.append({"rating": "desc"})
+ elif sorted_by == "runs":
+ order_by.append({"runs": "desc"})
+ elif sorted_by == "name":
+ order_by.append({"agent_name": "asc"})
+
+ try:
+ agents = await prisma.models.StoreAgent.prisma().find_many(
+ where=prisma.types.StoreAgentWhereInput(**where_clause),
+ order=order_by,
+ skip=(page - 1) * page_size,
+ take=page_size,
+ )
+
+ total = await prisma.models.StoreAgent.prisma().count(
+ where=prisma.types.StoreAgentWhereInput(**where_clause)
+ )
+ total_pages = (total + page_size - 1) // page_size
+
+ store_agents = [
+ backend.server.v2.store.model.StoreAgent(
+ slug=agent.slug,
+ agent_name=agent.agent_name,
+ agent_image=agent.agent_image[0] if agent.agent_image else "",
+ creator=agent.creator_username,
+ creator_avatar=agent.creator_avatar,
+ sub_heading=agent.sub_heading,
+ description=agent.description,
+ runs=agent.runs,
+ rating=agent.rating,
+ )
+ for agent in agents
+ ]
+
+ logger.debug(f"Found {len(store_agents)} agents")
+ return backend.server.v2.store.model.StoreAgentsResponse(
+ agents=store_agents,
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=page,
+ total_items=total,
+ total_pages=total_pages,
+ page_size=page_size,
+ ),
+ )
+ except Exception as e:
+ logger.error(f"Error getting store agents: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to fetch store agents"
+ ) from e
+
+
+async def get_store_agent_details(
+ username: str, agent_name: str
+) -> backend.server.v2.store.model.StoreAgentDetails:
+ logger.debug(f"Getting store agent details for {username}/{agent_name}")
+
+ try:
+ agent = await prisma.models.StoreAgent.prisma().find_first(
+ where={"creator_username": username, "slug": agent_name}
+ )
+
+ if not agent:
+ logger.warning(f"Agent not found: {username}/{agent_name}")
+ raise backend.server.v2.store.exceptions.AgentNotFoundError(
+ f"Agent {username}/{agent_name} not found"
+ )
+
+ logger.debug(f"Found agent details for {username}/{agent_name}")
+ return backend.server.v2.store.model.StoreAgentDetails(
+ store_listing_version_id=agent.storeListingVersionId,
+ slug=agent.slug,
+ agent_name=agent.agent_name,
+ agent_video=agent.agent_video or "",
+ agent_image=agent.agent_image,
+ creator=agent.creator_username,
+ creator_avatar=agent.creator_avatar,
+ sub_heading=agent.sub_heading,
+ description=agent.description,
+ categories=agent.categories,
+ runs=agent.runs,
+ rating=agent.rating,
+ versions=agent.versions,
+ last_updated=agent.updated_at,
+ )
+ except backend.server.v2.store.exceptions.AgentNotFoundError:
+ raise
+ except Exception as e:
+ logger.error(f"Error getting store agent details: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to fetch agent details"
+ ) from e
+
+
+async def get_store_creators(
+ featured: bool = False,
+ search_query: str | None = None,
+ sorted_by: str | None = None,
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.CreatorsResponse:
+ logger.debug(
+ f"Getting store creators. featured={featured}, search={search_query}, sorted_by={sorted_by}, page={page}"
+ )
+
+ # Build where clause with sanitized inputs
+ where = {}
+
+ # Add search filter if provided, using parameterized queries
+ if search_query:
+ # Sanitize and validate search query by escaping special characters
+ sanitized_query = search_query.strip()
+ if not sanitized_query or len(sanitized_query) > 100: # Reasonable length limit
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Invalid search query"
+ )
+
+ # Escape special SQL characters
+ sanitized_query = (
+ sanitized_query.replace("\\", "\\\\")
+ .replace("%", "\\%")
+ .replace("_", "\\_")
+ .replace("[", "\\[")
+ .replace("]", "\\]")
+ .replace("'", "\\'")
+ .replace('"', '\\"')
+ .replace(";", "\\;")
+ .replace("--", "\\--")
+ .replace("/*", "\\/*")
+ .replace("*/", "\\*/")
+ )
+
+ where["OR"] = [
+ {"username": {"contains": sanitized_query, "mode": "insensitive"}},
+ {"name": {"contains": sanitized_query, "mode": "insensitive"}},
+ {"description": {"contains": sanitized_query, "mode": "insensitive"}},
+ ]
+
+ try:
+ # Validate pagination parameters
+ if not isinstance(page, int) or page < 1:
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Invalid page number"
+ )
+ if not isinstance(page_size, int) or page_size < 1 or page_size > 100:
+ raise backend.server.v2.store.exceptions.DatabaseError("Invalid page size")
+
+ # Get total count for pagination using sanitized where clause
+ total = await prisma.models.Creator.prisma().count(
+ where=prisma.types.CreatorWhereInput(**where)
+ )
+ total_pages = (total + page_size - 1) // page_size
+
+ # Add pagination with validated parameters
+ skip = (page - 1) * page_size
+ take = page_size
+
+ # Add sorting with validated sort parameter
+ order = []
+ valid_sort_fields = {"agent_rating", "agent_runs", "num_agents"}
+ if sorted_by in valid_sort_fields:
+ order.append({sorted_by: "desc"})
+ else:
+ order.append({"username": "asc"})
+
+ # Execute query with sanitized parameters
+ creators = await prisma.models.Creator.prisma().find_many(
+ where=prisma.types.CreatorWhereInput(**where),
+ skip=skip,
+ take=take,
+ order=order,
+ )
+
+ # Convert to response model
+ creator_models = [
+ backend.server.v2.store.model.Creator(
+ username=creator.username,
+ name=creator.name,
+ description=creator.description,
+ avatar_url=creator.avatar_url,
+ num_agents=creator.num_agents,
+ agent_rating=creator.agent_rating,
+ agent_runs=creator.agent_runs,
+ )
+ for creator in creators
+ ]
+
+ logger.debug(f"Found {len(creator_models)} creators")
+ return backend.server.v2.store.model.CreatorsResponse(
+ creators=creator_models,
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=page,
+ total_items=total,
+ total_pages=total_pages,
+ page_size=page_size,
+ ),
+ )
+ except Exception as e:
+ logger.error(f"Error getting store creators: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to fetch store creators"
+ ) from e
+
+
+async def get_store_creator_details(
+ username: str,
+) -> backend.server.v2.store.model.CreatorDetails:
+ logger.debug(f"Getting store creator details for {username}")
+
+ try:
+ # Query creator details from database
+ creator = await prisma.models.Creator.prisma().find_unique(
+ where={"username": username}
+ )
+
+ if not creator:
+ logger.warning(f"Creator not found: {username}")
+ raise backend.server.v2.store.exceptions.CreatorNotFoundError(
+ f"Creator {username} not found"
+ )
+
+ logger.debug(f"Found creator details for {username}")
+ return backend.server.v2.store.model.CreatorDetails(
+ name=creator.name,
+ username=creator.username,
+ description=creator.description,
+ links=creator.links,
+ avatar_url=creator.avatar_url,
+ agent_rating=creator.agent_rating,
+ agent_runs=creator.agent_runs,
+ top_categories=creator.top_categories,
+ )
+ except backend.server.v2.store.exceptions.CreatorNotFoundError:
+ raise
+ except Exception as e:
+ logger.error(f"Error getting store creator details: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to fetch creator details"
+ ) from e
+
+
+async def get_store_submissions(
+ user_id: str, page: int = 1, page_size: int = 20
+) -> backend.server.v2.store.model.StoreSubmissionsResponse:
+ logger.debug(f"Getting store submissions for user {user_id}, page={page}")
+
+ try:
+ # Calculate pagination values
+ skip = (page - 1) * page_size
+
+ where = prisma.types.StoreSubmissionWhereInput(user_id=user_id)
+ # Query submissions from database
+ submissions = await prisma.models.StoreSubmission.prisma().find_many(
+ where=where, skip=skip, take=page_size, order=[{"date_submitted": "desc"}]
+ )
+
+ # Get total count for pagination
+ total = await prisma.models.StoreSubmission.prisma().count(where=where)
+
+ total_pages = (total + page_size - 1) // page_size
+
+ # Convert to response models
+ submission_models = [
+ backend.server.v2.store.model.StoreSubmission(
+ agent_id=sub.agent_id,
+ agent_version=sub.agent_version,
+ name=sub.name,
+ sub_heading=sub.sub_heading,
+ slug=sub.slug,
+ description=sub.description,
+ image_urls=sub.image_urls or [],
+ date_submitted=sub.date_submitted or datetime.now(),
+ status=sub.status,
+ runs=sub.runs or 0,
+ rating=sub.rating or 0.0,
+ )
+ for sub in submissions
+ ]
+
+ logger.debug(f"Found {len(submission_models)} submissions")
+ return backend.server.v2.store.model.StoreSubmissionsResponse(
+ submissions=submission_models,
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=page,
+ total_items=total,
+ total_pages=total_pages,
+ page_size=page_size,
+ ),
+ )
+
+ except Exception as e:
+ logger.error(f"Error fetching store submissions: {str(e)}")
+ # Return empty response rather than exposing internal errors
+ return backend.server.v2.store.model.StoreSubmissionsResponse(
+ submissions=[],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=page,
+ total_items=0,
+ total_pages=0,
+ page_size=page_size,
+ ),
+ )
+
+
+async def delete_store_submission(
+ user_id: str,
+ submission_id: str,
+) -> bool:
+ """
+ Delete a store listing submission.
+
+ Args:
+ user_id: ID of the authenticated user
+ submission_id: ID of the submission to be deleted
+
+ Returns:
+ bool: True if the submission was successfully deleted, False otherwise
+ """
+ logger.debug(f"Deleting store submission {submission_id} for user {user_id}")
+
+ try:
+ # Verify the submission belongs to this user
+ submission = await prisma.models.StoreListing.prisma().find_first(
+ where={"agentId": submission_id, "owningUserId": user_id}
+ )
+
+ if not submission:
+ logger.warning(f"Submission not found for user {user_id}: {submission_id}")
+ raise backend.server.v2.store.exceptions.SubmissionNotFoundError(
+ f"Submission not found for this user. User ID: {user_id}, Submission ID: {submission_id}"
+ )
+
+ # Delete the submission
+ await prisma.models.StoreListing.prisma().delete(
+ where=prisma.types.StoreListingWhereUniqueInput(id=submission.id)
+ )
+
+ logger.debug(
+ f"Successfully deleted submission {submission_id} for user {user_id}"
+ )
+ return True
+
+ except Exception as e:
+ logger.error(f"Error deleting store submission: {str(e)}")
+ return False
+
+
+async def create_store_submission(
+ user_id: str,
+ agent_id: str,
+ agent_version: int,
+ slug: str,
+ name: str,
+ video_url: str | None = None,
+ image_urls: list[str] = [],
+ description: str = "",
+ sub_heading: str = "",
+ categories: list[str] = [],
+) -> backend.server.v2.store.model.StoreSubmission:
+ """
+ Create a new store listing submission.
+
+ Args:
+ user_id: ID of the authenticated user submitting the listing
+ agent_id: ID of the agent being submitted
+ agent_version: Version of the agent being submitted
+ slug: URL slug for the listing
+ name: Name of the agent
+ video_url: Optional URL to video demo
+ image_urls: List of image URLs for the listing
+ description: Description of the agent
+ categories: List of categories for the agent
+
+ Returns:
+ StoreSubmission: The created store submission
+ """
+ logger.debug(
+ f"Creating store submission for user {user_id}, agent {agent_id} v{agent_version}"
+ )
+
+ try:
+ # First verify the agent belongs to this user
+ agent = await prisma.models.AgentGraph.prisma().find_first(
+ where=prisma.types.AgentGraphWhereInput(
+ id=agent_id, version=agent_version, userId=user_id
+ )
+ )
+
+ if not agent:
+ logger.warning(
+ f"Agent not found for user {user_id}: {agent_id} v{agent_version}"
+ )
+ raise backend.server.v2.store.exceptions.AgentNotFoundError(
+ f"Agent not found for this user. User ID: {user_id}, Agent ID: {agent_id}, Version: {agent_version}"
+ )
+
+ listing = await prisma.models.StoreListing.prisma().find_first(
+ where=prisma.types.StoreListingWhereInput(
+ agentId=agent_id, owningUserId=user_id
+ )
+ )
+ if listing is not None:
+ logger.warning(f"Listing already exists for agent {agent_id}")
+ raise backend.server.v2.store.exceptions.ListingExistsError(
+ "Listing already exists for this agent"
+ )
+
+ # Create the store listing
+ listing = await prisma.models.StoreListing.prisma().create(
+ data={
+ "agentId": agent_id,
+ "agentVersion": agent_version,
+ "owningUserId": user_id,
+ "createdAt": datetime.now(),
+ "StoreListingVersions": {
+ "create": {
+ "agentId": agent_id,
+ "agentVersion": agent_version,
+ "slug": slug,
+ "name": name,
+ "videoUrl": video_url,
+ "imageUrls": image_urls,
+ "description": description,
+ "categories": categories,
+ "subHeading": sub_heading,
+ }
+ },
+ }
+ )
+
+ logger.debug(f"Created store listing for agent {agent_id}")
+ # Return submission details
+ return backend.server.v2.store.model.StoreSubmission(
+ agent_id=agent_id,
+ agent_version=agent_version,
+ name=name,
+ slug=slug,
+ sub_heading=sub_heading,
+ description=description,
+ image_urls=image_urls,
+ date_submitted=listing.createdAt,
+ status=prisma.enums.SubmissionStatus.PENDING,
+ runs=0,
+ rating=0.0,
+ )
+
+ except (
+ backend.server.v2.store.exceptions.AgentNotFoundError,
+ backend.server.v2.store.exceptions.ListingExistsError,
+ ):
+ raise
+ except prisma.errors.PrismaError as e:
+ logger.error(f"Database error creating store submission: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to create store submission"
+ ) from e
+
+
+async def create_store_review(
+ user_id: str,
+ store_listing_version_id: str,
+ score: int,
+ comments: str | None = None,
+) -> backend.server.v2.store.model.StoreReview:
+ try:
+ review = await prisma.models.StoreListingReview.prisma().upsert(
+ where={
+ "storeListingVersionId_reviewByUserId": {
+ "storeListingVersionId": store_listing_version_id,
+ "reviewByUserId": user_id,
+ }
+ },
+ data={
+ "create": {
+ "reviewByUserId": user_id,
+ "storeListingVersionId": store_listing_version_id,
+ "score": score,
+ "comments": comments,
+ },
+ "update": {
+ "score": score,
+ "comments": comments,
+ },
+ },
+ )
+
+ return backend.server.v2.store.model.StoreReview(
+ score=review.score,
+ comments=review.comments,
+ )
+
+ except prisma.errors.PrismaError as e:
+ logger.error(f"Database error creating store review: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to create store review"
+ ) from e
+
+
+async def get_user_profile(
+ user_id: str,
+) -> backend.server.v2.store.model.ProfileDetails:
+ logger.debug(f"Getting user profile for {user_id}")
+
+ try:
+ profile = await prisma.models.Profile.prisma().find_first(
+ where={"userId": user_id} # type: ignore
+ )
+
+ if not profile:
+ logger.warning(f"Profile not found for user {user_id}")
+ await prisma.models.Profile.prisma().create(
+ data=prisma.types.ProfileCreateInput(
+ userId=user_id,
+ name="No Profile Data",
+ username=f"{random.choice(['happy', 'clever', 'swift', 'bright', 'wise'])}-{random.choice(['fox', 'wolf', 'bear', 'eagle', 'owl'])}_{random.randint(1000,9999)}",
+ description="No Profile Data",
+ links=[],
+ avatarUrl="",
+ )
+ )
+ return backend.server.v2.store.model.ProfileDetails(
+ name="No Profile Data",
+ username="No Profile Data",
+ description="No Profile Data",
+ links=[],
+ avatar_url="",
+ )
+
+ return backend.server.v2.store.model.ProfileDetails(
+ name=profile.name,
+ username=profile.username,
+ description=profile.description,
+ links=profile.links,
+ avatar_url=profile.avatarUrl,
+ )
+ except Exception as e:
+ logger.error(f"Error getting user profile: {str(e)}")
+ return backend.server.v2.store.model.ProfileDetails(
+ name="No Profile Data",
+ username="No Profile Data",
+ description="No Profile Data",
+ links=[],
+ avatar_url="",
+ )
+
+
+async def update_or_create_profile(
+ user_id: str, profile: backend.server.v2.store.model.Profile
+) -> backend.server.v2.store.model.CreatorDetails:
+ """
+ Update the store profile for a user. Creates a new profile if one doesn't exist.
+ Only allows updating if the user_id matches the owning user.
+
+ Args:
+ user_id: ID of the authenticated user
+ profile: Updated profile details
+
+ Returns:
+ CreatorDetails: The updated profile
+
+ Raises:
+ HTTPException: If user is not authorized to update this profile
+ """
+ logger.debug(f"Updating profile for user {user_id}")
+
+ try:
+ # Check if profile exists for user
+ existing_profile = await prisma.models.Profile.prisma().find_first(
+ where={"userId": user_id}
+ )
+
+ # If no profile exists, create a new one
+ if not existing_profile:
+ logger.debug(f"Creating new profile for user {user_id}")
+ # Create new profile since one doesn't exist
+ new_profile = await prisma.models.Profile.prisma().create(
+ data={
+ "userId": user_id,
+ "name": profile.name,
+ "username": profile.username,
+ "description": profile.description,
+ "links": profile.links,
+ "avatarUrl": profile.avatar_url,
+ }
+ )
+
+ return backend.server.v2.store.model.CreatorDetails(
+ name=new_profile.name,
+ username=new_profile.username,
+ description=new_profile.description,
+ links=new_profile.links,
+ avatar_url=new_profile.avatarUrl or "",
+ agent_rating=0.0,
+ agent_runs=0,
+ top_categories=[],
+ )
+ else:
+ logger.debug(f"Updating existing profile for user {user_id}")
+ # Update the existing profile
+ updated_profile = await prisma.models.Profile.prisma().update(
+ where={"id": existing_profile.id},
+ data=prisma.types.ProfileUpdateInput(
+ name=profile.name,
+ username=profile.username,
+ description=profile.description,
+ links=profile.links,
+ avatarUrl=profile.avatar_url,
+ ),
+ )
+ if updated_profile is None:
+ logger.error(f"Failed to update profile for user {user_id}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to update profile"
+ )
+
+ return backend.server.v2.store.model.CreatorDetails(
+ name=updated_profile.name,
+ username=updated_profile.username,
+ description=updated_profile.description,
+ links=updated_profile.links,
+ avatar_url=updated_profile.avatarUrl or "",
+ agent_rating=0.0,
+ agent_runs=0,
+ top_categories=[],
+ )
+
+ except prisma.errors.PrismaError as e:
+ logger.error(f"Database error updating profile: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to update profile"
+ ) from e
+
+
+async def get_my_agents(
+ user_id: str,
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.MyAgentsResponse:
+ logger.debug(f"Getting my agents for user {user_id}, page={page}")
+
+ try:
+ agents_with_max_version = await prisma.models.AgentGraph.prisma().find_many(
+ where=prisma.types.AgentGraphWhereInput(
+ userId=user_id, StoreListing={"none": {"isDeleted": False}}
+ ),
+ order=[{"version": "desc"}],
+ distinct=["id"],
+ skip=(page - 1) * page_size,
+ take=page_size,
+ )
+
+ # store_listings = await prisma.models.StoreListing.prisma().find_many(
+ # where=prisma.types.StoreListingWhereInput(
+ # isDeleted=False,
+ # ),
+ # )
+
+ total = len(
+ await prisma.models.AgentGraph.prisma().find_many(
+ where=prisma.types.AgentGraphWhereInput(
+ userId=user_id, StoreListing={"none": {"isDeleted": False}}
+ ),
+ order=[{"version": "desc"}],
+ distinct=["id"],
+ )
+ )
+
+ total_pages = (total + page_size - 1) // page_size
+
+ agents = agents_with_max_version
+
+ my_agents = [
+ backend.server.v2.store.model.MyAgent(
+ agent_id=agent.id,
+ agent_version=agent.version,
+ agent_name=agent.name or "",
+ last_edited=agent.updatedAt or agent.createdAt,
+ )
+ for agent in agents
+ ]
+
+ return backend.server.v2.store.model.MyAgentsResponse(
+ agents=my_agents,
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=page,
+ total_items=total,
+ total_pages=total_pages,
+ page_size=page_size,
+ ),
+ )
+ except Exception as e:
+ logger.error(f"Error getting my agents: {str(e)}")
+ raise backend.server.v2.store.exceptions.DatabaseError(
+ "Failed to fetch my agents"
+ ) from e
diff --git a/autogpt_platform/backend/backend/server/v2/store/db_test.py b/autogpt_platform/backend/backend/server/v2/store/db_test.py
new file mode 100644
index 0000000000..2744932783
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/db_test.py
@@ -0,0 +1,260 @@
+from datetime import datetime
+
+import prisma.errors
+import prisma.models
+import pytest
+from prisma import Prisma
+
+import backend.server.v2.store.db as db
+from backend.server.v2.store.model import Profile
+
+
+@pytest.fixture(autouse=True)
+async def setup_prisma():
+ # Don't register client if already registered
+ try:
+ Prisma()
+ except prisma.errors.ClientAlreadyRegisteredError:
+ pass
+ yield
+
+
+@pytest.mark.asyncio
+async def test_get_store_agents(mocker):
+ # Mock data
+ mock_agents = [
+ prisma.models.StoreAgent(
+ listing_id="test-id",
+ storeListingVersionId="version123",
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_video=None,
+ agent_image=["image.jpg"],
+ featured=False,
+ creator_username="creator",
+ creator_avatar="avatar.jpg",
+ sub_heading="Test heading",
+ description="Test description",
+ categories=[],
+ runs=10,
+ rating=4.5,
+ versions=["1.0"],
+ updated_at=datetime.now(),
+ )
+ ]
+
+ # Mock prisma calls
+ mock_store_agent = mocker.patch("prisma.models.StoreAgent.prisma")
+ mock_store_agent.return_value.find_many = mocker.AsyncMock(return_value=mock_agents)
+ mock_store_agent.return_value.count = mocker.AsyncMock(return_value=1)
+
+ # Call function
+ result = await db.get_store_agents()
+
+ # Verify results
+ assert len(result.agents) == 1
+ assert result.agents[0].slug == "test-agent"
+ assert result.pagination.total_items == 1
+
+ # Verify mocks called correctly
+ mock_store_agent.return_value.find_many.assert_called_once()
+ mock_store_agent.return_value.count.assert_called_once()
+
+
+@pytest.mark.asyncio
+async def test_get_store_agent_details(mocker):
+ # Mock data
+ mock_agent = prisma.models.StoreAgent(
+ listing_id="test-id",
+ storeListingVersionId="version123",
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_video="video.mp4",
+ agent_image=["image.jpg"],
+ featured=False,
+ creator_username="creator",
+ creator_avatar="avatar.jpg",
+ sub_heading="Test heading",
+ description="Test description",
+ categories=["test"],
+ runs=10,
+ rating=4.5,
+ versions=["1.0"],
+ updated_at=datetime.now(),
+ )
+
+ # Mock prisma call
+ mock_store_agent = mocker.patch("prisma.models.StoreAgent.prisma")
+ mock_store_agent.return_value.find_first = mocker.AsyncMock(return_value=mock_agent)
+
+ # Call function
+ result = await db.get_store_agent_details("creator", "test-agent")
+
+ # Verify results
+ assert result.slug == "test-agent"
+ assert result.agent_name == "Test Agent"
+
+ # Verify mock called correctly
+ mock_store_agent.return_value.find_first.assert_called_once_with(
+ where={"creator_username": "creator", "slug": "test-agent"}
+ )
+
+
+@pytest.mark.asyncio
+async def test_get_store_creator_details(mocker):
+ # Mock data
+ mock_creator_data = prisma.models.Creator(
+ name="Test Creator",
+ username="creator",
+ description="Test description",
+ links=["link1"],
+ avatar_url="avatar.jpg",
+ num_agents=1,
+ agent_rating=4.5,
+ agent_runs=10,
+ top_categories=["test"],
+ )
+
+ # Mock prisma call
+ mock_creator = mocker.patch("prisma.models.Creator.prisma")
+ mock_creator.return_value.find_unique = mocker.AsyncMock()
+ # Configure the mock to return values that will pass validation
+ mock_creator.return_value.find_unique.return_value = mock_creator_data
+
+ # Call function
+ result = await db.get_store_creator_details("creator")
+
+ # Verify results
+ assert result.username == "creator"
+ assert result.name == "Test Creator"
+ assert result.description == "Test description"
+ assert result.avatar_url == "avatar.jpg"
+
+ # Verify mock called correctly
+ mock_creator.return_value.find_unique.assert_called_once_with(
+ where={"username": "creator"}
+ )
+
+
+@pytest.mark.asyncio
+async def test_create_store_submission(mocker):
+ # Mock data
+ mock_agent = prisma.models.AgentGraph(
+ id="agent-id",
+ version=1,
+ userId="user-id",
+ createdAt=datetime.now(),
+ isActive=True,
+ isTemplate=False,
+ )
+
+ mock_listing = prisma.models.StoreListing(
+ id="listing-id",
+ createdAt=datetime.now(),
+ updatedAt=datetime.now(),
+ isDeleted=False,
+ isApproved=False,
+ agentId="agent-id",
+ agentVersion=1,
+ owningUserId="user-id",
+ )
+
+ # Mock prisma calls
+ mock_agent_graph = mocker.patch("prisma.models.AgentGraph.prisma")
+ mock_agent_graph.return_value.find_first = mocker.AsyncMock(return_value=mock_agent)
+
+ mock_store_listing = mocker.patch("prisma.models.StoreListing.prisma")
+ mock_store_listing.return_value.find_first = mocker.AsyncMock(return_value=None)
+ mock_store_listing.return_value.create = mocker.AsyncMock(return_value=mock_listing)
+
+ # Call function
+ result = await db.create_store_submission(
+ user_id="user-id",
+ agent_id="agent-id",
+ agent_version=1,
+ slug="test-agent",
+ name="Test Agent",
+ description="Test description",
+ )
+
+ # Verify results
+ assert result.name == "Test Agent"
+ assert result.description == "Test description"
+
+ # Verify mocks called correctly
+ mock_agent_graph.return_value.find_first.assert_called_once()
+ mock_store_listing.return_value.find_first.assert_called_once()
+ mock_store_listing.return_value.create.assert_called_once()
+
+
+@pytest.mark.asyncio
+async def test_update_profile(mocker):
+ # Mock data
+ mock_profile = prisma.models.Profile(
+ id="profile-id",
+ name="Test Creator",
+ username="creator",
+ description="Test description",
+ links=["link1"],
+ avatarUrl="avatar.jpg",
+ createdAt=datetime.now(),
+ updatedAt=datetime.now(),
+ )
+
+ # Mock prisma calls
+ mock_profile_db = mocker.patch("prisma.models.Profile.prisma")
+ mock_profile_db.return_value.find_first = mocker.AsyncMock(
+ return_value=mock_profile
+ )
+ mock_profile_db.return_value.update = mocker.AsyncMock(return_value=mock_profile)
+
+ # Test data
+ profile = Profile(
+ name="Test Creator",
+ username="creator",
+ description="Test description",
+ links=["link1"],
+ avatar_url="avatar.jpg",
+ )
+
+ # Call function
+ result = await db.update_or_create_profile("user-id", profile)
+
+ # Verify results
+ assert result.username == "creator"
+ assert result.name == "Test Creator"
+
+ # Verify mocks called correctly
+ mock_profile_db.return_value.find_first.assert_called_once()
+ mock_profile_db.return_value.update.assert_called_once()
+
+
+@pytest.mark.asyncio
+async def test_get_user_profile(mocker):
+ # Mock data
+ mock_profile = prisma.models.Profile(
+ id="profile-id",
+ name="No Profile Data",
+ username="testuser",
+ description="Test description",
+ links=["link1", "link2"],
+ avatarUrl="avatar.jpg",
+ createdAt=datetime.now(),
+ updatedAt=datetime.now(),
+ )
+
+ # Mock prisma calls
+ mock_profile_db = mocker.patch("prisma.models.Profile.prisma")
+ mock_profile_db.return_value.find_unique = mocker.AsyncMock(
+ return_value=mock_profile
+ )
+
+ # Call function
+ result = await db.get_user_profile("user-id")
+
+ # Verify results
+ assert result.name == "No Profile Data"
+ assert result.username == "No Profile Data"
+ assert result.description == "No Profile Data"
+ assert result.links == []
+ assert result.avatar_url == ""
diff --git a/autogpt_platform/backend/backend/server/v2/store/exceptions.py b/autogpt_platform/backend/backend/server/v2/store/exceptions.py
new file mode 100644
index 0000000000..f63264be4d
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/exceptions.py
@@ -0,0 +1,76 @@
+class MediaUploadError(Exception):
+ """Base exception for media upload errors"""
+
+ pass
+
+
+class InvalidFileTypeError(MediaUploadError):
+ """Raised when file type is not supported"""
+
+ pass
+
+
+class FileSizeTooLargeError(MediaUploadError):
+ """Raised when file size exceeds maximum limit"""
+
+ pass
+
+
+class FileReadError(MediaUploadError):
+ """Raised when there's an error reading the file"""
+
+ pass
+
+
+class StorageConfigError(MediaUploadError):
+ """Raised when storage configuration is invalid"""
+
+ pass
+
+
+class StorageUploadError(MediaUploadError):
+ """Raised when upload to storage fails"""
+
+ pass
+
+
+class StoreError(Exception):
+ """Base exception for store-related errors"""
+
+ pass
+
+
+class AgentNotFoundError(StoreError):
+ """Raised when an agent is not found"""
+
+ pass
+
+
+class CreatorNotFoundError(StoreError):
+ """Raised when a creator is not found"""
+
+ pass
+
+
+class ListingExistsError(StoreError):
+ """Raised when trying to create a listing that already exists"""
+
+ pass
+
+
+class DatabaseError(StoreError):
+ """Raised when there is an error interacting with the database"""
+
+ pass
+
+
+class ProfileNotFoundError(StoreError):
+ """Raised when a profile is not found"""
+
+ pass
+
+
+class SubmissionNotFoundError(StoreError):
+ """Raised when a submission is not found"""
+
+ pass
diff --git a/autogpt_platform/backend/backend/server/v2/store/media.py b/autogpt_platform/backend/backend/server/v2/store/media.py
new file mode 100644
index 0000000000..a737a667b5
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/media.py
@@ -0,0 +1,157 @@
+import logging
+import os
+import uuid
+
+import fastapi
+from google.cloud import storage
+
+import backend.server.v2.store.exceptions
+from backend.util.settings import Settings
+
+logger = logging.getLogger(__name__)
+
+ALLOWED_IMAGE_TYPES = {"image/jpeg", "image/png", "image/gif", "image/webp"}
+ALLOWED_VIDEO_TYPES = {"video/mp4", "video/webm"}
+MAX_FILE_SIZE = 50 * 1024 * 1024 # 50MB
+
+
+async def upload_media(user_id: str, file: fastapi.UploadFile) -> str:
+
+ # Get file content for deeper validation
+ try:
+ content = await file.read(1024) # Read first 1KB for validation
+ await file.seek(0) # Reset file pointer
+ except Exception as e:
+ logger.error(f"Error reading file content: {str(e)}")
+ raise backend.server.v2.store.exceptions.FileReadError(
+ "Failed to read file content"
+ ) from e
+
+ # Validate file signature/magic bytes
+ if file.content_type in ALLOWED_IMAGE_TYPES:
+ # Check image file signatures
+ if content.startswith(b"\xFF\xD8\xFF"): # JPEG
+ if file.content_type != "image/jpeg":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ elif content.startswith(b"\x89PNG\r\n\x1a\n"): # PNG
+ if file.content_type != "image/png":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ elif content.startswith(b"GIF87a") or content.startswith(b"GIF89a"): # GIF
+ if file.content_type != "image/gif":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ elif content.startswith(b"RIFF") and content[8:12] == b"WEBP": # WebP
+ if file.content_type != "image/webp":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ else:
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "Invalid image file signature"
+ )
+
+ elif file.content_type in ALLOWED_VIDEO_TYPES:
+ # Check video file signatures
+ if content.startswith(b"\x00\x00\x00") and (content[4:8] == b"ftyp"): # MP4
+ if file.content_type != "video/mp4":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ elif content.startswith(b"\x1a\x45\xdf\xa3"): # WebM
+ if file.content_type != "video/webm":
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "File signature does not match content type"
+ )
+ else:
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ "Invalid video file signature"
+ )
+
+ settings = Settings()
+
+ # Check required settings first before doing any file processing
+ if (
+ not settings.config.media_gcs_bucket_name
+ or not settings.config.google_application_credentials
+ ):
+ logger.error("Missing required GCS settings")
+ raise backend.server.v2.store.exceptions.StorageConfigError(
+ "Missing storage configuration"
+ )
+
+ try:
+ # Validate file type
+ content_type = file.content_type
+ if (
+ content_type not in ALLOWED_IMAGE_TYPES
+ and content_type not in ALLOWED_VIDEO_TYPES
+ ):
+ logger.warning(f"Invalid file type attempted: {content_type}")
+ raise backend.server.v2.store.exceptions.InvalidFileTypeError(
+ f"File type not supported. Must be jpeg, png, gif, webp, mp4 or webm. Content type: {content_type}"
+ )
+
+ # Validate file size
+ file_size = 0
+ chunk_size = 8192 # 8KB chunks
+
+ try:
+ while chunk := await file.read(chunk_size):
+ file_size += len(chunk)
+ if file_size > MAX_FILE_SIZE:
+ logger.warning(f"File size too large: {file_size} bytes")
+ raise backend.server.v2.store.exceptions.FileSizeTooLargeError(
+ "File too large. Maximum size is 50MB"
+ )
+ except backend.server.v2.store.exceptions.FileSizeTooLargeError:
+ raise
+ except Exception as e:
+ logger.error(f"Error reading file chunks: {str(e)}")
+ raise backend.server.v2.store.exceptions.FileReadError(
+ "Failed to read uploaded file"
+ ) from e
+
+ # Reset file pointer
+ await file.seek(0)
+
+ # Generate unique filename
+ filename = file.filename or ""
+ file_ext = os.path.splitext(filename)[1].lower()
+ unique_filename = f"{uuid.uuid4()}{file_ext}"
+
+ # Construct storage path
+ media_type = "images" if content_type in ALLOWED_IMAGE_TYPES else "videos"
+ storage_path = f"users/{user_id}/{media_type}/{unique_filename}"
+
+ try:
+ storage_client = storage.Client()
+ bucket = storage_client.bucket(settings.config.media_gcs_bucket_name)
+ blob = bucket.blob(storage_path)
+ blob.content_type = content_type
+
+ file_bytes = await file.read()
+ blob.upload_from_string(file_bytes, content_type=content_type)
+
+ public_url = blob.public_url
+
+ logger.info(f"Successfully uploaded file to: {storage_path}")
+ return public_url
+
+ except Exception as e:
+ logger.error(f"GCS storage error: {str(e)}")
+ raise backend.server.v2.store.exceptions.StorageUploadError(
+ "Failed to upload file to storage"
+ ) from e
+
+ except backend.server.v2.store.exceptions.MediaUploadError:
+ raise
+ except Exception as e:
+ logger.exception("Unexpected error in upload_media")
+ raise backend.server.v2.store.exceptions.MediaUploadError(
+ "Unexpected error during media upload"
+ ) from e
diff --git a/autogpt_platform/backend/backend/server/v2/store/media_test.py b/autogpt_platform/backend/backend/server/v2/store/media_test.py
new file mode 100644
index 0000000000..bd5222e4f7
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/media_test.py
@@ -0,0 +1,190 @@
+import io
+import unittest.mock
+
+import fastapi
+import pytest
+import starlette.datastructures
+
+import backend.server.v2.store.exceptions
+import backend.server.v2.store.media
+from backend.util.settings import Settings
+
+
+@pytest.fixture
+def mock_settings(monkeypatch):
+ settings = Settings()
+ settings.config.media_gcs_bucket_name = "test-bucket"
+ settings.config.google_application_credentials = "test-credentials"
+ monkeypatch.setattr("backend.server.v2.store.media.Settings", lambda: settings)
+ return settings
+
+
+@pytest.fixture
+def mock_storage_client(mocker):
+ mock_client = unittest.mock.MagicMock()
+ mock_bucket = unittest.mock.MagicMock()
+ mock_blob = unittest.mock.MagicMock()
+
+ mock_client.bucket.return_value = mock_bucket
+ mock_bucket.blob.return_value = mock_blob
+ mock_blob.public_url = "http://test-url/media/laptop.jpeg"
+
+ mocker.patch("google.cloud.storage.Client", return_value=mock_client)
+
+ return mock_client
+
+
+async def test_upload_media_success(mock_settings, mock_storage_client):
+ # Create test JPEG data with valid signature
+ test_data = b"\xFF\xD8\xFF" + b"test data"
+
+ test_file = fastapi.UploadFile(
+ filename="laptop.jpeg",
+ file=io.BytesIO(test_data),
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+ assert result == "http://test-url/media/laptop.jpeg"
+ mock_bucket = mock_storage_client.bucket.return_value
+ mock_blob = mock_bucket.blob.return_value
+ mock_blob.upload_from_string.assert_called_once()
+
+
+async def test_upload_media_invalid_type(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.txt",
+ file=io.BytesIO(b"test data"),
+ headers=starlette.datastructures.Headers({"content-type": "text/plain"}),
+ )
+
+ with pytest.raises(backend.server.v2.store.exceptions.InvalidFileTypeError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+ mock_bucket = mock_storage_client.bucket.return_value
+ mock_blob = mock_bucket.blob.return_value
+ mock_blob.upload_from_string.assert_not_called()
+
+
+async def test_upload_media_missing_credentials(monkeypatch):
+ settings = Settings()
+ settings.config.media_gcs_bucket_name = ""
+ settings.config.google_application_credentials = ""
+ monkeypatch.setattr("backend.server.v2.store.media.Settings", lambda: settings)
+
+ test_file = fastapi.UploadFile(
+ filename="laptop.jpeg",
+ file=io.BytesIO(b"\xFF\xD8\xFF" + b"test data"), # Valid JPEG signature
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+
+ with pytest.raises(backend.server.v2.store.exceptions.StorageConfigError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+
+async def test_upload_media_video_type(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.mp4",
+ file=io.BytesIO(b"\x00\x00\x00\x18ftypmp42"), # Valid MP4 signature
+ headers=starlette.datastructures.Headers({"content-type": "video/mp4"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+ assert result == "http://test-url/media/laptop.jpeg"
+ mock_bucket = mock_storage_client.bucket.return_value
+ mock_blob = mock_bucket.blob.return_value
+ mock_blob.upload_from_string.assert_called_once()
+
+
+async def test_upload_media_file_too_large(mock_settings, mock_storage_client):
+ large_data = b"\xFF\xD8\xFF" + b"x" * (
+ 50 * 1024 * 1024 + 1
+ ) # 50MB + 1 byte with valid JPEG signature
+ test_file = fastapi.UploadFile(
+ filename="laptop.jpeg",
+ file=io.BytesIO(large_data),
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+
+ with pytest.raises(backend.server.v2.store.exceptions.FileSizeTooLargeError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+
+async def test_upload_media_file_read_error(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="laptop.jpeg",
+ file=io.BytesIO(b""), # Empty file that will raise error on read
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+ test_file.read = unittest.mock.AsyncMock(side_effect=Exception("Read error"))
+
+ with pytest.raises(backend.server.v2.store.exceptions.FileReadError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+
+async def test_upload_media_png_success(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.png",
+ file=io.BytesIO(b"\x89PNG\r\n\x1a\n"), # Valid PNG signature
+ headers=starlette.datastructures.Headers({"content-type": "image/png"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+ assert result == "http://test-url/media/laptop.jpeg"
+
+
+async def test_upload_media_gif_success(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.gif",
+ file=io.BytesIO(b"GIF89a"), # Valid GIF signature
+ headers=starlette.datastructures.Headers({"content-type": "image/gif"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+ assert result == "http://test-url/media/laptop.jpeg"
+
+
+async def test_upload_media_webp_success(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.webp",
+ file=io.BytesIO(b"RIFF\x00\x00\x00\x00WEBP"), # Valid WebP signature
+ headers=starlette.datastructures.Headers({"content-type": "image/webp"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+ assert result == "http://test-url/media/laptop.jpeg"
+
+
+async def test_upload_media_webm_success(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.webm",
+ file=io.BytesIO(b"\x1a\x45\xdf\xa3"), # Valid WebM signature
+ headers=starlette.datastructures.Headers({"content-type": "video/webm"}),
+ )
+
+ result = await backend.server.v2.store.media.upload_media("test-user", test_file)
+ assert result == "http://test-url/media/laptop.jpeg"
+
+
+async def test_upload_media_mismatched_signature(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.jpeg",
+ file=io.BytesIO(b"\x89PNG\r\n\x1a\n"), # PNG signature with JPEG content type
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+
+ with pytest.raises(backend.server.v2.store.exceptions.InvalidFileTypeError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
+
+
+async def test_upload_media_invalid_signature(mock_settings, mock_storage_client):
+ test_file = fastapi.UploadFile(
+ filename="test.jpeg",
+ file=io.BytesIO(b"invalid signature"),
+ headers=starlette.datastructures.Headers({"content-type": "image/jpeg"}),
+ )
+
+ with pytest.raises(backend.server.v2.store.exceptions.InvalidFileTypeError):
+ await backend.server.v2.store.media.upload_media("test-user", test_file)
diff --git a/autogpt_platform/backend/backend/server/v2/store/model.py b/autogpt_platform/backend/backend/server/v2/store/model.py
new file mode 100644
index 0000000000..baba79d6bf
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/model.py
@@ -0,0 +1,150 @@
+import datetime
+from typing import List
+
+import prisma.enums
+import pydantic
+
+
+class Pagination(pydantic.BaseModel):
+ total_items: int = pydantic.Field(
+ description="Total number of items.", examples=[42]
+ )
+ total_pages: int = pydantic.Field(
+ description="Total number of pages.", examples=[97]
+ )
+ current_page: int = pydantic.Field(
+ description="Current_page page number.", examples=[1]
+ )
+ page_size: int = pydantic.Field(
+ description="Number of items per page.", examples=[25]
+ )
+
+
+class MyAgent(pydantic.BaseModel):
+ agent_id: str
+ agent_version: int
+ agent_name: str
+ last_edited: datetime.datetime
+
+
+class MyAgentsResponse(pydantic.BaseModel):
+ agents: list[MyAgent]
+ pagination: Pagination
+
+
+class StoreAgent(pydantic.BaseModel):
+ slug: str
+ agent_name: str
+ agent_image: str
+ creator: str
+ creator_avatar: str
+ sub_heading: str
+ description: str
+ runs: int
+ rating: float
+
+
+class StoreAgentsResponse(pydantic.BaseModel):
+ agents: list[StoreAgent]
+ pagination: Pagination
+
+
+class StoreAgentDetails(pydantic.BaseModel):
+ store_listing_version_id: str
+ slug: str
+ agent_name: str
+ agent_video: str
+ agent_image: list[str]
+ creator: str
+ creator_avatar: str
+ sub_heading: str
+ description: str
+ categories: list[str]
+ runs: int
+ rating: float
+ versions: list[str]
+ last_updated: datetime.datetime
+
+
+class Creator(pydantic.BaseModel):
+ name: str
+ username: str
+ description: str
+ avatar_url: str
+ num_agents: int
+ agent_rating: float
+ agent_runs: int
+
+
+class CreatorsResponse(pydantic.BaseModel):
+ creators: List[Creator]
+ pagination: Pagination
+
+
+class CreatorDetails(pydantic.BaseModel):
+ name: str
+ username: str
+ description: str
+ links: list[str]
+ avatar_url: str
+ agent_rating: float
+ agent_runs: int
+ top_categories: list[str]
+
+
+class Profile(pydantic.BaseModel):
+ name: str
+ username: str
+ description: str
+ links: list[str]
+ avatar_url: str
+
+
+class StoreSubmission(pydantic.BaseModel):
+ agent_id: str
+ agent_version: int
+ name: str
+ sub_heading: str
+ slug: str
+ description: str
+ image_urls: list[str]
+ date_submitted: datetime.datetime
+ status: prisma.enums.SubmissionStatus
+ runs: int
+ rating: float
+
+
+class StoreSubmissionsResponse(pydantic.BaseModel):
+ submissions: list[StoreSubmission]
+ pagination: Pagination
+
+
+class StoreSubmissionRequest(pydantic.BaseModel):
+ agent_id: str
+ agent_version: int
+ slug: str
+ name: str
+ sub_heading: str
+ video_url: str | None = None
+ image_urls: list[str] = []
+ description: str = ""
+ categories: list[str] = []
+
+
+class ProfileDetails(pydantic.BaseModel):
+ name: str
+ username: str
+ description: str
+ links: list[str]
+ avatar_url: str | None = None
+
+
+class StoreReview(pydantic.BaseModel):
+ score: int
+ comments: str | None = None
+
+
+class StoreReviewCreate(pydantic.BaseModel):
+ store_listing_version_id: str
+ score: int
+ comments: str | None = None
diff --git a/autogpt_platform/backend/backend/server/v2/store/model_test.py b/autogpt_platform/backend/backend/server/v2/store/model_test.py
new file mode 100644
index 0000000000..3887357890
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/model_test.py
@@ -0,0 +1,193 @@
+import datetime
+
+import prisma.enums
+
+import backend.server.v2.store.model
+
+
+def test_pagination():
+ pagination = backend.server.v2.store.model.Pagination(
+ total_items=100, total_pages=5, current_page=2, page_size=20
+ )
+ assert pagination.total_items == 100
+ assert pagination.total_pages == 5
+ assert pagination.current_page == 2
+ assert pagination.page_size == 20
+
+
+def test_store_agent():
+ agent = backend.server.v2.store.model.StoreAgent(
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_image="test.jpg",
+ creator="creator1",
+ creator_avatar="avatar.jpg",
+ sub_heading="Test subheading",
+ description="Test description",
+ runs=50,
+ rating=4.5,
+ )
+ assert agent.slug == "test-agent"
+ assert agent.agent_name == "Test Agent"
+ assert agent.runs == 50
+ assert agent.rating == 4.5
+
+
+def test_store_agents_response():
+ response = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_image="test.jpg",
+ creator="creator1",
+ creator_avatar="avatar.jpg",
+ sub_heading="Test subheading",
+ description="Test description",
+ runs=50,
+ rating=4.5,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ total_items=1, total_pages=1, current_page=1, page_size=20
+ ),
+ )
+ assert len(response.agents) == 1
+ assert response.pagination.total_items == 1
+
+
+def test_store_agent_details():
+ details = backend.server.v2.store.model.StoreAgentDetails(
+ store_listing_version_id="version123",
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_video="video.mp4",
+ agent_image=["image1.jpg", "image2.jpg"],
+ creator="creator1",
+ creator_avatar="avatar.jpg",
+ sub_heading="Test subheading",
+ description="Test description",
+ categories=["cat1", "cat2"],
+ runs=50,
+ rating=4.5,
+ versions=["1.0", "2.0"],
+ last_updated=datetime.datetime.now(),
+ )
+ assert details.slug == "test-agent"
+ assert len(details.agent_image) == 2
+ assert len(details.categories) == 2
+ assert len(details.versions) == 2
+
+
+def test_creator():
+ creator = backend.server.v2.store.model.Creator(
+ agent_rating=4.8,
+ agent_runs=1000,
+ name="Test Creator",
+ username="creator1",
+ description="Test description",
+ avatar_url="avatar.jpg",
+ num_agents=5,
+ )
+ assert creator.name == "Test Creator"
+ assert creator.num_agents == 5
+
+
+def test_creators_response():
+ response = backend.server.v2.store.model.CreatorsResponse(
+ creators=[
+ backend.server.v2.store.model.Creator(
+ agent_rating=4.8,
+ agent_runs=1000,
+ name="Test Creator",
+ username="creator1",
+ description="Test description",
+ avatar_url="avatar.jpg",
+ num_agents=5,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ total_items=1, total_pages=1, current_page=1, page_size=20
+ ),
+ )
+ assert len(response.creators) == 1
+ assert response.pagination.total_items == 1
+
+
+def test_creator_details():
+ details = backend.server.v2.store.model.CreatorDetails(
+ name="Test Creator",
+ username="creator1",
+ description="Test description",
+ links=["link1.com", "link2.com"],
+ avatar_url="avatar.jpg",
+ agent_rating=4.8,
+ agent_runs=1000,
+ top_categories=["cat1", "cat2"],
+ )
+ assert details.name == "Test Creator"
+ assert len(details.links) == 2
+ assert details.agent_rating == 4.8
+ assert len(details.top_categories) == 2
+
+
+def test_store_submission():
+ submission = backend.server.v2.store.model.StoreSubmission(
+ agent_id="agent123",
+ agent_version=1,
+ sub_heading="Test subheading",
+ name="Test Agent",
+ slug="test-agent",
+ description="Test description",
+ image_urls=["image1.jpg", "image2.jpg"],
+ date_submitted=datetime.datetime(2023, 1, 1),
+ status=prisma.enums.SubmissionStatus.PENDING,
+ runs=50,
+ rating=4.5,
+ )
+ assert submission.name == "Test Agent"
+ assert len(submission.image_urls) == 2
+ assert submission.status == prisma.enums.SubmissionStatus.PENDING
+
+
+def test_store_submissions_response():
+ response = backend.server.v2.store.model.StoreSubmissionsResponse(
+ submissions=[
+ backend.server.v2.store.model.StoreSubmission(
+ agent_id="agent123",
+ agent_version=1,
+ sub_heading="Test subheading",
+ name="Test Agent",
+ slug="test-agent",
+ description="Test description",
+ image_urls=["image1.jpg"],
+ date_submitted=datetime.datetime(2023, 1, 1),
+ status=prisma.enums.SubmissionStatus.PENDING,
+ runs=50,
+ rating=4.5,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ total_items=1, total_pages=1, current_page=1, page_size=20
+ ),
+ )
+ assert len(response.submissions) == 1
+ assert response.pagination.total_items == 1
+
+
+def test_store_submission_request():
+ request = backend.server.v2.store.model.StoreSubmissionRequest(
+ agent_id="agent123",
+ agent_version=1,
+ slug="test-agent",
+ name="Test Agent",
+ sub_heading="Test subheading",
+ video_url="video.mp4",
+ image_urls=["image1.jpg", "image2.jpg"],
+ description="Test description",
+ categories=["cat1", "cat2"],
+ )
+ assert request.agent_id == "agent123"
+ assert request.agent_version == 1
+ assert len(request.image_urls) == 2
+ assert len(request.categories) == 2
diff --git a/autogpt_platform/backend/backend/server/v2/store/routes.py b/autogpt_platform/backend/backend/server/v2/store/routes.py
new file mode 100644
index 0000000000..57ed6225f7
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/routes.py
@@ -0,0 +1,439 @@
+import logging
+import typing
+
+import autogpt_libs.auth.depends
+import autogpt_libs.auth.middleware
+import fastapi
+import fastapi.responses
+
+import backend.server.v2.store.db
+import backend.server.v2.store.media
+import backend.server.v2.store.model
+
+logger = logging.getLogger(__name__)
+
+router = fastapi.APIRouter()
+
+
+##############################################
+############### Profile Endpoints ############
+##############################################
+
+
+@router.get("/profile", tags=["store", "private"])
+async def get_profile(
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ]
+) -> backend.server.v2.store.model.ProfileDetails:
+ """
+ Get the profile details for the authenticated user.
+ """
+ try:
+ profile = await backend.server.v2.store.db.get_user_profile(user_id)
+ return profile
+ except Exception:
+ logger.exception("Exception occurred whilst getting user profile")
+ raise
+
+
+@router.post(
+ "/profile",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def update_or_create_profile(
+ profile: backend.server.v2.store.model.Profile,
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+) -> backend.server.v2.store.model.CreatorDetails:
+ """
+ Update the store profile for the authenticated user.
+
+ Args:
+ profile (Profile): The updated profile details
+ user_id (str): ID of the authenticated user
+
+ Returns:
+ CreatorDetails: The updated profile
+
+ Raises:
+ HTTPException: If there is an error updating the profile
+ """
+ try:
+ updated_profile = await backend.server.v2.store.db.update_or_create_profile(
+ user_id=user_id, profile=profile
+ )
+ return updated_profile
+ except Exception:
+ logger.exception("Exception occurred whilst updating profile")
+ raise
+
+
+##############################################
+############### Agent Endpoints ##############
+##############################################
+
+
+@router.get("/agents", tags=["store", "public"])
+async def get_agents(
+ featured: bool = False,
+ creator: str | None = None,
+ sorted_by: str | None = None,
+ search_query: str | None = None,
+ category: str | None = None,
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.StoreAgentsResponse:
+ """
+ Get a paginated list of agents from the store with optional filtering and sorting.
+
+ Args:
+ featured (bool, optional): Filter to only show featured agents. Defaults to False.
+ creator (str | None, optional): Filter agents by creator username. Defaults to None.
+ sorted_by (str | None, optional): Sort agents by "runs" or "rating". Defaults to None.
+ search_query (str | None, optional): Search agents by name, subheading and description. Defaults to None.
+ category (str | None, optional): Filter agents by category. Defaults to None.
+ page (int, optional): Page number for pagination. Defaults to 1.
+ page_size (int, optional): Number of agents per page. Defaults to 20.
+
+ Returns:
+ StoreAgentsResponse: Paginated list of agents matching the filters
+
+ Raises:
+ HTTPException: If page or page_size are less than 1
+
+ Used for:
+ - Home Page Featured Agents
+ - Home Page Top Agents
+ - Search Results
+ - Agent Details - Other Agents By Creator
+ - Agent Details - Similar Agents
+ - Creator Details - Agents By Creator
+ """
+ if page < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page must be greater than 0"
+ )
+
+ if page_size < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page size must be greater than 0"
+ )
+
+ try:
+ agents = await backend.server.v2.store.db.get_store_agents(
+ featured=featured,
+ creator=creator,
+ sorted_by=sorted_by,
+ search_query=search_query,
+ category=category,
+ page=page,
+ page_size=page_size,
+ )
+ return agents
+ except Exception:
+ logger.exception("Exception occured whilst getting store agents")
+ raise
+
+
+@router.get("/agents/{username}/{agent_name}", tags=["store", "public"])
+async def get_agent(
+ username: str, agent_name: str
+) -> backend.server.v2.store.model.StoreAgentDetails:
+ """
+ This is only used on the AgentDetails Page
+
+ It returns the store listing agents details.
+ """
+ try:
+ agent = await backend.server.v2.store.db.get_store_agent_details(
+ username=username, agent_name=agent_name
+ )
+ return agent
+ except Exception:
+ logger.exception("Exception occurred whilst getting store agent details")
+ raise
+
+
+@router.post(
+ "/agents/{username}/{agent_name}/review",
+ tags=["store"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def create_review(
+ username: str,
+ agent_name: str,
+ review: backend.server.v2.store.model.StoreReviewCreate,
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+) -> backend.server.v2.store.model.StoreReview:
+ """
+ Create a review for a store agent.
+
+ Args:
+ username: Creator's username
+ agent_name: Name/slug of the agent
+ review: Review details including score and optional comments
+ user_id: ID of authenticated user creating the review
+
+ Returns:
+ The created review
+ """
+ try:
+ # Create the review
+ created_review = await backend.server.v2.store.db.create_store_review(
+ user_id=user_id,
+ store_listing_version_id=review.store_listing_version_id,
+ score=review.score,
+ comments=review.comments,
+ )
+
+ return created_review
+ except Exception:
+ logger.exception("Exception occurred whilst creating store review")
+ raise
+
+
+##############################################
+############# Creator Endpoints #############
+##############################################
+
+
+@router.get("/creators", tags=["store", "public"])
+async def get_creators(
+ featured: bool = False,
+ search_query: str | None = None,
+ sorted_by: str | None = None,
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.CreatorsResponse:
+ """
+ This is needed for:
+ - Home Page Featured Creators
+ - Search Results Page
+
+ ---
+
+ To support this functionality we need:
+ - featured: bool - to limit the list to just featured agents
+ - search_query: str - vector search based on the creators profile description.
+ - sorted_by: [agent_rating, agent_runs] -
+ """
+ if page < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page must be greater than 0"
+ )
+
+ if page_size < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page size must be greater than 0"
+ )
+
+ try:
+ creators = await backend.server.v2.store.db.get_store_creators(
+ featured=featured,
+ search_query=search_query,
+ sorted_by=sorted_by,
+ page=page,
+ page_size=page_size,
+ )
+ return creators
+ except Exception:
+ logger.exception("Exception occurred whilst getting store creators")
+ raise
+
+
+@router.get("/creator/{username}", tags=["store", "public"])
+async def get_creator(username: str) -> backend.server.v2.store.model.CreatorDetails:
+ """
+ Get the details of a creator
+ - Creator Details Page
+ """
+ try:
+ creator = await backend.server.v2.store.db.get_store_creator_details(
+ username=username
+ )
+ return creator
+ except Exception:
+ logger.exception("Exception occurred whilst getting creator details")
+ raise
+
+
+############################################
+############# Store Submissions ###############
+############################################
+@router.get(
+ "/myagents",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def get_my_agents(
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ]
+) -> backend.server.v2.store.model.MyAgentsResponse:
+ try:
+ agents = await backend.server.v2.store.db.get_my_agents(user_id)
+ return agents
+ except Exception:
+ logger.exception("Exception occurred whilst getting my agents")
+ raise
+
+
+@router.delete(
+ "/submissions/{submission_id}",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def delete_submission(
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+ submission_id: str,
+) -> bool:
+ """
+ Delete a store listing submission.
+
+ Args:
+ user_id (str): ID of the authenticated user
+ submission_id (str): ID of the submission to be deleted
+
+ Returns:
+ bool: True if the submission was successfully deleted, False otherwise
+ """
+ try:
+ result = await backend.server.v2.store.db.delete_store_submission(
+ user_id=user_id,
+ submission_id=submission_id,
+ )
+ return result
+ except Exception:
+ logger.exception("Exception occurred whilst deleting store submission")
+ raise
+
+
+@router.get(
+ "/submissions",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def get_submissions(
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+ page: int = 1,
+ page_size: int = 20,
+) -> backend.server.v2.store.model.StoreSubmissionsResponse:
+ """
+ Get a paginated list of store submissions for the authenticated user.
+
+ Args:
+ user_id (str): ID of the authenticated user
+ page (int, optional): Page number for pagination. Defaults to 1.
+ page_size (int, optional): Number of submissions per page. Defaults to 20.
+
+ Returns:
+ StoreListingsResponse: Paginated list of store submissions
+
+ Raises:
+ HTTPException: If page or page_size are less than 1
+ """
+ if page < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page must be greater than 0"
+ )
+
+ if page_size < 1:
+ raise fastapi.HTTPException(
+ status_code=422, detail="Page size must be greater than 0"
+ )
+ try:
+ listings = await backend.server.v2.store.db.get_store_submissions(
+ user_id=user_id,
+ page=page,
+ page_size=page_size,
+ )
+ return listings
+ except Exception:
+ logger.exception("Exception occurred whilst getting store submissions")
+ raise
+
+
+@router.post(
+ "/submissions",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def create_submission(
+ submission_request: backend.server.v2.store.model.StoreSubmissionRequest,
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+) -> backend.server.v2.store.model.StoreSubmission:
+ """
+ Create a new store listing submission.
+
+ Args:
+ submission_request (StoreSubmissionRequest): The submission details
+ user_id (str): ID of the authenticated user submitting the listing
+
+ Returns:
+ StoreSubmission: The created store submission
+
+ Raises:
+ HTTPException: If there is an error creating the submission
+ """
+ try:
+ submission = await backend.server.v2.store.db.create_store_submission(
+ user_id=user_id,
+ agent_id=submission_request.agent_id,
+ agent_version=submission_request.agent_version,
+ slug=submission_request.slug,
+ name=submission_request.name,
+ video_url=submission_request.video_url,
+ image_urls=submission_request.image_urls,
+ description=submission_request.description,
+ sub_heading=submission_request.sub_heading,
+ categories=submission_request.categories,
+ )
+ return submission
+ except Exception:
+ logger.exception("Exception occurred whilst creating store submission")
+ raise
+
+
+@router.post(
+ "/submissions/media",
+ tags=["store", "private"],
+ dependencies=[fastapi.Depends(autogpt_libs.auth.middleware.auth_middleware)],
+)
+async def upload_submission_media(
+ file: fastapi.UploadFile,
+ user_id: typing.Annotated[
+ str, fastapi.Depends(autogpt_libs.auth.depends.get_user_id)
+ ],
+) -> str:
+ """
+ Upload media (images/videos) for a store listing submission.
+
+ Args:
+ file (UploadFile): The media file to upload
+ user_id (str): ID of the authenticated user uploading the media
+
+ Returns:
+ str: URL of the uploaded media file
+
+ Raises:
+ HTTPException: If there is an error uploading the media
+ """
+ try:
+ media_url = await backend.server.v2.store.media.upload_media(
+ user_id=user_id, file=file
+ )
+ return media_url
+ except Exception:
+ logger.exception("Exception occurred whilst uploading submission media")
+ raise
diff --git a/autogpt_platform/backend/backend/server/v2/store/routes_test.py b/autogpt_platform/backend/backend/server/v2/store/routes_test.py
new file mode 100644
index 0000000000..9b6f7af733
--- /dev/null
+++ b/autogpt_platform/backend/backend/server/v2/store/routes_test.py
@@ -0,0 +1,551 @@
+import datetime
+
+import autogpt_libs.auth.depends
+import autogpt_libs.auth.middleware
+import fastapi
+import fastapi.testclient
+import prisma.enums
+import pytest_mock
+
+import backend.server.v2.store.model
+import backend.server.v2.store.routes
+
+app = fastapi.FastAPI()
+app.include_router(backend.server.v2.store.routes.router)
+
+client = fastapi.testclient.TestClient(app)
+
+
+def override_auth_middleware():
+ """Override auth middleware for testing"""
+ return {"sub": "test-user-id"}
+
+
+def override_get_user_id():
+ """Override get_user_id for testing"""
+ return "test-user-id"
+
+
+app.dependency_overrides[autogpt_libs.auth.middleware.auth_middleware] = (
+ override_auth_middleware
+)
+app.dependency_overrides[autogpt_libs.auth.depends.get_user_id] = override_get_user_id
+
+
+def test_get_agents_defaults(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=0,
+ total_items=0,
+ total_pages=0,
+ page_size=10,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert data.pagination.total_pages == 0
+ assert data.agents == []
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator=None,
+ sorted_by=None,
+ search_query=None,
+ category=None,
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_featured(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="featured-agent",
+ agent_name="Featured Agent",
+ agent_image="featured.jpg",
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading="Featured agent subheading",
+ description="Featured agent description",
+ runs=100,
+ rating=4.5,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?featured=true")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 1
+ assert data.agents[0].slug == "featured-agent"
+ mock_db_call.assert_called_once_with(
+ featured=True,
+ creator=None,
+ sorted_by=None,
+ search_query=None,
+ category=None,
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_by_creator(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="creator-agent",
+ agent_name="Creator Agent",
+ agent_image="agent.jpg",
+ creator="specific-creator",
+ creator_avatar="avatar.jpg",
+ sub_heading="Creator agent subheading",
+ description="Creator agent description",
+ runs=50,
+ rating=4.0,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?creator=specific-creator")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 1
+ assert data.agents[0].creator == "specific-creator"
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator="specific-creator",
+ sorted_by=None,
+ search_query=None,
+ category=None,
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_sorted(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="top-agent",
+ agent_name="Top Agent",
+ agent_image="top.jpg",
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading="Top agent subheading",
+ description="Top agent description",
+ runs=1000,
+ rating=5.0,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?sorted_by=runs")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 1
+ assert data.agents[0].runs == 1000
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator=None,
+ sorted_by="runs",
+ search_query=None,
+ category=None,
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_search(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="search-agent",
+ agent_name="Search Agent",
+ agent_image="search.jpg",
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading="Search agent subheading",
+ description="Specific search term description",
+ runs=75,
+ rating=4.2,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?search_query=specific")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 1
+ assert "specific" in data.agents[0].description.lower()
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator=None,
+ sorted_by=None,
+ search_query="specific",
+ category=None,
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_category(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug="category-agent",
+ agent_name="Category Agent",
+ agent_image="category.jpg",
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading="Category agent subheading",
+ description="Category agent description",
+ runs=60,
+ rating=4.1,
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?category=test-category")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 1
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator=None,
+ sorted_by=None,
+ search_query=None,
+ category="test-category",
+ page=1,
+ page_size=20,
+ )
+
+
+def test_get_agents_pagination(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentsResponse(
+ agents=[
+ backend.server.v2.store.model.StoreAgent(
+ slug=f"agent-{i}",
+ agent_name=f"Agent {i}",
+ agent_image=f"agent{i}.jpg",
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading=f"Agent {i} subheading",
+ description=f"Agent {i} description",
+ runs=i * 10,
+ rating=4.0,
+ )
+ for i in range(5)
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=2,
+ total_items=15,
+ total_pages=3,
+ page_size=5,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.return_value = mocked_value
+ response = client.get("/agents?page=2&page_size=5")
+ assert response.status_code == 200
+ data = backend.server.v2.store.model.StoreAgentsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.agents) == 5
+ assert data.pagination.current_page == 2
+ assert data.pagination.page_size == 5
+ mock_db_call.assert_called_once_with(
+ featured=False,
+ creator=None,
+ sorted_by=None,
+ search_query=None,
+ category=None,
+ page=2,
+ page_size=5,
+ )
+
+
+def test_get_agents_malformed_request(mocker: pytest_mock.MockFixture):
+ # Test with invalid page number
+ response = client.get("/agents?page=-1")
+ assert response.status_code == 422
+
+ # Test with invalid page size
+ response = client.get("/agents?page_size=0")
+ assert response.status_code == 422
+
+ # Test with non-numeric values
+ response = client.get("/agents?page=abc&page_size=def")
+ assert response.status_code == 422
+
+ # Verify no DB calls were made
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agents")
+ mock_db_call.assert_not_called()
+
+
+def test_get_agent_details(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreAgentDetails(
+ store_listing_version_id="test-version-id",
+ slug="test-agent",
+ agent_name="Test Agent",
+ agent_video="video.mp4",
+ agent_image=["image1.jpg", "image2.jpg"],
+ creator="creator1",
+ creator_avatar="avatar1.jpg",
+ sub_heading="Test agent subheading",
+ description="Test agent description",
+ categories=["category1", "category2"],
+ runs=100,
+ rating=4.5,
+ versions=["1.0.0", "1.1.0"],
+ last_updated=datetime.datetime.now(),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_agent_details")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/agents/creator1/test-agent")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.StoreAgentDetails.model_validate(
+ response.json()
+ )
+ assert data.agent_name == "Test Agent"
+ assert data.creator == "creator1"
+ mock_db_call.assert_called_once_with(username="creator1", agent_name="test-agent")
+
+
+def test_get_creators_defaults(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.CreatorsResponse(
+ creators=[],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=0,
+ total_items=0,
+ total_pages=0,
+ page_size=10,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_creators")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/creators")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.CreatorsResponse.model_validate(
+ response.json()
+ )
+ assert data.pagination.total_pages == 0
+ assert data.creators == []
+ mock_db_call.assert_called_once_with(
+ featured=False, search_query=None, sorted_by=None, page=1, page_size=20
+ )
+
+
+def test_get_creators_pagination(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.CreatorsResponse(
+ creators=[
+ backend.server.v2.store.model.Creator(
+ name=f"Creator {i}",
+ username=f"creator{i}",
+ description=f"Creator {i} description",
+ avatar_url=f"avatar{i}.jpg",
+ num_agents=1,
+ agent_rating=4.5,
+ agent_runs=100,
+ )
+ for i in range(5)
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=2,
+ total_items=15,
+ total_pages=3,
+ page_size=5,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_creators")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/creators?page=2&page_size=5")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.CreatorsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.creators) == 5
+ assert data.pagination.current_page == 2
+ assert data.pagination.page_size == 5
+ mock_db_call.assert_called_once_with(
+ featured=False, search_query=None, sorted_by=None, page=2, page_size=5
+ )
+
+
+def test_get_creators_malformed_request(mocker: pytest_mock.MockFixture):
+ # Test with invalid page number
+ response = client.get("/creators?page=-1")
+ assert response.status_code == 422
+
+ # Test with invalid page size
+ response = client.get("/creators?page_size=0")
+ assert response.status_code == 422
+
+ # Test with non-numeric values
+ response = client.get("/creators?page=abc&page_size=def")
+ assert response.status_code == 422
+
+ # Verify no DB calls were made
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_creators")
+ mock_db_call.assert_not_called()
+
+
+def test_get_creator_details(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.CreatorDetails(
+ name="Test User",
+ username="creator1",
+ description="Test creator description",
+ links=["link1.com", "link2.com"],
+ avatar_url="avatar.jpg",
+ agent_rating=4.8,
+ agent_runs=1000,
+ top_categories=["category1", "category2"],
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_creator_details")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/creator/creator1")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.CreatorDetails.model_validate(response.json())
+ assert data.username == "creator1"
+ assert data.name == "Test User"
+ mock_db_call.assert_called_once_with(username="creator1")
+
+
+def test_get_submissions_success(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreSubmissionsResponse(
+ submissions=[
+ backend.server.v2.store.model.StoreSubmission(
+ name="Test Agent",
+ description="Test agent description",
+ image_urls=["test.jpg"],
+ date_submitted=datetime.datetime.now(),
+ status=prisma.enums.SubmissionStatus.APPROVED,
+ runs=50,
+ rating=4.2,
+ agent_id="test-agent-id",
+ agent_version=1,
+ sub_heading="Test agent subheading",
+ slug="test-agent",
+ )
+ ],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=1,
+ total_items=1,
+ total_pages=1,
+ page_size=20,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_submissions")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/submissions")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.StoreSubmissionsResponse.model_validate(
+ response.json()
+ )
+ assert len(data.submissions) == 1
+ assert data.submissions[0].name == "Test Agent"
+ assert data.pagination.current_page == 1
+ mock_db_call.assert_called_once_with(user_id="test-user-id", page=1, page_size=20)
+
+
+def test_get_submissions_pagination(mocker: pytest_mock.MockFixture):
+ mocked_value = backend.server.v2.store.model.StoreSubmissionsResponse(
+ submissions=[],
+ pagination=backend.server.v2.store.model.Pagination(
+ current_page=2,
+ total_items=10,
+ total_pages=2,
+ page_size=5,
+ ),
+ )
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_submissions")
+ mock_db_call.return_value = mocked_value
+
+ response = client.get("/submissions?page=2&page_size=5")
+ assert response.status_code == 200
+
+ data = backend.server.v2.store.model.StoreSubmissionsResponse.model_validate(
+ response.json()
+ )
+ assert data.pagination.current_page == 2
+ assert data.pagination.page_size == 5
+ mock_db_call.assert_called_once_with(user_id="test-user-id", page=2, page_size=5)
+
+
+def test_get_submissions_malformed_request(mocker: pytest_mock.MockFixture):
+ # Test with invalid page number
+ response = client.get("/submissions?page=-1")
+ assert response.status_code == 422
+
+ # Test with invalid page size
+ response = client.get("/submissions?page_size=0")
+ assert response.status_code == 422
+
+ # Test with non-numeric values
+ response = client.get("/submissions?page=abc&page_size=def")
+ assert response.status_code == 422
+
+ # Verify no DB calls were made
+ mock_db_call = mocker.patch("backend.server.v2.store.db.get_store_submissions")
+ mock_db_call.assert_not_called()
diff --git a/autogpt_platform/backend/backend/util/settings.py b/autogpt_platform/backend/backend/util/settings.py
index 63721653a9..33442b41b9 100644
--- a/autogpt_platform/backend/backend/util/settings.py
+++ b/autogpt_platform/backend/backend/util/settings.py
@@ -148,6 +148,16 @@ class Config(UpdateTrackingModel["Config"], BaseSettings):
"This value is then used to generate redirect URLs for OAuth flows.",
)
+ media_gcs_bucket_name: str = Field(
+ default="",
+ description="The name of the Google Cloud Storage bucket for media files",
+ )
+
+ google_application_credentials: str = Field(
+ default="",
+ description="The path to the Google Cloud credentials JSON file",
+ )
+
@field_validator("platform_base_url", "frontend_base_url")
@classmethod
def validate_platform_base_url(cls, v: str, info: ValidationInfo) -> str:
diff --git a/autogpt_platform/backend/docker-compose.test.yaml b/autogpt_platform/backend/docker-compose.test.yaml
index c1ceac4f83..f2a5f1bc2a 100644
--- a/autogpt_platform/backend/docker-compose.test.yaml
+++ b/autogpt_platform/backend/docker-compose.test.yaml
@@ -1,20 +1,31 @@
-version: "3"
services:
postgres-test:
image: ankane/pgvector:latest
environment:
- - POSTGRES_USER=agpt_user
- - POSTGRES_PASSWORD=pass123
- - POSTGRES_DB=agpt_local
+ - POSTGRES_USER=${DB_USER}
+ - POSTGRES_PASSWORD=${DB_PASS}
+ - POSTGRES_DB=${DB_NAME}
healthcheck:
test: pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB
interval: 10s
timeout: 5s
retries: 5
ports:
- - "5433:5432"
+ - "${DB_PORT}:5432"
networks:
- app-network-test
+ redis-test:
+ image: redis:latest
+ command: redis-server --requirepass password
+ ports:
+ - "6379:6379"
+ networks:
+ - app-network-test
+ healthcheck:
+ test: ["CMD", "redis-cli", "ping"]
+ interval: 10s
+ timeout: 5s
+ retries: 5
networks:
app-network-test:
diff --git a/autogpt_platform/backend/migrations/20241212141024_agent_store_v2/migration.sql b/autogpt_platform/backend/migrations/20241212141024_agent_store_v2/migration.sql
new file mode 100644
index 0000000000..2f903245d3
--- /dev/null
+++ b/autogpt_platform/backend/migrations/20241212141024_agent_store_v2/migration.sql
@@ -0,0 +1,228 @@
+-- CreateEnum
+CREATE TYPE "SubmissionStatus" AS ENUM ('DAFT', 'PENDING', 'APPROVED', 'REJECTED');
+
+-- AlterTable
+ALTER TABLE "AgentGraphExecution" ADD COLUMN "agentPresetId" TEXT;
+
+-- AlterTable
+ALTER TABLE "AgentNodeExecutionInputOutput" ADD COLUMN "agentPresetId" TEXT;
+
+-- AlterTable
+ALTER TABLE "AnalyticsMetrics" ALTER COLUMN "id" DROP DEFAULT;
+
+-- AlterTable
+ALTER TABLE "CreditTransaction" RENAME CONSTRAINT "UserBlockCredit_pkey" TO "CreditTransaction_pkey";
+
+-- CreateTable
+CREATE TABLE "AgentPreset" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "name" TEXT NOT NULL,
+ "description" TEXT NOT NULL,
+ "isActive" BOOLEAN NOT NULL DEFAULT true,
+ "userId" TEXT NOT NULL,
+ "agentId" TEXT NOT NULL,
+ "agentVersion" INTEGER NOT NULL,
+
+ CONSTRAINT "AgentPreset_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "UserAgent" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "userId" TEXT NOT NULL,
+ "agentId" TEXT NOT NULL,
+ "agentVersion" INTEGER NOT NULL,
+ "agentPresetId" TEXT,
+ "isFavorite" BOOLEAN NOT NULL DEFAULT false,
+ "isCreatedByUser" BOOLEAN NOT NULL DEFAULT false,
+ "isArchived" BOOLEAN NOT NULL DEFAULT false,
+ "isDeleted" BOOLEAN NOT NULL DEFAULT false,
+
+ CONSTRAINT "UserAgent_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "Profile" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "userId" TEXT,
+ "name" TEXT NOT NULL,
+ "username" TEXT NOT NULL,
+ "description" TEXT NOT NULL,
+ "links" TEXT[],
+ "avatarUrl" TEXT,
+
+ CONSTRAINT "Profile_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "StoreListing" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "isDeleted" BOOLEAN NOT NULL DEFAULT false,
+ "isApproved" BOOLEAN NOT NULL DEFAULT false,
+ "agentId" TEXT NOT NULL,
+ "agentVersion" INTEGER NOT NULL,
+ "owningUserId" TEXT NOT NULL,
+
+ CONSTRAINT "StoreListing_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "StoreListingVersion" (
+ "id" TEXT NOT NULL,
+ "version" INTEGER NOT NULL DEFAULT 1,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "agentId" TEXT NOT NULL,
+ "agentVersion" INTEGER NOT NULL,
+ "slug" TEXT NOT NULL,
+ "name" TEXT NOT NULL,
+ "subHeading" TEXT NOT NULL,
+ "videoUrl" TEXT,
+ "imageUrls" TEXT[],
+ "description" TEXT NOT NULL,
+ "categories" TEXT[],
+ "isFeatured" BOOLEAN NOT NULL DEFAULT false,
+ "isDeleted" BOOLEAN NOT NULL DEFAULT false,
+ "isAvailable" BOOLEAN NOT NULL DEFAULT true,
+ "isApproved" BOOLEAN NOT NULL DEFAULT false,
+ "storeListingId" TEXT,
+
+ CONSTRAINT "StoreListingVersion_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "StoreListingReview" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "storeListingVersionId" TEXT NOT NULL,
+ "reviewByUserId" TEXT NOT NULL,
+ "score" INTEGER NOT NULL,
+ "comments" TEXT,
+
+ CONSTRAINT "StoreListingReview_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateTable
+CREATE TABLE "StoreListingSubmission" (
+ "id" TEXT NOT NULL,
+ "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ "storeListingId" TEXT NOT NULL,
+ "storeListingVersionId" TEXT NOT NULL,
+ "reviewerId" TEXT NOT NULL,
+ "Status" "SubmissionStatus" NOT NULL DEFAULT 'PENDING',
+ "reviewComments" TEXT,
+
+ CONSTRAINT "StoreListingSubmission_pkey" PRIMARY KEY ("id")
+);
+
+-- CreateIndex
+CREATE INDEX "AgentPreset_userId_idx" ON "AgentPreset"("userId");
+
+-- CreateIndex
+CREATE INDEX "UserAgent_userId_idx" ON "UserAgent"("userId");
+
+-- CreateIndex
+CREATE UNIQUE INDEX "Profile_username_key" ON "Profile"("username");
+
+-- CreateIndex
+CREATE INDEX "Profile_username_idx" ON "Profile"("username");
+
+-- CreateIndex
+CREATE INDEX "Profile_userId_idx" ON "Profile"("userId");
+
+-- CreateIndex
+CREATE INDEX "StoreListing_isApproved_idx" ON "StoreListing"("isApproved");
+
+-- CreateIndex
+CREATE INDEX "StoreListing_agentId_idx" ON "StoreListing"("agentId");
+
+-- CreateIndex
+CREATE INDEX "StoreListing_owningUserId_idx" ON "StoreListing"("owningUserId");
+
+-- CreateIndex
+CREATE INDEX "StoreListingVersion_agentId_agentVersion_isApproved_idx" ON "StoreListingVersion"("agentId", "agentVersion", "isApproved");
+
+-- CreateIndex
+CREATE UNIQUE INDEX "StoreListingVersion_agentId_agentVersion_key" ON "StoreListingVersion"("agentId", "agentVersion");
+
+-- CreateIndex
+CREATE INDEX "StoreListingReview_storeListingVersionId_idx" ON "StoreListingReview"("storeListingVersionId");
+
+-- CreateIndex
+CREATE UNIQUE INDEX "StoreListingReview_storeListingVersionId_reviewByUserId_key" ON "StoreListingReview"("storeListingVersionId", "reviewByUserId");
+
+-- CreateIndex
+CREATE INDEX "StoreListingSubmission_storeListingId_idx" ON "StoreListingSubmission"("storeListingId");
+
+-- CreateIndex
+CREATE INDEX "StoreListingSubmission_Status_idx" ON "StoreListingSubmission"("Status");
+
+-- RenameForeignKey
+ALTER TABLE "CreditTransaction" RENAME CONSTRAINT "UserBlockCredit_blockId_fkey" TO "CreditTransaction_blockId_fkey";
+
+-- RenameForeignKey
+ALTER TABLE "CreditTransaction" RENAME CONSTRAINT "UserBlockCredit_userId_fkey" TO "CreditTransaction_userId_fkey";
+
+-- AddForeignKey
+ALTER TABLE "AgentPreset" ADD CONSTRAINT "AgentPreset_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "AgentPreset" ADD CONSTRAINT "AgentPreset_agentId_agentVersion_fkey" FOREIGN KEY ("agentId", "agentVersion") REFERENCES "AgentGraph"("id", "version") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "UserAgent" ADD CONSTRAINT "UserAgent_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "UserAgent" ADD CONSTRAINT "UserAgent_agentId_agentVersion_fkey" FOREIGN KEY ("agentId", "agentVersion") REFERENCES "AgentGraph"("id", "version") ON DELETE RESTRICT ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "UserAgent" ADD CONSTRAINT "UserAgent_agentPresetId_fkey" FOREIGN KEY ("agentPresetId") REFERENCES "AgentPreset"("id") ON DELETE SET NULL ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "AgentGraphExecution" ADD CONSTRAINT "AgentGraphExecution_agentPresetId_fkey" FOREIGN KEY ("agentPresetId") REFERENCES "AgentPreset"("id") ON DELETE SET NULL ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "AgentNodeExecutionInputOutput" ADD CONSTRAINT "AgentNodeExecutionInputOutput_agentPresetId_fkey" FOREIGN KEY ("agentPresetId") REFERENCES "AgentPreset"("id") ON DELETE SET NULL ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "Profile" ADD CONSTRAINT "Profile_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListing" ADD CONSTRAINT "StoreListing_agentId_agentVersion_fkey" FOREIGN KEY ("agentId", "agentVersion") REFERENCES "AgentGraph"("id", "version") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListing" ADD CONSTRAINT "StoreListing_owningUserId_fkey" FOREIGN KEY ("owningUserId") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingVersion" ADD CONSTRAINT "StoreListingVersion_agentId_agentVersion_fkey" FOREIGN KEY ("agentId", "agentVersion") REFERENCES "AgentGraph"("id", "version") ON DELETE RESTRICT ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingVersion" ADD CONSTRAINT "StoreListingVersion_storeListingId_fkey" FOREIGN KEY ("storeListingId") REFERENCES "StoreListing"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingReview" ADD CONSTRAINT "StoreListingReview_storeListingVersionId_fkey" FOREIGN KEY ("storeListingVersionId") REFERENCES "StoreListingVersion"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingReview" ADD CONSTRAINT "StoreListingReview_reviewByUserId_fkey" FOREIGN KEY ("reviewByUserId") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingSubmission" ADD CONSTRAINT "StoreListingSubmission_storeListingId_fkey" FOREIGN KEY ("storeListingId") REFERENCES "StoreListing"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingSubmission" ADD CONSTRAINT "StoreListingSubmission_storeListingVersionId_fkey" FOREIGN KEY ("storeListingVersionId") REFERENCES "StoreListingVersion"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE "StoreListingSubmission" ADD CONSTRAINT "StoreListingSubmission_reviewerId_fkey" FOREIGN KEY ("reviewerId") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
+
+-- RenameIndex
+ALTER INDEX "UserBlockCredit_userId_createdAt_idx" RENAME TO "CreditTransaction_userId_createdAt_idx";
diff --git a/autogpt_platform/backend/migrations/20241212150828_agent_store_v2_views/migration.sql b/autogpt_platform/backend/migrations/20241212150828_agent_store_v2_views/migration.sql
new file mode 100644
index 0000000000..d51e47ebf1
--- /dev/null
+++ b/autogpt_platform/backend/migrations/20241212150828_agent_store_v2_views/migration.sql
@@ -0,0 +1,118 @@
+BEGIN;
+
+CREATE VIEW "StoreAgent" AS
+WITH ReviewStats AS (
+ SELECT sl."id" AS "storeListingId",
+ COUNT(sr.id) AS review_count,
+ AVG(CAST(sr.score AS DECIMAL)) AS avg_rating
+ FROM "StoreListing" sl
+ JOIN "StoreListingVersion" slv ON slv."storeListingId" = sl."id"
+ JOIN "StoreListingReview" sr ON sr."storeListingVersionId" = slv.id
+ WHERE sl."isDeleted" = FALSE
+ GROUP BY sl."id"
+),
+AgentRuns AS (
+ SELECT "agentGraphId", COUNT(*) AS run_count
+ FROM "AgentGraphExecution"
+ GROUP BY "agentGraphId"
+)
+SELECT
+ sl.id AS listing_id,
+ slv.id AS "storeListingVersionId",
+ slv."createdAt" AS updated_at,
+ slv.slug,
+ a.name AS agent_name,
+ slv."videoUrl" AS agent_video,
+ COALESCE(slv."imageUrls", ARRAY[]::TEXT[]) AS agent_image,
+ slv."isFeatured" AS featured,
+ p.username AS creator_username,
+ p."avatarUrl" AS creator_avatar,
+ slv."subHeading" AS sub_heading,
+ slv.description,
+ slv.categories,
+ COALESCE(ar.run_count, 0) AS runs,
+ CAST(COALESCE(rs.avg_rating, 0.0) AS DOUBLE PRECISION) AS rating,
+ ARRAY_AGG(DISTINCT CAST(slv.version AS TEXT)) AS versions
+FROM "StoreListing" sl
+JOIN "AgentGraph" a ON sl."agentId" = a.id AND sl."agentVersion" = a."version"
+LEFT JOIN "Profile" p ON sl."owningUserId" = p."userId"
+LEFT JOIN "StoreListingVersion" slv ON slv."storeListingId" = sl.id
+LEFT JOIN ReviewStats rs ON sl.id = rs."storeListingId"
+LEFT JOIN AgentRuns ar ON a.id = ar."agentGraphId"
+WHERE sl."isDeleted" = FALSE
+ AND sl."isApproved" = TRUE
+GROUP BY sl.id, slv.id, slv.slug, slv."createdAt", a.name, slv."videoUrl", slv."imageUrls", slv."isFeatured",
+ p.username, p."avatarUrl", slv."subHeading", slv.description, slv.categories,
+ ar.run_count, rs.avg_rating;
+
+CREATE VIEW "Creator" AS
+WITH AgentStats AS (
+ SELECT
+ p.username,
+ COUNT(DISTINCT sl.id) as num_agents,
+ AVG(CAST(COALESCE(sr.score, 0) AS DECIMAL)) as agent_rating,
+ SUM(COALESCE(age.run_count, 0)) as agent_runs
+ FROM "Profile" p
+ LEFT JOIN "StoreListing" sl ON sl."owningUserId" = p."userId"
+ LEFT JOIN "StoreListingVersion" slv ON slv."storeListingId" = sl.id
+ LEFT JOIN "StoreListingReview" sr ON sr."storeListingVersionId" = slv.id
+ LEFT JOIN (
+ SELECT "agentGraphId", COUNT(*) as run_count
+ FROM "AgentGraphExecution"
+ GROUP BY "agentGraphId"
+ ) age ON age."agentGraphId" = sl."agentId"
+ WHERE sl."isDeleted" = FALSE AND sl."isApproved" = TRUE
+ GROUP BY p.username
+)
+SELECT
+ p.username,
+ p.name,
+ p."avatarUrl" as avatar_url,
+ p.description,
+ ARRAY_AGG(DISTINCT c) FILTER (WHERE c IS NOT NULL) as top_categories,
+ p.links,
+ COALESCE(ast.num_agents, 0) as num_agents,
+ COALESCE(ast.agent_rating, 0.0) as agent_rating,
+ COALESCE(ast.agent_runs, 0) as agent_runs
+FROM "Profile" p
+LEFT JOIN AgentStats ast ON ast.username = p.username
+LEFT JOIN LATERAL (
+ SELECT UNNEST(slv.categories) as c
+ FROM "StoreListing" sl
+ JOIN "StoreListingVersion" slv ON slv."storeListingId" = sl.id
+ WHERE sl."owningUserId" = p."userId"
+ AND sl."isDeleted" = FALSE
+ AND sl."isApproved" = TRUE
+) cats ON true
+GROUP BY p.username, p.name, p."avatarUrl", p.description, p.links,
+ ast.num_agents, ast.agent_rating, ast.agent_runs;
+
+CREATE VIEW "StoreSubmission" AS
+SELECT
+ sl.id as listing_id,
+ sl."owningUserId" as user_id,
+ slv."agentId" as agent_id,
+ slv."version" as agent_version,
+ slv.slug,
+ slv.name,
+ slv."subHeading" as sub_heading,
+ slv.description,
+ slv."imageUrls" as image_urls,
+ slv."createdAt" as date_submitted,
+ COALESCE(sls."Status", 'PENDING') as status,
+ COALESCE(ar.run_count, 0) as runs,
+ CAST(COALESCE(AVG(CAST(sr.score AS DECIMAL)), 0.0) AS DOUBLE PRECISION) as rating
+FROM "StoreListing" sl
+JOIN "StoreListingVersion" slv ON slv."storeListingId" = sl.id
+LEFT JOIN "StoreListingSubmission" sls ON sls."storeListingId" = sl.id
+LEFT JOIN "StoreListingReview" sr ON sr."storeListingVersionId" = slv.id
+LEFT JOIN (
+ SELECT "agentGraphId", COUNT(*) as run_count
+ FROM "AgentGraphExecution"
+ GROUP BY "agentGraphId"
+) ar ON ar."agentGraphId" = slv."agentId"
+WHERE sl."isDeleted" = FALSE
+GROUP BY sl.id, sl."owningUserId", slv."agentId", slv."version", slv.slug, slv.name, slv."subHeading",
+ slv.description, slv."imageUrls", slv."createdAt", sls."Status", ar.run_count;
+
+COMMIT;
\ No newline at end of file
diff --git a/autogpt_platform/backend/poetry.lock b/autogpt_platform/backend/poetry.lock
index e3a62737c2..a831ba54b8 100644
--- a/autogpt_platform/backend/poetry.lock
+++ b/autogpt_platform/backend/poetry.lock
@@ -1,140 +1,126 @@
-# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand.
+# This file is automatically @generated by Poetry 1.8.4 and should not be changed by hand.
[[package]]
name = "aio-pika"
-version = "9.5.0"
+version = "9.5.3"
description = "Wrapper around the aiormq for asyncio and humans"
optional = false
-python-versions = "<4.0,>=3.8"
+python-versions = "<4.0,>=3.9"
files = [
- {file = "aio_pika-9.5.0-py3-none-any.whl", hash = "sha256:7e03b80fab5a0d354dca45fb5ac95f074b87c639db34c6a1962cabe0fd95bd56"},
- {file = "aio_pika-9.5.0.tar.gz", hash = "sha256:d45d49e6543bcdfd2fe4b1a0ee59d931c15a96e99497bc599cf0fddb94061925"},
+ {file = "aio_pika-9.5.3-py3-none-any.whl", hash = "sha256:9cdbc3350a76a04947348f07fa606bb76bb2d1bcb36523cc5452210e32a5041b"},
+ {file = "aio_pika-9.5.3.tar.gz", hash = "sha256:95c19605ad2918e46ae39ead9a4991d5a8738dceedef11ff352b62eb3f935f36"},
]
[package.dependencies]
-aiormq = ">=6.8.0,<6.9.0"
+aiormq = ">=6.8,<6.9"
exceptiongroup = ">=1,<2"
yarl = "*"
[[package]]
name = "aiohappyeyeballs"
-version = "2.4.3"
+version = "2.4.4"
description = "Happy Eyeballs for asyncio"
optional = false
python-versions = ">=3.8"
files = [
- {file = "aiohappyeyeballs-2.4.3-py3-none-any.whl", hash = "sha256:8a7a83727b2756f394ab2895ea0765a0a8c475e3c71e98d43d76f22b4b435572"},
- {file = "aiohappyeyeballs-2.4.3.tar.gz", hash = "sha256:75cf88a15106a5002a8eb1dab212525c00d1f4c0fa96e551c9fbe6f09a621586"},
+ {file = "aiohappyeyeballs-2.4.4-py3-none-any.whl", hash = "sha256:a980909d50efcd44795c4afeca523296716d50cd756ddca6af8c65b996e27de8"},
+ {file = "aiohappyeyeballs-2.4.4.tar.gz", hash = "sha256:5fdd7d87889c63183afc18ce9271f9b0a7d32c2303e394468dd45d514a757745"},
]
[[package]]
name = "aiohttp"
-version = "3.10.8"
+version = "3.11.10"
description = "Async http client/server framework (asyncio)"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "aiohttp-3.10.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a1ba7bc139592339ddeb62c06486d0fa0f4ca61216e14137a40d626c81faf10c"},
- {file = "aiohttp-3.10.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:85e4d7bd05d18e4b348441e7584c681eff646e3bf38f68b2626807f3add21aa2"},
- {file = "aiohttp-3.10.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:69de056022e7abf69cb9fec795515973cc3eeaff51e3ea8d72a77aa933a91c52"},
- {file = "aiohttp-3.10.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee3587506898d4a404b33bd19689286ccf226c3d44d7a73670c8498cd688e42c"},
- {file = "aiohttp-3.10.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fe285a697c851734285369614443451462ce78aac2b77db23567507484b1dc6f"},
- {file = "aiohttp-3.10.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:10c7932337285a6bfa3a5fe1fd4da90b66ebfd9d0cbd1544402e1202eb9a8c3e"},
- {file = "aiohttp-3.10.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd9716ef0224fe0d0336997eb242f40619f9f8c5c57e66b525a1ebf9f1d8cebe"},
- {file = "aiohttp-3.10.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ceacea31f8a55cdba02bc72c93eb2e1b77160e91f8abd605969c168502fd71eb"},
- {file = "aiohttp-3.10.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9721554bfa9e15f6e462da304374c2f1baede3cb06008c36c47fa37ea32f1dc4"},
- {file = "aiohttp-3.10.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:22cdeb684d8552490dd2697a5138c4ecb46f844892df437aaf94f7eea99af879"},
- {file = "aiohttp-3.10.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:e56bb7e31c4bc79956b866163170bc89fd619e0581ce813330d4ea46921a4881"},
- {file = "aiohttp-3.10.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:3a95d2686bc4794d66bd8de654e41b5339fab542b2bca9238aa63ed5f4f2ce82"},
- {file = "aiohttp-3.10.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d82404a0e7b10e0d7f022cf44031b78af8a4f99bd01561ac68f7c24772fed021"},
- {file = "aiohttp-3.10.8-cp310-cp310-win32.whl", hash = "sha256:4e10b04542d27e21538e670156e88766543692a0a883f243ba8fad9ddea82e53"},
- {file = "aiohttp-3.10.8-cp310-cp310-win_amd64.whl", hash = "sha256:680dbcff5adc7f696ccf8bf671d38366a1f620b5616a1d333d0cb33956065395"},
- {file = "aiohttp-3.10.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:33a68011a38020ed4ff41ae0dbf4a96a202562ecf2024bdd8f65385f1d07f6ef"},
- {file = "aiohttp-3.10.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6c7efa6616a95e3bd73b8a69691012d2ef1f95f9ea0189e42f338fae080c2fc6"},
- {file = "aiohttp-3.10.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ddb9b9764cfb4459acf01c02d2a59d3e5066b06a846a364fd1749aa168efa2be"},
- {file = "aiohttp-3.10.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c7f270f4ca92760f98a42c45a58674fff488e23b144ec80b1cc6fa2effed377"},
- {file = "aiohttp-3.10.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6984dda9d79064361ab58d03f6c1e793ea845c6cfa89ffe1a7b9bb400dfd56bd"},
- {file = "aiohttp-3.10.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f6d47e392c27206701565c8df4cac6ebed28fdf6dcaea5b1eea7a4631d8e6db"},
- {file = "aiohttp-3.10.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a72f89aea712c619b2ca32c6f4335c77125ede27530ad9705f4f349357833695"},
- {file = "aiohttp-3.10.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c36074b26f3263879ba8e4dbd33db2b79874a3392f403a70b772701363148b9f"},
- {file = "aiohttp-3.10.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e32148b4a745e70a255a1d44b5664de1f2e24fcefb98a75b60c83b9e260ddb5b"},
- {file = "aiohttp-3.10.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5aa1a073514cf59c81ad49a4ed9b5d72b2433638cd53160fd2f3a9cfa94718db"},
- {file = "aiohttp-3.10.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:d3a79200a9d5e621c4623081ddb25380b713c8cf5233cd11c1aabad990bb9381"},
- {file = "aiohttp-3.10.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:e45fdfcb2d5bcad83373e4808825b7512953146d147488114575780640665027"},
- {file = "aiohttp-3.10.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f78e2a78432c537ae876a93013b7bc0027ba5b93ad7b3463624c4b6906489332"},
- {file = "aiohttp-3.10.8-cp311-cp311-win32.whl", hash = "sha256:f8179855a4e4f3b931cb1764ec87673d3fbdcca2af496c8d30567d7b034a13db"},
- {file = "aiohttp-3.10.8-cp311-cp311-win_amd64.whl", hash = "sha256:ef9b484604af05ca745b6108ca1aaa22ae1919037ae4f93aaf9a37ba42e0b835"},
- {file = "aiohttp-3.10.8-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:ab2d6523575fc98896c80f49ac99e849c0b0e69cc80bf864eed6af2ae728a52b"},
- {file = "aiohttp-3.10.8-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f5d5d5401744dda50b943d8764508d0e60cc2d3305ac1e6420935861a9d544bc"},
- {file = "aiohttp-3.10.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:de23085cf90911600ace512e909114385026b16324fa203cc74c81f21fd3276a"},
- {file = "aiohttp-3.10.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4618f0d2bf523043866a9ff8458900d8eb0a6d4018f251dae98e5f1fb699f3a8"},
- {file = "aiohttp-3.10.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:21c1925541ca84f7b5e0df361c0a813a7d6a56d3b0030ebd4b220b8d232015f9"},
- {file = "aiohttp-3.10.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:497a7d20caea8855c5429db3cdb829385467217d7feb86952a6107e033e031b9"},
- {file = "aiohttp-3.10.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c887019dbcb4af58a091a45ccf376fffe800b5531b45c1efccda4bedf87747ea"},
- {file = "aiohttp-3.10.8-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:40d2d719c3c36a7a65ed26400e2b45b2d9ed7edf498f4df38b2ae130f25a0d01"},
- {file = "aiohttp-3.10.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:57359785f27394a8bcab0da6dcd46706d087dfebf59a8d0ad2e64a4bc2f6f94f"},
- {file = "aiohttp-3.10.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a961ee6f2cdd1a2be4735333ab284691180d40bad48f97bb598841bfcbfb94ec"},
- {file = "aiohttp-3.10.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:fe3d79d6af839ffa46fdc5d2cf34295390894471e9875050eafa584cb781508d"},
- {file = "aiohttp-3.10.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:9a281cba03bdaa341c70b7551b2256a88d45eead149f48b75a96d41128c240b3"},
- {file = "aiohttp-3.10.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c6769d71bfb1ed60321363a9bc05e94dcf05e38295ef41d46ac08919e5b00d19"},
- {file = "aiohttp-3.10.8-cp312-cp312-win32.whl", hash = "sha256:a3081246bab4d419697ee45e555cef5cd1def7ac193dff6f50be761d2e44f194"},
- {file = "aiohttp-3.10.8-cp312-cp312-win_amd64.whl", hash = "sha256:ab1546fc8e00676febc81c548a876c7bde32f881b8334b77f84719ab2c7d28dc"},
- {file = "aiohttp-3.10.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:b1a012677b8e0a39e181e218de47d6741c5922202e3b0b65e412e2ce47c39337"},
- {file = "aiohttp-3.10.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2df786c96c57cd6b87156ba4c5f166af7b88f3fc05f9d592252fdc83d8615a3c"},
- {file = "aiohttp-3.10.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:8885ca09d3a9317219c0831276bfe26984b17b2c37b7bf70dd478d17092a4772"},
- {file = "aiohttp-3.10.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4dbf252ac19860e0ab56cd480d2805498f47c5a2d04f5995d8d8a6effd04b48c"},
- {file = "aiohttp-3.10.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b2036479b6b94afaaca7d07b8a68dc0e67b0caf5f6293bb6a5a1825f5923000"},
- {file = "aiohttp-3.10.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:365783e1b7c40b59ed4ce2b5a7491bae48f41cd2c30d52647a5b1ee8604c68ad"},
- {file = "aiohttp-3.10.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:270e653b5a4b557476a1ed40e6b6ce82f331aab669620d7c95c658ef976c9c5e"},
- {file = "aiohttp-3.10.8-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8960fabc20bfe4fafb941067cda8e23c8c17c98c121aa31c7bf0cdab11b07842"},
- {file = "aiohttp-3.10.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f21e8f2abed9a44afc3d15bba22e0dfc71e5fa859bea916e42354c16102b036f"},
- {file = "aiohttp-3.10.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fecd55e7418fabd297fd836e65cbd6371aa4035a264998a091bbf13f94d9c44d"},
- {file = "aiohttp-3.10.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:badb51d851358cd7535b647bb67af4854b64f3c85f0d089c737f75504d5910ec"},
- {file = "aiohttp-3.10.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:e860985f30f3a015979e63e7ba1a391526cdac1b22b7b332579df7867848e255"},
- {file = "aiohttp-3.10.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:71462f8eeca477cbc0c9700a9464e3f75f59068aed5e9d4a521a103692da72dc"},
- {file = "aiohttp-3.10.8-cp313-cp313-win32.whl", hash = "sha256:177126e971782769b34933e94fddd1089cef0fe6b82fee8a885e539f5b0f0c6a"},
- {file = "aiohttp-3.10.8-cp313-cp313-win_amd64.whl", hash = "sha256:98a4eb60e27033dee9593814ca320ee8c199489fbc6b2699d0f710584db7feb7"},
- {file = "aiohttp-3.10.8-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ffef3d763e4c8fc97e740da5b4d0f080b78630a3914f4e772a122bbfa608c1db"},
- {file = "aiohttp-3.10.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:597128cb7bc5f068181b49a732961f46cb89f85686206289d6ccb5e27cb5fbe2"},
- {file = "aiohttp-3.10.8-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f23a6c1d09de5de89a33c9e9b229106cb70dcfdd55e81a3a3580eaadaa32bc92"},
- {file = "aiohttp-3.10.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da57af0c54a302b7c655fa1ccd5b1817a53739afa39924ef1816e7b7c8a07ccb"},
- {file = "aiohttp-3.10.8-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e7a6af57091056a79a35104d6ec29d98ec7f1fb7270ad9c6fff871b678d1ff8"},
- {file = "aiohttp-3.10.8-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:32710d6b3b6c09c60c794d84ca887a3a2890131c0b02b3cefdcc6709a2260a7c"},
- {file = "aiohttp-3.10.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b91f4f62ad39a8a42d511d66269b46cb2fb7dea9564c21ab6c56a642d28bff5"},
- {file = "aiohttp-3.10.8-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:471a8c47344b9cc309558b3fcc469bd2c12b49322b4b31eb386c4a2b2d44e44a"},
- {file = "aiohttp-3.10.8-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:fc0e7f91705445d79beafba9bb3057dd50830e40fe5417017a76a214af54e122"},
- {file = "aiohttp-3.10.8-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:85431c9131a9a0f65260dc7a65c800ca5eae78c4c9931618f18c8e0933a0e0c1"},
- {file = "aiohttp-3.10.8-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:b91557ee0893da52794b25660d4f57bb519bcad8b7df301acd3898f7197c5d81"},
- {file = "aiohttp-3.10.8-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:4954e6b06dd0be97e1a5751fc606be1f9edbdc553c5d9b57d72406a8fbd17f9d"},
- {file = "aiohttp-3.10.8-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:a087c84b4992160ffef7afd98ef24177c8bd4ad61c53607145a8377457385100"},
- {file = "aiohttp-3.10.8-cp38-cp38-win32.whl", hash = "sha256:e1f0f7b27171b2956a27bd8f899751d0866ddabdd05cbddf3520f945130a908c"},
- {file = "aiohttp-3.10.8-cp38-cp38-win_amd64.whl", hash = "sha256:c4916070e12ae140110aa598031876c1bf8676a36a750716ea0aa5bd694aa2e7"},
- {file = "aiohttp-3.10.8-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5284997e3d88d0dfb874c43e51ae8f4a6f4ca5b90dcf22995035187253d430db"},
- {file = "aiohttp-3.10.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9443d9ebc5167ce1fbb552faf2d666fb22ef5716a8750be67efd140a7733738c"},
- {file = "aiohttp-3.10.8-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b667e2a03407d79a76c618dc30cedebd48f082d85880d0c9c4ec2faa3e10f43e"},
- {file = "aiohttp-3.10.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:98fae99d5c2146f254b7806001498e6f9ffb0e330de55a35e72feb7cb2fa399b"},
- {file = "aiohttp-3.10.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8296edd99d0dd9d0eb8b9e25b3b3506eef55c1854e9cc230f0b3f885f680410b"},
- {file = "aiohttp-3.10.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1ce46dfb49cfbf9e92818be4b761d4042230b1f0e05ffec0aad15b3eb162b905"},
- {file = "aiohttp-3.10.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c38cfd355fd86c39b2d54651bd6ed7d63d4fe3b5553f364bae3306e2445f847"},
- {file = "aiohttp-3.10.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:713dff3f87ceec3bde4f3f484861464e722cf7533f9fa6b824ec82bb5a9010a7"},
- {file = "aiohttp-3.10.8-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:21a72f4a9c69a8567a0aca12042f12bba25d3139fd5dd8eeb9931f4d9e8599cd"},
- {file = "aiohttp-3.10.8-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:6d1ad868624f6cea77341ef2877ad4e71f7116834a6cd7ec36ec5c32f94ee6ae"},
- {file = "aiohttp-3.10.8-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:a78ba86d5a08207d1d1ad10b97aed6ea48b374b3f6831d02d0b06545ac0f181e"},
- {file = "aiohttp-3.10.8-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:aff048793d05e1ce05b62e49dccf81fe52719a13f4861530706619506224992b"},
- {file = "aiohttp-3.10.8-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:d088ca05381fd409793571d8e34eca06daf41c8c50a05aeed358d2d340c7af81"},
- {file = "aiohttp-3.10.8-cp39-cp39-win32.whl", hash = "sha256:ee97c4e54f457c366e1f76fbbf3e8effee9de57dae671084a161c00f481106ce"},
- {file = "aiohttp-3.10.8-cp39-cp39-win_amd64.whl", hash = "sha256:d95ae4420669c871667aad92ba8cce6251d61d79c1a38504621094143f94a8b4"},
- {file = "aiohttp-3.10.8.tar.gz", hash = "sha256:21f8225f7dc187018e8433c9326be01477fb2810721e048b33ac49091b19fb4a"},
+ {file = "aiohttp-3.11.10-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cbad88a61fa743c5d283ad501b01c153820734118b65aee2bd7dbb735475ce0d"},
+ {file = "aiohttp-3.11.10-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:80886dac673ceaef499de2f393fc80bb4481a129e6cb29e624a12e3296cc088f"},
+ {file = "aiohttp-3.11.10-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:61b9bae80ed1f338c42f57c16918853dc51775fb5cb61da70d590de14d8b5fb4"},
+ {file = "aiohttp-3.11.10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e2e576caec5c6a6b93f41626c9c02fc87cd91538b81a3670b2e04452a63def6"},
+ {file = "aiohttp-3.11.10-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:02c13415b5732fb6ee7ff64583a5e6ed1c57aa68f17d2bda79c04888dfdc2769"},
+ {file = "aiohttp-3.11.10-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4cfce37f31f20800a6a6620ce2cdd6737b82e42e06e6e9bd1b36f546feb3c44f"},
+ {file = "aiohttp-3.11.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3bbbfff4c679c64e6e23cb213f57cc2c9165c9a65d63717108a644eb5a7398df"},
+ {file = "aiohttp-3.11.10-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49c7dbbc1a559ae14fc48387a115b7d4bbc84b4a2c3b9299c31696953c2a5219"},
+ {file = "aiohttp-3.11.10-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:68386d78743e6570f054fe7949d6cb37ef2b672b4d3405ce91fafa996f7d9b4d"},
+ {file = "aiohttp-3.11.10-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:9ef405356ba989fb57f84cac66f7b0260772836191ccefbb987f414bcd2979d9"},
+ {file = "aiohttp-3.11.10-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:5d6958671b296febe7f5f859bea581a21c1d05430d1bbdcf2b393599b1cdce77"},
+ {file = "aiohttp-3.11.10-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:99b7920e7165be5a9e9a3a7f1b680f06f68ff0d0328ff4079e5163990d046767"},
+ {file = "aiohttp-3.11.10-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0dc49f42422163efb7e6f1df2636fe3db72713f6cd94688e339dbe33fe06d61d"},
+ {file = "aiohttp-3.11.10-cp310-cp310-win32.whl", hash = "sha256:40d1c7a7f750b5648642586ba7206999650208dbe5afbcc5284bcec6579c9b91"},
+ {file = "aiohttp-3.11.10-cp310-cp310-win_amd64.whl", hash = "sha256:68ff6f48b51bd78ea92b31079817aff539f6c8fc80b6b8d6ca347d7c02384e33"},
+ {file = "aiohttp-3.11.10-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:77c4aa15a89847b9891abf97f3d4048f3c2d667e00f8a623c89ad2dccee6771b"},
+ {file = "aiohttp-3.11.10-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:909af95a72cedbefe5596f0bdf3055740f96c1a4baa0dd11fd74ca4de0b4e3f1"},
+ {file = "aiohttp-3.11.10-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:386fbe79863eb564e9f3615b959e28b222259da0c48fd1be5929ac838bc65683"},
+ {file = "aiohttp-3.11.10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3de34936eb1a647aa919655ff8d38b618e9f6b7f250cc19a57a4bf7fd2062b6d"},
+ {file = "aiohttp-3.11.10-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0c9527819b29cd2b9f52033e7fb9ff08073df49b4799c89cb5754624ecd98299"},
+ {file = "aiohttp-3.11.10-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65a96e3e03300b41f261bbfd40dfdbf1c301e87eab7cd61c054b1f2e7c89b9e8"},
+ {file = "aiohttp-3.11.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98f5635f7b74bcd4f6f72fcd85bea2154b323a9f05226a80bc7398d0c90763b0"},
+ {file = "aiohttp-3.11.10-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:03b6002e20938fc6ee0918c81d9e776bebccc84690e2b03ed132331cca065ee5"},
+ {file = "aiohttp-3.11.10-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6362cc6c23c08d18ddbf0e8c4d5159b5df74fea1a5278ff4f2c79aed3f4e9f46"},
+ {file = "aiohttp-3.11.10-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:3691ed7726fef54e928fe26344d930c0c8575bc968c3e239c2e1a04bd8cf7838"},
+ {file = "aiohttp-3.11.10-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:31d5093d3acd02b31c649d3a69bb072d539d4c7659b87caa4f6d2bcf57c2fa2b"},
+ {file = "aiohttp-3.11.10-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:8b3cf2dc0f0690a33f2d2b2cb15db87a65f1c609f53c37e226f84edb08d10f52"},
+ {file = "aiohttp-3.11.10-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:fbbaea811a2bba171197b08eea288b9402faa2bab2ba0858eecdd0a4105753a3"},
+ {file = "aiohttp-3.11.10-cp311-cp311-win32.whl", hash = "sha256:4b2c7ac59c5698a7a8207ba72d9e9c15b0fc484a560be0788b31312c2c5504e4"},
+ {file = "aiohttp-3.11.10-cp311-cp311-win_amd64.whl", hash = "sha256:974d3a2cce5fcfa32f06b13ccc8f20c6ad9c51802bb7f829eae8a1845c4019ec"},
+ {file = "aiohttp-3.11.10-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:b78f053a7ecfc35f0451d961dacdc671f4bcbc2f58241a7c820e9d82559844cf"},
+ {file = "aiohttp-3.11.10-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:ab7485222db0959a87fbe8125e233b5a6f01f4400785b36e8a7878170d8c3138"},
+ {file = "aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:cf14627232dfa8730453752e9cdc210966490992234d77ff90bc8dc0dce361d5"},
+ {file = "aiohttp-3.11.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:076bc454a7e6fd646bc82ea7f98296be0b1219b5e3ef8a488afbdd8e81fbac50"},
+ {file = "aiohttp-3.11.10-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:482cafb7dc886bebeb6c9ba7925e03591a62ab34298ee70d3dd47ba966370d2c"},
+ {file = "aiohttp-3.11.10-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bf3d1a519a324af764a46da4115bdbd566b3c73fb793ffb97f9111dbc684fc4d"},
+ {file = "aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24213ba85a419103e641e55c27dc7ff03536c4873470c2478cce3311ba1eee7b"},
+ {file = "aiohttp-3.11.10-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b99acd4730ad1b196bfb03ee0803e4adac371ae8efa7e1cbc820200fc5ded109"},
+ {file = "aiohttp-3.11.10-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:14cdb5a9570be5a04eec2ace174a48ae85833c2aadc86de68f55541f66ce42ab"},
+ {file = "aiohttp-3.11.10-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:7e97d622cb083e86f18317282084bc9fbf261801b0192c34fe4b1febd9f7ae69"},
+ {file = "aiohttp-3.11.10-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:012f176945af138abc10c4a48743327a92b4ca9adc7a0e078077cdb5dbab7be0"},
+ {file = "aiohttp-3.11.10-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:44224d815853962f48fe124748227773acd9686eba6dc102578defd6fc99e8d9"},
+ {file = "aiohttp-3.11.10-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c87bf31b7fdab94ae3adbe4a48e711bfc5f89d21cf4c197e75561def39e223bc"},
+ {file = "aiohttp-3.11.10-cp312-cp312-win32.whl", hash = "sha256:06a8e2ee1cbac16fe61e51e0b0c269400e781b13bcfc33f5425912391a542985"},
+ {file = "aiohttp-3.11.10-cp312-cp312-win_amd64.whl", hash = "sha256:be2b516f56ea883a3e14dda17059716593526e10fb6303189aaf5503937db408"},
+ {file = "aiohttp-3.11.10-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8cc5203b817b748adccb07f36390feb730b1bc5f56683445bfe924fc270b8816"},
+ {file = "aiohttp-3.11.10-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5ef359ebc6949e3a34c65ce20230fae70920714367c63afd80ea0c2702902ccf"},
+ {file = "aiohttp-3.11.10-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9bca390cb247dbfaec3c664326e034ef23882c3f3bfa5fbf0b56cad0320aaca5"},
+ {file = "aiohttp-3.11.10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:811f23b3351ca532af598405db1093f018edf81368e689d1b508c57dcc6b6a32"},
+ {file = "aiohttp-3.11.10-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddf5f7d877615f6a1e75971bfa5ac88609af3b74796ff3e06879e8422729fd01"},
+ {file = "aiohttp-3.11.10-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6ab29b8a0beb6f8eaf1e5049252cfe74adbaafd39ba91e10f18caeb0e99ffb34"},
+ {file = "aiohttp-3.11.10-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c49a76c1038c2dd116fa443eba26bbb8e6c37e924e2513574856de3b6516be99"},
+ {file = "aiohttp-3.11.10-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7f3dc0e330575f5b134918976a645e79adf333c0a1439dcf6899a80776c9ab39"},
+ {file = "aiohttp-3.11.10-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:efb15a17a12497685304b2d976cb4939e55137df7b09fa53f1b6a023f01fcb4e"},
+ {file = "aiohttp-3.11.10-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:db1d0b28fcb7f1d35600150c3e4b490775251dea70f894bf15c678fdd84eda6a"},
+ {file = "aiohttp-3.11.10-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:15fccaf62a4889527539ecb86834084ecf6e9ea70588efde86e8bc775e0e7542"},
+ {file = "aiohttp-3.11.10-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:593c114a2221444f30749cc5e5f4012488f56bd14de2af44fe23e1e9894a9c60"},
+ {file = "aiohttp-3.11.10-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7852bbcb4d0d2f0c4d583f40c3bc750ee033265d80598d0f9cb6f372baa6b836"},
+ {file = "aiohttp-3.11.10-cp313-cp313-win32.whl", hash = "sha256:65e55ca7debae8faaffee0ebb4b47a51b4075f01e9b641c31e554fd376595c6c"},
+ {file = "aiohttp-3.11.10-cp313-cp313-win_amd64.whl", hash = "sha256:beb39a6d60a709ae3fb3516a1581777e7e8b76933bb88c8f4420d875bb0267c6"},
+ {file = "aiohttp-3.11.10-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0580f2e12de2138f34debcd5d88894786453a76e98febaf3e8fe5db62d01c9bf"},
+ {file = "aiohttp-3.11.10-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a55d2ad345684e7c3dd2c20d2f9572e9e1d5446d57200ff630e6ede7612e307f"},
+ {file = "aiohttp-3.11.10-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:04814571cb72d65a6899db6099e377ed00710bf2e3eafd2985166f2918beaf59"},
+ {file = "aiohttp-3.11.10-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e44a9a3c053b90c6f09b1bb4edd880959f5328cf63052503f892c41ea786d99f"},
+ {file = "aiohttp-3.11.10-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:502a1464ccbc800b4b1995b302efaf426e8763fadf185e933c2931df7db9a199"},
+ {file = "aiohttp-3.11.10-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:613e5169f8ae77b1933e42e418a95931fb4867b2991fc311430b15901ed67079"},
+ {file = "aiohttp-3.11.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4cca22a61b7fe45da8fc73c3443150c3608750bbe27641fc7558ec5117b27fdf"},
+ {file = "aiohttp-3.11.10-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:86a5dfcc39309470bd7b68c591d84056d195428d5d2e0b5ccadfbaf25b026ebc"},
+ {file = "aiohttp-3.11.10-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:77ae58586930ee6b2b6f696c82cf8e78c8016ec4795c53e36718365f6959dc82"},
+ {file = "aiohttp-3.11.10-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:78153314f26d5abef3239b4a9af20c229c6f3ecb97d4c1c01b22c4f87669820c"},
+ {file = "aiohttp-3.11.10-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:98283b94cc0e11c73acaf1c9698dea80c830ca476492c0fe2622bd931f34b487"},
+ {file = "aiohttp-3.11.10-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:53bf2097e05c2accc166c142a2090e4c6fd86581bde3fd9b2d3f9e93dda66ac1"},
+ {file = "aiohttp-3.11.10-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:c5532f0441fc09c119e1dca18fbc0687e64fbeb45aa4d6a87211ceaee50a74c4"},
+ {file = "aiohttp-3.11.10-cp39-cp39-win32.whl", hash = "sha256:47ad15a65fb41c570cd0ad9a9ff8012489e68176e7207ec7b82a0940dddfd8be"},
+ {file = "aiohttp-3.11.10-cp39-cp39-win_amd64.whl", hash = "sha256:c6b9e6d7e41656d78e37ce754813fa44b455c3d0d0dced2a047def7dc5570b74"},
+ {file = "aiohttp-3.11.10.tar.gz", hash = "sha256:b1fc6b45010a8d0ff9e88f9f2418c6fd408c99c211257334aff41597ebece42e"},
]
[package.dependencies]
aiohappyeyeballs = ">=2.3.0"
aiosignal = ">=1.1.2"
-async-timeout = {version = ">=4.0,<5.0", markers = "python_version < \"3.11\""}
+async-timeout = {version = ">=4.0,<6.0", markers = "python_version < \"3.11\""}
attrs = ">=17.3.0"
frozenlist = ">=1.1.1"
multidict = ">=4.5,<7.0"
-yarl = ">=1.12.0,<2.0"
+propcache = ">=0.2.0"
+yarl = ">=1.17.0,<2.0"
[package.extras]
speedups = ["Brotli", "aiodns (>=3.2.0)", "brotlicffi"]
@@ -205,24 +191,24 @@ vertex = ["google-auth (>=2,<3)"]
[[package]]
name = "anyio"
-version = "4.6.0"
+version = "4.7.0"
description = "High level compatibility layer for multiple asynchronous event loop implementations"
optional = false
python-versions = ">=3.9"
files = [
- {file = "anyio-4.6.0-py3-none-any.whl", hash = "sha256:c7d2e9d63e31599eeb636c8c5c03a7e108d73b345f064f1c19fdc87b79036a9a"},
- {file = "anyio-4.6.0.tar.gz", hash = "sha256:137b4559cbb034c477165047febb6ff83f390fc3b20bf181c1fc0a728cb8beeb"},
+ {file = "anyio-4.7.0-py3-none-any.whl", hash = "sha256:ea60c3723ab42ba6fff7e8ccb0488c898ec538ff4df1f1d5e642c3601d07e352"},
+ {file = "anyio-4.7.0.tar.gz", hash = "sha256:2f834749c602966b7d456a7567cafcb309f96482b5081d14ac93ccd457f9dd48"},
]
[package.dependencies]
exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""}
idna = ">=2.8"
sniffio = ">=1.1"
-typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""}
+typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""}
[package.extras]
-doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"]
-test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.21.0b1)"]
+doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"]
+test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21)"]
trio = ["trio (>=0.26.1)"]
[[package]]
@@ -254,13 +240,13 @@ zookeeper = ["kazoo"]
[[package]]
name = "async-timeout"
-version = "4.0.3"
+version = "5.0.1"
description = "Timeout context manager for asyncio programs"
optional = false
-python-versions = ">=3.7"
+python-versions = ">=3.8"
files = [
- {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"},
- {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"},
+ {file = "async_timeout-5.0.1-py3-none-any.whl", hash = "sha256:39e3809566ff85354557ec2398b55e096c8364bacac9405a7a1fa429e77fe76c"},
+ {file = "async_timeout-5.0.1.tar.gz", hash = "sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3"},
]
[[package]]
@@ -456,101 +442,116 @@ pycparser = "*"
[[package]]
name = "charset-normalizer"
-version = "3.3.2"
+version = "3.4.0"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
optional = false
python-versions = ">=3.7.0"
files = [
- {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"},
- {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"},
- {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"},
- {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"},
- {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"},
- {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"},
- {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"},
- {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-win32.whl", hash = "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc"},
+ {file = "charset_normalizer-3.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-win32.whl", hash = "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99"},
+ {file = "charset_normalizer-3.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-win32.whl", hash = "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7"},
+ {file = "charset_normalizer-3.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-win32.whl", hash = "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67"},
+ {file = "charset_normalizer-3.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-win32.whl", hash = "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149"},
+ {file = "charset_normalizer-3.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-win32.whl", hash = "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613"},
+ {file = "charset_normalizer-3.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-win32.whl", hash = "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2"},
+ {file = "charset_normalizer-3.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca"},
+ {file = "charset_normalizer-3.4.0-py3-none-any.whl", hash = "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079"},
+ {file = "charset_normalizer-3.4.0.tar.gz", hash = "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e"},
]
[[package]]
@@ -642,6 +643,17 @@ ssh = ["bcrypt (>=3.1.5)"]
test = ["certifi", "cryptography-vectors (==43.0.3)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"]
test-randomorder = ["pytest-randomly"]
+[[package]]
+name = "defusedxml"
+version = "0.7.1"
+description = "XML bomb protection for Python stdlib modules"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+files = [
+ {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"},
+ {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"},
+]
+
[[package]]
name = "deprecated"
version = "1.2.15"
@@ -706,19 +718,19 @@ files = [
[[package]]
name = "e2b"
-version = "1.0.4"
+version = "1.0.5"
description = "E2B SDK that give agents cloud environments"
optional = false
python-versions = "<4.0,>=3.8"
files = [
- {file = "e2b-1.0.4-py3-none-any.whl", hash = "sha256:1a9c765eb1b2cc291c5ebd3f2e268f8fba9471a12f470f4651395b5753730170"},
- {file = "e2b-1.0.4.tar.gz", hash = "sha256:5ed3db4f984e52cf3aabb717725493ff060a8374b7c878b31bceeff46a0b5648"},
+ {file = "e2b-1.0.5-py3-none-any.whl", hash = "sha256:a71bdec46f33d3e38e87d475d7fd2939bd7b6b753b819c9639ca211cd375b79e"},
+ {file = "e2b-1.0.5.tar.gz", hash = "sha256:43c82705af7b7d4415c2510ff77dab4dc075351e0b769d6adf8e0d7bb4868d13"},
]
[package.dependencies]
attrs = ">=23.2.0"
httpcore = ">=1.0.5,<2.0.0"
-httpx = ">=0.27.0,<0.28.0"
+httpx = ">=0.27.0,<1.0.0"
packaging = ">=24.1"
protobuf = ">=3.20.0,<6.0.0"
python-dateutil = ">=2.8.2"
@@ -726,19 +738,19 @@ typing-extensions = ">=4.1.0"
[[package]]
name = "e2b-code-interpreter"
-version = "1.0.1"
+version = "1.0.3"
description = "E2B Code Interpreter - Stateful code execution"
optional = false
python-versions = "<4.0,>=3.8"
files = [
- {file = "e2b_code_interpreter-1.0.1-py3-none-any.whl", hash = "sha256:e27c40174ba7daac4942388611a73e1ac58300227f0ba6c0555ee54507d4944c"},
- {file = "e2b_code_interpreter-1.0.1.tar.gz", hash = "sha256:b0c061e41315d21514affe78f80052be335b687204e669dd7ca852b59eeaaea2"},
+ {file = "e2b_code_interpreter-1.0.3-py3-none-any.whl", hash = "sha256:c638bd4ec1c99d9c4eaac541bc8b15134cf786f6c7c400d979cef96d62e485d8"},
+ {file = "e2b_code_interpreter-1.0.3.tar.gz", hash = "sha256:36475acc001b1317ed129d65970fce6a7cc2d50e3fd3e8a13ad5d7d3e0fac237"},
]
[package.dependencies]
attrs = ">=21.3.0"
-e2b = ">=1.0.0,<2.0.0"
-httpx = ">=0.20.0,<0.28.0"
+e2b = ">=1.0.4,<2.0.0"
+httpx = ">=0.20.0,<1.0.0"
[[package]]
name = "exceptiongroup"
@@ -768,15 +780,30 @@ files = [
[package.extras]
tests = ["coverage", "coveralls", "dill", "mock", "nose"]
+[[package]]
+name = "faker"
+version = "30.10.0"
+description = "Faker is a Python package that generates fake data for you."
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "Faker-30.10.0-py3-none-any.whl", hash = "sha256:5f05ee92ddf0e1736d95dca41b2a16ee06d987b736fa4ddecdb047abf2e9024b"},
+ {file = "faker-30.10.0.tar.gz", hash = "sha256:c2e627d3becec67f7a45400d3670018b5abb3f0728b7dfaa06c135b7df1ce3fb"},
+]
+
+[package.dependencies]
+python-dateutil = ">=2.4"
+typing-extensions = "*"
+
[[package]]
name = "fastapi"
-version = "0.115.5"
+version = "0.115.6"
description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"
optional = false
python-versions = ">=3.8"
files = [
- {file = "fastapi-0.115.5-py3-none-any.whl", hash = "sha256:596b95adbe1474da47049e802f9a65ab2ffa9c2b07e7efee70eb8a66c9f2f796"},
- {file = "fastapi-0.115.5.tar.gz", hash = "sha256:0e7a4d0dc0d01c68df21887cce0945e72d3c48b9f4f79dfe7a7d53aa08fbb289"},
+ {file = "fastapi-0.115.6-py3-none-any.whl", hash = "sha256:e9240b29e36fa8f4bb7290316988e90c381e5092e0cbe84e7818cc3713bcf305"},
+ {file = "fastapi-0.115.6.tar.gz", hash = "sha256:9ec46f7addc14ea472958a96aae5b5de65f39721a46aaf5705c480d9a8b76654"},
]
[package.dependencies]
@@ -820,99 +847,114 @@ pyflakes = ">=3.2.0,<3.3.0"
[[package]]
name = "frozenlist"
-version = "1.4.1"
+version = "1.5.0"
description = "A list-like structure which implements collections.abc.MutableSequence"
optional = false
python-versions = ">=3.8"
files = [
- {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f9aa1878d1083b276b0196f2dfbe00c9b7e752475ed3b682025ff20c1c1f51ac"},
- {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:29acab3f66f0f24674b7dc4736477bcd4bc3ad4b896f5f45379a67bce8b96868"},
- {file = "frozenlist-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:74fb4bee6880b529a0c6560885fce4dc95936920f9f20f53d99a213f7bf66776"},
- {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:590344787a90ae57d62511dd7c736ed56b428f04cd8c161fcc5e7232c130c69a"},
- {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:068b63f23b17df8569b7fdca5517edef76171cf3897eb68beb01341131fbd2ad"},
- {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c849d495bf5154cd8da18a9eb15db127d4dba2968d88831aff6f0331ea9bd4c"},
- {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9750cc7fe1ae3b1611bb8cfc3f9ec11d532244235d75901fb6b8e42ce9229dfe"},
- {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9b2de4cf0cdd5bd2dee4c4f63a653c61d2408055ab77b151c1957f221cabf2a"},
- {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0633c8d5337cb5c77acbccc6357ac49a1770b8c487e5b3505c57b949b4b82e98"},
- {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:27657df69e8801be6c3638054e202a135c7f299267f1a55ed3a598934f6c0d75"},
- {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:f9a3ea26252bd92f570600098783d1371354d89d5f6b7dfd87359d669f2109b5"},
- {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:4f57dab5fe3407b6c0c1cc907ac98e8a189f9e418f3b6e54d65a718aaafe3950"},
- {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e02a0e11cf6597299b9f3bbd3f93d79217cb90cfd1411aec33848b13f5c656cc"},
- {file = "frozenlist-1.4.1-cp310-cp310-win32.whl", hash = "sha256:a828c57f00f729620a442881cc60e57cfcec6842ba38e1b19fd3e47ac0ff8dc1"},
- {file = "frozenlist-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:f56e2333dda1fe0f909e7cc59f021eba0d2307bc6f012a1ccf2beca6ba362439"},
- {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a0cb6f11204443f27a1628b0e460f37fb30f624be6051d490fa7d7e26d4af3d0"},
- {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b46c8ae3a8f1f41a0d2ef350c0b6e65822d80772fe46b653ab6b6274f61d4a49"},
- {file = "frozenlist-1.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fde5bd59ab5357e3853313127f4d3565fc7dad314a74d7b5d43c22c6a5ed2ced"},
- {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:722e1124aec435320ae01ee3ac7bec11a5d47f25d0ed6328f2273d287bc3abb0"},
- {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2471c201b70d58a0f0c1f91261542a03d9a5e088ed3dc6c160d614c01649c106"},
- {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c757a9dd70d72b076d6f68efdbb9bc943665ae954dad2801b874c8c69e185068"},
- {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f146e0911cb2f1da549fc58fc7bcd2b836a44b79ef871980d605ec392ff6b0d2"},
- {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f9c515e7914626b2a2e1e311794b4c35720a0be87af52b79ff8e1429fc25f19"},
- {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c302220494f5c1ebeb0912ea782bcd5e2f8308037b3c7553fad0e48ebad6ad82"},
- {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:442acde1e068288a4ba7acfe05f5f343e19fac87bfc96d89eb886b0363e977ec"},
- {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:1b280e6507ea8a4fa0c0a7150b4e526a8d113989e28eaaef946cc77ffd7efc0a"},
- {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:fe1a06da377e3a1062ae5fe0926e12b84eceb8a50b350ddca72dc85015873f74"},
- {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:db9e724bebd621d9beca794f2a4ff1d26eed5965b004a97f1f1685a173b869c2"},
- {file = "frozenlist-1.4.1-cp311-cp311-win32.whl", hash = "sha256:e774d53b1a477a67838a904131c4b0eef6b3d8a651f8b138b04f748fccfefe17"},
- {file = "frozenlist-1.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:fb3c2db03683b5767dedb5769b8a40ebb47d6f7f45b1b3e3b4b51ec8ad9d9825"},
- {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1979bc0aeb89b33b588c51c54ab0161791149f2461ea7c7c946d95d5f93b56ae"},
- {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cc7b01b3754ea68a62bd77ce6020afaffb44a590c2289089289363472d13aedb"},
- {file = "frozenlist-1.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9c92be9fd329ac801cc420e08452b70e7aeab94ea4233a4804f0915c14eba9b"},
- {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3894db91f5a489fc8fa6a9991820f368f0b3cbdb9cd8849547ccfab3392d86"},
- {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ba60bb19387e13597fb059f32cd4d59445d7b18b69a745b8f8e5db0346f33480"},
- {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8aefbba5f69d42246543407ed2461db31006b0f76c4e32dfd6f42215a2c41d09"},
- {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780d3a35680ced9ce682fbcf4cb9c2bad3136eeff760ab33707b71db84664e3a"},
- {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9acbb16f06fe7f52f441bb6f413ebae6c37baa6ef9edd49cdd567216da8600cd"},
- {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:23b701e65c7b36e4bf15546a89279bd4d8675faabc287d06bbcfac7d3c33e1e6"},
- {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3e0153a805a98f5ada7e09826255ba99fb4f7524bb81bf6b47fb702666484ae1"},
- {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:dd9b1baec094d91bf36ec729445f7769d0d0cf6b64d04d86e45baf89e2b9059b"},
- {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:1a4471094e146b6790f61b98616ab8e44f72661879cc63fa1049d13ef711e71e"},
- {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5667ed53d68d91920defdf4035d1cdaa3c3121dc0b113255124bcfada1cfa1b8"},
- {file = "frozenlist-1.4.1-cp312-cp312-win32.whl", hash = "sha256:beee944ae828747fd7cb216a70f120767fc9f4f00bacae8543c14a6831673f89"},
- {file = "frozenlist-1.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:64536573d0a2cb6e625cf309984e2d873979709f2cf22839bf2d61790b448ad5"},
- {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:20b51fa3f588ff2fe658663db52a41a4f7aa6c04f6201449c6c7c476bd255c0d"},
- {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:410478a0c562d1a5bcc2f7ea448359fcb050ed48b3c6f6f4f18c313a9bdb1826"},
- {file = "frozenlist-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c6321c9efe29975232da3bd0af0ad216800a47e93d763ce64f291917a381b8eb"},
- {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48f6a4533887e189dae092f1cf981f2e3885175f7a0f33c91fb5b7b682b6bab6"},
- {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6eb73fa5426ea69ee0e012fb59cdc76a15b1283d6e32e4f8dc4482ec67d1194d"},
- {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fbeb989b5cc29e8daf7f976b421c220f1b8c731cbf22b9130d8815418ea45887"},
- {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:32453c1de775c889eb4e22f1197fe3bdfe457d16476ea407472b9442e6295f7a"},
- {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693945278a31f2086d9bf3df0fe8254bbeaef1fe71e1351c3bd730aa7d31c41b"},
- {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1d0ce09d36d53bbbe566fe296965b23b961764c0bcf3ce2fa45f463745c04701"},
- {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3a670dc61eb0d0eb7080890c13de3066790f9049b47b0de04007090807c776b0"},
- {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:dca69045298ce5c11fd539682cff879cc1e664c245d1c64da929813e54241d11"},
- {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a06339f38e9ed3a64e4c4e43aec7f59084033647f908e4259d279a52d3757d09"},
- {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b7f2f9f912dca3934c1baec2e4585a674ef16fe00218d833856408c48d5beee7"},
- {file = "frozenlist-1.4.1-cp38-cp38-win32.whl", hash = "sha256:e7004be74cbb7d9f34553a5ce5fb08be14fb33bc86f332fb71cbe5216362a497"},
- {file = "frozenlist-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:5a7d70357e7cee13f470c7883a063aae5fe209a493c57d86eb7f5a6f910fae09"},
- {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bfa4a17e17ce9abf47a74ae02f32d014c5e9404b6d9ac7f729e01562bbee601e"},
- {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b7e3ed87d4138356775346e6845cccbe66cd9e207f3cd11d2f0b9fd13681359d"},
- {file = "frozenlist-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c99169d4ff810155ca50b4da3b075cbde79752443117d89429595c2e8e37fed8"},
- {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edb678da49d9f72c9f6c609fbe41a5dfb9a9282f9e6a2253d5a91e0fc382d7c0"},
- {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6db4667b187a6742b33afbbaf05a7bc551ffcf1ced0000a571aedbb4aa42fc7b"},
- {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55fdc093b5a3cb41d420884cdaf37a1e74c3c37a31f46e66286d9145d2063bd0"},
- {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82e8211d69a4f4bc360ea22cd6555f8e61a1bd211d1d5d39d3d228b48c83a897"},
- {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89aa2c2eeb20957be2d950b85974b30a01a762f3308cd02bb15e1ad632e22dc7"},
- {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d3e0c25a2350080e9319724dede4f31f43a6c9779be48021a7f4ebde8b2d742"},
- {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7268252af60904bf52c26173cbadc3a071cece75f873705419c8681f24d3edea"},
- {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:0c250a29735d4f15321007fb02865f0e6b6a41a6b88f1f523ca1596ab5f50bd5"},
- {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:96ec70beabbd3b10e8bfe52616a13561e58fe84c0101dd031dc78f250d5128b9"},
- {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:23b2d7679b73fe0e5a4560b672a39f98dfc6f60df63823b0a9970525325b95f6"},
- {file = "frozenlist-1.4.1-cp39-cp39-win32.whl", hash = "sha256:a7496bfe1da7fb1a4e1cc23bb67c58fab69311cc7d32b5a99c2007b4b2a0e932"},
- {file = "frozenlist-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:e6a20a581f9ce92d389a8c7d7c3dd47c81fd5d6e655c8dddf341e14aa48659d0"},
- {file = "frozenlist-1.4.1-py3-none-any.whl", hash = "sha256:04ced3e6a46b4cfffe20f9ae482818e34eba9b5fb0ce4056e4cc9b6e212d09b7"},
- {file = "frozenlist-1.4.1.tar.gz", hash = "sha256:c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b"},
+ {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5b6a66c18b5b9dd261ca98dffcb826a525334b2f29e7caa54e182255c5f6a65a"},
+ {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d1b3eb7b05ea246510b43a7e53ed1653e55c2121019a97e60cad7efb881a97bb"},
+ {file = "frozenlist-1.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:15538c0cbf0e4fa11d1e3a71f823524b0c46299aed6e10ebb4c2089abd8c3bec"},
+ {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e79225373c317ff1e35f210dd5f1344ff31066ba8067c307ab60254cd3a78ad5"},
+ {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9272fa73ca71266702c4c3e2d4a28553ea03418e591e377a03b8e3659d94fa76"},
+ {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:498524025a5b8ba81695761d78c8dd7382ac0b052f34e66939c42df860b8ff17"},
+ {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92b5278ed9d50fe610185ecd23c55d8b307d75ca18e94c0e7de328089ac5dcba"},
+ {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f3c8c1dacd037df16e85227bac13cca58c30da836c6f936ba1df0c05d046d8d"},
+ {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f2ac49a9bedb996086057b75bf93538240538c6d9b38e57c82d51f75a73409d2"},
+ {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e66cc454f97053b79c2ab09c17fbe3c825ea6b4de20baf1be28919460dd7877f"},
+ {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:5a3ba5f9a0dfed20337d3e966dc359784c9f96503674c2faf015f7fe8e96798c"},
+ {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:6321899477db90bdeb9299ac3627a6a53c7399c8cd58d25da094007402b039ab"},
+ {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:76e4753701248476e6286f2ef492af900ea67d9706a0155335a40ea21bf3b2f5"},
+ {file = "frozenlist-1.5.0-cp310-cp310-win32.whl", hash = "sha256:977701c081c0241d0955c9586ffdd9ce44f7a7795df39b9151cd9a6fd0ce4cfb"},
+ {file = "frozenlist-1.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:189f03b53e64144f90990d29a27ec4f7997d91ed3d01b51fa39d2dbe77540fd4"},
+ {file = "frozenlist-1.5.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:fd74520371c3c4175142d02a976aee0b4cb4a7cc912a60586ffd8d5929979b30"},
+ {file = "frozenlist-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2f3f7a0fbc219fb4455264cae4d9f01ad41ae6ee8524500f381de64ffaa077d5"},
+ {file = "frozenlist-1.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f47c9c9028f55a04ac254346e92977bf0f166c483c74b4232bee19a6697e4778"},
+ {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0996c66760924da6e88922756d99b47512a71cfd45215f3570bf1e0b694c206a"},
+ {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a2fe128eb4edeabe11896cb6af88fca5346059f6c8d807e3b910069f39157869"},
+ {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1a8ea951bbb6cacd492e3948b8da8c502a3f814f5d20935aae74b5df2b19cf3d"},
+ {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de537c11e4aa01d37db0d403b57bd6f0546e71a82347a97c6a9f0dcc532b3a45"},
+ {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c2623347b933fcb9095841f1cc5d4ff0b278addd743e0e966cb3d460278840d"},
+ {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cee6798eaf8b1416ef6909b06f7dc04b60755206bddc599f52232606e18179d3"},
+ {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:f5f9da7f5dbc00a604fe74aa02ae7c98bcede8a3b8b9666f9f86fc13993bc71a"},
+ {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:90646abbc7a5d5c7c19461d2e3eeb76eb0b204919e6ece342feb6032c9325ae9"},
+ {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:bdac3c7d9b705d253b2ce370fde941836a5f8b3c5c2b8fd70940a3ea3af7f4f2"},
+ {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03d33c2ddbc1816237a67f66336616416e2bbb6beb306e5f890f2eb22b959cdf"},
+ {file = "frozenlist-1.5.0-cp311-cp311-win32.whl", hash = "sha256:237f6b23ee0f44066219dae14c70ae38a63f0440ce6750f868ee08775073f942"},
+ {file = "frozenlist-1.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:0cc974cc93d32c42e7b0f6cf242a6bd941c57c61b618e78b6c0a96cb72788c1d"},
+ {file = "frozenlist-1.5.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:31115ba75889723431aa9a4e77d5f398f5cf976eea3bdf61749731f62d4a4a21"},
+ {file = "frozenlist-1.5.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7437601c4d89d070eac8323f121fcf25f88674627505334654fd027b091db09d"},
+ {file = "frozenlist-1.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7948140d9f8ece1745be806f2bfdf390127cf1a763b925c4a805c603df5e697e"},
+ {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feeb64bc9bcc6b45c6311c9e9b99406660a9c05ca8a5b30d14a78555088b0b3a"},
+ {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:683173d371daad49cffb8309779e886e59c2f369430ad28fe715f66d08d4ab1a"},
+ {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7d57d8f702221405a9d9b40f9da8ac2e4a1a8b5285aac6100f3393675f0a85ee"},
+ {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30c72000fbcc35b129cb09956836c7d7abf78ab5416595e4857d1cae8d6251a6"},
+ {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:000a77d6034fbad9b6bb880f7ec073027908f1b40254b5d6f26210d2dab1240e"},
+ {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5d7f5a50342475962eb18b740f3beecc685a15b52c91f7d975257e13e029eca9"},
+ {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:87f724d055eb4785d9be84e9ebf0f24e392ddfad00b3fe036e43f489fafc9039"},
+ {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:6e9080bb2fb195a046e5177f10d9d82b8a204c0736a97a153c2466127de87784"},
+ {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:9b93d7aaa36c966fa42efcaf716e6b3900438632a626fb09c049f6a2f09fc631"},
+ {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:52ef692a4bc60a6dd57f507429636c2af8b6046db8b31b18dac02cbc8f507f7f"},
+ {file = "frozenlist-1.5.0-cp312-cp312-win32.whl", hash = "sha256:29d94c256679247b33a3dc96cce0f93cbc69c23bf75ff715919332fdbb6a32b8"},
+ {file = "frozenlist-1.5.0-cp312-cp312-win_amd64.whl", hash = "sha256:8969190d709e7c48ea386db202d708eb94bdb29207a1f269bab1196ce0dcca1f"},
+ {file = "frozenlist-1.5.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:7a1a048f9215c90973402e26c01d1cff8a209e1f1b53f72b95c13db61b00f953"},
+ {file = "frozenlist-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dd47a5181ce5fcb463b5d9e17ecfdb02b678cca31280639255ce9d0e5aa67af0"},
+ {file = "frozenlist-1.5.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1431d60b36d15cda188ea222033eec8e0eab488f39a272461f2e6d9e1a8e63c2"},
+ {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6482a5851f5d72767fbd0e507e80737f9c8646ae7fd303def99bfe813f76cf7f"},
+ {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:44c49271a937625619e862baacbd037a7ef86dd1ee215afc298a417ff3270608"},
+ {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:12f78f98c2f1c2429d42e6a485f433722b0061d5c0b0139efa64f396efb5886b"},
+ {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ce3aa154c452d2467487765e3adc730a8c153af77ad84096bc19ce19a2400840"},
+ {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b7dc0c4338e6b8b091e8faf0db3168a37101943e687f373dce00959583f7439"},
+ {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:45e0896250900b5aa25180f9aec243e84e92ac84bd4a74d9ad4138ef3f5c97de"},
+ {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:561eb1c9579d495fddb6da8959fd2a1fca2c6d060d4113f5844b433fc02f2641"},
+ {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:df6e2f325bfee1f49f81aaac97d2aa757c7646534a06f8f577ce184afe2f0a9e"},
+ {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:140228863501b44b809fb39ec56b5d4071f4d0aa6d216c19cbb08b8c5a7eadb9"},
+ {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7707a25d6a77f5d27ea7dc7d1fc608aa0a478193823f88511ef5e6b8a48f9d03"},
+ {file = "frozenlist-1.5.0-cp313-cp313-win32.whl", hash = "sha256:31a9ac2b38ab9b5a8933b693db4939764ad3f299fcaa931a3e605bc3460e693c"},
+ {file = "frozenlist-1.5.0-cp313-cp313-win_amd64.whl", hash = "sha256:11aabdd62b8b9c4b84081a3c246506d1cddd2dd93ff0ad53ede5defec7886b28"},
+ {file = "frozenlist-1.5.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:dd94994fc91a6177bfaafd7d9fd951bc8689b0a98168aa26b5f543868548d3ca"},
+ {file = "frozenlist-1.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2d0da8bbec082bf6bf18345b180958775363588678f64998c2b7609e34719b10"},
+ {file = "frozenlist-1.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:73f2e31ea8dd7df61a359b731716018c2be196e5bb3b74ddba107f694fbd7604"},
+ {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:828afae9f17e6de596825cf4228ff28fbdf6065974e5ac1410cecc22f699d2b3"},
+ {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1577515d35ed5649d52ab4319db757bb881ce3b2b796d7283e6634d99ace307"},
+ {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2150cc6305a2c2ab33299453e2968611dacb970d2283a14955923062c8d00b10"},
+ {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a72b7a6e3cd2725eff67cd64c8f13335ee18fc3c7befc05aed043d24c7b9ccb9"},
+ {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c16d2fa63e0800723139137d667e1056bee1a1cf7965153d2d104b62855e9b99"},
+ {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:17dcc32fc7bda7ce5875435003220a457bcfa34ab7924a49a1c19f55b6ee185c"},
+ {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:97160e245ea33d8609cd2b8fd997c850b56db147a304a262abc2b3be021a9171"},
+ {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:f1e6540b7fa044eee0bb5111ada694cf3dc15f2b0347ca125ee9ca984d5e9e6e"},
+ {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:91d6c171862df0a6c61479d9724f22efb6109111017c87567cfeb7b5d1449fdf"},
+ {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:c1fac3e2ace2eb1052e9f7c7db480818371134410e1f5c55d65e8f3ac6d1407e"},
+ {file = "frozenlist-1.5.0-cp38-cp38-win32.whl", hash = "sha256:b97f7b575ab4a8af9b7bc1d2ef7f29d3afee2226bd03ca3875c16451ad5a7723"},
+ {file = "frozenlist-1.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:374ca2dabdccad8e2a76d40b1d037f5bd16824933bf7bcea3e59c891fd4a0923"},
+ {file = "frozenlist-1.5.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:9bbcdfaf4af7ce002694a4e10a0159d5a8d20056a12b05b45cea944a4953f972"},
+ {file = "frozenlist-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1893f948bf6681733aaccf36c5232c231e3b5166d607c5fa77773611df6dc336"},
+ {file = "frozenlist-1.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2b5e23253bb709ef57a8e95e6ae48daa9ac5f265637529e4ce6b003a37b2621f"},
+ {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f253985bb515ecd89629db13cb58d702035ecd8cfbca7d7a7e29a0e6d39af5f"},
+ {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:04a5c6babd5e8fb7d3c871dc8b321166b80e41b637c31a995ed844a6139942b6"},
+ {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9fe0f1c29ba24ba6ff6abf688cb0b7cf1efab6b6aa6adc55441773c252f7411"},
+ {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:226d72559fa19babe2ccd920273e767c96a49b9d3d38badd7c91a0fdeda8ea08"},
+ {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15b731db116ab3aedec558573c1a5eec78822b32292fe4f2f0345b7f697745c2"},
+ {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:366d8f93e3edfe5a918c874702f78faac300209a4d5bf38352b2c1bdc07a766d"},
+ {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:1b96af8c582b94d381a1c1f51ffaedeb77c821c690ea5f01da3d70a487dd0a9b"},
+ {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:c03eff4a41bd4e38415cbed054bbaff4a075b093e2394b6915dca34a40d1e38b"},
+ {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:50cf5e7ee9b98f22bdecbabf3800ae78ddcc26e4a435515fc72d97903e8488e0"},
+ {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1e76bfbc72353269c44e0bc2cfe171900fbf7f722ad74c9a7b638052afe6a00c"},
+ {file = "frozenlist-1.5.0-cp39-cp39-win32.whl", hash = "sha256:666534d15ba8f0fda3f53969117383d5dc021266b3c1a42c9ec4855e4b58b9d3"},
+ {file = "frozenlist-1.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:5c28f4b5dbef8a0d8aad0d4de24d1e9e981728628afaf4ea0792f5d0939372f0"},
+ {file = "frozenlist-1.5.0-py3-none-any.whl", hash = "sha256:d994863bba198a4a518b467bb971c56e1db3f180a25c6cf7bb1949c267f748c3"},
+ {file = "frozenlist-1.5.0.tar.gz", hash = "sha256:81d5af29e61b9c8348e876d442253723928dce6433e0e76cd925cd83f1b4b817"},
]
[[package]]
name = "google-api-core"
-version = "2.20.0"
+version = "2.24.0"
description = "Google API client core library"
optional = false
python-versions = ">=3.7"
files = [
- {file = "google_api_core-2.20.0-py3-none-any.whl", hash = "sha256:ef0591ef03c30bb83f79b3d0575c3f31219001fc9c5cf37024d08310aeffed8a"},
- {file = "google_api_core-2.20.0.tar.gz", hash = "sha256:f74dff1889ba291a4b76c5079df0711810e2d9da81abfdc99957bc961c1eb28f"},
+ {file = "google_api_core-2.24.0-py3-none-any.whl", hash = "sha256:10d82ac0fca69c82a25b3efdeefccf6f28e02ebb97925a8cce8edbfe379929d9"},
+ {file = "google_api_core-2.24.0.tar.gz", hash = "sha256:e255640547a597a4da010876d333208ddac417d60add22b6851a0c66a831fcaf"},
]
[package.dependencies]
@@ -931,19 +973,20 @@ protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4
requests = ">=2.18.0,<3.0.0.dev0"
[package.extras]
+async-rest = ["google-auth[aiohttp] (>=2.35.0,<3.0.dev0)"]
grpc = ["grpcio (>=1.33.2,<2.0dev)", "grpcio (>=1.49.1,<2.0dev)", "grpcio-status (>=1.33.2,<2.0.dev0)", "grpcio-status (>=1.49.1,<2.0.dev0)"]
grpcgcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"]
grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"]
[[package]]
name = "google-api-python-client"
-version = "2.154.0"
+version = "2.155.0"
description = "Google API Client Library for Python"
optional = false
python-versions = ">=3.7"
files = [
- {file = "google_api_python_client-2.154.0-py2.py3-none-any.whl", hash = "sha256:a521bbbb2ec0ba9d6f307cdd64ed6e21eeac372d1bd7493a4ab5022941f784ad"},
- {file = "google_api_python_client-2.154.0.tar.gz", hash = "sha256:1b420062e03bfcaa1c79e2e00a612d29a6a934151ceb3d272fe150a656dc8f17"},
+ {file = "google_api_python_client-2.155.0-py2.py3-none-any.whl", hash = "sha256:83fe9b5aa4160899079d7c93a37be306546a17e6686e2549bcc9584f1a229747"},
+ {file = "google_api_python_client-2.155.0.tar.gz", hash = "sha256:25529f89f0d13abcf3c05c089c423fb2858ac16e0b3727543393468d0d7af67c"},
]
[package.dependencies]
@@ -955,13 +998,13 @@ uritemplate = ">=3.0.1,<5"
[[package]]
name = "google-auth"
-version = "2.35.0"
+version = "2.37.0"
description = "Google Authentication Library"
optional = false
python-versions = ">=3.7"
files = [
- {file = "google_auth-2.35.0-py2.py3-none-any.whl", hash = "sha256:25df55f327ef021de8be50bad0dfd4a916ad0de96da86cd05661c9297723ad3f"},
- {file = "google_auth-2.35.0.tar.gz", hash = "sha256:f4c64ed4e01e8e8b646ef34c018f8bf3338df0c8e37d8b3bba40e7f574a3278a"},
+ {file = "google_auth-2.37.0-py2.py3-none-any.whl", hash = "sha256:42664f18290a6be591be5329a96fe30184be1a1badb7292a7f686a9659de9ca0"},
+ {file = "google_auth-2.37.0.tar.gz", hash = "sha256:0054623abf1f9c83492c63d3f47e77f0a544caa3d40b2d98e099a611c2dd5d00"},
]
[package.dependencies]
@@ -972,6 +1015,7 @@ rsa = ">=3.1.4,<5"
[package.extras]
aiohttp = ["aiohttp (>=3.6.2,<4.0.0.dev0)", "requests (>=2.20.0,<3.0.0.dev0)"]
enterprise-cert = ["cryptography", "pyopenssl"]
+pyjwt = ["cryptography (>=38.0.3)", "pyjwt (>=2.0)"]
pyopenssl = ["cryptography (>=38.0.3)", "pyopenssl (>=20.0.0)"]
reauth = ["pyu2f (>=0.1.5)"]
requests = ["requests (>=2.20.0,<3.0.0.dev0)"]
@@ -1023,10 +1067,7 @@ files = [
[package.dependencies]
google-api-core = {version = ">=1.34.1,<2.0.dev0 || >=2.11.dev0,<3.0.0dev", extras = ["grpc"]}
google-auth = ">=2.14.1,<2.24.0 || >2.24.0,<2.25.0 || >2.25.0,<3.0.0dev"
-proto-plus = [
- {version = ">=1.22.3,<2.0.0dev", markers = "python_version < \"3.13\""},
- {version = ">=1.25.0,<2.0.0dev", markers = "python_version >= \"3.13\""},
-]
+proto-plus = ">=1.22.3,<2.0.0dev"
protobuf = ">=3.20.2,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<6.0.0dev"
[[package]]
@@ -1087,15 +1128,95 @@ proto-plus = [
]
protobuf = ">=3.20.2,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<6.0.0dev"
+[[package]]
+name = "google-cloud-storage"
+version = "2.19.0"
+description = "Google Cloud Storage API client library"
+optional = false
+python-versions = ">=3.7"
+files = [
+ {file = "google_cloud_storage-2.19.0-py2.py3-none-any.whl", hash = "sha256:aeb971b5c29cf8ab98445082cbfe7b161a1f48ed275822f59ed3f1524ea54fba"},
+ {file = "google_cloud_storage-2.19.0.tar.gz", hash = "sha256:cd05e9e7191ba6cb68934d8eb76054d9be4562aa89dbc4236feee4d7d51342b2"},
+]
+
+[package.dependencies]
+google-api-core = ">=2.15.0,<3.0.0dev"
+google-auth = ">=2.26.1,<3.0dev"
+google-cloud-core = ">=2.3.0,<3.0dev"
+google-crc32c = ">=1.0,<2.0dev"
+google-resumable-media = ">=2.7.2"
+requests = ">=2.18.0,<3.0.0dev"
+
+[package.extras]
+protobuf = ["protobuf (<6.0.0dev)"]
+tracing = ["opentelemetry-api (>=1.1.0)"]
+
+[[package]]
+name = "google-crc32c"
+version = "1.6.0"
+description = "A python wrapper of the C library 'Google CRC32C'"
+optional = false
+python-versions = ">=3.9"
+files = [
+ {file = "google_crc32c-1.6.0-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:5bcc90b34df28a4b38653c36bb5ada35671ad105c99cfe915fb5bed7ad6924aa"},
+ {file = "google_crc32c-1.6.0-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:d9e9913f7bd69e093b81da4535ce27af842e7bf371cde42d1ae9e9bd382dc0e9"},
+ {file = "google_crc32c-1.6.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a184243544811e4a50d345838a883733461e67578959ac59964e43cca2c791e7"},
+ {file = "google_crc32c-1.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:236c87a46cdf06384f614e9092b82c05f81bd34b80248021f729396a78e55d7e"},
+ {file = "google_crc32c-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ebab974b1687509e5c973b5c4b8b146683e101e102e17a86bd196ecaa4d099fc"},
+ {file = "google_crc32c-1.6.0-cp310-cp310-win_amd64.whl", hash = "sha256:50cf2a96da226dcbff8671233ecf37bf6e95de98b2a2ebadbfdf455e6d05df42"},
+ {file = "google_crc32c-1.6.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:f7a1fc29803712f80879b0806cb83ab24ce62fc8daf0569f2204a0cfd7f68ed4"},
+ {file = "google_crc32c-1.6.0-cp311-cp311-macosx_12_0_x86_64.whl", hash = "sha256:40b05ab32a5067525670880eb5d169529089a26fe35dce8891127aeddc1950e8"},
+ {file = "google_crc32c-1.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9e4b426c3702f3cd23b933436487eb34e01e00327fac20c9aebb68ccf34117d"},
+ {file = "google_crc32c-1.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51c4f54dd8c6dfeb58d1df5e4f7f97df8abf17a36626a217f169893d1d7f3e9f"},
+ {file = "google_crc32c-1.6.0-cp311-cp311-win_amd64.whl", hash = "sha256:bb8b3c75bd157010459b15222c3fd30577042a7060e29d42dabce449c087f2b3"},
+ {file = "google_crc32c-1.6.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:ed767bf4ba90104c1216b68111613f0d5926fb3780660ea1198fc469af410e9d"},
+ {file = "google_crc32c-1.6.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:62f6d4a29fea082ac4a3c9be5e415218255cf11684ac6ef5488eea0c9132689b"},
+ {file = "google_crc32c-1.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c87d98c7c4a69066fd31701c4e10d178a648c2cac3452e62c6b24dc51f9fcc00"},
+ {file = "google_crc32c-1.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd5e7d2445d1a958c266bfa5d04c39932dc54093fa391736dbfdb0f1929c1fb3"},
+ {file = "google_crc32c-1.6.0-cp312-cp312-win_amd64.whl", hash = "sha256:7aec8e88a3583515f9e0957fe4f5f6d8d4997e36d0f61624e70469771584c760"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:e2806553238cd076f0a55bddab37a532b53580e699ed8e5606d0de1f856b5205"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:bb0966e1c50d0ef5bc743312cc730b533491d60585a9a08f897274e57c3f70e0"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:386122eeaaa76951a8196310432c5b0ef3b53590ef4c317ec7588ec554fec5d2"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d2952396dc604544ea7476b33fe87faedc24d666fb0c2d5ac971a2b9576ab871"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:35834855408429cecf495cac67ccbab802de269e948e27478b1e47dfb6465e57"},
+ {file = "google_crc32c-1.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:d8797406499f28b5ef791f339594b0b5fdedf54e203b5066675c406ba69d705c"},
+ {file = "google_crc32c-1.6.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48abd62ca76a2cbe034542ed1b6aee851b6f28aaca4e6551b5599b6f3ef175cc"},
+ {file = "google_crc32c-1.6.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18e311c64008f1f1379158158bb3f0c8d72635b9eb4f9545f8cf990c5668e59d"},
+ {file = "google_crc32c-1.6.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05e2d8c9a2f853ff116db9706b4a27350587f341eda835f46db3c0a8c8ce2f24"},
+ {file = "google_crc32c-1.6.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:91ca8145b060679ec9176e6de4f89b07363d6805bd4760631ef254905503598d"},
+ {file = "google_crc32c-1.6.0.tar.gz", hash = "sha256:6eceb6ad197656a1ff49ebfbbfa870678c75be4344feb35ac1edf694309413dc"},
+]
+
+[package.extras]
+testing = ["pytest"]
+
+[[package]]
+name = "google-resumable-media"
+version = "2.7.2"
+description = "Utilities for Google Media Downloads and Resumable Uploads"
+optional = false
+python-versions = ">=3.7"
+files = [
+ {file = "google_resumable_media-2.7.2-py2.py3-none-any.whl", hash = "sha256:3ce7551e9fe6d99e9a126101d2536612bb73486721951e9562fee0f90c6ababa"},
+ {file = "google_resumable_media-2.7.2.tar.gz", hash = "sha256:5280aed4629f2b60b847b0d42f9857fd4935c11af266744df33d8074cae92fe0"},
+]
+
+[package.dependencies]
+google-crc32c = ">=1.0,<2.0dev"
+
+[package.extras]
+aiohttp = ["aiohttp (>=3.6.2,<4.0.0dev)", "google-auth (>=1.22.0,<2.0dev)"]
+requests = ["requests (>=2.18.0,<3.0.0dev)"]
+
[[package]]
name = "googleapis-common-protos"
-version = "1.65.0"
+version = "1.66.0"
description = "Common protobufs used in Google APIs"
optional = false
python-versions = ">=3.7"
files = [
- {file = "googleapis_common_protos-1.65.0-py2.py3-none-any.whl", hash = "sha256:2972e6c496f435b92590fd54045060867f3fe9be2c82ab148fc8885035479a63"},
- {file = "googleapis_common_protos-1.65.0.tar.gz", hash = "sha256:334a29d07cddc3aa01dee4988f9afd9b2916ee2ff49d6b757155dc0d197852c0"},
+ {file = "googleapis_common_protos-1.66.0-py2.py3-none-any.whl", hash = "sha256:d7abcd75fabb2e0ec9f74466401f6c119a0b498e27370e9be4c94cb7e382b8ed"},
+ {file = "googleapis_common_protos-1.66.0.tar.gz", hash = "sha256:c3e7b33d15fdca5374cc0a7346dd92ffa847425cc4ea941d970f13680052ec8c"},
]
[package.dependencies]
@@ -1120,13 +1241,13 @@ requests = ">=2.20.0,<3.0"
[[package]]
name = "gotrue"
-version = "2.10.0"
+version = "2.11.0"
description = "Python Client Library for Supabase Auth"
optional = false
python-versions = "<4.0,>=3.9"
files = [
- {file = "gotrue-2.10.0-py3-none-any.whl", hash = "sha256:768e58207488e5184ffbdc4351b7280d913daf97962f4e9f2cca05c80004b042"},
- {file = "gotrue-2.10.0.tar.gz", hash = "sha256:4edf4c251da3535f2b044e23deba221e848ca1210c17d0c7a9b19f79a1e3f3c0"},
+ {file = "gotrue-2.11.0-py3-none-any.whl", hash = "sha256:62177ffd567448b352121bc7e9244ff018d59bb746dad476b51658f856d59cf8"},
+ {file = "gotrue-2.11.0.tar.gz", hash = "sha256:a0a452748ef741337820c97b934327c25f796e7cd33c0bf4341346bcc5a837f5"},
]
[package.dependencies]
@@ -1256,85 +1377,85 @@ protobuf = ">=3.20.2,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4
[[package]]
name = "grpcio"
-version = "1.68.0"
+version = "1.68.1"
description = "HTTP/2-based RPC framework"
optional = false
python-versions = ">=3.8"
files = [
- {file = "grpcio-1.68.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:619b5d0f29f4f5351440e9343224c3e19912c21aeda44e0c49d0d147a8d01544"},
- {file = "grpcio-1.68.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:a59f5822f9459bed098ffbceb2713abbf7c6fd13f2b9243461da5c338d0cd6c3"},
- {file = "grpcio-1.68.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:c03d89df516128febc5a7e760d675b478ba25802447624edf7aa13b1e7b11e2a"},
- {file = "grpcio-1.68.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:44bcbebb24363d587472089b89e2ea0ab2e2b4df0e4856ba4c0b087c82412121"},
- {file = "grpcio-1.68.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:79f81b7fbfb136247b70465bd836fa1733043fdee539cd6031cb499e9608a110"},
- {file = "grpcio-1.68.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:88fb2925789cfe6daa20900260ef0a1d0a61283dfb2d2fffe6194396a354c618"},
- {file = "grpcio-1.68.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:99f06232b5c9138593ae6f2e355054318717d32a9c09cdc5a2885540835067a1"},
- {file = "grpcio-1.68.0-cp310-cp310-win32.whl", hash = "sha256:a6213d2f7a22c3c30a479fb5e249b6b7e648e17f364598ff64d08a5136fe488b"},
- {file = "grpcio-1.68.0-cp310-cp310-win_amd64.whl", hash = "sha256:15327ab81131ef9b94cb9f45b5bd98803a179c7c61205c8c0ac9aff9d6c4e82a"},
- {file = "grpcio-1.68.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:3b2b559beb2d433129441783e5f42e3be40a9e1a89ec906efabf26591c5cd415"},
- {file = "grpcio-1.68.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e46541de8425a4d6829ac6c5d9b16c03c292105fe9ebf78cb1c31e8d242f9155"},
- {file = "grpcio-1.68.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:c1245651f3c9ea92a2db4f95d37b7597db6b246d5892bca6ee8c0e90d76fb73c"},
- {file = "grpcio-1.68.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f1931c7aa85be0fa6cea6af388e576f3bf6baee9e5d481c586980c774debcb4"},
- {file = "grpcio-1.68.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b0ff09c81e3aded7a183bc6473639b46b6caa9c1901d6f5e2cba24b95e59e30"},
- {file = "grpcio-1.68.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8c73f9fbbaee1a132487e31585aa83987ddf626426d703ebcb9a528cf231c9b1"},
- {file = "grpcio-1.68.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6b2f98165ea2790ea159393a2246b56f580d24d7da0d0342c18a085299c40a75"},
- {file = "grpcio-1.68.0-cp311-cp311-win32.whl", hash = "sha256:e1e7ed311afb351ff0d0e583a66fcb39675be112d61e7cfd6c8269884a98afbc"},
- {file = "grpcio-1.68.0-cp311-cp311-win_amd64.whl", hash = "sha256:e0d2f68eaa0a755edd9a47d40e50dba6df2bceda66960dee1218da81a2834d27"},
- {file = "grpcio-1.68.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:8af6137cc4ae8e421690d276e7627cfc726d4293f6607acf9ea7260bd8fc3d7d"},
- {file = "grpcio-1.68.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:4028b8e9a3bff6f377698587d642e24bd221810c06579a18420a17688e421af7"},
- {file = "grpcio-1.68.0-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:f60fa2adf281fd73ae3a50677572521edca34ba373a45b457b5ebe87c2d01e1d"},
- {file = "grpcio-1.68.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e18589e747c1e70b60fab6767ff99b2d0c359ea1db8a2cb524477f93cdbedf5b"},
- {file = "grpcio-1.68.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0d30f3fee9372796f54d3100b31ee70972eaadcc87314be369360248a3dcffe"},
- {file = "grpcio-1.68.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7e0a3e72c0e9a1acab77bef14a73a416630b7fd2cbd893c0a873edc47c42c8cd"},
- {file = "grpcio-1.68.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a831dcc343440969aaa812004685ed322cdb526cd197112d0db303b0da1e8659"},
- {file = "grpcio-1.68.0-cp312-cp312-win32.whl", hash = "sha256:5a180328e92b9a0050958ced34dddcb86fec5a8b332f5a229e353dafc16cd332"},
- {file = "grpcio-1.68.0-cp312-cp312-win_amd64.whl", hash = "sha256:2bddd04a790b69f7a7385f6a112f46ea0b34c4746f361ebafe9ca0be567c78e9"},
- {file = "grpcio-1.68.0-cp313-cp313-linux_armv7l.whl", hash = "sha256:fc05759ffbd7875e0ff2bd877be1438dfe97c9312bbc558c8284a9afa1d0f40e"},
- {file = "grpcio-1.68.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:15fa1fe25d365a13bc6d52fcac0e3ee1f9baebdde2c9b3b2425f8a4979fccea1"},
- {file = "grpcio-1.68.0-cp313-cp313-manylinux_2_17_aarch64.whl", hash = "sha256:32a9cb4686eb2e89d97022ecb9e1606d132f85c444354c17a7dbde4a455e4a3b"},
- {file = "grpcio-1.68.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dba037ff8d284c8e7ea9a510c8ae0f5b016004f13c3648f72411c464b67ff2fb"},
- {file = "grpcio-1.68.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0efbbd849867e0e569af09e165363ade75cf84f5229b2698d53cf22c7a4f9e21"},
- {file = "grpcio-1.68.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:4e300e6978df0b65cc2d100c54e097c10dfc7018b9bd890bbbf08022d47f766d"},
- {file = "grpcio-1.68.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:6f9c7ad1a23e1047f827385f4713b5b8c6c7d325705be1dd3e31fb00dcb2f665"},
- {file = "grpcio-1.68.0-cp313-cp313-win32.whl", hash = "sha256:3ac7f10850fd0487fcce169c3c55509101c3bde2a3b454869639df2176b60a03"},
- {file = "grpcio-1.68.0-cp313-cp313-win_amd64.whl", hash = "sha256:afbf45a62ba85a720491bfe9b2642f8761ff348006f5ef67e4622621f116b04a"},
- {file = "grpcio-1.68.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:f8f695d9576ce836eab27ba7401c60acaf9ef6cf2f70dfe5462055ba3df02cc3"},
- {file = "grpcio-1.68.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:9fe1b141cda52f2ca73e17d2d3c6a9f3f3a0c255c216b50ce616e9dca7e3441d"},
- {file = "grpcio-1.68.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:4df81d78fd1646bf94ced4fb4cd0a7fe2e91608089c522ef17bc7db26e64effd"},
- {file = "grpcio-1.68.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:46a2d74d4dd8993151c6cd585594c082abe74112c8e4175ddda4106f2ceb022f"},
- {file = "grpcio-1.68.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a17278d977746472698460c63abf333e1d806bd41f2224f90dbe9460101c9796"},
- {file = "grpcio-1.68.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:15377bce516b1c861c35e18eaa1c280692bf563264836cece693c0f169b48829"},
- {file = "grpcio-1.68.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cc5f0a4f5904b8c25729a0498886b797feb817d1fd3812554ffa39551112c161"},
- {file = "grpcio-1.68.0-cp38-cp38-win32.whl", hash = "sha256:def1a60a111d24376e4b753db39705adbe9483ef4ca4761f825639d884d5da78"},
- {file = "grpcio-1.68.0-cp38-cp38-win_amd64.whl", hash = "sha256:55d3b52fd41ec5772a953612db4e70ae741a6d6ed640c4c89a64f017a1ac02b5"},
- {file = "grpcio-1.68.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:0d230852ba97654453d290e98d6aa61cb48fa5fafb474fb4c4298d8721809354"},
- {file = "grpcio-1.68.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:50992f214264e207e07222703c17d9cfdcc2c46ed5a1ea86843d440148ebbe10"},
- {file = "grpcio-1.68.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:14331e5c27ed3545360464a139ed279aa09db088f6e9502e95ad4bfa852bb116"},
- {file = "grpcio-1.68.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f84890b205692ea813653ece4ac9afa2139eae136e419231b0eec7c39fdbe4c2"},
- {file = "grpcio-1.68.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b0cf343c6f4f6aa44863e13ec9ddfe299e0be68f87d68e777328bff785897b05"},
- {file = "grpcio-1.68.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:fd2c2d47969daa0e27eadaf15c13b5e92605c5e5953d23c06d0b5239a2f176d3"},
- {file = "grpcio-1.68.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:18668e36e7f4045820f069997834e94e8275910b1f03e078a6020bd464cb2363"},
- {file = "grpcio-1.68.0-cp39-cp39-win32.whl", hash = "sha256:2af76ab7c427aaa26aa9187c3e3c42f38d3771f91a20f99657d992afada2294a"},
- {file = "grpcio-1.68.0-cp39-cp39-win_amd64.whl", hash = "sha256:e694b5928b7b33ca2d3b4d5f9bf8b5888906f181daff6b406f4938f3a997a490"},
- {file = "grpcio-1.68.0.tar.gz", hash = "sha256:7e7483d39b4a4fddb9906671e9ea21aaad4f031cdfc349fec76bdfa1e404543a"},
+ {file = "grpcio-1.68.1-cp310-cp310-linux_armv7l.whl", hash = "sha256:d35740e3f45f60f3c37b1e6f2f4702c23867b9ce21c6410254c9c682237da68d"},
+ {file = "grpcio-1.68.1-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:d99abcd61760ebb34bdff37e5a3ba333c5cc09feda8c1ad42547bea0416ada78"},
+ {file = "grpcio-1.68.1-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:f8261fa2a5f679abeb2a0a93ad056d765cdca1c47745eda3f2d87f874ff4b8c9"},
+ {file = "grpcio-1.68.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0feb02205a27caca128627bd1df4ee7212db051019a9afa76f4bb6a1a80ca95e"},
+ {file = "grpcio-1.68.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:919d7f18f63bcad3a0f81146188e90274fde800a94e35d42ffe9eadf6a9a6330"},
+ {file = "grpcio-1.68.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:963cc8d7d79b12c56008aabd8b457f400952dbea8997dd185f155e2f228db079"},
+ {file = "grpcio-1.68.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ccf2ebd2de2d6661e2520dae293298a3803a98ebfc099275f113ce1f6c2a80f1"},
+ {file = "grpcio-1.68.1-cp310-cp310-win32.whl", hash = "sha256:2cc1fd04af8399971bcd4f43bd98c22d01029ea2e56e69c34daf2bf8470e47f5"},
+ {file = "grpcio-1.68.1-cp310-cp310-win_amd64.whl", hash = "sha256:ee2e743e51cb964b4975de572aa8fb95b633f496f9fcb5e257893df3be854746"},
+ {file = "grpcio-1.68.1-cp311-cp311-linux_armv7l.whl", hash = "sha256:55857c71641064f01ff0541a1776bfe04a59db5558e82897d35a7793e525774c"},
+ {file = "grpcio-1.68.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4b177f5547f1b995826ef529d2eef89cca2f830dd8b2c99ffd5fde4da734ba73"},
+ {file = "grpcio-1.68.1-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:3522c77d7e6606d6665ec8d50e867f13f946a4e00c7df46768f1c85089eae515"},
+ {file = "grpcio-1.68.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9d1fae6bbf0816415b81db1e82fb3bf56f7857273c84dcbe68cbe046e58e1ccd"},
+ {file = "grpcio-1.68.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:298ee7f80e26f9483f0b6f94cc0a046caf54400a11b644713bb5b3d8eb387600"},
+ {file = "grpcio-1.68.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cbb5780e2e740b6b4f2d208e90453591036ff80c02cc605fea1af8e6fc6b1bbe"},
+ {file = "grpcio-1.68.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ddda1aa22495d8acd9dfbafff2866438d12faec4d024ebc2e656784d96328ad0"},
+ {file = "grpcio-1.68.1-cp311-cp311-win32.whl", hash = "sha256:b33bd114fa5a83f03ec6b7b262ef9f5cac549d4126f1dc702078767b10c46ed9"},
+ {file = "grpcio-1.68.1-cp311-cp311-win_amd64.whl", hash = "sha256:7f20ebec257af55694d8f993e162ddf0d36bd82d4e57f74b31c67b3c6d63d8b2"},
+ {file = "grpcio-1.68.1-cp312-cp312-linux_armv7l.whl", hash = "sha256:8829924fffb25386995a31998ccbbeaa7367223e647e0122043dfc485a87c666"},
+ {file = "grpcio-1.68.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:3aed6544e4d523cd6b3119b0916cef3d15ef2da51e088211e4d1eb91a6c7f4f1"},
+ {file = "grpcio-1.68.1-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:4efac5481c696d5cb124ff1c119a78bddbfdd13fc499e3bc0ca81e95fc573684"},
+ {file = "grpcio-1.68.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ab2d912ca39c51f46baf2a0d92aa265aa96b2443266fc50d234fa88bf877d8e"},
+ {file = "grpcio-1.68.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95c87ce2a97434dffe7327a4071839ab8e8bffd0054cc74cbe971fba98aedd60"},
+ {file = "grpcio-1.68.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e4842e4872ae4ae0f5497bf60a0498fa778c192cc7a9e87877abd2814aca9475"},
+ {file = "grpcio-1.68.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:255b1635b0ed81e9f91da4fcc8d43b7ea5520090b9a9ad9340d147066d1d3613"},
+ {file = "grpcio-1.68.1-cp312-cp312-win32.whl", hash = "sha256:7dfc914cc31c906297b30463dde0b9be48e36939575eaf2a0a22a8096e69afe5"},
+ {file = "grpcio-1.68.1-cp312-cp312-win_amd64.whl", hash = "sha256:a0c8ddabef9c8f41617f213e527254c41e8b96ea9d387c632af878d05db9229c"},
+ {file = "grpcio-1.68.1-cp313-cp313-linux_armv7l.whl", hash = "sha256:a47faedc9ea2e7a3b6569795c040aae5895a19dde0c728a48d3c5d7995fda385"},
+ {file = "grpcio-1.68.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:390eee4225a661c5cd133c09f5da1ee3c84498dc265fd292a6912b65c421c78c"},
+ {file = "grpcio-1.68.1-cp313-cp313-manylinux_2_17_aarch64.whl", hash = "sha256:66a24f3d45c33550703f0abb8b656515b0ab777970fa275693a2f6dc8e35f1c1"},
+ {file = "grpcio-1.68.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c08079b4934b0bf0a8847f42c197b1d12cba6495a3d43febd7e99ecd1cdc8d54"},
+ {file = "grpcio-1.68.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8720c25cd9ac25dd04ee02b69256d0ce35bf8a0f29e20577427355272230965a"},
+ {file = "grpcio-1.68.1-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:04cfd68bf4f38f5bb959ee2361a7546916bd9a50f78617a346b3aeb2b42e2161"},
+ {file = "grpcio-1.68.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:c28848761a6520c5c6071d2904a18d339a796ebe6b800adc8b3f474c5ce3c3ad"},
+ {file = "grpcio-1.68.1-cp313-cp313-win32.whl", hash = "sha256:77d65165fc35cff6e954e7fd4229e05ec76102d4406d4576528d3a3635fc6172"},
+ {file = "grpcio-1.68.1-cp313-cp313-win_amd64.whl", hash = "sha256:a8040f85dcb9830d8bbb033ae66d272614cec6faceee88d37a88a9bd1a7a704e"},
+ {file = "grpcio-1.68.1-cp38-cp38-linux_armv7l.whl", hash = "sha256:eeb38ff04ab6e5756a2aef6ad8d94e89bb4a51ef96e20f45c44ba190fa0bcaad"},
+ {file = "grpcio-1.68.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a3869a6661ec8f81d93f4597da50336718bde9eb13267a699ac7e0a1d6d0bea"},
+ {file = "grpcio-1.68.1-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:2c4cec6177bf325eb6faa6bd834d2ff6aa8bb3b29012cceb4937b86f8b74323c"},
+ {file = "grpcio-1.68.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:12941d533f3cd45d46f202e3667be8ebf6bcb3573629c7ec12c3e211d99cfccf"},
+ {file = "grpcio-1.68.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80af6f1e69c5e68a2be529990684abdd31ed6622e988bf18850075c81bb1ad6e"},
+ {file = "grpcio-1.68.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:e8dbe3e00771bfe3d04feed8210fc6617006d06d9a2679b74605b9fed3e8362c"},
+ {file = "grpcio-1.68.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:83bbf5807dc3ee94ce1de2dfe8a356e1d74101e4b9d7aa8c720cc4818a34aded"},
+ {file = "grpcio-1.68.1-cp38-cp38-win32.whl", hash = "sha256:8cb620037a2fd9eeee97b4531880e439ebfcd6d7d78f2e7dcc3726428ab5ef63"},
+ {file = "grpcio-1.68.1-cp38-cp38-win_amd64.whl", hash = "sha256:52fbf85aa71263380d330f4fce9f013c0798242e31ede05fcee7fbe40ccfc20d"},
+ {file = "grpcio-1.68.1-cp39-cp39-linux_armv7l.whl", hash = "sha256:cb400138e73969eb5e0535d1d06cae6a6f7a15f2cc74add320e2130b8179211a"},
+ {file = "grpcio-1.68.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a1b988b40f2fd9de5c820f3a701a43339d8dcf2cb2f1ca137e2c02671cc83ac1"},
+ {file = "grpcio-1.68.1-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:96f473cdacfdd506008a5d7579c9f6a7ff245a9ade92c3c0265eb76cc591914f"},
+ {file = "grpcio-1.68.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:37ea3be171f3cf3e7b7e412a98b77685eba9d4fd67421f4a34686a63a65d99f9"},
+ {file = "grpcio-1.68.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ceb56c4285754e33bb3c2fa777d055e96e6932351a3082ce3559be47f8024f0"},
+ {file = "grpcio-1.68.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:dffd29a2961f3263a16d73945b57cd44a8fd0b235740cb14056f0612329b345e"},
+ {file = "grpcio-1.68.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:025f790c056815b3bf53da850dd70ebb849fd755a4b1ac822cb65cd631e37d43"},
+ {file = "grpcio-1.68.1-cp39-cp39-win32.whl", hash = "sha256:1098f03dedc3b9810810568060dea4ac0822b4062f537b0f53aa015269be0a76"},
+ {file = "grpcio-1.68.1-cp39-cp39-win_amd64.whl", hash = "sha256:334ab917792904245a028f10e803fcd5b6f36a7b2173a820c0b5b076555825e1"},
+ {file = "grpcio-1.68.1.tar.gz", hash = "sha256:44a8502dd5de653ae6a73e2de50a401d84184f0331d0ac3daeb044e66d5c5054"},
]
[package.extras]
-protobuf = ["grpcio-tools (>=1.68.0)"]
+protobuf = ["grpcio-tools (>=1.68.1)"]
[[package]]
name = "grpcio-status"
-version = "1.68.0"
+version = "1.68.1"
description = "Status proto mapping for gRPC"
optional = false
python-versions = ">=3.8"
files = [
- {file = "grpcio_status-1.68.0-py3-none-any.whl", hash = "sha256:0a71b15d989f02df803b4ba85c5bf1f43aeaa58ac021e5f9974b8cadc41f784d"},
- {file = "grpcio_status-1.68.0.tar.gz", hash = "sha256:8369823de22ab6a2cddb3804669c149ae7a71819e127c2dca7c2322028d52bea"},
+ {file = "grpcio_status-1.68.1-py3-none-any.whl", hash = "sha256:66f3d8847f665acfd56221333d66f7ad8927903d87242a482996bdb45e8d28fd"},
+ {file = "grpcio_status-1.68.1.tar.gz", hash = "sha256:e1378d036c81a1610d7b4c7a146cd663dd13fcc915cf4d7d053929dba5bbb6e1"},
]
[package.dependencies]
googleapis-common-protos = ">=1.5.5"
-grpcio = ">=1.68.0"
+grpcio = ">=1.68.1"
protobuf = ">=5.26.1,<6.0dev"
[[package]]
@@ -1376,13 +1497,13 @@ files = [
[[package]]
name = "httpcore"
-version = "1.0.5"
+version = "1.0.7"
description = "A minimal low-level HTTP client."
optional = false
python-versions = ">=3.8"
files = [
- {file = "httpcore-1.0.5-py3-none-any.whl", hash = "sha256:421f18bac248b25d310f3cacd198d55b8e6125c107797b609ff9b7a6ba7991b5"},
- {file = "httpcore-1.0.5.tar.gz", hash = "sha256:34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61"},
+ {file = "httpcore-1.0.7-py3-none-any.whl", hash = "sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd"},
+ {file = "httpcore-1.0.7.tar.gz", hash = "sha256:8551cb62a169ec7162ac7be8d4817d561f60e08eaa485234898414bb5a8a0b4c"},
]
[package.dependencies]
@@ -1393,7 +1514,7 @@ h11 = ">=0.13,<0.15"
asyncio = ["anyio (>=4.0,<5.0)"]
http2 = ["h2 (>=3,<5)"]
socks = ["socksio (==1.*)"]
-trio = ["trio (>=0.22.0,<0.26.0)"]
+trio = ["trio (>=0.22.0,<1.0)"]
[[package]]
name = "httplib2"
@@ -1582,72 +1703,87 @@ i18n = ["Babel (>=2.7)"]
[[package]]
name = "jiter"
-version = "0.5.0"
+version = "0.8.2"
description = "Fast iterable JSON parser."
optional = false
python-versions = ">=3.8"
files = [
- {file = "jiter-0.5.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b599f4e89b3def9a94091e6ee52e1d7ad7bc33e238ebb9c4c63f211d74822c3f"},
- {file = "jiter-0.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2a063f71c4b06225543dddadbe09d203dc0c95ba352d8b85f1221173480a71d5"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:acc0d5b8b3dd12e91dd184b87273f864b363dfabc90ef29a1092d269f18c7e28"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c22541f0b672f4d741382a97c65609332a783501551445ab2df137ada01e019e"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:63314832e302cc10d8dfbda0333a384bf4bcfce80d65fe99b0f3c0da8945a91a"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a25fbd8a5a58061e433d6fae6d5298777c0814a8bcefa1e5ecfff20c594bd749"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:503b2c27d87dfff5ab717a8200fbbcf4714516c9d85558048b1fc14d2de7d8dc"},
- {file = "jiter-0.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6d1f3d27cce923713933a844872d213d244e09b53ec99b7a7fdf73d543529d6d"},
- {file = "jiter-0.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c95980207b3998f2c3b3098f357994d3fd7661121f30669ca7cb945f09510a87"},
- {file = "jiter-0.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:afa66939d834b0ce063f57d9895e8036ffc41c4bd90e4a99631e5f261d9b518e"},
- {file = "jiter-0.5.0-cp310-none-win32.whl", hash = "sha256:f16ca8f10e62f25fd81d5310e852df6649af17824146ca74647a018424ddeccf"},
- {file = "jiter-0.5.0-cp310-none-win_amd64.whl", hash = "sha256:b2950e4798e82dd9176935ef6a55cf6a448b5c71515a556da3f6b811a7844f1e"},
- {file = "jiter-0.5.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d4c8e1ed0ef31ad29cae5ea16b9e41529eb50a7fba70600008e9f8de6376d553"},
- {file = "jiter-0.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c6f16e21276074a12d8421692515b3fd6d2ea9c94fd0734c39a12960a20e85f3"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5280e68e7740c8c128d3ae5ab63335ce6d1fb6603d3b809637b11713487af9e6"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:583c57fc30cc1fec360e66323aadd7fc3edeec01289bfafc35d3b9dcb29495e4"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:26351cc14507bdf466b5f99aba3df3143a59da75799bf64a53a3ad3155ecded9"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4829df14d656b3fb87e50ae8b48253a8851c707da9f30d45aacab2aa2ba2d614"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a42a4bdcf7307b86cb863b2fb9bb55029b422d8f86276a50487982d99eed7c6e"},
- {file = "jiter-0.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04d461ad0aebf696f8da13c99bc1b3e06f66ecf6cfd56254cc402f6385231c06"},
- {file = "jiter-0.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e6375923c5f19888c9226582a124b77b622f8fd0018b843c45eeb19d9701c403"},
- {file = "jiter-0.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2cec323a853c24fd0472517113768c92ae0be8f8c384ef4441d3632da8baa646"},
- {file = "jiter-0.5.0-cp311-none-win32.whl", hash = "sha256:aa1db0967130b5cab63dfe4d6ff547c88b2a394c3410db64744d491df7f069bb"},
- {file = "jiter-0.5.0-cp311-none-win_amd64.whl", hash = "sha256:aa9d2b85b2ed7dc7697597dcfaac66e63c1b3028652f751c81c65a9f220899ae"},
- {file = "jiter-0.5.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9f664e7351604f91dcdd557603c57fc0d551bc65cc0a732fdacbf73ad335049a"},
- {file = "jiter-0.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:044f2f1148b5248ad2c8c3afb43430dccf676c5a5834d2f5089a4e6c5bbd64df"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:702e3520384c88b6e270c55c772d4bd6d7b150608dcc94dea87ceba1b6391248"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:528d742dcde73fad9d63e8242c036ab4a84389a56e04efd854062b660f559544"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8cf80e5fe6ab582c82f0c3331df27a7e1565e2dcf06265afd5173d809cdbf9ba"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:44dfc9ddfb9b51a5626568ef4e55ada462b7328996294fe4d36de02fce42721f"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c451f7922992751a936b96c5f5b9bb9312243d9b754c34b33d0cb72c84669f4e"},
- {file = "jiter-0.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:308fce789a2f093dca1ff91ac391f11a9f99c35369117ad5a5c6c4903e1b3e3a"},
- {file = "jiter-0.5.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7f5ad4a7c6b0d90776fdefa294f662e8a86871e601309643de30bf94bb93a64e"},
- {file = "jiter-0.5.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ea189db75f8eca08807d02ae27929e890c7d47599ce3d0a6a5d41f2419ecf338"},
- {file = "jiter-0.5.0-cp312-none-win32.whl", hash = "sha256:e3bbe3910c724b877846186c25fe3c802e105a2c1fc2b57d6688b9f8772026e4"},
- {file = "jiter-0.5.0-cp312-none-win_amd64.whl", hash = "sha256:a586832f70c3f1481732919215f36d41c59ca080fa27a65cf23d9490e75b2ef5"},
- {file = "jiter-0.5.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:f04bc2fc50dc77be9d10f73fcc4e39346402ffe21726ff41028f36e179b587e6"},
- {file = "jiter-0.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6f433a4169ad22fcb550b11179bb2b4fd405de9b982601914ef448390b2954f3"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad4a6398c85d3a20067e6c69890ca01f68659da94d74c800298581724e426c7e"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6baa88334e7af3f4d7a5c66c3a63808e5efbc3698a1c57626541ddd22f8e4fbf"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ece0a115c05efca597c6d938f88c9357c843f8c245dbbb53361a1c01afd7148"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:335942557162ad372cc367ffaf93217117401bf930483b4b3ebdb1223dbddfa7"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:649b0ee97a6e6da174bffcb3c8c051a5935d7d4f2f52ea1583b5b3e7822fbf14"},
- {file = "jiter-0.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f4be354c5de82157886ca7f5925dbda369b77344b4b4adf2723079715f823989"},
- {file = "jiter-0.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5206144578831a6de278a38896864ded4ed96af66e1e63ec5dd7f4a1fce38a3a"},
- {file = "jiter-0.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8120c60f8121ac3d6f072b97ef0e71770cc72b3c23084c72c4189428b1b1d3b6"},
- {file = "jiter-0.5.0-cp38-none-win32.whl", hash = "sha256:6f1223f88b6d76b519cb033a4d3687ca157c272ec5d6015c322fc5b3074d8a5e"},
- {file = "jiter-0.5.0-cp38-none-win_amd64.whl", hash = "sha256:c59614b225d9f434ea8fc0d0bec51ef5fa8c83679afedc0433905994fb36d631"},
- {file = "jiter-0.5.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:0af3838cfb7e6afee3f00dc66fa24695199e20ba87df26e942820345b0afc566"},
- {file = "jiter-0.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:550b11d669600dbc342364fd4adbe987f14d0bbedaf06feb1b983383dcc4b961"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:489875bf1a0ffb3cb38a727b01e6673f0f2e395b2aad3c9387f94187cb214bbf"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b250ca2594f5599ca82ba7e68785a669b352156260c5362ea1b4e04a0f3e2389"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8ea18e01f785c6667ca15407cd6dabbe029d77474d53595a189bdc813347218e"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:462a52be85b53cd9bffd94e2d788a09984274fe6cebb893d6287e1c296d50653"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92cc68b48d50fa472c79c93965e19bd48f40f207cb557a8346daa020d6ba973b"},
- {file = "jiter-0.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1c834133e59a8521bc87ebcad773608c6fa6ab5c7a022df24a45030826cf10bc"},
- {file = "jiter-0.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab3a71ff31cf2d45cb216dc37af522d335211f3a972d2fe14ea99073de6cb104"},
- {file = "jiter-0.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cccd3af9c48ac500c95e1bcbc498020c87e1781ff0345dd371462d67b76643eb"},
- {file = "jiter-0.5.0-cp39-none-win32.whl", hash = "sha256:368084d8d5c4fc40ff7c3cc513c4f73e02c85f6009217922d0823a48ee7adf61"},
- {file = "jiter-0.5.0-cp39-none-win_amd64.whl", hash = "sha256:ce03f7b4129eb72f1687fa11300fbf677b02990618428934662406d2a76742a1"},
- {file = "jiter-0.5.0.tar.gz", hash = "sha256:1d916ba875bcab5c5f7d927df998c4cb694d27dceddf3392e58beaf10563368a"},
+ {file = "jiter-0.8.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ca8577f6a413abe29b079bc30f907894d7eb07a865c4df69475e868d73e71c7b"},
+ {file = "jiter-0.8.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b25bd626bde7fb51534190c7e3cb97cee89ee76b76d7585580e22f34f5e3f393"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5c826a221851a8dc028eb6d7d6429ba03184fa3c7e83ae01cd6d3bd1d4bd17d"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d35c864c2dff13dfd79fb070fc4fc6235d7b9b359efe340e1261deb21b9fcb66"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f557c55bc2b7676e74d39d19bcb8775ca295c7a028246175d6a8b431e70835e5"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:580ccf358539153db147e40751a0b41688a5ceb275e6f3e93d91c9467f42b2e3"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af102d3372e917cffce49b521e4c32c497515119dc7bd8a75665e90a718bbf08"},
+ {file = "jiter-0.8.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cadcc978f82397d515bb2683fc0d50103acff2a180552654bb92d6045dec2c49"},
+ {file = "jiter-0.8.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:ba5bdf56969cad2019d4e8ffd3f879b5fdc792624129741d3d83fc832fef8c7d"},
+ {file = "jiter-0.8.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3b94a33a241bee9e34b8481cdcaa3d5c2116f575e0226e421bed3f7a6ea71cff"},
+ {file = "jiter-0.8.2-cp310-cp310-win32.whl", hash = "sha256:6e5337bf454abddd91bd048ce0dca5134056fc99ca0205258766db35d0a2ea43"},
+ {file = "jiter-0.8.2-cp310-cp310-win_amd64.whl", hash = "sha256:4a9220497ca0cb1fe94e3f334f65b9b5102a0b8147646118f020d8ce1de70105"},
+ {file = "jiter-0.8.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:2dd61c5afc88a4fda7d8b2cf03ae5947c6ac7516d32b7a15bf4b49569a5c076b"},
+ {file = "jiter-0.8.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a6c710d657c8d1d2adbbb5c0b0c6bfcec28fd35bd6b5f016395f9ac43e878a15"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9584de0cd306072635fe4b89742bf26feae858a0683b399ad0c2509011b9dc0"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5a90a923338531b7970abb063cfc087eebae6ef8ec8139762007188f6bc69a9f"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d21974d246ed0181558087cd9f76e84e8321091ebfb3a93d4c341479a736f099"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:32475a42b2ea7b344069dc1e81445cfc00b9d0e3ca837f0523072432332e9f74"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b9931fd36ee513c26b5bf08c940b0ac875de175341cbdd4fa3be109f0492586"},
+ {file = "jiter-0.8.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ce0820f4a3a59ddced7fce696d86a096d5cc48d32a4183483a17671a61edfddc"},
+ {file = "jiter-0.8.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8ffc86ae5e3e6a93765d49d1ab47b6075a9c978a2b3b80f0f32628f39caa0c88"},
+ {file = "jiter-0.8.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5127dc1abd809431172bc3fbe8168d6b90556a30bb10acd5ded41c3cfd6f43b6"},
+ {file = "jiter-0.8.2-cp311-cp311-win32.whl", hash = "sha256:66227a2c7b575720c1871c8800d3a0122bb8ee94edb43a5685aa9aceb2782d44"},
+ {file = "jiter-0.8.2-cp311-cp311-win_amd64.whl", hash = "sha256:cde031d8413842a1e7501e9129b8e676e62a657f8ec8166e18a70d94d4682855"},
+ {file = "jiter-0.8.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:e6ec2be506e7d6f9527dae9ff4b7f54e68ea44a0ef6b098256ddf895218a2f8f"},
+ {file = "jiter-0.8.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:76e324da7b5da060287c54f2fabd3db5f76468006c811831f051942bf68c9d44"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:180a8aea058f7535d1c84183c0362c710f4750bef66630c05f40c93c2b152a0f"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:025337859077b41548bdcbabe38698bcd93cfe10b06ff66617a48ff92c9aec60"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecff0dc14f409599bbcafa7e470c00b80f17abc14d1405d38ab02e4b42e55b57"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffd9fee7d0775ebaba131f7ca2e2d83839a62ad65e8e02fe2bd8fc975cedeb9e"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14601dcac4889e0a1c75ccf6a0e4baf70dbc75041e51bcf8d0e9274519df6887"},
+ {file = "jiter-0.8.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:92249669925bc1c54fcd2ec73f70f2c1d6a817928480ee1c65af5f6b81cdf12d"},
+ {file = "jiter-0.8.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e725edd0929fa79f8349ab4ec7f81c714df51dc4e991539a578e5018fa4a7152"},
+ {file = "jiter-0.8.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bf55846c7b7a680eebaf9c3c48d630e1bf51bdf76c68a5f654b8524335b0ad29"},
+ {file = "jiter-0.8.2-cp312-cp312-win32.whl", hash = "sha256:7efe4853ecd3d6110301665a5178b9856be7e2a9485f49d91aa4d737ad2ae49e"},
+ {file = "jiter-0.8.2-cp312-cp312-win_amd64.whl", hash = "sha256:83c0efd80b29695058d0fd2fa8a556490dbce9804eac3e281f373bbc99045f6c"},
+ {file = "jiter-0.8.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:ca1f08b8e43dc3bd0594c992fb1fd2f7ce87f7bf0d44358198d6da8034afdf84"},
+ {file = "jiter-0.8.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5672a86d55416ccd214c778efccf3266b84f87b89063b582167d803246354be4"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58dc9bc9767a1101f4e5e22db1b652161a225874d66f0e5cb8e2c7d1c438b587"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:37b2998606d6dadbb5ccda959a33d6a5e853252d921fec1792fc902351bb4e2c"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4ab9a87f3784eb0e098f84a32670cfe4a79cb6512fd8f42ae3d0709f06405d18"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:79aec8172b9e3c6d05fd4b219d5de1ac616bd8da934107325a6c0d0e866a21b6"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:711e408732d4e9a0208008e5892c2966b485c783cd2d9a681f3eb147cf36c7ef"},
+ {file = "jiter-0.8.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:653cf462db4e8c41995e33d865965e79641ef45369d8a11f54cd30888b7e6ff1"},
+ {file = "jiter-0.8.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:9c63eaef32b7bebac8ebebf4dabebdbc6769a09c127294db6babee38e9f405b9"},
+ {file = "jiter-0.8.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:eb21aaa9a200d0a80dacc7a81038d2e476ffe473ffdd9c91eb745d623561de05"},
+ {file = "jiter-0.8.2-cp313-cp313-win32.whl", hash = "sha256:789361ed945d8d42850f919342a8665d2dc79e7e44ca1c97cc786966a21f627a"},
+ {file = "jiter-0.8.2-cp313-cp313-win_amd64.whl", hash = "sha256:ab7f43235d71e03b941c1630f4b6e3055d46b6cb8728a17663eaac9d8e83a865"},
+ {file = "jiter-0.8.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b426f72cd77da3fec300ed3bc990895e2dd6b49e3bfe6c438592a3ba660e41ca"},
+ {file = "jiter-0.8.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2dd880785088ff2ad21ffee205e58a8c1ddabc63612444ae41e5e4b321b39c0"},
+ {file = "jiter-0.8.2-cp313-cp313t-win_amd64.whl", hash = "sha256:3ac9f578c46f22405ff7f8b1f5848fb753cc4b8377fbec8470a7dc3997ca7566"},
+ {file = "jiter-0.8.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:9e1fa156ee9454642adb7e7234a383884452532bc9d53d5af2d18d98ada1d79c"},
+ {file = "jiter-0.8.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0cf5dfa9956d96ff2efb0f8e9c7d055904012c952539a774305aaaf3abdf3d6c"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e52bf98c7e727dd44f7c4acb980cb988448faeafed8433c867888268899b298b"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a2ecaa3c23e7a7cf86d00eda3390c232f4d533cd9ddea4b04f5d0644faf642c5"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:08d4c92bf480e19fc3f2717c9ce2aa31dceaa9163839a311424b6862252c943e"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:99d9a1eded738299ba8e106c6779ce5c3893cffa0e32e4485d680588adae6db8"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d20be8b7f606df096e08b0b1b4a3c6f0515e8dac296881fe7461dfa0fb5ec817"},
+ {file = "jiter-0.8.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d33f94615fcaf872f7fd8cd98ac3b429e435c77619777e8a449d9d27e01134d1"},
+ {file = "jiter-0.8.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:317b25e98a35ffec5c67efe56a4e9970852632c810d35b34ecdd70cc0e47b3b6"},
+ {file = "jiter-0.8.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fc9043259ee430ecd71d178fccabd8c332a3bf1e81e50cae43cc2b28d19e4cb7"},
+ {file = "jiter-0.8.2-cp38-cp38-win32.whl", hash = "sha256:fc5adda618205bd4678b146612ce44c3cbfdee9697951f2c0ffdef1f26d72b63"},
+ {file = "jiter-0.8.2-cp38-cp38-win_amd64.whl", hash = "sha256:cd646c827b4f85ef4a78e4e58f4f5854fae0caf3db91b59f0d73731448a970c6"},
+ {file = "jiter-0.8.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:e41e75344acef3fc59ba4765df29f107f309ca9e8eace5baacabd9217e52a5ee"},
+ {file = "jiter-0.8.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7f22b16b35d5c1df9dfd58843ab2cd25e6bf15191f5a236bed177afade507bfc"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7200b8f7619d36aa51c803fd52020a2dfbea36ffec1b5e22cab11fd34d95a6d"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:70bf4c43652cc294040dbb62256c83c8718370c8b93dd93d934b9a7bf6c4f53c"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f9d471356dc16f84ed48768b8ee79f29514295c7295cb41e1133ec0b2b8d637d"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:859e8eb3507894093d01929e12e267f83b1d5f6221099d3ec976f0c995cb6bd9"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaa58399c01db555346647a907b4ef6d4f584b123943be6ed5588c3f2359c9f4"},
+ {file = "jiter-0.8.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8f2d5ed877f089862f4c7aacf3a542627c1496f972a34d0474ce85ee7d939c27"},
+ {file = "jiter-0.8.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:03c9df035d4f8d647f8c210ddc2ae0728387275340668fb30d2421e17d9a0841"},
+ {file = "jiter-0.8.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8bd2a824d08d8977bb2794ea2682f898ad3d8837932e3a74937e93d62ecbb637"},
+ {file = "jiter-0.8.2-cp39-cp39-win32.whl", hash = "sha256:ca29b6371ebc40e496995c94b988a101b9fbbed48a51190a4461fcb0a68b4a36"},
+ {file = "jiter-0.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:1c0dfbd1be3cbefc7510102370d86e35d1d53e5a93d48519688b1bf0f761160a"},
+ {file = "jiter-0.8.2.tar.gz", hash = "sha256:cd73d3e740666d0e639f678adb176fad25c1bcbdae88d8d7b857e1783bb4212d"},
]
[[package]]
@@ -1684,13 +1820,13 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-
[[package]]
name = "jsonschema-specifications"
-version = "2023.12.1"
+version = "2024.10.1"
description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"},
- {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"},
+ {file = "jsonschema_specifications-2024.10.1-py3-none-any.whl", hash = "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf"},
+ {file = "jsonschema_specifications-2024.10.1.tar.gz", hash = "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272"},
]
[package.dependencies]
@@ -1737,71 +1873,72 @@ test-filesource = ["pyyaml (>=5.3.1)", "watchdog (>=3.0.0)"]
[[package]]
name = "markupsafe"
-version = "2.1.5"
+version = "3.0.2"
description = "Safely add untrusted strings to HTML/XML markup."
optional = false
-python-versions = ">=3.7"
+python-versions = ">=3.9"
files = [
- {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"},
- {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"},
- {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"},
- {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"},
- {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"},
- {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"},
- {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"},
- {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"},
+ {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"},
+ {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"},
+ {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"},
+ {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"},
+ {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"},
+ {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"},
]
[[package]]
@@ -1959,13 +2096,13 @@ signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"]
[[package]]
name = "ollama"
-version = "0.4.1"
+version = "0.4.4"
description = "The official Python client for Ollama."
optional = false
python-versions = "<4.0,>=3.8"
files = [
- {file = "ollama-0.4.1-py3-none-any.whl", hash = "sha256:b6fb16aa5a3652633e1716acb12cf2f44aa18beb229329e46a0302734822dfad"},
- {file = "ollama-0.4.1.tar.gz", hash = "sha256:8c6b5e7ff80dd0b8692150b03359f60bac7ca162b088c604069409142a684ad3"},
+ {file = "ollama-0.4.4-py3-none-any.whl", hash = "sha256:0f466e845e2205a1cbf5a2fef4640027b90beaa3b06c574426d8b6b17fd6e139"},
+ {file = "ollama-0.4.4.tar.gz", hash = "sha256:e1db064273c739babc2dde9ea84029c4a43415354741b6c50939ddd3dd0f7ffb"},
]
[package.dependencies]
@@ -1974,13 +2111,13 @@ pydantic = ">=2.9.0,<3.0.0"
[[package]]
name = "openai"
-version = "1.55.1"
+version = "1.57.3"
description = "The official Python library for the openai API"
optional = false
python-versions = ">=3.8"
files = [
- {file = "openai-1.55.1-py3-none-any.whl", hash = "sha256:d10d96a4f9dc5f05d38dea389119ec8dcd24bc9698293c8357253c601b4a77a5"},
- {file = "openai-1.55.1.tar.gz", hash = "sha256:471324321e7739214f16a544e801947a046d3c5d516fae8719a317234e4968d3"},
+ {file = "openai-1.57.3-py3-none-any.whl", hash = "sha256:c4034a5676eb252ef2e0ed1f46d040ca3bdde24bb61b432f50bb0b38d0cf9ecf"},
+ {file = "openai-1.57.3.tar.gz", hash = "sha256:2c98ca6532b30d8bc5029974d2fcbd793b650009c2b014f47ffd4f9fdfc1f9eb"},
]
[package.dependencies]
@@ -1998,13 +2135,13 @@ datalib = ["numpy (>=1)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)"]
[[package]]
name = "opentelemetry-api"
-version = "1.28.2"
+version = "1.29.0"
description = "OpenTelemetry Python API"
optional = false
python-versions = ">=3.8"
files = [
- {file = "opentelemetry_api-1.28.2-py3-none-any.whl", hash = "sha256:6fcec89e265beb258fe6b1acaaa3c8c705a934bd977b9f534a2b7c0d2d4275a6"},
- {file = "opentelemetry_api-1.28.2.tar.gz", hash = "sha256:ecdc70c7139f17f9b0cf3742d57d7020e3e8315d6cffcdf1a12a905d45b19cc0"},
+ {file = "opentelemetry_api-1.29.0-py3-none-any.whl", hash = "sha256:5fcd94c4141cc49c736271f3e1efb777bebe9cc535759c54c936cca4f1b312b8"},
+ {file = "opentelemetry_api-1.29.0.tar.gz", hash = "sha256:d04a6cf78aad09614f52964ecb38021e248f5714dc32c2e0d8fd99517b4d69cf"},
]
[package.dependencies]
@@ -2013,13 +2150,13 @@ importlib-metadata = ">=6.0,<=8.5.0"
[[package]]
name = "packaging"
-version = "24.1"
+version = "24.2"
description = "Core utilities for Python packages"
optional = false
python-versions = ">=3.8"
files = [
- {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"},
- {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"},
+ {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"},
+ {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"},
]
[[package]]
@@ -2061,18 +2198,18 @@ files = [
[[package]]
name = "pinecone"
-version = "5.3.1"
+version = "5.4.2"
description = "Pinecone client and SDK"
optional = false
python-versions = "<4.0,>=3.8"
files = [
- {file = "pinecone-5.3.1-py3-none-any.whl", hash = "sha256:dd180963d29cd648f2d58becf18b21f150362aef80446dd3a7ed15cbe85bb4c7"},
- {file = "pinecone-5.3.1.tar.gz", hash = "sha256:a216630331753958f4ebcdc6e6d473402d17152f2194af3e19b3416c73b0dcc4"},
+ {file = "pinecone-5.4.2-py3-none-any.whl", hash = "sha256:1fad082c66a50a229b58cda0c3a1fa0083532dc9de8303015fe4071cb25c19a8"},
+ {file = "pinecone-5.4.2.tar.gz", hash = "sha256:23e8aaa73b400bb11a3b626c4129284fb170f19025b82f65bd89cbb0dab2b873"},
]
[package.dependencies]
certifi = ">=2019.11.17"
-pinecone-plugin-inference = ">=1.1.0,<2.0.0"
+pinecone-plugin-inference = ">=2.0.0,<4.0.0"
pinecone-plugin-interface = ">=0.0.7,<0.0.8"
python-dateutil = ">=2.5.3"
tqdm = ">=4.64.1"
@@ -2087,13 +2224,13 @@ grpc = ["googleapis-common-protos (>=1.53.0)", "grpcio (>=1.44.0)", "grpcio (>=1
[[package]]
name = "pinecone-plugin-inference"
-version = "1.1.0"
+version = "3.1.0"
description = "Embeddings plugin for Pinecone SDK"
optional = false
python-versions = "<4.0,>=3.8"
files = [
- {file = "pinecone_plugin_inference-1.1.0-py3-none-any.whl", hash = "sha256:32c61aba21c9a28fdcd0e782204c1ca641aeb3fd6e42764fbf0de8186eb657ec"},
- {file = "pinecone_plugin_inference-1.1.0.tar.gz", hash = "sha256:283e5ae4590b901bf2179beb56fc3d1b715e63582f37ec7abb0708cf70912d1f"},
+ {file = "pinecone_plugin_inference-3.1.0-py3-none-any.whl", hash = "sha256:96e861527bd41e90d58b7e76abd4e713d9af28f63e76a51864dfb9cf7180e3df"},
+ {file = "pinecone_plugin_inference-3.1.0.tar.gz", hash = "sha256:eff826178e1fe448577be2ff3d8dbb072befbbdc2d888e214624523a1c37cd8d"},
]
[package.dependencies]
@@ -2143,13 +2280,13 @@ testing = ["pytest", "pytest-benchmark"]
[[package]]
name = "poethepoet"
-version = "0.31.0"
+version = "0.31.1"
description = "A task runner that works well with poetry."
optional = false
python-versions = ">=3.9"
files = [
- {file = "poethepoet-0.31.0-py3-none-any.whl", hash = "sha256:5067c5adf9f228b8af1f3df7d57dc319ed8b3f153bf21faf99f7b74494174c3d"},
- {file = "poethepoet-0.31.0.tar.gz", hash = "sha256:b1cffb120149101b02ffa0583c6e61dfee53953a741df3dabf179836bdef97f5"},
+ {file = "poethepoet-0.31.1-py3-none-any.whl", hash = "sha256:7fdfa0ac6074be9936723e7231b5bfaad2923e96c674a9857e81d326cf8ccdc2"},
+ {file = "poethepoet-0.31.1.tar.gz", hash = "sha256:d6b66074edf85daf115bb916eae0afd6387d19e1562e1c9ef7d61d5c585696aa"},
]
[package.dependencies]
@@ -2246,6 +2383,97 @@ typing-extensions = ">=4.5.0"
all = ["nodejs-bin"]
node = ["nodejs-bin"]
+[[package]]
+name = "propcache"
+version = "0.2.1"
+description = "Accelerated property cache"
+optional = false
+python-versions = ">=3.9"
+files = [
+ {file = "propcache-0.2.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6"},
+ {file = "propcache-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2"},
+ {file = "propcache-0.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea"},
+ {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212"},
+ {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3"},
+ {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d"},
+ {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634"},
+ {file = "propcache-0.2.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034"},
+ {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b"},
+ {file = "propcache-0.2.1-cp310-cp310-win32.whl", hash = "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4"},
+ {file = "propcache-0.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba"},
+ {file = "propcache-0.2.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16"},
+ {file = "propcache-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717"},
+ {file = "propcache-0.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3"},
+ {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9"},
+ {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787"},
+ {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465"},
+ {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af"},
+ {file = "propcache-0.2.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca"},
+ {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e"},
+ {file = "propcache-0.2.1-cp311-cp311-win32.whl", hash = "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034"},
+ {file = "propcache-0.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3"},
+ {file = "propcache-0.2.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a"},
+ {file = "propcache-0.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0"},
+ {file = "propcache-0.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d"},
+ {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4"},
+ {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d"},
+ {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5"},
+ {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24"},
+ {file = "propcache-0.2.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6"},
+ {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518"},
+ {file = "propcache-0.2.1-cp312-cp312-win32.whl", hash = "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246"},
+ {file = "propcache-0.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1"},
+ {file = "propcache-0.2.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc"},
+ {file = "propcache-0.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9"},
+ {file = "propcache-0.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439"},
+ {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536"},
+ {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629"},
+ {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b"},
+ {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052"},
+ {file = "propcache-0.2.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f"},
+ {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30"},
+ {file = "propcache-0.2.1-cp313-cp313-win32.whl", hash = "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6"},
+ {file = "propcache-0.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1"},
+ {file = "propcache-0.2.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541"},
+ {file = "propcache-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e"},
+ {file = "propcache-0.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4"},
+ {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097"},
+ {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd"},
+ {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681"},
+ {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16"},
+ {file = "propcache-0.2.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04"},
+ {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587"},
+ {file = "propcache-0.2.1-cp39-cp39-win32.whl", hash = "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb"},
+ {file = "propcache-0.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1"},
+ {file = "propcache-0.2.1-py3-none-any.whl", hash = "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54"},
+ {file = "propcache-0.2.1.tar.gz", hash = "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64"},
+]
+
[[package]]
name = "proto-plus"
version = "1.25.0"
@@ -2265,22 +2493,22 @@ testing = ["google-api-core (>=1.31.5)"]
[[package]]
name = "protobuf"
-version = "5.28.2"
+version = "5.29.1"
description = ""
optional = false
python-versions = ">=3.8"
files = [
- {file = "protobuf-5.28.2-cp310-abi3-win32.whl", hash = "sha256:eeea10f3dc0ac7e6b4933d32db20662902b4ab81bf28df12218aa389e9c2102d"},
- {file = "protobuf-5.28.2-cp310-abi3-win_amd64.whl", hash = "sha256:2c69461a7fcc8e24be697624c09a839976d82ae75062b11a0972e41fd2cd9132"},
- {file = "protobuf-5.28.2-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:a8b9403fc70764b08d2f593ce44f1d2920c5077bf7d311fefec999f8c40f78b7"},
- {file = "protobuf-5.28.2-cp38-abi3-manylinux2014_aarch64.whl", hash = "sha256:35cfcb15f213449af7ff6198d6eb5f739c37d7e4f1c09b5d0641babf2cc0c68f"},
- {file = "protobuf-5.28.2-cp38-abi3-manylinux2014_x86_64.whl", hash = "sha256:5e8a95246d581eef20471b5d5ba010d55f66740942b95ba9b872d918c459452f"},
- {file = "protobuf-5.28.2-cp38-cp38-win32.whl", hash = "sha256:87317e9bcda04a32f2ee82089a204d3a2f0d3c8aeed16568c7daf4756e4f1fe0"},
- {file = "protobuf-5.28.2-cp38-cp38-win_amd64.whl", hash = "sha256:c0ea0123dac3399a2eeb1a1443d82b7afc9ff40241433296769f7da42d142ec3"},
- {file = "protobuf-5.28.2-cp39-cp39-win32.whl", hash = "sha256:ca53faf29896c526863366a52a8f4d88e69cd04ec9571ed6082fa117fac3ab36"},
- {file = "protobuf-5.28.2-cp39-cp39-win_amd64.whl", hash = "sha256:8ddc60bf374785fb7cb12510b267f59067fa10087325b8e1855b898a0d81d276"},
- {file = "protobuf-5.28.2-py3-none-any.whl", hash = "sha256:52235802093bd8a2811abbe8bf0ab9c5f54cca0a751fdd3f6ac2a21438bffece"},
- {file = "protobuf-5.28.2.tar.gz", hash = "sha256:59379674ff119717404f7454647913787034f03fe7049cbef1d74a97bb4593f0"},
+ {file = "protobuf-5.29.1-cp310-abi3-win32.whl", hash = "sha256:22c1f539024241ee545cbcb00ee160ad1877975690b16656ff87dde107b5f110"},
+ {file = "protobuf-5.29.1-cp310-abi3-win_amd64.whl", hash = "sha256:1fc55267f086dd4050d18ef839d7bd69300d0d08c2a53ca7df3920cc271a3c34"},
+ {file = "protobuf-5.29.1-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:d473655e29c0c4bbf8b69e9a8fb54645bc289dead6d753b952e7aa660254ae18"},
+ {file = "protobuf-5.29.1-cp38-abi3-manylinux2014_aarch64.whl", hash = "sha256:b5ba1d0e4c8a40ae0496d0e2ecfdbb82e1776928a205106d14ad6985a09ec155"},
+ {file = "protobuf-5.29.1-cp38-abi3-manylinux2014_x86_64.whl", hash = "sha256:8ee1461b3af56145aca2800e6a3e2f928108c749ba8feccc6f5dd0062c410c0d"},
+ {file = "protobuf-5.29.1-cp38-cp38-win32.whl", hash = "sha256:50879eb0eb1246e3a5eabbbe566b44b10348939b7cc1b267567e8c3d07213853"},
+ {file = "protobuf-5.29.1-cp38-cp38-win_amd64.whl", hash = "sha256:027fbcc48cea65a6b17028510fdd054147057fa78f4772eb547b9274e5219331"},
+ {file = "protobuf-5.29.1-cp39-cp39-win32.whl", hash = "sha256:5a41deccfa5e745cef5c65a560c76ec0ed8e70908a67cc8f4da5fce588b50d57"},
+ {file = "protobuf-5.29.1-cp39-cp39-win_amd64.whl", hash = "sha256:012ce28d862ff417fd629285aca5d9772807f15ceb1a0dbd15b88f58c776c98c"},
+ {file = "protobuf-5.29.1-py3-none-any.whl", hash = "sha256:32600ddb9c2a53dedc25b8581ea0f1fd8ea04956373c0c07577ce58d312522e0"},
+ {file = "protobuf-5.29.1.tar.gz", hash = "sha256:683be02ca21a6ffe80db6dd02c0b5b2892322c59ca57fd6c872d652cb80549cb"},
]
[[package]]
@@ -2438,22 +2666,19 @@ files = [
[[package]]
name = "pydantic"
-version = "2.9.2"
+version = "2.10.3"
description = "Data validation using Python type hints"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pydantic-2.9.2-py3-none-any.whl", hash = "sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12"},
- {file = "pydantic-2.9.2.tar.gz", hash = "sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f"},
+ {file = "pydantic-2.10.3-py3-none-any.whl", hash = "sha256:be04d85bbc7b65651c5f8e6b9976ed9c6f41782a55524cef079a34a0bb82144d"},
+ {file = "pydantic-2.10.3.tar.gz", hash = "sha256:cb5ac360ce894ceacd69c403187900a02c4b20b693a9dd1d643e1effab9eadf9"},
]
[package.dependencies]
annotated-types = ">=0.6.0"
-pydantic-core = "2.23.4"
-typing-extensions = [
- {version = ">=4.6.1", markers = "python_version < \"3.13\""},
- {version = ">=4.12.2", markers = "python_version >= \"3.13\""},
-]
+pydantic-core = "2.27.1"
+typing-extensions = ">=4.12.2"
[package.extras]
email = ["email-validator (>=2.0.0)"]
@@ -2461,100 +2686,111 @@ timezone = ["tzdata"]
[[package]]
name = "pydantic-core"
-version = "2.23.4"
+version = "2.27.1"
description = "Core functionality for Pydantic validation and serialization"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pydantic_core-2.23.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b"},
- {file = "pydantic_core-2.23.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2"},
- {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f"},
- {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3"},
- {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071"},
- {file = "pydantic_core-2.23.4-cp310-none-win32.whl", hash = "sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119"},
- {file = "pydantic_core-2.23.4-cp310-none-win_amd64.whl", hash = "sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f"},
- {file = "pydantic_core-2.23.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8"},
- {file = "pydantic_core-2.23.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e"},
- {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b"},
- {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0"},
- {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64"},
- {file = "pydantic_core-2.23.4-cp311-none-win32.whl", hash = "sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f"},
- {file = "pydantic_core-2.23.4-cp311-none-win_amd64.whl", hash = "sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3"},
- {file = "pydantic_core-2.23.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231"},
- {file = "pydantic_core-2.23.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36"},
- {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126"},
- {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e"},
- {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24"},
- {file = "pydantic_core-2.23.4-cp312-none-win32.whl", hash = "sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84"},
- {file = "pydantic_core-2.23.4-cp312-none-win_amd64.whl", hash = "sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9"},
- {file = "pydantic_core-2.23.4-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc"},
- {file = "pydantic_core-2.23.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b"},
- {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327"},
- {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6"},
- {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f"},
- {file = "pydantic_core-2.23.4-cp313-none-win32.whl", hash = "sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769"},
- {file = "pydantic_core-2.23.4-cp313-none-win_amd64.whl", hash = "sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5"},
- {file = "pydantic_core-2.23.4-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555"},
- {file = "pydantic_core-2.23.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad"},
- {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12"},
- {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2"},
- {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb"},
- {file = "pydantic_core-2.23.4-cp38-none-win32.whl", hash = "sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6"},
- {file = "pydantic_core-2.23.4-cp38-none-win_amd64.whl", hash = "sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556"},
- {file = "pydantic_core-2.23.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a"},
- {file = "pydantic_core-2.23.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c"},
- {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55"},
- {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040"},
- {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605"},
- {file = "pydantic_core-2.23.4-cp39-none-win32.whl", hash = "sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6"},
- {file = "pydantic_core-2.23.4-cp39-none-win_amd64.whl", hash = "sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433"},
- {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8"},
- {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e"},
- {file = "pydantic_core-2.23.4.tar.gz", hash = "sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:71a5e35c75c021aaf400ac048dacc855f000bdfed91614b4a726f7432f1f3d6a"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f82d068a2d6ecfc6e054726080af69a6764a10015467d7d7b9f66d6ed5afa23b"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:121ceb0e822f79163dd4699e4c54f5ad38b157084d97b34de8b232bcaad70278"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4603137322c18eaf2e06a4495f426aa8d8388940f3c457e7548145011bb68e05"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a33cd6ad9017bbeaa9ed78a2e0752c5e250eafb9534f308e7a5f7849b0b1bfb4"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15cc53a3179ba0fcefe1e3ae50beb2784dede4003ad2dfd24f81bba4b23a454f"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45d9c5eb9273aa50999ad6adc6be5e0ecea7e09dbd0d31bd0c65a55a2592ca08"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8bf7b66ce12a2ac52d16f776b31d16d91033150266eb796967a7e4621707e4f6"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:655d7dd86f26cb15ce8a431036f66ce0318648f8853d709b4167786ec2fa4807"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:5556470f1a2157031e676f776c2bc20acd34c1990ca5f7e56f1ebf938b9ab57c"},
+ {file = "pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f69ed81ab24d5a3bd93861c8c4436f54afdf8e8cc421562b0c7504cf3be58206"},
+ {file = "pydantic_core-2.27.1-cp310-none-win32.whl", hash = "sha256:f5a823165e6d04ccea61a9f0576f345f8ce40ed533013580e087bd4d7442b52c"},
+ {file = "pydantic_core-2.27.1-cp310-none-win_amd64.whl", hash = "sha256:57866a76e0b3823e0b56692d1a0bf722bffb324839bb5b7226a7dbd6c9a40b17"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac3b20653bdbe160febbea8aa6c079d3df19310d50ac314911ed8cc4eb7f8cb8"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a5a8e19d7c707c4cadb8c18f5f60c843052ae83c20fa7d44f41594c644a1d330"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7f7059ca8d64fea7f238994c97d91f75965216bcbe5f695bb44f354893f11d52"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bed0f8a0eeea9fb72937ba118f9db0cb7e90773462af7962d382445f3005e5a4"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a3cb37038123447cf0f3ea4c74751f6a9d7afef0eb71aa07bf5f652b5e6a132c"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:84286494f6c5d05243456e04223d5a9417d7f443c3b76065e75001beb26f88de"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:acc07b2cfc5b835444b44a9956846b578d27beeacd4b52e45489e93276241025"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4fefee876e07a6e9aad7a8c8c9f85b0cdbe7df52b8a9552307b09050f7512c7e"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:258c57abf1188926c774a4c94dd29237e77eda19462e5bb901d88adcab6af919"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:35c14ac45fcfdf7167ca76cc80b2001205a8d5d16d80524e13508371fb8cdd9c"},
+ {file = "pydantic_core-2.27.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d1b26e1dff225c31897696cab7d4f0a315d4c0d9e8666dbffdb28216f3b17fdc"},
+ {file = "pydantic_core-2.27.1-cp311-none-win32.whl", hash = "sha256:2cdf7d86886bc6982354862204ae3b2f7f96f21a3eb0ba5ca0ac42c7b38598b9"},
+ {file = "pydantic_core-2.27.1-cp311-none-win_amd64.whl", hash = "sha256:3af385b0cee8df3746c3f406f38bcbfdc9041b5c2d5ce3e5fc6637256e60bbc5"},
+ {file = "pydantic_core-2.27.1-cp311-none-win_arm64.whl", hash = "sha256:81f2ec23ddc1b476ff96563f2e8d723830b06dceae348ce02914a37cb4e74b89"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9cbd94fc661d2bab2bc702cddd2d3370bbdcc4cd0f8f57488a81bcce90c7a54f"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5f8c4718cd44ec1580e180cb739713ecda2bdee1341084c1467802a417fe0f02"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15aae984e46de8d376df515f00450d1522077254ef6b7ce189b38ecee7c9677c"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1ba5e3963344ff25fc8c40da90f44b0afca8cfd89d12964feb79ac1411a260ac"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:992cea5f4f3b29d6b4f7f1726ed8ee46c8331c6b4eed6db5b40134c6fe1768bb"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0325336f348dbee6550d129b1627cb8f5351a9dc91aad141ffb96d4937bd9529"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7597c07fbd11515f654d6ece3d0e4e5093edc30a436c63142d9a4b8e22f19c35"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3bbd5d8cc692616d5ef6fbbbd50dbec142c7e6ad9beb66b78a96e9c16729b089"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:dc61505e73298a84a2f317255fcc72b710b72980f3a1f670447a21efc88f8381"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:e1f735dc43da318cad19b4173dd1ffce1d84aafd6c9b782b3abc04a0d5a6f5bb"},
+ {file = "pydantic_core-2.27.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f4e5658dbffe8843a0f12366a4c2d1c316dbe09bb4dfbdc9d2d9cd6031de8aae"},
+ {file = "pydantic_core-2.27.1-cp312-none-win32.whl", hash = "sha256:672ebbe820bb37988c4d136eca2652ee114992d5d41c7e4858cdd90ea94ffe5c"},
+ {file = "pydantic_core-2.27.1-cp312-none-win_amd64.whl", hash = "sha256:66ff044fd0bb1768688aecbe28b6190f6e799349221fb0de0e6f4048eca14c16"},
+ {file = "pydantic_core-2.27.1-cp312-none-win_arm64.whl", hash = "sha256:9a3b0793b1bbfd4146304e23d90045f2a9b5fd5823aa682665fbdaf2a6c28f3e"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f216dbce0e60e4d03e0c4353c7023b202d95cbaeff12e5fd2e82ea0a66905073"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a2e02889071850bbfd36b56fd6bc98945e23670773bc7a76657e90e6b6603c08"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42b0e23f119b2b456d07ca91b307ae167cc3f6c846a7b169fca5326e32fdc6cf"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:764be71193f87d460a03f1f7385a82e226639732214b402f9aa61f0d025f0737"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c00666a3bd2f84920a4e94434f5974d7bbc57e461318d6bb34ce9cdbbc1f6b2"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ccaa88b24eebc0f849ce0a4d09e8a408ec5a94afff395eb69baf868f5183107"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c65af9088ac534313e1963443d0ec360bb2b9cba6c2909478d22c2e363d98a51"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:206b5cf6f0c513baffaeae7bd817717140770c74528f3e4c3e1cec7871ddd61a"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:062f60e512fc7fff8b8a9d680ff0ddaaef0193dba9fa83e679c0c5f5fbd018bc"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:a0697803ed7d4af5e4c1adf1670af078f8fcab7a86350e969f454daf598c4960"},
+ {file = "pydantic_core-2.27.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:58ca98a950171f3151c603aeea9303ef6c235f692fe555e883591103da709b23"},
+ {file = "pydantic_core-2.27.1-cp313-none-win32.whl", hash = "sha256:8065914ff79f7eab1599bd80406681f0ad08f8e47c880f17b416c9f8f7a26d05"},
+ {file = "pydantic_core-2.27.1-cp313-none-win_amd64.whl", hash = "sha256:ba630d5e3db74c79300d9a5bdaaf6200172b107f263c98a0539eeecb857b2337"},
+ {file = "pydantic_core-2.27.1-cp313-none-win_arm64.whl", hash = "sha256:45cf8588c066860b623cd11c4ba687f8d7175d5f7ef65f7129df8a394c502de5"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:5897bec80a09b4084aee23f9b73a9477a46c3304ad1d2d07acca19723fb1de62"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d0165ab2914379bd56908c02294ed8405c252250668ebcb438a55494c69f44ab"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b9af86e1d8e4cfc82c2022bfaa6f459381a50b94a29e95dcdda8442d6d83864"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f6c8a66741c5f5447e047ab0ba7a1c61d1e95580d64bce852e3df1f895c4067"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a42d6a8156ff78981f8aa56eb6394114e0dedb217cf8b729f438f643608cbcd"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:64c65f40b4cd8b0e049a8edde07e38b476da7e3aaebe63287c899d2cff253fa5"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdcf339322a3fae5cbd504edcefddd5a50d9ee00d968696846f089b4432cf78"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bf99c8404f008750c846cb4ac4667b798a9f7de673ff719d705d9b2d6de49c5f"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8f1edcea27918d748c7e5e4d917297b2a0ab80cad10f86631e488b7cddf76a36"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-musllinux_1_1_armv7l.whl", hash = "sha256:159cac0a3d096f79ab6a44d77a961917219707e2a130739c64d4dd46281f5c2a"},
+ {file = "pydantic_core-2.27.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:029d9757eb621cc6e1848fa0b0310310de7301057f623985698ed7ebb014391b"},
+ {file = "pydantic_core-2.27.1-cp38-none-win32.whl", hash = "sha256:a28af0695a45f7060e6f9b7092558a928a28553366519f64083c63a44f70e618"},
+ {file = "pydantic_core-2.27.1-cp38-none-win_amd64.whl", hash = "sha256:2d4567c850905d5eaaed2f7a404e61012a51caf288292e016360aa2b96ff38d4"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:e9386266798d64eeb19dd3677051f5705bf873e98e15897ddb7d76f477131967"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4228b5b646caa73f119b1ae756216b59cc6e2267201c27d3912b592c5e323b60"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0b3dfe500de26c52abe0477dde16192ac39c98f05bf2d80e76102d394bd13854"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:aee66be87825cdf72ac64cb03ad4c15ffef4143dbf5c113f64a5ff4f81477bf9"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b748c44bb9f53031c8cbc99a8a061bc181c1000c60a30f55393b6e9c45cc5bd"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ca038c7f6a0afd0b2448941b6ef9d5e1949e999f9e5517692eb6da58e9d44be"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e0bd57539da59a3e4671b90a502da9a28c72322a4f17866ba3ac63a82c4498e"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ac6c2c45c847bbf8f91930d88716a0fb924b51e0c6dad329b793d670ec5db792"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b94d4ba43739bbe8b0ce4262bcc3b7b9f31459ad120fb595627eaeb7f9b9ca01"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:00e6424f4b26fe82d44577b4c842d7df97c20be6439e8e685d0d715feceb9fb9"},
+ {file = "pydantic_core-2.27.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:38de0a70160dd97540335b7ad3a74571b24f1dc3ed33f815f0880682e6880131"},
+ {file = "pydantic_core-2.27.1-cp39-none-win32.whl", hash = "sha256:7ccebf51efc61634f6c2344da73e366c75e735960b5654b63d7e6f69a5885fa3"},
+ {file = "pydantic_core-2.27.1-cp39-none-win_amd64.whl", hash = "sha256:a57847b090d7892f123726202b7daa20df6694cbd583b67a592e856bff603d6c"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3fa80ac2bd5856580e242dbc202db873c60a01b20309c8319b5c5986fbe53ce6"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d950caa237bb1954f1b8c9227b5065ba6875ac9771bb8ec790d956a699b78676"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e4216e64d203e39c62df627aa882f02a2438d18a5f21d7f721621f7a5d3611d"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02a3d637bd387c41d46b002f0e49c52642281edacd2740e5a42f7017feea3f2c"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:161c27ccce13b6b0c8689418da3885d3220ed2eae2ea5e9b2f7f3d48f1d52c27"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:19910754e4cc9c63bc1c7f6d73aa1cfee82f42007e407c0f413695c2f7ed777f"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:e173486019cc283dc9778315fa29a363579372fe67045e971e89b6365cc035ed"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:af52d26579b308921b73b956153066481f064875140ccd1dfd4e77db89dbb12f"},
+ {file = "pydantic_core-2.27.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:981fb88516bd1ae8b0cbbd2034678a39dedc98752f264ac9bc5839d3923fa04c"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5fde892e6c697ce3e30c61b239330fc5d569a71fefd4eb6512fc6caec9dd9e2f"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:816f5aa087094099fff7edabb5e01cc370eb21aa1a1d44fe2d2aefdfb5599b31"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c10c309e18e443ddb108f0ef64e8729363adbfd92d6d57beec680f6261556f3"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98476c98b02c8e9b2eec76ac4156fd006628b1b2d0ef27e548ffa978393fd154"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c3027001c28434e7ca5a6e1e527487051136aa81803ac812be51802150d880dd"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:7699b1df36a48169cdebda7ab5a2bac265204003f153b4bd17276153d997670a"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:1c39b07d90be6b48968ddc8c19e7585052088fd7ec8d568bb31ff64c70ae3c97"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:46ccfe3032b3915586e469d4972973f893c0a2bb65669194a5bdea9bacc088c2"},
+ {file = "pydantic_core-2.27.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:62ba45e21cf6571d7f716d903b5b7b6d2617e2d5d67c0923dc47b9d41369f840"},
+ {file = "pydantic_core-2.27.1.tar.gz", hash = "sha256:62a763352879b84aa31058fc931884055fd75089cccbd9d58bb6afd01141b235"},
]
[package.dependencies]
@@ -2562,13 +2798,13 @@ typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0"
[[package]]
name = "pydantic-settings"
-version = "2.6.1"
+version = "2.7.0"
description = "Settings management using Pydantic"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pydantic_settings-2.6.1-py3-none-any.whl", hash = "sha256:7fb0637c786a558d3103436278a7c4f1cfd29ba8973238a50c5bb9a55387da87"},
- {file = "pydantic_settings-2.6.1.tar.gz", hash = "sha256:e0f92546d8a9923cb8941689abf85d6601a8c19a23e97a34b2964a2e3f813ca0"},
+ {file = "pydantic_settings-2.7.0-py3-none-any.whl", hash = "sha256:e00c05d5fa6cbbb227c84bd7487c5c1065084119b750df7c8c1a554aed236eb5"},
+ {file = "pydantic_settings-2.7.0.tar.gz", hash = "sha256:ac4bfd4a36831a48dbf8b2d9325425b549a0a6f18cea118436d728eb4f1c4d66"},
]
[package.dependencies]
@@ -2593,13 +2829,13 @@ files = [
[[package]]
name = "pyjwt"
-version = "2.10.0"
+version = "2.10.1"
description = "JSON Web Token implementation in Python"
optional = false
python-versions = ">=3.9"
files = [
- {file = "PyJWT-2.10.0-py3-none-any.whl", hash = "sha256:543b77207db656de204372350926bed5a86201c4cbff159f623f79c7bb487a15"},
- {file = "pyjwt-2.10.0.tar.gz", hash = "sha256:7628a7eb7938959ac1b26e819a1df0fd3259505627b575e4bad6d08f76db695c"},
+ {file = "PyJWT-2.10.1-py3-none-any.whl", hash = "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb"},
+ {file = "pyjwt-2.10.1.tar.gz", hash = "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953"},
]
[package.extras]
@@ -2610,13 +2846,13 @@ tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"]
[[package]]
name = "pyparsing"
-version = "3.1.4"
+version = "3.2.0"
description = "pyparsing module - Classes and methods to define and execute parsing grammars"
optional = false
-python-versions = ">=3.6.8"
+python-versions = ">=3.9"
files = [
- {file = "pyparsing-3.1.4-py3-none-any.whl", hash = "sha256:a6a7ee4235a3f944aa1fa2249307708f893fe5717dc603503c6c7969c070fb7c"},
- {file = "pyparsing-3.1.4.tar.gz", hash = "sha256:f86ec8d1a83f11977c9a6ea7598e8c27fc5cddfa5b07ea2241edbbde1d7bc032"},
+ {file = "pyparsing-3.2.0-py3-none-any.whl", hash = "sha256:93d9577b88da0bbea8cc8334ee8b918ed014968fd2ec383e868fb8afb1ccef84"},
+ {file = "pyparsing-3.2.0.tar.gz", hash = "sha256:cbf74e27246d595d9a74b186b810f6fbb86726dbf3b9532efb343f6d7294fe9c"},
]
[package.extras]
@@ -2635,13 +2871,13 @@ files = [
[[package]]
name = "pyright"
-version = "1.1.389"
+version = "1.1.390"
description = "Command line wrapper for pyright"
optional = false
python-versions = ">=3.7"
files = [
- {file = "pyright-1.1.389-py3-none-any.whl", hash = "sha256:41e9620bba9254406dc1f621a88ceab5a88af4c826feb4f614d95691ed243a60"},
- {file = "pyright-1.1.389.tar.gz", hash = "sha256:716bf8cc174ab8b4dcf6828c3298cac05c5ed775dda9910106a5dcfe4c7fe220"},
+ {file = "pyright-1.1.390-py3-none-any.whl", hash = "sha256:ecebfba5b6b50af7c1a44c2ba144ba2ab542c227eb49bc1f16984ff714e0e110"},
+ {file = "pyright-1.1.390.tar.gz", hash = "sha256:aad7f160c49e0fbf8209507a15e17b781f63a86a1facb69ca877c71ef2e9538d"},
]
[package.dependencies]
@@ -2669,13 +2905,13 @@ serpent = ">=1.41"
[[package]]
name = "pytest"
-version = "8.3.3"
+version = "8.3.4"
description = "pytest: simple powerful testing with Python"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pytest-8.3.3-py3-none-any.whl", hash = "sha256:a6853c7375b2663155079443d2e45de913a911a11d669df02a50814944db57b2"},
- {file = "pytest-8.3.3.tar.gz", hash = "sha256:70b98107bd648308a7952b06e6ca9a50bc660be218d53c257cc1fc94fda10181"},
+ {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"},
+ {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"},
]
[package.dependencies]
@@ -2767,6 +3003,17 @@ files = [
[package.extras]
cli = ["click (>=5.0)"]
+[[package]]
+name = "python-multipart"
+version = "0.0.19"
+description = "A streaming multipart parser for Python"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "python_multipart-0.0.19-py3-none-any.whl", hash = "sha256:f8d5b0b9c618575bf9df01c684ded1d94a338839bdd8223838afacfb4bb2082d"},
+ {file = "python_multipart-0.0.19.tar.gz", hash = "sha256:905502ef39050557b7a6af411f454bc19526529ca46ae6831508438890ce12cc"},
+]
+
[[package]]
name = "pytz"
version = "2024.2"
@@ -2842,30 +3089,30 @@ files = [
[[package]]
name = "realtime"
-version = "2.0.5"
+version = "2.0.6"
description = ""
optional = false
python-versions = "<4.0,>=3.9"
files = [
- {file = "realtime-2.0.5-py3-none-any.whl", hash = "sha256:f9ec2d762794709e37a8e2745c8dfd86eac4870678808f09676c8f2b7bfa6bbc"},
- {file = "realtime-2.0.5.tar.gz", hash = "sha256:133828fbc2cc2325fb015fe071c6da9fb488819cac96d85ed297045c715b35f5"},
+ {file = "realtime-2.0.6-py3-none-any.whl", hash = "sha256:9aab6009c11883197386a0a9dc8c2b6939e62dddda734cfb77594727ac9ae0ce"},
+ {file = "realtime-2.0.6.tar.gz", hash = "sha256:ced37686a77a546571029ecc74cfb31fff1404a5159d1198fa882af545843a6f"},
]
[package.dependencies]
-aiohttp = ">=3.10.6,<4.0.0"
+aiohttp = ">=3.10.10,<4.0.0"
python-dateutil = ">=2.8.1,<3.0.0"
typing-extensions = ">=4.12.2,<5.0.0"
websockets = ">=11,<14"
[[package]]
name = "redis"
-version = "5.2.0"
+version = "5.2.1"
description = "Python client for Redis database and key-value store"
optional = false
python-versions = ">=3.8"
files = [
- {file = "redis-5.2.0-py3-none-any.whl", hash = "sha256:ae174f2bb3b1bf2b09d54bf3e51fbc1469cf6c10aa03e21141f51969801a7897"},
- {file = "redis-5.2.0.tar.gz", hash = "sha256:0b1087665a771b1ff2e003aa5bdd354f15a70c9e25d5a7dbf9c722c16528a7b0"},
+ {file = "redis-5.2.1-py3-none-any.whl", hash = "sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4"},
+ {file = "redis-5.2.1.tar.gz", hash = "sha256:16f2e22dff21d5125e8481515e386711a34cbec50f0e44413dd7d9c060a54e0f"},
]
[package.dependencies]
@@ -2948,114 +3195,114 @@ rsa = ["oauthlib[signedtoken] (>=3.0.0)"]
[[package]]
name = "rpds-py"
-version = "0.20.0"
+version = "0.22.3"
description = "Python bindings to Rust's persistent data structures (rpds)"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "rpds_py-0.20.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3ad0fda1635f8439cde85c700f964b23ed5fc2d28016b32b9ee5fe30da5c84e2"},
- {file = "rpds_py-0.20.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9bb4a0d90fdb03437c109a17eade42dfbf6190408f29b2744114d11586611d6f"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6377e647bbfd0a0b159fe557f2c6c602c159fc752fa316572f012fc0bf67150"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eb851b7df9dda52dc1415ebee12362047ce771fc36914586b2e9fcbd7d293b3e"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e0f80b739e5a8f54837be5d5c924483996b603d5502bfff79bf33da06164ee2"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a8c94dad2e45324fc74dce25e1645d4d14df9a4e54a30fa0ae8bad9a63928e3"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e604fe73ba048c06085beaf51147eaec7df856824bfe7b98657cf436623daf"},
- {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:df3de6b7726b52966edf29663e57306b23ef775faf0ac01a3e9f4012a24a4140"},
- {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cf258ede5bc22a45c8e726b29835b9303c285ab46fc7c3a4cc770736b5304c9f"},
- {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:55fea87029cded5df854ca7e192ec7bdb7ecd1d9a3f63d5c4eb09148acf4a7ce"},
- {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ae94bd0b2f02c28e199e9bc51485d0c5601f58780636185660f86bf80c89af94"},
- {file = "rpds_py-0.20.0-cp310-none-win32.whl", hash = "sha256:28527c685f237c05445efec62426d285e47a58fb05ba0090a4340b73ecda6dee"},
- {file = "rpds_py-0.20.0-cp310-none-win_amd64.whl", hash = "sha256:238a2d5b1cad28cdc6ed15faf93a998336eb041c4e440dd7f902528b8891b399"},
- {file = "rpds_py-0.20.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac2f4f7a98934c2ed6505aead07b979e6f999389f16b714448fb39bbaa86a489"},
- {file = "rpds_py-0.20.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:220002c1b846db9afd83371d08d239fdc865e8f8c5795bbaec20916a76db3318"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d7919548df3f25374a1f5d01fbcd38dacab338ef5f33e044744b5c36729c8db"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:758406267907b3781beee0f0edfe4a179fbd97c0be2e9b1154d7f0a1279cf8e5"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3d61339e9f84a3f0767b1995adfb171a0d00a1185192718a17af6e124728e0f5"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1259c7b3705ac0a0bd38197565a5d603218591d3f6cee6e614e380b6ba61c6f6"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c1dc0f53856b9cc9a0ccca0a7cc61d3d20a7088201c0937f3f4048c1718a209"},
- {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7e60cb630f674a31f0368ed32b2a6b4331b8350d67de53c0359992444b116dd3"},
- {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:dbe982f38565bb50cb7fb061ebf762c2f254ca3d8c20d4006878766e84266272"},
- {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:514b3293b64187172bc77c8fb0cdae26981618021053b30d8371c3a902d4d5ad"},
- {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d0a26ffe9d4dd35e4dfdd1e71f46401cff0181c75ac174711ccff0459135fa58"},
- {file = "rpds_py-0.20.0-cp311-none-win32.whl", hash = "sha256:89c19a494bf3ad08c1da49445cc5d13d8fefc265f48ee7e7556839acdacf69d0"},
- {file = "rpds_py-0.20.0-cp311-none-win_amd64.whl", hash = "sha256:c638144ce971df84650d3ed0096e2ae7af8e62ecbbb7b201c8935c370df00a2c"},
- {file = "rpds_py-0.20.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a84ab91cbe7aab97f7446652d0ed37d35b68a465aeef8fc41932a9d7eee2c1a6"},
- {file = "rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:56e27147a5a4c2c21633ff8475d185734c0e4befd1c989b5b95a5d0db699b21b"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2580b0c34583b85efec8c5c5ec9edf2dfe817330cc882ee972ae650e7b5ef739"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b80d4a7900cf6b66bb9cee5c352b2d708e29e5a37fe9bf784fa97fc11504bf6c"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:50eccbf054e62a7b2209b28dc7a22d6254860209d6753e6b78cfaeb0075d7bee"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:49a8063ea4296b3a7e81a5dfb8f7b2d73f0b1c20c2af401fb0cdf22e14711a96"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea438162a9fcbee3ecf36c23e6c68237479f89f962f82dae83dc15feeceb37e4"},
- {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:18d7585c463087bddcfa74c2ba267339f14f2515158ac4db30b1f9cbdb62c8ef"},
- {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d4c7d1a051eeb39f5c9547e82ea27cbcc28338482242e3e0b7768033cb083821"},
- {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e4df1e3b3bec320790f699890d41c59d250f6beda159ea3c44c3f5bac1976940"},
- {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2cf126d33a91ee6eedc7f3197b53e87a2acdac63602c0f03a02dd69e4b138174"},
- {file = "rpds_py-0.20.0-cp312-none-win32.whl", hash = "sha256:8bc7690f7caee50b04a79bf017a8d020c1f48c2a1077ffe172abec59870f1139"},
- {file = "rpds_py-0.20.0-cp312-none-win_amd64.whl", hash = "sha256:0e13e6952ef264c40587d510ad676a988df19adea20444c2b295e536457bc585"},
- {file = "rpds_py-0.20.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:aa9a0521aeca7d4941499a73ad7d4f8ffa3d1affc50b9ea11d992cd7eff18a29"},
- {file = "rpds_py-0.20.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4a1f1d51eccb7e6c32ae89243cb352389228ea62f89cd80823ea7dd1b98e0b91"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a86a9b96070674fc88b6f9f71a97d2c1d3e5165574615d1f9168ecba4cecb24"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6c8ef2ebf76df43f5750b46851ed1cdf8f109d7787ca40035fe19fbdc1acc5a7"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b74b25f024b421d5859d156750ea9a65651793d51b76a2e9238c05c9d5f203a9"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57eb94a8c16ab08fef6404301c38318e2c5a32216bf5de453e2714c964c125c8"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1940dae14e715e2e02dfd5b0f64a52e8374a517a1e531ad9412319dc3ac7879"},
- {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d20277fd62e1b992a50c43f13fbe13277a31f8c9f70d59759c88f644d66c619f"},
- {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:06db23d43f26478303e954c34c75182356ca9aa7797d22c5345b16871ab9c45c"},
- {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b2a5db5397d82fa847e4c624b0c98fe59d2d9b7cf0ce6de09e4d2e80f8f5b3f2"},
- {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5a35df9f5548fd79cb2f52d27182108c3e6641a4feb0f39067911bf2adaa3e57"},
- {file = "rpds_py-0.20.0-cp313-none-win32.whl", hash = "sha256:fd2d84f40633bc475ef2d5490b9c19543fbf18596dcb1b291e3a12ea5d722f7a"},
- {file = "rpds_py-0.20.0-cp313-none-win_amd64.whl", hash = "sha256:9bc2d153989e3216b0559251b0c260cfd168ec78b1fac33dd485750a228db5a2"},
- {file = "rpds_py-0.20.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:f2fbf7db2012d4876fb0d66b5b9ba6591197b0f165db8d99371d976546472a24"},
- {file = "rpds_py-0.20.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1e5f3cd7397c8f86c8cc72d5a791071431c108edd79872cdd96e00abd8497d29"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce9845054c13696f7af7f2b353e6b4f676dab1b4b215d7fe5e05c6f8bb06f965"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c3e130fd0ec56cb76eb49ef52faead8ff09d13f4527e9b0c400307ff72b408e1"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4b16aa0107ecb512b568244ef461f27697164d9a68d8b35090e9b0c1c8b27752"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa7f429242aae2947246587d2964fad750b79e8c233a2367f71b554e9447949c"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af0fc424a5842a11e28956e69395fbbeab2c97c42253169d87e90aac2886d751"},
- {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b8c00a3b1e70c1d3891f0db1b05292747f0dbcfb49c43f9244d04c70fbc40eb8"},
- {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:40ce74fc86ee4645d0a225498d091d8bc61f39b709ebef8204cb8b5a464d3c0e"},
- {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4fe84294c7019456e56d93e8ababdad5a329cd25975be749c3f5f558abb48253"},
- {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:338ca4539aad4ce70a656e5187a3a31c5204f261aef9f6ab50e50bcdffaf050a"},
- {file = "rpds_py-0.20.0-cp38-none-win32.whl", hash = "sha256:54b43a2b07db18314669092bb2de584524d1ef414588780261e31e85846c26a5"},
- {file = "rpds_py-0.20.0-cp38-none-win_amd64.whl", hash = "sha256:a1862d2d7ce1674cffa6d186d53ca95c6e17ed2b06b3f4c476173565c862d232"},
- {file = "rpds_py-0.20.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:3fde368e9140312b6e8b6c09fb9f8c8c2f00999d1823403ae90cc00480221b22"},
- {file = "rpds_py-0.20.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9824fb430c9cf9af743cf7aaf6707bf14323fb51ee74425c380f4c846ea70789"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11ef6ce74616342888b69878d45e9f779b95d4bd48b382a229fe624a409b72c5"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c52d3f2f82b763a24ef52f5d24358553e8403ce05f893b5347098014f2d9eff2"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d35cef91e59ebbeaa45214861874bc6f19eb35de96db73e467a8358d701a96c"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d72278a30111e5b5525c1dd96120d9e958464316f55adb030433ea905866f4de"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4c29cbbba378759ac5786730d1c3cb4ec6f8ababf5c42a9ce303dc4b3d08cda"},
- {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6632f2d04f15d1bd6fe0eedd3b86d9061b836ddca4c03d5cf5c7e9e6b7c14580"},
- {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d0b67d87bb45ed1cd020e8fbf2307d449b68abc45402fe1a4ac9e46c3c8b192b"},
- {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:ec31a99ca63bf3cd7f1a5ac9fe95c5e2d060d3c768a09bc1d16e235840861420"},
- {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:22e6c9976e38f4d8c4a63bd8a8edac5307dffd3ee7e6026d97f3cc3a2dc02a0b"},
- {file = "rpds_py-0.20.0-cp39-none-win32.whl", hash = "sha256:569b3ea770c2717b730b61998b6c54996adee3cef69fc28d444f3e7920313cf7"},
- {file = "rpds_py-0.20.0-cp39-none-win_amd64.whl", hash = "sha256:e6900ecdd50ce0facf703f7a00df12374b74bbc8ad9fe0f6559947fb20f82364"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:617c7357272c67696fd052811e352ac54ed1d9b49ab370261a80d3b6ce385045"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9426133526f69fcaba6e42146b4e12d6bc6c839b8b555097020e2b78ce908dcc"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deb62214c42a261cb3eb04d474f7155279c1a8a8c30ac89b7dcb1721d92c3c02"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fcaeb7b57f1a1e071ebd748984359fef83ecb026325b9d4ca847c95bc7311c92"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d454b8749b4bd70dd0a79f428731ee263fa6995f83ccb8bada706e8d1d3ff89d"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d807dc2051abe041b6649681dce568f8e10668e3c1c6543ebae58f2d7e617855"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c20f0ddeb6e29126d45f89206b8291352b8c5b44384e78a6499d68b52ae511"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7f19250ceef892adf27f0399b9e5afad019288e9be756d6919cb58892129f51"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4f1ed4749a08379555cebf4650453f14452eaa9c43d0a95c49db50c18b7da075"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:dcedf0b42bcb4cfff4101d7771a10532415a6106062f005ab97d1d0ab5681c60"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:39ed0d010457a78f54090fafb5d108501b5aa5604cc22408fc1c0c77eac14344"},
- {file = "rpds_py-0.20.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:bb273176be34a746bdac0b0d7e4e2c467323d13640b736c4c477881a3220a989"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f918a1a130a6dfe1d7fe0f105064141342e7dd1611f2e6a21cd2f5c8cb1cfb3e"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f60012a73aa396be721558caa3a6fd49b3dd0033d1675c6d59c4502e870fcf0c"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d2b1ad682a3dfda2a4e8ad8572f3100f95fad98cb99faf37ff0ddfe9cbf9d03"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:614fdafe9f5f19c63ea02817fa4861c606a59a604a77c8cdef5aa01d28b97921"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fa518bcd7600c584bf42e6617ee8132869e877db2f76bcdc281ec6a4113a53ab"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f0475242f447cc6cb8a9dd486d68b2ef7fbee84427124c232bff5f63b1fe11e5"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f90a4cd061914a60bd51c68bcb4357086991bd0bb93d8aa66a6da7701370708f"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:def7400461c3a3f26e49078302e1c1b38f6752342c77e3cf72ce91ca69fb1bc1"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:65794e4048ee837494aea3c21a28ad5fc080994dfba5b036cf84de37f7ad5074"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:faefcc78f53a88f3076b7f8be0a8f8d35133a3ecf7f3770895c25f8813460f08"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:5b4f105deeffa28bbcdff6c49b34e74903139afa690e35d2d9e3c2c2fba18cec"},
- {file = "rpds_py-0.20.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fdfc3a892927458d98f3d55428ae46b921d1f7543b89382fdb483f5640daaec8"},
- {file = "rpds_py-0.20.0.tar.gz", hash = "sha256:d72a210824facfdaf8768cf2d7ca25a042c30320b3020de2fa04640920d4e121"},
+ {file = "rpds_py-0.22.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967"},
+ {file = "rpds_py-0.22.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec"},
+ {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c"},
+ {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09"},
+ {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00"},
+ {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf"},
+ {file = "rpds_py-0.22.3-cp310-cp310-win32.whl", hash = "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652"},
+ {file = "rpds_py-0.22.3-cp310-cp310-win_amd64.whl", hash = "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8"},
+ {file = "rpds_py-0.22.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f"},
+ {file = "rpds_py-0.22.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1"},
+ {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d"},
+ {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648"},
+ {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74"},
+ {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a"},
+ {file = "rpds_py-0.22.3-cp311-cp311-win32.whl", hash = "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64"},
+ {file = "rpds_py-0.22.3-cp311-cp311-win_amd64.whl", hash = "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c"},
+ {file = "rpds_py-0.22.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e"},
+ {file = "rpds_py-0.22.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15"},
+ {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059"},
+ {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e"},
+ {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61"},
+ {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7"},
+ {file = "rpds_py-0.22.3-cp312-cp312-win32.whl", hash = "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627"},
+ {file = "rpds_py-0.22.3-cp312-cp312-win_amd64.whl", hash = "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4"},
+ {file = "rpds_py-0.22.3-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84"},
+ {file = "rpds_py-0.22.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518"},
+ {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd"},
+ {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2"},
+ {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16"},
+ {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f"},
+ {file = "rpds_py-0.22.3-cp313-cp313-win32.whl", hash = "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de"},
+ {file = "rpds_py-0.22.3-cp313-cp313-win_amd64.whl", hash = "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-win32.whl", hash = "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730"},
+ {file = "rpds_py-0.22.3-cp313-cp313t-win_amd64.whl", hash = "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf"},
+ {file = "rpds_py-0.22.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea"},
+ {file = "rpds_py-0.22.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543"},
+ {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d"},
+ {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99"},
+ {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831"},
+ {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520"},
+ {file = "rpds_py-0.22.3-cp39-cp39-win32.whl", hash = "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9"},
+ {file = "rpds_py-0.22.3-cp39-cp39-win_amd64.whl", hash = "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe"},
+ {file = "rpds_py-0.22.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7"},
+ {file = "rpds_py-0.22.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6"},
+ {file = "rpds_py-0.22.3.tar.gz", hash = "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d"},
]
[[package]]
@@ -3074,29 +3321,29 @@ pyasn1 = ">=0.1.3"
[[package]]
name = "ruff"
-version = "0.8.0"
+version = "0.8.3"
description = "An extremely fast Python linter and code formatter, written in Rust."
optional = false
python-versions = ">=3.7"
files = [
- {file = "ruff-0.8.0-py3-none-linux_armv6l.whl", hash = "sha256:fcb1bf2cc6706adae9d79c8d86478677e3bbd4ced796ccad106fd4776d395fea"},
- {file = "ruff-0.8.0-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:295bb4c02d58ff2ef4378a1870c20af30723013f441c9d1637a008baaf928c8b"},
- {file = "ruff-0.8.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:7b1f1c76b47c18fa92ee78b60d2d20d7e866c55ee603e7d19c1e991fad933a9a"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb0d4f250a7711b67ad513fde67e8870109e5ce590a801c3722580fe98c33a99"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0e55cce9aa93c5d0d4e3937e47b169035c7e91c8655b0974e61bb79cf398d49c"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3f4cd64916d8e732ce6b87f3f5296a8942d285bbbc161acee7fe561134af64f9"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c5c1466be2a2ebdf7c5450dd5d980cc87c8ba6976fb82582fea18823da6fa362"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2dabfd05b96b7b8f2da00d53c514eea842bff83e41e1cceb08ae1966254a51df"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:facebdfe5a5af6b1588a1d26d170635ead6892d0e314477e80256ef4a8470cf3"},
- {file = "ruff-0.8.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87a8e86bae0dbd749c815211ca11e3a7bd559b9710746c559ed63106d382bd9c"},
- {file = "ruff-0.8.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:85e654f0ded7befe2d61eeaf3d3b1e4ef3894469cd664ffa85006c7720f1e4a2"},
- {file = "ruff-0.8.0-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:83a55679c4cb449fa527b8497cadf54f076603cc36779b2170b24f704171ce70"},
- {file = "ruff-0.8.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:812e2052121634cf13cd6fddf0c1871d0ead1aad40a1a258753c04c18bb71bbd"},
- {file = "ruff-0.8.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:780d5d8523c04202184405e60c98d7595bdb498c3c6abba3b6d4cdf2ca2af426"},
- {file = "ruff-0.8.0-py3-none-win32.whl", hash = "sha256:5fdb6efecc3eb60bba5819679466471fd7d13c53487df7248d6e27146e985468"},
- {file = "ruff-0.8.0-py3-none-win_amd64.whl", hash = "sha256:582891c57b96228d146725975fbb942e1f30a0c4ba19722e692ca3eb25cc9b4f"},
- {file = "ruff-0.8.0-py3-none-win_arm64.whl", hash = "sha256:ba93e6294e9a737cd726b74b09a6972e36bb511f9a102f1d9a7e1ce94dd206a6"},
- {file = "ruff-0.8.0.tar.gz", hash = "sha256:a7ccfe6331bf8c8dad715753e157457faf7351c2b69f62f32c165c2dbcbacd44"},
+ {file = "ruff-0.8.3-py3-none-linux_armv6l.whl", hash = "sha256:8d5d273ffffff0acd3db5bf626d4b131aa5a5ada1276126231c4174543ce20d6"},
+ {file = "ruff-0.8.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:e4d66a21de39f15c9757d00c50c8cdd20ac84f55684ca56def7891a025d7e939"},
+ {file = "ruff-0.8.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:c356e770811858bd20832af696ff6c7e884701115094f427b64b25093d6d932d"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c0a60a825e3e177116c84009d5ebaa90cf40dfab56e1358d1df4e29a9a14b13"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:75fb782f4db39501210ac093c79c3de581d306624575eddd7e4e13747e61ba18"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7f26bc76a133ecb09a38b7868737eded6941b70a6d34ef53a4027e83913b6502"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:01b14b2f72a37390c1b13477c1c02d53184f728be2f3ffc3ace5b44e9e87b90d"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:53babd6e63e31f4e96ec95ea0d962298f9f0d9cc5990a1bbb023a6baf2503a82"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1ae441ce4cf925b7f363d33cd6570c51435972d697e3e58928973994e56e1452"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7c65bc0cadce32255e93c57d57ecc2cca23149edd52714c0c5d6fa11ec328cd"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:5be450bb18f23f0edc5a4e5585c17a56ba88920d598f04a06bd9fd76d324cb20"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:8faeae3827eaa77f5721f09b9472a18c749139c891dbc17f45e72d8f2ca1f8fc"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:db503486e1cf074b9808403991663e4277f5c664d3fe237ee0d994d1305bb060"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:6567be9fb62fbd7a099209257fef4ad2c3153b60579818b31a23c886ed4147ea"},
+ {file = "ruff-0.8.3-py3-none-win32.whl", hash = "sha256:19048f2f878f3ee4583fc6cb23fb636e48c2635e30fb2022b3a1cd293402f964"},
+ {file = "ruff-0.8.3-py3-none-win_amd64.whl", hash = "sha256:f7df94f57d7418fa7c3ffb650757e0c2b96cf2501a0b192c18e4fb5571dfada9"},
+ {file = "ruff-0.8.3-py3-none-win_arm64.whl", hash = "sha256:fe2756edf68ea79707c8d68b78ca9a58ed9af22e430430491ee03e718b5e4936"},
+ {file = "ruff-0.8.3.tar.gz", hash = "sha256:5e7558304353b84279042fc584a4f4cb8a07ae79b2bf3da1a7551d960b5626d3"},
]
[[package]]
@@ -3187,13 +3434,13 @@ files = [
[[package]]
name = "six"
-version = "1.16.0"
+version = "1.17.0"
description = "Python 2 and 3 compatibility utilities"
optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
+python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
files = [
- {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
- {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
+ {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"},
+ {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"},
]
[[package]]
@@ -3304,13 +3551,13 @@ sqlcipher = ["sqlcipher3_binary"]
[[package]]
name = "starlette"
-version = "0.41.2"
+version = "0.41.3"
description = "The little ASGI library that shines."
optional = false
python-versions = ">=3.8"
files = [
- {file = "starlette-0.41.2-py3-none-any.whl", hash = "sha256:fbc189474b4731cf30fcef52f18a8d070e3f3b46c6a04c97579e85e6ffca942d"},
- {file = "starlette-0.41.2.tar.gz", hash = "sha256:9834fd799d1a87fd346deb76158668cfa0b0d56f85caefe8268e2d97c3468b62"},
+ {file = "starlette-0.41.3-py3-none-any.whl", hash = "sha256:44cedb2b7c77a9de33a8b74b2b90e9f50d11fcf25d8270ea525ad71a25374ff7"},
+ {file = "starlette-0.41.3.tar.gz", hash = "sha256:0e4ab3d16522a255be6b28260b938eae2482f98ce5cc934cb08dce8dc3ba5835"},
]
[package.dependencies]
@@ -3400,13 +3647,43 @@ test = ["pytest", "tornado (>=4.5)", "typeguard"]
[[package]]
name = "tomli"
-version = "2.0.1"
+version = "2.2.1"
description = "A lil' TOML parser"
optional = false
-python-versions = ">=3.7"
+python-versions = ">=3.8"
files = [
- {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
- {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
+ {file = "tomli-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678e4fa69e4575eb77d103de3df8a895e1591b48e740211bd1067378c69e8249"},
+ {file = "tomli-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:023aa114dd824ade0100497eb2318602af309e5a55595f76b626d6d9f3b7b0a6"},
+ {file = "tomli-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ece47d672db52ac607a3d9599a9d48dcb2f2f735c6c2d1f34130085bb12b112a"},
+ {file = "tomli-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6972ca9c9cc9f0acaa56a8ca1ff51e7af152a9f87fb64623e31d5c83700080ee"},
+ {file = "tomli-2.2.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c954d2250168d28797dd4e3ac5cf812a406cd5a92674ee4c8f123c889786aa8e"},
+ {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8dd28b3e155b80f4d54beb40a441d366adcfe740969820caf156c019fb5c7ec4"},
+ {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e59e304978767a54663af13c07b3d1af22ddee3bb2fb0618ca1593e4f593a106"},
+ {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:33580bccab0338d00994d7f16f4c4ec25b776af3ffaac1ed74e0b3fc95e885a8"},
+ {file = "tomli-2.2.1-cp311-cp311-win32.whl", hash = "sha256:465af0e0875402f1d226519c9904f37254b3045fc5084697cefb9bdde1ff99ff"},
+ {file = "tomli-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:2d0f2fdd22b02c6d81637a3c95f8cd77f995846af7414c5c4b8d0545afa1bc4b"},
+ {file = "tomli-2.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4a8f6e44de52d5e6c657c9fe83b562f5f4256d8ebbfe4ff922c495620a7f6cea"},
+ {file = "tomli-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8d57ca8095a641b8237d5b079147646153d22552f1c637fd3ba7f4b0b29167a8"},
+ {file = "tomli-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e340144ad7ae1533cb897d406382b4b6fede8890a03738ff1683af800d54192"},
+ {file = "tomli-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db2b95f9de79181805df90bedc5a5ab4c165e6ec3fe99f970d0e302f384ad222"},
+ {file = "tomli-2.2.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:40741994320b232529c802f8bc86da4e1aa9f413db394617b9a256ae0f9a7f77"},
+ {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:400e720fe168c0f8521520190686ef8ef033fb19fc493da09779e592861b78c6"},
+ {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:02abe224de6ae62c19f090f68da4e27b10af2b93213d36cf44e6e1c5abd19fdd"},
+ {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b82ebccc8c8a36f2094e969560a1b836758481f3dc360ce9a3277c65f374285e"},
+ {file = "tomli-2.2.1-cp312-cp312-win32.whl", hash = "sha256:889f80ef92701b9dbb224e49ec87c645ce5df3fa2cc548664eb8a25e03127a98"},
+ {file = "tomli-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4"},
+ {file = "tomli-2.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f4039b9cbc3048b2416cc57ab3bda989a6fcf9b36cf8937f01a6e731b64f80d7"},
+ {file = "tomli-2.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:286f0ca2ffeeb5b9bd4fcc8d6c330534323ec51b2f52da063b11c502da16f30c"},
+ {file = "tomli-2.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a92ef1a44547e894e2a17d24e7557a5e85a9e1d0048b0b5e7541f76c5032cb13"},
+ {file = "tomli-2.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9316dc65bed1684c9a98ee68759ceaed29d229e985297003e494aa825ebb0281"},
+ {file = "tomli-2.2.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e85e99945e688e32d5a35c1ff38ed0b3f41f43fad8df0bdf79f72b2ba7bc5272"},
+ {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ac065718db92ca818f8d6141b5f66369833d4a80a9d74435a268c52bdfa73140"},
+ {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:d920f33822747519673ee656a4b6ac33e382eca9d331c87770faa3eef562aeb2"},
+ {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a198f10c4d1b1375d7687bc25294306e551bf1abfa4eace6650070a5c1ae2744"},
+ {file = "tomli-2.2.1-cp313-cp313-win32.whl", hash = "sha256:d3f5614314d758649ab2ab3a62d4f2004c825922f9e370b29416484086b264ec"},
+ {file = "tomli-2.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69"},
+ {file = "tomli-2.2.1-py3-none-any.whl", hash = "sha256:cb55c73c5f4408779d0cf3eef9f762b9c9f147a77de7b258bef0a5628adc85cc"},
+ {file = "tomli-2.2.1.tar.gz", hash = "sha256:cd45e1dc79c835ce60f7404ec8119f2eb06d38b1deba146f07ced3bbc44505ff"},
]
[[package]]
@@ -3422,20 +3699,21 @@ files = [
[[package]]
name = "tqdm"
-version = "4.66.5"
+version = "4.67.1"
description = "Fast, Extensible Progress Meter"
optional = false
python-versions = ">=3.7"
files = [
- {file = "tqdm-4.66.5-py3-none-any.whl", hash = "sha256:90279a3770753eafc9194a0364852159802111925aa30eb3f9d85b0e805ac7cd"},
- {file = "tqdm-4.66.5.tar.gz", hash = "sha256:e1020aef2e5096702d8a025ac7d16b1577279c9d63f8375b63083e9a5f0fcbad"},
+ {file = "tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2"},
+ {file = "tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2"},
]
[package.dependencies]
colorama = {version = "*", markers = "platform_system == \"Windows\""}
[package.extras]
-dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"]
+dev = ["nbval", "pytest (>=6)", "pytest-asyncio (>=0.24)", "pytest-cov", "pytest-timeout"]
+discord = ["requests"]
notebook = ["ipywidgets (>=6)"]
slack = ["slack-sdk"]
telegram = ["requests"]
@@ -3554,85 +3832,92 @@ standard = ["colorama (>=0.4)", "httptools (>=0.6.3)", "python-dotenv (>=0.13)",
[[package]]
name = "uvloop"
-version = "0.20.0"
+version = "0.21.0"
description = "Fast implementation of asyncio event loop on top of libuv"
optional = false
python-versions = ">=3.8.0"
files = [
- {file = "uvloop-0.20.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:9ebafa0b96c62881d5cafa02d9da2e44c23f9f0cd829f3a32a6aff771449c996"},
- {file = "uvloop-0.20.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:35968fc697b0527a06e134999eef859b4034b37aebca537daeb598b9d45a137b"},
- {file = "uvloop-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b16696f10e59d7580979b420eedf6650010a4a9c3bd8113f24a103dfdb770b10"},
- {file = "uvloop-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b04d96188d365151d1af41fa2d23257b674e7ead68cfd61c725a422764062ae"},
- {file = "uvloop-0.20.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:94707205efbe809dfa3a0d09c08bef1352f5d3d6612a506f10a319933757c006"},
- {file = "uvloop-0.20.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:89e8d33bb88d7263f74dc57d69f0063e06b5a5ce50bb9a6b32f5fcbe655f9e73"},
- {file = "uvloop-0.20.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e50289c101495e0d1bb0bfcb4a60adde56e32f4449a67216a1ab2750aa84f037"},
- {file = "uvloop-0.20.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e237f9c1e8a00e7d9ddaa288e535dc337a39bcbf679f290aee9d26df9e72bce9"},
- {file = "uvloop-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:746242cd703dc2b37f9d8b9f173749c15e9a918ddb021575a0205ec29a38d31e"},
- {file = "uvloop-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82edbfd3df39fb3d108fc079ebc461330f7c2e33dbd002d146bf7c445ba6e756"},
- {file = "uvloop-0.20.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:80dc1b139516be2077b3e57ce1cb65bfed09149e1d175e0478e7a987863b68f0"},
- {file = "uvloop-0.20.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4f44af67bf39af25db4c1ac27e82e9665717f9c26af2369c404be865c8818dcf"},
- {file = "uvloop-0.20.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:4b75f2950ddb6feed85336412b9a0c310a2edbcf4cf931aa5cfe29034829676d"},
- {file = "uvloop-0.20.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:77fbc69c287596880ecec2d4c7a62346bef08b6209749bf6ce8c22bbaca0239e"},
- {file = "uvloop-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6462c95f48e2d8d4c993a2950cd3d31ab061864d1c226bbf0ee2f1a8f36674b9"},
- {file = "uvloop-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:649c33034979273fa71aa25d0fe120ad1777c551d8c4cd2c0c9851d88fcb13ab"},
- {file = "uvloop-0.20.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3a609780e942d43a275a617c0839d85f95c334bad29c4c0918252085113285b5"},
- {file = "uvloop-0.20.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:aea15c78e0d9ad6555ed201344ae36db5c63d428818b4b2a42842b3870127c00"},
- {file = "uvloop-0.20.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f0e94b221295b5e69de57a1bd4aeb0b3a29f61be6e1b478bb8a69a73377db7ba"},
- {file = "uvloop-0.20.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:fee6044b64c965c425b65a4e17719953b96e065c5b7e09b599ff332bb2744bdf"},
- {file = "uvloop-0.20.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:265a99a2ff41a0fd56c19c3838b29bf54d1d177964c300dad388b27e84fd7847"},
- {file = "uvloop-0.20.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b10c2956efcecb981bf9cfb8184d27d5d64b9033f917115a960b83f11bfa0d6b"},
- {file = "uvloop-0.20.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e7d61fe8e8d9335fac1bf8d5d82820b4808dd7a43020c149b63a1ada953d48a6"},
- {file = "uvloop-0.20.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2beee18efd33fa6fdb0976e18475a4042cd31c7433c866e8a09ab604c7c22ff2"},
- {file = "uvloop-0.20.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d8c36fdf3e02cec92aed2d44f63565ad1522a499c654f07935c8f9d04db69e95"},
- {file = "uvloop-0.20.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a0fac7be202596c7126146660725157d4813aa29a4cc990fe51346f75ff8fde7"},
- {file = "uvloop-0.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d0fba61846f294bce41eb44d60d58136090ea2b5b99efd21cbdf4e21927c56a"},
- {file = "uvloop-0.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95720bae002ac357202e0d866128eb1ac82545bcf0b549b9abe91b5178d9b541"},
- {file = "uvloop-0.20.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:36c530d8fa03bfa7085af54a48f2ca16ab74df3ec7108a46ba82fd8b411a2315"},
- {file = "uvloop-0.20.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e97152983442b499d7a71e44f29baa75b3b02e65d9c44ba53b10338e98dedb66"},
- {file = "uvloop-0.20.0.tar.gz", hash = "sha256:4603ca714a754fc8d9b197e325db25b2ea045385e8a3ad05d3463de725fdf469"},
+ {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ec7e6b09a6fdded42403182ab6b832b71f4edaf7f37a9a0e371a01db5f0cb45f"},
+ {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:196274f2adb9689a289ad7d65700d37df0c0930fd8e4e743fa4834e850d7719d"},
+ {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f38b2e090258d051d68a5b14d1da7203a3c3677321cf32a95a6f4db4dd8b6f26"},
+ {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87c43e0f13022b998eb9b973b5e97200c8b90823454d4bc06ab33829e09fb9bb"},
+ {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:10d66943def5fcb6e7b37310eb6b5639fd2ccbc38df1177262b0640c3ca68c1f"},
+ {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:67dd654b8ca23aed0a8e99010b4c34aca62f4b7fce88f39d452ed7622c94845c"},
+ {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c0f3fa6200b3108919f8bdabb9a7f87f20e7097ea3c543754cabc7d717d95cf8"},
+ {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0878c2640cf341b269b7e128b1a5fed890adc4455513ca710d77d5e93aa6d6a0"},
+ {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9fb766bb57b7388745d8bcc53a359b116b8a04c83a2288069809d2b3466c37e"},
+ {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a375441696e2eda1c43c44ccb66e04d61ceeffcd76e4929e527b7fa401b90fb"},
+ {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:baa0e6291d91649c6ba4ed4b2f982f9fa165b5bbd50a9e203c416a2797bab3c6"},
+ {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4509360fcc4c3bd2c70d87573ad472de40c13387f5fda8cb58350a1d7475e58d"},
+ {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:359ec2c888397b9e592a889c4d72ba3d6befba8b2bb01743f72fffbde663b59c"},
+ {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f7089d2dc73179ce5ac255bdf37c236a9f914b264825fdaacaded6990a7fb4c2"},
+ {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baa4dcdbd9ae0a372f2167a207cd98c9f9a1ea1188a8a526431eef2f8116cc8d"},
+ {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86975dca1c773a2c9864f4c52c5a55631038e387b47eaf56210f873887b6c8dc"},
+ {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:461d9ae6660fbbafedd07559c6a2e57cd553b34b0065b6550685f6653a98c1cb"},
+ {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:183aef7c8730e54c9a3ee3227464daed66e37ba13040bb3f350bc2ddc040f22f"},
+ {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:bfd55dfcc2a512316e65f16e503e9e450cab148ef11df4e4e679b5e8253a5281"},
+ {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:787ae31ad8a2856fc4e7c095341cccc7209bd657d0e71ad0dc2ea83c4a6fa8af"},
+ {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ee4d4ef48036ff6e5cfffb09dd192c7a5027153948d85b8da7ff705065bacc6"},
+ {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3df876acd7ec037a3d005b3ab85a7e4110422e4d9c1571d4fc89b0fc41b6816"},
+ {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bd53ecc9a0f3d87ab847503c2e1552b690362e005ab54e8a48ba97da3924c0dc"},
+ {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a5c39f217ab3c663dc699c04cbd50c13813e31d917642d459fdcec07555cc553"},
+ {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:17df489689befc72c39a08359efac29bbee8eee5209650d4b9f34df73d22e414"},
+ {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bc09f0ff191e61c2d592a752423c767b4ebb2986daa9ed62908e2b1b9a9ae206"},
+ {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0ce1b49560b1d2d8a2977e3ba4afb2414fb46b86a1b64056bc4ab929efdafbe"},
+ {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e678ad6fe52af2c58d2ae3c73dc85524ba8abe637f134bf3564ed07f555c5e79"},
+ {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:460def4412e473896ef179a1671b40c039c7012184b627898eea5072ef6f017a"},
+ {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:10da8046cc4a8f12c91a1c39d1dd1585c41162a15caaef165c2174db9ef18bdc"},
+ {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c097078b8031190c934ed0ebfee8cc5f9ba9642e6eb88322b9958b649750f72b"},
+ {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:46923b0b5ee7fc0020bef24afe7836cb068f5050ca04caf6b487c513dc1a20b2"},
+ {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:53e420a3afe22cdcf2a0f4846e377d16e718bc70103d7088a4f7623567ba5fb0"},
+ {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88cb67cdbc0e483da00af0b2c3cdad4b7c61ceb1ee0f33fe00e09c81e3a6cb75"},
+ {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:221f4f2a1f46032b403bf3be628011caf75428ee3cc204a22addf96f586b19fd"},
+ {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2d1f581393673ce119355d56da84fe1dd9d2bb8b3d13ce792524e1607139feff"},
+ {file = "uvloop-0.21.0.tar.gz", hash = "sha256:3bf12b0fda68447806a7ad847bfa591613177275d35b6724b1ee573faa3704e3"},
]
[package.extras]
+dev = ["Cython (>=3.0,<4.0)", "setuptools (>=60)"]
docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)"]
-test = ["Cython (>=0.29.36,<0.30.0)", "aiohttp (==3.9.0b0)", "aiohttp (>=3.8.1)", "flake8 (>=5.0,<6.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=23.0.0,<23.1.0)", "pycodestyle (>=2.9.0,<2.10.0)"]
+test = ["aiohttp (>=3.10.5)", "flake8 (>=5.0,<6.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=23.0.0,<23.1.0)", "pycodestyle (>=2.9.0,<2.10.0)"]
[[package]]
name = "watchdog"
-version = "5.0.3"
+version = "6.0.0"
description = "Filesystem events monitoring"
optional = false
python-versions = ">=3.9"
files = [
- {file = "watchdog-5.0.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:85527b882f3facda0579bce9d743ff7f10c3e1e0db0a0d0e28170a7d0e5ce2ea"},
- {file = "watchdog-5.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:53adf73dcdc0ef04f7735066b4a57a4cd3e49ef135daae41d77395f0b5b692cb"},
- {file = "watchdog-5.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e25adddab85f674acac303cf1f5835951345a56c5f7f582987d266679979c75b"},
- {file = "watchdog-5.0.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f01f4a3565a387080dc49bdd1fefe4ecc77f894991b88ef927edbfa45eb10818"},
- {file = "watchdog-5.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:91b522adc25614cdeaf91f7897800b82c13b4b8ac68a42ca959f992f6990c490"},
- {file = "watchdog-5.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d52db5beb5e476e6853da2e2d24dbbbed6797b449c8bf7ea118a4ee0d2c9040e"},
- {file = "watchdog-5.0.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:94d11b07c64f63f49876e0ab8042ae034674c8653bfcdaa8c4b32e71cfff87e8"},
- {file = "watchdog-5.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:349c9488e1d85d0a58e8cb14222d2c51cbc801ce11ac3936ab4c3af986536926"},
- {file = "watchdog-5.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:53a3f10b62c2d569e260f96e8d966463dec1a50fa4f1b22aec69e3f91025060e"},
- {file = "watchdog-5.0.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:950f531ec6e03696a2414b6308f5c6ff9dab7821a768c9d5788b1314e9a46ca7"},
- {file = "watchdog-5.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ae6deb336cba5d71476caa029ceb6e88047fc1dc74b62b7c4012639c0b563906"},
- {file = "watchdog-5.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1021223c08ba8d2d38d71ec1704496471ffd7be42cfb26b87cd5059323a389a1"},
- {file = "watchdog-5.0.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:752fb40efc7cc8d88ebc332b8f4bcbe2b5cc7e881bccfeb8e25054c00c994ee3"},
- {file = "watchdog-5.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a2e8f3f955d68471fa37b0e3add18500790d129cc7efe89971b8a4cc6fdeb0b2"},
- {file = "watchdog-5.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b8ca4d854adcf480bdfd80f46fdd6fb49f91dd020ae11c89b3a79e19454ec627"},
- {file = "watchdog-5.0.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:90a67d7857adb1d985aca232cc9905dd5bc4803ed85cfcdcfcf707e52049eda7"},
- {file = "watchdog-5.0.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:720ef9d3a4f9ca575a780af283c8fd3a0674b307651c1976714745090da5a9e8"},
- {file = "watchdog-5.0.3-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:223160bb359281bb8e31c8f1068bf71a6b16a8ad3d9524ca6f523ac666bb6a1e"},
- {file = "watchdog-5.0.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:560135542c91eaa74247a2e8430cf83c4342b29e8ad4f520ae14f0c8a19cfb5b"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_aarch64.whl", hash = "sha256:dd021efa85970bd4824acacbb922066159d0f9e546389a4743d56919b6758b91"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_armv7l.whl", hash = "sha256:78864cc8f23dbee55be34cc1494632a7ba30263951b5b2e8fc8286b95845f82c"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_i686.whl", hash = "sha256:1e9679245e3ea6498494b3028b90c7b25dbb2abe65c7d07423ecfc2d6218ff7c"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_ppc64.whl", hash = "sha256:9413384f26b5d050b6978e6fcd0c1e7f0539be7a4f1a885061473c5deaa57221"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:294b7a598974b8e2c6123d19ef15de9abcd282b0fbbdbc4d23dfa812959a9e05"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_s390x.whl", hash = "sha256:26dd201857d702bdf9d78c273cafcab5871dd29343748524695cecffa44a8d97"},
- {file = "watchdog-5.0.3-py3-none-manylinux2014_x86_64.whl", hash = "sha256:0f9332243355643d567697c3e3fa07330a1d1abf981611654a1f2bf2175612b7"},
- {file = "watchdog-5.0.3-py3-none-win32.whl", hash = "sha256:c66f80ee5b602a9c7ab66e3c9f36026590a0902db3aea414d59a2f55188c1f49"},
- {file = "watchdog-5.0.3-py3-none-win_amd64.whl", hash = "sha256:f00b4cf737f568be9665563347a910f8bdc76f88c2970121c86243c8cfdf90e9"},
- {file = "watchdog-5.0.3-py3-none-win_ia64.whl", hash = "sha256:49f4d36cb315c25ea0d946e018c01bb028048023b9e103d3d3943f58e109dd45"},
- {file = "watchdog-5.0.3.tar.gz", hash = "sha256:108f42a7f0345042a854d4d0ad0834b741d421330d5f575b81cb27b883500176"},
+ {file = "watchdog-6.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d1cdb490583ebd691c012b3d6dae011000fe42edb7a82ece80965b42abd61f26"},
+ {file = "watchdog-6.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bc64ab3bdb6a04d69d4023b29422170b74681784ffb9463ed4870cf2f3e66112"},
+ {file = "watchdog-6.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c897ac1b55c5a1461e16dae288d22bb2e412ba9807df8397a635d88f671d36c3"},
+ {file = "watchdog-6.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6eb11feb5a0d452ee41f824e271ca311a09e250441c262ca2fd7ebcf2461a06c"},
+ {file = "watchdog-6.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ef810fbf7b781a5a593894e4f439773830bdecb885e6880d957d5b9382a960d2"},
+ {file = "watchdog-6.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:afd0fe1b2270917c5e23c2a65ce50c2a4abb63daafb0d419fde368e272a76b7c"},
+ {file = "watchdog-6.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948"},
+ {file = "watchdog-6.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860"},
+ {file = "watchdog-6.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0"},
+ {file = "watchdog-6.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c"},
+ {file = "watchdog-6.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134"},
+ {file = "watchdog-6.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b"},
+ {file = "watchdog-6.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e6f0e77c9417e7cd62af82529b10563db3423625c5fce018430b249bf977f9e8"},
+ {file = "watchdog-6.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:90c8e78f3b94014f7aaae121e6b909674df5b46ec24d6bebc45c44c56729af2a"},
+ {file = "watchdog-6.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e7631a77ffb1f7d2eefa4445ebbee491c720a5661ddf6df3498ebecae5ed375c"},
+ {file = "watchdog-6.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:c7ac31a19f4545dd92fc25d200694098f42c9a8e391bc00bdd362c5736dbf881"},
+ {file = "watchdog-6.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9513f27a1a582d9808cf21a07dae516f0fab1cf2d7683a742c498b93eedabb11"},
+ {file = "watchdog-6.0.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7a0e56874cfbc4b9b05c60c8a1926fedf56324bb08cfbc188969777940aef3aa"},
+ {file = "watchdog-6.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:e6439e374fc012255b4ec786ae3c4bc838cd7309a540e5fe0952d03687d8804e"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c"},
+ {file = "watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2"},
+ {file = "watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a"},
+ {file = "watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680"},
+ {file = "watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f"},
+ {file = "watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282"},
]
[package.extras]
@@ -3640,94 +3925,82 @@ watchmedo = ["PyYAML (>=3.10)"]
[[package]]
name = "watchfiles"
-version = "0.24.0"
+version = "1.0.3"
description = "Simple, modern and high performance file watching and code reload in python."
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "watchfiles-0.24.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:083dc77dbdeef09fa44bb0f4d1df571d2e12d8a8f985dccde71ac3ac9ac067a0"},
- {file = "watchfiles-0.24.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e94e98c7cb94cfa6e071d401ea3342767f28eb5a06a58fafdc0d2a4974f4f35c"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82ae557a8c037c42a6ef26c494d0631cacca040934b101d001100ed93d43f361"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:acbfa31e315a8f14fe33e3542cbcafc55703b8f5dcbb7c1eecd30f141df50db3"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b74fdffce9dfcf2dc296dec8743e5b0332d15df19ae464f0e249aa871fc1c571"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:449f43f49c8ddca87c6b3980c9284cab6bd1f5c9d9a2b00012adaaccd5e7decd"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4abf4ad269856618f82dee296ac66b0cd1d71450fc3c98532d93798e73399b7a"},
- {file = "watchfiles-0.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f895d785eb6164678ff4bb5cc60c5996b3ee6df3edb28dcdeba86a13ea0465e"},
- {file = "watchfiles-0.24.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7ae3e208b31be8ce7f4c2c0034f33406dd24fbce3467f77223d10cd86778471c"},
- {file = "watchfiles-0.24.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2efec17819b0046dde35d13fb8ac7a3ad877af41ae4640f4109d9154ed30a188"},
- {file = "watchfiles-0.24.0-cp310-none-win32.whl", hash = "sha256:6bdcfa3cd6fdbdd1a068a52820f46a815401cbc2cb187dd006cb076675e7b735"},
- {file = "watchfiles-0.24.0-cp310-none-win_amd64.whl", hash = "sha256:54ca90a9ae6597ae6dc00e7ed0a040ef723f84ec517d3e7ce13e63e4bc82fa04"},
- {file = "watchfiles-0.24.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:bdcd5538e27f188dd3c804b4a8d5f52a7fc7f87e7fd6b374b8e36a4ca03db428"},
- {file = "watchfiles-0.24.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2dadf8a8014fde6addfd3c379e6ed1a981c8f0a48292d662e27cabfe4239c83c"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6509ed3f467b79d95fc62a98229f79b1a60d1b93f101e1c61d10c95a46a84f43"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8360f7314a070c30e4c976b183d1d8d1585a4a50c5cb603f431cebcbb4f66327"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:316449aefacf40147a9efaf3bd7c9bdd35aaba9ac5d708bd1eb5763c9a02bef5"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:73bde715f940bea845a95247ea3e5eb17769ba1010efdc938ffcb967c634fa61"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3770e260b18e7f4e576edca4c0a639f704088602e0bc921c5c2e721e3acb8d15"},
- {file = "watchfiles-0.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa0fd7248cf533c259e59dc593a60973a73e881162b1a2f73360547132742823"},
- {file = "watchfiles-0.24.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d7a2e3b7f5703ffbd500dabdefcbc9eafeff4b9444bbdd5d83d79eedf8428fab"},
- {file = "watchfiles-0.24.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d831ee0a50946d24a53821819b2327d5751b0c938b12c0653ea5be7dea9c82ec"},
- {file = "watchfiles-0.24.0-cp311-none-win32.whl", hash = "sha256:49d617df841a63b4445790a254013aea2120357ccacbed00253f9c2b5dc24e2d"},
- {file = "watchfiles-0.24.0-cp311-none-win_amd64.whl", hash = "sha256:d3dcb774e3568477275cc76554b5a565024b8ba3a0322f77c246bc7111c5bb9c"},
- {file = "watchfiles-0.24.0-cp311-none-win_arm64.whl", hash = "sha256:9301c689051a4857d5b10777da23fafb8e8e921bcf3abe6448a058d27fb67633"},
- {file = "watchfiles-0.24.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7211b463695d1e995ca3feb38b69227e46dbd03947172585ecb0588f19b0d87a"},
- {file = "watchfiles-0.24.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4b8693502d1967b00f2fb82fc1e744df128ba22f530e15b763c8d82baee15370"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdab9555053399318b953a1fe1f586e945bc8d635ce9d05e617fd9fe3a4687d6"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:34e19e56d68b0dad5cff62273107cf5d9fbaf9d75c46277aa5d803b3ef8a9e9b"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:41face41f036fee09eba33a5b53a73e9a43d5cb2c53dad8e61fa6c9f91b5a51e"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5148c2f1ea043db13ce9b0c28456e18ecc8f14f41325aa624314095b6aa2e9ea"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7e4bd963a935aaf40b625c2499f3f4f6bbd0c3776f6d3bc7c853d04824ff1c9f"},
- {file = "watchfiles-0.24.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c79d7719d027b7a42817c5d96461a99b6a49979c143839fc37aa5748c322f234"},
- {file = "watchfiles-0.24.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:32aa53a9a63b7f01ed32e316e354e81e9da0e6267435c7243bf8ae0f10b428ef"},
- {file = "watchfiles-0.24.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ce72dba6a20e39a0c628258b5c308779b8697f7676c254a845715e2a1039b968"},
- {file = "watchfiles-0.24.0-cp312-none-win32.whl", hash = "sha256:d9018153cf57fc302a2a34cb7564870b859ed9a732d16b41a9b5cb2ebed2d444"},
- {file = "watchfiles-0.24.0-cp312-none-win_amd64.whl", hash = "sha256:551ec3ee2a3ac9cbcf48a4ec76e42c2ef938a7e905a35b42a1267fa4b1645896"},
- {file = "watchfiles-0.24.0-cp312-none-win_arm64.whl", hash = "sha256:b52a65e4ea43c6d149c5f8ddb0bef8d4a1e779b77591a458a893eb416624a418"},
- {file = "watchfiles-0.24.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:3d2e3ab79a1771c530233cadfd277fcc762656d50836c77abb2e5e72b88e3a48"},
- {file = "watchfiles-0.24.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:327763da824817b38ad125dcd97595f942d720d32d879f6c4ddf843e3da3fe90"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd82010f8ab451dabe36054a1622870166a67cf3fce894f68895db6f74bbdc94"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d64ba08db72e5dfd5c33be1e1e687d5e4fcce09219e8aee893a4862034081d4e"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1cf1f6dd7825053f3d98f6d33f6464ebdd9ee95acd74ba2c34e183086900a827"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:43e3e37c15a8b6fe00c1bce2473cfa8eb3484bbeecf3aefbf259227e487a03df"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:88bcd4d0fe1d8ff43675360a72def210ebad3f3f72cabfeac08d825d2639b4ab"},
- {file = "watchfiles-0.24.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:999928c6434372fde16c8f27143d3e97201160b48a614071261701615a2a156f"},
- {file = "watchfiles-0.24.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:30bbd525c3262fd9f4b1865cb8d88e21161366561cd7c9e1194819e0a33ea86b"},
- {file = "watchfiles-0.24.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:edf71b01dec9f766fb285b73930f95f730bb0943500ba0566ae234b5c1618c18"},
- {file = "watchfiles-0.24.0-cp313-none-win32.whl", hash = "sha256:f4c96283fca3ee09fb044f02156d9570d156698bc3734252175a38f0e8975f07"},
- {file = "watchfiles-0.24.0-cp313-none-win_amd64.whl", hash = "sha256:a974231b4fdd1bb7f62064a0565a6b107d27d21d9acb50c484d2cdba515b9366"},
- {file = "watchfiles-0.24.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:ee82c98bed9d97cd2f53bdb035e619309a098ea53ce525833e26b93f673bc318"},
- {file = "watchfiles-0.24.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fd92bbaa2ecdb7864b7600dcdb6f2f1db6e0346ed425fbd01085be04c63f0b05"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f83df90191d67af5a831da3a33dd7628b02a95450e168785586ed51e6d28943c"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fca9433a45f18b7c779d2bae7beeec4f740d28b788b117a48368d95a3233ed83"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b995bfa6bf01a9e09b884077a6d37070464b529d8682d7691c2d3b540d357a0c"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ed9aba6e01ff6f2e8285e5aa4154e2970068fe0fc0998c4380d0e6278222269b"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5171ef898299c657685306d8e1478a45e9303ddcd8ac5fed5bd52ad4ae0b69b"},
- {file = "watchfiles-0.24.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4933a508d2f78099162da473841c652ad0de892719043d3f07cc83b33dfd9d91"},
- {file = "watchfiles-0.24.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:95cf3b95ea665ab03f5a54765fa41abf0529dbaf372c3b83d91ad2cfa695779b"},
- {file = "watchfiles-0.24.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:01def80eb62bd5db99a798d5e1f5f940ca0a05986dcfae21d833af7a46f7ee22"},
- {file = "watchfiles-0.24.0-cp38-none-win32.whl", hash = "sha256:4d28cea3c976499475f5b7a2fec6b3a36208656963c1a856d328aeae056fc5c1"},
- {file = "watchfiles-0.24.0-cp38-none-win_amd64.whl", hash = "sha256:21ab23fdc1208086d99ad3f69c231ba265628014d4aed31d4e8746bd59e88cd1"},
- {file = "watchfiles-0.24.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b665caeeda58625c3946ad7308fbd88a086ee51ccb706307e5b1fa91556ac886"},
- {file = "watchfiles-0.24.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5c51749f3e4e269231510da426ce4a44beb98db2dce9097225c338f815b05d4f"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82b2509f08761f29a0fdad35f7e1638b8ab1adfa2666d41b794090361fb8b855"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a60e2bf9dc6afe7f743e7c9b149d1fdd6dbf35153c78fe3a14ae1a9aee3d98b"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f7d9b87c4c55e3ea8881dfcbf6d61ea6775fffed1fedffaa60bd047d3c08c430"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:78470906a6be5199524641f538bd2c56bb809cd4bf29a566a75051610bc982c3"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:07cdef0c84c03375f4e24642ef8d8178e533596b229d32d2bbd69e5128ede02a"},
- {file = "watchfiles-0.24.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d337193bbf3e45171c8025e291530fb7548a93c45253897cd764a6a71c937ed9"},
- {file = "watchfiles-0.24.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ec39698c45b11d9694a1b635a70946a5bad066b593af863460a8e600f0dff1ca"},
- {file = "watchfiles-0.24.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2e28d91ef48eab0afb939fa446d8ebe77e2f7593f5f463fd2bb2b14132f95b6e"},
- {file = "watchfiles-0.24.0-cp39-none-win32.whl", hash = "sha256:7138eff8baa883aeaa074359daabb8b6c1e73ffe69d5accdc907d62e50b1c0da"},
- {file = "watchfiles-0.24.0-cp39-none-win_amd64.whl", hash = "sha256:b3ef2c69c655db63deb96b3c3e587084612f9b1fa983df5e0c3379d41307467f"},
- {file = "watchfiles-0.24.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:632676574429bee8c26be8af52af20e0c718cc7f5f67f3fb658c71928ccd4f7f"},
- {file = "watchfiles-0.24.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:a2a9891723a735d3e2540651184be6fd5b96880c08ffe1a98bae5017e65b544b"},
- {file = "watchfiles-0.24.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a7fa2bc0efef3e209a8199fd111b8969fe9db9c711acc46636686331eda7dd4"},
- {file = "watchfiles-0.24.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01550ccf1d0aed6ea375ef259706af76ad009ef5b0203a3a4cce0f6024f9b68a"},
- {file = "watchfiles-0.24.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:96619302d4374de5e2345b2b622dc481257a99431277662c30f606f3e22f42be"},
- {file = "watchfiles-0.24.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:85d5f0c7771dcc7a26c7a27145059b6bb0ce06e4e751ed76cdf123d7039b60b5"},
- {file = "watchfiles-0.24.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:951088d12d339690a92cef2ec5d3cfd957692834c72ffd570ea76a6790222777"},
- {file = "watchfiles-0.24.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49fb58bcaa343fedc6a9e91f90195b20ccb3135447dc9e4e2570c3a39565853e"},
- {file = "watchfiles-0.24.0.tar.gz", hash = "sha256:afb72325b74fa7a428c009c1b8be4b4d7c2afedafb2982827ef2156646df2fe1"},
+ {file = "watchfiles-1.0.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:1da46bb1eefb5a37a8fb6fd52ad5d14822d67c498d99bda8754222396164ae42"},
+ {file = "watchfiles-1.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2b961b86cd3973f5822826017cad7f5a75795168cb645c3a6b30c349094e02e3"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34e87c7b3464d02af87f1059fedda5484e43b153ef519e4085fe1a03dd94801e"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d9dd2b89a16cf7ab9c1170b5863e68de6bf83db51544875b25a5f05a7269e678"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b4691234d31686dca133c920f94e478b548a8e7c750f28dbbc2e4333e0d3da9"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:90b0fe1fcea9bd6e3084b44875e179b4adcc4057a3b81402658d0eb58c98edf8"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0b90651b4cf9e158d01faa0833b073e2e37719264bcee3eac49fc3c74e7d304b"},
+ {file = "watchfiles-1.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c2e9fe695ff151b42ab06501820f40d01310fbd58ba24da8923ace79cf6d702d"},
+ {file = "watchfiles-1.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62691f1c0894b001c7cde1195c03b7801aaa794a837bd6eef24da87d1542838d"},
+ {file = "watchfiles-1.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:275c1b0e942d335fccb6014d79267d1b9fa45b5ac0639c297f1e856f2f532552"},
+ {file = "watchfiles-1.0.3-cp310-cp310-win32.whl", hash = "sha256:06ce08549e49ba69ccc36fc5659a3d0ff4e3a07d542b895b8a9013fcab46c2dc"},
+ {file = "watchfiles-1.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:f280b02827adc9d87f764972fbeb701cf5611f80b619c20568e1982a277d6146"},
+ {file = "watchfiles-1.0.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ffe709b1d0bc2e9921257569675674cafb3a5f8af689ab9f3f2b3f88775b960f"},
+ {file = "watchfiles-1.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:418c5ce332f74939ff60691e5293e27c206c8164ce2b8ce0d9abf013003fb7fe"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f492d2907263d6d0d52f897a68647195bc093dafed14508a8d6817973586b6b"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:48c9f3bc90c556a854f4cab6a79c16974099ccfa3e3e150673d82d47a4bc92c9"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:75d3bcfa90454dba8df12adc86b13b6d85fda97d90e708efc036c2760cc6ba44"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5691340f259b8f76b45fb31b98e594d46c36d1dc8285efa7975f7f50230c9093"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1e263cc718545b7f897baeac1f00299ab6fabe3e18caaacacb0edf6d5f35513c"},
+ {file = "watchfiles-1.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c6cf7709ed3e55704cc06f6e835bf43c03bc8e3cb8ff946bf69a2e0a78d9d77"},
+ {file = "watchfiles-1.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:703aa5e50e465be901e0e0f9d5739add15e696d8c26c53bc6fc00eb65d7b9469"},
+ {file = "watchfiles-1.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bfcae6aecd9e0cb425f5145afee871465b98b75862e038d42fe91fd753ddd780"},
+ {file = "watchfiles-1.0.3-cp311-cp311-win32.whl", hash = "sha256:6a76494d2c5311584f22416c5a87c1e2cb954ff9b5f0988027bc4ef2a8a67181"},
+ {file = "watchfiles-1.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:cf745cbfad6389c0e331786e5fe9ae3f06e9d9c2ce2432378e1267954793975c"},
+ {file = "watchfiles-1.0.3-cp311-cp311-win_arm64.whl", hash = "sha256:2dcc3f60c445f8ce14156854a072ceb36b83807ed803d37fdea2a50e898635d6"},
+ {file = "watchfiles-1.0.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:93436ed550e429da007fbafb723e0769f25bae178fbb287a94cb4ccdf42d3af3"},
+ {file = "watchfiles-1.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c18f3502ad0737813c7dad70e3e1cc966cc147fbaeef47a09463bbffe70b0a00"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a5bc3ca468bb58a2ef50441f953e1f77b9a61bd1b8c347c8223403dc9b4ac9a"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0d1ec043f02ca04bf21b1b32cab155ce90c651aaf5540db8eb8ad7f7e645cba8"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f58d3bfafecf3d81c15d99fc0ecf4319e80ac712c77cf0ce2661c8cf8bf84066"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1df924ba82ae9e77340101c28d56cbaff2c991bd6fe8444a545d24075abb0a87"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:632a52dcaee44792d0965c17bdfe5dc0edad5b86d6a29e53d6ad4bf92dc0ff49"},
+ {file = "watchfiles-1.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bf4b459d94a0387617a1b499f314aa04d8a64b7a0747d15d425b8c8b151da0"},
+ {file = "watchfiles-1.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ca94c85911601b097d53caeeec30201736ad69a93f30d15672b967558df02885"},
+ {file = "watchfiles-1.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:65ab1fb635476f6170b07e8e21db0424de94877e4b76b7feabfe11f9a5fc12b5"},
+ {file = "watchfiles-1.0.3-cp312-cp312-win32.whl", hash = "sha256:49bc1bc26abf4f32e132652f4b3bfeec77d8f8f62f57652703ef127e85a3e38d"},
+ {file = "watchfiles-1.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:48681c86f2cb08348631fed788a116c89c787fdf1e6381c5febafd782f6c3b44"},
+ {file = "watchfiles-1.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:9e080cf917b35b20c889225a13f290f2716748362f6071b859b60b8847a6aa43"},
+ {file = "watchfiles-1.0.3-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:e153a690b7255c5ced17895394b4f109d5dcc2a4f35cb809374da50f0e5c456a"},
+ {file = "watchfiles-1.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ac1be85fe43b4bf9a251978ce5c3bb30e1ada9784290441f5423a28633a958a7"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2ec98e31e1844eac860e70d9247db9d75440fc8f5f679c37d01914568d18721"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0179252846be03fa97d4d5f8233d1c620ef004855f0717712ae1c558f1974a16"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:995c374e86fa82126c03c5b4630c4e312327ecfe27761accb25b5e1d7ab50ec8"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:29b9cb35b7f290db1c31fb2fdf8fc6d3730cfa4bca4b49761083307f441cac5a"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f8dc09ae69af50bead60783180f656ad96bd33ffbf6e7a6fce900f6d53b08f1"},
+ {file = "watchfiles-1.0.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:489b80812f52a8d8c7b0d10f0d956db0efed25df2821c7a934f6143f76938bd6"},
+ {file = "watchfiles-1.0.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:228e2247de583475d4cebf6b9af5dc9918abb99d1ef5ee737155bb39fb33f3c0"},
+ {file = "watchfiles-1.0.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:1550be1a5cb3be08a3fb84636eaafa9b7119b70c71b0bed48726fd1d5aa9b868"},
+ {file = "watchfiles-1.0.3-cp313-cp313-win32.whl", hash = "sha256:16db2d7e12f94818cbf16d4c8938e4d8aaecee23826344addfaaa671a1527b07"},
+ {file = "watchfiles-1.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:160eff7d1267d7b025e983ca8460e8cc67b328284967cbe29c05f3c3163711a3"},
+ {file = "watchfiles-1.0.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c05b021f7b5aa333124f2a64d56e4cb9963b6efdf44e8d819152237bbd93ba15"},
+ {file = "watchfiles-1.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:310505ad305e30cb6c5f55945858cdbe0eb297fc57378f29bacceb534ac34199"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ddff3f8b9fa24a60527c137c852d0d9a7da2a02cf2151650029fdc97c852c974"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:46e86ed457c3486080a72bc837300dd200e18d08183f12b6ca63475ab64ed651"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f79fe7993e230a12172ce7d7c7db061f046f672f2b946431c81aff8f60b2758b"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea2b51c5f38bad812da2ec0cd7eec09d25f521a8b6b6843cbccedd9a1d8a5c15"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fe4e740ea94978b2b2ab308cbf9270a246bcbb44401f77cc8740348cbaeac3d"},
+ {file = "watchfiles-1.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9af037d3df7188ae21dc1c7624501f2f90d81be6550904e07869d8d0e6766655"},
+ {file = "watchfiles-1.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:52bb50a4c4ca2a689fdba84ba8ecc6a4e6210f03b6af93181bb61c4ec3abaf86"},
+ {file = "watchfiles-1.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c14a07bdb475eb696f85c715dbd0f037918ccbb5248290448488a0b4ef201aad"},
+ {file = "watchfiles-1.0.3-cp39-cp39-win32.whl", hash = "sha256:be37f9b1f8934cd9e7eccfcb5612af9fb728fecbe16248b082b709a9d1b348bf"},
+ {file = "watchfiles-1.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:ef9ec8068cf23458dbf36a08e0c16f0a2df04b42a8827619646637be1769300a"},
+ {file = "watchfiles-1.0.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:84fac88278f42d61c519a6c75fb5296fd56710b05bbdcc74bdf85db409a03780"},
+ {file = "watchfiles-1.0.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:c68be72b1666d93b266714f2d4092d78dc53bd11cf91ed5a3c16527587a52e29"},
+ {file = "watchfiles-1.0.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:889a37e2acf43c377b5124166bece139b4c731b61492ab22e64d371cce0e6e80"},
+ {file = "watchfiles-1.0.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ca05cacf2e5c4a97d02a2878a24020daca21dbb8823b023b978210a75c79098"},
+ {file = "watchfiles-1.0.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:8af4b582d5fc1b8465d1d2483e5e7b880cc1a4e99f6ff65c23d64d070867ac58"},
+ {file = "watchfiles-1.0.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:127de3883bdb29dbd3b21f63126bb8fa6e773b74eaef46521025a9ce390e1073"},
+ {file = "watchfiles-1.0.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:713f67132346bdcb4c12df185c30cf04bdf4bf6ea3acbc3ace0912cab6b7cb8c"},
+ {file = "watchfiles-1.0.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abd85de513eb83f5ec153a802348e7a5baa4588b818043848247e3e8986094e8"},
+ {file = "watchfiles-1.0.3.tar.gz", hash = "sha256:f3ff7da165c99a5412fe5dd2304dd2dbaaaa5da718aad942dcb3a178eaa70c56"},
]
[package.dependencies]
@@ -3846,200 +4119,187 @@ files = [
[[package]]
name = "wrapt"
-version = "1.16.0"
+version = "1.17.0"
description = "Module for decorators, wrappers and monkey patching."
optional = false
-python-versions = ">=3.6"
+python-versions = ">=3.8"
files = [
- {file = "wrapt-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ffa565331890b90056c01db69c0fe634a776f8019c143a5ae265f9c6bc4bd6d4"},
- {file = "wrapt-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e4fdb9275308292e880dcbeb12546df7f3e0f96c6b41197e0cf37d2826359020"},
- {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb2dee3874a500de01c93d5c71415fcaef1d858370d405824783e7a8ef5db440"},
- {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a88e6010048489cda82b1326889ec075a8c856c2e6a256072b28eaee3ccf487"},
- {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac83a914ebaf589b69f7d0a1277602ff494e21f4c2f743313414378f8f50a4cf"},
- {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:73aa7d98215d39b8455f103de64391cb79dfcad601701a3aa0dddacf74911d72"},
- {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:807cc8543a477ab7422f1120a217054f958a66ef7314f76dd9e77d3f02cdccd0"},
- {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bf5703fdeb350e36885f2875d853ce13172ae281c56e509f4e6eca049bdfb136"},
- {file = "wrapt-1.16.0-cp310-cp310-win32.whl", hash = "sha256:f6b2d0c6703c988d334f297aa5df18c45e97b0af3679bb75059e0e0bd8b1069d"},
- {file = "wrapt-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:decbfa2f618fa8ed81c95ee18a387ff973143c656ef800c9f24fb7e9c16054e2"},
- {file = "wrapt-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1a5db485fe2de4403f13fafdc231b0dbae5eca4359232d2efc79025527375b09"},
- {file = "wrapt-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:75ea7d0ee2a15733684badb16de6794894ed9c55aa5e9903260922f0482e687d"},
- {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a452f9ca3e3267cd4d0fcf2edd0d035b1934ac2bd7e0e57ac91ad6b95c0c6389"},
- {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43aa59eadec7890d9958748db829df269f0368521ba6dc68cc172d5d03ed8060"},
- {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:72554a23c78a8e7aa02abbd699d129eead8b147a23c56e08d08dfc29cfdddca1"},
- {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d2efee35b4b0a347e0d99d28e884dfd82797852d62fcd7ebdeee26f3ceb72cf3"},
- {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:6dcfcffe73710be01d90cae08c3e548d90932d37b39ef83969ae135d36ef3956"},
- {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:eb6e651000a19c96f452c85132811d25e9264d836951022d6e81df2fff38337d"},
- {file = "wrapt-1.16.0-cp311-cp311-win32.whl", hash = "sha256:66027d667efe95cc4fa945af59f92c5a02c6f5bb6012bff9e60542c74c75c362"},
- {file = "wrapt-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:aefbc4cb0a54f91af643660a0a150ce2c090d3652cf4052a5397fb2de549cd89"},
- {file = "wrapt-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5eb404d89131ec9b4f748fa5cfb5346802e5ee8836f57d516576e61f304f3b7b"},
- {file = "wrapt-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9090c9e676d5236a6948330e83cb89969f433b1943a558968f659ead07cb3b36"},
- {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94265b00870aa407bd0cbcfd536f17ecde43b94fb8d228560a1e9d3041462d73"},
- {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2058f813d4f2b5e3a9eb2eb3faf8f1d99b81c3e51aeda4b168406443e8ba809"},
- {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98b5e1f498a8ca1858a1cdbffb023bfd954da4e3fa2c0cb5853d40014557248b"},
- {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:14d7dc606219cdd7405133c713f2c218d4252f2a469003f8c46bb92d5d095d81"},
- {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:49aac49dc4782cb04f58986e81ea0b4768e4ff197b57324dcbd7699c5dfb40b9"},
- {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:418abb18146475c310d7a6dc71143d6f7adec5b004ac9ce08dc7a34e2babdc5c"},
- {file = "wrapt-1.16.0-cp312-cp312-win32.whl", hash = "sha256:685f568fa5e627e93f3b52fda002c7ed2fa1800b50ce51f6ed1d572d8ab3e7fc"},
- {file = "wrapt-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:dcdba5c86e368442528f7060039eda390cc4091bfd1dca41e8046af7c910dda8"},
- {file = "wrapt-1.16.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d462f28826f4657968ae51d2181a074dfe03c200d6131690b7d65d55b0f360f8"},
- {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a33a747400b94b6d6b8a165e4480264a64a78c8a4c734b62136062e9a248dd39"},
- {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b3646eefa23daeba62643a58aac816945cadc0afaf21800a1421eeba5f6cfb9c"},
- {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ebf019be5c09d400cf7b024aa52b1f3aeebeff51550d007e92c3c1c4afc2a40"},
- {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:0d2691979e93d06a95a26257adb7bfd0c93818e89b1406f5a28f36e0d8c1e1fc"},
- {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:1acd723ee2a8826f3d53910255643e33673e1d11db84ce5880675954183ec47e"},
- {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:bc57efac2da352a51cc4658878a68d2b1b67dbe9d33c36cb826ca449d80a8465"},
- {file = "wrapt-1.16.0-cp36-cp36m-win32.whl", hash = "sha256:da4813f751142436b075ed7aa012a8778aa43a99f7b36afe9b742d3ed8bdc95e"},
- {file = "wrapt-1.16.0-cp36-cp36m-win_amd64.whl", hash = "sha256:6f6eac2360f2d543cc875a0e5efd413b6cbd483cb3ad7ebf888884a6e0d2e966"},
- {file = "wrapt-1.16.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a0ea261ce52b5952bf669684a251a66df239ec6d441ccb59ec7afa882265d593"},
- {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bd2d7ff69a2cac767fbf7a2b206add2e9a210e57947dd7ce03e25d03d2de292"},
- {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9159485323798c8dc530a224bd3ffcf76659319ccc7bbd52e01e73bd0241a0c5"},
- {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a86373cf37cd7764f2201b76496aba58a52e76dedfaa698ef9e9688bfd9e41cf"},
- {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:73870c364c11f03ed072dda68ff7aea6d2a3a5c3fe250d917a429c7432e15228"},
- {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b935ae30c6e7400022b50f8d359c03ed233d45b725cfdd299462f41ee5ffba6f"},
- {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:db98ad84a55eb09b3c32a96c576476777e87c520a34e2519d3e59c44710c002c"},
- {file = "wrapt-1.16.0-cp37-cp37m-win32.whl", hash = "sha256:9153ed35fc5e4fa3b2fe97bddaa7cbec0ed22412b85bcdaf54aeba92ea37428c"},
- {file = "wrapt-1.16.0-cp37-cp37m-win_amd64.whl", hash = "sha256:66dfbaa7cfa3eb707bbfcd46dab2bc6207b005cbc9caa2199bcbc81d95071a00"},
- {file = "wrapt-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1dd50a2696ff89f57bd8847647a1c363b687d3d796dc30d4dd4a9d1689a706f0"},
- {file = "wrapt-1.16.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:44a2754372e32ab315734c6c73b24351d06e77ffff6ae27d2ecf14cf3d229202"},
- {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e9723528b9f787dc59168369e42ae1c3b0d3fadb2f1a71de14531d321ee05b0"},
- {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dbed418ba5c3dce92619656802cc5355cb679e58d0d89b50f116e4a9d5a9603e"},
- {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:941988b89b4fd6b41c3f0bfb20e92bd23746579736b7343283297c4c8cbae68f"},
- {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6a42cd0cfa8ffc1915aef79cb4284f6383d8a3e9dcca70c445dcfdd639d51267"},
- {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ca9b6085e4f866bd584fb135a041bfc32cab916e69f714a7d1d397f8c4891ca"},
- {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5e49454f19ef621089e204f862388d29e6e8d8b162efce05208913dde5b9ad6"},
- {file = "wrapt-1.16.0-cp38-cp38-win32.whl", hash = "sha256:c31f72b1b6624c9d863fc095da460802f43a7c6868c5dda140f51da24fd47d7b"},
- {file = "wrapt-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:490b0ee15c1a55be9c1bd8609b8cecd60e325f0575fc98f50058eae366e01f41"},
- {file = "wrapt-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9b201ae332c3637a42f02d1045e1d0cccfdc41f1f2f801dafbaa7e9b4797bfc2"},
- {file = "wrapt-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2076fad65c6736184e77d7d4729b63a6d1ae0b70da4868adeec40989858eb3fb"},
- {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5cd603b575ebceca7da5a3a251e69561bec509e0b46e4993e1cac402b7247b8"},
- {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b47cfad9e9bbbed2339081f4e346c93ecd7ab504299403320bf85f7f85c7d46c"},
- {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8212564d49c50eb4565e502814f694e240c55551a5f1bc841d4fcaabb0a9b8a"},
- {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5f15814a33e42b04e3de432e573aa557f9f0f56458745c2074952f564c50e664"},
- {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db2e408d983b0e61e238cf579c09ef7020560441906ca990fe8412153e3b291f"},
- {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:edfad1d29c73f9b863ebe7082ae9321374ccb10879eeabc84ba3b69f2579d537"},
- {file = "wrapt-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed867c42c268f876097248e05b6117a65bcd1e63b779e916fe2e33cd6fd0d3c3"},
- {file = "wrapt-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:eb1b046be06b0fce7249f1d025cd359b4b80fc1c3e24ad9eca33e0dcdb2e4a35"},
- {file = "wrapt-1.16.0-py3-none-any.whl", hash = "sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1"},
- {file = "wrapt-1.16.0.tar.gz", hash = "sha256:5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d"},
+ {file = "wrapt-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2a0c23b8319848426f305f9cb0c98a6e32ee68a36264f45948ccf8e7d2b941f8"},
+ {file = "wrapt-1.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1ca5f060e205f72bec57faae5bd817a1560fcfc4af03f414b08fa29106b7e2d"},
+ {file = "wrapt-1.17.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e185ec6060e301a7e5f8461c86fb3640a7beb1a0f0208ffde7a65ec4074931df"},
+ {file = "wrapt-1.17.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb90765dd91aed05b53cd7a87bd7f5c188fcd95960914bae0d32c5e7f899719d"},
+ {file = "wrapt-1.17.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:879591c2b5ab0a7184258274c42a126b74a2c3d5a329df16d69f9cee07bba6ea"},
+ {file = "wrapt-1.17.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:fce6fee67c318fdfb7f285c29a82d84782ae2579c0e1b385b7f36c6e8074fffb"},
+ {file = "wrapt-1.17.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0698d3a86f68abc894d537887b9bbf84d29bcfbc759e23f4644be27acf6da301"},
+ {file = "wrapt-1.17.0-cp310-cp310-win32.whl", hash = "sha256:69d093792dc34a9c4c8a70e4973a3361c7a7578e9cd86961b2bbf38ca71e4e22"},
+ {file = "wrapt-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:f28b29dc158ca5d6ac396c8e0a2ef45c4e97bb7e65522bfc04c989e6fe814575"},
+ {file = "wrapt-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:74bf625b1b4caaa7bad51d9003f8b07a468a704e0644a700e936c357c17dd45a"},
+ {file = "wrapt-1.17.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f2a28eb35cf99d5f5bd12f5dd44a0f41d206db226535b37b0c60e9da162c3ed"},
+ {file = "wrapt-1.17.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:81b1289e99cf4bad07c23393ab447e5e96db0ab50974a280f7954b071d41b489"},
+ {file = "wrapt-1.17.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f2939cd4a2a52ca32bc0b359015718472d7f6de870760342e7ba295be9ebaf9"},
+ {file = "wrapt-1.17.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6a9653131bda68a1f029c52157fd81e11f07d485df55410401f745007bd6d339"},
+ {file = "wrapt-1.17.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:4e4b4385363de9052dac1a67bfb535c376f3d19c238b5f36bddc95efae15e12d"},
+ {file = "wrapt-1.17.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bdf62d25234290db1837875d4dceb2151e4ea7f9fff2ed41c0fde23ed542eb5b"},
+ {file = "wrapt-1.17.0-cp311-cp311-win32.whl", hash = "sha256:5d8fd17635b262448ab8f99230fe4dac991af1dabdbb92f7a70a6afac8a7e346"},
+ {file = "wrapt-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:92a3d214d5e53cb1db8b015f30d544bc9d3f7179a05feb8f16df713cecc2620a"},
+ {file = "wrapt-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:89fc28495896097622c3fc238915c79365dd0ede02f9a82ce436b13bd0ab7569"},
+ {file = "wrapt-1.17.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:875d240fdbdbe9e11f9831901fb8719da0bd4e6131f83aa9f69b96d18fae7504"},
+ {file = "wrapt-1.17.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e5ed16d95fd142e9c72b6c10b06514ad30e846a0d0917ab406186541fe68b451"},
+ {file = "wrapt-1.17.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18b956061b8db634120b58f668592a772e87e2e78bc1f6a906cfcaa0cc7991c1"},
+ {file = "wrapt-1.17.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:daba396199399ccabafbfc509037ac635a6bc18510ad1add8fd16d4739cdd106"},
+ {file = "wrapt-1.17.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:4d63f4d446e10ad19ed01188d6c1e1bb134cde8c18b0aa2acfd973d41fcc5ada"},
+ {file = "wrapt-1.17.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8a5e7cc39a45fc430af1aefc4d77ee6bad72c5bcdb1322cfde852c15192b8bd4"},
+ {file = "wrapt-1.17.0-cp312-cp312-win32.whl", hash = "sha256:0a0a1a1ec28b641f2a3a2c35cbe86c00051c04fffcfcc577ffcdd707df3f8635"},
+ {file = "wrapt-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:3c34f6896a01b84bab196f7119770fd8466c8ae3dfa73c59c0bb281e7b588ce7"},
+ {file = "wrapt-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:714c12485aa52efbc0fc0ade1e9ab3a70343db82627f90f2ecbc898fdf0bb181"},
+ {file = "wrapt-1.17.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da427d311782324a376cacb47c1a4adc43f99fd9d996ffc1b3e8529c4074d393"},
+ {file = "wrapt-1.17.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ba1739fb38441a27a676f4de4123d3e858e494fac05868b7a281c0a383c098f4"},
+ {file = "wrapt-1.17.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e711fc1acc7468463bc084d1b68561e40d1eaa135d8c509a65dd534403d83d7b"},
+ {file = "wrapt-1.17.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:140ea00c87fafc42739bd74a94a5a9003f8e72c27c47cd4f61d8e05e6dec8721"},
+ {file = "wrapt-1.17.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:73a96fd11d2b2e77d623a7f26e004cc31f131a365add1ce1ce9a19e55a1eef90"},
+ {file = "wrapt-1.17.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:0b48554952f0f387984da81ccfa73b62e52817a4386d070c75e4db7d43a28c4a"},
+ {file = "wrapt-1.17.0-cp313-cp313-win32.whl", hash = "sha256:498fec8da10e3e62edd1e7368f4b24aa362ac0ad931e678332d1b209aec93045"},
+ {file = "wrapt-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:fd136bb85f4568fffca995bd3c8d52080b1e5b225dbf1c2b17b66b4c5fa02838"},
+ {file = "wrapt-1.17.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:17fcf043d0b4724858f25b8826c36e08f9fb2e475410bece0ec44a22d533da9b"},
+ {file = "wrapt-1.17.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4a557d97f12813dc5e18dad9fa765ae44ddd56a672bb5de4825527c847d6379"},
+ {file = "wrapt-1.17.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0229b247b0fc7dee0d36176cbb79dbaf2a9eb7ecc50ec3121f40ef443155fb1d"},
+ {file = "wrapt-1.17.0-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8425cfce27b8b20c9b89d77fb50e368d8306a90bf2b6eef2cdf5cd5083adf83f"},
+ {file = "wrapt-1.17.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9c900108df470060174108012de06d45f514aa4ec21a191e7ab42988ff42a86c"},
+ {file = "wrapt-1.17.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:4e547b447073fc0dbfcbff15154c1be8823d10dab4ad401bdb1575e3fdedff1b"},
+ {file = "wrapt-1.17.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:914f66f3b6fc7b915d46c1cc424bc2441841083de01b90f9e81109c9759e43ab"},
+ {file = "wrapt-1.17.0-cp313-cp313t-win32.whl", hash = "sha256:a4192b45dff127c7d69b3bdfb4d3e47b64179a0b9900b6351859f3001397dabf"},
+ {file = "wrapt-1.17.0-cp313-cp313t-win_amd64.whl", hash = "sha256:4f643df3d4419ea3f856c5c3f40fec1d65ea2e89ec812c83f7767c8730f9827a"},
+ {file = "wrapt-1.17.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:69c40d4655e078ede067a7095544bcec5a963566e17503e75a3a3e0fe2803b13"},
+ {file = "wrapt-1.17.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f495b6754358979379f84534f8dd7a43ff8cff2558dcdea4a148a6e713a758f"},
+ {file = "wrapt-1.17.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:baa7ef4e0886a6f482e00d1d5bcd37c201b383f1d314643dfb0367169f94f04c"},
+ {file = "wrapt-1.17.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8fc931382e56627ec4acb01e09ce66e5c03c384ca52606111cee50d931a342d"},
+ {file = "wrapt-1.17.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8f8909cdb9f1b237786c09a810e24ee5e15ef17019f7cecb207ce205b9b5fcce"},
+ {file = "wrapt-1.17.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ad47b095f0bdc5585bced35bd088cbfe4177236c7df9984b3cc46b391cc60627"},
+ {file = "wrapt-1.17.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:948a9bd0fb2c5120457b07e59c8d7210cbc8703243225dbd78f4dfc13c8d2d1f"},
+ {file = "wrapt-1.17.0-cp38-cp38-win32.whl", hash = "sha256:5ae271862b2142f4bc687bdbfcc942e2473a89999a54231aa1c2c676e28f29ea"},
+ {file = "wrapt-1.17.0-cp38-cp38-win_amd64.whl", hash = "sha256:f335579a1b485c834849e9075191c9898e0731af45705c2ebf70e0cd5d58beed"},
+ {file = "wrapt-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d751300b94e35b6016d4b1e7d0e7bbc3b5e1751e2405ef908316c2a9024008a1"},
+ {file = "wrapt-1.17.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7264cbb4a18dc4acfd73b63e4bcfec9c9802614572025bdd44d0721983fc1d9c"},
+ {file = "wrapt-1.17.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:33539c6f5b96cf0b1105a0ff4cf5db9332e773bb521cc804a90e58dc49b10578"},
+ {file = "wrapt-1.17.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c30970bdee1cad6a8da2044febd824ef6dc4cc0b19e39af3085c763fdec7de33"},
+ {file = "wrapt-1.17.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:bc7f729a72b16ee21795a943f85c6244971724819819a41ddbaeb691b2dd85ad"},
+ {file = "wrapt-1.17.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:6ff02a91c4fc9b6a94e1c9c20f62ea06a7e375f42fe57587f004d1078ac86ca9"},
+ {file = "wrapt-1.17.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2dfb7cff84e72e7bf975b06b4989477873dcf160b2fd89959c629535df53d4e0"},
+ {file = "wrapt-1.17.0-cp39-cp39-win32.whl", hash = "sha256:2399408ac33ffd5b200480ee858baa58d77dd30e0dd0cab6a8a9547135f30a88"},
+ {file = "wrapt-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:4f763a29ee6a20c529496a20a7bcb16a73de27f5da6a843249c7047daf135977"},
+ {file = "wrapt-1.17.0-py3-none-any.whl", hash = "sha256:d2c63b93548eda58abf5188e505ffed0229bf675f7c3090f8e36ad55b8cbc371"},
+ {file = "wrapt-1.17.0.tar.gz", hash = "sha256:16187aa2317c731170a88ef35e8937ae0f533c402872c1ee5e6d079fcf320801"},
]
[[package]]
name = "yarl"
-version = "1.13.1"
+version = "1.18.3"
description = "Yet another URL library"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "yarl-1.13.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:82e692fb325013a18a5b73a4fed5a1edaa7c58144dc67ad9ef3d604eccd451ad"},
- {file = "yarl-1.13.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df4e82e68f43a07735ae70a2d84c0353e58e20add20ec0af611f32cd5ba43fb4"},
- {file = "yarl-1.13.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ec9dd328016d8d25702a24ee274932aebf6be9787ed1c28d021945d264235b3c"},
- {file = "yarl-1.13.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5820bd4178e6a639b3ef1db8b18500a82ceab6d8b89309e121a6859f56585b05"},
- {file = "yarl-1.13.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86c438ce920e089c8c2388c7dcc8ab30dfe13c09b8af3d306bcabb46a053d6f7"},
- {file = "yarl-1.13.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3de86547c820e4f4da4606d1c8ab5765dd633189791f15247706a2eeabc783ae"},
- {file = "yarl-1.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ca53632007c69ddcdefe1e8cbc3920dd88825e618153795b57e6ebcc92e752a"},
- {file = "yarl-1.13.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d4ee1d240b84e2f213565f0ec08caef27a0e657d4c42859809155cf3a29d1735"},
- {file = "yarl-1.13.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c49f3e379177f4477f929097f7ed4b0622a586b0aa40c07ac8c0f8e40659a1ac"},
- {file = "yarl-1.13.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:5c5e32fef09ce101fe14acd0f498232b5710effe13abac14cd95de9c274e689e"},
- {file = "yarl-1.13.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:ab9524e45ee809a083338a749af3b53cc7efec458c3ad084361c1dbf7aaf82a2"},
- {file = "yarl-1.13.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:b1481c048fe787f65e34cb06f7d6824376d5d99f1231eae4778bbe5c3831076d"},
- {file = "yarl-1.13.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:31497aefd68036d8e31bfbacef915826ca2e741dbb97a8d6c7eac66deda3b606"},
- {file = "yarl-1.13.1-cp310-cp310-win32.whl", hash = "sha256:1fa56f34b2236f5192cb5fceba7bbb09620e5337e0b6dfe2ea0ddbd19dd5b154"},
- {file = "yarl-1.13.1-cp310-cp310-win_amd64.whl", hash = "sha256:1bbb418f46c7f7355084833051701b2301092e4611d9e392360c3ba2e3e69f88"},
- {file = "yarl-1.13.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:216a6785f296169ed52cd7dcdc2612f82c20f8c9634bf7446327f50398732a51"},
- {file = "yarl-1.13.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:40c6e73c03a6befb85b72da213638b8aaa80fe4136ec8691560cf98b11b8ae6e"},
- {file = "yarl-1.13.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2430cf996113abe5aee387d39ee19529327205cda975d2b82c0e7e96e5fdabdc"},
- {file = "yarl-1.13.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fb4134cc6e005b99fa29dbc86f1ea0a298440ab6b07c6b3ee09232a3b48f495"},
- {file = "yarl-1.13.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:309c104ecf67626c033845b860d31594a41343766a46fa58c3309c538a1e22b2"},
- {file = "yarl-1.13.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f90575e9fe3aae2c1e686393a9689c724cd00045275407f71771ae5d690ccf38"},
- {file = "yarl-1.13.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d2e1626be8712333a9f71270366f4a132f476ffbe83b689dd6dc0d114796c74"},
- {file = "yarl-1.13.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b66c87da3c6da8f8e8b648878903ca54589038a0b1e08dde2c86d9cd92d4ac9"},
- {file = "yarl-1.13.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cf1ad338620249f8dd6d4b6a91a69d1f265387df3697ad5dc996305cf6c26fb2"},
- {file = "yarl-1.13.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:9915300fe5a0aa663c01363db37e4ae8e7c15996ebe2c6cce995e7033ff6457f"},
- {file = "yarl-1.13.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:703b0f584fcf157ef87816a3c0ff868e8c9f3c370009a8b23b56255885528f10"},
- {file = "yarl-1.13.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:1d8e3ca29f643dd121f264a7c89f329f0fcb2e4461833f02de6e39fef80f89da"},
- {file = "yarl-1.13.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7055bbade838d68af73aea13f8c86588e4bcc00c2235b4b6d6edb0dbd174e246"},
- {file = "yarl-1.13.1-cp311-cp311-win32.whl", hash = "sha256:a3442c31c11088e462d44a644a454d48110f0588de830921fd201060ff19612a"},
- {file = "yarl-1.13.1-cp311-cp311-win_amd64.whl", hash = "sha256:81bad32c8f8b5897c909bf3468bf601f1b855d12f53b6af0271963ee67fff0d2"},
- {file = "yarl-1.13.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:f452cc1436151387d3d50533523291d5f77c6bc7913c116eb985304abdbd9ec9"},
- {file = "yarl-1.13.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:9cec42a20eae8bebf81e9ce23fb0d0c729fc54cf00643eb251ce7c0215ad49fe"},
- {file = "yarl-1.13.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d959fe96e5c2712c1876d69af0507d98f0b0e8d81bee14cfb3f6737470205419"},
- {file = "yarl-1.13.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8c837ab90c455f3ea8e68bee143472ee87828bff19ba19776e16ff961425b57"},
- {file = "yarl-1.13.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:94a993f976cdcb2dc1b855d8b89b792893220db8862d1a619efa7451817c836b"},
- {file = "yarl-1.13.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b2442a415a5f4c55ced0fade7b72123210d579f7d950e0b5527fc598866e62c"},
- {file = "yarl-1.13.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3fdbf0418489525231723cdb6c79e7738b3cbacbaed2b750cb033e4ea208f220"},
- {file = "yarl-1.13.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6b7f6e699304717fdc265a7e1922561b02a93ceffdaefdc877acaf9b9f3080b8"},
- {file = "yarl-1.13.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:bcd5bf4132e6a8d3eb54b8d56885f3d3a38ecd7ecae8426ecf7d9673b270de43"},
- {file = "yarl-1.13.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:2a93a4557f7fc74a38ca5a404abb443a242217b91cd0c4840b1ebedaad8919d4"},
- {file = "yarl-1.13.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:22b739f99c7e4787922903f27a892744189482125cc7b95b747f04dd5c83aa9f"},
- {file = "yarl-1.13.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:2db874dd1d22d4c2c657807562411ffdfabec38ce4c5ce48b4c654be552759dc"},
- {file = "yarl-1.13.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4feaaa4742517eaceafcbe74595ed335a494c84634d33961214b278126ec1485"},
- {file = "yarl-1.13.1-cp312-cp312-win32.whl", hash = "sha256:bbf9c2a589be7414ac4a534d54e4517d03f1cbb142c0041191b729c2fa23f320"},
- {file = "yarl-1.13.1-cp312-cp312-win_amd64.whl", hash = "sha256:d07b52c8c450f9366c34aa205754355e933922c79135125541daae6cbf31c799"},
- {file = "yarl-1.13.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:95c6737f28069153c399d875317f226bbdea939fd48a6349a3b03da6829fb550"},
- {file = "yarl-1.13.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:cd66152561632ed4b2a9192e7f8e5a1d41e28f58120b4761622e0355f0fe034c"},
- {file = "yarl-1.13.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6a2acde25be0cf9be23a8f6cbd31734536a264723fca860af3ae5e89d771cd71"},
- {file = "yarl-1.13.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a18595e6a2ee0826bf7dfdee823b6ab55c9b70e8f80f8b77c37e694288f5de1"},
- {file = "yarl-1.13.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a31d21089894942f7d9a8df166b495101b7258ff11ae0abec58e32daf8088813"},
- {file = "yarl-1.13.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:45f209fb4bbfe8630e3d2e2052535ca5b53d4ce2d2026bed4d0637b0416830da"},
- {file = "yarl-1.13.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f722f30366474a99745533cc4015b1781ee54b08de73260b2bbe13316079851"},
- {file = "yarl-1.13.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3bf60444269345d712838bb11cc4eadaf51ff1a364ae39ce87a5ca8ad3bb2c8"},
- {file = "yarl-1.13.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:942c80a832a79c3707cca46bd12ab8aa58fddb34b1626d42b05aa8f0bcefc206"},
- {file = "yarl-1.13.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:44b07e1690f010c3c01d353b5790ec73b2f59b4eae5b0000593199766b3f7a5c"},
- {file = "yarl-1.13.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:396e59b8de7e4d59ff5507fb4322d2329865b909f29a7ed7ca37e63ade7f835c"},
- {file = "yarl-1.13.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:3bb83a0f12701c0b91112a11148b5217617982e1e466069d0555be9b372f2734"},
- {file = "yarl-1.13.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c92b89bffc660f1274779cb6fbb290ec1f90d6dfe14492523a0667f10170de26"},
- {file = "yarl-1.13.1-cp313-cp313-win32.whl", hash = "sha256:269c201bbc01d2cbba5b86997a1e0f73ba5e2f471cfa6e226bcaa7fd664b598d"},
- {file = "yarl-1.13.1-cp313-cp313-win_amd64.whl", hash = "sha256:1d0828e17fa701b557c6eaed5edbd9098eb62d8838344486248489ff233998b8"},
- {file = "yarl-1.13.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8be8cdfe20787e6a5fcbd010f8066227e2bb9058331a4eccddec6c0db2bb85b2"},
- {file = "yarl-1.13.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:08d7148ff11cb8e886d86dadbfd2e466a76d5dd38c7ea8ebd9b0e07946e76e4b"},
- {file = "yarl-1.13.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4afdf84610ca44dcffe8b6c22c68f309aff96be55f5ea2fa31c0c225d6b83e23"},
- {file = "yarl-1.13.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0d12fe78dcf60efa205e9a63f395b5d343e801cf31e5e1dda0d2c1fb618073d"},
- {file = "yarl-1.13.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:298c1eecfd3257aa16c0cb0bdffb54411e3e831351cd69e6b0739be16b1bdaa8"},
- {file = "yarl-1.13.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c14c16831b565707149c742d87a6203eb5597f4329278446d5c0ae7a1a43928e"},
- {file = "yarl-1.13.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a9bacedbb99685a75ad033fd4de37129449e69808e50e08034034c0bf063f99"},
- {file = "yarl-1.13.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:658e8449b84b92a4373f99305de042b6bd0d19bf2080c093881e0516557474a5"},
- {file = "yarl-1.13.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:373f16f38721c680316a6a00ae21cc178e3a8ef43c0227f88356a24c5193abd6"},
- {file = "yarl-1.13.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:45d23c4668d4925688e2ea251b53f36a498e9ea860913ce43b52d9605d3d8177"},
- {file = "yarl-1.13.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:f7917697bcaa3bc3e83db91aa3a0e448bf5cde43c84b7fc1ae2427d2417c0224"},
- {file = "yarl-1.13.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:5989a38ba1281e43e4663931a53fbf356f78a0325251fd6af09dd03b1d676a09"},
- {file = "yarl-1.13.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:11b3ca8b42a024513adce810385fcabdd682772411d95bbbda3b9ed1a4257644"},
- {file = "yarl-1.13.1-cp38-cp38-win32.whl", hash = "sha256:dcaef817e13eafa547cdfdc5284fe77970b891f731266545aae08d6cce52161e"},
- {file = "yarl-1.13.1-cp38-cp38-win_amd64.whl", hash = "sha256:7addd26594e588503bdef03908fc207206adac5bd90b6d4bc3e3cf33a829f57d"},
- {file = "yarl-1.13.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a0ae6637b173d0c40b9c1462e12a7a2000a71a3258fa88756a34c7d38926911c"},
- {file = "yarl-1.13.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:576365c9f7469e1f6124d67b001639b77113cfd05e85ce0310f5f318fd02fe85"},
- {file = "yarl-1.13.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:78f271722423b2d4851cf1f4fa1a1c4833a128d020062721ba35e1a87154a049"},
- {file = "yarl-1.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d74f3c335cfe9c21ea78988e67f18eb9822f5d31f88b41aec3a1ec5ecd32da5"},
- {file = "yarl-1.13.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1891d69a6ba16e89473909665cd355d783a8a31bc84720902c5911dbb6373465"},
- {file = "yarl-1.13.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fb382fd7b4377363cc9f13ba7c819c3c78ed97c36a82f16f3f92f108c787cbbf"},
- {file = "yarl-1.13.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c8854b9f80693d20cec797d8e48a848c2fb273eb6f2587b57763ccba3f3bd4b"},
- {file = "yarl-1.13.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bbf2c3f04ff50f16404ce70f822cdc59760e5e2d7965905f0e700270feb2bbfc"},
- {file = "yarl-1.13.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:fb9f59f3848edf186a76446eb8bcf4c900fe147cb756fbbd730ef43b2e67c6a7"},
- {file = "yarl-1.13.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:ef9b85fa1bc91c4db24407e7c4da93a5822a73dd4513d67b454ca7064e8dc6a3"},
- {file = "yarl-1.13.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:098b870c18f1341786f290b4d699504e18f1cd050ed179af8123fd8232513424"},
- {file = "yarl-1.13.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:8c723c91c94a3bc8033dd2696a0f53e5d5f8496186013167bddc3fb5d9df46a3"},
- {file = "yarl-1.13.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:44a4c40a6f84e4d5955b63462a0e2a988f8982fba245cf885ce3be7618f6aa7d"},
- {file = "yarl-1.13.1-cp39-cp39-win32.whl", hash = "sha256:84bbcdcf393139f0abc9f642bf03f00cac31010f3034faa03224a9ef0bb74323"},
- {file = "yarl-1.13.1-cp39-cp39-win_amd64.whl", hash = "sha256:fc2931ac9ce9c61c9968989ec831d3a5e6fcaaff9474e7cfa8de80b7aff5a093"},
- {file = "yarl-1.13.1-py3-none-any.whl", hash = "sha256:6a5185ad722ab4dd52d5fb1f30dcc73282eb1ed494906a92d1a228d3f89607b0"},
- {file = "yarl-1.13.1.tar.gz", hash = "sha256:ec8cfe2295f3e5e44c51f57272afbd69414ae629ec7c6b27f5a410efc78b70a0"},
+ {file = "yarl-1.18.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7df647e8edd71f000a5208fe6ff8c382a1de8edfbccdbbfe649d263de07d8c34"},
+ {file = "yarl-1.18.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c69697d3adff5aa4f874b19c0e4ed65180ceed6318ec856ebc423aa5850d84f7"},
+ {file = "yarl-1.18.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:602d98f2c2d929f8e697ed274fbadc09902c4025c5a9963bf4e9edfc3ab6f7ed"},
+ {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c654d5207c78e0bd6d749f6dae1dcbbfde3403ad3a4b11f3c5544d9906969dde"},
+ {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5094d9206c64181d0f6e76ebd8fb2f8fe274950a63890ee9e0ebfd58bf9d787b"},
+ {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35098b24e0327fc4ebdc8ffe336cee0a87a700c24ffed13161af80124b7dc8e5"},
+ {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3236da9272872443f81fedc389bace88408f64f89f75d1bdb2256069a8730ccc"},
+ {file = "yarl-1.18.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e2c08cc9b16f4f4bc522771d96734c7901e7ebef70c6c5c35dd0f10845270bcd"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:80316a8bd5109320d38eef8833ccf5f89608c9107d02d2a7f985f98ed6876990"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:c1e1cc06da1491e6734f0ea1e6294ce00792193c463350626571c287c9a704db"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:fea09ca13323376a2fdfb353a5fa2e59f90cd18d7ca4eaa1fd31f0a8b4f91e62"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:e3b9fd71836999aad54084906f8663dffcd2a7fb5cdafd6c37713b2e72be1760"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:757e81cae69244257d125ff31663249b3013b5dc0a8520d73694aed497fb195b"},
+ {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b1771de9944d875f1b98a745bc547e684b863abf8f8287da8466cf470ef52690"},
+ {file = "yarl-1.18.3-cp310-cp310-win32.whl", hash = "sha256:8874027a53e3aea659a6d62751800cf6e63314c160fd607489ba5c2edd753cf6"},
+ {file = "yarl-1.18.3-cp310-cp310-win_amd64.whl", hash = "sha256:93b2e109287f93db79210f86deb6b9bbb81ac32fc97236b16f7433db7fc437d8"},
+ {file = "yarl-1.18.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8503ad47387b8ebd39cbbbdf0bf113e17330ffd339ba1144074da24c545f0069"},
+ {file = "yarl-1.18.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:02ddb6756f8f4517a2d5e99d8b2f272488e18dd0bfbc802f31c16c6c20f22193"},
+ {file = "yarl-1.18.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:67a283dd2882ac98cc6318384f565bffc751ab564605959df4752d42483ad889"},
+ {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d980e0325b6eddc81331d3f4551e2a333999fb176fd153e075c6d1c2530aa8a8"},
+ {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b643562c12680b01e17239be267bc306bbc6aac1f34f6444d1bded0c5ce438ca"},
+ {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c017a3b6df3a1bd45b9fa49a0f54005e53fbcad16633870104b66fa1a30a29d8"},
+ {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75674776d96d7b851b6498f17824ba17849d790a44d282929c42dbb77d4f17ae"},
+ {file = "yarl-1.18.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ccaa3a4b521b780a7e771cc336a2dba389a0861592bbce09a476190bb0c8b4b3"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:2d06d3005e668744e11ed80812e61efd77d70bb7f03e33c1598c301eea20efbb"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:9d41beda9dc97ca9ab0b9888cb71f7539124bc05df02c0cff6e5acc5a19dcc6e"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:ba23302c0c61a9999784e73809427c9dbedd79f66a13d84ad1b1943802eaaf59"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:6748dbf9bfa5ba1afcc7556b71cda0d7ce5f24768043a02a58846e4a443d808d"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:0b0cad37311123211dc91eadcb322ef4d4a66008d3e1bdc404808992260e1a0e"},
+ {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0fb2171a4486bb075316ee754c6d8382ea6eb8b399d4ec62fde2b591f879778a"},
+ {file = "yarl-1.18.3-cp311-cp311-win32.whl", hash = "sha256:61b1a825a13bef4a5f10b1885245377d3cd0bf87cba068e1d9a88c2ae36880e1"},
+ {file = "yarl-1.18.3-cp311-cp311-win_amd64.whl", hash = "sha256:b9d60031cf568c627d028239693fd718025719c02c9f55df0a53e587aab951b5"},
+ {file = "yarl-1.18.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:1dd4bdd05407ced96fed3d7f25dbbf88d2ffb045a0db60dbc247f5b3c5c25d50"},
+ {file = "yarl-1.18.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7c33dd1931a95e5d9a772d0ac5e44cac8957eaf58e3c8da8c1414de7dd27c576"},
+ {file = "yarl-1.18.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:25b411eddcfd56a2f0cd6a384e9f4f7aa3efee14b188de13048c25b5e91f1640"},
+ {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:436c4fc0a4d66b2badc6c5fc5ef4e47bb10e4fd9bf0c79524ac719a01f3607c2"},
+ {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e35ef8683211db69ffe129a25d5634319a677570ab6b2eba4afa860f54eeaf75"},
+ {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:84b2deecba4a3f1a398df819151eb72d29bfeb3b69abb145a00ddc8d30094512"},
+ {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00e5a1fea0fd4f5bfa7440a47eff01d9822a65b4488f7cff83155a0f31a2ecba"},
+ {file = "yarl-1.18.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d0e883008013c0e4aef84dcfe2a0b172c4d23c2669412cf5b3371003941f72bb"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5a3f356548e34a70b0172d8890006c37be92995f62d95a07b4a42e90fba54272"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:ccd17349166b1bee6e529b4add61727d3f55edb7babbe4069b5764c9587a8cc6"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b958ddd075ddba5b09bb0be8a6d9906d2ce933aee81100db289badbeb966f54e"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c7d79f7d9aabd6011004e33b22bc13056a3e3fb54794d138af57f5ee9d9032cb"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:4891ed92157e5430874dad17b15eb1fda57627710756c27422200c52d8a4e393"},
+ {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ce1af883b94304f493698b00d0f006d56aea98aeb49d75ec7d98cd4a777e9285"},
+ {file = "yarl-1.18.3-cp312-cp312-win32.whl", hash = "sha256:f91c4803173928a25e1a55b943c81f55b8872f0018be83e3ad4938adffb77dd2"},
+ {file = "yarl-1.18.3-cp312-cp312-win_amd64.whl", hash = "sha256:7e2ee16578af3b52ac2f334c3b1f92262f47e02cc6193c598502bd46f5cd1477"},
+ {file = "yarl-1.18.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:90adb47ad432332d4f0bc28f83a5963f426ce9a1a8809f5e584e704b82685dcb"},
+ {file = "yarl-1.18.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:913829534200eb0f789d45349e55203a091f45c37a2674678744ae52fae23efa"},
+ {file = "yarl-1.18.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ef9f7768395923c3039055c14334ba4d926f3baf7b776c923c93d80195624782"},
+ {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88a19f62ff30117e706ebc9090b8ecc79aeb77d0b1f5ec10d2d27a12bc9f66d0"},
+ {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e17c9361d46a4d5addf777c6dd5eab0715a7684c2f11b88c67ac37edfba6c482"},
+ {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1a74a13a4c857a84a845505fd2d68e54826a2cd01935a96efb1e9d86c728e186"},
+ {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:41f7ce59d6ee7741af71d82020346af364949314ed3d87553763a2df1829cc58"},
+ {file = "yarl-1.18.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f52a265001d830bc425f82ca9eabda94a64a4d753b07d623a9f2863fde532b53"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:82123d0c954dc58db301f5021a01854a85bf1f3bb7d12ae0c01afc414a882ca2"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:2ec9bbba33b2d00999af4631a3397d1fd78290c48e2a3e52d8dd72db3a067ac8"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fbd6748e8ab9b41171bb95c6142faf068f5ef1511935a0aa07025438dd9a9bc1"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:877d209b6aebeb5b16c42cbb377f5f94d9e556626b1bfff66d7b0d115be88d0a"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b464c4ab4bfcb41e3bfd3f1c26600d038376c2de3297760dfe064d2cb7ea8e10"},
+ {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8d39d351e7faf01483cc7ff7c0213c412e38e5a340238826be7e0e4da450fdc8"},
+ {file = "yarl-1.18.3-cp313-cp313-win32.whl", hash = "sha256:61ee62ead9b68b9123ec24bc866cbef297dd266175d53296e2db5e7f797f902d"},
+ {file = "yarl-1.18.3-cp313-cp313-win_amd64.whl", hash = "sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c"},
+ {file = "yarl-1.18.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:61e5e68cb65ac8f547f6b5ef933f510134a6bf31bb178be428994b0cb46c2a04"},
+ {file = "yarl-1.18.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fe57328fbc1bfd0bd0514470ac692630f3901c0ee39052ae47acd1d90a436719"},
+ {file = "yarl-1.18.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a440a2a624683108a1b454705ecd7afc1c3438a08e890a1513d468671d90a04e"},
+ {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09c7907c8548bcd6ab860e5f513e727c53b4a714f459b084f6580b49fa1b9cee"},
+ {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b4f6450109834af88cb4cc5ecddfc5380ebb9c228695afc11915a0bf82116789"},
+ {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9ca04806f3be0ac6d558fffc2fdf8fcef767e0489d2684a21912cc4ed0cd1b8"},
+ {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77a6e85b90a7641d2e07184df5557132a337f136250caafc9ccaa4a2a998ca2c"},
+ {file = "yarl-1.18.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6333c5a377c8e2f5fae35e7b8f145c617b02c939d04110c76f29ee3676b5f9a5"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0b3c92fa08759dbf12b3a59579a4096ba9af8dd344d9a813fc7f5070d86bbab1"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:4ac515b860c36becb81bb84b667466885096b5fc85596948548b667da3bf9f24"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:045b8482ce9483ada4f3f23b3774f4e1bf4f23a2d5c912ed5170f68efb053318"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:a4bb030cf46a434ec0225bddbebd4b89e6471814ca851abb8696170adb163985"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:54d6921f07555713b9300bee9c50fb46e57e2e639027089b1d795ecd9f7fa910"},
+ {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1d407181cfa6e70077df3377938c08012d18893f9f20e92f7d2f314a437c30b1"},
+ {file = "yarl-1.18.3-cp39-cp39-win32.whl", hash = "sha256:ac36703a585e0929b032fbaab0707b75dc12703766d0b53486eabd5139ebadd5"},
+ {file = "yarl-1.18.3-cp39-cp39-win_amd64.whl", hash = "sha256:ba87babd629f8af77f557b61e49e7c7cac36f22f871156b91e10a6e9d4f829e9"},
+ {file = "yarl-1.18.3-py3-none-any.whl", hash = "sha256:b57f4f58099328dfb26c6a771d09fb20dbbae81d20cfb66141251ea063bd101b"},
+ {file = "yarl-1.18.3.tar.gz", hash = "sha256:ac1801c45cbf77b6c99242eeff4fffb5e4e73a800b5c4ad4fc0be5def634d2e1"},
]
[package.dependencies]
idna = ">=2.0"
multidict = ">=4.0"
+propcache = ">=0.2.0"
[[package]]
name = "youtube-transcript-api"
-version = "0.6.2"
+version = "0.6.3"
description = "This is an python API which allows you to get the transcripts/subtitles for a given YouTube video. It also works for automatically generated subtitles, supports translating subtitles and it does not require a headless browser, like other selenium based solutions do!"
optional = false
-python-versions = "*"
+python-versions = "<3.14,>=3.8"
files = [
- {file = "youtube_transcript_api-0.6.2-py3-none-any.whl", hash = "sha256:019dbf265c6a68a0591c513fff25ed5a116ce6525832aefdfb34d4df5567121c"},
- {file = "youtube_transcript_api-0.6.2.tar.gz", hash = "sha256:cad223d7620633cec44f657646bffc8bbc5598bd8e70b1ad2fa8277dec305eb7"},
+ {file = "youtube_transcript_api-0.6.3-py3-none-any.whl", hash = "sha256:297a74c1863d9df88f6885229f33a7eda61493d73ecb13ec80e876b65423e9b4"},
+ {file = "youtube_transcript_api-0.6.3.tar.gz", hash = "sha256:4d1f6451ae508390a5279f98519efb45e091bf60d3cca5ea0bb122800ab6a011"},
]
[package.dependencies]
+defusedxml = ">=0.7.1,<0.8.0"
requests = "*"
[[package]]
@@ -4063,5 +4323,5 @@ type = ["pytest-mypy"]
[metadata]
lock-version = "2.0"
-python-versions = "^3.10"
-content-hash = "94dbe280c8215cd4ceef47c14b681092cb03964aa081b6cdb978da7bbf818593"
+python-versions = ">=3.10,<3.13"
+content-hash = "5fae63baa6f39264987b91569b2f72c6b48353efb52c5fa92fb733d1e827513f"
diff --git a/autogpt_platform/backend/pyproject.toml b/autogpt_platform/backend/pyproject.toml
index 964290cd65..0818ebd1ce 100644
--- a/autogpt_platform/backend/pyproject.toml
+++ b/autogpt_platform/backend/pyproject.toml
@@ -8,7 +8,7 @@ packages = [{ include = "backend" }]
[tool.poetry.dependencies]
-python = "^3.10"
+python = ">=3.10,<3.13"
aio-pika = "^9.5.0"
anthropic = "^0.39.0"
apscheduler = "^3.11.0"
@@ -49,8 +49,10 @@ googlemaps = "^4.10.0"
replicate = "^1.0.4"
pinecone = "^5.3.1"
cryptography = "^43.0.3"
+python-multipart = "^0.0.19"
sqlalchemy = "^2.0.36"
psycopg2-binary = "^2.9.10"
+google-cloud-storage = "^2.18.2"
launchdarkly-server-sdk = "^9.8.0"
[tool.poetry.group.dev.dependencies]
poethepoet = "^0.31.0"
@@ -62,6 +64,8 @@ pyright = "^1.1.389"
isort = "^5.13.2"
black = "^24.10.0"
aiohappyeyeballs = "^2.4.3"
+pytest-mock = "^3.14.0"
+faker = "^30.8.2"
[build-system]
requires = ["poetry-core"]
diff --git a/autogpt_platform/backend/run_tests.py b/autogpt_platform/backend/run_tests.py
index aebb6f5b25..b2343b2082 100644
--- a/autogpt_platform/backend/run_tests.py
+++ b/autogpt_platform/backend/run_tests.py
@@ -16,9 +16,9 @@ def wait_for_postgres(max_retries=5, delay=5):
"postgres-test",
"pg_isready",
"-U",
- "agpt_user",
+ "postgres",
"-d",
- "agpt_local",
+ "postgres",
],
check=True,
capture_output=True,
diff --git a/autogpt_platform/backend/schema.prisma b/autogpt_platform/backend/schema.prisma
index baec114382..ee73e63fae 100644
--- a/autogpt_platform/backend/schema.prisma
+++ b/autogpt_platform/backend/schema.prisma
@@ -8,6 +8,7 @@ generator client {
provider = "prisma-client-py"
recursive_type_depth = 5
interface = "asyncio"
+ previewFeatures = ["views"]
}
// User model to mirror Auth provider users
@@ -24,11 +25,19 @@ model User {
// Relations
AgentGraphs AgentGraph[]
AgentGraphExecutions AgentGraphExecution[]
- IntegrationWebhooks IntegrationWebhook[]
AnalyticsDetails AnalyticsDetails[]
AnalyticsMetrics AnalyticsMetrics[]
CreditTransaction CreditTransaction[]
- APIKeys APIKey[]
+
+ AgentPreset AgentPreset[]
+ UserAgent UserAgent[]
+
+ Profile Profile[]
+ StoreListing StoreListing[]
+ StoreListingReview StoreListingReview[]
+ StoreListingSubmission StoreListingSubmission[]
+ APIKeys APIKey[]
+ IntegrationWebhooks IntegrationWebhook[]
@@index([id])
@@index([email])
@@ -48,15 +57,89 @@ model AgentGraph {
// Link to User model
userId String
+ // FIX: Do not cascade delete the agent when the user is deleted
+ // This allows us to delete user data with deleting the agent which maybe in use by other users
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
AgentNodes AgentNode[]
AgentGraphExecution AgentGraphExecution[]
+ AgentPreset AgentPreset[]
+ UserAgent UserAgent[]
+ StoreListing StoreListing[]
+ StoreListingVersion StoreListingVersion?
+
@@id(name: "graphVersionId", [id, version])
@@index([userId, isActive])
}
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+//////////////// USER SPECIFIC DATA ////////////////////
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+
+// An AgentPrest is an Agent + User Configuration of that agent.
+// For example, if someone has created a weather agent and they want to set it up to
+// Inform them of extreme weather warnings in Texas, the agent with the configuration to set it to
+// monitor texas, along with the cron setup or webhook tiggers, is an AgentPreset
+model AgentPreset {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ name String
+ description String
+
+ // For agents that can be triggered by webhooks or cronjob
+ // This bool allows us to disable a configured agent without deleting it
+ isActive Boolean @default(true)
+
+ userId String
+ User User @relation(fields: [userId], references: [id], onDelete: Cascade)
+
+ agentId String
+ agentVersion Int
+ Agent AgentGraph @relation(fields: [agentId, agentVersion], references: [id, version], onDelete: Cascade)
+
+ InputPresets AgentNodeExecutionInputOutput[] @relation("AgentPresetsInputData")
+ UserAgents UserAgent[]
+ AgentExecution AgentGraphExecution[]
+
+ @@index([userId])
+}
+
+// For the library page
+// It is a user controlled list of agents, that they will see in there library
+model UserAgent {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ userId String
+ User User @relation(fields: [userId], references: [id], onDelete: Cascade)
+
+ agentId String
+ agentVersion Int
+ Agent AgentGraph @relation(fields: [agentId, agentVersion], references: [id, version])
+
+ agentPresetId String?
+ AgentPreset AgentPreset? @relation(fields: [agentPresetId], references: [id])
+
+ isFavorite Boolean @default(false)
+ isCreatedByUser Boolean @default(false)
+ isArchived Boolean @default(false)
+ isDeleted Boolean @default(false)
+
+ @@index([userId])
+}
+
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+//////// AGENT DEFINITION AND EXECUTION TABLES ////////
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+
// This model describes a single node in the Agent Graph/Flow (Multi Agent System).
model AgentNode {
id String @id @default(uuid())
@@ -155,7 +238,9 @@ model AgentGraphExecution {
userId String
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
- stats String? // JSON serialized object
+ stats String? // JSON serialized object
+ AgentPreset AgentPreset? @relation(fields: [agentPresetId], references: [id])
+ agentPresetId String?
@@index([agentGraphId, agentGraphVersion])
@@index([userId])
@@ -202,6 +287,9 @@ model AgentNodeExecutionInputOutput {
referencedByOutputExecId String?
ReferencedByOutputExec AgentNodeExecution? @relation("AgentNodeExecutionOutput", fields: [referencedByOutputExecId], references: [id], onDelete: Cascade)
+ agentPresetId String?
+ AgentPreset AgentPreset? @relation("AgentPresetsInputData", fields: [agentPresetId], references: [id])
+
// Input and Output pin names are unique for each AgentNodeExecution.
@@unique([referencedByInputExecId, referencedByOutputExecId, name])
@@index([referencedByOutputExecId])
@@ -256,8 +344,13 @@ model AnalyticsDetails {
@@index([type])
}
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+////////////// METRICS TRACKING TABLES ////////////////
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
model AnalyticsMetrics {
- id String @id @default(dbgenerated("gen_random_uuid()"))
+ id String @id @default(uuid())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@ -281,6 +374,11 @@ enum CreditTransactionType {
USAGE
}
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+//////// ACCOUNTING AND CREDIT SYSTEM TABLES //////////
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
model CreditTransaction {
transactionKey String @default(uuid())
createdAt DateTime @default(now())
@@ -301,6 +399,205 @@ model CreditTransaction {
@@index([userId, createdAt])
}
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+////////////// Store TABLES ///////////////////////////
+////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////
+
+model Profile {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ // Only 1 of user or group can be set.
+ // The user this profile belongs to, if any.
+ userId String?
+ User User? @relation(fields: [userId], references: [id], onDelete: Cascade)
+
+ name String
+ username String @unique
+ description String
+
+ links String[]
+
+ avatarUrl String?
+
+ @@index([username])
+ @@index([userId])
+}
+
+view Creator {
+ username String @unique
+ name String
+ avatar_url String
+ description String
+
+ top_categories String[]
+ links String[]
+
+ num_agents Int
+ agent_rating Float
+ agent_runs Int
+}
+
+view StoreAgent {
+ listing_id String @id
+ storeListingVersionId String
+ updated_at DateTime
+
+ slug String
+ agent_name String
+ agent_video String?
+ agent_image String[]
+
+ featured Boolean @default(false)
+ creator_username String
+ creator_avatar String
+ sub_heading String
+ description String
+ categories String[]
+ runs Int
+ rating Float
+ versions String[]
+
+ @@unique([creator_username, slug])
+ @@index([creator_username])
+ @@index([featured])
+ @@index([categories])
+ @@index([storeListingVersionId])
+}
+
+view StoreSubmission {
+ listing_id String @id
+ user_id String
+ slug String
+ name String
+ sub_heading String
+ description String
+ image_urls String[]
+ date_submitted DateTime
+ status SubmissionStatus
+ runs Int
+ rating Float
+ agent_id String
+ agent_version Int
+
+ @@index([user_id])
+}
+
+model StoreListing {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ isDeleted Boolean @default(false)
+ // Not needed but makes lookups faster
+ isApproved Boolean @default(false)
+
+ // The agent link here is only so we can do lookup on agentId, for the listing the StoreListingVersion is used.
+ agentId String
+ agentVersion Int
+ Agent AgentGraph @relation(fields: [agentId, agentVersion], references: [id, version], onDelete: Cascade)
+
+ owningUserId String
+ OwningUser User @relation(fields: [owningUserId], references: [id])
+
+ StoreListingVersions StoreListingVersion[]
+ StoreListingSubmission StoreListingSubmission[]
+
+ @@index([isApproved])
+ @@index([agentId])
+ @@index([owningUserId])
+}
+
+model StoreListingVersion {
+ id String @id @default(uuid())
+ version Int @default(1)
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ // The agent and version to be listed on the store
+ agentId String
+ agentVersion Int
+ Agent AgentGraph @relation(fields: [agentId, agentVersion], references: [id, version])
+
+ // The detials for this version of the agent, this allows the author to update the details of the agent,
+ // But still allow using old versions of the agent with there original details.
+ // TODO: Create a database view that shows only the latest version of each store listing.
+ slug String
+ name String
+ subHeading String
+ videoUrl String?
+ imageUrls String[]
+ description String
+ categories String[]
+
+ isFeatured Boolean @default(false)
+
+ isDeleted Boolean @default(false)
+ // Old versions can be made unavailable by the author if desired
+ isAvailable Boolean @default(true)
+ // Not needed but makes lookups faster
+ isApproved Boolean @default(false)
+ StoreListing StoreListing? @relation(fields: [storeListingId], references: [id], onDelete: Cascade)
+ storeListingId String?
+ StoreListingSubmission StoreListingSubmission[]
+
+ // Reviews are on a specific version, but then aggregated up to the listing.
+ // This allows us to provide a review filter to current version of the agent.
+ StoreListingReview StoreListingReview[]
+
+ @@unique([agentId, agentVersion])
+ @@index([agentId, agentVersion, isApproved])
+}
+
+model StoreListingReview {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ storeListingVersionId String
+ StoreListingVersion StoreListingVersion @relation(fields: [storeListingVersionId], references: [id], onDelete: Cascade)
+
+ reviewByUserId String
+ ReviewByUser User @relation(fields: [reviewByUserId], references: [id])
+
+ score Int
+ comments String?
+
+ @@unique([storeListingVersionId, reviewByUserId])
+ @@index([storeListingVersionId])
+}
+
+enum SubmissionStatus {
+ DAFT
+ PENDING
+ APPROVED
+ REJECTED
+}
+
+model StoreListingSubmission {
+ id String @id @default(uuid())
+ createdAt DateTime @default(now())
+ updatedAt DateTime @default(now()) @updatedAt
+
+ storeListingId String
+ StoreListing StoreListing @relation(fields: [storeListingId], references: [id], onDelete: Cascade)
+
+ storeListingVersionId String
+ StoreListingVersion StoreListingVersion @relation(fields: [storeListingVersionId], references: [id], onDelete: Cascade)
+
+ reviewerId String
+ Reviewer User @relation(fields: [reviewerId], references: [id])
+
+ Status SubmissionStatus @default(PENDING)
+ reviewComments String?
+
+ @@index([storeListingId])
+ @@index([Status])
+}
+
enum APIKeyPermission {
EXECUTE_GRAPH // Can execute agent graphs
READ_GRAPH // Can get graph versions and details
@@ -338,4 +635,4 @@ enum APIKeyStatus {
ACTIVE
REVOKED
SUSPENDED
-}
+}
\ No newline at end of file
diff --git a/autogpt_platform/backend/test/test_data_creator.py b/autogpt_platform/backend/test/test_data_creator.py
new file mode 100644
index 0000000000..1f79386cc6
--- /dev/null
+++ b/autogpt_platform/backend/test/test_data_creator.py
@@ -0,0 +1,436 @@
+import asyncio
+import random
+from datetime import datetime
+
+import prisma.enums
+from faker import Faker
+from prisma import Prisma
+
+faker = Faker()
+
+# Constants for data generation limits
+
+# Base entities
+NUM_USERS = 100 # Creates 100 user records
+NUM_AGENT_BLOCKS = 100 # Creates 100 agent block templates
+
+# Per-user entities
+MIN_GRAPHS_PER_USER = 1 # Each user will have between 1-5 graphs
+MAX_GRAPHS_PER_USER = 5 # Total graphs: 500-2500 (NUM_USERS * MIN/MAX_GRAPHS)
+
+# Per-graph entities
+MIN_NODES_PER_GRAPH = 2 # Each graph will have between 2-5 nodes
+MAX_NODES_PER_GRAPH = (
+ 5 # Total nodes: 1000-2500 (GRAPHS_PER_USER * NUM_USERS * MIN/MAX_NODES)
+)
+
+# Additional per-user entities
+MIN_PRESETS_PER_USER = 1 # Each user will have between 1-2 presets
+MAX_PRESETS_PER_USER = 5 # Total presets: 500-2500 (NUM_USERS * MIN/MAX_PRESETS)
+MIN_AGENTS_PER_USER = 1 # Each user will have between 1-2 agents
+MAX_AGENTS_PER_USER = 10 # Total agents: 500-5000 (NUM_USERS * MIN/MAX_AGENTS)
+
+# Execution and review records
+MIN_EXECUTIONS_PER_GRAPH = 1 # Each graph will have between 1-5 execution records
+MAX_EXECUTIONS_PER_GRAPH = (
+ 20 # Total executions: 1000-5000 (TOTAL_GRAPHS * MIN/MAX_EXECUTIONS)
+)
+MIN_REVIEWS_PER_VERSION = 1 # Each version will have between 1-3 reviews
+MAX_REVIEWS_PER_VERSION = 5 # Total reviews depends on number of versions created
+
+
+def get_image():
+ url = faker.image_url()
+ while "placekitten.com" in url:
+ url = faker.image_url()
+ return url
+
+
+async def main():
+ db = Prisma()
+ await db.connect()
+
+ # Insert Users
+ print(f"Inserting {NUM_USERS} users")
+ users = []
+ for _ in range(NUM_USERS):
+ user = await db.user.create(
+ data={
+ "id": str(faker.uuid4()),
+ "email": faker.unique.email(),
+ "name": faker.name(),
+ "metadata": prisma.Json({}),
+ "integrations": "",
+ }
+ )
+ users.append(user)
+
+ # Insert AgentBlocks
+ agent_blocks = []
+ print(f"Inserting {NUM_AGENT_BLOCKS} agent blocks")
+ for _ in range(NUM_AGENT_BLOCKS):
+ block = await db.agentblock.create(
+ data={
+ "name": f"{faker.word()}_{str(faker.uuid4())[:8]}",
+ "inputSchema": "{}",
+ "outputSchema": "{}",
+ }
+ )
+ agent_blocks.append(block)
+
+ # Insert AgentGraphs
+ agent_graphs = []
+ print(f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER} agent graphs")
+ for user in users:
+ for _ in range(
+ random.randint(MIN_GRAPHS_PER_USER, MAX_GRAPHS_PER_USER)
+ ): # Adjust the range to create more graphs per user if desired
+ graph = await db.agentgraph.create(
+ data={
+ "name": faker.sentence(nb_words=3),
+ "description": faker.text(max_nb_chars=200),
+ "userId": user.id,
+ "isActive": True,
+ "isTemplate": False,
+ }
+ )
+ agent_graphs.append(graph)
+
+ # Insert AgentNodes
+ agent_nodes = []
+ print(
+ f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER * MAX_NODES_PER_GRAPH} agent nodes"
+ )
+ for graph in agent_graphs:
+ num_nodes = random.randint(MIN_NODES_PER_GRAPH, MAX_NODES_PER_GRAPH)
+ for _ in range(num_nodes): # Create 5 AgentNodes per graph
+ block = random.choice(agent_blocks)
+ node = await db.agentnode.create(
+ data={
+ "agentBlockId": block.id,
+ "agentGraphId": graph.id,
+ "agentGraphVersion": graph.version,
+ "constantInput": "{}",
+ "metadata": "{}",
+ }
+ )
+ agent_nodes.append(node)
+
+ # Insert AgentPresets
+ agent_presets = []
+ print(f"Inserting {NUM_USERS * MAX_PRESETS_PER_USER} agent presets")
+ for user in users:
+ num_presets = random.randint(MIN_PRESETS_PER_USER, MAX_PRESETS_PER_USER)
+ for _ in range(num_presets): # Create 1 AgentPreset per user
+ graph = random.choice(agent_graphs)
+ preset = await db.agentpreset.create(
+ data={
+ "name": faker.sentence(nb_words=3),
+ "description": faker.text(max_nb_chars=200),
+ "userId": user.id,
+ "agentId": graph.id,
+ "agentVersion": graph.version,
+ "isActive": True,
+ }
+ )
+ agent_presets.append(preset)
+
+ # Insert UserAgents
+ user_agents = []
+ print(f"Inserting {NUM_USERS * MAX_AGENTS_PER_USER} user agents")
+ for user in users:
+ num_agents = random.randint(MIN_AGENTS_PER_USER, MAX_AGENTS_PER_USER)
+ for _ in range(num_agents): # Create 1 UserAgent per user
+ graph = random.choice(agent_graphs)
+ preset = random.choice(agent_presets)
+ user_agent = await db.useragent.create(
+ data={
+ "userId": user.id,
+ "agentId": graph.id,
+ "agentVersion": graph.version,
+ "agentPresetId": preset.id,
+ "isFavorite": random.choice([True, False]),
+ "isCreatedByUser": random.choice([True, False]),
+ "isArchived": random.choice([True, False]),
+ "isDeleted": random.choice([True, False]),
+ }
+ )
+ user_agents.append(user_agent)
+
+ # Insert AgentGraphExecutions
+ # Insert AgentGraphExecutions
+ agent_graph_executions = []
+ print(
+ f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER * MAX_EXECUTIONS_PER_GRAPH} agent graph executions"
+ )
+ graph_execution_data = []
+ for graph in agent_graphs:
+ user = random.choice(users)
+ num_executions = random.randint(
+ MIN_EXECUTIONS_PER_GRAPH, MAX_EXECUTIONS_PER_GRAPH
+ )
+ for _ in range(num_executions):
+ matching_presets = [p for p in agent_presets if p.agentId == graph.id]
+ preset = (
+ random.choice(matching_presets)
+ if matching_presets and random.random() < 0.5
+ else None
+ )
+
+ graph_execution_data.append(
+ {
+ "agentGraphId": graph.id,
+ "agentGraphVersion": graph.version,
+ "userId": user.id,
+ "executionStatus": prisma.enums.AgentExecutionStatus.COMPLETED,
+ "startedAt": faker.date_time_this_year(),
+ "agentPresetId": preset.id if preset else None,
+ }
+ )
+
+ agent_graph_executions = await db.agentgraphexecution.create_many(
+ data=graph_execution_data
+ )
+ # Need to fetch the created records since create_many doesn't return them
+ agent_graph_executions = await db.agentgraphexecution.find_many()
+
+ # Insert AgentNodeExecutions
+ print(
+ f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER * MAX_EXECUTIONS_PER_GRAPH} agent node executions"
+ )
+ node_execution_data = []
+ for execution in agent_graph_executions:
+ nodes = [
+ node for node in agent_nodes if node.agentGraphId == execution.agentGraphId
+ ]
+ for node in nodes:
+ node_execution_data.append(
+ {
+ "agentGraphExecutionId": execution.id,
+ "agentNodeId": node.id,
+ "executionStatus": prisma.enums.AgentExecutionStatus.COMPLETED,
+ "addedTime": datetime.now(),
+ }
+ )
+
+ agent_node_executions = await db.agentnodeexecution.create_many(
+ data=node_execution_data
+ )
+ # Need to fetch the created records since create_many doesn't return them
+ agent_node_executions = await db.agentnodeexecution.find_many()
+
+ # Insert AgentNodeExecutionInputOutput
+ print(
+ f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER * MAX_EXECUTIONS_PER_GRAPH} agent node execution input/outputs"
+ )
+ input_output_data = []
+ for node_execution in agent_node_executions:
+ # Input data
+ input_output_data.append(
+ {
+ "name": "input1",
+ "data": "{}",
+ "time": datetime.now(),
+ "referencedByInputExecId": node_execution.id,
+ }
+ )
+ # Output data
+ input_output_data.append(
+ {
+ "name": "output1",
+ "data": "{}",
+ "time": datetime.now(),
+ "referencedByOutputExecId": node_execution.id,
+ }
+ )
+
+ await db.agentnodeexecutioninputoutput.create_many(data=input_output_data)
+
+ # Insert AgentNodeLinks
+ print(f"Inserting {NUM_USERS * MAX_GRAPHS_PER_USER} agent node links")
+ for graph in agent_graphs:
+ nodes = [node for node in agent_nodes if node.agentGraphId == graph.id]
+ if len(nodes) >= 2:
+ source_node = nodes[0]
+ sink_node = nodes[1]
+ await db.agentnodelink.create(
+ data={
+ "agentNodeSourceId": source_node.id,
+ "sourceName": "output1",
+ "agentNodeSinkId": sink_node.id,
+ "sinkName": "input1",
+ "isStatic": False,
+ }
+ )
+
+ # Insert AnalyticsDetails
+ print(f"Inserting {NUM_USERS} analytics details")
+ for user in users:
+ for _ in range(1):
+ await db.analyticsdetails.create(
+ data={
+ "userId": user.id,
+ "type": faker.word(),
+ "data": prisma.Json({}),
+ "dataIndex": faker.word(),
+ }
+ )
+
+ # Insert AnalyticsMetrics
+ print(f"Inserting {NUM_USERS} analytics metrics")
+ for user in users:
+ for _ in range(1):
+ await db.analyticsmetrics.create(
+ data={
+ "userId": user.id,
+ "analyticMetric": faker.word(),
+ "value": random.uniform(0, 100),
+ "dataString": faker.word(),
+ }
+ )
+
+ # Insert CreditTransaction (formerly UserBlockCredit)
+ print(f"Inserting {NUM_USERS} credit transactions")
+ for user in users:
+ for _ in range(1):
+ block = random.choice(agent_blocks)
+ await db.credittransaction.create(
+ data={
+ "transactionKey": str(faker.uuid4()),
+ "userId": user.id,
+ "blockId": block.id,
+ "amount": random.randint(1, 100),
+ "type": (
+ prisma.enums.CreditTransactionType.TOP_UP
+ if random.random() < 0.5
+ else prisma.enums.CreditTransactionType.USAGE
+ ),
+ "metadata": prisma.Json({}),
+ }
+ )
+
+ # Insert Profiles
+ profiles = []
+ print(f"Inserting {NUM_USERS} profiles")
+ for user in users:
+ profile = await db.profile.create(
+ data={
+ "userId": user.id,
+ "name": user.name or faker.name(),
+ "username": faker.unique.user_name(),
+ "description": faker.text(),
+ "links": [faker.url() for _ in range(3)],
+ "avatarUrl": get_image(),
+ }
+ )
+ profiles.append(profile)
+
+ # Insert StoreListings
+ store_listings = []
+ print(f"Inserting {NUM_USERS} store listings")
+ for graph in agent_graphs:
+ user = random.choice(users)
+ listing = await db.storelisting.create(
+ data={
+ "agentId": graph.id,
+ "agentVersion": graph.version,
+ "owningUserId": user.id,
+ "isApproved": random.choice([True, False]),
+ }
+ )
+ store_listings.append(listing)
+
+ # Insert StoreListingVersions
+ store_listing_versions = []
+ print(f"Inserting {NUM_USERS} store listing versions")
+ for listing in store_listings:
+ graph = [g for g in agent_graphs if g.id == listing.agentId][0]
+ version = await db.storelistingversion.create(
+ data={
+ "agentId": graph.id,
+ "agentVersion": graph.version,
+ "slug": faker.slug(),
+ "name": graph.name or faker.sentence(nb_words=3),
+ "subHeading": faker.sentence(),
+ "videoUrl": faker.url(),
+ "imageUrls": [get_image() for _ in range(3)],
+ "description": faker.text(),
+ "categories": [faker.word() for _ in range(3)],
+ "isFeatured": random.choice([True, False]),
+ "isAvailable": True,
+ "isApproved": random.choice([True, False]),
+ "storeListingId": listing.id,
+ }
+ )
+ store_listing_versions.append(version)
+
+ # Insert StoreListingReviews
+ print(f"Inserting {NUM_USERS * MAX_REVIEWS_PER_VERSION} store listing reviews")
+ for version in store_listing_versions:
+ # Create a copy of users list and shuffle it to avoid duplicates
+ available_reviewers = users.copy()
+ random.shuffle(available_reviewers)
+
+ # Limit number of reviews to available unique reviewers
+ num_reviews = min(
+ random.randint(MIN_REVIEWS_PER_VERSION, MAX_REVIEWS_PER_VERSION),
+ len(available_reviewers),
+ )
+
+ # Take only the first num_reviews reviewers
+ for reviewer in available_reviewers[:num_reviews]:
+ await db.storelistingreview.create(
+ data={
+ "storeListingVersionId": version.id,
+ "reviewByUserId": reviewer.id,
+ "score": random.randint(1, 5),
+ "comments": faker.text(),
+ }
+ )
+
+ # Insert StoreListingSubmissions
+ print(f"Inserting {NUM_USERS} store listing submissions")
+ for listing in store_listings:
+ version = random.choice(store_listing_versions)
+ reviewer = random.choice(users)
+ status: prisma.enums.SubmissionStatus = random.choice(
+ [
+ prisma.enums.SubmissionStatus.PENDING,
+ prisma.enums.SubmissionStatus.APPROVED,
+ prisma.enums.SubmissionStatus.REJECTED,
+ ]
+ )
+ await db.storelistingsubmission.create(
+ data={
+ "storeListingId": listing.id,
+ "storeListingVersionId": version.id,
+ "reviewerId": reviewer.id,
+ "Status": status,
+ "reviewComments": faker.text(),
+ }
+ )
+
+ # Insert APIKeys
+ print(f"Inserting {NUM_USERS} api keys")
+ for user in users:
+ await db.apikey.create(
+ data={
+ "name": faker.word(),
+ "prefix": str(faker.uuid4())[:8],
+ "postfix": str(faker.uuid4())[-8:],
+ "key": str(faker.sha256()),
+ "status": prisma.enums.APIKeyStatus.ACTIVE,
+ "permissions": [
+ prisma.enums.APIKeyPermission.EXECUTE_GRAPH,
+ prisma.enums.APIKeyPermission.READ_GRAPH,
+ ],
+ "description": faker.text(),
+ "userId": user.id,
+ }
+ )
+
+ await db.disconnect()
+
+
+if __name__ == "__main__":
+ asyncio.run(main())
diff --git a/autogpt_platform/frontend/.env.example b/autogpt_platform/frontend/.env.example
index 3ef8985b63..879858ecfd 100644
--- a/autogpt_platform/frontend/.env.example
+++ b/autogpt_platform/frontend/.env.example
@@ -6,6 +6,11 @@ NEXT_PUBLIC_LAUNCHDARKLY_ENABLED=false
NEXT_PUBLIC_LAUNCHDARKLY_CLIENT_ID=
NEXT_PUBLIC_APP_ENV=dev
+## Locale settings
+
+NEXT_PUBLIC_DEFAULT_LOCALE=en
+NEXT_PUBLIC_LOCALES=en,es
+
## Supabase credentials
NEXT_PUBLIC_SUPABASE_URL=http://localhost:8000
diff --git a/autogpt_platform/frontend/.gitignore b/autogpt_platform/frontend/.gitignore
index 2611438bd9..22cda21b77 100644
--- a/autogpt_platform/frontend/.gitignore
+++ b/autogpt_platform/frontend/.gitignore
@@ -45,3 +45,6 @@ node_modules/
*storybook.log
storybook-static
+*.ignore.*
+*.ign.*
+.cursorrules
\ No newline at end of file
diff --git a/autogpt_platform/frontend/.storybook/main.ts b/autogpt_platform/frontend/.storybook/main.ts
index d6f94d7958..62db72c320 100644
--- a/autogpt_platform/frontend/.storybook/main.ts
+++ b/autogpt_platform/frontend/.storybook/main.ts
@@ -3,12 +3,15 @@ import type { StorybookConfig } from "@storybook/nextjs";
const config: StorybookConfig = {
stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
addons: [
+ "@storybook/addon-a11y",
"@storybook/addon-onboarding",
"@storybook/addon-links",
"@storybook/addon-essentials",
- "@chromatic-com/storybook",
"@storybook/addon-interactions",
],
+ features: {
+ experimentalRSC: true,
+ },
framework: {
name: "@storybook/nextjs",
options: {},
diff --git a/autogpt_platform/frontend/.storybook/preview.ts b/autogpt_platform/frontend/.storybook/preview.ts
index 2c5c6ea845..b8bef1a320 100644
--- a/autogpt_platform/frontend/.storybook/preview.ts
+++ b/autogpt_platform/frontend/.storybook/preview.ts
@@ -1,8 +1,15 @@
import type { Preview } from "@storybook/react";
+import { initialize, mswLoader } from "msw-storybook-addon";
import "../src/app/globals.css";
+// Initialize MSW
+initialize();
+
const preview: Preview = {
parameters: {
+ nextjs: {
+ appDirectory: true,
+ },
controls: {
matchers: {
color: /(background|color)$/i,
@@ -10,6 +17,7 @@ const preview: Preview = {
},
},
},
+ loaders: [mswLoader],
};
export default preview;
diff --git a/autogpt_platform/frontend/.storybook/test-runner.ts b/autogpt_platform/frontend/.storybook/test-runner.ts
new file mode 100644
index 0000000000..fc12dcc48d
--- /dev/null
+++ b/autogpt_platform/frontend/.storybook/test-runner.ts
@@ -0,0 +1,22 @@
+import type { TestRunnerConfig } from "@storybook/test-runner";
+import { injectAxe, checkA11y } from "axe-playwright";
+
+/*
+ * See https://storybook.js.org/docs/writing-tests/test-runner#test-hook-api
+ * to learn more about the test-runner hooks API.
+ */
+const config: TestRunnerConfig = {
+ async preVisit(page) {
+ await injectAxe(page);
+ },
+ async postVisit(page) {
+ await checkA11y(page, "#storybook-root", {
+ detailedReport: true,
+ detailedReportOptions: {
+ html: true,
+ },
+ });
+ },
+};
+
+export default config;
diff --git a/autogpt_platform/frontend/Dockerfile b/autogpt_platform/frontend/Dockerfile
index 2d92d69eaa..8d50992212 100644
--- a/autogpt_platform/frontend/Dockerfile
+++ b/autogpt_platform/frontend/Dockerfile
@@ -7,18 +7,21 @@ RUN --mount=type=cache,target=/usr/local/share/.cache yarn install --frozen-lock
# Dev stage
FROM base AS dev
ENV NODE_ENV=development
+ENV HOSTNAME=0.0.0.0
COPY autogpt_platform/frontend/ .
EXPOSE 3000
-CMD ["yarn", "run", "dev"]
+CMD ["yarn", "run", "dev", "--hostname", "0.0.0.0"]
# Build stage for prod
FROM base AS build
COPY autogpt_platform/frontend/ .
+ENV SKIP_STORYBOOK_TESTS=true
RUN yarn build
# Prod stage - based on NextJS reference Dockerfile https://github.com/vercel/next.js/blob/64271354533ed16da51be5dce85f0dbd15f17517/examples/with-docker/Dockerfile
FROM node:21-alpine AS prod
ENV NODE_ENV=production
+ENV HOSTNAME=0.0.0.0
WORKDIR /app
RUN addgroup --system --gid 1001 nodejs
diff --git a/autogpt_platform/frontend/next.config.mjs b/autogpt_platform/frontend/next.config.mjs
index e96de25bca..6700943d43 100644
--- a/autogpt_platform/frontend/next.config.mjs
+++ b/autogpt_platform/frontend/next.config.mjs
@@ -3,16 +3,16 @@ import { withSentryConfig } from "@sentry/nextjs";
/** @type {import('next').NextConfig} */
const nextConfig = {
images: {
- domains: ["images.unsplash.com"],
- },
- async redirects() {
- return [
- {
- source: "/monitor", // FIXME: Remove after 2024-09-01
- destination: "/",
- permanent: false,
- },
- ];
+ domains: [
+ "images.unsplash.com",
+ "ddz4ak4pa3d19.cloudfront.net",
+ "upload.wikimedia.org",
+ "storage.googleapis.com",
+
+ "picsum.photos", // for placeholder images
+ "dummyimage.com", // for placeholder images
+ "placekitten.com", // for placeholder images
+ ],
},
output: "standalone",
// TODO: Re-enable TypeScript checks once current issues are resolved
@@ -46,7 +46,7 @@ export default withSentryConfig(nextConfig, {
// This can increase your server load as well as your hosting bill.
// Note: Check that the configured route will not match with your Next.js middleware, otherwise reporting of client-
// side errors will fail.
- tunnelRoute: "/monitoring",
+ tunnelRoute: "/store",
// Hides source maps from generated client bundles
hideSourceMaps: true,
diff --git a/autogpt_platform/frontend/package.json b/autogpt_platform/frontend/package.json
index 4b5133d7a3..d72c987f4d 100644
--- a/autogpt_platform/frontend/package.json
+++ b/autogpt_platform/frontend/package.json
@@ -4,9 +4,9 @@
"private": true,
"scripts": {
"dev": "next dev",
- "dev:nosentry": "export NODE_ENV=development && export DISABLE_SENTRY=true && next dev",
- "dev:test": "export NODE_ENV=test && next dev",
- "build": "next build",
+ "dev:nosentry": "NODE_ENV=development && DISABLE_SENTRY=true && next dev",
+ "dev:test": "NODE_ENV=test && next dev",
+ "build": "SKIP_STORYBOOK_TESTS=true next build",
"start": "next start",
"lint": "next lint && prettier --check .",
"format": "prettier --write .",
@@ -50,13 +50,17 @@
"@tanstack/react-table": "^8.20.5",
"@xyflow/react": "^12.3.6",
"ajv": "^8.17.1",
+ "boring-avatars": "^1.11.2",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"cmdk": "1.0.4",
"cookie": "1.0.2",
"date-fns": "^4.1.0",
"dotenv": "^16.4.7",
- "elliptic": "6.6.1",
+ "elliptic": "6.6.0",
+ "embla-carousel-react": "^8.3.0",
+ "framer-motion": "^11.11.9",
+ "geist": "^1.3.1",
"launchdarkly-react-client-sdk": "^3.6.0",
"lucide-react": "^0.468.0",
"moment": "^2.30.1",
@@ -78,24 +82,30 @@
},
"devDependencies": {
"@chromatic-com/storybook": "^3.2.2",
- "@playwright/test": "^1.49.0",
- "@storybook/addon-essentials": "^8.4.5",
- "@storybook/addon-interactions": "^8.4.5",
- "@storybook/addon-links": "^8.4.5",
- "@storybook/addon-onboarding": "^8.4.5",
- "@storybook/blocks": "^8.4.5",
- "@storybook/nextjs": "^8.4.5",
+ "@playwright/test": "^1.48.2",
+ "@storybook/addon-a11y": "^8.3.5",
+ "@storybook/addon-essentials": "^8.4.2",
+ "@storybook/addon-interactions": "^8.4.2",
+ "@storybook/addon-links": "^8.4.2",
+ "@storybook/addon-onboarding": "^8.4.2",
+ "@storybook/blocks": "^8.4.2",
+ "@storybook/nextjs": "^8.4.2",
"@storybook/react": "^8.3.5",
"@storybook/test": "^8.3.5",
"@storybook/test-runner": "^0.19.1",
- "@types/node": "^22.9.3",
+ "@types/negotiator": "^0.6.3",
+ "@types/node": "^22.9.0",
"@types/react": "^18",
"@types/react-dom": "^18",
"@types/react-modal": "^3.16.3",
- "concurrently": "^9.1.0",
+ "axe-playwright": "^2.0.3",
+ "chromatic": "^11.12.5",
+ "concurrently": "^9.0.1",
"eslint": "^8",
"eslint-config-next": "15.0.3",
- "eslint-plugin-storybook": "^0.11.1",
+ "eslint-plugin-storybook": "^0.11.0",
+ "msw": "^2.5.2",
+ "msw-storybook-addon": "^2.0.3",
"postcss": "^8",
"prettier": "^3.3.3",
"prettier-plugin-tailwindcss": "^0.6.9",
@@ -103,5 +113,10 @@
"tailwindcss": "^3.4.15",
"typescript": "^5"
},
- "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
+ "msw": {
+ "workerDirectory": [
+ "public"
+ ]
+ }
}
diff --git a/autogpt_platform/frontend/playwright.config.ts b/autogpt_platform/frontend/playwright.config.ts
index e1bcd8d98a..ed0bdc445c 100644
--- a/autogpt_platform/frontend/playwright.config.ts
+++ b/autogpt_platform/frontend/playwright.config.ts
@@ -30,8 +30,11 @@ export default defineConfig({
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
trace: "on-first-retry",
+ screenshot: "only-on-failure",
bypassCSP: true,
},
+ /* Maximum time one test can run for */
+ timeout: 60000,
/* Configure projects for major browsers */
projects: [
@@ -40,31 +43,31 @@ export default defineConfig({
use: { ...devices["Desktop Chrome"] },
},
- {
- name: "firefox",
- use: { ...devices["Desktop Firefox"] },
- },
+ // {
+ // name: "firefox",
+ // use: { ...devices["Desktop Firefox"] },
+ // },
{
name: "webkit",
use: { ...devices["Desktop Safari"] },
},
- /* Test against mobile viewports. */
- // {
- // name: 'Mobile Chrome',
- // use: { ...devices['Pixel 5'] },
- // },
- // {
- // name: 'Mobile Safari',
- // use: { ...devices['iPhone 12'] },
- // },
+ // /* Test against mobile viewports. */
+ // // {
+ // // name: 'Mobile Chrome',
+ // // use: { ...devices['Pixel 5'] },
+ // // },
+ // // {
+ // // name: 'Mobile Safari',
+ // // use: { ...devices['iPhone 12'] },
+ // // },
- /* Test against branded browsers. */
- {
- name: "Microsoft Edge",
- use: { ...devices["Desktop Edge"], channel: "msedge" },
- },
+ // /* Test against branded browsers. */
+ // {
+ // name: "Microsoft Edge",
+ // use: { ...devices["Desktop Edge"], channel: "msedge" },
+ // },
// {
// name: 'Google Chrome',
// use: { ...devices['Desktop Chrome'], channel: 'chrome' },
diff --git a/autogpt_platform/frontend/public/mockServiceWorker.js b/autogpt_platform/frontend/public/mockServiceWorker.js
new file mode 100644
index 0000000000..dbc5b1d0cf
--- /dev/null
+++ b/autogpt_platform/frontend/public/mockServiceWorker.js
@@ -0,0 +1,307 @@
+/* eslint-disable */
+/* tslint:disable */
+
+/**
+ * Mock Service Worker.
+ * @see https://github.com/mswjs/msw
+ * - Please do NOT modify this file.
+ * - Please do NOT serve this file on production.
+ */
+
+const PACKAGE_VERSION = '2.6.8'
+const INTEGRITY_CHECKSUM = '00729d72e3b82faf54ca8b9621dbb96f'
+const IS_MOCKED_RESPONSE = Symbol('isMockedResponse')
+const activeClientIds = new Set()
+
+self.addEventListener('install', function () {
+ self.skipWaiting()
+})
+
+self.addEventListener('activate', function (event) {
+ event.waitUntil(self.clients.claim())
+})
+
+self.addEventListener('message', async function (event) {
+ const clientId = event.source.id
+
+ if (!clientId || !self.clients) {
+ return
+ }
+
+ const client = await self.clients.get(clientId)
+
+ if (!client) {
+ return
+ }
+
+ const allClients = await self.clients.matchAll({
+ type: 'window',
+ })
+
+ switch (event.data) {
+ case 'KEEPALIVE_REQUEST': {
+ sendToClient(client, {
+ type: 'KEEPALIVE_RESPONSE',
+ })
+ break
+ }
+
+ case 'INTEGRITY_CHECK_REQUEST': {
+ sendToClient(client, {
+ type: 'INTEGRITY_CHECK_RESPONSE',
+ payload: {
+ packageVersion: PACKAGE_VERSION,
+ checksum: INTEGRITY_CHECKSUM,
+ },
+ })
+ break
+ }
+
+ case 'MOCK_ACTIVATE': {
+ activeClientIds.add(clientId)
+
+ sendToClient(client, {
+ type: 'MOCKING_ENABLED',
+ payload: {
+ client: {
+ id: client.id,
+ frameType: client.frameType,
+ },
+ },
+ })
+ break
+ }
+
+ case 'MOCK_DEACTIVATE': {
+ activeClientIds.delete(clientId)
+ break
+ }
+
+ case 'CLIENT_CLOSED': {
+ activeClientIds.delete(clientId)
+
+ const remainingClients = allClients.filter((client) => {
+ return client.id !== clientId
+ })
+
+ // Unregister itself when there are no more clients
+ if (remainingClients.length === 0) {
+ self.registration.unregister()
+ }
+
+ break
+ }
+ }
+})
+
+self.addEventListener('fetch', function (event) {
+ const { request } = event
+
+ // Bypass navigation requests.
+ if (request.mode === 'navigate') {
+ return
+ }
+
+ // Opening the DevTools triggers the "only-if-cached" request
+ // that cannot be handled by the worker. Bypass such requests.
+ if (request.cache === 'only-if-cached' && request.mode !== 'same-origin') {
+ return
+ }
+
+ // Bypass all requests when there are no active clients.
+ // Prevents the self-unregistered worked from handling requests
+ // after it's been deleted (still remains active until the next reload).
+ if (activeClientIds.size === 0) {
+ return
+ }
+
+ // Generate unique request ID.
+ const requestId = crypto.randomUUID()
+ event.respondWith(handleRequest(event, requestId))
+})
+
+async function handleRequest(event, requestId) {
+ const client = await resolveMainClient(event)
+ const response = await getResponse(event, client, requestId)
+
+ // Send back the response clone for the "response:*" life-cycle events.
+ // Ensure MSW is active and ready to handle the message, otherwise
+ // this message will pend indefinitely.
+ if (client && activeClientIds.has(client.id)) {
+ ;(async function () {
+ const responseClone = response.clone()
+
+ sendToClient(
+ client,
+ {
+ type: 'RESPONSE',
+ payload: {
+ requestId,
+ isMockedResponse: IS_MOCKED_RESPONSE in response,
+ type: responseClone.type,
+ status: responseClone.status,
+ statusText: responseClone.statusText,
+ body: responseClone.body,
+ headers: Object.fromEntries(responseClone.headers.entries()),
+ },
+ },
+ [responseClone.body],
+ )
+ })()
+ }
+
+ return response
+}
+
+// Resolve the main client for the given event.
+// Client that issues a request doesn't necessarily equal the client
+// that registered the worker. It's with the latter the worker should
+// communicate with during the response resolving phase.
+async function resolveMainClient(event) {
+ const client = await self.clients.get(event.clientId)
+
+ if (activeClientIds.has(event.clientId)) {
+ return client
+ }
+
+ if (client?.frameType === 'top-level') {
+ return client
+ }
+
+ const allClients = await self.clients.matchAll({
+ type: 'window',
+ })
+
+ return allClients
+ .filter((client) => {
+ // Get only those clients that are currently visible.
+ return client.visibilityState === 'visible'
+ })
+ .find((client) => {
+ // Find the client ID that's recorded in the
+ // set of clients that have registered the worker.
+ return activeClientIds.has(client.id)
+ })
+}
+
+async function getResponse(event, client, requestId) {
+ const { request } = event
+
+ // Clone the request because it might've been already used
+ // (i.e. its body has been read and sent to the client).
+ const requestClone = request.clone()
+
+ function passthrough() {
+ // Cast the request headers to a new Headers instance
+ // so the headers can be manipulated with.
+ const headers = new Headers(requestClone.headers)
+
+ // Remove the "accept" header value that marked this request as passthrough.
+ // This prevents request alteration and also keeps it compliant with the
+ // user-defined CORS policies.
+ const acceptHeader = headers.get('accept')
+ if (acceptHeader) {
+ const values = acceptHeader.split(',').map((value) => value.trim())
+ const filteredValues = values.filter(
+ (value) => value !== 'msw/passthrough',
+ )
+
+ if (filteredValues.length > 0) {
+ headers.set('accept', filteredValues.join(', '))
+ } else {
+ headers.delete('accept')
+ }
+ }
+
+ return fetch(requestClone, { headers })
+ }
+
+ // Bypass mocking when the client is not active.
+ if (!client) {
+ return passthrough()
+ }
+
+ // Bypass initial page load requests (i.e. static assets).
+ // The absence of the immediate/parent client in the map of the active clients
+ // means that MSW hasn't dispatched the "MOCK_ACTIVATE" event yet
+ // and is not ready to handle requests.
+ if (!activeClientIds.has(client.id)) {
+ return passthrough()
+ }
+
+ // Notify the client that a request has been intercepted.
+ const requestBuffer = await request.arrayBuffer()
+ const clientMessage = await sendToClient(
+ client,
+ {
+ type: 'REQUEST',
+ payload: {
+ id: requestId,
+ url: request.url,
+ mode: request.mode,
+ method: request.method,
+ headers: Object.fromEntries(request.headers.entries()),
+ cache: request.cache,
+ credentials: request.credentials,
+ destination: request.destination,
+ integrity: request.integrity,
+ redirect: request.redirect,
+ referrer: request.referrer,
+ referrerPolicy: request.referrerPolicy,
+ body: requestBuffer,
+ keepalive: request.keepalive,
+ },
+ },
+ [requestBuffer],
+ )
+
+ switch (clientMessage.type) {
+ case 'MOCK_RESPONSE': {
+ return respondWithMock(clientMessage.data)
+ }
+
+ case 'PASSTHROUGH': {
+ return passthrough()
+ }
+ }
+
+ return passthrough()
+}
+
+function sendToClient(client, message, transferrables = []) {
+ return new Promise((resolve, reject) => {
+ const channel = new MessageChannel()
+
+ channel.port1.onmessage = (event) => {
+ if (event.data && event.data.error) {
+ return reject(event.data.error)
+ }
+
+ resolve(event.data)
+ }
+
+ client.postMessage(
+ message,
+ [channel.port2].concat(transferrables.filter(Boolean)),
+ )
+ })
+}
+
+async function respondWithMock(response) {
+ // Setting response status code to 0 is a no-op.
+ // However, when responding with a "Response.error()", the produced Response
+ // instance will have status code set to 0. Since it's not possible to create
+ // a Response instance with status code 0, handle that use-case separately.
+ if (response.status === 0) {
+ return Response.error()
+ }
+
+ const mockedResponse = new Response(response.body, response)
+
+ Reflect.defineProperty(mockedResponse, IS_MOCKED_RESPONSE, {
+ value: true,
+ enumerable: true,
+ })
+
+ return mockedResponse
+}
diff --git a/autogpt_platform/frontend/src/app/build/page.tsx b/autogpt_platform/frontend/src/app/build/page.tsx
index 55302556aa..8c0ace995f 100644
--- a/autogpt_platform/frontend/src/app/build/page.tsx
+++ b/autogpt_platform/frontend/src/app/build/page.tsx
@@ -9,8 +9,7 @@ export default function Home() {
return (
);
}
diff --git a/autogpt_platform/frontend/src/app/dictionaries/en.json b/autogpt_platform/frontend/src/app/dictionaries/en.json
new file mode 100644
index 0000000000..d5f6f3d779
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/dictionaries/en.json
@@ -0,0 +1,22 @@
+{
+ "auth": {
+ "signIn": "Sign In",
+ "email": "Email",
+ "password": "Password",
+ "submit": "Submit",
+ "error": "Invalid login credentials"
+ },
+ "dashboard": {
+ "welcome": "Welcome to your dashboard",
+ "stats": "Your Stats",
+ "recentActivity": "Recent Activity"
+ },
+ "admin": {
+ "title": "Admin Dashboard",
+ "users": "Users Management",
+ "settings": "System Settings"
+ },
+ "home": {
+ "welcome": "Welcome to the Home Page"
+ }
+}
diff --git a/autogpt_platform/frontend/src/app/dictionaries/es.json b/autogpt_platform/frontend/src/app/dictionaries/es.json
new file mode 100644
index 0000000000..5f71068e70
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/dictionaries/es.json
@@ -0,0 +1,22 @@
+{
+ "auth": {
+ "signIn": "Iniciar Sesión",
+ "email": "Correo electrónico",
+ "password": "Contraseña",
+ "submit": "Enviar",
+ "error": "Credenciales inválidas"
+ },
+ "dashboard": {
+ "welcome": "Bienvenido a tu panel",
+ "stats": "Tus Estadísticas",
+ "recentActivity": "Actividad Reciente"
+ },
+ "admin": {
+ "title": "Panel de Administración",
+ "users": "Gestión de Usuarios",
+ "settings": "Configuración del Sistema"
+ },
+ "home": {
+ "welcome": "Bienvenido a la Página de Inicio"
+ }
+}
diff --git a/autogpt_platform/frontend/src/app/globals.css b/autogpt_platform/frontend/src/app/globals.css
index 7be802f39b..c2998c08d0 100644
--- a/autogpt_platform/frontend/src/app/globals.css
+++ b/autogpt_platform/frontend/src/app/globals.css
@@ -2,6 +2,45 @@
@tailwind components;
@tailwind utilities;
+@layer base {
+ .font-neue {
+ font-family: "PP Neue Montreal TT", sans-serif;
+ }
+}
+
+@layer utilities {
+ .w-110 {
+ width: 27.5rem;
+ }
+ .h-7\.5 {
+ height: 1.1875rem;
+ }
+ .h-18 {
+ height: 4.5rem;
+ }
+ .h-238 {
+ height: 14.875rem;
+ }
+ .top-158 {
+ top: 9.875rem;
+ }
+ .top-254 {
+ top: 15.875rem;
+ }
+ .top-284 {
+ top: 17.75rem;
+ }
+ .top-360 {
+ top: 22.5rem;
+ }
+ .left-297 {
+ left: 18.5625rem;
+ }
+ .left-34 {
+ left: 2.125rem;
+ }
+}
+
@layer utilities {
.text-balance {
text-wrap: balance;
diff --git a/autogpt_platform/frontend/src/app/health/page.tsx b/autogpt_platform/frontend/src/app/health/page.tsx
new file mode 100644
index 0000000000..4586a010b4
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/health/page.tsx
@@ -0,0 +1,3 @@
+export default function HealthPage() {
+ return
Yay im healthy
;
+}
diff --git a/autogpt_platform/frontend/src/app/layout.tsx b/autogpt_platform/frontend/src/app/layout.tsx
index d175adc210..f93edc7fd8 100644
--- a/autogpt_platform/frontend/src/app/layout.tsx
+++ b/autogpt_platform/frontend/src/app/layout.tsx
@@ -2,13 +2,15 @@ import React from "react";
import type { Metadata } from "next";
import { Inter } from "next/font/google";
import { Providers } from "@/app/providers";
-import { NavBar } from "@/components/NavBar";
import { cn } from "@/lib/utils";
+import { Navbar } from "@/components/agptui/Navbar";
import "./globals.css";
import TallyPopupSimple from "@/components/TallyPopup";
import { GoogleAnalytics } from "@next/third-parties/google";
import { Toaster } from "@/components/ui/toaster";
+import { IconType } from "@/components/ui/icons";
+import { createServerClient } from "@/lib/supabase/server";
const inter = Inter({ subsets: ["latin"] });
@@ -17,23 +19,88 @@ export const metadata: Metadata = {
description: "Your one stop shop to creating AI Agents",
};
-export default function RootLayout({
+export default async function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
+ const supabase = createServerClient();
+
+ const {
+ data: { user },
+ } = await supabase.auth.getUser();
+
return (
-
-
+
+
{children}
diff --git a/autogpt_platform/frontend/src/app/login/actions.ts b/autogpt_platform/frontend/src/app/login/actions.ts
index 131fb9de89..506aff8aa5 100644
--- a/autogpt_platform/frontend/src/app/login/actions.ts
+++ b/autogpt_platform/frontend/src/app/login/actions.ts
@@ -10,6 +10,30 @@ const loginFormSchema = z.object({
password: z.string().min(6).max(64),
});
+export async function logout() {
+ return await Sentry.withServerActionInstrumentation(
+ "logout",
+ {},
+ async () => {
+ const supabase = createServerClient();
+
+ if (!supabase) {
+ redirect("/error");
+ }
+
+ const { error } = await supabase.auth.signOut();
+
+ if (error) {
+ console.log("Error logging out", error);
+ return error.message;
+ }
+
+ revalidatePath("/", "layout");
+ redirect("/login");
+ },
+ );
+}
+
export async function login(values: z.infer
) {
return await Sentry.withServerActionInstrumentation("login", {}, async () => {
const supabase = createServerClient();
@@ -22,9 +46,10 @@ export async function login(values: z.infer) {
const { data, error } = await supabase.auth.signInWithPassword(values);
if (error) {
+ console.log("Error logging in", error);
if (error.status == 400) {
// Hence User is not present
- redirect("/signup");
+ redirect("/login");
}
return error.message;
@@ -33,8 +58,44 @@ export async function login(values: z.infer) {
if (data.session) {
await supabase.auth.setSession(data.session);
}
-
+ console.log("Logged in");
revalidatePath("/", "layout");
redirect("/");
});
}
+
+export async function signup(values: z.infer) {
+ "use server";
+ return await Sentry.withServerActionInstrumentation(
+ "signup",
+ {},
+ async () => {
+ const supabase = createServerClient();
+
+ if (!supabase) {
+ redirect("/error");
+ }
+
+ // We are sure that the values are of the correct type because zod validates the form
+ const { data, error } = await supabase.auth.signUp(values);
+
+ if (error) {
+ console.log("Error signing up", error);
+ if (error.message.includes("P0001")) {
+ return "Please join our waitlist for your turn: https://agpt.co/waitlist";
+ }
+ if (error.code?.includes("user_already_exists")) {
+ redirect("/login");
+ }
+ return error.message;
+ }
+
+ if (data.session) {
+ await supabase.auth.setSession(data.session);
+ }
+ console.log("Signed up");
+ revalidatePath("/", "layout");
+ redirect("/store/profile");
+ },
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/login/page.tsx b/autogpt_platform/frontend/src/app/login/page.tsx
index 1c2f3c28e8..ebb2a550b7 100644
--- a/autogpt_platform/frontend/src/app/login/page.tsx
+++ b/autogpt_platform/frontend/src/app/login/page.tsx
@@ -18,7 +18,7 @@ import { zodResolver } from "@hookform/resolvers/zod";
import { PasswordInput } from "@/components/PasswordInput";
import { FaGoogle, FaGithub, FaDiscord, FaSpinner } from "react-icons/fa";
import { useState } from "react";
-import { useSupabase } from "@/components/SupabaseProvider";
+import { useSupabase } from "@/components/providers/SupabaseProvider";
import { useRouter } from "next/navigation";
import Link from "next/link";
import { Checkbox } from "@/components/ui/checkbox";
@@ -203,14 +203,34 @@ export default function LoginPage() {
className="flex w-full justify-center"
type="submit"
disabled={isLoading}
+ onClick={async () => {
+ setIsLoading(true);
+ const values = form.getValues();
+ const result = await login(values);
+ if (result) {
+ setFeedback(result);
+ }
+ setIsLoading(false);
+ }}
>
- Log in
+ {isLoading ? : "Log in"}
+
+ {
+ setIsLoading(true);
+ const values = form.getValues();
+ const result = await signup(values);
+ if (result) {
+ setFeedback(result);
+ }
+ setIsLoading(false);
+ }}
+ >
+ {isLoading ? : "Sign up"}
-
-
-
- Create a new Account
-
{feedback}
diff --git a/autogpt_platform/frontend/src/app/marketplace/[id]/page.tsx b/autogpt_platform/frontend/src/app/marketplace/[id]/page.tsx
deleted file mode 100644
index 1e34917edd..0000000000
--- a/autogpt_platform/frontend/src/app/marketplace/[id]/page.tsx
+++ /dev/null
@@ -1,41 +0,0 @@
-import { Suspense } from "react";
-import { notFound } from "next/navigation";
-import MarketplaceAPI from "@/lib/marketplace-api";
-import { AgentDetailResponse } from "@/lib/marketplace-api";
-import AgentDetailContent from "@/components/marketplace/AgentDetailContent";
-
-async function getAgentDetails(id: string): Promise {
- const apiUrl =
- process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market";
- const api = new MarketplaceAPI(apiUrl);
- try {
- console.log(`Fetching agent details for id: ${id}`);
- const agent = await api.getAgentDetails(id);
- console.log(`Agent details fetched:`, agent);
- return agent;
- } catch (error) {
- console.error(`Error fetching agent details:`, error);
- throw error;
- }
-}
-
-export default async function AgentDetailPage({
- params,
-}: {
- params: { id: string };
-}) {
- let agent: AgentDetailResponse;
-
- try {
- agent = await getAgentDetails(params.id);
- } catch (error) {
- return notFound();
- }
-
- return (
- Loading...}>
-
-
- );
-}
diff --git a/autogpt_platform/frontend/src/app/marketplace/page.tsx b/autogpt_platform/frontend/src/app/marketplace/page.tsx
deleted file mode 100644
index 7fc67c95ae..0000000000
--- a/autogpt_platform/frontend/src/app/marketplace/page.tsx
+++ /dev/null
@@ -1,352 +0,0 @@
-"use client";
-import React, { useEffect, useMemo, useState, useCallback } from "react";
-import { useRouter } from "next/navigation";
-import Image from "next/image";
-import { Input } from "@/components/ui/input";
-import { Button } from "@/components/ui/button";
-import MarketplaceAPI, {
- AgentResponse,
- AgentWithRank,
-} from "@/lib/marketplace-api";
-import {
- ChevronLeft,
- ChevronRight,
- PlusCircle,
- Search,
- Star,
-} from "lucide-react";
-
-// Utility Functions
-function debounce any>(
- func: T,
- wait: number,
-): (...args: Parameters) => void {
- let timeout: NodeJS.Timeout | null = null;
- return (...args: Parameters) => {
- if (timeout) clearTimeout(timeout);
- timeout = setTimeout(() => func(...args), wait);
- };
-}
-
-// Types
-type Agent = AgentResponse | AgentWithRank;
-
-// Components
-const HeroSection: React.FC = () => {
- const router = useRouter();
-
- return (
-
-
-
-
-
- AutoGPT Marketplace
-
-
- Discover and share proven AI Agents to supercharge your business.
-
-
-
router.push("/marketplace/submit")}
- className="flex items-center bg-white text-indigo-600 hover:bg-indigo-50"
- >
-
- Submit Agent
-
-
-
- );
-};
-
-const SearchInput: React.FC<{
- value: string;
- onChange: (e: React.ChangeEvent) => void;
-}> = ({ value, onChange }) => (
-
-
-
-
-);
-
-const AgentCard: React.FC<{ agent: Agent; featured?: boolean }> = ({
- agent,
- featured = false,
-}) => {
- const router = useRouter();
-
- const handleClick = () => {
- router.push(`/marketplace/${agent.id}`);
- };
-
- return (
-
-
-
-
- {agent.name}
-
- {featured && }
-
-
- {agent.description}
-
-
- Categories: {agent.categories?.join(", ")}
-
-
-
-
- Updated {new Date(agent.updatedAt).toLocaleDateString()}
-
-
Downloads {agent.downloads}
- {"rank" in agent && (
-
- Rank: {agent.rank.toFixed(2)}
-
- )}
-
-
- );
-};
-
-const AgentGrid: React.FC<{
- agents: Agent[];
- title: string;
- featured?: boolean;
-}> = ({ agents, title, featured = false }) => (
-
-
{title}
-
- {agents.map((agent) => (
-
- ))}
-
-
-);
-
-const Pagination: React.FC<{
- page: number;
- totalPages: number;
- onPrevPage: () => void;
- onNextPage: () => void;
-}> = ({ page, totalPages, onPrevPage, onNextPage }) => (
-
-
-
- Previous
-
-
- Page {page} of {totalPages}
-
-
- Next
-
-
-
-);
-
-// Main Component
-const Marketplace: React.FC = () => {
- const apiUrl =
- process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market";
- const api = useMemo(() => new MarketplaceAPI(apiUrl), [apiUrl]);
-
- const [searchValue, setSearchValue] = useState("");
- const [searchResults, setSearchResults] = useState([]);
- const [featuredAgents, setFeaturedAgents] = useState([]);
- const [topAgents, setTopAgents] = useState([]);
- const [isLoading, setIsLoading] = useState(false);
- const [topAgentsPage, setTopAgentsPage] = useState(1);
- const [searchPage, setSearchPage] = useState(1);
- const [topAgentsTotalPages, setTopAgentsTotalPages] = useState(1);
- const [searchTotalPages, setSearchTotalPages] = useState(1);
-
- const fetchTopAgents = useCallback(
- async (currentPage: number) => {
- setIsLoading(true);
- try {
- const response = await api.getTopDownloadedAgents(currentPage, 9);
- setTopAgents(response.items);
- setTopAgentsTotalPages(response.total_pages);
- } catch (error) {
- console.error("Error fetching top agents:", error);
- } finally {
- setIsLoading(false);
- }
- },
- [api],
- );
-
- const fetchFeaturedAgents = useCallback(async () => {
- try {
- const featured = await api.getFeaturedAgents();
- setFeaturedAgents(featured.items);
- } catch (error) {
- console.error("Error fetching featured agents:", error);
- }
- }, [api]);
-
- const searchAgents = useCallback(
- async (searchTerm: string, currentPage: number) => {
- setIsLoading(true);
- try {
- const response = await api.searchAgents(searchTerm, currentPage, 9);
- const filteredAgents = response.items.filter((agent) => agent.rank > 0);
- setSearchResults(filteredAgents);
- setSearchTotalPages(response.total_pages);
- } catch (error) {
- console.error("Error searching agents:", error);
- } finally {
- setIsLoading(false);
- }
- },
- [api],
- );
-
- const debouncedSearch = useMemo(
- () => debounce(searchAgents, 300),
- [searchAgents],
- );
-
- useEffect(() => {
- if (searchValue) {
- searchAgents(searchValue, searchPage);
- } else {
- fetchTopAgents(topAgentsPage);
- }
- }, [searchValue, searchPage, topAgentsPage, searchAgents, fetchTopAgents]);
-
- useEffect(() => {
- fetchFeaturedAgents();
- }, [fetchFeaturedAgents]);
-
- const handleInputChange = (e: React.ChangeEvent) => {
- setSearchValue(e.target.value);
- setSearchPage(1);
- };
-
- const handleNextPage = () => {
- if (searchValue) {
- if (searchPage < searchTotalPages) {
- setSearchPage(searchPage + 1);
- }
- } else {
- if (topAgentsPage < topAgentsTotalPages) {
- setTopAgentsPage(topAgentsPage + 1);
- }
- }
- };
-
- const handlePrevPage = () => {
- if (searchValue) {
- if (searchPage > 1) {
- setSearchPage(searchPage - 1);
- }
- } else {
- if (topAgentsPage > 1) {
- setTopAgentsPage(topAgentsPage - 1);
- }
- }
- };
-
- return (
-
-
-
-
- {isLoading ? (
-
- ) : searchValue ? (
- searchResults.length > 0 ? (
- <>
-
-
- >
- ) : (
-
-
- No agents found matching your search criteria.
-
-
- )
- ) : (
- <>
- {featuredAgents?.length > 0 ? (
-
- ) : (
-
-
No Featured Agents found
-
- )}
-
-
-
- {topAgents?.length > 0 ? (
-
- ) : (
-
-
No Top Downloaded Agents found
-
- )}
-
- >
- )}
-
-
- );
-};
-
-export default Marketplace;
diff --git a/autogpt_platform/frontend/src/app/marketplace/submit/page.tsx b/autogpt_platform/frontend/src/app/marketplace/submit/page.tsx
deleted file mode 100644
index 24863130a8..0000000000
--- a/autogpt_platform/frontend/src/app/marketplace/submit/page.tsx
+++ /dev/null
@@ -1,453 +0,0 @@
-"use client";
-
-import React, { useState, useEffect, useMemo } from "react";
-import { useRouter } from "next/navigation";
-import { useForm, Controller } from "react-hook-form";
-import MarketplaceAPI from "@/lib/marketplace-api";
-import AutoGPTServerAPI from "@/lib/autogpt-server-api";
-import { Card } from "@/components/ui/card";
-import { Input } from "@/components/ui/input";
-import { Button } from "@/components/ui/button";
-import { Textarea } from "@/components/ui/textarea";
-import { Alert, AlertTitle, AlertDescription } from "@/components/ui/alert";
-import { Checkbox } from "@/components/ui/checkbox";
-import {
- MultiSelector,
- MultiSelectorContent,
- MultiSelectorInput,
- MultiSelectorItem,
- MultiSelectorList,
- MultiSelectorTrigger,
-} from "@/components/ui/multiselect";
-import {
- Select,
- SelectContent,
- SelectItem,
- SelectTrigger,
- SelectValue,
-} from "@/components/ui/select";
-
-type FormData = {
- name: string;
- description: string;
- author: string;
- keywords: string[];
- categories: string[];
- agreeToTerms: boolean;
- selectedAgentId: string;
-};
-
-const keywords = [
- "Automation",
- "AI Workflows",
- "Integration",
- "Task Automation",
- "Data Processing",
- "Workflow Management",
- "Real-time Analytics",
- "Custom Triggers",
- "Event-driven",
- "API Integration",
- "Data Transformation",
- "Multi-step Workflows",
- "Collaboration Tools",
- "Business Process Automation",
- "No-code Solutions",
- "AI-Powered",
- "Smart Notifications",
- "Data Syncing",
- "User Engagement",
- "Reporting Automation",
- "Lead Generation",
- "Customer Support Automation",
- "E-commerce Automation",
- "Social Media Management",
- "Email Marketing Automation",
- "Document Management",
- "Data Enrichment",
- "Performance Tracking",
- "Predictive Analytics",
- "Resource Allocation",
- "Chatbot",
- "Virtual Assistant",
- "Workflow Automation",
- "Social Media Manager",
- "Email Optimizer",
- "Content Generator",
- "Data Analyzer",
- "Task Scheduler",
- "Customer Service Bot",
- "Personalization Engine",
-];
-
-const SubmitPage: React.FC = () => {
- const router = useRouter();
- const {
- control,
- handleSubmit,
- watch,
- setValue,
- formState: { errors },
- } = useForm({
- defaultValues: {
- selectedAgentId: "", // Initialize with an empty string
- name: "",
- description: "",
- author: "",
- keywords: [],
- categories: [],
- agreeToTerms: false,
- },
- });
- const [isSubmitting, setIsSubmitting] = useState(false);
- const [submitError, setSubmitError] = useState(null);
- const [userAgents, setUserAgents] = useState<
- Array<{ id: string; name: string; version: number }>
- >([]);
- const [selectedAgentGraph, setSelectedAgentGraph] = useState(null);
-
- const selectedAgentId = watch("selectedAgentId");
-
- useEffect(() => {
- const fetchUserAgents = async () => {
- const api = new AutoGPTServerAPI();
- const agents = await api.listGraphs();
- console.log(agents);
- setUserAgents(
- agents.map((agent) => ({
- id: agent.id,
- name: agent.name || `Agent (${agent.id})`,
- version: agent.version,
- })),
- );
- };
-
- fetchUserAgents();
- }, []);
-
- useEffect(() => {
- const fetchAgentGraph = async () => {
- if (selectedAgentId) {
- const api = new AutoGPTServerAPI();
- const graph = await api.getGraph(selectedAgentId, undefined, true);
- setSelectedAgentGraph(graph);
- setValue("name", graph.name);
- setValue("description", graph.description);
- }
- };
-
- fetchAgentGraph();
- }, [selectedAgentId, setValue]);
-
- const onSubmit = async (data: FormData) => {
- setIsSubmitting(true);
- setSubmitError(null);
-
- if (!data.agreeToTerms) {
- throw new Error("You must agree to the terms of use");
- }
-
- try {
- if (!selectedAgentGraph) {
- throw new Error("Please select an agent");
- }
-
- const api = new MarketplaceAPI();
- await api.submitAgent(
- {
- ...selectedAgentGraph,
- name: data.name,
- description: data.description,
- },
- data.author,
- data.keywords,
- data.categories,
- );
-
- router.push("/marketplace?submission=success");
- } catch (error) {
- console.error("Submission error:", error);
- setSubmitError(
- error instanceof Error ? error.message : "An unknown error occurred",
- );
- } finally {
- setIsSubmitting(false);
- }
- };
-
- return (
-
-
Submit Your Agent
-
-
-
-
- );
-};
-
-export default SubmitPage;
diff --git a/autogpt_platform/frontend/src/app/loading.tsx b/autogpt_platform/frontend/src/app/monitoring/loading.tsx
similarity index 100%
rename from autogpt_platform/frontend/src/app/loading.tsx
rename to autogpt_platform/frontend/src/app/monitoring/loading.tsx
diff --git a/autogpt_platform/frontend/src/app/monitoring/page.tsx b/autogpt_platform/frontend/src/app/monitoring/page.tsx
new file mode 100644
index 0000000000..463c9be4fc
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/monitoring/page.tsx
@@ -0,0 +1,168 @@
+"use client";
+
+import { useEffect, useState, useMemo, useCallback } from "react";
+
+import AutoGPTServerAPI, {
+ GraphMetaWithRuns,
+ ExecutionMeta,
+ Schedule,
+} from "@/lib/autogpt-server-api";
+
+import { Card } from "@/components/ui/card";
+import { FlowRun } from "@/lib/types";
+import {
+ AgentFlowList,
+ FlowInfo,
+ FlowRunInfo,
+ FlowRunsList,
+ FlowRunsStats,
+} from "@/components/monitor";
+import { SchedulesTable } from "@/components/monitor/scheduleTable";
+
+const Monitor = () => {
+ const [flows, setFlows] = useState([]);
+ const [flowRuns, setFlowRuns] = useState([]);
+ const [schedules, setSchedules] = useState([]);
+ const [selectedFlow, setSelectedFlow] = useState(
+ null,
+ );
+ const [selectedRun, setSelectedRun] = useState(null);
+ const [sortColumn, setSortColumn] = useState("id");
+ const [sortDirection, setSortDirection] = useState<"asc" | "desc">("asc");
+
+ const api = useMemo(() => new AutoGPTServerAPI(), []);
+
+ const fetchSchedules = useCallback(async () => {
+ setSchedules(await api.listSchedules());
+ }, [api]);
+
+ const removeSchedule = useCallback(
+ async (scheduleId: string) => {
+ const removedSchedule = await api.deleteSchedule(scheduleId);
+ setSchedules(schedules.filter((s) => s.id !== removedSchedule.id));
+ },
+ [schedules, api],
+ );
+
+ const fetchAgents = useCallback(() => {
+ api.listGraphsWithRuns().then((agent) => {
+ setFlows(agent);
+ const flowRuns = agent.flatMap((graph) =>
+ graph.executions != null
+ ? graph.executions.map((execution) =>
+ flowRunFromExecutionMeta(graph, execution),
+ )
+ : [],
+ );
+ setFlowRuns(flowRuns);
+ });
+ }, [api]);
+
+ useEffect(() => {
+ fetchAgents();
+ }, [fetchAgents]);
+
+ useEffect(() => {
+ fetchSchedules();
+ }, [fetchSchedules]);
+
+ useEffect(() => {
+ const intervalId = setInterval(() => fetchAgents(), 5000);
+ return () => clearInterval(intervalId);
+ }, [fetchAgents, flows]);
+
+ const column1 = "md:col-span-2 xl:col-span-3 xxl:col-span-2";
+ const column2 = "md:col-span-3 lg:col-span-2 xl:col-span-3";
+ const column3 = "col-span-full xl:col-span-4 xxl:col-span-5";
+
+ const handleSort = (column: keyof Schedule) => {
+ if (sortColumn === column) {
+ setSortDirection(sortDirection === "asc" ? "desc" : "asc");
+ } else {
+ setSortColumn(column);
+ setSortDirection("asc");
+ }
+ };
+
+ return (
+
+
{
+ setSelectedRun(null);
+ setSelectedFlow(
+ f.id == selectedFlow?.id ? null : (f as GraphMetaWithRuns),
+ );
+ }}
+ />
+ v.graphID == selectedFlow.id)
+ : flowRuns),
+ ].sort((a, b) => Number(a.startTime) - Number(b.startTime))}
+ selectedRun={selectedRun}
+ onSelectRun={(r) => setSelectedRun(r.id == selectedRun?.id ? null : r)}
+ />
+ {(selectedRun && (
+ f.id == selectedRun.graphID)!}
+ flowRun={selectedRun}
+ className={column3}
+ />
+ )) ||
+ (selectedFlow && (
+ r.graphID == selectedFlow.id)}
+ className={column3}
+ refresh={() => {
+ fetchAgents();
+ setSelectedFlow(null);
+ setSelectedRun(null);
+ }}
+ />
+ )) || (
+
+
+
+ )}
+
+
+
+
+ );
+};
+
+function flowRunFromExecutionMeta(
+ graphMeta: GraphMetaWithRuns,
+ executionMeta: ExecutionMeta,
+): FlowRun {
+ return {
+ id: executionMeta.execution_id,
+ graphID: graphMeta.id,
+ graphVersion: graphMeta.version,
+ status: executionMeta.status,
+ startTime: executionMeta.started_at,
+ endTime: executionMeta.ended_at,
+ duration: executionMeta.duration,
+ totalRunTime: executionMeta.total_run_time,
+ } as FlowRun;
+}
+
+export default Monitor;
diff --git a/autogpt_platform/frontend/src/app/page.tsx b/autogpt_platform/frontend/src/app/page.tsx
index 33842a49fe..b59d651f0b 100644
--- a/autogpt_platform/frontend/src/app/page.tsx
+++ b/autogpt_platform/frontend/src/app/page.tsx
@@ -1,145 +1,7 @@
"use client";
-import React, { useCallback, useEffect, useMemo, useState } from "react";
-import AutoGPTServerAPI, {
- GraphExecution,
- Schedule,
- GraphMeta,
-} from "@/lib/autogpt-server-api";
+import { redirect } from "next/navigation";
-import { Card } from "@/components/ui/card";
-import {
- AgentFlowList,
- FlowInfo,
- FlowRunInfo,
- FlowRunsList,
- FlowRunsStats,
-} from "@/components/monitor";
-import { SchedulesTable } from "@/components/monitor/scheduleTable";
-
-const Monitor = () => {
- const [flows, setFlows] = useState([]);
- const [executions, setExecutions] = useState([]);
- const [schedules, setSchedules] = useState([]);
- const [selectedFlow, setSelectedFlow] = useState(null);
- const [selectedRun, setSelectedRun] = useState(null);
- const [sortColumn, setSortColumn] = useState("id");
- const [sortDirection, setSortDirection] = useState<"asc" | "desc">("asc");
-
- const api = useMemo(() => new AutoGPTServerAPI(), []);
-
- const fetchSchedules = useCallback(async () => {
- setSchedules(await api.listSchedules());
- }, [api]);
-
- const removeSchedule = useCallback(
- async (scheduleId: string) => {
- const removedSchedule = await api.deleteSchedule(scheduleId);
- setSchedules(schedules.filter((s) => s.id !== removedSchedule.id));
- },
- [schedules, api],
- );
-
- const fetchAgents = useCallback(() => {
- api.listGraphs().then((agent) => {
- setFlows(agent);
- });
- api.getExecutions().then((executions) => {
- setExecutions(executions);
- });
- }, [api]);
-
- useEffect(() => {
- fetchAgents();
- }, [fetchAgents]);
-
- useEffect(() => {
- fetchSchedules();
- }, [fetchSchedules]);
-
- useEffect(() => {
- const intervalId = setInterval(() => fetchAgents(), 5000);
- return () => clearInterval(intervalId);
- }, [fetchAgents, flows]);
-
- const column1 = "md:col-span-2 xl:col-span-3 xxl:col-span-2";
- const column2 = "md:col-span-3 lg:col-span-2 xl:col-span-3";
- const column3 = "col-span-full xl:col-span-4 xxl:col-span-5";
-
- const handleSort = (column: keyof Schedule) => {
- if (sortColumn === column) {
- setSortDirection(sortDirection === "asc" ? "desc" : "asc");
- } else {
- setSortColumn(column);
- setSortDirection("asc");
- }
- };
-
- return (
-
-
{
- setSelectedRun(null);
- setSelectedFlow(f.id == selectedFlow?.id ? null : (f as GraphMeta));
- }}
- />
- v.graph_id == selectedFlow.id)
- : executions),
- ].sort((a, b) => Number(b.started_at) - Number(a.started_at))}
- selectedRun={selectedRun}
- onSelectRun={(r) =>
- setSelectedRun(r.execution_id == selectedRun?.execution_id ? null : r)
- }
- />
- {(selectedRun && (
- f.id == selectedRun.graph_id)!
- }
- execution={selectedRun}
- className={column3}
- />
- )) ||
- (selectedFlow && (
- e.graph_id == selectedFlow.id)}
- className={column3}
- refresh={() => {
- fetchAgents();
- setSelectedFlow(null);
- setSelectedRun(null);
- }}
- />
- )) || (
-
-
-
- )}
-
-
-
-
- );
-};
-
-export default Monitor;
+export default function Page() {
+ redirect("/store");
+}
diff --git a/autogpt_platform/frontend/src/app/profile/page.tsx b/autogpt_platform/frontend/src/app/profile/page.tsx
index c1df9e705f..856bc77055 100644
--- a/autogpt_platform/frontend/src/app/profile/page.tsx
+++ b/autogpt_platform/frontend/src/app/profile/page.tsx
@@ -1,6 +1,6 @@
"use client";
-import { useSupabase } from "@/components/SupabaseProvider";
+import { useSupabase } from "@/components/providers/SupabaseProvider";
import { Button } from "@/components/ui/button";
import useUser from "@/hooks/useUser";
import { useRouter } from "next/navigation";
diff --git a/autogpt_platform/frontend/src/app/providers.tsx b/autogpt_platform/frontend/src/app/providers.tsx
index 1e5dbdfb3b..211b3c9261 100644
--- a/autogpt_platform/frontend/src/app/providers.tsx
+++ b/autogpt_platform/frontend/src/app/providers.tsx
@@ -2,17 +2,22 @@
import * as React from "react";
import { ThemeProvider as NextThemesProvider } from "next-themes";
-import { ThemeProviderProps } from "next-themes/dist/types";
-import { BackendAPIProvider } from "@/lib/autogpt-server-api";
+import { ThemeProviderProps } from "next-themes";
+import { BackendAPIProvider } from "@/lib/autogpt-server-api/context";
import { TooltipProvider } from "@/components/ui/tooltip";
-import SupabaseProvider from "@/components/SupabaseProvider";
+import SupabaseProvider from "@/components/providers/SupabaseProvider";
import CredentialsProvider from "@/components/integrations/credentials-provider";
+import { User } from "@supabase/supabase-js";
import { LaunchDarklyProvider } from "@/components/feature-flag/feature-flag-provider";
-export function Providers({ children, ...props }: ThemeProviderProps) {
+export function Providers({
+ children,
+ initialUser,
+ ...props
+}: ThemeProviderProps & { initialUser: User | null }) {
return (
-
+
diff --git a/autogpt_platform/frontend/src/app/signup/actions.ts b/autogpt_platform/frontend/src/app/signup/actions.ts
deleted file mode 100644
index 2773b87743..0000000000
--- a/autogpt_platform/frontend/src/app/signup/actions.ts
+++ /dev/null
@@ -1,46 +0,0 @@
-"use server";
-import { createServerClient } from "@/lib/supabase/server";
-import * as Sentry from "@sentry/nextjs";
-import { revalidatePath } from "next/cache";
-import { redirect } from "next/navigation";
-import { z } from "zod";
-
-const SignupFormSchema = z.object({
- email: z.string().email().min(2).max(64),
- password: z.string().min(6).max(64),
-});
-
-export async function signup(values: z.infer) {
- "use server";
- return await Sentry.withServerActionInstrumentation(
- "signup",
- {},
- async () => {
- const supabase = createServerClient();
-
- if (!supabase) {
- redirect("/error");
- }
-
- // We are sure that the values are of the correct type because zod validates the form
- const { data, error } = await supabase.auth.signUp(values);
-
- if (error) {
- if (error.message.includes("P0001")) {
- return "Please join our waitlist for your turn: https://agpt.co/waitlist";
- }
- if (error.code?.includes("user_already_exists")) {
- redirect("/login");
- }
- return error.message;
- }
-
- if (data.session) {
- await supabase.auth.setSession(data.session);
- }
-
- revalidatePath("/", "layout");
- redirect("/");
- },
- );
-}
diff --git a/autogpt_platform/frontend/src/app/signup/page.tsx b/autogpt_platform/frontend/src/app/signup/page.tsx
deleted file mode 100644
index 1c2ad19e2e..0000000000
--- a/autogpt_platform/frontend/src/app/signup/page.tsx
+++ /dev/null
@@ -1,225 +0,0 @@
-"use client";
-import useUser from "@/hooks/useUser";
-import { signup } from "./actions";
-import { Button } from "@/components/ui/button";
-import {
- Form,
- FormControl,
- FormDescription,
- FormField,
- FormItem,
- FormLabel,
- FormMessage,
-} from "@/components/ui/form";
-import { useForm } from "react-hook-form";
-import { Input } from "@/components/ui/input";
-import { z } from "zod";
-import { zodResolver } from "@hookform/resolvers/zod";
-import { PasswordInput } from "@/components/PasswordInput";
-import { FaGoogle, FaGithub, FaDiscord, FaSpinner } from "react-icons/fa";
-import { useState } from "react";
-import { useSupabase } from "@/components/SupabaseProvider";
-import { useRouter } from "next/navigation";
-import Link from "next/link";
-import { Checkbox } from "@/components/ui/checkbox";
-
-const signupFormSchema = z.object({
- email: z.string().email().min(2).max(64),
- password: z.string().min(6).max(64),
- agreeToTerms: z.boolean().refine((value) => value === true, {
- message: "You must agree to the Terms of Use and Privacy Policy",
- }),
-});
-
-export default function LoginPage() {
- const { supabase, isLoading: isSupabaseLoading } = useSupabase();
- const { user, isLoading: isUserLoading } = useUser();
- const [feedback, setFeedback] = useState(null);
- const router = useRouter();
- const [isLoading, setIsLoading] = useState(false);
-
- const form = useForm>({
- resolver: zodResolver(signupFormSchema),
- defaultValues: {
- email: "",
- password: "",
- agreeToTerms: false,
- },
- });
-
- if (user) {
- console.log("User exists, redirecting to home");
- router.push("/");
- }
-
- if (isUserLoading || isSupabaseLoading || user) {
- return (
-
-
-
- );
- }
-
- if (!supabase) {
- return (
-
- User accounts are disabled because Supabase client is unavailable
-
- );
- }
-
- async function handleSignInWithProvider(
- provider: "google" | "github" | "discord",
- ) {
- const { data, error } = await supabase!.auth.signInWithOAuth({
- provider: provider,
- options: {
- redirectTo:
- process.env.AUTH_CALLBACK_URL ??
- `http://localhost:3000/auth/callback`,
- },
- });
-
- if (!error) {
- setFeedback(null);
- return;
- }
- setFeedback(error.message);
- }
-
- const onSignup = async (data: z.infer) => {
- if (await form.trigger()) {
- setIsLoading(true);
- const error = await signup(data);
- setIsLoading(false);
- if (error) {
- setFeedback(error);
- return;
- }
- setFeedback(null);
- }
- };
-
- return (
-
-
-
Create a New Account
- {/*
- handleSignInWithProvider("google")}
- variant="outline"
- type="button"
- disabled={isLoading}
- >
-
- Sign in with Google
-
- handleSignInWithProvider("github")}
- variant="outline"
- type="button"
- disabled={isLoading}
- >
-
- Sign in with GitHub
-
- handleSignInWithProvider("discord")}
- variant="outline"
- type="button"
- disabled={isLoading}
- >
-
- Sign in with Discord
-
-
*/}
-
-
- (
-
- Email
-
-
-
-
-
- )}
- />
- (
-
- Password
-
-
-
-
- Password needs to be at least 6 characters long
-
-
-
- )}
- />
- (
-
-
-
-
-
-
- I agree to the{" "}
-
- Terms of Use
- {" "}
- and{" "}
-
- Privacy Policy
-
-
-
-
-
- )}
- />
-
-
- Sign up
-
-
-
-
- Already a member? Log In here
-
-
-
-
{feedback}
-
-
-
- );
-}
diff --git a/autogpt_platform/frontend/src/app/store/(user)/dashboard/page.tsx b/autogpt_platform/frontend/src/app/store/(user)/dashboard/page.tsx
new file mode 100644
index 0000000000..e93747ce7e
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/(user)/dashboard/page.tsx
@@ -0,0 +1,167 @@
+"use client";
+
+import * as React from "react";
+import { AgentTable } from "@/components/agptui/AgentTable";
+import { AgentTableRowProps } from "@/components/agptui/AgentTableRow";
+import { Button } from "@/components/agptui/Button";
+import { Separator } from "@/components/ui/separator";
+import AutoGPTServerAPI from "@/lib/autogpt-server-api";
+import { createClient } from "@/lib/supabase/client";
+import { StatusType } from "@/components/agptui/Status";
+import { PublishAgentPopout } from "@/components/agptui/composite/PublishAgentPopout";
+import { useCallback, useEffect, useState } from "react";
+import {
+ StoreSubmissionsResponse,
+ StoreSubmissionRequest,
+} from "@/lib/autogpt-server-api/types";
+
+async function getDashboardData() {
+ const supabase = createClient();
+ if (!supabase) {
+ return { submissions: [] };
+ }
+
+ const {
+ data: { session },
+ } = await supabase.auth.getSession();
+
+ if (!session) {
+ console.warn("--- No session found in profile page");
+ return { profile: null };
+ }
+
+ const api = new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ );
+
+ try {
+ const submissions = await api.getStoreSubmissions();
+ return {
+ submissions,
+ };
+ } catch (error) {
+ console.error("Error fetching profile:", error);
+ return {
+ profile: null,
+ };
+ }
+}
+
+export default function Page({}: {}) {
+ const [submissions, setSubmissions] = useState();
+ const [openPopout, setOpenPopout] = useState(false);
+ const [submissionData, setSubmissionData] =
+ useState();
+ const [popoutStep, setPopoutStep] = useState<"select" | "info" | "review">(
+ "info",
+ );
+
+ const fetchData = useCallback(async () => {
+ const { submissions } = await getDashboardData();
+ if (submissions) {
+ setSubmissions(submissions as StoreSubmissionsResponse);
+ }
+ }, []);
+
+ useEffect(() => {
+ fetchData();
+ }, [fetchData]);
+
+ const onEditSubmission = useCallback((submission: StoreSubmissionRequest) => {
+ setSubmissionData(submission);
+ setPopoutStep("review");
+ setOpenPopout(true);
+ }, []);
+
+ const onDeleteSubmission = useCallback(
+ (submission_id: string) => {
+ const supabase = createClient();
+ if (!supabase) {
+ return;
+ }
+ const api = new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ );
+ api.deleteStoreSubmission(submission_id);
+ fetchData();
+ },
+ [fetchData],
+ );
+
+ const onOpenPopout = useCallback(() => {
+ setPopoutStep("select");
+ setOpenPopout(true);
+ }, []);
+
+ return (
+
+ {/* Header Section */}
+
+
+
+ Agent dashboard
+
+
+
+ Submit a New Agent
+
+
+ Select from the list of agents you currently have, or upload from
+ your local machine.
+
+
+
+
+ Submit agent
+
+ }
+ openPopout={openPopout}
+ inputStep={popoutStep}
+ submissionData={submissionData}
+ />
+
+
+
+
+ {/* Agents Section */}
+
+
+ Your uploaded agents
+
+
({
+ id: index,
+ agent_id: submission.agent_id,
+ agent_version: submission.agent_version,
+ sub_heading: submission.sub_heading,
+ date_submitted: submission.date_submitted,
+ agentName: submission.name,
+ description: submission.description,
+ imageSrc: submission.image_urls || [""],
+ dateSubmitted: new Date(
+ submission.date_submitted,
+ ).toLocaleDateString(),
+ status: submission.status.toLowerCase() as StatusType,
+ runs: submission.runs,
+ rating: submission.rating,
+ })) as AgentTableRowProps[]) || []
+ }
+ onEditSubmission={onEditSubmission}
+ onDeleteSubmission={onDeleteSubmission}
+ />
+
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/store/(user)/layout.tsx b/autogpt_platform/frontend/src/app/store/(user)/layout.tsx
new file mode 100644
index 0000000000..0f90e5bd3b
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/(user)/layout.tsx
@@ -0,0 +1,23 @@
+import * as React from "react";
+import { Sidebar } from "@/components/agptui/Sidebar";
+
+export default function Layout({ children }: { children: React.ReactNode }) {
+ const sidebarLinkGroups = [
+ {
+ links: [
+ { text: "Creator Dashboard", href: "/store/dashboard" },
+ { text: "Agent dashboard", href: "/store/agent-dashboard" },
+ { text: "Integrations", href: "/store/integrations" },
+ { text: "Profile", href: "/store/profile" },
+ { text: "Settings", href: "/store/settings" },
+ ],
+ },
+ ];
+
+ return (
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/store/(user)/profile/page.tsx b/autogpt_platform/frontend/src/app/store/(user)/profile/page.tsx
new file mode 100644
index 0000000000..2ab4b43875
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/(user)/profile/page.tsx
@@ -0,0 +1,55 @@
+import * as React from "react";
+import { ProfileInfoForm } from "@/components/agptui/ProfileInfoForm";
+import AutoGPTServerAPIServerSide from "@/lib/autogpt-server-api";
+import { createServerClient } from "@/lib/supabase/server";
+import { CreatorDetails } from "@/lib/autogpt-server-api/types";
+
+async function getProfileData() {
+ // Get the supabase client first
+ const supabase = createServerClient();
+ const {
+ data: { session },
+ } = await supabase.auth.getSession();
+
+ if (!session) {
+ console.warn("--- No session found in profile page");
+ return { profile: null };
+ }
+
+ // Create API client with the same supabase instance
+ const api = new AutoGPTServerAPIServerSide(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase, // Pass the supabase client instance
+ );
+
+ try {
+ const profile = await api.getStoreProfile("profile");
+ return {
+ profile,
+ };
+ } catch (error) {
+ console.error("Error fetching profile:", error);
+ return {
+ profile: null,
+ };
+ }
+}
+
+export default async function Page({}: {}) {
+ const { profile } = await getProfileData();
+
+ if (!profile) {
+ return (
+
+
Please log in to view your profile
+
+ );
+ }
+
+ return (
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/store/(user)/settings/page.tsx b/autogpt_platform/frontend/src/app/store/(user)/settings/page.tsx
new file mode 100644
index 0000000000..761f5bb692
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/(user)/settings/page.tsx
@@ -0,0 +1,6 @@
+import * as React from "react";
+import { SettingsInputForm } from "@/components/agptui/SettingsInputForm";
+
+export default function Page() {
+ return ;
+}
diff --git a/autogpt_platform/frontend/src/app/store/agent/[creator]/[slug]/page.tsx b/autogpt_platform/frontend/src/app/store/agent/[creator]/[slug]/page.tsx
new file mode 100644
index 0000000000..9d80b91baf
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/agent/[creator]/[slug]/page.tsx
@@ -0,0 +1,90 @@
+import AutoGPTServerAPI from "@/lib/autogpt-server-api";
+import { BreadCrumbs } from "@/components/agptui/BreadCrumbs";
+import { AgentInfo } from "@/components/agptui/AgentInfo";
+import { AgentImages } from "@/components/agptui/AgentImages";
+import { AgentsSection } from "@/components/agptui/composite/AgentsSection";
+import { BecomeACreator } from "@/components/agptui/BecomeACreator";
+import { Separator } from "@/components/ui/separator";
+import { Metadata } from "next";
+
+export async function generateMetadata({
+ params,
+}: {
+ params: { creator: string; slug: string };
+}): Promise {
+ const api = new AutoGPTServerAPI();
+ const agent = await api.getStoreAgent(params.creator, params.slug);
+
+ return {
+ title: `${agent.agent_name} - AutoGPT Store`,
+ description: agent.description,
+ };
+}
+
+// export async function generateStaticParams() {
+// const api = new AutoGPTServerAPI();
+// const agents = await api.getStoreAgents({ featured: true });
+// return agents.agents.map((agent) => ({
+// creator: agent.creator,
+// slug: agent.slug,
+// }));
+// }
+
+export default async function Page({
+ params,
+}: {
+ params: { creator: string; slug: string };
+}) {
+ const api = new AutoGPTServerAPI();
+ const agent = await api.getStoreAgent(params.creator, params.slug);
+ const otherAgents = await api.getStoreAgents({ creator: params.creator });
+ const similarAgents = await api.getStoreAgents({
+ search_query: agent.categories[0],
+ });
+
+ const breadcrumbs = [
+ { name: "Store", link: "/store" },
+ { name: agent.creator, link: `/store/creator/${agent.creator}` },
+ { name: agent.agent_name, link: "#" },
+ ];
+
+ return (
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/store/creator/[creator]/page.tsx b/autogpt_platform/frontend/src/app/store/creator/[creator]/page.tsx
new file mode 100644
index 0000000000..8f6a40de7c
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/creator/[creator]/page.tsx
@@ -0,0 +1,93 @@
+import AutoGPTServerAPI from "@/lib/autogpt-server-api";
+import {
+ CreatorDetails as Creator,
+ StoreAgent,
+} from "@/lib/autogpt-server-api";
+import { AgentsSection } from "@/components/agptui/composite/AgentsSection";
+import { BreadCrumbs } from "@/components/agptui/BreadCrumbs";
+import { Metadata } from "next";
+import { CreatorInfoCard } from "@/components/agptui/CreatorInfoCard";
+import { CreatorLinks } from "@/components/agptui/CreatorLinks";
+
+export async function generateMetadata({
+ params,
+}: {
+ params: { creator: string };
+}): Promise {
+ const api = new AutoGPTServerAPI();
+ const creator = await api.getStoreCreator(params.creator);
+
+ return {
+ title: `${creator.name} - AutoGPT Store`,
+ description: creator.description,
+ };
+}
+
+// export async function generateStaticParams() {
+// const api = new AutoGPTServerAPI();
+// const creators = await api.getStoreCreators({ featured: true });
+// return creators.creators.map((creator) => ({
+// creator: creator.username,
+// }));
+// }
+
+export default async function Page({
+ params,
+}: {
+ params: { creator: string };
+}) {
+ const api = new AutoGPTServerAPI();
+
+ try {
+ const creator = await api.getStoreCreator(params.creator);
+ const creatorAgents = await api.getStoreAgents({ creator: params.creator });
+
+ return (
+
+
+
+
+
+
+
+
+
+
+ {creator.description}
+
+
+
+
+
+
+
+ );
+ } catch (error) {
+ return (
+
+
+ Creator not found
+
+
+ );
+ }
+}
diff --git a/autogpt_platform/frontend/src/app/store/page.tsx b/autogpt_platform/frontend/src/app/store/page.tsx
new file mode 100644
index 0000000000..0be4af223b
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/page.tsx
@@ -0,0 +1,191 @@
+import * as React from "react";
+import { HeroSection } from "@/components/agptui/composite/HeroSection";
+import {
+ FeaturedSection,
+ FeaturedAgent,
+} from "@/components/agptui/composite/FeaturedSection";
+import {
+ AgentsSection,
+ Agent,
+} from "@/components/agptui/composite/AgentsSection";
+import { BecomeACreator } from "@/components/agptui/BecomeACreator";
+import {
+ FeaturedCreators,
+ FeaturedCreator,
+} from "@/components/agptui/composite/FeaturedCreators";
+import { Separator } from "@/components/ui/separator";
+import AutoGPTServerAPIServerSide from "@/lib/autogpt-server-api/clientServer";
+import { Metadata } from "next";
+import { createServerClient } from "@/lib/supabase/server";
+import {
+ StoreAgentsResponse,
+ CreatorsResponse,
+} from "@/lib/autogpt-server-api/types";
+
+export const dynamic = "force-dynamic";
+
+async function getStoreData() {
+ try {
+ const supabase = createServerClient();
+ const {
+ data: { session },
+ } = await supabase.auth.getSession();
+
+ const api = new AutoGPTServerAPIServerSide(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ );
+
+ // Add error handling and default values
+ let featuredAgents: StoreAgentsResponse = {
+ agents: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ };
+ let topAgents: StoreAgentsResponse = {
+ agents: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ };
+ let featuredCreators: CreatorsResponse = {
+ creators: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ };
+
+ try {
+ [featuredAgents, topAgents, featuredCreators] = await Promise.all([
+ api.getStoreAgents({ featured: true }),
+ api.getStoreAgents({ sorted_by: "runs" }),
+ api.getStoreCreators({ featured: true, sorted_by: "num_agents" }),
+ ]);
+ } catch (error) {
+ console.error("Error fetching store data:", error);
+ }
+
+ return {
+ featuredAgents,
+ topAgents,
+ featuredCreators,
+ };
+ } catch (error) {
+ console.error("Error in getStoreData:", error);
+ return {
+ featuredAgents: {
+ agents: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ },
+ topAgents: {
+ agents: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ },
+ featuredCreators: {
+ creators: [],
+ pagination: {
+ total_items: 0,
+ total_pages: 0,
+ current_page: 0,
+ page_size: 0,
+ },
+ },
+ };
+ }
+}
+
+// FIX: Correct metadata
+export const metadata: Metadata = {
+ title: "Agent Store - NextGen AutoGPT",
+ description: "Find and use AI Agents created by our community",
+ applicationName: "NextGen AutoGPT Store",
+ authors: [{ name: "AutoGPT Team" }],
+ keywords: [
+ "AI agents",
+ "automation",
+ "artificial intelligence",
+ "AutoGPT",
+ "marketplace",
+ ],
+ robots: {
+ index: true,
+ follow: true,
+ },
+ openGraph: {
+ title: "Agent Store - NextGen AutoGPT",
+ description: "Find and use AI Agents created by our community",
+ type: "website",
+ siteName: "NextGen AutoGPT Store",
+ images: [
+ {
+ url: "/images/store-og.png",
+ width: 1200,
+ height: 630,
+ alt: "NextGen AutoGPT Store",
+ },
+ ],
+ },
+ twitter: {
+ card: "summary_large_image",
+ title: "Agent Store - NextGen AutoGPT",
+ description: "Find and use AI Agents created by our community",
+ images: ["/images/store-twitter.png"],
+ },
+ icons: {
+ icon: "/favicon.ico",
+ shortcut: "/favicon-16x16.png",
+ apple: "/apple-touch-icon.png",
+ },
+};
+
+export default async function Page({}: {}) {
+ // Get data server-side
+ const { featuredAgents, topAgents, featuredCreators } = await getStoreData();
+
+ return (
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/app/store/search/page.tsx b/autogpt_platform/frontend/src/app/store/search/page.tsx
new file mode 100644
index 0000000000..9e79221fe8
--- /dev/null
+++ b/autogpt_platform/frontend/src/app/store/search/page.tsx
@@ -0,0 +1,182 @@
+"use client";
+
+import { useState, useEffect } from "react";
+import { AutoGPTServerAPI } from "@/lib/autogpt-server-api/client";
+import { AgentsSection } from "@/components/agptui/composite/AgentsSection";
+import { SearchBar } from "@/components/agptui/SearchBar";
+import { FeaturedCreators } from "@/components/agptui/composite/FeaturedCreators";
+import { Separator } from "@/components/ui/separator";
+import { SearchFilterChips } from "@/components/agptui/SearchFilterChips";
+import { SortDropdown } from "@/components/agptui/SortDropdown";
+
+export default function Page({
+ searchParams,
+}: {
+ searchParams: { searchTerm?: string; sort?: string };
+}) {
+ return (
+
+ );
+}
+
+function SearchResults({
+ searchTerm,
+ sort,
+}: {
+ searchTerm: string;
+ sort: string;
+}) {
+ const [showAgents, setShowAgents] = useState(true);
+ const [showCreators, setShowCreators] = useState(true);
+ const [agents, setAgents] = useState([]);
+ const [creators, setCreators] = useState([]);
+ const [isLoading, setIsLoading] = useState(true);
+
+ useEffect(() => {
+ const fetchData = async () => {
+ setIsLoading(true);
+ const api = new AutoGPTServerAPI();
+
+ try {
+ const [agentsRes, creatorsRes] = await Promise.all([
+ api.getStoreAgents({
+ search_query: searchTerm,
+ sorted_by: sort,
+ }),
+ api.getStoreCreators({
+ search_query: searchTerm,
+ }),
+ ]);
+
+ setAgents(agentsRes.agents || []);
+ setCreators(creatorsRes.creators || []);
+ } catch (error) {
+ console.error("Error fetching data:", error);
+ } finally {
+ setIsLoading(false);
+ }
+ };
+
+ fetchData();
+ }, [searchTerm, sort]);
+
+ const agentsCount = agents.length;
+ const creatorsCount = creators.length;
+ const totalCount = agentsCount + creatorsCount;
+
+ const handleFilterChange = (value: string) => {
+ if (value === "agents") {
+ setShowAgents(true);
+ setShowCreators(false);
+ } else if (value === "creators") {
+ setShowAgents(false);
+ setShowCreators(true);
+ } else {
+ setShowAgents(true);
+ setShowCreators(true);
+ }
+ };
+
+ const handleSortChange = (sortValue: string) => {
+ let sortBy = "recent";
+ if (sortValue === "runs") {
+ sortBy = "runs";
+ } else if (sortValue === "rating") {
+ sortBy = "rating";
+ }
+
+ const sortedAgents = [...agents].sort((a, b) => {
+ if (sortBy === "runs") {
+ return b.runs - a.runs;
+ } else if (sortBy === "rating") {
+ return b.rating - a.rating;
+ } else {
+ return (
+ new Date(b.updated_at).getTime() - new Date(a.updated_at).getTime()
+ );
+ }
+ });
+
+ const sortedCreators = [...creators].sort((a, b) => {
+ if (sortBy === "runs") {
+ return b.agent_runs - a.agent_runs;
+ } else if (sortBy === "rating") {
+ return b.agent_rating - a.agent_rating;
+ } else {
+ // Creators don't have updated_at, sort by number of agents as fallback
+ return b.num_agents - a.num_agents;
+ }
+ });
+
+ setAgents(sortedAgents);
+ setCreators(sortedCreators);
+ };
+
+ return (
+
+
+
+
+
+ Results for:
+
+
+ {searchTerm}
+
+
+
+
+
+
+
+ {isLoading ? (
+
+ ) : totalCount > 0 ? (
+ <>
+
+
+
+
+ {/* Content section */}
+
+ {showAgents && agentsCount > 0 && (
+
+ )}
+
+ {showAgents && agentsCount > 0 && creatorsCount > 0 && (
+
+ )}
+ {showCreators && creatorsCount > 0 && (
+
+ )}
+
+ >
+ ) : (
+
+
+ No results found
+
+
+ Try adjusting your search terms or filters
+
+
+ )}
+
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/components/CustomNode.tsx b/autogpt_platform/frontend/src/components/CustomNode.tsx
index 6541c351f5..f591adaf46 100644
--- a/autogpt_platform/frontend/src/components/CustomNode.tsx
+++ b/autogpt_platform/frontend/src/components/CustomNode.tsx
@@ -19,8 +19,8 @@ import {
NodeExecutionResult,
BlockUIType,
BlockCost,
- useBackendAPI,
} from "@/lib/autogpt-server-api";
+import { useBackendAPI } from "@/lib/autogpt-server-api/context";
import {
beautifyString,
cn,
@@ -258,7 +258,7 @@ export function CustomNode({
) : (
propKey != "credentials" && (
-
+
{propSchema.title || beautifyString(propKey)}
@@ -460,49 +460,54 @@ export function CustomNode({
"custom-node",
"dark-theme",
"rounded-xl",
- "bg-white/[.9]",
- "border border-gray-300",
+ "bg-white/[.9] dark:bg-gray-800/[.9]",
+ "border border-gray-300 dark:border-gray-600",
data.uiType === BlockUIType.NOTE ? "w-[300px]" : "w-[500px]",
- data.uiType === BlockUIType.NOTE ? "bg-yellow-100" : "bg-white",
+ data.uiType === BlockUIType.NOTE
+ ? "bg-yellow-100 dark:bg-yellow-900"
+ : "bg-white dark:bg-gray-800",
selected ? "shadow-2xl" : "",
]
.filter(Boolean)
.join(" ");
const errorClass =
- hasConfigErrors || hasOutputError ? "border-red-200 border-2" : "";
+ hasConfigErrors || hasOutputError
+ ? "border-red-200 dark:border-red-800 border-2"
+ : "";
const statusClass = (() => {
- if (hasConfigErrors || hasOutputError) return "border-red-200 border-4";
+ if (hasConfigErrors || hasOutputError)
+ return "border-red-200 dark:border-red-800 border-4";
switch (data.status?.toLowerCase()) {
case "completed":
- return "border-green-200 border-4";
+ return "border-green-200 dark:border-green-800 border-4";
case "running":
- return "border-yellow-200 border-4";
+ return "border-yellow-200 dark:border-yellow-800 border-4";
case "failed":
- return "border-red-200 border-4";
+ return "border-red-200 dark:border-red-800 border-4";
case "incomplete":
- return "border-purple-200 border-4";
+ return "border-purple-200 dark:border-purple-800 border-4";
case "queued":
- return "border-cyan-200 border-4";
+ return "border-cyan-200 dark:border-cyan-800 border-4";
default:
return "";
}
})();
const statusBackgroundClass = (() => {
- if (hasConfigErrors || hasOutputError) return "bg-red-200";
+ if (hasConfigErrors || hasOutputError) return "bg-red-200 dark:bg-red-800";
switch (data.status?.toLowerCase()) {
case "completed":
- return "bg-green-200";
+ return "bg-green-200 dark:bg-green-800";
case "running":
- return "bg-yellow-200";
+ return "bg-yellow-200 dark:bg-yellow-800";
case "failed":
- return "bg-red-200";
+ return "bg-red-200 dark:bg-red-800";
case "incomplete":
- return "bg-purple-200";
+ return "bg-purple-200 dark:bg-purple-800";
case "queued":
- return "bg-cyan-200";
+ return "bg-cyan-200 dark:bg-cyan-800";
default:
return "";
}
@@ -591,36 +596,36 @@ export function CustomNode({
);
const LineSeparator = () => (
-
-
+
+
);
const ContextMenuContent = () => (
-
+
-
- Copy
+
+ Copy
{nodeFlowId && (
window.open(`/build?flowID=${nodeFlowId}`)}
- className="flex cursor-pointer items-center rounded-md px-3 py-2 hover:bg-gray-100"
+ className="flex cursor-pointer items-center rounded-md px-3 py-2 hover:bg-gray-100 dark:hover:bg-gray-700"
>
-
- Open agent
+
+ Open agent
)}
-
+
-
- Delete
+
+ Delete
);
diff --git a/autogpt_platform/frontend/src/components/Flow.tsx b/autogpt_platform/frontend/src/components/Flow.tsx
index 62e49c03fc..50c319d0ab 100644
--- a/autogpt_platform/frontend/src/components/Flow.tsx
+++ b/autogpt_platform/frontend/src/components/Flow.tsx
@@ -70,9 +70,8 @@ export const FlowContext = createContext(null);
const FlowEditor: React.FC<{
flowID?: string;
- template?: boolean;
className?: string;
-}> = ({ flowID, template, className }) => {
+}> = ({ flowID, className }) => {
const {
addNodes,
addEdges,
@@ -106,7 +105,7 @@ const FlowEditor: React.FC<{
setNodes,
edges,
setEdges,
- } = useAgentGraph(flowID, template, visualizeBeads !== "no");
+ } = useAgentGraph(flowID, visualizeBeads !== "no");
const router = useRouter();
const pathname = usePathname();
@@ -661,9 +660,10 @@ const FlowEditor: React.FC<{
deleteKeyCode={["Backspace", "Delete"]}
minZoom={0.2}
maxZoom={2}
+ className="dark:bg-slate-900"
>
-
+
= ({
const label = (
-
+
{title || schema.title || beautifyString(keyName.toLowerCase())}
{isRequired ? "*" : ""}
@@ -48,10 +48,10 @@ const NodeHandle: FC = ({
const Dot = () => {
const color = isConnected
? getTypeBgColor(schema.type || "any")
- : "border-gray-300";
+ : "border-gray-300 dark:border-gray-600";
return (
);
};
diff --git a/autogpt_platform/frontend/src/components/ProfileDropdown.tsx b/autogpt_platform/frontend/src/components/ProfileDropdown.tsx
index 98d4ad8c0f..60d8f0a76d 100644
--- a/autogpt_platform/frontend/src/components/ProfileDropdown.tsx
+++ b/autogpt_platform/frontend/src/components/ProfileDropdown.tsx
@@ -7,7 +7,7 @@ import {
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
import { Button } from "./ui/button";
-import { useSupabase } from "./SupabaseProvider";
+import { useSupabase } from "./providers/SupabaseProvider";
import { useRouter } from "next/navigation";
import useUser from "@/hooks/useUser";
diff --git a/autogpt_platform/frontend/src/components/SchemaTooltip.tsx b/autogpt_platform/frontend/src/components/SchemaTooltip.tsx
index 149fb22b17..313b55cb6b 100644
--- a/autogpt_platform/frontend/src/components/SchemaTooltip.tsx
+++ b/autogpt_platform/frontend/src/components/SchemaTooltip.tsx
@@ -14,15 +14,18 @@ const SchemaTooltip: React.FC<{ description?: string }> = ({ description }) => {
-
+
-
+
(
),
diff --git a/autogpt_platform/frontend/src/components/TallyPopup.tsx b/autogpt_platform/frontend/src/components/TallyPopup.tsx
index 001317cf70..7e7543dd7d 100644
--- a/autogpt_platform/frontend/src/components/TallyPopup.tsx
+++ b/autogpt_platform/frontend/src/components/TallyPopup.tsx
@@ -1,12 +1,20 @@
"use client";
+
import React, { useEffect, useState } from "react";
import { Button } from "./ui/button";
import { QuestionMarkCircledIcon } from "@radix-ui/react-icons";
-import { useRouter } from "next/navigation";
+import { useRouter, usePathname } from "next/navigation";
const TallyPopupSimple = () => {
const [isFormVisible, setIsFormVisible] = useState(false);
const router = useRouter();
+ const pathname = usePathname();
+
+ const [show_tutorial, setShowTutorial] = useState(false);
+
+ useEffect(() => {
+ setShowTutorial(pathname.includes("build"));
+ }, [pathname]);
useEffect(() => {
// Load Tally script
@@ -49,21 +57,23 @@ const TallyPopupSimple = () => {
return (
+ {show_tutorial && (
+
+ Tutorial
+
+ )}
- Tutorial
-
-
-
+
Reach Out
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/AdminAddFeaturedAgentDialog.tsx b/autogpt_platform/frontend/src/components/admin/marketplace/AdminAddFeaturedAgentDialog.tsx
index 3fe3ef9e34..75e4ff1282 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/AdminAddFeaturedAgentDialog.tsx
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/AdminAddFeaturedAgentDialog.tsx
@@ -1,149 +1,149 @@
-"use client";
+// "use client";
-import {
- Dialog,
- DialogContent,
- DialogClose,
- DialogFooter,
- DialogHeader,
- DialogTitle,
- DialogTrigger,
-} from "@/components/ui/dialog";
-import { Button } from "@/components/ui/button";
-import {
- MultiSelector,
- MultiSelectorContent,
- MultiSelectorInput,
- MultiSelectorItem,
- MultiSelectorList,
- MultiSelectorTrigger,
-} from "@/components/ui/multiselect";
-import { Controller, useForm } from "react-hook-form";
-import {
- Select,
- SelectContent,
- SelectItem,
- SelectTrigger,
- SelectValue,
-} from "@/components/ui/select";
-import { useState } from "react";
-import { addFeaturedAgent } from "./actions";
-import { Agent } from "@/lib/marketplace-api/types";
+// import {
+// Dialog,
+// DialogContent,
+// DialogClose,
+// DialogFooter,
+// DialogHeader,
+// DialogTitle,
+// DialogTrigger,
+// } from "@/components/ui/dialog";
+// import { Button } from "@/components/ui/button";
+// import {
+// MultiSelector,
+// MultiSelectorContent,
+// MultiSelectorInput,
+// MultiSelectorItem,
+// MultiSelectorList,
+// MultiSelectorTrigger,
+// } from "@/components/ui/multiselect";
+// import { Controller, useForm } from "react-hook-form";
+// import {
+// Select,
+// SelectContent,
+// SelectItem,
+// SelectTrigger,
+// SelectValue,
+// } from "@/components/ui/select";
+// import { useState } from "react";
+// import { addFeaturedAgent } from "./actions";
+// import { Agent } from "@/lib/marketplace-api/types";
-type FormData = {
- agent: string;
- categories: string[];
-};
+// type FormData = {
+// agent: string;
+// categories: string[];
+// };
-export const AdminAddFeaturedAgentDialog = ({
- categories,
- agents,
-}: {
- categories: string[];
- agents: Agent[];
-}) => {
- const [selectedAgent, setSelectedAgent] = useState("");
- const [selectedCategories, setSelectedCategories] = useState([]);
+// export const AdminAddFeaturedAgentDialog = ({
+// categories,
+// agents,
+// }: {
+// categories: string[];
+// agents: Agent[];
+// }) => {
+// const [selectedAgent, setSelectedAgent] = useState("");
+// const [selectedCategories, setSelectedCategories] = useState([]);
- const {
- control,
- handleSubmit,
- watch,
- setValue,
- formState: { errors },
- } = useForm({
- defaultValues: {
- agent: "",
- categories: [],
- },
- });
+// const {
+// control,
+// handleSubmit,
+// watch,
+// setValue,
+// formState: { errors },
+// } = useForm({
+// defaultValues: {
+// agent: "",
+// categories: [],
+// },
+// });
- return (
-
-
-
- Add Featured Agent
-
-
-
-
- Add Featured Agent
-
-
-
(
-
- Agent
- {
- field.onChange(value);
- setSelectedAgent(value);
- }}
- value={field.value || ""}
- >
-
-
-
-
- {/* Populate with agents */}
- {agents.map((agent) => (
-
- {agent.name}
-
- ))}
-
-
-
- )}
- />
- (
- {
- field.onChange(values);
- setSelectedCategories(values);
- }}
- >
-
-
-
-
-
- {categories.map((category) => (
-
- {category}
-
- ))}
-
-
-
- )}
- />
-
-
-
- Cancel
-
-
- {
- // Handle adding the featured agent
- await addFeaturedAgent(selectedAgent, selectedCategories);
- // close the dialog
- }}
- >
- Add
-
-
-
-
-
- );
-};
+// return (
+//
+//
+//
+// Add Featured Agent
+//
+//
+//
+//
+// Add Featured Agent
+//
+//
+//
(
+//
+// Agent
+// {
+// field.onChange(value);
+// setSelectedAgent(value);
+// }}
+// value={field.value || ""}
+// >
+//
+//
+//
+//
+// {/* Populate with agents */}
+// {agents.map((agent) => (
+//
+// {agent.name}
+//
+// ))}
+//
+//
+//
+// )}
+// />
+// (
+// {
+// field.onChange(values);
+// setSelectedCategories(values);
+// }}
+// >
+//
+//
+//
+//
+//
+// {categories.map((category) => (
+//
+// {category}
+//
+// ))}
+//
+//
+//
+// )}
+// />
+//
+//
+//
+// Cancel
+//
+//
+// {
+// // Handle adding the featured agent
+// await addFeaturedAgent(selectedAgent, selectedCategories);
+// // close the dialog
+// }}
+// >
+// Add
+//
+//
+//
+//
+//
+// );
+// };
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/AdminFeaturedAgentsControl.tsx b/autogpt_platform/frontend/src/components/admin/marketplace/AdminFeaturedAgentsControl.tsx
index cc1a2c8de6..51b158a162 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/AdminFeaturedAgentsControl.tsx
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/AdminFeaturedAgentsControl.tsx
@@ -1,74 +1,74 @@
-import { Button } from "@/components/ui/button";
-import {
- getFeaturedAgents,
- removeFeaturedAgent,
- getCategories,
- getNotFeaturedAgents,
-} from "./actions";
+// import { Button } from "@/components/ui/button";
+// import {
+// getFeaturedAgents,
+// removeFeaturedAgent,
+// getCategories,
+// getNotFeaturedAgents,
+// } from "./actions";
-import FeaturedAgentsTable from "./FeaturedAgentsTable";
-import { AdminAddFeaturedAgentDialog } from "./AdminAddFeaturedAgentDialog";
-import { revalidatePath } from "next/cache";
-import * as Sentry from "@sentry/nextjs";
+// import FeaturedAgentsTable from "./FeaturedAgentsTable";
+// import { AdminAddFeaturedAgentDialog } from "./AdminAddFeaturedAgentDialog";
+// import { revalidatePath } from "next/cache";
+// import * as Sentry from "@sentry/nextjs";
-export default async function AdminFeaturedAgentsControl({
- className,
-}: {
- className?: string;
-}) {
- // add featured agent button
- // modal to select agent?
- // modal to select categories?
- // table of featured agents
- // in table
- // remove featured agent button
- // edit featured agent categories button
- // table footer
- // Next page button
- // Previous page button
- // Page number input
- // Page size input
- // Total pages input
- // Go to page button
+// export default async function AdminFeaturedAgentsControl({
+// className,
+// }: {
+// className?: string;
+// }) {
+// // add featured agent button
+// // modal to select agent?
+// // modal to select categories?
+// // table of featured agents
+// // in table
+// // remove featured agent button
+// // edit featured agent categories button
+// // table footer
+// // Next page button
+// // Previous page button
+// // Page number input
+// // Page size input
+// // Total pages input
+// // Go to page button
- const page = 1;
- const pageSize = 10;
+// const page = 1;
+// const pageSize = 10;
- const agents = await getFeaturedAgents(page, pageSize);
+// const agents = await getFeaturedAgents(page, pageSize);
- const categories = await getCategories();
+// const categories = await getCategories();
- const notFeaturedAgents = await getNotFeaturedAgents();
+// const notFeaturedAgents = await getNotFeaturedAgents();
- return (
-
-
-
Featured Agent Controls
-
-
-
Remove,
- action: async (rows) => {
- "use server";
- return await Sentry.withServerActionInstrumentation(
- "removeFeaturedAgent",
- {},
- async () => {
- const all = rows.map((row) => removeFeaturedAgent(row.id));
- await Promise.all(all);
- revalidatePath("/marketplace");
- },
- );
- },
- },
- ]}
- />
-
- );
-}
+// return (
+//
+//
+//
Featured Agent Controls
+//
+//
+//
Remove,
+// action: async (rows) => {
+// "use server";
+// return await Sentry.withServerActionInstrumentation(
+// "removeFeaturedAgent",
+// {},
+// async () => {
+// const all = rows.map((row) => removeFeaturedAgent(row.id));
+// await Promise.all(all);
+// revalidatePath("/marketplace");
+// },
+// );
+// },
+// },
+// ]}
+// />
+//
+// );
+// }
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceAgentList.tsx b/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceAgentList.tsx
index cc6c751457..63ae9902c4 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceAgentList.tsx
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceAgentList.tsx
@@ -1,36 +1,36 @@
-import { Agent } from "@/lib/marketplace-api";
-import AdminMarketplaceCard from "./AdminMarketplaceCard";
-import { ClipboardX } from "lucide-react";
+// import { Agent } from "@/lib/marketplace-api";
+// import AdminMarketplaceCard from "./AdminMarketplaceCard";
+// import { ClipboardX } from "lucide-react";
-export default function AdminMarketplaceAgentList({
- agents,
- className,
-}: {
- agents: Agent[];
- className?: string;
-}) {
- if (agents.length === 0) {
- return (
-
-
Agents to review
-
-
-
No agents to review
-
-
- );
- }
+// export default function AdminMarketplaceAgentList({
+// agents,
+// className,
+// }: {
+// agents: Agent[];
+// className?: string;
+// }) {
+// if (agents.length === 0) {
+// return (
+//
+//
Agents to review
+//
+//
+//
No agents to review
+//
+//
+// );
+// }
- return (
-
-
-
Agents to review
-
-
- {agents.map((agent) => (
-
- ))}
-
-
- );
-}
+// return (
+//
+//
+//
Agents to review
+//
+//
+// {agents.map((agent) => (
+//
+// ))}
+//
+//
+// );
+// }
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceCard.tsx b/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceCard.tsx
index f00732f4a1..2861502d8a 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceCard.tsx
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/AdminMarketplaceCard.tsx
@@ -1,113 +1,113 @@
-"use client";
-import { Card } from "@/components/ui/card";
-import { Button } from "@/components/ui/button";
-import { Badge } from "@/components/ui/badge";
-import { ScrollArea } from "@/components/ui/scroll-area";
-import { approveAgent, rejectAgent } from "./actions";
-import { Agent } from "@/lib/marketplace-api";
-import Link from "next/link";
-import { useState } from "react";
-import { Input } from "@/components/ui/input";
+// "use client";
+// import { Card } from "@/components/ui/card";
+// import { Button } from "@/components/ui/button";
+// import { Badge } from "@/components/ui/badge";
+// import { ScrollArea } from "@/components/ui/scroll-area";
+// import { approveAgent, rejectAgent } from "./actions";
+// import { Agent } from "@/lib/marketplace-api";
+// import Link from "next/link";
+// import { useState } from "react";
+// import { Input } from "@/components/ui/input";
-function AdminMarketplaceCard({ agent }: { agent: Agent }) {
- const [isApproved, setIsApproved] = useState(false);
- const [isRejected, setIsRejected] = useState(false);
- const [comment, setComment] = useState("");
+// function AdminMarketplaceCard({ agent }: { agent: Agent }) {
+// const [isApproved, setIsApproved] = useState(false);
+// const [isRejected, setIsRejected] = useState(false);
+// const [comment, setComment] = useState("");
- const approveAgentWithId = approveAgent.bind(
- null,
- agent.id,
- agent.version,
- comment,
- );
- const rejectAgentWithId = rejectAgent.bind(
- null,
- agent.id,
- agent.version,
- comment,
- );
+// const approveAgentWithId = approveAgent.bind(
+// null,
+// agent.id,
+// agent.version,
+// comment,
+// );
+// const rejectAgentWithId = rejectAgent.bind(
+// null,
+// agent.id,
+// agent.version,
+// comment,
+// );
- const handleApprove = async (e: React.FormEvent) => {
- e.preventDefault();
- await approveAgentWithId();
- setIsApproved(true);
- };
+// const handleApprove = async (e: React.FormEvent) => {
+// e.preventDefault();
+// await approveAgentWithId();
+// setIsApproved(true);
+// };
- const handleReject = async (e: React.FormEvent) => {
- e.preventDefault();
- await rejectAgentWithId();
- setIsRejected(true);
- };
+// const handleReject = async (e: React.FormEvent) => {
+// e.preventDefault();
+// await rejectAgentWithId();
+// setIsRejected(true);
+// };
- return (
- <>
- {!isApproved && !isRejected && (
-
-
-
- {agent.name}
-
- v{agent.version}
-
- by {agent.author}
-
- {agent.description}
-
- {agent.categories.map((category) => (
-
- {category}
-
- ))}
-
-
- {agent.keywords.map((keyword) => (
-
- {keyword}
-
- ))}
-
-
-
-
- Created: {new Date(agent.createdAt).toLocaleDateString()}
-
-
- Updated: {new Date(agent.updatedAt).toLocaleDateString()}
-
-
-
- 👁 {agent.views}
- ⬇️ {agent.downloads}
-
-
-
- setComment(e.target.value)}
- />
- {!isRejected && (
-
-
- Reject
-
-
- )}
- {!isApproved && (
-
- Approve
-
- )}
-
-
-
- )}
- >
- );
-}
+// return (
+// <>
+// {!isApproved && !isRejected && (
+//
+//
+//
+// {agent.name}
+//
+// v{agent.version}
+//
+// by {agent.author}
+//
+// {agent.description}
+//
+// {agent.categories.map((category) => (
+//
+// {category}
+//
+// ))}
+//
+//
+// {agent.keywords.map((keyword) => (
+//
+// {keyword}
+//
+// ))}
+//
+//
+//
+//
+// Created: {new Date(agent.createdAt).toLocaleDateString()}
+//
+//
+// Updated: {new Date(agent.updatedAt).toLocaleDateString()}
+//
+//
+//
+// 👁 {agent.views}
+// ⬇️ {agent.downloads}
+//
+//
+//
+// setComment(e.target.value)}
+// />
+// {!isRejected && (
+//
+//
+// Reject
+//
+//
+// )}
+// {!isApproved && (
+//
+// Approve
+//
+// )}
+//
+//
+//
+// )}
+// >
+// );
+// }
-export default AdminMarketplaceCard;
+// export default AdminMarketplaceCard;
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/FeaturedAgentsTable.tsx b/autogpt_platform/frontend/src/components/admin/marketplace/FeaturedAgentsTable.tsx
index 6fd31301aa..c25720963e 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/FeaturedAgentsTable.tsx
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/FeaturedAgentsTable.tsx
@@ -1,114 +1,114 @@
-"use client";
+// "use client";
-import { Button } from "@/components/ui/button";
-import { Checkbox } from "@/components/ui/checkbox";
-import { DataTable } from "@/components/ui/data-table";
-import { Agent } from "@/lib/marketplace-api";
-import { ColumnDef } from "@tanstack/react-table";
-import { ArrowUpDown } from "lucide-react";
-import { removeFeaturedAgent } from "./actions";
-import { GlobalActions } from "@/components/ui/data-table";
+// import { Button } from "@/components/ui/button";
+// import { Checkbox } from "@/components/ui/checkbox";
+// import { DataTable } from "@/components/ui/data-table";
+// import { Agent } from "@/lib/marketplace-api";
+// import { ColumnDef } from "@tanstack/react-table";
+// import { ArrowUpDown } from "lucide-react";
+// import { removeFeaturedAgent } from "./actions";
+// import { GlobalActions } from "@/components/ui/data-table";
-export const columns: ColumnDef[] = [
- {
- id: "select",
- header: ({ table }) => (
- table.toggleAllPageRowsSelected(!!value)}
- aria-label="Select all"
- />
- ),
- cell: ({ row }) => (
- row.toggleSelected(!!value)}
- aria-label="Select row"
- />
- ),
- },
- {
- header: ({ column }) => {
- return (
- column.toggleSorting(column.getIsSorted() === "asc")}
- >
- Name
-
-
- );
- },
- accessorKey: "name",
- },
- {
- header: "Description",
- accessorKey: "description",
- },
- {
- header: "Categories",
- accessorKey: "categories",
- },
- {
- header: "Keywords",
- accessorKey: "keywords",
- },
- {
- header: "Downloads",
- accessorKey: "downloads",
- },
- {
- header: "Author",
- accessorKey: "author",
- },
- {
- header: "Version",
- accessorKey: "version",
- },
- {
- header: "actions",
- cell: ({ row }) => {
- const handleRemove = async () => {
- await removeFeaturedAgentWithId();
- };
- // const handleEdit = async () => {
- // console.log("edit");
- // };
- const removeFeaturedAgentWithId = removeFeaturedAgent.bind(
- null,
- row.original.id,
- );
- return (
-
-
- Remove
-
- {/*
- Edit
- */}
-
- );
- },
- },
-];
+// export const columns: ColumnDef[] = [
+// {
+// id: "select",
+// header: ({ table }) => (
+// table.toggleAllPageRowsSelected(!!value)}
+// aria-label="Select all"
+// />
+// ),
+// cell: ({ row }) => (
+// row.toggleSelected(!!value)}
+// aria-label="Select row"
+// />
+// ),
+// },
+// {
+// header: ({ column }) => {
+// return (
+// column.toggleSorting(column.getIsSorted() === "asc")}
+// >
+// Name
+//
+//
+// );
+// },
+// accessorKey: "name",
+// },
+// {
+// header: "Description",
+// accessorKey: "description",
+// },
+// {
+// header: "Categories",
+// accessorKey: "categories",
+// },
+// {
+// header: "Keywords",
+// accessorKey: "keywords",
+// },
+// {
+// header: "Downloads",
+// accessorKey: "downloads",
+// },
+// {
+// header: "Author",
+// accessorKey: "author",
+// },
+// {
+// header: "Version",
+// accessorKey: "version",
+// },
+// {
+// header: "actions",
+// cell: ({ row }) => {
+// const handleRemove = async () => {
+// await removeFeaturedAgentWithId();
+// };
+// // const handleEdit = async () => {
+// // console.log("edit");
+// // };
+// const removeFeaturedAgentWithId = removeFeaturedAgent.bind(
+// null,
+// row.original.id,
+// );
+// return (
+//
+//
+// Remove
+//
+// {/*
+// Edit
+// */}
+//
+// );
+// },
+// },
+// ];
-export default function FeaturedAgentsTable({
- agents,
- globalActions,
-}: {
- agents: Agent[];
- globalActions: GlobalActions[];
-}) {
- return (
-
- );
-}
+// export default function FeaturedAgentsTable({
+// agents,
+// globalActions,
+// }: {
+// agents: Agent[];
+// globalActions: GlobalActions[];
+// }) {
+// return (
+//
+// );
+// }
diff --git a/autogpt_platform/frontend/src/components/admin/marketplace/actions.ts b/autogpt_platform/frontend/src/components/admin/marketplace/actions.ts
index 2950d5f322..049aab69b4 100644
--- a/autogpt_platform/frontend/src/components/admin/marketplace/actions.ts
+++ b/autogpt_platform/frontend/src/components/admin/marketplace/actions.ts
@@ -1,155 +1,155 @@
-"use server";
-import MarketplaceAPI from "@/lib/marketplace-api";
-import ServerSideMarketplaceAPI from "@/lib/marketplace-api/server-client";
-import { revalidatePath } from "next/cache";
-import * as Sentry from "@sentry/nextjs";
-import { checkAuth, createServerClient } from "@/lib/supabase/server";
-import { redirect } from "next/navigation";
-import { createClient } from "@/lib/supabase/client";
+// "use server";
+// import MarketplaceAPI from "@/lib/marketplace-api";
+// import ServerSideMarketplaceAPI from "@/lib/marketplace-api/server-client";
+// import { revalidatePath } from "next/cache";
+// import * as Sentry from "@sentry/nextjs";
+// import { checkAuth, createServerClient } from "@/lib/supabase/server";
+// import { redirect } from "next/navigation";
+// import { createClient } from "@/lib/supabase/client";
-export async function approveAgent(
- agentId: string,
- version: number,
- comment: string,
-) {
- return await Sentry.withServerActionInstrumentation(
- "approveAgent",
- {},
- async () => {
- await checkAuth();
+// export async function approveAgent(
+// agentId: string,
+// version: number,
+// comment: string,
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "approveAgent",
+// {},
+// async () => {
+// await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- await api.approveAgentSubmission(agentId, version, comment);
- console.debug(`Approving agent ${agentId}`);
- revalidatePath("/marketplace");
- },
- );
-}
+// const api = new ServerSideMarketplaceAPI();
+// await api.approveAgentSubmission(agentId, version, comment);
+// console.debug(`Approving agent ${agentId}`);
+// revalidatePath("/marketplace");
+// },
+// );
+// }
-export async function rejectAgent(
- agentId: string,
- version: number,
- comment: string,
-) {
- return await Sentry.withServerActionInstrumentation(
- "rejectAgent",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- await api.rejectAgentSubmission(agentId, version, comment);
- console.debug(`Rejecting agent ${agentId}`);
- revalidatePath("/marketplace");
- },
- );
-}
+// export async function rejectAgent(
+// agentId: string,
+// version: number,
+// comment: string,
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "rejectAgent",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// await api.rejectAgentSubmission(agentId, version, comment);
+// console.debug(`Rejecting agent ${agentId}`);
+// revalidatePath("/marketplace");
+// },
+// );
+// }
-export async function getReviewableAgents() {
- return await Sentry.withServerActionInstrumentation(
- "getReviewableAgents",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- return api.getAgentSubmissions();
- },
- );
-}
+// export async function getReviewableAgents() {
+// return await Sentry.withServerActionInstrumentation(
+// "getReviewableAgents",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// return api.getAgentSubmissions();
+// },
+// );
+// }
-export async function getFeaturedAgents(
- page: number = 1,
- pageSize: number = 10,
-) {
- return await Sentry.withServerActionInstrumentation(
- "getFeaturedAgents",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- const featured = await api.getFeaturedAgents(page, pageSize);
- console.debug(`Getting featured agents ${featured.items.length}`);
- return featured;
- },
- );
-}
+// export async function getFeaturedAgents(
+// page: number = 1,
+// pageSize: number = 10,
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "getFeaturedAgents",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// const featured = await api.getFeaturedAgents(page, pageSize);
+// console.debug(`Getting featured agents ${featured.items.length}`);
+// return featured;
+// },
+// );
+// }
-export async function getFeaturedAgent(agentId: string) {
- return await Sentry.withServerActionInstrumentation(
- "getFeaturedAgent",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- const featured = await api.getFeaturedAgent(agentId);
- console.debug(`Getting featured agent ${featured.agentId}`);
- return featured;
- },
- );
-}
+// export async function getFeaturedAgent(agentId: string) {
+// return await Sentry.withServerActionInstrumentation(
+// "getFeaturedAgent",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// const featured = await api.getFeaturedAgent(agentId);
+// console.debug(`Getting featured agent ${featured.agentId}`);
+// return featured;
+// },
+// );
+// }
-export async function addFeaturedAgent(
- agentId: string,
- categories: string[] = ["featured"],
-) {
- return await Sentry.withServerActionInstrumentation(
- "addFeaturedAgent",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- await api.addFeaturedAgent(agentId, categories);
- console.debug(`Adding featured agent ${agentId}`);
- revalidatePath("/marketplace");
- },
- );
-}
+// export async function addFeaturedAgent(
+// agentId: string,
+// categories: string[] = ["featured"],
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "addFeaturedAgent",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// await api.addFeaturedAgent(agentId, categories);
+// console.debug(`Adding featured agent ${agentId}`);
+// revalidatePath("/marketplace");
+// },
+// );
+// }
-export async function removeFeaturedAgent(
- agentId: string,
- categories: string[] = ["featured"],
-) {
- return await Sentry.withServerActionInstrumentation(
- "removeFeaturedAgent",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- await api.removeFeaturedAgent(agentId, categories);
- console.debug(`Removing featured agent ${agentId}`);
- revalidatePath("/marketplace");
- },
- );
-}
+// export async function removeFeaturedAgent(
+// agentId: string,
+// categories: string[] = ["featured"],
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "removeFeaturedAgent",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// await api.removeFeaturedAgent(agentId, categories);
+// console.debug(`Removing featured agent ${agentId}`);
+// revalidatePath("/marketplace");
+// },
+// );
+// }
-export async function getCategories() {
- return await Sentry.withServerActionInstrumentation(
- "getCategories",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- const categories = await api.getCategories();
- console.debug(
- `Getting categories ${categories.unique_categories.length}`,
- );
- return categories;
- },
- );
-}
+// export async function getCategories() {
+// return await Sentry.withServerActionInstrumentation(
+// "getCategories",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// const categories = await api.getCategories();
+// console.debug(
+// `Getting categories ${categories.unique_categories.length}`,
+// );
+// return categories;
+// },
+// );
+// }
-export async function getNotFeaturedAgents(
- page: number = 1,
- pageSize: number = 100,
-) {
- return await Sentry.withServerActionInstrumentation(
- "getNotFeaturedAgents",
- {},
- async () => {
- await checkAuth();
- const api = new ServerSideMarketplaceAPI();
- const agents = await api.getNotFeaturedAgents(page, pageSize);
- console.debug(`Getting not featured agents ${agents.items.length}`);
- return agents;
- },
- );
-}
+// export async function getNotFeaturedAgents(
+// page: number = 1,
+// pageSize: number = 100,
+// ) {
+// return await Sentry.withServerActionInstrumentation(
+// "getNotFeaturedAgents",
+// {},
+// async () => {
+// await checkAuth();
+// const api = new ServerSideMarketplaceAPI();
+// const agents = await api.getNotFeaturedAgents(page, pageSize);
+// console.debug(`Getting not featured agents ${agents.items.length}`);
+// return agents;
+// },
+// );
+// }
diff --git a/autogpt_platform/frontend/src/components/agent-import-form.tsx b/autogpt_platform/frontend/src/components/agent-import-form.tsx
index c3ddbf0ba8..33c35204dd 100644
--- a/autogpt_platform/frontend/src/components/agent-import-form.tsx
+++ b/autogpt_platform/frontend/src/components/agent-import-form.tsx
@@ -96,19 +96,16 @@ export const AgentImportForm: React.FC<
name: values.agentName,
description: values.agentDescription,
is_active: !values.importAsTemplate,
- is_template: values.importAsTemplate,
};
- (values.importAsTemplate
- ? api.createTemplate(payload)
- : api.createGraph(payload)
- )
+ api
+ .createGraph(payload)
.then((response) => {
- const qID = values.importAsTemplate ? "templateID" : "flowID";
+ const qID = "flowID";
window.location.href = `/build?${qID}=${response.id}`;
})
.catch((error) => {
- const entity_type = values.importAsTemplate ? "template" : "agent";
+ const entity_type = "agent";
form.setError("root", {
message: `Could not create ${entity_type}: ${error}`,
});
@@ -159,7 +156,6 @@ export const AgentImportForm: React.FC<
setAgentObject(agent);
form.setValue("agentName", agent.name);
form.setValue("agentDescription", agent.description);
- form.setValue("importAsTemplate", agent.is_template);
} catch (error) {
console.error("Error loading agent file:", error);
}
@@ -202,41 +198,6 @@ export const AgentImportForm: React.FC<
)}
/>
- (
-
- Import as
-
-
-
- Agent
-
-
-
- Template
-
-
-
-
-
- )}
- />
{
+ const videoExtensions = /\.(mp4|webm|ogg)$/i;
+ return videoExtensions.test(url);
+};
+
+const isValidVideoUrl = (url: string): boolean => {
+ const videoExtensions = /\.(mp4|webm|ogg)$/i;
+ const youtubeRegex = /^(https?:\/\/)?(www\.)?(youtube\.com|youtu\.?be)\/.+$/;
+ return videoExtensions.test(url) || youtubeRegex.test(url);
+};
+
+const getYouTubeVideoId = (url: string) => {
+ const regExp =
+ /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/;
+ const match = url.match(regExp);
+ return match && match[7].length === 11 ? match[7] : null;
+};
+
+interface AgentImageItemProps {
+ image: string;
+ index: number;
+ playingVideoIndex: number | null;
+ handlePlay: (index: number) => void;
+ handlePause: (index: number) => void;
+}
+
+export const AgentImageItem: React.FC = React.memo(
+ ({ image, index, playingVideoIndex, handlePlay, handlePause }) => {
+ const videoRef = React.useRef(null);
+
+ React.useEffect(() => {
+ if (
+ playingVideoIndex !== index &&
+ videoRef.current &&
+ !videoRef.current.paused
+ ) {
+ videoRef.current.pause();
+ }
+ }, [playingVideoIndex, index]);
+
+ const isVideoFile = isValidVideoFile(image);
+
+ return (
+
+
+ {isValidVideoUrl(image) ? (
+ getYouTubeVideoId(image) ? (
+
VIDEO
+ ) : (
+
+ handlePlay(index)}
+ onPause={() => handlePause(index)}
+ autoPlay={false}
+ title="Video"
+ >
+
+ Your browser does not support the video tag.
+
+
+ )
+ ) : (
+
+
+
+ )}
+
+ {isVideoFile && playingVideoIndex !== index && (
+
+
{
+ if (videoRef.current) {
+ videoRef.current.play();
+ }
+ }}
+ >
+
+ Play demo
+
+
+
+
+ )}
+
+ );
+ },
+);
+
+AgentImageItem.displayName = "AgentImageItem";
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentImages.stories.tsx b/autogpt_platform/frontend/src/components/agptui/AgentImages.stories.tsx
new file mode 100644
index 0000000000..e752e450d0
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentImages.stories.tsx
@@ -0,0 +1,58 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { AgentImages } from "./AgentImages";
+
+const meta = {
+ title: "AGPT UI/Agent Images",
+ component: AgentImages,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ images: { control: "object" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ images: [
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ "https://youtu.be/KWonAsyKF3g?si=JMibxlN_6OVo6LhJ",
+ "https://storage.googleapis.com/agpt-dev-website-media/DJINeo.mp4",
+ ],
+ },
+};
+
+export const OnlyImages: Story = {
+ args: {
+ images: [
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ ],
+ },
+};
+
+export const WithVideos: Story = {
+ args: {
+ images: [
+ "https://storage.googleapis.com/agpt-dev-website-media/DJINeo.mp4",
+ "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4",
+ "https://youtu.be/KWonAsyKF3g?si=JMibxlN_6OVo6LhJ",
+ ],
+ },
+};
+
+export const SingleItem: Story = {
+ args: {
+ images: [
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ ],
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentImages.tsx b/autogpt_platform/frontend/src/components/agptui/AgentImages.tsx
new file mode 100644
index 0000000000..eaa1f55e13
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentImages.tsx
@@ -0,0 +1,44 @@
+"use client";
+
+import * as React from "react";
+import { AgentImageItem } from "./AgentImageItem";
+
+interface AgentImagesProps {
+ images: string[];
+}
+
+export const AgentImages: React.FC = ({ images }) => {
+ const [playingVideoIndex, setPlayingVideoIndex] = React.useState<
+ number | null
+ >(null);
+
+ const handlePlay = React.useCallback((index: number) => {
+ setPlayingVideoIndex(index);
+ }, []);
+
+ const handlePause = React.useCallback(
+ (index: number) => {
+ if (playingVideoIndex === index) {
+ setPlayingVideoIndex(null);
+ }
+ },
+ [playingVideoIndex],
+ );
+
+ return (
+
+
+ {images.map((image, index) => (
+
+ ))}
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentInfo.stories.tsx b/autogpt_platform/frontend/src/components/agptui/AgentInfo.stories.tsx
new file mode 100644
index 0000000000..c820e4af15
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentInfo.stories.tsx
@@ -0,0 +1,136 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { AgentInfo } from "./AgentInfo";
+import { userEvent, within } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Agent Info",
+ component: AgentInfo,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ onRunAgent: { action: "run agent clicked" },
+ name: { control: "text" },
+ creator: { control: "text" },
+ shortDescription: { control: "text" },
+ longDescription: { control: "text" },
+ rating: { control: "number", min: 0, max: 5, step: 0.1 },
+ runs: { control: "number" },
+ categories: { control: "object" },
+ lastUpdated: { control: "text" },
+ version: { control: "text" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ onRunAgent: () => console.log("Run agent clicked"),
+ name: "AI Video Generator",
+ creator: "Toran Richards",
+ shortDescription:
+ "Transform ideas into breathtaking images with this AI-powered Image Generator.",
+ longDescription: `Create Viral-Ready Content in Seconds! Transform trending topics into engaging videos with this cutting-edge AI Video Generator. Perfect for content creators, social media managers, and marketers looking to quickly produce high-quality content.
+
+Key features include:
+- Customizable video output
+- 15+ pre-made templates
+- Auto scene detection
+- Smart text-to-speech
+- Multiple export formats
+- SEO-optimized suggestions`,
+ rating: 4.7,
+ runs: 1500,
+ categories: ["Video", "Content Creation", "Social Media"],
+ lastUpdated: "2 days ago",
+ version: "1.2.0",
+ },
+};
+
+export const LowRating: Story = {
+ args: {
+ ...Default.args,
+ name: "Data Analyzer",
+ creator: "DataTech",
+ shortDescription:
+ "Analyze complex datasets with machine learning algorithms",
+ longDescription:
+ "A comprehensive data analysis tool that leverages machine learning to provide deep insights into your datasets. Currently in beta testing phase.",
+ rating: 2.7,
+ runs: 5000,
+ categories: ["Data Analysis", "Machine Learning"],
+ lastUpdated: "1 week ago",
+ version: "0.9.5",
+ },
+};
+
+export const HighRuns: Story = {
+ args: {
+ ...Default.args,
+ name: "Code Assistant",
+ creator: "DevAI",
+ shortDescription:
+ "Get AI-powered coding help for various programming languages",
+ longDescription:
+ "An advanced AI coding assistant that supports multiple programming languages and frameworks. Features include code completion, refactoring suggestions, and bug detection.",
+ rating: 4.8,
+ runs: 1000000,
+ categories: ["Programming", "AI", "Developer Tools"],
+ lastUpdated: "1 day ago",
+ version: "2.1.3",
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ ...Default.args,
+ name: "Task Planner",
+ creator: "Productivity AI",
+ shortDescription: "Plan and organize your tasks efficiently with AI",
+ longDescription:
+ "An intelligent task management system that helps you organize, prioritize, and complete your tasks more efficiently. Features smart scheduling and AI-powered suggestions.",
+ rating: 4.2,
+ runs: 50000,
+ categories: ["Productivity", "Task Management", "AI"],
+ lastUpdated: "3 days ago",
+ version: "1.5.2",
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+
+ // Test run agent button
+ const runButton = canvas.getByText("Run agent");
+ await userEvent.hover(runButton);
+ await userEvent.click(runButton);
+
+ // Test rating interaction
+ const ratingStars = canvas.getAllByLabelText(/Star Icon/);
+ await userEvent.hover(ratingStars[3]);
+ await userEvent.click(ratingStars[3]);
+
+ // Test category interaction
+ const category = canvas.getByText("Productivity");
+ await userEvent.hover(category);
+ await userEvent.click(category);
+ },
+};
+
+export const LongDescription: Story = {
+ args: {
+ ...Default.args,
+ name: "AI Writing Assistant",
+ creator: "WordCraft AI",
+ shortDescription:
+ "Enhance your writing with our advanced AI-powered assistant.",
+ longDescription:
+ "It offers real-time suggestions for grammar, style, and tone, helps with research and fact-checking, and can even generate content ideas based on your input.",
+ rating: 4.7,
+ runs: 75000,
+ categories: ["Writing", "AI", "Content Creation"],
+ lastUpdated: "5 days ago",
+ version: "3.0.1",
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentInfo.tsx b/autogpt_platform/frontend/src/components/agptui/AgentInfo.tsx
new file mode 100644
index 0000000000..942790837f
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentInfo.tsx
@@ -0,0 +1,120 @@
+"use client";
+
+import * as React from "react";
+import { IconPlay, IconStar, StarRatingIcons } from "@/components/ui/icons";
+import Link from "next/link";
+import { Separator } from "@/components/ui/separator";
+
+interface AgentInfoProps {
+ name: string;
+ creator: string;
+ shortDescription: string;
+ longDescription: string;
+ rating: number;
+ runs: number;
+ categories: string[];
+ lastUpdated: string;
+ version: string;
+}
+
+export const AgentInfo: React.FC = ({
+ name,
+ creator,
+ shortDescription,
+ longDescription,
+ rating,
+ runs,
+ categories,
+ lastUpdated,
+ version,
+}) => {
+ return (
+
+ {/* Title */}
+
+ {name}
+
+
+ {/* Creator */}
+
+
+ by
+
+
+ {creator}
+
+
+
+ {/* Short Description */}
+
+ {shortDescription}
+
+
+ {/* Run Agent Button */}
+
+
+
+
+ Run agent
+
+
+
+
+ {/* Rating and Runs */}
+
+
+
+ {rating.toFixed(1)}
+
+
{StarRatingIcons(rating)}
+
+
+ {runs.toLocaleString()} runs
+
+
+
+ {/* Separator */}
+
+
+ {/* Description Section */}
+
+
+ Description
+
+
+ {longDescription}
+
+
+
+ {/* Categories */}
+
+
+ Categories
+
+
+ {categories.map((category, index) => (
+
+ {category}
+
+ ))}
+
+
+
+ {/* Version History */}
+
+
+ Version history
+
+
+ Last updated {lastUpdated}
+
+
+ Version {version}
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentTable.stories.tsx b/autogpt_platform/frontend/src/components/agptui/AgentTable.stories.tsx
new file mode 100644
index 0000000000..85595cc022
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentTable.stories.tsx
@@ -0,0 +1,85 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { AgentTable } from "./AgentTable";
+import { AgentTableRowProps } from "./AgentTableRow";
+import { userEvent, within, expect } from "@storybook/test";
+import { StatusType } from "./Status";
+
+const meta: Meta = {
+ title: "AGPT UI/Agent Table",
+ component: AgentTable,
+ tags: ["autodocs"],
+};
+
+export default meta;
+type Story = StoryObj;
+
+const sampleAgents: AgentTableRowProps[] = [
+ {
+ id: "agent-1",
+ agentName: "Super Coder",
+ description: "An AI agent that writes clean, efficient code",
+ imageSrc:
+ "https://ddz4ak4pa3d19.cloudfront.net/cache/53/b2/53b2bc7d7900f0e1e60bf64ebf38032d.jpg",
+ dateSubmitted: "2023-05-15",
+ status: "approved",
+ runs: 1500,
+ rating: 4.8,
+ onEdit: () => console.log("Edit Super Coder"),
+ },
+ {
+ id: "agent-2",
+ agentName: "Data Analyzer",
+ description: "Processes and analyzes large datasets with ease",
+ imageSrc:
+ "https://ddz4ak4pa3d19.cloudfront.net/cache/40/f7/40f7bc97c952f8df0f9c88d29defe8d4.jpg",
+ dateSubmitted: "2023-05-10",
+ status: "awaiting_review",
+ runs: 1200,
+ rating: 4.5,
+ onEdit: () => console.log("Edit Data Analyzer"),
+ },
+ {
+ id: "agent-3",
+ agentName: "UI Designer",
+ description: "Creates beautiful and intuitive user interfaces",
+ imageSrc:
+ "https://ddz4ak4pa3d19.cloudfront.net/cache/14/9e/149ebb9014aa8c0097e72ed89845af0e.jpg",
+ dateSubmitted: "2023-05-05",
+ status: "draft",
+ runs: 800,
+ rating: 4.2,
+ onEdit: () => console.log("Edit UI Designer"),
+ },
+];
+
+export const Default: Story = {
+ args: {
+ agents: sampleAgents,
+ },
+};
+
+export const EmptyTable: Story = {
+ args: {
+ agents: [],
+ },
+};
+
+// Tests
+export const InteractionTest: Story = {
+ ...Default,
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const editButtons = await canvas.findAllByText("Edit");
+ await userEvent.click(editButtons[0]);
+ // You would typically assert something here, but console.log is used in the mocked function
+ },
+};
+
+export const EmptyTableTest: Story = {
+ ...EmptyTable,
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const emptyMessage = canvas.getByText("No agents found");
+ expect(emptyMessage).toBeTruthy();
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentTable.tsx b/autogpt_platform/frontend/src/components/agptui/AgentTable.tsx
new file mode 100644
index 0000000000..e6792c2605
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentTable.tsx
@@ -0,0 +1,107 @@
+"use client";
+
+import * as React from "react";
+import { AgentTableRow, AgentTableRowProps } from "./AgentTableRow";
+import { AgentTableCard } from "./AgentTableCard";
+import { StoreSubmissionRequest } from "@/lib/autogpt-server-api/types";
+
+export interface AgentTableProps {
+ agents: AgentTableRowProps[];
+ onEditSubmission: (submission: StoreSubmissionRequest) => void;
+ onDeleteSubmission: (submission_id: string) => void;
+}
+
+export const AgentTable: React.FC = ({
+ agents,
+ onEditSubmission,
+ onDeleteSubmission,
+}) => {
+ // Use state to track selected agents
+ const [selectedAgents, setSelectedAgents] = React.useState>(
+ new Set(),
+ );
+
+ // Handle select all checkbox
+ const handleSelectAll = React.useCallback(
+ (e: React.ChangeEvent) => {
+ if (e.target.checked) {
+ setSelectedAgents(new Set(agents.map((agent) => agent.id.toString())));
+ } else {
+ setSelectedAgents(new Set());
+ }
+ },
+ [agents],
+ );
+
+ return (
+
+ {/* Table header - Hide on mobile */}
+
+
+
+
+
+ 0
+ }
+ onChange={handleSelectAll}
+ />
+
+ Select all
+
+
+
+
+
+ Agent info
+
+
+ Date submitted
+
+
+ Status
+
+
+ Runs
+
+
+ Reviews
+
+
+
+
+
+
+
+ {/* Table body */}
+ {agents.length > 0 ? (
+
+ {agents.map((agent, index) => (
+
+ ))}
+
+ ) : (
+
+ No agents available. Create your first agent to get started!
+
+ )}
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentTableCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/AgentTableCard.stories.tsx
new file mode 100644
index 0000000000..a696037454
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentTableCard.stories.tsx
@@ -0,0 +1,65 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { AgentTableCard } from "./AgentTableCard";
+import { userEvent, within, expect } from "@storybook/test";
+import { type StatusType } from "./Status";
+
+const meta: Meta = {
+ title: "AGPT UI/Agent Table Card",
+ component: AgentTableCard,
+ tags: ["autodocs"],
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ agentName: "Super Coder",
+ description: "An AI agent that writes clean, efficient code",
+ imageSrc:
+ "https://ddz4ak4pa3d19.cloudfront.net/cache/53/b2/53b2bc7d7900f0e1e60bf64ebf38032d.jpg",
+ dateSubmitted: "2023-05-15",
+ status: "ACTIVE" as StatusType,
+ runs: 1500,
+ rating: 4.8,
+ onEdit: () => console.log("Edit Super Coder"),
+ },
+};
+
+export const NoRating: Story = {
+ args: {
+ ...Default.args,
+ rating: undefined,
+ },
+};
+
+export const NoRuns: Story = {
+ args: {
+ ...Default.args,
+ runs: undefined,
+ },
+};
+
+export const InactiveAgent: Story = {
+ args: {
+ ...Default.args,
+ status: "INACTIVE" as StatusType,
+ },
+};
+
+export const LongDescription: Story = {
+ args: {
+ ...Default.args,
+ description:
+ "This is a very long description that should wrap to multiple lines. It contains detailed information about the agent and its capabilities.",
+ },
+};
+
+export const InteractionTest: Story = {
+ ...Default,
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const moreButton = canvas.getByRole("button");
+ await userEvent.click(moreButton);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentTableCard.tsx b/autogpt_platform/frontend/src/components/agptui/AgentTableCard.tsx
new file mode 100644
index 0000000000..0c948caea7
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentTableCard.tsx
@@ -0,0 +1,95 @@
+"use client";
+
+import * as React from "react";
+import Image from "next/image";
+import { IconStarFilled, IconMore } from "@/components/ui/icons";
+import { Status, StatusType } from "./Status";
+
+export interface AgentTableCardProps {
+ agent_id: string;
+ agent_version: number;
+ agentName: string;
+ sub_heading: string;
+ description: string;
+ imageSrc: string[];
+ dateSubmitted: string;
+ status: StatusType;
+ runs: number;
+ rating: number;
+ id: number;
+ onEditSubmission: (submission: StoreSubmissionRequest) => void;
+}
+
+export const AgentTableCard: React.FC = ({
+ agent_id,
+ agent_version,
+ agentName,
+ sub_heading,
+ description,
+ imageSrc,
+ dateSubmitted,
+ status,
+ runs,
+ rating,
+ id,
+ onEditSubmission,
+}) => {
+ const onEdit = () => {
+ console.log("Edit agent", agentName);
+ onEditSubmission({
+ agent_id,
+ agent_version,
+ slug: "",
+ name: agentName,
+ sub_heading,
+ description,
+ image_urls: imageSrc,
+ categories: [],
+ });
+ };
+
+ return (
+
+
+
+
+
+
+
+ {agentName}
+
+
+ {description}
+
+
+
+
+
+
+
+
+
+
+ {dateSubmitted}
+
+
+ {runs.toLocaleString()} runs
+
+
+
+ {rating.toFixed(1)}
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/AgentTableRow.tsx b/autogpt_platform/frontend/src/components/agptui/AgentTableRow.tsx
new file mode 100644
index 0000000000..c0b42e243e
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/AgentTableRow.tsx
@@ -0,0 +1,170 @@
+"use client";
+
+import * as React from "react";
+import Image from "next/image";
+import { IconStarFilled, IconMore, IconEdit } from "@/components/ui/icons";
+import { Status, StatusType } from "./Status";
+import * as ContextMenu from "@radix-ui/react-context-menu";
+import { TrashIcon } from "@radix-ui/react-icons";
+import { StoreSubmissionRequest } from "@/lib/autogpt-server-api/types";
+
+export interface AgentTableRowProps {
+ agent_id: string;
+ agent_version: number;
+ agentName: string;
+ sub_heading: string;
+ description: string;
+ imageSrc: string[];
+ date_submitted: string;
+ status: StatusType;
+ runs: number;
+ rating: number;
+ dateSubmitted: string;
+ id: number;
+ onEditSubmission: (submission: StoreSubmissionRequest) => void;
+ onDeleteSubmission: (submission_id: string) => void;
+}
+
+export const AgentTableRow: React.FC = ({
+ agent_id,
+ agent_version,
+ agentName,
+ sub_heading,
+ description,
+ imageSrc,
+ dateSubmitted,
+ status,
+ runs,
+ rating,
+ id,
+ onEditSubmission,
+ onDeleteSubmission,
+}) => {
+ // Create a unique ID for the checkbox
+ const checkboxId = `agent-${id}-checkbox`;
+
+ const handleEdit = React.useCallback(() => {
+ onEditSubmission({
+ agent_id,
+ agent_version,
+ slug: "",
+ name: agentName,
+ sub_heading,
+ description,
+ image_urls: imageSrc,
+ categories: [],
+ } as StoreSubmissionRequest);
+ }, [
+ agent_id,
+ agent_version,
+ agentName,
+ sub_heading,
+ description,
+ imageSrc,
+ onEditSubmission,
+ ]);
+
+ const handleDelete = React.useCallback(() => {
+ onDeleteSubmission(agent_id);
+ }, [agent_id, onDeleteSubmission]);
+
+ return (
+
+
+
+
+ {/* Single label instead of multiple */}
+
+ Select {agentName}
+
+
+
+
+
+ {/* Agent info column */}
+
+
+
+
+
+
+ {agentName}
+
+
+ {description}
+
+
+
+
+ {/* Date column */}
+
+ {dateSubmitted}
+
+
+ {/* Status column */}
+
+
+
+
+ {/* Runs column */}
+
+ {runs?.toLocaleString() ?? "0"}
+
+
+ {/* Reviews column */}
+
+ {rating ? (
+
+
+ {rating.toFixed(1)}
+
+
+
+ ) : (
+
+ No reviews
+
+ )}
+
+
+ {/* Actions - Three dots menu */}
+
+
+
+
+
+
+
+
+
+
+ Edit
+
+
+
+
+ Delete
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/BecomeACreator.stories.tsx b/autogpt_platform/frontend/src/components/agptui/BecomeACreator.stories.tsx
new file mode 100644
index 0000000000..58f830d212
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/BecomeACreator.stories.tsx
@@ -0,0 +1,62 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { BecomeACreator } from "./BecomeACreator";
+import { userEvent, within } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Become A Creator",
+ component: BecomeACreator,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ title: { control: "text" },
+ heading: { control: "text" },
+ description: { control: "text" },
+ buttonText: { control: "text" },
+ onButtonClick: { action: "buttonClicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ title: "Want to contribute?",
+ heading: "We're always looking for more Creators!",
+ description: "Join our ever-growing community of hackers and tinkerers",
+ buttonText: "Become a Creator",
+ onButtonClick: () => console.log("Button clicked"),
+ },
+};
+
+export const CustomText: Story = {
+ args: {
+ title: "Become a Creator Today!",
+ heading: "Join Our Creator Community",
+ description: "Share your ideas and build amazing AI agents with us",
+ buttonText: "Start Creating",
+ onButtonClick: () => console.log("Custom button clicked"),
+ },
+};
+
+export const LongDescription: Story = {
+ args: {
+ ...Default.args,
+ description:
+ "Join our vibrant community of innovators, developers, and AI enthusiasts. Share your unique perspectives, collaborate on groundbreaking projects, and help shape the future of AI technology.",
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ ...Default.args,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const button = canvas.getByText("Become a Creator");
+
+ await userEvent.click(button);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/BecomeACreator.tsx b/autogpt_platform/frontend/src/components/agptui/BecomeACreator.tsx
new file mode 100644
index 0000000000..d41073cc1e
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/BecomeACreator.tsx
@@ -0,0 +1,63 @@
+"use client";
+
+import * as React from "react";
+import { PublishAgentPopout } from "./composite/PublishAgentPopout";
+interface BecomeACreatorProps {
+ title?: string;
+ description?: string;
+ buttonText?: string;
+ onButtonClick?: () => void;
+}
+
+export const BecomeACreator: React.FC = ({
+ title = "Become a creator",
+ description = "Join a community where your AI creations can inspire, engage, and be downloaded by users around the world.",
+ buttonText = "Upload your agent",
+ onButtonClick,
+}) => {
+ const handleButtonClick = () => {
+ onButtonClick?.();
+ console.log("Become A Creator clicked");
+ };
+
+ return (
+
+ {/* Top border */}
+
+
+ {/* Title */}
+
+ {title}
+
+
+ {/* Content Container */}
+
+
+ Build AI agents and share
+
+
+ your
+ {" "}
+ vision
+
+
+
+ {description}
+
+
+
+
+ {buttonText}
+
+
+ }
+ />
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.stories.tsx b/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.stories.tsx
new file mode 100644
index 0000000000..c94d6040a6
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.stories.tsx
@@ -0,0 +1,79 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { BreadCrumbs } from "./BreadCrumbs";
+import { userEvent, within } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/BreadCrumbs",
+ component: BreadCrumbs,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ items: { control: "object" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ items: [
+ { name: "Home", link: "/" },
+ { name: "Agents", link: "/agents" },
+ { name: "SEO Optimizer", link: "/agents/seo-optimizer" },
+ ],
+ },
+};
+
+export const SingleItem: Story = {
+ args: {
+ items: [{ name: "Home", link: "/" }],
+ },
+};
+
+export const LongPath: Story = {
+ args: {
+ items: [
+ { name: "Home", link: "/" },
+ { name: "Categories", link: "/categories" },
+ { name: "AI Tools", link: "/categories/ai-tools" },
+ { name: "Data Analysis", link: "/categories/ai-tools/data-analysis" },
+ {
+ name: "Data Analyzer",
+ link: "/categories/ai-tools/data-analysis/data-analyzer",
+ },
+ ],
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ items: [
+ { name: "Home", link: "/" },
+ { name: "Agents", link: "/agents" },
+ { name: "Task Planner", link: "/agents/task-planner" },
+ ],
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const homeLink = canvas.getByText("Home");
+
+ await userEvent.hover(homeLink);
+ await userEvent.click(homeLink);
+ },
+};
+
+export const LongNames: Story = {
+ args: {
+ items: [
+ { name: "Home", link: "/" },
+ { name: "AI-Powered Writing Assistants", link: "/ai-writing-assistants" },
+ {
+ name: "Advanced Grammar and Style Checker",
+ link: "/ai-writing-assistants/grammar-style-checker",
+ },
+ ],
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.tsx b/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.tsx
new file mode 100644
index 0000000000..5fadd00f52
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/BreadCrumbs.tsx
@@ -0,0 +1,43 @@
+import * as React from "react";
+import Link from "next/link";
+import { IconLeftArrow, IconRightArrow } from "@/components/ui/icons";
+
+interface BreadcrumbItem {
+ name: string;
+ link: string;
+}
+
+interface BreadCrumbsProps {
+ items: BreadcrumbItem[];
+}
+
+export const BreadCrumbs: React.FC = ({ items }) => {
+ return (
+
+ {/*
+ Commented out for now, but keeping until we have approval to remove
+
+
+
+
+
+ */}
+
+ {items.map((item, index) => (
+
+
+
+ {item.name}
+
+
+ {index < items.length - 1 && (
+
+ /
+
+ )}
+
+ ))}
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Button.stories.tsx b/autogpt_platform/frontend/src/components/agptui/Button.stories.tsx
new file mode 100644
index 0000000000..2f97449f3a
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Button.stories.tsx
@@ -0,0 +1,220 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { Button } from "./Button";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Button",
+ component: Button,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ variant: {
+ control: "select",
+ options: [
+ "default",
+ "destructive",
+ "outline",
+ "secondary",
+ "ghost",
+ "link",
+ ],
+ },
+ size: {
+ control: "select",
+ options: ["default", "sm", "lg", "primary", "icon"],
+ },
+ disabled: {
+ control: "boolean",
+ },
+ asChild: {
+ control: "boolean",
+ },
+ children: {
+ control: "text",
+ },
+ onClick: { action: "clicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ children: "Button",
+ },
+};
+
+export const Interactive: Story = {
+ args: {
+ children: "Interactive Button",
+ },
+ argTypes: {
+ onClick: { action: "clicked" },
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const button = canvas.getByRole("button", { name: /Interactive Button/i });
+ await userEvent.click(button);
+ await expect(button).toHaveFocus();
+ },
+};
+
+export const Variants: Story = {
+ render: (args) => (
+
+
+ Default
+
+
+ Destructive
+
+
+ Outline
+
+
+ Secondary
+
+
+ Ghost
+
+
+ Link
+
+
+ ),
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const buttons = canvas.getAllByRole("button");
+ await expect(buttons).toHaveLength(6);
+ for (const button of buttons) {
+ await userEvent.hover(button);
+ await expect(button).toHaveAttribute(
+ "class",
+ expect.stringContaining("hover:"),
+ );
+ }
+ },
+};
+export const Sizes: Story = {
+ render: (args) => (
+
+
+ Small
+
+
+ Default
+
+
+ Large
+
+
+ Primary
+
+
+ 🚀
+
+
+ ),
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const buttons = canvas.getAllByRole("button");
+ await expect(buttons).toHaveLength(5);
+ const sizeClasses = [
+ "h-8 px-3 py-1.5 text-xs",
+ "h-10 px-4 py-2 text-sm",
+ "h-12 px-5 py-2.5 text-lg",
+ "h-10 w-28",
+ "h-10 w-10",
+ ];
+ for (let i = 0; i < buttons.length; i++) {
+ await expect(buttons[i]).toHaveAttribute(
+ "class",
+ expect.stringContaining(sizeClasses[i]),
+ );
+ }
+ },
+};
+
+export const Disabled: Story = {
+ args: {
+ children: "Disabled Button",
+ disabled: true,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const button = canvas.getByRole("button", { name: /Disabled Button/i });
+ await expect(button).toBeDisabled();
+ await expect(button).toHaveAttribute(
+ "class",
+ expect.stringContaining("disabled:opacity-50"),
+ );
+ await expect(button).not.toHaveFocus();
+ },
+};
+
+export const WithIcon: Story = {
+ args: {
+ children: (
+ <>
+
+
+
+ Button with Icon
+ >
+ ),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const button = canvas.getByRole("button", { name: /Button with Icon/i });
+ const icon = button.querySelector("svg");
+ await expect(icon).toBeInTheDocument();
+ await expect(button).toHaveTextContent("Button with Icon");
+ },
+};
+
+export const LoadingState: Story = {
+ args: {
+ children: "Loading...",
+ disabled: true,
+ },
+ render: (args) => (
+
+
+
+
+ {args.children}
+
+ ),
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const button = canvas.getByRole("button", { name: /Loading.../i });
+ await expect(button).toBeDisabled();
+ const spinner = button.querySelector("svg");
+ await expect(spinner).toHaveClass("animate-spin");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Button.tsx b/autogpt_platform/frontend/src/components/agptui/Button.tsx
new file mode 100644
index 0000000000..e2ffc1bd05
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Button.tsx
@@ -0,0 +1,69 @@
+import * as React from "react";
+import { Slot } from "@radix-ui/react-slot";
+import { cva, type VariantProps } from "class-variance-authority";
+
+import { cn } from "@/lib/utils";
+
+const buttonVariants = cva(
+ "inline-flex items-center justify-center whitespace-nowrap rounded-[80px] text-xl font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-neutral-950 disabled:pointer-events-none disabled:opacity-50 dark:focus-visible:ring-neutral-300 font-neue leading-9 tracking-tight",
+ {
+ variants: {
+ variant: {
+ default:
+ "bg-white border border-black/50 text-[#272727] hover:bg-neutral-100 dark:bg-neutral-800 dark:text-neutral-100 dark:hover:bg-neutral-700",
+ destructive:
+ "bg-red-600 text-neutral-50 border border-red-500/50 hover:bg-red-500/90 dark:bg-red-700 dark:text-neutral-50 dark:hover:bg-red-600",
+ outline:
+ "bg-white border border-black/50 text-[#272727] hover:bg-neutral-100 dark:bg-neutral-800 dark:text-neutral-100 dark:hover:bg-neutral-700",
+ secondary:
+ "bg-neutral-100 text-[#272727] border border-neutral-200 hover:bg-neutral-100/80 dark:bg-neutral-700 dark:text-neutral-100 dark:border-neutral-600 dark:hover:bg-neutral-600",
+ ghost:
+ "hover:bg-neutral-100 text-[#272727] dark:text-neutral-100 dark:hover:bg-neutral-700",
+ link: "text-[#272727] underline-offset-4 hover:underline dark:text-neutral-100",
+ },
+ size: {
+ default:
+ "h-10 px-4 py-2 text-sm sm:h-12 sm:px-5 sm:py-2.5 sm:text-base md:h-14 md:px-6 md:py-3 md:text-lg lg:h-[4.375rem] lg:px-[1.625rem] lg:py-[0.4375rem] lg:text-xl",
+ sm: "h-8 px-3 py-1.5 text-xs sm:h-9 sm:px-3.5 sm:py-2 sm:text-sm md:h-10 md:px-4 md:py-2 md:text-base lg:h-[3.125rem] lg:px-[1.25rem] lg:py-[0.3125rem] lg:text-sm",
+ lg: "h-12 px-5 py-2.5 text-lg sm:h-14 sm:px-6 sm:py-3 sm:text-xl md:h-16 md:px-7 md:py-3.5 md:text-2xl lg:h-[5.625rem] lg:px-[2rem] lg:py-[0.5625rem] lg:text-2xl",
+ primary:
+ "h-10 w-28 sm:h-12 sm:w-32 md:h-[4.375rem] md:w-[11rem] lg:h-[3.125rem] lg:w-[7rem]",
+ icon: "h-10 w-10 sm:h-12 sm:w-12 md:h-14 md:w-14 lg:h-[4.375rem] lg:w-[4.375rem]",
+ },
+ },
+ defaultVariants: {
+ variant: "default",
+ size: "default",
+ },
+ },
+);
+
+export interface ButtonProps
+ extends React.ButtonHTMLAttributes,
+ VariantProps {
+ asChild?: boolean;
+ variant?:
+ | "default"
+ | "destructive"
+ | "outline"
+ | "secondary"
+ | "ghost"
+ | "link";
+ size?: "default" | "sm" | "lg" | "primary" | "icon";
+}
+
+const Button = React.forwardRef(
+ ({ className, variant, size, asChild = false, ...props }, ref) => {
+ const Comp = asChild ? Slot : "button";
+ return (
+
+ );
+ },
+);
+Button.displayName = "Button";
+
+export { Button, buttonVariants };
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorCard.stories.tsx
new file mode 100644
index 0000000000..d11aad5e74
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorCard.stories.tsx
@@ -0,0 +1,78 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { CreatorCard } from "./CreatorCard";
+import { userEvent, within } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Creator Card",
+ component: CreatorCard,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ creatorName: { control: "text" },
+ creatorImage: { control: "text" },
+ bio: { control: "text" },
+ agentsUploaded: { control: "number" },
+ onClick: { action: "clicked" },
+ avatarSrc: { control: "text" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ creatorName: "John Doe",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ bio: "AI enthusiast and developer with a passion for creating innovative agents.",
+ agentsUploaded: 15,
+ onClick: () => console.log("Default CreatorCard clicked"),
+ avatarSrc: "https://github.com/shadcn.png",
+ },
+};
+
+export const NewCreator: Story = {
+ args: {
+ creatorName: "Jane Smith",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ bio: "Excited to start my journey in AI agent development!",
+ agentsUploaded: 1,
+ onClick: () => console.log("NewCreator CreatorCard clicked"),
+ avatarSrc: "https://example.com/avatar2.jpg",
+ },
+};
+
+export const ExperiencedCreator: Story = {
+ args: {
+ creatorName: "Alex Johnson",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ bio: "Veteran AI researcher with a focus on natural language processing and machine learning.",
+ agentsUploaded: 50,
+ onClick: () => console.log("ExperiencedCreator CreatorCard clicked"),
+ avatarSrc: "https://example.com/avatar3.jpg",
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ creatorName: "Sam Brown",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ bio: "Exploring the frontiers of AI and its applications in everyday life.",
+ agentsUploaded: 30,
+ onClick: () => console.log("WithInteraction CreatorCard clicked"),
+ avatarSrc: "https://example.com/avatar4.jpg",
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const creatorCard = canvas.getByText("Sam Brown");
+
+ await userEvent.hover(creatorCard);
+ await userEvent.click(creatorCard);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorCard.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorCard.tsx
new file mode 100644
index 0000000000..660ff61df6
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorCard.tsx
@@ -0,0 +1,66 @@
+import * as React from "react";
+import Image from "next/image";
+
+const BACKGROUND_COLORS = [
+ "bg-amber-100 dark:bg-amber-800", // #fef3c7 / #92400e
+ "bg-violet-100 dark:bg-violet-800", // #ede9fe / #5b21b6
+ "bg-green-100 dark:bg-green-800", // #dcfce7 / #065f46
+ "bg-blue-100 dark:bg-blue-800", // #dbeafe / #1e3a8a
+];
+
+interface CreatorCardProps {
+ creatorName: string;
+ creatorImage: string;
+ bio: string;
+ agentsUploaded: number;
+ onClick: () => void;
+ index: number;
+}
+
+export const CreatorCard: React.FC = ({
+ creatorName,
+ creatorImage,
+ bio,
+ agentsUploaded,
+ onClick,
+ index,
+}) => {
+ const backgroundColor = BACKGROUND_COLORS[index % BACKGROUND_COLORS.length];
+
+ return (
+
+
+
+ {creatorImage ? (
+
+ ) : (
+
+ )}
+
+
+
+
+
+ {creatorName}
+
+
+ {bio}
+
+
+ {agentsUploaded} agents
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.stories.tsx
new file mode 100644
index 0000000000..820fcbb87b
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.stories.tsx
@@ -0,0 +1,55 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { CreatorInfoCard } from "./CreatorInfoCard";
+
+const meta = {
+ title: "AGPT UI/Creator Info Card",
+ component: CreatorInfoCard,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ username: { control: "text" },
+ handle: { control: "text" },
+ avatarSrc: { control: "text" },
+ categories: { control: "object" },
+ averageRating: { control: "number", min: 0, max: 5, step: 0.1 },
+ totalRuns: { control: "number" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ username: "SignificantGravitas",
+ handle: "oliviagrace1421",
+ avatarSrc: "https://github.com/shadcn.png",
+ categories: ["Entertainment", "Business"],
+ averageRating: 4.7,
+ totalRuns: 1500,
+ },
+};
+
+export const NewCreator: Story = {
+ args: {
+ username: "AI Enthusiast",
+ handle: "ai_newbie",
+ avatarSrc: "https://example.com/avatar2.jpg",
+ categories: ["AI", "Technology"],
+ averageRating: 0,
+ totalRuns: 0,
+ },
+};
+
+export const ExperiencedCreator: Story = {
+ args: {
+ username: "Tech Master",
+ handle: "techmaster",
+ avatarSrc: "https://example.com/avatar3.jpg",
+ categories: ["AI", "Development", "Education"],
+ averageRating: 4.9,
+ totalRuns: 50000,
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.tsx
new file mode 100644
index 0000000000..33cdfba29c
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorInfoCard.tsx
@@ -0,0 +1,105 @@
+import * as React from "react";
+import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
+import { StarRatingIcons } from "@/components/ui/icons";
+
+interface CreatorInfoCardProps {
+ username: string;
+ handle: string;
+ avatarSrc: string;
+ categories: string[];
+ averageRating: number;
+ totalRuns: number;
+}
+
+export const CreatorInfoCard: React.FC = ({
+ username,
+ handle,
+ avatarSrc,
+ categories,
+ averageRating,
+ totalRuns,
+}) => {
+ return (
+
+
+
+
+
+ {username.charAt(0)}
+
+
+
+
+ {username}
+
+
+ @{handle}
+
+
+
+
+
+
+
+
+
+ Top categories
+
+
+ {categories.map((category, index) => (
+
+ ))}
+
+
+
+
+
+
+
+
+
+ Average rating
+
+
+
+ {averageRating.toFixed(1)}
+
+
+ {StarRatingIcons(averageRating)}
+
+
+
+
+
+ Number of runs
+
+
+ {new Intl.NumberFormat().format(totalRuns)} runs
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorLinks.stories.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorLinks.stories.tsx
new file mode 100644
index 0000000000..a26f1d450a
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorLinks.stories.tsx
@@ -0,0 +1,71 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { CreatorLinks } from "./CreatorLinks";
+
+const meta = {
+ title: "AGPT UI/Creator Links",
+ component: CreatorLinks,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ links: {
+ control: "object",
+ description: "Object containing various social and web links",
+ },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ links: {
+ website: "https://example.com",
+ linkedin: "https://linkedin.com/in/johndoe",
+ github: "https://github.com/johndoe",
+ other: ["https://twitter.com/johndoe", "https://medium.com/@johndoe"],
+ },
+ },
+};
+
+export const WebsiteOnly: Story = {
+ args: {
+ links: {
+ website: "https://example.com",
+ },
+ },
+};
+
+export const SocialLinks: Story = {
+ args: {
+ links: {
+ linkedin: "https://linkedin.com/in/janedoe",
+ github: "https://github.com/janedoe",
+ other: ["https://twitter.com/janedoe"],
+ },
+ },
+};
+
+export const NoLinks: Story = {
+ args: {
+ links: {},
+ },
+};
+
+export const MultipleOtherLinks: Story = {
+ args: {
+ links: {
+ website: "https://example.com",
+ linkedin: "https://linkedin.com/in/creator",
+ github: "https://github.com/creator",
+ other: [
+ "https://twitter.com/creator",
+ "https://medium.com/@creator",
+ "https://youtube.com/@creator",
+ "https://tiktok.com/@creator",
+ ],
+ },
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreatorLinks.tsx b/autogpt_platform/frontend/src/components/agptui/CreatorLinks.tsx
new file mode 100644
index 0000000000..8d61ecf690
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreatorLinks.tsx
@@ -0,0 +1,43 @@
+import * as React from "react";
+import { getIconForSocial } from "@/components/ui/icons";
+
+interface CreatorLinksProps {
+ links: string[];
+}
+
+export const CreatorLinks: React.FC = ({ links }) => {
+ if (!links || links.length === 0) {
+ return null;
+ }
+
+ const renderLinkButton = (url: string) => (
+
+
+ {new URL(url).hostname.replace("www.", "")}
+
+
+ {getIconForSocial(url, {
+ className: "h-6 w-6 text-neutral-800 dark:text-neutral-200",
+ })}
+
+
+ );
+
+ return (
+
+
+ Other links
+
+
+ {links.map((link, index) => (
+ {renderLinkButton(link)}
+ ))}
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreditsCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/CreditsCard.stories.tsx
new file mode 100644
index 0000000000..cc9028eeaa
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreditsCard.stories.tsx
@@ -0,0 +1,43 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import CreditsCard from "./CreditsCard";
+import { userEvent, within } from "@storybook/test";
+
+const meta: Meta = {
+ title: "AGPT UI/Credits Card",
+ component: CreditsCard,
+ tags: ["autodocs"],
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ credits: 0,
+ },
+};
+
+export const SmallNumber: Story = {
+ args: {
+ credits: 10,
+ },
+};
+
+export const LargeNumber: Story = {
+ args: {
+ credits: 1000000,
+ },
+};
+
+export const InteractionTest: Story = {
+ args: {
+ credits: 100,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const refreshButton = canvas.getByRole("button", {
+ name: /refresh credits/i,
+ });
+ await userEvent.click(refreshButton);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/CreditsCard.tsx b/autogpt_platform/frontend/src/components/agptui/CreditsCard.tsx
new file mode 100644
index 0000000000..f41f786843
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/CreditsCard.tsx
@@ -0,0 +1,53 @@
+"use client";
+
+import { IconRefresh } from "@/components/ui/icons";
+import AutoGPTServerAPI from "@/lib/autogpt-server-api";
+import { useState } from "react";
+import {
+ Tooltip,
+ TooltipContent,
+ TooltipTrigger,
+} from "@/components/ui/tooltip";
+
+interface CreditsCardProps {
+ credits: number;
+}
+
+const CreditsCard = ({ credits }: CreditsCardProps) => {
+ const [currentCredits, setCurrentCredits] = useState(credits);
+ const api = new AutoGPTServerAPI();
+
+ const onRefresh = async () => {
+ const { credits } = await api.getUserCredit("credits-card");
+ setCurrentCredits(credits);
+ };
+
+ return (
+
+
+
+ {currentCredits.toLocaleString()}
+
+
+ credits
+
+
+
+
+
+
+
+
+
+ Refresh credits
+
+
+
+ );
+};
+
+export default CreditsCard;
diff --git a/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.stories.tsx
new file mode 100644
index 0000000000..7986075b48
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.stories.tsx
@@ -0,0 +1,135 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { FeaturedStoreCard } from "./FeaturedStoreCard";
+import { userEvent, within } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Featured Store Card",
+ component: FeaturedStoreCard,
+ parameters: {
+ layout: {
+ center: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ agentName: { control: "text" },
+ subHeading: { control: "text" },
+ agentImage: { control: "text" },
+ creatorImage: { control: "text" },
+ creatorName: { control: "text" },
+ description: { control: "text" },
+ runs: { control: "number" },
+ rating: { control: "number", min: 0, max: 5, step: 0.1 },
+ onClick: { action: "clicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ agentName: "Personalized Morning Coffee Newsletter example of three lines",
+ subHeading:
+ "Transform ideas into breathtaking images with this AI-powered Image Generator.",
+ description:
+ "Elevate your web content with this powerful AI Webpage Copy Improver. Designed for marketers, SEO specialists, and web developers, this tool analyses and enhances website copy for maximum impact. Using advanced language models, it optimizes text for better clarity, SEO performance, and increased conversion rates.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "AI Solutions Inc.",
+ runs: 50000,
+ rating: 4.7,
+ onClick: () => console.log("Card clicked"),
+ },
+};
+
+export const LowRating: Story = {
+ args: {
+ agentName: "Data Analyzer Lite",
+ subHeading: "Basic data analysis tool",
+ description:
+ "A lightweight data analysis tool for basic data processing needs.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "DataTech",
+ runs: 10000,
+ rating: 2.8,
+ onClick: () => console.log("Card clicked"),
+ },
+};
+
+export const HighRuns: Story = {
+ args: {
+ agentName: "CodeAssist AI",
+ subHeading: "Your AI coding companion",
+ description:
+ "An intelligent coding assistant that helps developers write better code faster.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "DevTools Co.",
+ runs: 1000000,
+ rating: 4.9,
+ onClick: () => console.log("Card clicked"),
+ },
+};
+
+export const NoCreatorImage: Story = {
+ args: {
+ agentName: "MultiTasker",
+ subHeading: "All-in-one productivity suite",
+ description:
+ "A comprehensive productivity suite that combines task management, note-taking, and project planning into one seamless interface.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "Productivity Plus",
+ runs: 75000,
+ rating: 4.5,
+ onClick: () => console.log("Card clicked"),
+ },
+};
+
+export const ShortDescription: Story = {
+ args: {
+ agentName: "QuickTask",
+ subHeading: "Fast task automation",
+ description: "Simple and efficient task automation tool.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "EfficientWorks",
+ runs: 50000,
+ rating: 4.2,
+ onClick: () => console.log("Card clicked"),
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ agentName: "AI Writing Assistant",
+ subHeading: "Enhance your writing",
+ description:
+ "An AI-powered writing assistant that helps improve your writing style and clarity.",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorName: "WordCraft AI",
+ runs: 200000,
+ rating: 4.6,
+ onClick: () => console.log("Card clicked"),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const featuredCard = canvas.getByTestId("featured-store-card");
+ await userEvent.hover(featuredCard);
+ await userEvent.click(featuredCard);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.tsx b/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.tsx
new file mode 100644
index 0000000000..cbfdae239d
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/FeaturedStoreCard.tsx
@@ -0,0 +1,96 @@
+import * as React from "react";
+import Image from "next/image";
+import { StarRatingIcons } from "@/components/ui/icons";
+
+interface FeaturedStoreCardProps {
+ agentName: string;
+ subHeading: string;
+ agentImage: string;
+ creatorImage?: string;
+ creatorName: string;
+ description: string; // Added description prop
+ runs: number;
+ rating: number;
+ onClick: () => void;
+ backgroundColor: string;
+}
+
+export const FeaturedStoreCard: React.FC = ({
+ agentName,
+ subHeading,
+ agentImage,
+ creatorImage,
+ creatorName,
+ description,
+ runs,
+ rating,
+ onClick,
+ backgroundColor,
+}) => {
+ return (
+
+
+
+ {agentName}
+
+
+ {subHeading}
+
+
+
+
+
+ by {creatorName}
+
+
+
+
+
+ {creatorImage && (
+
+
+
+ )}
+
+
+
+
+ {runs.toLocaleString()} runs
+
+
+
+ {rating.toFixed(1)}
+
+
+ {StarRatingIcons(rating)}
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/FilterChips.stories.tsx b/autogpt_platform/frontend/src/components/agptui/FilterChips.stories.tsx
new file mode 100644
index 0000000000..8ae1360629
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/FilterChips.stories.tsx
@@ -0,0 +1,123 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { FilterChips } from "./FilterChips";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Filter Chips",
+ component: FilterChips,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ badges: { control: "object" },
+ onFilterChange: { action: "onFilterChange" },
+ multiSelect: { control: "boolean" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultBadges = [
+ "Marketing",
+ "Sales",
+ "Content creation",
+ "Lorem ipsum",
+ "Lorem ipsum",
+];
+
+export const Default: Story = {
+ args: {
+ badges: defaultBadges,
+ multiSelect: true,
+ },
+};
+
+export const SingleSelect: Story = {
+ args: {
+ badges: defaultBadges,
+ multiSelect: false,
+ },
+};
+
+export const WithSelectedFilters: Story = {
+ args: {
+ badges: defaultBadges,
+ multiSelect: true,
+ },
+ play: async ({ canvasElement, args }) => {
+ const canvas = within(canvasElement);
+ const marketingChip = canvas.getByText("Marketing").parentElement;
+ const salesChip = canvas.getByText("Sales").parentElement;
+ if (!marketingChip || !salesChip) {
+ throw new Error("Marketing or Sales chip not found");
+ }
+
+ await userEvent.click(marketingChip);
+ await userEvent.click(salesChip);
+
+ await expect(marketingChip).toHaveClass("bg-neutral-100");
+ await expect(salesChip).toHaveClass("bg-neutral-100");
+ },
+};
+
+export const WithFilterChangeCallback: Story = {
+ args: {
+ badges: defaultBadges,
+ multiSelect: true,
+ onFilterChange: (selectedFilters: string[]) => {
+ console.log("Selected filters:", selectedFilters);
+ },
+ },
+ play: async ({ canvasElement, args }) => {
+ const canvas = within(canvasElement);
+ const salesChip = canvas.getByText("Sales");
+ const marketingChip = canvas.getByText("Marketing");
+
+ await userEvent.click(salesChip);
+ await userEvent.click(marketingChip);
+ },
+};
+
+export const EmptyBadges: Story = {
+ args: {
+ badges: [],
+ multiSelect: true,
+ },
+};
+
+export const LongBadgeNames: Story = {
+ args: {
+ badges: [
+ "Machine Learning",
+ "Natural Language Processing",
+ "Computer Vision",
+ "Data Science",
+ ],
+ multiSelect: true,
+ },
+};
+
+export const SingleSelectBehavior: Story = {
+ args: {
+ badges: defaultBadges,
+ multiSelect: false,
+ },
+ play: async ({ canvasElement, args }) => {
+ const canvas = within(canvasElement);
+ const salesChip = canvas.getByText("Sales").parentElement;
+ const marketingChip = canvas.getByText("Marketing").parentElement;
+
+ if (!salesChip || !marketingChip) {
+ throw new Error("Sales or Marketing chip not found");
+ }
+
+ await userEvent.click(salesChip);
+ await expect(salesChip).toHaveClass("bg-neutral-100");
+
+ await userEvent.click(marketingChip);
+ await expect(marketingChip).toHaveClass("bg-neutral-100");
+ await expect(salesChip).not.toHaveClass("bg-neutral-100");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/FilterChips.tsx b/autogpt_platform/frontend/src/components/agptui/FilterChips.tsx
new file mode 100644
index 0000000000..dbd0a935cf
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/FilterChips.tsx
@@ -0,0 +1,54 @@
+"use client";
+
+import * as React from "react";
+import { Badge } from "@/components/ui/badge";
+
+interface FilterChipsProps {
+ badges: string[];
+ onFilterChange?: (selectedFilters: string[]) => void;
+ multiSelect?: boolean;
+}
+/** FilterChips is a component that allows the user to select filters from a list of badges. It is used on the Agent Store home page */
+export const FilterChips: React.FC = ({
+ badges,
+ onFilterChange,
+ multiSelect = true,
+}) => {
+ const [selectedFilters, setSelectedFilters] = React.useState([]);
+
+ const handleBadgeClick = (badge: string) => {
+ setSelectedFilters((prevFilters) => {
+ let newFilters;
+ if (multiSelect) {
+ newFilters = prevFilters.includes(badge)
+ ? prevFilters.filter((filter) => filter !== badge)
+ : [...prevFilters, badge];
+ } else {
+ newFilters = prevFilters.includes(badge) ? [] : [badge];
+ }
+
+ if (onFilterChange) {
+ onFilterChange(newFilters);
+ }
+
+ return newFilters;
+ });
+ };
+
+ return (
+
+ {badges.map((badge) => (
+
handleBadgeClick(badge)}
+ >
+
+ {badge}
+
+
+ ))}
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/MobileNavBar.stories.tsx b/autogpt_platform/frontend/src/components/agptui/MobileNavBar.stories.tsx
new file mode 100644
index 0000000000..053487d5ca
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/MobileNavBar.stories.tsx
@@ -0,0 +1,108 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { MobileNavBar } from "./MobileNavBar";
+import { userEvent, within } from "@storybook/test";
+import { IconType } from "../ui/icons";
+
+const meta = {
+ title: "AGPT UI/Mobile Nav Bar",
+ component: MobileNavBar,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ userName: { control: "text" },
+ userEmail: { control: "text" },
+ activeLink: { control: "text" },
+ avatarSrc: { control: "text" },
+ menuItemGroups: { control: "object" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultMenuItemGroups = [
+ {
+ items: [
+ { icon: IconType.Marketplace, text: "Marketplace", href: "/marketplace" },
+ { icon: IconType.Library, text: "Library", href: "/library" },
+ { icon: IconType.Builder, text: "Builder", href: "/builder" },
+ ],
+ },
+ {
+ items: [
+ { icon: IconType.Edit, text: "Edit profile", href: "/profile/edit" },
+ ],
+ },
+ {
+ items: [
+ {
+ icon: IconType.LayoutDashboard,
+ text: "Creator Dashboard",
+ href: "/dashboard",
+ },
+ {
+ icon: IconType.UploadCloud,
+ text: "Publish an agent",
+ href: "/publish",
+ },
+ ],
+ },
+ {
+ items: [{ icon: IconType.Settings, text: "Settings", href: "/settings" }],
+ },
+ {
+ items: [
+ {
+ icon: IconType.LogOut,
+ text: "Log out",
+ onClick: () => console.log("Logged out"),
+ },
+ ],
+ },
+];
+
+export const Default: Story = {
+ args: {
+ userName: "John Doe",
+ userEmail: "john.doe@example.com",
+ activeLink: "/marketplace",
+ avatarSrc: "https://avatars.githubusercontent.com/u/123456789?v=4",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const NoAvatar: Story = {
+ args: {
+ userName: "Jane Smith",
+ userEmail: "jane.smith@example.com",
+ activeLink: "/library",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const LongUserName: Story = {
+ args: {
+ userName: "Alexander Bartholomew Christopherson III",
+ userEmail: "alexander@example.com",
+ activeLink: "/builder",
+ avatarSrc: "https://avatars.githubusercontent.com/u/987654321?v=4",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ ...Default.args,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const menuTrigger = canvas.getByRole("button");
+
+ await userEvent.click(menuTrigger);
+
+ // Wait for the popover to appear
+ await canvas.findByText("Edit profile");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/MobileNavBar.tsx b/autogpt_platform/frontend/src/components/agptui/MobileNavBar.tsx
new file mode 100644
index 0000000000..ed3aa43dd1
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/MobileNavBar.tsx
@@ -0,0 +1,197 @@
+"use client";
+
+import * as React from "react";
+import Link from "next/link";
+import {
+ Popover,
+ PopoverTrigger,
+ PopoverContent,
+ PopoverPortal,
+} from "@/components/ui/popover";
+import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
+import { Separator } from "@/components/ui/separator";
+import {
+ IconType,
+ IconMenu,
+ IconChevronUp,
+ IconEdit,
+ IconLayoutDashboard,
+ IconUploadCloud,
+ IconSettings,
+ IconLogOut,
+ IconMarketplace,
+ IconLibrary,
+ IconBuilder,
+} from "../ui/icons";
+import { AnimatePresence, motion } from "framer-motion";
+import { Button } from "@/components/ui/button";
+import { usePathname } from "next/navigation";
+
+interface MobileNavBarProps {
+ userName?: string;
+ userEmail?: string;
+ avatarSrc?: string;
+ menuItemGroups: {
+ groupName?: string;
+ items: {
+ icon: IconType;
+ text: string;
+ href?: string;
+ onClick?: () => void;
+ }[];
+ }[];
+}
+
+const Overlay = React.forwardRef(
+ ({ children }, ref) => (
+
+ {children}
+
+ ),
+);
+Overlay.displayName = "Overlay";
+
+const PopoutMenuItem: React.FC<{
+ icon: IconType;
+ isActive: boolean;
+ text: React.ReactNode;
+ href?: string;
+ onClick?: () => void;
+}> = ({ icon, isActive, text, href, onClick }) => {
+ const getIcon = (iconType: IconType) => {
+ const iconClass = "w-6 h-6 relative";
+ switch (iconType) {
+ case IconType.Marketplace:
+ return ;
+ case IconType.Library:
+ return ;
+ case IconType.Builder:
+ return ;
+ case IconType.Edit:
+ return ;
+ case IconType.LayoutDashboard:
+ return ;
+ case IconType.UploadCloud:
+ return ;
+ case IconType.Settings:
+ return ;
+ case IconType.LogOut:
+ return ;
+ default:
+ return null;
+ }
+ };
+
+ const content = (
+
+ {getIcon(icon)}
+
+
+ {text}
+
+ {isActive && (
+
+ )}
+
+
+ );
+
+ if (onClick)
+ return (
+
+ {content}
+
+ );
+ if (href)
+ return (
+
+ {content}
+
+ );
+ return content;
+};
+
+export const MobileNavBar: React.FC = ({
+ userName,
+ userEmail,
+ avatarSrc,
+ menuItemGroups,
+}) => {
+ const [isOpen, setIsOpen] = React.useState(false);
+ const pathname = usePathname();
+ const parts = pathname.split("/");
+ const activeLink = parts.length > 1 ? parts[1] : parts[0];
+
+ return (
+
+
+
+ {isOpen ? (
+
+ ) : (
+
+ )}
+ Open menu
+
+
+
+
+
+
+
+
+
+
+
+ {userName?.charAt(0) || "U"}
+
+
+
+
+ {userName || "Unknown User"}
+
+
+ {userEmail || "No Email Set"}
+
+
+
+
+ {menuItemGroups.map((group, groupIndex) => (
+
+ {group.items.map((item, itemIndex) => (
+
+ ))}
+ {groupIndex < menuItemGroups.length - 1 && (
+
+ )}
+
+ ))}
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Navbar.stories.tsx b/autogpt_platform/frontend/src/components/agptui/Navbar.stories.tsx
new file mode 100644
index 0000000000..213c8623c8
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Navbar.stories.tsx
@@ -0,0 +1,162 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import Navbar from "./Navbar";
+import { userEvent, within } from "@storybook/test";
+import { IconType } from "../ui/icons";
+import { ProfileDetails } from "@/lib/autogpt-server-api/types";
+import { jest } from "@jest/globals";
+
+// Mock the API responses
+const mockProfileData: ProfileDetails = {
+ name: "John Doe",
+ username: "johndoe",
+ description: "",
+ links: [],
+ avatar_url: "https://avatars.githubusercontent.com/u/123456789?v=4",
+};
+
+const mockCreditData = {
+ credits: 1500,
+};
+
+// Mock the API module
+jest.mock("@/lib/autogpt-server-api", () => {
+ return function () {
+ return {
+ getStoreProfile: () => Promise.resolve(mockProfileData),
+ getUserCredit: () => Promise.resolve(mockCreditData),
+ };
+ };
+});
+
+const meta = {
+ title: "AGPT UI/Navbar",
+ component: Navbar,
+ parameters: {
+ layout: "fullscreen",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ isLoggedIn: { control: "boolean" },
+ avatarSrc: { control: "text" },
+ links: { control: "object" },
+ activeLink: { control: "text" },
+ menuItemGroups: { control: "object" },
+ params: { control: { type: "object", defaultValue: { lang: "en" } } },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultMenuItemGroups = [
+ {
+ items: [
+ { icon: IconType.Edit, text: "Edit profile", href: "/profile/edit" },
+ ],
+ },
+ {
+ items: [
+ {
+ icon: IconType.LayoutDashboard,
+ text: "Creator Dashboard",
+ href: "/dashboard",
+ },
+ {
+ icon: IconType.UploadCloud,
+ text: "Publish an agent",
+ href: "/publish",
+ },
+ ],
+ },
+ {
+ items: [{ icon: IconType.Settings, text: "Settings", href: "/settings" }],
+ },
+ {
+ items: [
+ {
+ icon: IconType.LogOut,
+ text: "Log out",
+ onClick: () => console.log("Logged out"),
+ },
+ ],
+ },
+];
+
+const defaultLinks = [
+ { name: "Marketplace", href: "/marketplace" },
+ { name: "Library", href: "/library" },
+ { name: "Build", href: "/builder" },
+];
+
+export const Default: Story = {
+ args: {
+ params: { lang: "en" },
+ isLoggedIn: true,
+ links: defaultLinks,
+ activeLink: "/marketplace",
+ avatarSrc: mockProfileData.avatar_url,
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const WithActiveLink: Story = {
+ args: {
+ ...Default.args,
+ activeLink: "/library",
+ },
+};
+
+export const LongUserName: Story = {
+ args: {
+ ...Default.args,
+ avatarSrc: "https://avatars.githubusercontent.com/u/987654321?v=4",
+ },
+};
+
+export const NoAvatar: Story = {
+ args: {
+ ...Default.args,
+ avatarSrc: undefined,
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ ...Default.args,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const profileTrigger = canvas.getByRole("button");
+
+ await userEvent.click(profileTrigger);
+
+ // Wait for the popover to appear
+ await canvas.findByText("Edit profile");
+ },
+};
+
+export const NotLoggedIn: Story = {
+ args: {
+ ...Default.args,
+ isLoggedIn: false,
+ avatarSrc: undefined,
+ },
+};
+
+export const WithCredits: Story = {
+ args: {
+ ...Default.args,
+ },
+};
+
+export const WithLargeCredits: Story = {
+ args: {
+ ...Default.args,
+ },
+};
+
+export const WithZeroCredits: Story = {
+ args: {
+ ...Default.args,
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Navbar.tsx b/autogpt_platform/frontend/src/components/agptui/Navbar.tsx
new file mode 100644
index 0000000000..30d9eddb69
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Navbar.tsx
@@ -0,0 +1,144 @@
+import * as React from "react";
+import Link from "next/link";
+import { ProfilePopoutMenu } from "./ProfilePopoutMenu";
+import { IconType, IconLogIn } from "@/components/ui/icons";
+import { MobileNavBar } from "./MobileNavBar";
+import { Button } from "./Button";
+import CreditsCard from "./CreditsCard";
+import { ProfileDetails } from "@/lib/autogpt-server-api/types";
+import { User } from "@supabase/supabase-js";
+import AutoGPTServerAPIServerSide from "@/lib/autogpt-server-api/clientServer";
+import { ThemeToggle } from "./ThemeToggle";
+import { NavbarLink } from "./NavbarLink";
+
+interface NavLink {
+ name: string;
+ href: string;
+}
+
+interface NavbarProps {
+ user: User | null;
+ isLoggedIn: boolean;
+ links: NavLink[];
+ menuItemGroups: {
+ groupName?: string;
+ items: {
+ icon: IconType;
+ text: string;
+ href?: string;
+ onClick?: () => void;
+ }[];
+ }[];
+}
+
+async function getProfileData(user: User | null) {
+ const api = new AutoGPTServerAPIServerSide();
+ const [profile, credits] = await Promise.all([
+ api.getStoreProfile("navbar"),
+ api.getUserCredit("navbar"),
+ ]);
+
+ return {
+ profile,
+ credits,
+ };
+}
+export const Navbar = async ({
+ user,
+ isLoggedIn,
+ links,
+ menuItemGroups,
+}: NavbarProps) => {
+ let profile: ProfileDetails | null = null;
+ let credits: { credits: number } = { credits: 0 };
+ if (isLoggedIn) {
+ const { profile: t_profile, credits: t_credits } =
+ await getProfileData(user);
+ profile = t_profile;
+ credits = t_credits;
+ }
+
+ return (
+ <>
+
+
+ {links.map((link) => (
+
+ ))}
+
+ {/* Profile section */}
+
+ {isLoggedIn ? (
+
+ ) : (
+
+
+
+ Log In
+
+
+ )}
+
+
+
+ {/* Mobile Navbar - Adjust positioning */}
+ <>
+ {isLoggedIn ? (
+
+ ({
+ icon:
+ link.name === "Agent Store"
+ ? IconType.Marketplace
+ : link.name === "Library"
+ ? IconType.Library
+ : link.name === "Build"
+ ? IconType.Builder
+ : link.name === "Monitor"
+ ? IconType.Library
+ : IconType.LayoutDashboard,
+ text: link.name,
+ href: link.href,
+ })),
+ },
+ ...menuItemGroups,
+ ]}
+ userEmail={profile?.name}
+ avatarSrc={profile?.avatar_url}
+ />
+
+ ) : (
+
+
+
+ Log In
+
+
+ )}
+ >
+ >
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/NavbarLink.tsx b/autogpt_platform/frontend/src/components/agptui/NavbarLink.tsx
new file mode 100644
index 0000000000..cac96b9ee7
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/NavbarLink.tsx
@@ -0,0 +1,63 @@
+"use client";
+import Link from "next/link";
+import {
+ IconType,
+ IconShoppingCart,
+ IconBoxes,
+ IconLibrary,
+ IconLaptop,
+} from "@/components/ui/icons";
+import { usePathname } from "next/navigation";
+
+interface NavbarLinkProps {
+ name: string;
+ href: string;
+}
+
+export const NavbarLink = ({ name, href }: NavbarLinkProps) => {
+ const pathname = usePathname();
+ const parts = pathname.split("/");
+ const activeLink = "/" + (parts.length > 2 ? parts[2] : parts[1]);
+
+ return (
+
+ {href === "/store" && (
+
+ )}
+ {href === "/build" && (
+
+ )}
+ {href === "/monitor" && (
+
+ )}
+ {href === "/monitoring" && (
+
+ )}
+
+
+ {name}
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.stories.tsx b/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.stories.tsx
new file mode 100644
index 0000000000..2df304f3c8
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.stories.tsx
@@ -0,0 +1,70 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { ProfileInfoForm } from "./ProfileInfoForm";
+
+const meta: Meta = {
+ title: "AGPT UI/Profile/Profile Info Form",
+ component: ProfileInfoForm,
+ parameters: {
+ layout: "fullscreen",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ displayName: {
+ control: "text",
+ description: "The display name of the user",
+ },
+ handle: {
+ control: "text",
+ description: "The user's handle/username",
+ },
+ bio: {
+ control: "text",
+ description: "User's biography text",
+ },
+ profileImage: {
+ control: "text",
+ description: "URL of the user's profile image",
+ },
+ links: {
+ control: "object",
+ description: "Array of social media links",
+ },
+ categories: {
+ control: "object",
+ description: "Array of selected categories",
+ },
+ },
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Empty: Story = {
+ args: {
+ displayName: "",
+ handle: "",
+ bio: "",
+ profileImage: undefined,
+ links: [],
+ categories: [],
+ },
+};
+
+export const Filled: Story = {
+ args: {
+ displayName: "Olivia Grace",
+ handle: "@ograce1421",
+ bio: "Our agents are designed to bring happiness and positive vibes to your daily routine. Each template helps you create and live more efficiently.",
+ profileImage: "https://via.placeholder.com/130x130",
+ links: [
+ { id: 1, url: "www.websitelink.com" },
+ { id: 2, url: "twitter.com/oliviagrace" },
+ { id: 3, url: "github.com/ograce" },
+ ],
+ categories: [
+ { id: 1, name: "Entertainment" },
+ { id: 2, name: "Blog" },
+ { id: 3, name: "Content creation" },
+ ],
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.tsx b/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.tsx
new file mode 100644
index 0000000000..4079fc672a
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ProfileInfoForm.tsx
@@ -0,0 +1,279 @@
+"use client";
+
+import * as React from "react";
+import { useState } from "react";
+
+import Image from "next/image";
+
+import { Button } from "./Button";
+
+import { IconPersonFill } from "@/components/ui/icons";
+
+import { AutoGPTServerAPI } from "@/lib/autogpt-server-api/client";
+import { CreatorDetails, ProfileDetails } from "@/lib/autogpt-server-api/types";
+import { createClient } from "@/lib/supabase/client";
+import { Separator } from "@/components/ui/separator";
+
+export const ProfileInfoForm = ({ profile }: { profile: CreatorDetails }) => {
+ const [isSubmitting, setIsSubmitting] = useState(false);
+ const [profileData, setProfileData] = useState(profile);
+
+ const supabase = createClient();
+
+ const api = new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ );
+
+ const submitForm = async () => {
+ try {
+ setIsSubmitting(true);
+
+ const updatedProfile = {
+ name: profileData.name,
+ username: profileData.username,
+ description: profileData.description,
+ links: profileData.links,
+ avatar_url: profileData.avatar_url,
+ };
+
+ if (!isSubmitting) {
+ const returnedProfile = await api.updateStoreProfile(
+ updatedProfile as ProfileDetails,
+ );
+ setProfileData(returnedProfile as CreatorDetails);
+ }
+ } catch (error) {
+ console.error("Error updating profile:", error);
+ } finally {
+ setIsSubmitting(false);
+ }
+ };
+
+ const handleImageUpload = async (file: File) => {
+ try {
+ // Create FormData and append file
+ const formData = new FormData();
+ formData.append("file", file);
+
+ console.log(formData);
+
+ // Get auth token
+ if (!supabase) {
+ throw new Error("Supabase client not initialized");
+ }
+
+ const {
+ data: { session },
+ } = await supabase.auth.getSession();
+ const token = session?.access_token;
+
+ if (!token) {
+ throw new Error("No authentication token found");
+ }
+
+ // Make upload request
+ const response = await fetch(
+ `${process.env.NEXT_PUBLIC_AGPT_SERVER_URL}/store/submissions/media`,
+ {
+ method: "POST",
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ body: formData,
+ },
+ );
+
+ if (!response.ok) {
+ throw new Error(`Upload failed: ${response.statusText}`);
+ }
+
+ // Get media URL from response
+ const mediaUrl = await response.json();
+
+ // Update profile with new avatar URL
+ const updatedProfile = {
+ ...profileData,
+ avatar_url: mediaUrl,
+ };
+
+ const returnedProfile = await api.updateStoreProfile(
+ updatedProfile as ProfileDetails,
+ );
+ setProfileData(returnedProfile as CreatorDetails);
+ } catch (error) {
+ console.error("Error uploading image:", error);
+ }
+ };
+
+ return (
+
+
+ Profile
+
+
+
+
+
+ {profileData.avatar_url ? (
+
+ ) : (
+
+ )}
+
+
+ {
+ const file = e.target.files?.[0];
+ if (file) {
+ await handleImageUpload(file);
+ }
+ }}
+ />
+ Edit photo
+
+
+
+
+
+
+ Display name
+
+
+ {
+ const newProfileData = {
+ ...profileData,
+ name: e.target.value,
+ };
+ setProfileData(newProfileData);
+ }}
+ />
+
+
+
+
+
+ Handle
+
+
+ {
+ const newProfileData = {
+ ...profileData,
+ username: e.target.value,
+ };
+ setProfileData(newProfileData);
+ }}
+ />
+
+
+
+
+
+ Bio
+
+
+ {
+ const newProfileData = {
+ ...profileData,
+ description: e.target.value,
+ };
+ setProfileData(newProfileData);
+ }}
+ />
+
+
+
+
+
+ Your links
+
+
+ You can display up to 5 links on your profile
+
+
+
+ {[1, 2, 3, 4, 5].map((linkNum) => {
+ const link = profileData.links[linkNum - 1];
+ return (
+
+
+ Link {linkNum}
+
+
+ {
+ const newProfileData = {
+ ...profileData,
+ links: profileData.links.map((link, index) =>
+ index === linkNum - 1 ? e.target.value : link,
+ ),
+ };
+ setProfileData(newProfileData);
+ }}
+ />
+
+
+ );
+ })}
+
+
+
+
+
+
+ {
+ setProfileData(profile);
+ }}
+ >
+ Cancel
+
+
+ {isSubmitting ? "Saving..." : "Save changes"}
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.stories.tsx b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.stories.tsx
new file mode 100644
index 0000000000..7af1dc295b
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.stories.tsx
@@ -0,0 +1,99 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { ProfilePopoutMenu } from "./ProfilePopoutMenu";
+import { userEvent, within } from "@storybook/test";
+import { IconType } from "../ui/icons";
+
+const meta = {
+ title: "AGPT UI/Profile Popout Menu",
+ component: ProfilePopoutMenu,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ userName: { control: "text" },
+ userEmail: { control: "text" },
+ avatarSrc: { control: "text" },
+ menuItemGroups: { control: "object" },
+ hideNavBarUsername: { control: "boolean" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultMenuItemGroups = [
+ {
+ // Creator actions group
+ items: [
+ {
+ icon: IconType.LayoutDashboard,
+ text: "Creator Dashboard",
+ href: "/dashboard",
+ },
+ {
+ icon: IconType.UploadCloud,
+ text: "Publish an agent",
+ href: "/publish",
+ },
+ ],
+ },
+ {
+ // Profile management group
+ items: [
+ { icon: IconType.Edit, text: "Edit profile", href: "/profile/edit" },
+ { icon: IconType.Settings, text: "Settings", href: "/settings" },
+ ],
+ },
+ {
+ // Logout group
+ items: [
+ {
+ icon: IconType.LogOut,
+ text: "Log out",
+ onClick: () => console.log("Logged out"),
+ },
+ ],
+ },
+];
+
+export const Default: Story = {
+ args: {
+ userName: "John Doe",
+ userEmail: "john.doe@example.com",
+ avatarSrc: "https://avatars.githubusercontent.com/u/123456789?v=4",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const NoAvatar: Story = {
+ args: {
+ userName: "Jane Smith",
+ userEmail: "jane.smith@example.com",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const LongUserName: Story = {
+ args: {
+ userName: "Alexander Bartholomew Christopherson III",
+ userEmail: "alexander@example.com",
+ avatarSrc: "https://avatars.githubusercontent.com/u/987654321?v=4",
+ menuItemGroups: defaultMenuItemGroups,
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ ...Default.args,
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const profileTrigger = canvas.getByText("John Doe");
+
+ await userEvent.click(profileTrigger);
+
+ // Wait for the popover to appear
+ await canvas.findByText("Edit profile");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.tsx b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.tsx
new file mode 100644
index 0000000000..09363315bd
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenu.tsx
@@ -0,0 +1,183 @@
+import * as React from "react";
+import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
+import {
+ Popover,
+ PopoverTrigger,
+ PopoverContent,
+} from "@/components/ui/popover";
+import {
+ IconType,
+ IconEdit,
+ IconLayoutDashboard,
+ IconUploadCloud,
+ IconSettings,
+ IconLogOut,
+ IconRefresh,
+ IconMarketplace,
+ IconLibrary,
+ IconBuilder,
+} from "../ui/icons";
+import Link from "next/link";
+import { ProfilePopoutMenuLogoutButton } from "./ProfilePopoutMenuLogoutButton";
+import { PublishAgentPopout } from "./composite/PublishAgentPopout";
+
+interface ProfilePopoutMenuProps {
+ userName?: string;
+ userEmail?: string;
+ avatarSrc?: string;
+ hideNavBarUsername?: boolean;
+ menuItemGroups: {
+ groupName?: string;
+ items: {
+ icon: IconType;
+ text: string;
+ href?: string;
+ onClick?: () => void;
+ }[];
+ }[];
+}
+
+export const ProfilePopoutMenu: React.FC = ({
+ userName,
+ userEmail,
+ avatarSrc,
+ menuItemGroups,
+}) => {
+ const popupId = React.useId();
+
+ const getIcon = (icon: IconType) => {
+ const iconClass = "w-6 h-6";
+ switch (icon) {
+ case IconType.LayoutDashboard:
+ return ;
+ case IconType.UploadCloud:
+ return ;
+ case IconType.Edit:
+ return ;
+ case IconType.Settings:
+ return ;
+ case IconType.LogOut:
+ return ;
+ case IconType.Marketplace:
+ return ;
+ case IconType.Library:
+ return ;
+ case IconType.Builder:
+ return ;
+ default:
+ return ;
+ }
+ };
+
+ return (
+
+
+
+
+
+
+ {userName?.charAt(0) || "U"}
+
+
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenuLogoutButton.tsx b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenuLogoutButton.tsx
new file mode 100644
index 0000000000..bf034ab5ad
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ProfilePopoutMenuLogoutButton.tsx
@@ -0,0 +1,22 @@
+"use client";
+
+import { logout } from "@/app/login/actions";
+import { IconLogOut } from "@/components/ui/icons";
+
+export const ProfilePopoutMenuLogoutButton = () => {
+ return (
+ logout()}
+ role="button"
+ tabIndex={0}
+ >
+
+
+
+
+ Log out
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.stories.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.stories.tsx
new file mode 100644
index 0000000000..a3d807d2e3
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.stories.tsx
@@ -0,0 +1,27 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { PublishAgentAwaitingReview } from "./PublishAgentAwaitingReview";
+
+const meta: Meta = {
+ title: "AGPT UI/Publish Agent Awaiting Review",
+ component: PublishAgentAwaitingReview,
+ tags: ["autodocs"],
+ parameters: {
+ layout: "centered",
+ },
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Filled: Story = {
+ args: {
+ agentName: "AI Video Generator",
+ subheader: "Create Viral-Ready Content in Seconds",
+ description:
+ "AI Shortform Video Generator: Create Viral-Ready Content in Seconds Transform trending topics into engaging shortform videos with this cutting-edge AI Video Generator. Perfect for content creators, social media managers, and marketers looking to capitalize on the latest news and viral trends. Simply input your desired video count and source website, and watch as the AI scours the internet for the hottest stories, crafting them into attention-grabbing scripts optimized for platforms like TikTok, Instagram Reels, and YouTube Shorts. Key features include: - Customizable video count (1-5 per generation) - Flexible source selection for trending topics - AI-driven script writing following best practices for shortform content - Hooks that capture attention in the first 3 seconds - Dual narrative storytelling for maximum engagement - SEO-optimized content to boost discoverability - Integration with video generation tools for seamless production From hook to conclusion, each script is meticulously crafted to maintain viewer interest, incorporating proven techniques like 'but so' storytelling, visual metaphors, and strategically placed calls-to-action. The AI Shortform Video Generator streamlines your content creation process, allowing you to stay ahead of trends and consistently produce viral-worthy videos that resonate with your audience.",
+ thumbnailSrc: "https://picsum.photos/seed/video/500/350",
+ onClose: () => console.log("Close clicked"),
+ onDone: () => console.log("Done clicked"),
+ onViewProgress: () => console.log("View progress clicked"),
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.tsx
new file mode 100644
index 0000000000..1e309ce3d2
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentAwaitingReview.tsx
@@ -0,0 +1,118 @@
+"use client";
+
+import * as React from "react";
+import { IconClose } from "../ui/icons";
+import Image from "next/image";
+import { Button } from "../agptui/Button";
+
+interface PublishAgentAwaitingReviewProps {
+ agentName: string;
+ subheader: string;
+ description: string;
+ thumbnailSrc?: string;
+ onClose: () => void;
+ onDone: () => void;
+ onViewProgress: () => void;
+}
+
+export const PublishAgentAwaitingReview: React.FC<
+ PublishAgentAwaitingReviewProps
+> = ({
+ agentName,
+ subheader,
+ description,
+ thumbnailSrc,
+ onClose,
+ onDone,
+ onViewProgress,
+}) => {
+ return (
+
+
+
+
+ Agent is awaiting review
+
+
+ In the meantime you can check your progress on your Creator
+ Dashboard page
+
+
+
+
+
+
+
+
+
+
+
+ {agentName}
+
+
+ {subheader}
+
+
+
+
+ {thumbnailSrc && (
+
+ )}
+
+
+
+ {description}
+
+
+
+
+
+
+ Done
+
+
+ View progress
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.stories.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.stories.tsx
new file mode 100644
index 0000000000..c9ddf9f7ea
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.stories.tsx
@@ -0,0 +1,101 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { PublishAgentSelect } from "./PublishAgentSelect";
+
+const meta: Meta = {
+ title: "AGPT UI/Publish Agent Select",
+ component: PublishAgentSelect,
+ tags: ["autodocs"],
+};
+
+export default meta;
+type Story = StoryObj;
+
+const mockAgents = [
+ {
+ name: "SEO Optimizer",
+ lastEdited: "2 days ago",
+ imageSrc: "https://picsum.photos/seed/seo/300/200",
+ },
+ {
+ name: "Content Writer",
+ lastEdited: "5 days ago",
+ imageSrc: "https://picsum.photos/seed/writer/300/200",
+ },
+ {
+ name: "Data Analyzer",
+ lastEdited: "1 week ago",
+ imageSrc: "https://picsum.photos/seed/data/300/200",
+ },
+ {
+ name: "Image Recognition",
+ lastEdited: "2 weeks ago",
+ imageSrc: "https://picsum.photos/seed/image/300/200",
+ },
+ {
+ name: "Chatbot Assistant",
+ lastEdited: "3 weeks ago",
+ imageSrc: "https://picsum.photos/seed/chat/300/200",
+ },
+ {
+ name: "Code Generator",
+ lastEdited: "1 month ago",
+ imageSrc: "https://picsum.photos/seed/code/300/200",
+ },
+ {
+ name: "AI Translator",
+ lastEdited: "6 weeks ago",
+ imageSrc: "https://picsum.photos/seed/translate/300/200",
+ },
+ {
+ name: "Voice Assistant",
+ lastEdited: "2 months ago",
+ imageSrc: "https://picsum.photos/seed/voice/300/200",
+ },
+ {
+ name: "Data Visualizer",
+ lastEdited: "3 months ago",
+ imageSrc: "https://picsum.photos/seed/visualize/300/200",
+ },
+];
+
+const defaultArgs = {
+ onSelect: (agentName: string) => console.log(`Selected: ${agentName}`),
+ onCancel: () => console.log("Cancelled"),
+ onNext: () => console.log("Next clicked"),
+ onOpenBuilder: () => console.log("Open builder clicked"),
+};
+
+export const Default: Story = {
+ args: {
+ ...defaultArgs,
+ agents: mockAgents,
+ },
+};
+
+export const NoAgents: Story = {
+ args: {
+ ...defaultArgs,
+ agents: [],
+ },
+};
+
+export const SingleAgent: Story = {
+ args: {
+ ...defaultArgs,
+ agents: [mockAgents[0]],
+ },
+};
+
+export const SixAgents: Story = {
+ args: {
+ ...defaultArgs,
+ agents: mockAgents.slice(0, 6),
+ },
+};
+
+export const NineAgents: Story = {
+ args: {
+ ...defaultArgs,
+ agents: mockAgents,
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.tsx
new file mode 100644
index 0000000000..e5cf4b47c1
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelect.tsx
@@ -0,0 +1,179 @@
+"use client";
+
+import * as React from "react";
+import Image from "next/image";
+import { Button } from "../agptui/Button";
+import { IconClose } from "../ui/icons";
+
+export interface Agent {
+ name: string;
+ id: string;
+ version: number;
+ lastEdited: string;
+ imageSrc: string;
+}
+
+interface PublishAgentSelectProps {
+ agents: Agent[];
+ onSelect: (agentId: string, agentVersion: number) => void;
+ onCancel: () => void;
+ onNext: (agentId: string, agentVersion: number) => void;
+ onClose: () => void;
+ onOpenBuilder: () => void;
+}
+
+export const PublishAgentSelect: React.FC = ({
+ agents,
+ onSelect,
+ onCancel,
+ onNext,
+ onClose,
+ onOpenBuilder,
+}) => {
+ const [selectedAgent, setSelectedAgent] = React.useState(null);
+ const [selectedAgentId, setSelectedAgentId] = React.useState(
+ null,
+ );
+ const [selectedAgentVersion, setSelectedAgentVersion] = React.useState<
+ number | null
+ >(null);
+
+ const handleAgentClick = (
+ agentName: string,
+ agentId: string,
+ agentVersion: number,
+ ) => {
+ setSelectedAgent(agentName);
+ setSelectedAgentId(agentId);
+ setSelectedAgentVersion(agentVersion);
+ onSelect(agentId, agentVersion);
+ };
+
+ return (
+
+
+
+
+
+
+
+
+
+ Publish Agent
+
+
+ Select your project that you'd like to publish
+
+
+
+
+ {agents.length === 0 ? (
+
+
+ Uh-oh.. It seems like you don't have any agents in your
+ library.
+
+ We'd suggest you to create an agent in our builder first
+
+
+ Open builder
+
+
+ ) : (
+ <>
+
+
List of agents
+
+
+ Scrollable list of agents
+
+
+
+ {agents.map((agent) => (
+
+ handleAgentClick(agent.name, agent.id, agent.version)
+ }
+ onKeyDown={(e) => {
+ if (e.key === "Enter" || e.key === " ") {
+ e.preventDefault();
+ handleAgentClick(agent.name, agent.id, agent.version);
+ }
+ }}
+ tabIndex={0}
+ role="button"
+ aria-pressed={selectedAgent === agent.name}
+ >
+
+
+
+
+
+ {agent.name}
+
+
+ Edited {agent.lastEdited}
+
+
+
+ ))}
+
+
+
+
+
+
+
+ Back
+
+ {
+ if (selectedAgentId && selectedAgentVersion) {
+ onNext(selectedAgentId, selectedAgentVersion);
+ }
+ }}
+ disabled={!selectedAgentId || !selectedAgentVersion}
+ variant="default"
+ size="default"
+ className="w-full bg-neutral-800 text-white hover:bg-neutral-900 sm:flex-1"
+ >
+ Next
+
+
+ >
+ )}
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.stories.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.stories.tsx
new file mode 100644
index 0000000000..a7cf251d3b
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.stories.tsx
@@ -0,0 +1,81 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { PublishAgentInfo } from "./PublishAgentSelectInfo";
+
+const meta: Meta = {
+ title: "AGPT UI/Publish Agent Info",
+ component: PublishAgentInfo,
+ tags: ["autodocs"],
+ decorators: [
+ (Story) => (
+
+
+
+ ),
+ ],
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ onBack: () => console.log("Back clicked"),
+ onSubmit: () => console.log("Submit clicked"),
+ onClose: () => console.log("Close clicked"),
+ },
+};
+
+export const Filled: Story = {
+ args: {
+ ...Default.args,
+ initialData: {
+ title: "Super SEO Optimizer",
+ subheader: "Boost your website's search engine rankings",
+ thumbnailSrc: "https://picsum.photos/seed/seo/500/350",
+ youtubeLink: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
+ category: "SEO",
+ description:
+ "This AI agent specializes in analyzing websites and providing actionable recommendations to improve search engine optimization. It can perform keyword research, analyze backlinks, and suggest content improvements.",
+ },
+ },
+};
+
+export const ThreeImages: Story = {
+ args: {
+ ...Default.args,
+ initialData: {
+ title: "Multi-Image Agent",
+ subheader: "Showcasing multiple images",
+ thumbnailSrc: "https://picsum.photos/seed/initial/500/350",
+ youtubeLink: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
+ category: "SEO",
+ description:
+ "This agent allows you to upload and manage multiple images.",
+ additionalImages: [
+ "https://picsum.photos/seed/second/500/350",
+ "https://picsum.photos/seed/third/500/350",
+ ],
+ },
+ },
+};
+
+export const SixImages: Story = {
+ args: {
+ ...Default.args,
+ initialData: {
+ title: "Gallery Agent",
+ subheader: "Showcasing a gallery of images",
+ thumbnailSrc: "https://picsum.photos/seed/gallery1/500/350",
+ youtubeLink: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
+ category: "SEO",
+ description: "This agent displays a gallery of six images.",
+ additionalImages: [
+ "https://picsum.photos/seed/gallery2/500/350",
+ "https://picsum.photos/seed/gallery3/500/350",
+ "https://picsum.photos/seed/gallery4/500/350",
+ "https://picsum.photos/seed/gallery5/500/350",
+ "https://picsum.photos/seed/gallery6/500/350",
+ ],
+ },
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.tsx b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.tsx
new file mode 100644
index 0000000000..b97a83032a
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/PublishAgentSelectInfo.tsx
@@ -0,0 +1,388 @@
+"use client";
+
+import * as React from "react";
+import Image from "next/image";
+import { Button } from "../agptui/Button";
+import { IconClose, IconPlus } from "../ui/icons";
+import AutoGPTServerAPI from "@/lib/autogpt-server-api";
+import { createClient } from "@/lib/supabase/client";
+
+interface PublishAgentInfoProps {
+ onBack: () => void;
+ onSubmit: (
+ name: string,
+ subHeading: string,
+ slug: string,
+ description: string,
+ imageUrls: string[],
+ videoUrl: string,
+ categories: string[],
+ ) => void;
+ onClose: () => void;
+ initialData?: {
+ title: string;
+ subheader: string;
+ slug: string;
+ thumbnailSrc: string;
+ youtubeLink: string;
+ category: string;
+ description: string;
+ additionalImages?: string[];
+ };
+}
+
+export const PublishAgentInfo: React.FC = ({
+ onBack,
+ onSubmit,
+ onClose,
+ initialData,
+}) => {
+ const [images, setImages] = React.useState(
+ initialData?.additionalImages
+ ? [initialData.thumbnailSrc, ...initialData.additionalImages]
+ : initialData?.thumbnailSrc
+ ? [initialData.thumbnailSrc]
+ : [],
+ );
+ const [selectedImage, setSelectedImage] = React.useState(
+ initialData?.thumbnailSrc || null,
+ );
+ const [title, setTitle] = React.useState(initialData?.title || "");
+ const [subheader, setSubheader] = React.useState(
+ initialData?.subheader || "",
+ );
+ const [youtubeLink, setYoutubeLink] = React.useState(
+ initialData?.youtubeLink || "",
+ );
+ const [category, setCategory] = React.useState(initialData?.category || "");
+ const [description, setDescription] = React.useState(
+ initialData?.description || "",
+ );
+ const [slug, setSlug] = React.useState(initialData?.slug || "");
+ const thumbnailsContainerRef = React.useRef(null);
+
+ const handleRemoveImage = (indexToRemove: number) => {
+ const newImages = [...images];
+ newImages.splice(indexToRemove, 1);
+ setImages(newImages);
+ if (newImages[indexToRemove] === selectedImage) {
+ setSelectedImage(newImages[0] || null);
+ }
+ if (newImages.length === 0) {
+ setSelectedImage(null);
+ } else {
+ console.log("images", newImages);
+ }
+ };
+
+ const handleAddImage = async () => {
+ const input = document.createElement("input");
+ input.type = "file";
+ input.accept = "image/*";
+
+ // Create a promise that resolves when file is selected
+ const fileSelected = new Promise((resolve) => {
+ input.onchange = (e) => {
+ const file = (e.target as HTMLInputElement).files?.[0];
+ resolve(file || null);
+ };
+ });
+
+ // Trigger file selection
+ input.click();
+
+ // Wait for file selection
+ const file = await fileSelected;
+ if (!file) return;
+
+ try {
+ const api = new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ createClient(),
+ );
+
+ const imageUrl = (await api.uploadStoreSubmissionMedia(file)).replace(
+ /^"(.*)"$/,
+ "$1",
+ );
+
+ setImages((prev) => {
+ const newImages = [...prev, imageUrl];
+ console.log("Added image. Images now:", newImages);
+ return newImages;
+ });
+ if (!selectedImage) {
+ setSelectedImage(imageUrl);
+ }
+ } catch (error) {
+ console.error("Error uploading image:", error);
+ }
+ };
+
+ const handleSubmit = (e: React.MouseEvent) => {
+ e.preventDefault();
+ onSubmit(title, subheader, slug, description, images, youtubeLink, [
+ category,
+ ]);
+ };
+
+ return (
+
+
+
+
+
+
+
+
+ Publish Agent
+
+
+ Write a bit of details about your agent
+
+
+
+
+
+
+ Title
+
+ setTitle(e.target.value)}
+ className="p-ui-medium w-full rounded-[55px] border border-slate-200 py-2.5 pl-4 pr-14 text-base font-normal leading-normal text-slate-500 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ />
+
+
+
+
+ Subheader
+
+ setSubheader(e.target.value)}
+ className="w-full rounded-[55px] border border-slate-200 py-2.5 pl-4 pr-14 font-['Geist'] text-base font-normal leading-normal text-slate-500 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ />
+
+
+
+
+ Slug
+
+ setSlug(e.target.value)}
+ className="w-full rounded-[55px] border border-slate-200 py-2.5 pl-4 pr-14 font-['Geist'] text-base font-normal leading-normal text-slate-500 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ />
+
+
+
+
+ Thumbnail images
+
+
+ {selectedImage !== null && selectedImage !== undefined ? (
+
+ ) : (
+
+ No images yet
+
+ )}
+
+
+ {images.length === 0 ? (
+
+
+
+
+
+
+ Add image
+
+
+
+
+ ) : (
+ <>
+ {images.map((src, index) => (
+
+ setSelectedImage(src)}
+ />
+ handleRemoveImage(index)}
+ className="absolute right-1 top-1 flex h-5 w-5 items-center justify-center rounded-full bg-white bg-opacity-70 transition-opacity hover:bg-opacity-100 dark:bg-gray-800 dark:bg-opacity-70 dark:hover:bg-opacity-100"
+ aria-label="Remove image"
+ >
+
+
+
+ ))}
+
+
+
+ Add image
+
+
+ >
+ )}
+
+
+
+
+
+ AI image generator
+
+
+
+ You can use AI to generate a cover image for you
+
+
+ Generate
+
+
+
+
+
+
+ YouTube video link
+
+ setYoutubeLink(e.target.value)}
+ className="w-full rounded-[55px] border border-slate-200 py-2.5 pl-4 pr-14 font-['Geist'] text-base font-normal leading-normal text-slate-500 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ />
+
+
+
+
+ Category
+
+ setCategory(e.target.value)}
+ className="w-full appearance-none rounded-[55px] border border-slate-200 py-2.5 pl-4 pr-5 font-['Geist'] text-base font-normal leading-normal text-slate-500 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ >
+ Select a category for your agent
+ SEO
+ {/* Add more options here */}
+
+
+
+
+
+ Description
+
+ setDescription(e.target.value)}
+ className="h-[100px] w-full resize-none rounded-2xl border border-slate-200 bg-white py-2.5 pl-4 pr-14 font-['Geist'] text-base font-normal leading-normal text-slate-900 dark:border-slate-700 dark:bg-gray-700 dark:text-slate-300"
+ >
+
+
+
+
+
+ Back
+
+
+ Submit for review
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/RatingCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/RatingCard.stories.tsx
new file mode 100644
index 0000000000..64b7a2f55e
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/RatingCard.stories.tsx
@@ -0,0 +1,44 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { RatingCard } from "./RatingCard";
+
+const meta = {
+ title: "AGPT UI/RatingCard",
+ component: RatingCard,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ agentName: "Test Agent",
+ onSubmit: (rating) => {
+ console.log("Rating submitted:", rating);
+ },
+ onClose: () => {
+ console.log("Rating card closed");
+ },
+ },
+};
+
+export const LongAgentName: Story = {
+ args: {
+ agentName: "Very Long Agent Name That Might Need Special Handling",
+ onSubmit: (rating) => {
+ console.log("Rating submitted:", rating);
+ },
+ onClose: () => {
+ console.log("Rating card closed");
+ },
+ },
+};
+
+export const WithoutCallbacks: Story = {
+ args: {
+ agentName: "Test Agent",
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/RatingCard.tsx b/autogpt_platform/frontend/src/components/agptui/RatingCard.tsx
new file mode 100644
index 0000000000..bc7c1bb24b
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/RatingCard.tsx
@@ -0,0 +1,121 @@
+"use client";
+
+import * as React from "react";
+import { Cross1Icon } from "@radix-ui/react-icons";
+import { IconStar, IconStarFilled } from "@/components/ui/icons";
+import { createClient } from "@/lib/supabase/client";
+import { AutoGPTServerAPI } from "@/lib/autogpt-server-api/client";
+
+interface RatingCardProps {
+ agentName: string;
+ storeListingVersionId: string;
+}
+
+export const RatingCard: React.FC = ({
+ agentName,
+ storeListingVersionId,
+}) => {
+ const [rating, setRating] = React.useState(0);
+ const [hoveredRating, setHoveredRating] = React.useState(0);
+ const [isVisible, setIsVisible] = React.useState(true);
+
+ const supabase = React.useMemo(() => createClient(), []);
+
+ const api = React.useMemo(
+ () =>
+ new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ ),
+ [supabase],
+ );
+
+ const handleClose = () => {
+ setIsVisible(false);
+ };
+
+ if (!isVisible) return null;
+
+ const handleSubmit = async (rating: number) => {
+ if (rating > 0) {
+ console.log(`Rating submitted for ${agentName}:`, rating);
+ await api.reviewAgent("--", agentName, {
+ store_listing_version_id: storeListingVersionId,
+ score: rating,
+ });
+ handleClose();
+ }
+ };
+
+ const getRatingText = (rating: number) => {
+ switch (rating) {
+ case 1:
+ return "Needs improvement";
+ case 2:
+ return "Meh";
+ case 3:
+ return "Average";
+ case 4:
+ return "Good";
+ case 5:
+ return "Awesome!";
+ default:
+ return "Rate it!";
+ }
+ };
+
+ return (
+
+
+
+
+
+
Rate agent
+
+
+ Could you rate {agentName} agent for us?
+
+
+
+
+ {[1, 2, 3, 4, 5].map((star) => (
+ setHoveredRating(star)}
+ onMouseLeave={() => setHoveredRating(0)}
+ onClick={() => setRating(star)}
+ >
+ {star <= (hoveredRating || rating) ? (
+
+ ) : (
+
+ )}
+
+ ))}
+
+
+
+ {getRatingText(hoveredRating || rating)}
+
+
+
+
+ rating > 0 && handleSubmit(rating)}
+ className={`rounded-full px-6 py-2 text-sm font-medium transition-colors ${
+ rating > 0
+ ? "cursor-pointer bg-slate-900 text-white hover:bg-slate-800"
+ : "cursor-not-allowed bg-gray-200 text-gray-400"
+ }`}
+ >
+ Submit
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SearchBar.stories.tsx b/autogpt_platform/frontend/src/components/agptui/SearchBar.stories.tsx
new file mode 100644
index 0000000000..a807a1d1b8
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SearchBar.stories.tsx
@@ -0,0 +1,86 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { SearchBar } from "./SearchBar";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Search Bar",
+ component: SearchBar,
+ parameters: {
+ layout: {
+ center: true,
+ padding: 0,
+ },
+ nextjs: {
+ appDirectory: true,
+ navigation: {
+ pathname: "/search",
+ query: {
+ searchTerm: "",
+ },
+ },
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ placeholder: { control: "text" },
+ backgroundColor: { control: "text" },
+ iconColor: { control: "text" },
+ textColor: { control: "text" },
+ placeholderColor: { control: "text" },
+ },
+ decorators: [
+ (Story) => (
+
+
+
+ ),
+ ],
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ placeholder: 'Search for tasks like "optimise SEO"',
+ },
+};
+
+export const CustomStyles: Story = {
+ args: {
+ placeholder: "Enter your search query",
+ backgroundColor: "bg-blue-100",
+ iconColor: "text-blue-500",
+ textColor: "text-blue-700",
+ placeholderColor: "text-blue-400",
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ placeholder: "Type and press Enter",
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const input = canvas.getByPlaceholderText("Type and press Enter");
+
+ await userEvent.type(input, "test query");
+ await userEvent.keyboard("{Enter}");
+
+ await expect(input).toHaveValue("test query");
+ },
+};
+
+export const EmptySubmit: Story = {
+ args: {
+ placeholder: "Empty submit test",
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const input = canvas.getByPlaceholderText("Empty submit test");
+
+ await userEvent.keyboard("{Enter}");
+
+ await expect(input).toHaveValue("");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SearchBar.tsx b/autogpt_platform/frontend/src/components/agptui/SearchBar.tsx
new file mode 100644
index 0000000000..48ee6b3887
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SearchBar.tsx
@@ -0,0 +1,58 @@
+"use client";
+
+import * as React from "react";
+import { useRouter } from "next/navigation";
+
+import { MagnifyingGlassIcon } from "@radix-ui/react-icons";
+
+interface SearchBarProps {
+ placeholder?: string;
+ backgroundColor?: string;
+ iconColor?: string;
+ textColor?: string;
+ placeholderColor?: string;
+ width?: string;
+}
+
+/** SearchBar component for user input and search functionality. */
+export const SearchBar: React.FC = ({
+ placeholder = 'Search for tasks like "optimise SEO"',
+ backgroundColor = "bg-neutral-100 dark:bg-neutral-800",
+ iconColor = "text-[#646464] dark:text-neutral-400",
+ textColor = "text-[#707070] dark:text-neutral-200",
+ placeholderColor = "text-[#707070] dark:text-neutral-400",
+ width = "w-9/10 lg:w-[56.25rem]",
+}) => {
+ const router = useRouter();
+
+ const [searchQuery, setSearchQuery] = React.useState("");
+
+ const handleSubmit = (event: React.FormEvent) => {
+ event.preventDefault();
+ console.log(searchQuery);
+
+ if (searchQuery.trim()) {
+ // Encode the search term and navigate to the desired path
+ const encodedTerm = encodeURIComponent(searchQuery);
+ router.push(`/store/search?searchTerm=${encodedTerm}`);
+ }
+ };
+
+ return (
+
+
+ setSearchQuery(e.target.value)}
+ placeholder={placeholder}
+ className={`flex-grow border-none bg-transparent ${textColor} font-['Geist'] text-lg font-normal leading-[2.25rem] tracking-tight md:text-xl placeholder:${placeholderColor} focus:outline-none`}
+ data-testid="store-search-input"
+ />
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SearchFilterChips.tsx b/autogpt_platform/frontend/src/components/agptui/SearchFilterChips.tsx
new file mode 100644
index 0000000000..44b651ca3e
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SearchFilterChips.tsx
@@ -0,0 +1,64 @@
+"use client";
+
+import * as React from "react";
+
+interface FilterOption {
+ label: string;
+ count: number;
+ value: string;
+}
+
+interface SearchFilterChipsProps {
+ totalCount?: number;
+ agentsCount?: number;
+ creatorsCount?: number;
+ onFilterChange?: (value: string) => void;
+}
+
+export const SearchFilterChips: React.FC = ({
+ totalCount = 10,
+ agentsCount = 8,
+ creatorsCount = 2,
+ onFilterChange,
+}) => {
+ const [selected, setSelected] = React.useState("all");
+
+ const filters: FilterOption[] = [
+ { label: "All", count: totalCount, value: "all" },
+ { label: "Agents", count: agentsCount, value: "agents" },
+ { label: "Creators", count: creatorsCount, value: "creators" },
+ ];
+
+ const handleFilterClick = (value: string) => {
+ setSelected(value);
+ onFilterChange?.(value);
+ console.log(`Filter selected: ${value}`);
+ };
+
+ return (
+
+ {filters.map((filter) => (
+ handleFilterClick(filter.value)}
+ className={`flex items-center gap-2.5 rounded-[34px] px-5 py-2 ${
+ selected === filter.value
+ ? "bg-neutral-800 text-white dark:bg-neutral-100 dark:text-neutral-900"
+ : "border border-neutral-600 text-neutral-800 dark:border-neutral-400 dark:text-neutral-200"
+ }`}
+ >
+
+ {filter.label}
+
+
+ {filter.count}
+
+
+ ))}
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.stories.tsx b/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.stories.tsx
new file mode 100644
index 0000000000..f7898c8557
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.stories.tsx
@@ -0,0 +1,23 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { SettingsInputForm } from "./SettingsInputForm";
+
+const meta: Meta = {
+ title: "AGPT UI/Settings/Settings Input Form",
+ component: SettingsInputForm,
+ parameters: {
+ layout: "fullscreen",
+ },
+};
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ email: "johndoe@email.com",
+ desktopNotifications: {
+ first: false,
+ second: true,
+ },
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.tsx b/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.tsx
new file mode 100644
index 0000000000..699fbb1ea1
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SettingsInputForm.tsx
@@ -0,0 +1,135 @@
+"use client";
+
+import * as React from "react";
+import { Button } from "@/components/ui/button";
+import { Switch } from "@/components/ui/switch";
+import { createClient } from "@/lib/supabase/client";
+
+interface SettingsInputFormProps {
+ email?: string;
+ desktopNotifications?: {
+ first: boolean;
+ second: boolean;
+ };
+}
+
+export const SettingsInputForm = ({
+ email = "johndoe@email.com",
+ desktopNotifications = { first: false, second: true },
+}: SettingsInputFormProps) => {
+ const [password, setPassword] = React.useState("");
+ const [confirmPassword, setConfirmPassword] = React.useState("");
+ const [passwordsMatch, setPasswordsMatch] = React.useState(true);
+
+ const handleSaveChanges = async () => {
+ if (password !== confirmPassword) {
+ setPasswordsMatch(false);
+ return;
+ }
+ setPasswordsMatch(true);
+ const client = createClient();
+ if (client) {
+ try {
+ const { error } = await client.auth.updateUser({
+ password: password,
+ });
+ if (error) {
+ console.error("Error updating user:", error);
+ } else {
+ console.log("User updated successfully");
+ }
+ } catch (error) {
+ console.error("Error updating user:", error);
+ }
+ }
+ };
+
+ const handleCancel = () => {
+ setPassword("");
+ setConfirmPassword("");
+ setPasswordsMatch(true);
+ };
+
+ return (
+
+
+ Settings
+
+
+ {/* My Account Section */}
+
+
+ My account
+
+
+ {/* Password Input */}
+
+
+
+ Password
+
+ setPassword(e.target.value)}
+ className="h-[50px] w-full rounded-[35px] border border-neutral-200 bg-transparent px-6 py-3 text-base text-slate-950 dark:border-neutral-700 dark:text-white"
+ aria-label="Password field"
+ />
+
+
+
+ {/* Confirm Password Input */}
+
+
+
+ Confirm Password
+
+ setConfirmPassword(e.target.value)}
+ className="h-[50px] w-full rounded-[35px] border border-neutral-200 bg-transparent px-6 py-3 text-base text-slate-950 dark:border-neutral-700 dark:text-white"
+ aria-label="Confirm Password field"
+ />
+
+
+
+
+
+
+
+
+
+
+ Cancel
+
+
+ Save changes
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Sidebar.stories.tsx b/autogpt_platform/frontend/src/components/agptui/Sidebar.stories.tsx
new file mode 100644
index 0000000000..24a10df1ab
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Sidebar.stories.tsx
@@ -0,0 +1,34 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { Sidebar } from "./Sidebar";
+
+const meta = {
+ title: "AGPT UI/Sidebar",
+ component: Sidebar,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ linkGroups: { control: "object" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultLinkGroups = [
+ {
+ links: [
+ { text: "Agent dashboard", href: "/dashboard" },
+ { text: "Integrations", href: "/integrations" },
+ { text: "Profile", href: "/profile" },
+ { text: "Settings", href: "/settings" },
+ ],
+ },
+];
+
+export const Default: Story = {
+ args: {
+ linkGroups: defaultLinkGroups,
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Sidebar.tsx b/autogpt_platform/frontend/src/components/agptui/Sidebar.tsx
new file mode 100644
index 0000000000..d75c372c10
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Sidebar.tsx
@@ -0,0 +1,128 @@
+import * as React from "react";
+import Link from "next/link";
+import { Button } from "./Button";
+import { Sheet, SheetContent, SheetTrigger } from "@/components/ui/sheet";
+import { Menu } from "lucide-react";
+import {
+ IconDashboardLayout,
+ IconIntegrations,
+ IconProfile,
+ IconSliders,
+} from "../ui/icons";
+
+interface SidebarLinkGroup {
+ links: {
+ text: string;
+ href: string;
+ }[];
+}
+
+interface SidebarProps {
+ linkGroups: SidebarLinkGroup[];
+}
+
+export const Sidebar: React.FC = ({ linkGroups }) => {
+ return (
+ <>
+
+
+
+
+ Open sidebar menu
+
+
+
+
+
+
+
+
+ Creator dashboard
+
+
+
+
+
+ Integrations
+
+
+
+
+
+ Profile
+
+
+
+
+
+ Settings
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Agent dashboard
+
+
+
+
+
+ Integrations
+
+
+
+
+
+ Profile
+
+
+
+
+
+ Settings
+
+
+
+
+
+ >
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/SortDropdown.tsx b/autogpt_platform/frontend/src/components/agptui/SortDropdown.tsx
new file mode 100644
index 0000000000..df0a1ae169
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/SortDropdown.tsx
@@ -0,0 +1,65 @@
+"use client";
+
+import * as React from "react";
+import {
+ DropdownMenu,
+ DropdownMenuContent,
+ DropdownMenuItem,
+ DropdownMenuTrigger,
+} from "@/components/ui/dropdown-menu";
+import { ChevronDownIcon } from "@radix-ui/react-icons";
+
+const sortOptions: SortOption[] = [
+ { label: "Most Recent", value: "recent" },
+ { label: "Most Runs", value: "runs" },
+ { label: "Highest Rated", value: "rating" },
+];
+
+interface SortOption {
+ label: string;
+ value: string;
+}
+
+export const SortDropdown: React.FC<{
+ onSort: (sortValue: string) => void;
+}> = ({ onSort }) => {
+ const [selected, setSelected] = React.useState(sortOptions[0]);
+
+ const handleSelect = (option: SortOption) => {
+ setSelected(option);
+ onSort(option.value);
+ console.log(`Sorting by: ${option.label} (${option.value})`);
+ };
+
+ return (
+
+
+
+ Sort by
+
+
+ {selected.label}
+
+
+
+
+ {sortOptions.map((option) => (
+ handleSelect(option)}
+ >
+ {option.label}
+
+ ))}
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Status.stories.tsx b/autogpt_platform/frontend/src/components/agptui/Status.stories.tsx
new file mode 100644
index 0000000000..b4bb9e756f
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Status.stories.tsx
@@ -0,0 +1,55 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { Status, StatusType } from "./Status";
+
+const meta = {
+ title: "AGPT UI/Status",
+ component: Status,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ status: {
+ control: "select",
+ options: ["draft", "awaiting_review", "approved", "rejected"],
+ },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Draft: Story = {
+ args: {
+ status: "draft" as StatusType,
+ },
+};
+
+export const AwaitingReview: Story = {
+ args: {
+ status: "awaiting_review" as StatusType,
+ },
+};
+
+export const Approved: Story = {
+ args: {
+ status: "approved" as StatusType,
+ },
+};
+
+export const Rejected: Story = {
+ args: {
+ status: "rejected" as StatusType,
+ },
+};
+
+export const AllStatuses: Story = {
+ render: () => (
+
+
+
+
+
+
+ ),
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/Status.tsx b/autogpt_platform/frontend/src/components/agptui/Status.tsx
new file mode 100644
index 0000000000..7e34a7c748
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/Status.tsx
@@ -0,0 +1,75 @@
+import * as React from "react";
+
+export type StatusType = "draft" | "awaiting_review" | "approved" | "rejected";
+
+interface StatusProps {
+ status: StatusType;
+}
+
+const statusConfig: Record<
+ StatusType,
+ {
+ bgColor: string;
+ dotColor: string;
+ text: string;
+ darkBgColor: string;
+ darkDotColor: string;
+ }
+> = {
+ draft: {
+ bgColor: "bg-blue-50",
+ dotColor: "bg-blue-500",
+ text: "Draft",
+ darkBgColor: "dark:bg-blue-900",
+ darkDotColor: "dark:bg-blue-300",
+ },
+ awaiting_review: {
+ bgColor: "bg-amber-50",
+ dotColor: "bg-amber-500",
+ text: "Awaiting review",
+ darkBgColor: "dark:bg-amber-900",
+ darkDotColor: "dark:bg-amber-300",
+ },
+ approved: {
+ bgColor: "bg-green-50",
+ dotColor: "bg-green-500",
+ text: "Approved",
+ darkBgColor: "dark:bg-green-900",
+ darkDotColor: "dark:bg-green-300",
+ },
+ rejected: {
+ bgColor: "bg-red-50",
+ dotColor: "bg-red-500",
+ text: "Rejected",
+ darkBgColor: "dark:bg-red-900",
+ darkDotColor: "dark:bg-red-300",
+ },
+};
+
+export const Status: React.FC = ({ status }) => {
+ /**
+ * Status component displays a badge with a colored dot and text indicating the agent's status
+ * @param status - The current status of the agent
+ * Valid values: 'draft', 'awaiting_review', 'approved', 'rejected'
+ */
+ if (!status) {
+ return ;
+ } else if (!statusConfig[status]) {
+ return ;
+ }
+
+ const config = statusConfig[status];
+
+ return (
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/StoreCard.stories.tsx b/autogpt_platform/frontend/src/components/agptui/StoreCard.stories.tsx
new file mode 100644
index 0000000000..48eb7fdfa9
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/StoreCard.stories.tsx
@@ -0,0 +1,115 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { StoreCard } from "./StoreCard";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/StoreCard",
+ component: StoreCard,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ agentName: { control: "text" },
+ agentImage: { control: "text" },
+ description: { control: "text" },
+ runs: { control: "number" },
+ rating: { control: "number", min: 0, max: 5, step: 0.1 },
+ onClick: { action: "clicked" },
+ avatarSrc: { control: "text" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ agentName: "SEO Optimizer",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description: "Optimize your website's SEO with AI-powered suggestions",
+ runs: 10000,
+ rating: 4.5,
+ onClick: () => console.log("Default StoreCard clicked"),
+ avatarSrc: "https://github.com/shadcn.png",
+ },
+};
+
+export const LowRating: Story = {
+ args: {
+ agentName: "Data Analyzer",
+ agentImage:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description: "Analyze complex datasets with machine learning algorithms",
+ runs: 5000,
+ rating: 2.7,
+ onClick: () => console.log("LowRating StoreCard clicked"),
+ avatarSrc: "https://example.com/avatar2.jpg",
+ },
+};
+
+export const HighRuns: Story = {
+ args: {
+ agentName: "Code Assistant",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description: "Get AI-powered coding help for various programming languages",
+ runs: 1000000,
+ rating: 4.8,
+ onClick: () => console.log("HighRuns StoreCard clicked"),
+ avatarSrc: "https://example.com/avatar3.jpg",
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ agentName: "Task Planner",
+ agentImage:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description: "Plan and organize your tasks efficiently with AI",
+ runs: 50000,
+ rating: 4.2,
+ onClick: () => console.log("WithInteraction StoreCard clicked"),
+ avatarSrc: "https://example.com/avatar4.jpg",
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const storeCard = canvas.getByText("Task Planner");
+
+ await userEvent.hover(storeCard);
+ await userEvent.click(storeCard);
+ },
+};
+
+export const LongDescription: Story = {
+ args: {
+ agentName: "AI Writing Assistant",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description:
+ "Enhance your writing with our advanced AI-powered assistant. It offers real-time suggestions for grammar, style, and tone, helps with research and fact-checking.",
+ runs: 75000,
+ rating: 4.7,
+ onClick: () => console.log("LongDescription StoreCard clicked"),
+ avatarSrc: "https://example.com/avatar5.jpg",
+ },
+};
+
+export const HiddenAvatar: Story = {
+ args: {
+ agentName: "Data Visualizer",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description: "Create stunning visualizations from complex datasets",
+ runs: 60000,
+ rating: 4.6,
+ onClick: () => console.log("HiddenAvatar StoreCard clicked"),
+ avatarSrc: "https://example.com/avatar6.jpg",
+ hideAvatar: true,
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/StoreCard.tsx b/autogpt_platform/frontend/src/components/agptui/StoreCard.tsx
new file mode 100644
index 0000000000..33d744d388
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/StoreCard.tsx
@@ -0,0 +1,109 @@
+import * as React from "react";
+import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
+import Image from "next/image";
+import { StarRatingIcons } from "@/components/ui/icons";
+
+interface StoreCardProps {
+ agentName: string;
+ agentImage: string;
+ description: string;
+ runs: number;
+ rating: number;
+ onClick: () => void;
+ avatarSrc: string;
+ hideAvatar?: boolean;
+ creatorName?: string;
+}
+
+export const StoreCard: React.FC = ({
+ agentName,
+ agentImage,
+ description,
+ runs,
+ rating,
+ onClick,
+ avatarSrc,
+ hideAvatar = false,
+ creatorName,
+}) => {
+ const handleClick = () => {
+ onClick();
+ };
+
+ return (
+ {
+ if (e.key === "Enter" || e.key === " ") {
+ handleClick();
+ }
+ }}
+ >
+ {/* Header Image Section with Avatar */}
+
+
+ {!hideAvatar && (
+
+
+
+
+ {(creatorName || agentName).charAt(0)}
+
+
+
+ )}
+
+
+ {/* Content Section */}
+
+ {/* Title and Creator */}
+
+ {agentName}
+
+ {!hideAvatar && creatorName && (
+
+ by {creatorName}
+
+ )}
+
+ {/* Description */}
+
+ {description}
+
+
+ {/* Stats Row */}
+
+
+ {runs.toLocaleString()} runs
+
+
+
+ {rating.toFixed(1)}
+
+
+ {StarRatingIcons(rating)}
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/ThemeToggle.tsx b/autogpt_platform/frontend/src/components/agptui/ThemeToggle.tsx
new file mode 100644
index 0000000000..515a98cda1
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/ThemeToggle.tsx
@@ -0,0 +1,45 @@
+"use client";
+
+import * as React from "react";
+import { useTheme } from "next-themes";
+import { IconMoon, IconSun } from "@/components/ui/icons";
+import { Button } from "./Button";
+
+export function ThemeToggle() {
+ const { theme, setTheme } = useTheme();
+ const [mounted, setMounted] = React.useState(false);
+
+ React.useEffect(() => {
+ setMounted(true);
+ }, []);
+
+ if (!mounted) {
+ return (
+
+ );
+ }
+
+ return (
+ setTheme(theme === "light" ? "dark" : "light")}
+ role="button"
+ tabIndex={0}
+ >
+
+ {theme === "light" ? (
+
+ ) : (
+
+ )}
+
+
Toggle theme
+
+ );
+}
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.stories.tsx b/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.stories.tsx
new file mode 100644
index 0000000000..f193f7bc72
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.stories.tsx
@@ -0,0 +1,172 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { AgentsSection } from "./AgentsSection";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Composite/Agents Section",
+ component: AgentsSection,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ sectionTitle: { control: "text" },
+ agents: { control: "object" },
+ onCardClick: { action: "clicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const mockTopAgents = [
+ {
+ agentName: "SEO Optimizer Pro",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description:
+ "Boost your website's search engine rankings with our advanced AI-powered SEO optimization tool.",
+ runs: 50000,
+ rating: 4.7,
+ avatarSrc: "https://example.com/avatar1.jpg",
+ },
+ {
+ agentName: "Content Writer AI",
+ agentImage:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description:
+ "Generate high-quality, engaging content for your blog, social media, or marketing campaigns.",
+ runs: 75000,
+ rating: 4.5,
+ avatarSrc: "https://example.com/avatar2.jpg",
+ },
+ {
+ agentName: "Data Analyzer Lite",
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description: "A basic tool for analyzing small to medium-sized datasets.",
+ runs: 10000,
+ rating: 3.8,
+ avatarSrc: "https://example.com/avatar3.jpg",
+ },
+];
+
+export const Default: Story = {
+ args: {
+ sectionTitle: "Top Agents",
+ agents: mockTopAgents,
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const SingleAgent: Story = {
+ args: {
+ sectionTitle: "Top Agents",
+ agents: [mockTopAgents[0]],
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const NoAgents: Story = {
+ args: {
+ sectionTitle: "Top Agents",
+ agents: [],
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ sectionTitle: "Top Agents",
+ agents: mockTopAgents,
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const firstCard = canvas.getAllByRole("store-card")[0];
+ await userEvent.click(firstCard);
+ await expect(firstCard).toHaveAttribute("aria-pressed", "true");
+ },
+};
+
+export const MultiRowAgents: Story = {
+ args: {
+ sectionTitle: "Top Agents",
+ agents: [
+ ...mockTopAgents,
+ {
+ agent_name: "Image Recognition AI",
+ agent_image:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description:
+ "Accurately identify and classify objects in images using state-of-the-art machine learning algorithms.",
+ runs: 60000,
+ rating: 4.6,
+ creator_avatar: "https://example.com/avatar4.jpg",
+ },
+ {
+ agent_name: "Natural Language Processor",
+ agent_image:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description:
+ "Analyze and understand human language with advanced NLP techniques.",
+ runs: 80000,
+ rating: 4.8,
+ creator_avatar: "https://example.com/avatar5.jpg",
+ },
+ {
+ agent_name: "Sentiment Analyzer",
+ agent_image:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description:
+ "Determine the emotional tone of text data for customer feedback analysis.",
+ runs: 45000,
+ rating: 4.3,
+ creator_avatar: "https://example.com/avatar6.jpg",
+ },
+ {
+ agent_name: "Chatbot Builder",
+ agent_image:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description:
+ "Create intelligent chatbots for customer service and engagement.",
+ runs: 55000,
+ rating: 4.4,
+ creator_avatar: "https://example.com/avatar7.jpg",
+ },
+ {
+ agent_name: "Predictive Analytics Tool",
+ agent_image:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ description:
+ "Forecast future trends and outcomes based on historical data.",
+ runs: 40000,
+ rating: 4.2,
+ creator_avatar: "https://example.com/avatar8.jpg",
+ },
+ {
+ agent_name: "Text-to-Speech Converter",
+ agent_image:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ description:
+ "Convert written text into natural-sounding speech in multiple languages.",
+ runs: 35000,
+ rating: 4.1,
+ creator_avatar: "https://example.com/avatar9.jpg",
+ },
+ ],
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const HiddenAvatars: Story = {
+ args: {
+ ...Default.args,
+ hideAvatars: true,
+ sectionTitle: "Agents with Hidden Avatars",
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.tsx b/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.tsx
new file mode 100644
index 0000000000..c0ffa8342e
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/AgentsSection.tsx
@@ -0,0 +1,103 @@
+"use client";
+
+import * as React from "react";
+import { StoreCard } from "@/components/agptui/StoreCard";
+import {
+ Carousel,
+ CarouselContent,
+ CarouselItem,
+} from "@/components/ui/carousel";
+import { useRouter } from "next/navigation";
+
+export interface Agent {
+ slug: string;
+ agent_name: string;
+ agent_image: string;
+ creator: string;
+ creator_avatar: string;
+ sub_heading: string;
+ description: string;
+ runs: number;
+ rating: number;
+}
+
+interface AgentsSectionProps {
+ sectionTitle: string;
+ agents: Agent[];
+ hideAvatars?: boolean;
+}
+
+export const AgentsSection: React.FC = ({
+ sectionTitle,
+ agents: allAgents,
+ hideAvatars = false,
+}) => {
+ const router = useRouter();
+
+ // Take only the first 9 agents
+ const displayedAgents = allAgents.slice(0, 9);
+
+ const handleCardClick = (creator: string, slug: string) => {
+ router.push(`/store/agent/${creator}/${slug}`);
+ };
+
+ return (
+
+
+
+ {sectionTitle}
+
+ {!displayedAgents || displayedAgents.length === 0 ? (
+
+ No agents found
+
+ ) : (
+ <>
+ {/* Mobile Carousel View */}
+
+
+ {displayedAgents.map((agent, index) => (
+
+ handleCardClick(agent.creator, agent.slug)}
+ />
+
+ ))}
+
+
+
+
+ {displayedAgents.map((agent, index) => (
+ handleCardClick(agent.creator, agent.slug)}
+ />
+ ))}
+
+ >
+ )}
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.stories.tsx b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.stories.tsx
new file mode 100644
index 0000000000..19300e0e39
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.stories.tsx
@@ -0,0 +1,121 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { FeaturedCreators } from "./FeaturedCreators";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Composite/Featured Creators",
+ component: FeaturedCreators,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ featuredCreators: { control: "object" },
+ onCardClick: { action: "cardClicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const defaultCreators = [
+ {
+ name: "AI Innovator",
+ username: "ai_innovator",
+ description:
+ "Pushing the boundaries of AI technology with cutting-edge solutions and innovative approaches to machine learning.",
+ avatar_url:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ num_agents: 15,
+ },
+ {
+ name: "Code Wizard",
+ username: "code_wizard",
+ description:
+ "Crafting elegant solutions with AI and helping others learn the magic of coding.",
+ avatar_url:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ num_agents: 8,
+ },
+ {
+ name: "Data Alchemist",
+ username: "data_alchemist",
+ description:
+ "Transforming raw data into AI gold. Specializing in data processing and analytics.",
+ avatar_url:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ num_agents: 12,
+ },
+ {
+ name: "ML Master",
+ username: "ml_master",
+ description:
+ "Specializing in machine learning algorithms and neural network architectures.",
+ avatar_url:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ num_agents: 20,
+ },
+];
+
+export const Default: Story = {
+ args: {
+ featuredCreators: defaultCreators,
+ onCardClick: (creatorName) => console.log(`Clicked on ${creatorName}`),
+ },
+};
+
+export const SingleCreator: Story = {
+ args: {
+ featuredCreators: [defaultCreators[0]],
+ onCardClick: (creatorName) => console.log(`Clicked on ${creatorName}`),
+ },
+};
+
+export const ManyCreators: Story = {
+ args: {
+ featuredCreators: [
+ ...defaultCreators,
+ {
+ name: "NLP Ninja",
+ username: "nlp_ninja",
+ description:
+ "Expert in natural language processing and text analysis systems.",
+ avatar_url:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ num_agents: 18,
+ },
+ {
+ name: "AI Explorer",
+ username: "ai_explorer",
+ description:
+ "Discovering new frontiers in artificial intelligence and autonomous systems.",
+ avatar_url:
+ "https://upload.wikimedia.org/wikipedia/commons/c/c5/Big_buck_bunny_poster_big.jpg",
+ num_agents: 25,
+ },
+ ],
+ onCardClick: (creatorName) => console.log(`Clicked on ${creatorName}`),
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ featuredCreators: defaultCreators,
+ onCardClick: (creatorName) => console.log(`Clicked on ${creatorName}`),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const creatorCards = canvas.getAllByRole("creator-card");
+ const firstCreatorCard = creatorCards[0];
+
+ await userEvent.hover(firstCreatorCard);
+ await userEvent.click(firstCreatorCard);
+
+ // Check if the card has the expected hover and click effects
+ await expect(firstCreatorCard).toHaveClass("hover:shadow-lg");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.tsx b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.tsx
new file mode 100644
index 0000000000..ec0c1457cd
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedCreators.tsx
@@ -0,0 +1,56 @@
+"use client";
+
+import * as React from "react";
+import { CreatorCard } from "@/components/agptui/CreatorCard";
+import { useRouter } from "next/navigation";
+
+export interface FeaturedCreator {
+ name: string;
+ username: string;
+ description: string;
+ avatar_url: string;
+ num_agents: number;
+}
+
+interface FeaturedCreatorsProps {
+ title?: string;
+ featuredCreators: FeaturedCreator[];
+}
+
+export const FeaturedCreators: React.FC = ({
+ featuredCreators,
+ title = "Featured Creators",
+}) => {
+ const router = useRouter();
+
+ const handleCardClick = (creator: string) => {
+ router.push(`/store/creator/${creator}`);
+ };
+
+ // Only show first 4 creators
+ const displayedCreators = featuredCreators.slice(0, 4);
+
+ return (
+
+
+
+ {title}
+
+
+
+ {displayedCreators.map((creator, index) => (
+ handleCardClick(creator.username)}
+ index={index}
+ />
+ ))}
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.stories.tsx b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.stories.tsx
new file mode 100644
index 0000000000..664bbee8c4
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.stories.tsx
@@ -0,0 +1,128 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { FeaturedSection } from "./FeaturedSection";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Composite/Featured Agents",
+ component: FeaturedSection,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ featuredAgents: { control: "object" },
+ onCardClick: { action: "clicked" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const mockFeaturedAgents = [
+ {
+ agentName: "Personalized Morning Coffee Newsletter example of three lines",
+ subHeading:
+ "Transform ideas into breathtaking images with this AI-powered Image Generator.",
+ creatorName: "AI Solutions Inc.",
+ description:
+ "Elevate your web content with this powerful AI Webpage Copy Improver. Designed for marketers, SEO specialists, and web developers, this tool analyses and enhances website copy for maximum impact. Using advanced language models, it optimizes text for better clarity, SEO performance, and increased conversion rates.",
+ runs: 50000,
+ rating: 4.7,
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ },
+ {
+ agentName: "Data Analyzer Lite",
+ subHeading: "Basic data analysis tool",
+ creatorName: "DataTech",
+ description:
+ "A lightweight data analysis tool for basic data processing needs.",
+ runs: 10000,
+ rating: 2.8,
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ },
+ {
+ agentName: "CodeAssist AI",
+ subHeading: "Your AI coding companion",
+ creatorName: "DevTools Co.",
+ description:
+ "An intelligent coding assistant that helps developers write better code faster.",
+ runs: 1000000,
+ rating: 4.9,
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ },
+ {
+ agentName: "MultiTasker",
+ subHeading: "All-in-one productivity suite",
+ creatorName: "Productivity Plus",
+ description:
+ "A comprehensive productivity suite that combines task management, note-taking, and project planning into one seamless interface. Features include smart task prioritization, automated scheduling, and AI-powered insights to help you work more efficiently.",
+ runs: 75000,
+ rating: 4.5,
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ },
+ {
+ agentName: "QuickTask",
+ subHeading: "Fast task automation",
+ creatorName: "EfficientWorks",
+ description: "Simple and efficient task automation tool.",
+ runs: 50000,
+ rating: 4.2,
+ agentImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ creatorImage:
+ "https://framerusercontent.com/images/KCIpxr9f97EGJgpaoqnjKsrOPwI.jpg",
+ },
+];
+
+export const Default: Story = {
+ args: {
+ featuredAgents: mockFeaturedAgents,
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const SingleAgent: Story = {
+ args: {
+ featuredAgents: [mockFeaturedAgents[0]],
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const NoAgents: Story = {
+ args: {
+ featuredAgents: [],
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ featuredAgents: mockFeaturedAgents,
+ onCardClick: (agentName: string) => console.log(`Clicked on ${agentName}`),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const featuredCard = canvas.getByText(
+ "Personalized Morning Coffee Newsletter example of three lines",
+ );
+
+ await userEvent.hover(featuredCard);
+ await userEvent.click(featuredCard);
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.tsx b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.tsx
new file mode 100644
index 0000000000..2e188fcb38
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/FeaturedSection.tsx
@@ -0,0 +1,134 @@
+"use client";
+
+import * as React from "react";
+import { FeaturedStoreCard } from "@/components/agptui/FeaturedStoreCard";
+import {
+ Carousel,
+ CarouselContent,
+ CarouselItem,
+} from "@/components/ui/carousel";
+import { useCallback, useState } from "react";
+import { IconLeftArrow, IconRightArrow } from "@/components/ui/icons";
+import { useRouter } from "next/navigation";
+
+const BACKGROUND_COLORS = [
+ "bg-violet-200 dark:bg-violet-800", // #ddd6fe / #5b21b6
+ "bg-blue-200 dark:bg-blue-800", // #bfdbfe / #1e3a8a
+ "bg-green-200 dark:bg-green-800", // #bbf7d0 / #065f46
+];
+
+export interface FeaturedAgent {
+ slug: string;
+ agent_name: string;
+ agent_image: string;
+ creator: string;
+ creator_avatar: string;
+ sub_heading: string;
+ description: string;
+ runs: number;
+ rating: number;
+}
+
+interface FeaturedSectionProps {
+ featuredAgents: FeaturedAgent[];
+}
+
+export const FeaturedSection: React.FC = ({
+ featuredAgents,
+}) => {
+ const [currentSlide, setCurrentSlide] = useState(0);
+ const router = useRouter();
+
+ const handleCardClick = (creator: string, slug: string) => {
+ router.push(`/store/agent/${creator}/${slug}`);
+ };
+
+ const handlePrevSlide = useCallback(() => {
+ setCurrentSlide((prev) =>
+ prev === 0 ? featuredAgents.length - 1 : prev - 1,
+ );
+ }, [featuredAgents.length]);
+
+ const handleNextSlide = useCallback(() => {
+ setCurrentSlide((prev) =>
+ prev === featuredAgents.length - 1 ? 0 : prev + 1,
+ );
+ }, [featuredAgents.length]);
+
+ const getBackgroundColor = (index: number) => {
+ return BACKGROUND_COLORS[index % BACKGROUND_COLORS.length];
+ };
+
+ return (
+
+
+
+ Featured agents
+
+
+
+
+
+ {featuredAgents.map((agent, index) => (
+
+ handleCardClick(agent.creator, agent.slug)}
+ />
+
+ ))}
+
+
+
+
+
+
+ {featuredAgents.map((_, index) => (
+
+ ))}
+
+
+
+
+
+
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.stories.tsx b/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.stories.tsx
new file mode 100644
index 0000000000..11b101bd6b
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.stories.tsx
@@ -0,0 +1,70 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { HeroSection } from "./HeroSection";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Composite/Hero Section",
+ component: HeroSection,
+ parameters: {
+ layout: {
+ center: true,
+ fullscreen: true,
+ padding: 0,
+ },
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ onSearch: { action: "searched" },
+ onFilterChange: { action: "filtersChanged" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ onSearch: (query: string) => console.log(`Searched: ${query}`),
+ onFilterChange: (selectedFilters: string[]) =>
+ console.log(`Filters changed: ${selectedFilters.join(", ")}`),
+ },
+};
+
+export const WithInteraction: Story = {
+ args: {
+ onSearch: (query: string) => console.log(`Searched: ${query}`),
+ onFilterChange: (selectedFilters: string[]) =>
+ console.log(`Filters changed: ${selectedFilters.join(", ")}`),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const searchInput = canvas.getByRole("store-search-input");
+
+ await userEvent.type(searchInput, "test query");
+ await userEvent.keyboard("{Enter}");
+
+ await expect(searchInput).toHaveValue("test query");
+
+ const filterChip = canvas.getByText("Marketing");
+ await userEvent.click(filterChip);
+
+ await expect(filterChip).toHaveClass("text-[#474747]");
+ },
+};
+
+export const EmptySearch: Story = {
+ args: {
+ onSearch: (query: string) => console.log(`Searched: ${query}`),
+ onFilterChange: (selectedFilters: string[]) =>
+ console.log(`Filters changed: ${selectedFilters.join(", ")}`),
+ },
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+ const searchInput = canvas.getByRole("store-search-input");
+
+ await userEvent.click(searchInput);
+ await userEvent.keyboard("{Enter}");
+
+ await expect(searchInput).toHaveValue("");
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.tsx b/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.tsx
new file mode 100644
index 0000000000..912f3f1641
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/HeroSection.tsx
@@ -0,0 +1,60 @@
+"use client";
+
+import * as React from "react";
+import { SearchBar } from "@/components/agptui/SearchBar";
+import { FilterChips } from "@/components/agptui/FilterChips";
+import { useRouter } from "next/navigation";
+
+export const HeroSection: React.FC = () => {
+ const router = useRouter();
+
+ function onFilterChange(selectedFilters: string[]) {
+ const encodedTerm = encodeURIComponent(selectedFilters.join(", "));
+ router.push(`/store/search?searchTerm=${encodedTerm}`);
+ }
+
+ return (
+
+
+
+
+
+ Explore AI agents built for{" "}
+
+
+ you
+
+
+
+ by the{" "}
+
+
+ community
+
+
+
+
+ Bringing you AI agents designed by thinkers from around the world
+
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.stories.tsx b/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.stories.tsx
new file mode 100644
index 0000000000..9326edc3d7
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.stories.tsx
@@ -0,0 +1,52 @@
+import type { Meta, StoryObj } from "@storybook/react";
+import { PublishAgentPopout } from "@/components/agptui/composite/PublishAgentPopout";
+import { userEvent, within, expect } from "@storybook/test";
+
+const meta = {
+ title: "AGPT UI/Composite/Publish Agent Popout",
+ component: PublishAgentPopout,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ["autodocs"],
+ argTypes: {
+ trigger: { control: "object" },
+ },
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {},
+};
+
+export const WithCustomTrigger: Story = {
+ args: {
+ trigger: Custom Publish Button ,
+ },
+};
+
+export const PublishFlow: Story = {
+ args: {},
+ play: async ({ canvasElement }) => {
+ const canvas = within(canvasElement);
+
+ // Open popout
+ const publishButton = canvas.getByText("Publish Agent");
+ await userEvent.click(publishButton);
+
+ // Select an agent (assuming one exists)
+ const agentCard = await canvas.findByRole("button", {
+ name: /select agent/i,
+ });
+ await userEvent.click(agentCard);
+
+ // Click next
+ const nextButton = canvas.getByText("Next");
+ await userEvent.click(nextButton);
+
+ // Fill out info form
+ // Note: Actual form interactions would need to be added based on PublishAgentInfo implementation
+ },
+};
diff --git a/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.tsx b/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.tsx
new file mode 100644
index 0000000000..07efa13d55
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/agptui/composite/PublishAgentPopout.tsx
@@ -0,0 +1,272 @@
+"use client";
+
+import * as React from "react";
+import {
+ Popover,
+ PopoverTrigger,
+ PopoverContent,
+ PopoverAnchor,
+} from "@/components/ui/popover";
+import { PublishAgentSelect, Agent } from "../PublishAgentSelect";
+import { PublishAgentInfo } from "../PublishAgentSelectInfo";
+import { PublishAgentAwaitingReview } from "../PublishAgentAwaitingReview";
+import { Button } from "../Button";
+import {
+ StoreSubmissionRequest,
+ MyAgentsResponse,
+} from "@/lib/autogpt-server-api";
+import { createClient } from "@/lib/supabase/client";
+import { AutoGPTServerAPI } from "@/lib/autogpt-server-api/client";
+import { useRouter } from "next/navigation";
+interface PublishAgentPopoutProps {
+ trigger?: React.ReactNode;
+ openPopout?: boolean;
+ inputStep?: "select" | "info" | "review";
+ submissionData?: StoreSubmissionRequest;
+}
+
+export const PublishAgentPopout: React.FC = ({
+ trigger,
+ openPopout = false,
+ inputStep = "select",
+ submissionData = {
+ name: "",
+ sub_heading: "",
+ slug: "",
+ description: "",
+ image_urls: [],
+ agent_id: "",
+ agent_version: 0,
+ categories: [],
+ },
+}) => {
+ const [step, setStep] = React.useState<"select" | "info" | "review">(
+ inputStep,
+ );
+ const [myAgents, setMyAgents] = React.useState(null);
+ const [selectedAgent, setSelectedAgent] = React.useState(null);
+ const [publishData, setPublishData] =
+ React.useState(submissionData);
+ const [selectedAgentId, setSelectedAgentId] = React.useState(
+ null,
+ );
+ const [selectedAgentVersion, setSelectedAgentVersion] = React.useState<
+ number | null
+ >(null);
+ const [open, setOpen] = React.useState(false);
+
+ const popupId = React.useId();
+ const router = useRouter();
+
+ const supabase = React.useMemo(() => createClient(), []);
+
+ const api = React.useMemo(
+ () =>
+ new AutoGPTServerAPI(
+ process.env.NEXT_PUBLIC_AGPT_SERVER_URL,
+ process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL,
+ supabase,
+ ),
+ [supabase],
+ );
+
+ React.useEffect(() => {
+ console.log("PublishAgentPopout Effect");
+ setOpen(openPopout);
+ setStep(inputStep);
+ setPublishData(submissionData);
+ }, [openPopout]); // eslint-disable-line react-hooks/exhaustive-deps
+
+ React.useEffect(() => {
+ console.log("LoadMyAgents Effect");
+ if (open) {
+ const loadMyAgents = async () => {
+ try {
+ const response = await api.getMyAgents();
+ setMyAgents(response);
+ } catch (error) {
+ console.error("Failed to load my agents:", error);
+ }
+ };
+
+ loadMyAgents();
+ }
+ }, [open, api]);
+
+ const handleClose = () => {
+ setStep("select");
+ setSelectedAgent(null);
+ setPublishData({
+ name: "",
+ sub_heading: "",
+ description: "",
+ image_urls: [],
+ agent_id: "",
+ agent_version: 0,
+ slug: "",
+ categories: [],
+ });
+ setOpen(false);
+ };
+
+ const handleAgentSelect = (agentName: string) => {
+ setSelectedAgent(agentName);
+ };
+
+ const handleNextFromSelect = (agentId: string, agentVersion: number) => {
+ setStep("info");
+ setSelectedAgentId(agentId);
+ setSelectedAgentVersion(agentVersion);
+ };
+
+ const handleNextFromInfo = async (
+ name: string,
+ subHeading: string,
+ slug: string,
+ description: string,
+ imageUrls: string[],
+ videoUrl: string,
+ categories: string[],
+ ) => {
+ if (
+ !name ||
+ !subHeading ||
+ !description ||
+ !imageUrls.length ||
+ !categories.length
+ ) {
+ console.error("Missing required fields");
+ return;
+ }
+
+ setPublishData({
+ name,
+ sub_heading: subHeading,
+ description,
+ image_urls: imageUrls,
+ video_url: videoUrl,
+ agent_id: selectedAgentId || "",
+ agent_version: selectedAgentVersion || 0,
+ slug,
+ categories,
+ });
+
+ // Create store submission
+ try {
+ const submission = await api.createStoreSubmission({
+ name: name,
+ sub_heading: subHeading,
+ description: description,
+ image_urls: imageUrls,
+ video_url: videoUrl,
+ agent_id: selectedAgentId || "",
+ agent_version: selectedAgentVersion || 0,
+ slug: slug.replace(/\s+/g, "-"),
+ categories: categories,
+ });
+ console.log("Store submission created:", submission);
+ } catch (error) {
+ console.error("Error creating store submission:", error);
+ }
+ setStep("review");
+ };
+
+ const handleBack = () => {
+ if (step === "info") {
+ setStep("select");
+ } else if (step === "review") {
+ setStep("info");
+ }
+ };
+
+ const renderContent = () => {
+ switch (step) {
+ case "select":
+ return (
+
+
+
+
({
+ name: agent.agent_name,
+ id: agent.agent_id,
+ version: agent.agent_version,
+ lastEdited: agent.last_edited,
+ imageSrc: "https://picsum.photos/300/200", // Fallback image if none provided
+ })) || []
+ }
+ onSelect={handleAgentSelect}
+ onCancel={handleClose}
+ onNext={handleNextFromSelect}
+ onClose={handleClose}
+ onOpenBuilder={() => router.push("/build")}
+ />
+
+
+
+ );
+ case "info":
+ return (
+
+ );
+ case "review":
+ return publishData ? (
+
+
+
+
{
+ router.push("/store/dashboard");
+ handleClose();
+ }}
+ />
+
+
+
+ ) : null;
+ }
+ };
+
+ return (
+ {
+ if (isOpen !== open) {
+ setOpen(isOpen);
+ }
+ }}
+ >
+
+ {trigger || Publish Agent }
+
+
+
+
+
+
+
+ );
+};
diff --git a/autogpt_platform/frontend/src/components/cronScheduler.tsx b/autogpt_platform/frontend/src/components/cronScheduler.tsx
index 8c092be9d6..9625b2dd19 100644
--- a/autogpt_platform/frontend/src/components/cronScheduler.tsx
+++ b/autogpt_platform/frontend/src/components/cronScheduler.tsx
@@ -74,9 +74,6 @@ export function CronScheduler({
return (
-
- Schedule
-
Schedule Task
diff --git a/autogpt_platform/frontend/src/components/edit/control/BlocksControl.tsx b/autogpt_platform/frontend/src/components/edit/control/BlocksControl.tsx
index 9fe805ebed..b71b11005c 100644
--- a/autogpt_platform/frontend/src/components/edit/control/BlocksControl.tsx
+++ b/autogpt_platform/frontend/src/components/edit/control/BlocksControl.tsx
@@ -155,6 +155,7 @@ export const BlocksControl: React.FC
= ({
data-id="blocks-control-popover-trigger"
data-testid="blocks-control-blocks-button"
name="Blocks"
+ className="dark:hover:bg-slate-800"
>
@@ -169,12 +170,12 @@ export const BlocksControl: React.FC = ({
className="absolute -top-3 w-[17rem] rounded-xl border-none p-0 shadow-none md:w-[30rem]"
data-id="blocks-control-popover-content"
>
-
+
@@ -182,14 +183,14 @@ export const BlocksControl: React.FC = ({
-
+
setSearchQuery(e.target.value)}
- className="rounded-lg px-8 py-5"
+ className="rounded-lg px-8 py-5 dark:bg-slate-800 dark:text-white"
data-id="blocks-control-search-input"
/>
@@ -203,7 +204,7 @@ export const BlocksControl: React.FC = ({
return (
setSelectedCategory(
selectedCategory === category ? null : category,
@@ -216,15 +217,15 @@ export const BlocksControl: React.FC = ({
})}
-
+
{filteredAvailableBlocks.map((block) => (
= ({
@@ -256,7 +257,7 @@ export const BlocksControl: React.FC = ({
/>
= ({
data-id={`block-tooltip-${block.id}`}
data-testid={`block-add`}
>
-
+
diff --git a/autogpt_platform/frontend/src/components/edit/control/ControlPanel.tsx b/autogpt_platform/frontend/src/components/edit/control/ControlPanel.tsx
index ec06279efb..870d345822 100644
--- a/autogpt_platform/frontend/src/components/edit/control/ControlPanel.tsx
+++ b/autogpt_platform/frontend/src/components/edit/control/ControlPanel.tsx
@@ -45,11 +45,11 @@ export const ControlPanel = ({
className,
}: ControlPanelProps) => {
return (
-
+
{topChildren}
-
+
{controls.map((control, index) => (
@@ -61,16 +61,22 @@ export const ControlPanel = ({
data-id={`control-button-${index}`}
data-testid={`blocks-control-${control.label.toLowerCase()}-button`}
disabled={control.disabled || false}
+ className="dark:bg-slate-900 dark:text-slate-100 dark:hover:bg-slate-800"
>
{control.icon}
{control.label}
- {control.label}
+
+ {control.label}
+
))}
-
+
{botChildren}
diff --git a/autogpt_platform/frontend/src/components/edit/control/SaveControl.tsx b/autogpt_platform/frontend/src/components/edit/control/SaveControl.tsx
index 2fdbaa1da0..1ebf7d7eee 100644
--- a/autogpt_platform/frontend/src/components/edit/control/SaveControl.tsx
+++ b/autogpt_platform/frontend/src/components/edit/control/SaveControl.tsx
@@ -21,17 +21,17 @@ interface SaveControlProps {
agentMeta: GraphMeta | null;
agentName: string;
agentDescription: string;
- onSave: (isTemplate: boolean | undefined) => void;
+ onSave: () => void;
onNameChange: (name: string) => void;
onDescriptionChange: (description: string) => void;
pinSavePopover: boolean;
}
/**
- * A SaveControl component to be used within the ControlPanel. It allows the user to save the agent / template.
+ * A SaveControl component to be used within the ControlPanel. It allows the user to save the agent.
* @param {Object} SaveControlProps - The properties of the SaveControl component.
* @param {GraphMeta | null} SaveControlProps.agentMeta - The agent's metadata, or null if creating a new agent.
- * @param {(isTemplate: boolean | undefined) => void} SaveControlProps.onSave - Function to save the agent or template.
+ * @param {() => void} SaveControlProps.onSave - Function to save the agent.
* @param {(name: string) => void} SaveControlProps.onNameChange - Function to handle name changes.
* @param {(description: string) => void} SaveControlProps.onDescriptionChange - Function to handle description changes.
* @returns The SaveControl component.
@@ -51,15 +51,9 @@ export const SaveControl = ({
* We should migrate this to be handled with form controls and a form library.
*/
- // Determines if we're saving a template or an agent
- let isTemplate = agentMeta?.is_template ? true : undefined;
const handleSave = useCallback(() => {
- onSave(isTemplate);
- }, [onSave, isTemplate]);
-
- const getType = () => {
- return agentMeta?.is_template ? "template" : "agent";
- };
+ onSave();
+ }, [onSave]);
const { toast } = useToast();
@@ -94,7 +88,7 @@ export const SaveControl = ({
data-testid="blocks-control-save-button"
name="Save"
>
-
+
@@ -106,10 +100,12 @@ export const SaveControl = ({
align="start"
data-id="save-control-popover-content"
>
-
+
-
Name
+
+ Name
+
-
Description
+
+ Description
+
{agentMeta?.version && (
<>
-
Version
+
+ Version
+
- Save {getType()}
+ Save Agent
- {!agentMeta && (
- {
- isTemplate = true;
- handleSave();
- }}
- >
- Save as Template
-
- )}
diff --git a/autogpt_platform/frontend/src/components/flow.css b/autogpt_platform/frontend/src/components/flow.css
index abbee903b4..cafd54659f 100644
--- a/autogpt_platform/frontend/src/components/flow.css
+++ b/autogpt_platform/frontend/src/components/flow.css
@@ -1,9 +1,9 @@
/* flow.css or index.css */
body {
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
- "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
- sans-serif;
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
+ "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans",
+ "Helvetica Neue", sans-serif;
}
code {
diff --git a/autogpt_platform/frontend/src/components/marketplace/AgentDetailContent.tsx b/autogpt_platform/frontend/src/components/marketplace/AgentDetailContent.tsx
index 84ca38ef22..08355836d3 100644
--- a/autogpt_platform/frontend/src/components/marketplace/AgentDetailContent.tsx
+++ b/autogpt_platform/frontend/src/components/marketplace/AgentDetailContent.tsx
@@ -1,159 +1,96 @@
-"use client";
-import Link from "next/link";
-import { ArrowLeft, Download, Calendar, Tag } from "lucide-react";
-import { Button } from "@/components/ui/button";
-import {
- AgentDetailResponse,
- InstallationLocation,
-} from "@/lib/marketplace-api";
-import MarketplaceAPI from "@/lib/marketplace-api";
-import AutoGPTServerAPI, { GraphCreatable } from "@/lib/autogpt-server-api";
-import "@xyflow/react/dist/style.css";
-import { makeAnalyticsEvent } from "./actions";
-import { useToast } from "../ui/use-toast";
+// "use client";
+// import Link from "next/link";
+// import { ArrowLeft, Download, Calendar, Tag } from "lucide-react";
+// import { Button } from "@/components/ui/button";
+// import AutoGPTServerAPI, { GraphCreatable } from "@/lib/autogpt-server-api";
+// import "@xyflow/react/dist/style.css";
+// import { useToast } from "../ui/use-toast";
-function AgentDetailContent({ agent }: { agent: AgentDetailResponse }) {
- const { toast } = useToast();
+// function AgentDetailContent({ agent }: { agent: GraphCreatable }) {
+// const { toast } = useToast();
- const downloadAgent = async (id: string): Promise
=> {
- const api = new MarketplaceAPI();
- try {
- const file = await api.downloadAgentFile(id);
- console.debug(`Agent file downloaded:`, file);
+// // const downloadAgent = async (id: string): Promise => {
+// // const api = new MarketplaceAPI();
+// // try {
+// // const file = await api.downloadAgentFile(id);
+// // console.debug(`Agent file downloaded:`, file);
- // Create a Blob from the file content
- const blob = new Blob([file], { type: "application/json" });
+// // // Create a Blob from the file content
+// // const blob = new Blob([file], { type: "application/json" });
- // Create a temporary URL for the Blob
- const url = window.URL.createObjectURL(blob);
+// // // Create a temporary URL for the Blob
+// // const url = window.URL.createObjectURL(blob);
- // Create a temporary anchor element
- const a = document.createElement("a");
- a.href = url;
- a.download = `agent_${id}.json`; // Set the filename
+// // // Create a temporary anchor element
+// // const a = document.createElement("a");
+// // a.href = url;
+// // a.download = `agent_${id}.json`; // Set the filename
- // Append the anchor to the body, click it, and remove it
- document.body.appendChild(a);
- a.click();
- document.body.removeChild(a);
+// // // Append the anchor to the body, click it, and remove it
+// // document.body.appendChild(a);
+// // a.click();
+// // document.body.removeChild(a);
- // Revoke the temporary URL
- window.URL.revokeObjectURL(url);
- } catch (error) {
- console.error(`Error downloading agent:`, error);
- throw error;
- }
- };
+// // // Revoke the temporary URL
+// // window.URL.revokeObjectURL(url);
+// // } catch (error) {
+// // console.error(`Error downloading agent:`, error);
+// // throw error;
+// // }
+// // };
- const installGraph = async (id: string): Promise => {
- toast({
- title: "Saving and opening a new agent...",
- duration: 2000,
- });
- const apiUrl =
- process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market";
- const api = new MarketplaceAPI(apiUrl);
+// return (
+//
+//
+//
+//
+// Back to Marketplace
+//
+//
+// downloadAgent(agent.id)}
+// className="inline-flex items-center rounded-md border border-transparent bg-indigo-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
+// >
+//
+// Download Agent
+//
+//
+//
+//
+//
+//
{agent.name}
+//
+// {agent.description}
+//
+//
+//
+//
+//
+//
+//
+// Last Updated
+//
+//
+// {new Date(agent.updatedAt).toLocaleDateString()}
+//
+//
+//
+//
+//
+// Categories
+//
+//
+// {agent.categories.join(", ")}
+//
+//
+//
+//
+//
+//
+// );
+// }
- const serverAPIUrl = process.env.NEXT_PUBLIC_AGPT_SERVER_API_URL;
- const serverAPI = new AutoGPTServerAPI(serverAPIUrl);
- try {
- console.debug(`Installing agent with id: ${id}`);
- let agent = await api.downloadAgent(id);
- console.debug(`Agent downloaded:`, agent);
- const data: GraphCreatable = {
- id: agent.id,
- version: agent.version,
- is_active: true,
- is_template: false,
- name: agent.name,
- description: agent.description,
- nodes: agent.graph.nodes,
- links: agent.graph.links,
- };
- const result = await serverAPI.createTemplate(data);
- makeAnalyticsEvent({
- event_name: "agent_installed_from_marketplace",
- event_data: {
- marketplace_agent_id: id,
- installed_agent_id: result.id,
- installation_location: InstallationLocation.CLOUD,
- },
- });
- console.debug(`Agent installed successfully`, result);
- serverAPI.createGraph(result.id, agent.version).then((newGraph) => {
- window.location.href = `/build?flowID=${newGraph.id}`;
- });
- } catch (error) {
- console.error(`Error installing agent:`, error);
- toast({
- title: "Error saving template",
- variant: "destructive",
- duration: 2000,
- });
- throw error;
- }
- };
-
- return (
-
-
-
-
- Back to Marketplace
-
-
- installGraph(agent.id)}
- className="inline-flex items-center rounded-md border border-transparent bg-indigo-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
- >
-
- Save to Templates
-
- downloadAgent(agent.id)}
- className="inline-flex items-center rounded-md border border-transparent bg-indigo-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
- >
-
- Download Agent
-
-
-
-
-
-
{agent.name}
-
- {agent.description}
-
-
-
-
-
-
-
- Last Updated
-
-
- {new Date(agent.updatedAt).toLocaleDateString()}
-
-
-
-
-
- Categories
-
-
- {agent.categories.join(", ")}
-
-
-
-
-
-
- );
-}
-
-export default AgentDetailContent;
+// export default AgentDetailContent;
diff --git a/autogpt_platform/frontend/src/components/marketplace/actions.ts b/autogpt_platform/frontend/src/components/marketplace/actions.ts
index e7cf9832b4..d6ebec32a0 100644
--- a/autogpt_platform/frontend/src/components/marketplace/actions.ts
+++ b/autogpt_platform/frontend/src/components/marketplace/actions.ts
@@ -1,18 +1,18 @@
-"use server";
+// "use server";
-import * as Sentry from "@sentry/nextjs";
-import MarketplaceAPI, { AnalyticsEvent } from "@/lib/marketplace-api";
-import { checkAuth } from "@/lib/supabase/server";
+// import * as Sentry from "@sentry/nextjs";
+// import MarketplaceAPI, { AnalyticsEvent } from "@/lib/marketplace-api";
+// import { checkAuth } from "@/lib/supabase/server";
-export async function makeAnalyticsEvent(event: AnalyticsEvent) {
- return await Sentry.withServerActionInstrumentation(
- "makeAnalyticsEvent",
- {},
- async () => {
- await checkAuth();
- const apiUrl = process.env.AGPT_SERVER_API_URL;
- const api = new MarketplaceAPI();
- await api.makeAnalyticsEvent(event);
- },
- );
-}
+// export async function makeAnalyticsEvent(event: AnalyticsEvent) {
+// return await Sentry.withServerActionInstrumentation(
+// "makeAnalyticsEvent",
+// {},
+// async () => {
+// await checkAuth();
+// const apiUrl = process.env.AGPT_SERVER_API_URL;
+// const api = new MarketplaceAPI();
+// await api.makeAnalyticsEvent(event);
+// },
+// );
+// }
diff --git a/autogpt_platform/frontend/src/components/monitor/AgentFlowList.tsx b/autogpt_platform/frontend/src/components/monitor/AgentFlowList.tsx
index e7d7a1dd8f..56a7e96d39 100644
--- a/autogpt_platform/frontend/src/components/monitor/AgentFlowList.tsx
+++ b/autogpt_platform/frontend/src/components/monitor/AgentFlowList.tsx
@@ -2,7 +2,7 @@ import AutoGPTServerAPI, {
GraphExecution,
GraphMeta,
} from "@/lib/autogpt-server-api";
-import React, { useEffect, useMemo, useState } from "react";
+import React, { useMemo } from "react";
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card";
import { Button } from "@/components/ui/button";
import { TextRenderer } from "@/components/ui/render";
@@ -17,8 +17,6 @@ import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
- DropdownMenuLabel,
- DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
import { ChevronDownIcon, EnterIcon } from "@radix-ui/react-icons";
@@ -47,11 +45,7 @@ export const AgentFlowList = ({
onSelectFlow: (f: GraphMeta) => void;
className?: string;
}) => {
- const [templates, setTemplates] = useState([]);
const api = useMemo(() => new AutoGPTServerAPI(), []);
- useEffect(() => {
- api.listTemplates().then((templates) => setTemplates(templates));
- }, [api]);
return (
@@ -82,30 +76,6 @@ export const AgentFlowList = ({
Import from file
- {templates.length > 0 && (
- <>
- {/* List of templates */}
-
- Use a template
- {templates.map((template) => (
- {
- api
- .createGraph(template.id, template.version)
- .then((newGraph) => {
- window.location.href = `/build?flowID=${newGraph.id}`;
- });
- }}
- >
-
-
- ))}
- >
- )}
@@ -113,7 +83,7 @@ export const AgentFlowList = ({
Import Agent
- Import an Agent (template) from a file
+ Import an Agent from a file
diff --git a/autogpt_platform/frontend/src/components/monitor/FlowInfo.tsx b/autogpt_platform/frontend/src/components/monitor/FlowInfo.tsx
index 830fa7e8d2..a9ee6cd357 100644
--- a/autogpt_platform/frontend/src/components/monitor/FlowInfo.tsx
+++ b/autogpt_platform/frontend/src/components/monitor/FlowInfo.tsx
@@ -1,9 +1,11 @@
-import React, { useEffect, useMemo, useState } from "react";
+import React, { useEffect, useMemo, useState, useCallback } from "react";
import AutoGPTServerAPI, {
GraphExecution,
Graph,
GraphMeta,
safeCopyGraph,
+ BlockUIType,
+ BlockIORootSchema,
} from "@/lib/autogpt-server-api";
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card";
import {
@@ -18,9 +20,9 @@ import {
import { Button, buttonVariants } from "@/components/ui/button";
import { ClockIcon, ExitIcon, Pencil2Icon } from "@radix-ui/react-icons";
import Link from "next/link";
-import { exportAsJSONFile } from "@/lib/utils";
+import { exportAsJSONFile, filterBlocksByType } from "@/lib/utils";
import { FlowRunsStats } from "@/components/monitor/index";
-import { Trash2Icon } from "lucide-react";
+import { Trash2Icon, Timer } from "lucide-react";
import {
Dialog,
DialogContent,
@@ -29,6 +31,10 @@ import {
DialogDescription,
DialogFooter,
} from "@/components/ui/dialog";
+import { useToast } from "@/components/ui/use-toast";
+import { CronScheduler } from "@/components/cronScheduler";
+import RunnerInputUI from "@/components/runner-ui/RunnerInputUI";
+import useAgentGraph from "@/hooks/useAgentGraph";
export const FlowInfo: React.FC<
React.HTMLAttributes & {
@@ -38,7 +44,30 @@ export const FlowInfo: React.FC<
refresh: () => void;
}
> = ({ flow, executions, flowVersion, refresh, ...props }) => {
+ const {
+ agentName,
+ setAgentName,
+ agentDescription,
+ setAgentDescription,
+ savedAgent,
+ availableNodes,
+ availableFlows,
+ getOutputType,
+ requestSave,
+ requestSaveAndRun,
+ requestStopRun,
+ scheduleRunner,
+ isRunning,
+ isScheduling,
+ setIsScheduling,
+ nodes,
+ setNodes,
+ edges,
+ setEdges,
+ } = useAgentGraph(flow.id, false);
+
const api = useMemo(() => new AutoGPTServerAPI(), []);
+ const { toast } = useToast();
const [flowVersions, setFlowVersions] = useState(null);
const [selectedVersion, setSelectedFlowVersion] = useState(
@@ -50,11 +79,102 @@ export const FlowInfo: React.FC<
);
const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);
+ const [openCron, setOpenCron] = useState(false);
+ const [isRunnerInputOpen, setIsRunnerInputOpen] = useState(false);
+ const isDisabled = !selectedFlowVersion;
+
+ const getBlockInputsAndOutputs = useCallback(() => {
+ const inputBlocks = filterBlocksByType(
+ nodes,
+ (node) => node.data.uiType === BlockUIType.INPUT,
+ );
+
+ const outputBlocks = filterBlocksByType(
+ nodes,
+ (node) => node.data.uiType === BlockUIType.OUTPUT,
+ );
+
+ const inputs = inputBlocks.map((node) => ({
+ id: node.id,
+ type: "input" as const,
+ inputSchema: node.data.inputSchema as BlockIORootSchema,
+ hardcodedValues: {
+ name: (node.data.hardcodedValues as any).name || "",
+ description: (node.data.hardcodedValues as any).description || "",
+ value: (node.data.hardcodedValues as any).value,
+ placeholder_values:
+ (node.data.hardcodedValues as any).placeholder_values || [],
+ limit_to_placeholder_values:
+ (node.data.hardcodedValues as any).limit_to_placeholder_values ||
+ false,
+ },
+ }));
+
+ const outputs = outputBlocks.map((node) => ({
+ id: node.id,
+ type: "output" as const,
+ hardcodedValues: {
+ name: (node.data.hardcodedValues as any).name || "Output",
+ description:
+ (node.data.hardcodedValues as any).description ||
+ "Output from the agent",
+ value: (node.data.hardcodedValues as any).value,
+ },
+ result: (node.data.executionResults as any)?.at(-1)?.data?.output,
+ }));
+
+ return { inputs, outputs };
+ }, [nodes]);
+
+ const handleScheduleButton = () => {
+ if (!selectedFlowVersion) {
+ toast({
+ title: "Please select a flow version before scheduling",
+ duration: 2000,
+ });
+ return;
+ }
+ setOpenCron(true);
+ };
useEffect(() => {
api.getGraphAllVersions(flow.id).then((result) => setFlowVersions(result));
}, [flow.id, api]);
+ const openRunnerInput = () => setIsRunnerInputOpen(true);
+
+ const runOrOpenInput = () => {
+ const { inputs } = getBlockInputsAndOutputs();
+ if (inputs.length > 0) {
+ openRunnerInput();
+ } else {
+ requestSaveAndRun();
+ }
+ };
+
+ const handleInputChange = useCallback(
+ (nodeId: string, field: string, value: string) => {
+ setNodes((nds) =>
+ nds.map((node) => {
+ if (node.id === nodeId) {
+ return {
+ ...node,
+ data: {
+ ...node.data,
+ hardcodedValues: {
+ ...(node.data.hardcodedValues as any),
+ [field]: value,
+ },
+ },
+ };
+ }
+ return node;
+ }),
+ );
+ },
+ [setNodes],
+ );
+
return (
@@ -62,9 +182,6 @@ export const FlowInfo: React.FC<
{flow.name} v{flow.version}
-
- Agent ID: {flow.id}
-
{(flowVersions?.length ?? 0) > 1 && (
@@ -130,6 +247,15 @@ export const FlowInfo: React.FC<
>
Export
+
+ {isRunning ? "Stop Agent" : "Run Agent"}
+
setIsDeleteModalOpen(true)}
@@ -180,6 +306,20 @@ export const FlowInfo: React.FC<
+ setIsRunnerInputOpen(false)}
+ blockInputs={getBlockInputsAndOutputs().inputs}
+ onInputChange={handleInputChange}
+ onRun={() => {
+ setIsRunnerInputOpen(false);
+ requestSaveAndRun();
+ }}
+ isRunning={isRunning}
+ scheduledInput={false}
+ isScheduling={false}
+ onSchedule={async () => {}} // Fixed type error by making async
+ />
);
};
diff --git a/autogpt_platform/frontend/src/components/monitor/FlowRunInfo.tsx b/autogpt_platform/frontend/src/components/monitor/FlowRunInfo.tsx
index 8420bfb70a..b0839f5d33 100644
--- a/autogpt_platform/frontend/src/components/monitor/FlowRunInfo.tsx
+++ b/autogpt_platform/frontend/src/components/monitor/FlowRunInfo.tsx
@@ -96,12 +96,6 @@ export const FlowRunInfo: React.FC<
{flow.name}{" "}
v{execution.graph_version}
-
- Agent ID: {flow.id}
-
-
- Run ID: {execution.execution_id}
-
{execution.status === "RUNNING" && (
@@ -121,6 +115,12 @@ export const FlowRunInfo: React.FC<
+
+ Agent ID: {flow.id}
+
+
+ Run ID: {flowRun.id}
+
Status: {" "}
diff --git a/autogpt_platform/frontend/src/components/nav/CreditButton.tsx b/autogpt_platform/frontend/src/components/nav/CreditButton.tsx
index 0a8d9d446c..be99516664 100644
--- a/autogpt_platform/frontend/src/components/nav/CreditButton.tsx
+++ b/autogpt_platform/frontend/src/components/nav/CreditButton.tsx
@@ -11,8 +11,13 @@ export default function CreditButton() {
const [credit, setCredit] = useState
(null);
const fetchCredit = useCallback(async () => {
- const response = await api.getUserCredit();
- setCredit(response.credits);
+ try {
+ const response = await api.getUserCredit();
+ setCredit(response.credits);
+ } catch (error) {
+ console.error("Error fetching credit:", error);
+ setCredit(null);
+ }
}, []);
useEffect(() => {
diff --git a/autogpt_platform/frontend/src/components/nav/NavBarButtons.tsx b/autogpt_platform/frontend/src/components/nav/NavBarButtons.tsx
index e5b7e48c04..ec1edd8f27 100644
--- a/autogpt_platform/frontend/src/components/nav/NavBarButtons.tsx
+++ b/autogpt_platform/frontend/src/components/nav/NavBarButtons.tsx
@@ -7,6 +7,7 @@ import { LuLaptop, LuShoppingCart } from "react-icons/lu";
import { BehaveAs, cn } from "@/lib/utils";
import { usePathname } from "next/navigation";
import { getBehaveAs } from "@/lib/utils";
+import { IconMarketplace } from "@/components/ui/icons";
import MarketPopup from "./MarketPopup";
export function NavBarButtons({ className }: { className?: string }) {
@@ -22,6 +23,11 @@ export function NavBarButtons({ className }: { className?: string }) {
text: "Build",
icon: ,
},
+ {
+ href: "/store",
+ text: "Agent Store",
+ icon: ,
+ },
];
const isCloud = getBehaveAs() === BehaveAs.CLOUD;
diff --git a/autogpt_platform/frontend/src/components/node-input-components.tsx b/autogpt_platform/frontend/src/components/node-input-components.tsx
index cc72baa43d..fb3d34d9c0 100644
--- a/autogpt_platform/frontend/src/components/node-input-components.tsx
+++ b/autogpt_platform/frontend/src/components/node-input-components.tsx
@@ -77,7 +77,7 @@ const NodeObjectInputTree: FC = ({
key={propKey}
className="flex w-full flex-row justify-between space-y-2"
>
-
+
{propSchema.title || beautifyString(propKey)}
))}
0 &&
!keyValuePairs[keyValuePairs.length - 1].key
@@ -735,7 +735,7 @@ const NodeArrayInput: FC<{
);
})}
handleInputChange(selfKey, [...entries, isItemObject ? {} : ""])
}
@@ -816,15 +816,7 @@ const NodeStringInput: FC<{
className,
displayName,
}) => {
- if (!value) {
- value = schema.default || "";
- // Force update hardcodedData so discriminators can update
- // e.g. credentials update when provider changes
- // this won't happen if the value is only set here to schema.default
- if (schema.default) {
- handleInputChange(selfKey, value);
- }
- }
+ value ||= schema.default || "";
return (
{schema.enum ? (
@@ -857,7 +849,7 @@ const NodeStringInput: FC<{
placeholder={
schema?.placeholder || `Enter ${beautifyString(displayName)}`
}
- className="pr-8 read-only:cursor-pointer read-only:text-gray-500"
+ className="pr-8 read-only:cursor-pointer read-only:text-gray-500 dark:text-white"
/>
handleInputClick(selfKey) : undefined}
>
handleInputChange(selfKey, e.target.value)}
- className="h-full w-full resize-none overflow-hidden border-none bg-transparent text-lg text-black outline-none"
+ className="h-full w-full resize-none overflow-hidden border-none bg-transparent text-lg text-black outline-none dark:text-white"
style={{
fontSize: "min(1em, 16px)",
lineHeight: "1.2",
@@ -953,6 +945,7 @@ const NodeNumberInput: FC<{
placeholder={
schema.placeholder || `Enter ${beautifyString(displayName)}`
}
+ className="dark:text-white"
/>
{error && {error} }
@@ -985,7 +978,9 @@ const NodeBooleanInput: FC<{
defaultChecked={value}
onCheckedChange={(v) => handleInputChange(selfKey, v)}
/>
- {displayName && {displayName} }
+ {displayName && (
+ {displayName}
+ )}
{error && {error} }
diff --git a/autogpt_platform/frontend/src/components/SupabaseProvider.tsx b/autogpt_platform/frontend/src/components/providers/SupabaseProvider.tsx
similarity index 79%
rename from autogpt_platform/frontend/src/components/SupabaseProvider.tsx
rename to autogpt_platform/frontend/src/components/providers/SupabaseProvider.tsx
index 6e0fd52ba1..6ceb01dad3 100644
--- a/autogpt_platform/frontend/src/components/SupabaseProvider.tsx
+++ b/autogpt_platform/frontend/src/components/providers/SupabaseProvider.tsx
@@ -1,7 +1,8 @@
"use client";
import { createClient } from "@/lib/supabase/client";
-import { SupabaseClient } from "@supabase/supabase-js";
+import { SupabaseClient, User } from "@supabase/supabase-js";
+import { Session } from "@supabase/supabase-js";
import { useRouter } from "next/navigation";
import { createContext, useContext, useEffect, useState } from "react";
import AutoGPTServerAPI from "@/lib/autogpt-server-api";
@@ -9,15 +10,19 @@ import AutoGPTServerAPI from "@/lib/autogpt-server-api";
type SupabaseContextType = {
supabase: SupabaseClient | null;
isLoading: boolean;
+ user: User | null;
};
const Context = createContext(undefined);
export default function SupabaseProvider({
children,
+ initialUser,
}: {
children: React.ReactNode;
+ initialUser: User | null;
}) {
+ const [user, setUser] = useState(initialUser);
const [supabase, setSupabase] = useState(null);
const [isLoading, setIsLoading] = useState(true);
const router = useRouter();
@@ -34,6 +39,9 @@ export default function SupabaseProvider({
const {
data: { subscription },
} = client.auth.onAuthStateChange((event, session) => {
+ client.auth.getUser().then((user) => {
+ setUser(user.data.user);
+ });
if (event === "SIGNED_IN") {
api.createUser();
}
@@ -52,7 +60,7 @@ export default function SupabaseProvider({
}, [router]);
return (
-
+
{children}
);
diff --git a/autogpt_platform/frontend/src/components/ui/BoringAvatarWrapper.tsx b/autogpt_platform/frontend/src/components/ui/BoringAvatarWrapper.tsx
new file mode 100644
index 0000000000..9d1c6320a1
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/ui/BoringAvatarWrapper.tsx
@@ -0,0 +1,31 @@
+import Avatar from "boring-avatars";
+
+import React from "react";
+
+interface BoringAvatarWrapperProps {
+ size?: number;
+ name: string;
+ variant?: "marble" | "beam" | "pixel" | "sunset" | "ring" | "bauhaus";
+ colors?: string[];
+ square?: boolean;
+}
+
+export const BoringAvatarWrapper: React.FC = ({
+ size = 40,
+ name,
+ variant = "beam",
+ colors = ["#92A1C6", "#146A7C", "#F0AB3D", "#C271B4", "#C20D90"],
+ square = false,
+}) => {
+ return (
+
+ );
+};
+
+export default BoringAvatarWrapper;
diff --git a/autogpt_platform/frontend/src/components/ui/avatar.tsx b/autogpt_platform/frontend/src/components/ui/avatar.tsx
index f07de81c5c..ca2a26e095 100644
--- a/autogpt_platform/frontend/src/components/ui/avatar.tsx
+++ b/autogpt_platform/frontend/src/components/ui/avatar.tsx
@@ -2,6 +2,8 @@
import * as React from "react";
import * as AvatarPrimitive from "@radix-ui/react-avatar";
+import BoringAvatar from "./BoringAvatarWrapper";
+import tailwindConfig from "../../../tailwind.config";
import { cn } from "@/lib/utils";
@@ -32,6 +34,28 @@ const AvatarImage = React.forwardRef<
));
AvatarImage.displayName = AvatarPrimitive.Image.displayName;
+/**
+ * Hack to match the avatar size based on Tailwind classes.
+ * This function attempts to extract the size from a 'h-' class in the className string,
+ * and maps it to the corresponding size in the Tailwind config.
+ * If no matching class is found, it defaults to 40.
+ * @param className - The className string to parse
+ * @returns The size of the avatar in pixels
+ */
+const getAvatarSize = (className: string | undefined): number => {
+ if (className?.includes("h-")) {
+ const match = parseInt(className.match(/h-(\d+)/)?.[1] || "16");
+ if (match) {
+ const size =
+ tailwindConfig.theme.extend.spacing[
+ match as keyof typeof tailwindConfig.theme.extend.spacing
+ ];
+ return size ? parseInt(size.replace("rem", "")) * 16 : 40;
+ }
+ }
+ return 40;
+};
+
const AvatarFallback = React.forwardRef<
React.ElementRef,
React.ComponentPropsWithoutRef
@@ -39,12 +63,19 @@ const AvatarFallback = React.forwardRef<
+ >
+
+
));
AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
-export { Avatar, AvatarImage, AvatarFallback };
+export { Avatar as Avatar, AvatarImage, AvatarFallback };
diff --git a/autogpt_platform/frontend/src/components/ui/carousel.tsx b/autogpt_platform/frontend/src/components/ui/carousel.tsx
new file mode 100644
index 0000000000..1568672649
--- /dev/null
+++ b/autogpt_platform/frontend/src/components/ui/carousel.tsx
@@ -0,0 +1,262 @@
+"use client";
+
+import * as React from "react";
+import useEmblaCarousel, {
+ type UseEmblaCarouselType,
+} from "embla-carousel-react";
+import { ArrowLeft, ArrowRight } from "lucide-react";
+
+import { cn } from "@/lib/utils";
+import { Button } from "@/components/ui/button";
+
+type CarouselApi = UseEmblaCarouselType[1];
+type UseCarouselParameters = Parameters;
+type CarouselOptions = UseCarouselParameters[0];
+type CarouselPlugin = UseCarouselParameters[1];
+
+type CarouselProps = {
+ opts?: CarouselOptions;
+ plugins?: CarouselPlugin;
+ orientation?: "horizontal" | "vertical";
+ setApi?: (api: CarouselApi) => void;
+};
+
+type CarouselContextProps = {
+ carouselRef: ReturnType[0];
+ api: ReturnType[1];
+ scrollPrev: () => void;
+ scrollNext: () => void;
+ canScrollPrev: boolean;
+ canScrollNext: boolean;
+} & CarouselProps;
+
+const CarouselContext = React.createContext(null);
+
+function useCarousel() {
+ const context = React.useContext(CarouselContext);
+
+ if (!context) {
+ throw new Error("useCarousel must be used within a ");
+ }
+
+ return context;
+}
+
+const Carousel = React.forwardRef<
+ HTMLDivElement,
+ React.HTMLAttributes & CarouselProps
+>(
+ (
+ {
+ orientation = "horizontal",
+ opts,
+ setApi,
+ plugins,
+ className,
+ children,
+ ...props
+ },
+ ref,
+ ) => {
+ const [carouselRef, api] = useEmblaCarousel(
+ {
+ ...opts,
+ axis: orientation === "horizontal" ? "x" : "y",
+ },
+ plugins,
+ );
+ const [canScrollPrev, setCanScrollPrev] = React.useState(false);
+ const [canScrollNext, setCanScrollNext] = React.useState(false);
+
+ const onSelect = React.useCallback((api: CarouselApi) => {
+ if (!api) {
+ return;
+ }
+
+ setCanScrollPrev(api.canScrollPrev());
+ setCanScrollNext(api.canScrollNext());
+ }, []);
+
+ const scrollPrev = React.useCallback(() => {
+ api?.scrollPrev();
+ }, [api]);
+
+ const scrollNext = React.useCallback(() => {
+ api?.scrollNext();
+ }, [api]);
+
+ const handleKeyDown = React.useCallback(
+ (event: React.KeyboardEvent) => {
+ if (event.key === "ArrowLeft") {
+ event.preventDefault();
+ scrollPrev();
+ } else if (event.key === "ArrowRight") {
+ event.preventDefault();
+ scrollNext();
+ }
+ },
+ [scrollPrev, scrollNext],
+ );
+
+ React.useEffect(() => {
+ if (!api || !setApi) {
+ return;
+ }
+
+ setApi(api);
+ }, [api, setApi]);
+
+ React.useEffect(() => {
+ if (!api) {
+ return;
+ }
+
+ onSelect(api);
+ api.on("reInit", onSelect);
+ api.on("select", onSelect);
+
+ return () => {
+ api?.off("select", onSelect);
+ };
+ }, [api, onSelect]);
+
+ return (
+
+
+ {children}
+
+
+ );
+ },
+);
+Carousel.displayName = "Carousel";
+
+const CarouselContent = React.forwardRef<
+ HTMLDivElement,
+ React.HTMLAttributes
+>(({ className, ...props }, ref) => {
+ const { carouselRef, orientation } = useCarousel();
+
+ return (
+
+ );
+});
+CarouselContent.displayName = "CarouselContent";
+
+const CarouselItem = React.forwardRef<
+ HTMLDivElement,
+ React.HTMLAttributes
+>(({ className, ...props }, ref) => {
+ const { orientation } = useCarousel();
+
+ return (
+
+ );
+});
+CarouselItem.displayName = "CarouselItem";
+
+const CarouselPrevious = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps
+>(({ className, variant = "outline", size = "icon", ...props }, ref) => {
+ const { orientation, scrollPrev, canScrollPrev } = useCarousel();
+
+ return (
+
+
+ Previous slide
+
+ );
+});
+CarouselPrevious.displayName = "CarouselPrevious";
+
+const CarouselNext = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps
+>(({ className, variant = "outline", size = "icon", ...props }, ref) => {
+ const { orientation, scrollNext, canScrollNext } = useCarousel();
+
+ return (
+
+
+ Next slide
+
+ );
+});
+CarouselNext.displayName = "CarouselNext";
+
+export {
+ type CarouselApi,
+ Carousel,
+ CarouselContent,
+ CarouselItem,
+ CarouselPrevious,
+ CarouselNext,
+};
diff --git a/autogpt_platform/frontend/src/components/ui/icons.stories.tsx b/autogpt_platform/frontend/src/components/ui/icons.stories.tsx
index cadc91bdb7..f9aa3f8c6d 100644
--- a/autogpt_platform/frontend/src/components/ui/icons.stories.tsx
+++ b/autogpt_platform/frontend/src/components/ui/icons.stories.tsx
@@ -19,11 +19,29 @@ import {
IconMegaphone,
IconMenu,
IconCoin,
+ IconEdit,
+ IconLogOut,
+ IconSettings,
+ IconLayoutDashboard,
+ IconUploadCloud,
+ IconMedium,
+ IconYoutube,
+ IconTiktok,
+ IconGlobe,
+ IconBuilder,
+ IconLibrary,
+ IconGithub,
+ IconLinkedin,
+ IconFacebook,
+ IconX,
+ IconInstagram,
+ IconLeftArrow,
+ IconRightArrow,
} from "./icons";
const meta = {
title: "UI/Icons",
- component: IconUser, // Add a component property
+ component: IconUser,
parameters: {
layout: "centered",
},
@@ -35,7 +53,7 @@ const meta = {
},
className: { control: "text" },
},
-} satisfies Meta; // Specify the type parameter
+} satisfies Meta;
export default meta;
type Story = StoryObj;
@@ -66,6 +84,24 @@ export const AllIcons: Story = {
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
),
};
diff --git a/autogpt_platform/frontend/src/components/ui/icons.tsx b/autogpt_platform/frontend/src/components/ui/icons.tsx
index 9f8687e34f..e623e39afb 100644
--- a/autogpt_platform/frontend/src/components/ui/icons.tsx
+++ b/autogpt_platform/frontend/src/components/ui/icons.tsx
@@ -1,5 +1,3 @@
-"use client";
-
import * as React from "react";
import { cn } from "@/lib/utils";
@@ -42,6 +40,7 @@ const createIcon = >(
className={cn(iconVariants.size[size], className)}
ref={ref}
{...(props as P)}
+ aria-label={IconComponent.displayName || "Icon"}
/>
);
},
@@ -78,6 +77,7 @@ export const IconSave = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Save Icon"
{...props}
>
@@ -114,6 +114,7 @@ export const IconUndo2 = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Undo Icon"
{...props}
>
@@ -149,6 +150,7 @@ export const IconRedo2 = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Redo Icon"
{...props}
>
@@ -184,6 +186,7 @@ export const IconToyBrick = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Toy Brick Icon"
{...props}
>
@@ -220,6 +223,7 @@ export const IconCircleAlert = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Circle Alert Icon"
{...props}
>
@@ -256,6 +260,7 @@ export const IconCircleUser = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Circle User Icon"
{...props}
>
@@ -292,6 +297,7 @@ export const IconRefresh = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Refresh Icon"
{...props}
>
@@ -320,6 +326,7 @@ export const IconCoin = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Coin Icon"
{...props}
>
@@ -357,6 +364,7 @@ export const IconMenu = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Menu Icon"
{...props}
>
@@ -393,6 +401,7 @@ export const IconSquareActivity = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Square Activity Icon"
{...props}
>
@@ -428,6 +437,7 @@ export const IconWorkFlow = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Workflow Icon"
{...props}
>
@@ -464,6 +474,7 @@ export const IconPlay = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Play Icon"
{...props}
>
@@ -498,6 +509,7 @@ export const IconSquare = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Square Icon"
{...props}
>
@@ -532,6 +544,7 @@ export const IconPackage2 = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Package Icon"
{...props}
>
@@ -568,6 +581,7 @@ export const IconMegaphone = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Megaphone Icon"
{...props}
>
@@ -603,6 +617,7 @@ export const IconKey = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Key Icon"
{...props}
>
@@ -638,10 +653,10 @@ export const IconKeyPlus = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="Key Plus Icon"
{...props}
>
- {/* */}
@@ -675,6 +690,7 @@ export const IconUser = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="User Icon"
{...props}
>
@@ -710,6 +726,7 @@ export const IconUserPlus = createIcon((props) => (
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
+ aria-label="User Plus Icon"
{...props}
>
@@ -719,4 +736,1014 @@ export const IconUserPlus = createIcon((props) => (
));
+/**
+ * Edit icon component.
+ *
+ * @component IconEdit
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The edit icon.
+ */
+export const IconEdit = createIcon((props) => (
+
+
+
+));
+
+/**
+ * Log out icon component.
+ *
+ * @component IconLogOut
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The log out icon.
+ */
+export const IconLogOut = createIcon((props) => (
+
+
+
+
+
+));
+
+/**
+ * Log in icon component.
+ *
+ * @component IconLogIn
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The log in icon.
+ */
+export const IconLogIn = createIcon((props) => (
+
+
+
+
+
+));
+/**
+ * Settings icon component.
+ *
+ * @component IconSettings
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The settings icon.
+ */
+export const IconSettings = createIcon((props) => (
+
+
+
+
+));
+
+/**
+ * Dashboard layout icon component.
+ *
+ * @component IconLayoutDashboard
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The dashboard layout icon.
+ */
+export const IconLayoutDashboard = createIcon((props) => (
+
+
+
+
+
+
+));
+
+/**
+ * Upload cloud icon component.
+ *
+ * @component IconUploadCloud
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The upload cloud icon.
+ */
+export const IconUploadCloud = createIcon((props) => (
+
+
+
+
+
+));
+
+/**
+ * Chevron up icon component.
+ *
+ * @component IconChevronUp
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The chevron up icon.
+ */
+export const IconChevronUp = createIcon((props) => (
+
+
+
+));
+/**
+ * Marketplace icon component.
+ *
+ * @component IconMarketplace
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The marketplace icon.
+ */
+export const IconMarketplace = createIcon((props) => (
+
+ Marketplace
+
+
+
+
+
+
+));
+
+/**
+ * Shopping Cart icon component.
+ *
+ * @component IconShoppingCart
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The shopping cart icon.
+ */
+export const IconShoppingCart = createIcon((props) => (
+
+ Shopping Cart
+
+
+
+
+));
+
+/**
+ * Laptop icon component.
+ *
+ * @component IconLaptop
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The laptop icon.
+ */
+export const IconLaptop = createIcon((props) => (
+
+ Laptop
+
+
+
+
+));
+
+/**
+ * Boxes icon component.
+ *
+ * @component IconBoxes
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The boxes icon.
+ */
+export const IconBoxes = createIcon((props) => (
+
+ Boxes
+
+
+
+
+
+
+
+
+
+
+
+
+
+));
+
+/**
+ * Library icon component.
+ *
+ * @component IconLibrary
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The library icon.
+ */
+export const IconLibrary = createIcon((props) => (
+
+ Library
+
+
+));
+
+export const IconStar = createIcon((props) => (
+
+
+
+));
+
+export const IconStarFilled = createIcon((props) => (
+
+
+
+));
+
+/**
+ * Generates an array of JSX elements representing star icons based on the average rating.
+ *
+ * @param avgRating - The average rating (0 to 5)
+ * @returns An array of star icons as JSX elements
+ */
+export function StarRatingIcons(avgRating: number): JSX.Element[] {
+ const stars: JSX.Element[] = [];
+ const rating = Math.max(0, Math.min(5, avgRating));
+ for (let i = 1; i <= 5; i++) {
+ if (i <= rating) {
+ stars.push( );
+ } else {
+ stars.push( );
+ }
+ }
+ return stars;
+}
+
+/**
+ * GitHub icon component.
+ *
+ * @component IconGithub
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The GitHub icon.
+ */
+export const IconGithub = createIcon((props) => (
+
+ GitHub
+
+
+
+));
+
+/**
+ * LinkedIn icon component.
+ *
+ * @component IconLinkedin
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The LinkedIn icon.
+ */
+export const IconLinkedin = createIcon((props) => (
+
+ LinkedIn
+
+
+
+
+));
+
+/**
+ * Facebook icon component.
+ *
+ * @component IconFacebook
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The Facebook icon.
+ */
+export const IconFacebook = createIcon((props) => (
+
+ Facebook
+
+
+));
+
+/**
+ * Instagram icon component.
+ *
+ * @component IconInstagram
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The Instagram icon.
+ */
+export const IconInstagram = createIcon((props) => (
+
+ Instagram
+
+
+
+
+));
+
+/**
+ * X (Twitter) icon component.
+ *
+ * @component IconX
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The X (Twitter) icon.
+ */
+export const IconX = createIcon((props) => (
+
+ X (Twitter)
+
+
+));
+
+/**
+ * Medium icon component.
+ *
+ * @component IconMedium
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The Medium icon.
+ */
+export const IconMedium = createIcon((props) => (
+
+ Medium
+
+
+));
+
+/**
+ * YouTube icon component.
+ *
+ * @component IconYoutube
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The YouTube icon.
+ */
+export const IconYoutube = createIcon((props) => (
+
+ YouTube
+
+
+
+));
+
+/**
+ * TikTok icon component.
+ *
+ * @component IconTiktok
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The TikTok icon.
+ */
+export const IconTiktok = createIcon((props) => (
+
+ TikTok
+
+
+));
+
+/**
+ * Close (X) icon component.
+ *
+ * @component IconClose
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The close icon.
+ *
+ * @example
+ * // Default usage
+ *
+ *
+ * @example
+ * // With custom color and size
+ *
+ */
+export const IconClose = createIcon((props) => (
+
+
+
+));
+
+/**
+ * Plus icon component.
+ *
+ * @component IconPlus
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The plus icon.
+ *
+ * @example
+ * // Default usage
+ *
+ *
+ * @example
+ * // With custom color and size
+ *
+ */
+export const IconPlus = createIcon((props) => (
+
+
+
+
+));
+
+/**
+ * Globe icon component.
+ *
+ * @component IconGlobe
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The globe icon.
+ */
+export const IconGlobe = createIcon((props) => (
+
+ Globe
+
+
+
+
+));
+
+/**
+ * Left Arrow icon component.
+ *
+ * @component IconLeftArrow
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The left arrow icon.
+ */
+export const IconLeftArrow = createIcon((props) => (
+
+ Left Arrow
+
+
+));
+
+/**
+ * Right Arrow icon component.
+ *
+ * @component IconRightArrow
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The right arrow icon.
+ */
+export const IconRightArrow = createIcon((props) => (
+
+ Right Arrow
+
+
+));
+
+/**
+ * Person Fill icon component.
+ *
+ * @component IconPersonFill
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The person fill icon.
+ */
+export const IconPersonFill = createIcon((props) => (
+
+ Person Fill
+
+
+));
+
+/**
+ * Dashboard Layout icon component.
+ *
+ * @component IconDashboardLayout
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The dashboard layout icon.
+ */
+export const IconDashboardLayout = createIcon((props) => (
+
+
+
+
+
+
+));
+
+/**
+ * Integrations icon component.
+ *
+ * @component IconIntegrations
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The integrations icon.
+ */
+export const IconIntegrations = createIcon((props) => (
+
+
+
+
+
+
+
+
+
+
+
+
+));
+
+/**
+ * Profile icon component.
+ *
+ * @component IconProfile
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The profile icon.
+ */
+export const IconProfile = createIcon((props) => (
+
+
+
+
+));
+
+/**
+ * Sliders icon component.
+ *
+ * @component IconSliders
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The sliders icon.
+ *
+ * @example
+ * // Default usage this is the standard usage
+ *
+ *
+ * @example
+ * // With custom color and size these should be used sparingly and only when necessary
+ *
+ *
+ * @example
+ * // With custom size and onClick handler
+ *
+ */
+export const IconSliders = createIcon((props) => (
+
+
+
+
+
+
+
+
+
+
+
+));
+
+/**
+ * More (vertical dots) icon component.
+ *
+ * @component IconMore
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The more options icon.
+ *
+ * @example
+ * // Default usage
+ *
+ *
+ * @example
+ * // With custom color and size
+ *
+ */
+export const IconMore = createIcon((props) => (
+
+
+
+
+
+));
+
+/**
+ * External link icon component.
+ *
+ * @component IconExternalLink
+ * @param {IconProps} props - The props object containing additional attributes and event handlers for the icon.
+ * @returns {JSX.Element} - The external link icon.
+ */
+export const IconExternalLink = createIcon((props) => (
+
+
+
+
+
+));
+
+export const IconSun = createIcon((props) => (
+
+
+
+
+
+
+
+
+
+
+
+));
+
+export const IconMoon = createIcon((props) => (
+
+
+
+));
+
+export const IconBuilder = createIcon((props) => );
+
+export enum IconType {
+ Marketplace,
+ Library,
+ Builder,
+ Edit,
+ LayoutDashboard,
+ UploadCloud,
+ Settings,
+ LogOut,
+}
+
+export function getIconForSocial(
+ url: string,
+ props: IconProps,
+): React.ReactNode {
+ const lowerCaseUrl = url.toLowerCase();
+ let host;
+ try {
+ host = new URL(url).host;
+ } catch (e) {
+ return ;
+ }
+
+ if (host === "facebook.com" || host.endsWith(".facebook.com")) {
+ return ;
+ } else if (host === "twitter.com" || host.endsWith(".twitter.com")) {
+ return ;
+ } else if (host === "x.com" || host.endsWith(".x.com")) {
+ return ;
+ } else if (host === "instagram.com" || host.endsWith(".instagram.com")) {
+ return ;
+ } else if (host === "linkedin.com" || host.endsWith(".linkedin.com")) {
+ return ;
+ } else if (host === "github.com" || host.endsWith(".github.com")) {
+ return ;
+ } else if (host === "youtube.com" || host.endsWith(".youtube.com")) {
+ return ;
+ } else if (host === "tiktok.com" || host.endsWith(".tiktok.com")) {
+ return ;
+ } else if (host === "medium.com" || host.endsWith(".medium.com")) {
+ return ;
+ } else {
+ return ;
+ }
+}
+
export { iconVariants };
diff --git a/autogpt_platform/frontend/src/components/ui/popover.tsx b/autogpt_platform/frontend/src/components/ui/popover.tsx
index acc3154292..45fd7b0487 100644
--- a/autogpt_platform/frontend/src/components/ui/popover.tsx
+++ b/autogpt_platform/frontend/src/components/ui/popover.tsx
@@ -11,6 +11,8 @@ const PopoverTrigger = PopoverPrimitive.Trigger;
const PopoverAnchor = PopoverPrimitive.Anchor;
+const PopoverPortal = PopoverPrimitive.Portal;
+
const PopoverContent = React.forwardRef<
React.ElementRef,
React.ComponentPropsWithoutRef
@@ -30,4 +32,10 @@ const PopoverContent = React.forwardRef<
));
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
-export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
+export {
+ Popover,
+ PopoverTrigger,
+ PopoverContent,
+ PopoverAnchor,
+ PopoverPortal,
+};
diff --git a/autogpt_platform/frontend/src/hooks/getServerUser.ts b/autogpt_platform/frontend/src/hooks/getServerUser.ts
index d97900a17c..8ae1cdf002 100644
--- a/autogpt_platform/frontend/src/hooks/getServerUser.ts
+++ b/autogpt_platform/frontend/src/hooks/getServerUser.ts
@@ -4,6 +4,7 @@ const getServerUser = async () => {
const supabase = createServerClient();
if (!supabase) {
+ console.log(">>> failed to create supabase client");
return { user: null, error: "Failed to create Supabase client" };
}
@@ -12,10 +13,11 @@ const getServerUser = async () => {
data: { user },
error,
} = await supabase.auth.getUser();
- if (error) {
- console.error("Supabase auth error:", error);
- return { user: null, role: null, error: `Auth error: ${error.message}` };
- }
+ // if (error) {
+ // // FIX: Suppressing error for now. Need to stop the nav bar calling this all the time
+ // // console.error("Supabase auth error:", error);
+ // return { user: null, role: null, error: `Auth error: ${error.message}` };
+ // }
if (!user) {
return { user: null, role: null, error: "No user found in the response" };
}
diff --git a/autogpt_platform/frontend/src/hooks/useAgentGraph.ts b/autogpt_platform/frontend/src/hooks/useAgentGraph.ts
index c8cdb8862f..f241689604 100644
--- a/autogpt_platform/frontend/src/hooks/useAgentGraph.ts
+++ b/autogpt_platform/frontend/src/hooks/useAgentGraph.ts
@@ -26,7 +26,6 @@ const ajv = new Ajv({ strict: false, allErrors: true });
export default function useAgentGraph(
flowID?: string,
- template?: boolean,
passDataToBeads?: boolean,
) {
const { toast } = useToast();
@@ -333,13 +332,11 @@ export default function useAgentGraph(
useEffect(() => {
if (!flowID || availableNodes.length == 0) return;
- (template ? api.getTemplate(flowID) : api.getGraph(flowID)).then(
- (graph) => {
- console.debug("Loading graph");
- loadGraph(graph);
- },
- );
- }, [flowID, template, availableNodes, api, loadGraph]);
+ api.getGraph(flowID).then((graph) => {
+ console.debug("Loading graph");
+ loadGraph(graph);
+ });
+ }, [flowID, availableNodes, api, loadGraph]);
// Update nodes with execution data
useEffect(() => {
@@ -643,204 +640,189 @@ export default function useAgentGraph(
[availableNodes],
);
- const _saveAgent = useCallback(
- async (asTemplate: boolean = false) => {
- //FIXME frontend ids should be resolved better (e.g. returned from the server)
- // currently this relays on block_id and position
- const blockIdToNodeIdMap: Record = {};
+ const _saveAgent = useCallback(async () => {
+ //FIXME frontend ids should be resolved better (e.g. returned from the server)
+ // currently this relays on block_id and position
+ const blockIdToNodeIdMap: Record = {};
- nodes.forEach((node) => {
- const key = `${node.data.block_id}_${node.position.x}_${node.position.y}`;
- blockIdToNodeIdMap[key] = node.id;
- });
+ nodes.forEach((node) => {
+ const key = `${node.data.block_id}_${node.position.x}_${node.position.y}`;
+ blockIdToNodeIdMap[key] = node.id;
+ });
- const formattedNodes = nodes.map((node) => {
- const inputDefault = prepareNodeInputData(node);
- const inputNodes = edges
- .filter((edge) => edge.target === node.id)
- .map((edge) => ({
- name: edge.targetHandle || "",
- node_id: edge.source,
- }));
-
- const outputNodes = edges
- .filter((edge) => edge.source === node.id)
- .map((edge) => ({
- name: edge.sourceHandle || "",
- node_id: edge.target,
- }));
-
- return {
- id: node.id,
- block_id: node.data.block_id,
- input_default: inputDefault,
- input_nodes: inputNodes,
- output_nodes: outputNodes,
- data: {
- ...node.data,
- hardcodedValues: removeEmptyStringsAndNulls(
- node.data.hardcodedValues,
- ),
- },
- metadata: { position: node.position },
- };
- });
-
- const links = edges.map((edge) => ({
- source_id: edge.source,
- sink_id: edge.target,
- source_name: edge.sourceHandle || "",
- sink_name: edge.targetHandle || "",
- }));
-
- const payload = {
- id: savedAgent?.id!,
- name: agentName || `New Agent ${new Date().toISOString()}`,
- description: agentDescription || "",
- nodes: formattedNodes,
- links: links,
- };
-
- // To avoid saving the same graph, we compare the payload with the saved agent.
- // Differences in IDs are ignored.
- const comparedPayload = {
- ...(({ id, ...rest }) => rest)(payload),
- nodes: payload.nodes.map(
- ({ id, data, input_nodes, output_nodes, ...rest }) => rest,
- ),
- links: payload.links.map(({ source_id, sink_id, ...rest }) => rest),
- };
- const comparedSavedAgent = {
- name: savedAgent?.name,
- description: savedAgent?.description,
- nodes: savedAgent?.nodes.map((v) => ({
- block_id: v.block_id,
- input_default: v.input_default,
- metadata: v.metadata,
- })),
- links: savedAgent?.links.map((v) => ({
- sink_name: v.sink_name,
- source_name: v.source_name,
- })),
- };
-
- let newSavedAgent = null;
- if (savedAgent && deepEquals(comparedPayload, comparedSavedAgent)) {
- console.warn("No need to save: Graph is the same as version on server");
- newSavedAgent = savedAgent;
- } else {
- console.debug(
- "Saving new Graph version; old vs new:",
- comparedPayload,
- payload,
- );
- setNodesSyncedWithSavedAgent(false);
-
- newSavedAgent = savedAgent
- ? await (savedAgent.is_template
- ? api.updateTemplate(savedAgent.id, payload)
- : api.updateGraph(savedAgent.id, payload))
- : await (asTemplate
- ? api.createTemplate(payload)
- : api.createGraph(payload));
-
- console.debug("Response from the API:", newSavedAgent);
- }
-
- // Route the URL to the new flow ID if it's a new agent.
- if (!savedAgent) {
- const path = new URLSearchParams(searchParams);
- path.set("flowID", newSavedAgent.id);
- router.push(`${pathname}?${path.toString()}`);
- return;
- }
-
- // Update the node IDs on the frontend
- setSavedAgent(newSavedAgent);
- setNodes((prev) => {
- return newSavedAgent.nodes
- .map((backendNode) => {
- const key = `${backendNode.block_id}_${backendNode.metadata.position.x}_${backendNode.metadata.position.y}`;
- const frontendNodeId = blockIdToNodeIdMap[key];
- const frontendNode = prev.find(
- (node) => node.id === frontendNodeId,
- );
-
- return frontendNode
- ? {
- ...frontendNode,
- position: backendNode.metadata.position,
- data: {
- ...frontendNode.data,
- hardcodedValues: removeEmptyStringsAndNulls(
- frontendNode.data.hardcodedValues,
- ),
- status: undefined,
- backend_id: backendNode.id,
- webhookId: backendNode.webhook_id,
- executionResults: [],
- },
- }
- : null;
- })
- .filter((node) => node !== null);
- });
- // Reset bead count
- setEdges((edges) => {
- return edges.map((edge) => ({
- ...edge,
- data: {
- ...edge.data,
- edgeColor: edge.data?.edgeColor!,
- beadUp: 0,
- beadDown: 0,
- beadData: [],
- },
+ const formattedNodes = nodes.map((node) => {
+ const inputDefault = prepareNodeInputData(node);
+ const inputNodes = edges
+ .filter((edge) => edge.target === node.id)
+ .map((edge) => ({
+ name: edge.targetHandle || "",
+ node_id: edge.source,
}));
- });
- },
- [
- api,
- nodes,
- edges,
- pathname,
- router,
- searchParams,
- savedAgent,
- agentName,
- agentDescription,
- prepareNodeInputData,
- ],
- );
- const saveAgent = useCallback(
- async (asTemplate: boolean = false) => {
- try {
- await _saveAgent(asTemplate);
- } catch (error) {
- const errorMessage =
- error instanceof Error ? error.message : String(error);
- console.error("Error saving agent", error);
- toast({
- variant: "destructive",
- title: "Error saving agent",
- description: errorMessage,
- });
- }
- },
- [_saveAgent, toast],
- );
+ const outputNodes = edges
+ .filter((edge) => edge.source === node.id)
+ .map((edge) => ({
+ name: edge.sourceHandle || "",
+ node_id: edge.target,
+ }));
- const requestSave = useCallback(
- (asTemplate: boolean) => {
- saveAgent(asTemplate);
- setSaveRunRequest({
- request: "save",
- state: "saving",
+ return {
+ id: node.id,
+ block_id: node.data.block_id,
+ input_default: inputDefault,
+ input_nodes: inputNodes,
+ output_nodes: outputNodes,
+ data: {
+ ...node.data,
+ hardcodedValues: removeEmptyStringsAndNulls(
+ node.data.hardcodedValues,
+ ),
+ },
+ metadata: { position: node.position },
+ };
+ });
+
+ const links = edges.map((edge) => ({
+ source_id: edge.source,
+ sink_id: edge.target,
+ source_name: edge.sourceHandle || "",
+ sink_name: edge.targetHandle || "",
+ }));
+
+ const payload = {
+ id: savedAgent?.id!,
+ name: agentName || `New Agent ${new Date().toISOString()}`,
+ description: agentDescription || "",
+ nodes: formattedNodes,
+ links: links,
+ };
+
+ // To avoid saving the same graph, we compare the payload with the saved agent.
+ // Differences in IDs are ignored.
+ const comparedPayload = {
+ ...(({ id, ...rest }) => rest)(payload),
+ nodes: payload.nodes.map(
+ ({ id, data, input_nodes, output_nodes, ...rest }) => rest,
+ ),
+ links: payload.links.map(({ source_id, sink_id, ...rest }) => rest),
+ };
+ const comparedSavedAgent = {
+ name: savedAgent?.name,
+ description: savedAgent?.description,
+ nodes: savedAgent?.nodes.map((v) => ({
+ block_id: v.block_id,
+ input_default: v.input_default,
+ metadata: v.metadata,
+ })),
+ links: savedAgent?.links.map((v) => ({
+ sink_name: v.sink_name,
+ source_name: v.source_name,
+ })),
+ };
+
+ let newSavedAgent = null;
+ if (savedAgent && deepEquals(comparedPayload, comparedSavedAgent)) {
+ console.warn("No need to save: Graph is the same as version on server");
+ newSavedAgent = savedAgent;
+ } else {
+ console.debug(
+ "Saving new Graph version; old vs new:",
+ comparedPayload,
+ payload,
+ );
+ setNodesSyncedWithSavedAgent(false);
+
+ newSavedAgent = savedAgent
+ ? await api.updateGraph(savedAgent.id, payload)
+ : await api.createGraph(payload);
+
+ console.debug("Response from the API:", newSavedAgent);
+ }
+
+ // Route the URL to the new flow ID if it's a new agent.
+ if (!savedAgent) {
+ const path = new URLSearchParams(searchParams);
+ path.set("flowID", newSavedAgent.id);
+ router.push(`${pathname}?${path.toString()}`);
+ return;
+ }
+
+ // Update the node IDs on the frontend
+ setSavedAgent(newSavedAgent);
+ setNodes((prev) => {
+ return newSavedAgent.nodes
+ .map((backendNode) => {
+ const key = `${backendNode.block_id}_${backendNode.metadata.position.x}_${backendNode.metadata.position.y}`;
+ const frontendNodeId = blockIdToNodeIdMap[key];
+ const frontendNode = prev.find((node) => node.id === frontendNodeId);
+
+ return frontendNode
+ ? {
+ ...frontendNode,
+ position: backendNode.metadata.position,
+ data: {
+ ...frontendNode.data,
+ hardcodedValues: removeEmptyStringsAndNulls(
+ frontendNode.data.hardcodedValues,
+ ),
+ status: undefined,
+ backend_id: backendNode.id,
+ webhookId: backendNode.webhook_id,
+ executionResults: [],
+ },
+ }
+ : null;
+ })
+ .filter((node) => node !== null);
+ });
+ // Reset bead count
+ setEdges((edges) => {
+ return edges.map((edge) => ({
+ ...edge,
+ data: {
+ ...edge.data,
+ edgeColor: edge.data?.edgeColor!,
+ beadUp: 0,
+ beadDown: 0,
+ beadData: [],
+ },
+ }));
+ });
+ }, [
+ api,
+ nodes,
+ edges,
+ pathname,
+ router,
+ searchParams,
+ savedAgent,
+ agentName,
+ agentDescription,
+ prepareNodeInputData,
+ ]);
+
+ const saveAgent = useCallback(async () => {
+ try {
+ await _saveAgent();
+ } catch (error) {
+ const errorMessage =
+ error instanceof Error ? error.message : String(error);
+ console.error("Error saving agent", error);
+ toast({
+ variant: "destructive",
+ title: "Error saving agent",
+ description: errorMessage,
});
- },
- [saveAgent],
- );
+ }
+ }, [_saveAgent, toast]);
+
+ const requestSave = useCallback(() => {
+ saveAgent();
+ setSaveRunRequest({
+ request: "save",
+ state: "saving",
+ });
+ }, [saveAgent]);
const requestSaveAndRun = useCallback(() => {
saveAgent();
diff --git a/autogpt_platform/frontend/src/hooks/useUser.ts b/autogpt_platform/frontend/src/hooks/useUser.ts
index 75398e70df..f9768b5f80 100644
--- a/autogpt_platform/frontend/src/hooks/useUser.ts
+++ b/autogpt_platform/frontend/src/hooks/useUser.ts
@@ -2,7 +2,7 @@
import { useEffect, useState } from "react";
import { User, Session } from "@supabase/supabase-js";
-import { useSupabase } from "@/components/SupabaseProvider";
+import { useSupabase } from "@/components/providers/SupabaseProvider";
const useUser = () => {
const { supabase, isLoading: isSupabaseLoading } = useSupabase();
diff --git a/autogpt_platform/frontend/src/lib/autogpt-server-api/baseClient.ts b/autogpt_platform/frontend/src/lib/autogpt-server-api/baseClient.ts
index 00ca4566bf..e1ca7e3189 100644
--- a/autogpt_platform/frontend/src/lib/autogpt-server-api/baseClient.ts
+++ b/autogpt_platform/frontend/src/lib/autogpt-server-api/baseClient.ts
@@ -14,10 +14,21 @@ import {
GraphMeta,
GraphUpdateable,
NodeExecutionResult,
+ MyAgentsResponse,
OAuth2Credentials,
- Schedule,
- ScheduleCreatable,
+ ProfileDetails,
User,
+ StoreAgentsResponse,
+ StoreAgentDetails,
+ CreatorsResponse,
+ CreatorDetails,
+ StoreSubmissionsResponse,
+ StoreSubmissionRequest,
+ StoreSubmission,
+ StoreReviewCreate,
+ StoreReview,
+ ScheduleCreatable,
+ Schedule,
} from "./types";
export default class BaseAutoGPTServerAPI {
@@ -28,13 +39,13 @@ export default class BaseAutoGPTServerAPI {
private wsMessageHandlers: Record void>> = {};
private supabaseClient: SupabaseClient | null = null;
heartbeatInterval: number | null = null;
- readonly HEARTBEAT_INTERVAL = 30000; // 30 seconds
- readonly HEARTBEAT_TIMEOUT = 10000; // 10 seconds
+ readonly HEARTBEAT_INTERVAL = 10_0000; // 30 seconds
+ readonly HEARTBEAT_TIMEOUT = 10_000; // 10 seconds
heartbeatTimeoutId: number | null = null;
constructor(
baseUrl: string = process.env.NEXT_PUBLIC_AGPT_SERVER_URL ||
- "http://localhost:8006/api/v1",
+ "http://localhost:8006/api/",
wsUrl: string = process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL ||
"ws://localhost:8001/ws",
supabaseClient: SupabaseClient | null = null,
@@ -56,8 +67,12 @@ export default class BaseAutoGPTServerAPI {
return this._request("POST", "/auth/user", {});
}
- getUserCredit(): Promise<{ credits: number }> {
- return this._get(`/credits`);
+ getUserCredit(page?: string): Promise<{ credits: number }> {
+ try {
+ return this._get(`/credits`, undefined, page);
+ } catch (error) {
+ return Promise.resolve({ credits: 0 });
+ }
}
getBlocks(): Promise {
@@ -72,10 +87,6 @@ export default class BaseAutoGPTServerAPI {
return this._get(`/executions`);
}
- listTemplates(): Promise {
- return this._get("/templates");
- }
-
getGraph(
id: string,
version?: number,
@@ -91,55 +102,22 @@ export default class BaseAutoGPTServerAPI {
return this._get(`/graphs/${id}`, query);
}
- getTemplate(id: string, version?: number): Promise {
- const query = version !== undefined ? `?version=${version}` : "";
- return this._get(`/templates/${id}` + query);
- }
-
getGraphAllVersions(id: string): Promise {
return this._get(`/graphs/${id}/versions`);
}
- getTemplateAllVersions(id: string): Promise {
- return this._get(`/templates/${id}/versions`);
- }
-
createGraph(graphCreateBody: GraphCreatable): Promise;
- createGraph(fromTemplateID: string, templateVersion: number): Promise;
- createGraph(
- graphOrTemplateID: GraphCreatable | string,
- templateVersion?: number,
- ): Promise {
- let requestBody: GraphCreateRequestBody;
- if (typeof graphOrTemplateID == "string") {
- if (templateVersion == undefined) {
- throw new Error("templateVersion not specified");
- }
- requestBody = {
- template_id: graphOrTemplateID,
- template_version: templateVersion,
- };
- } else {
- requestBody = { graph: graphOrTemplateID };
- }
+ createGraph(graphID: GraphCreatable | string): Promise {
+ let requestBody = { graph: graphID } as GraphCreateRequestBody;
return this._request("POST", "/graphs", requestBody);
}
- createTemplate(templateCreateBody: GraphCreatable): Promise {
- const requestBody: GraphCreateRequestBody = { graph: templateCreateBody };
- return this._request("POST", "/templates", requestBody);
- }
-
updateGraph(id: string, graph: GraphUpdateable): Promise {
return this._request("PUT", `/graphs/${id}`, graph);
}
- updateTemplate(id: string, template: GraphUpdateable): Promise {
- return this._request("PUT", `/templates/${id}`, template);
- }
-
deleteGraph(id: string): Promise {
return this._request("DELETE", `/graphs/${id}`);
}
@@ -250,8 +228,107 @@ export default class BaseAutoGPTServerAPI {
return this._request("POST", "/analytics/log_raw_analytics", analytic);
}
- private async _get(path: string, query?: Record) {
- return this._request("GET", path, query);
+ ///////////////////////////////////////////
+ /////////// V2 STORE API /////////////////
+ /////////////////////////////////////////
+
+ getStoreProfile(page?: string): Promise {
+ try {
+ console.log("+++ Making API from: ", page);
+ const result = this._get("/store/profile", undefined, page);
+ return result;
+ } catch (error) {
+ console.error("Error fetching store profile:", error);
+ return Promise.resolve(null);
+ }
+ }
+
+ getStoreAgents(params?: {
+ featured?: boolean;
+ creator?: string;
+ sorted_by?: string;
+ search_query?: string;
+ category?: string;
+ page?: number;
+ page_size?: number;
+ }): Promise {
+ return this._get("/store/agents", params);
+ }
+
+ getStoreAgent(
+ username: string,
+ agentName: string,
+ ): Promise {
+ return this._get(`/store/agents/${username}/${agentName}`);
+ }
+
+ getStoreCreators(params?: {
+ featured?: boolean;
+ search_query?: string;
+ sorted_by?: string;
+ page?: number;
+ page_size?: number;
+ }): Promise {
+ return this._get("/store/creators", params);
+ }
+
+ getStoreCreator(username: string): Promise {
+ return this._get(`/store/creator/${username}`);
+ }
+
+ getStoreSubmissions(params?: {
+ page?: number;
+ page_size?: number;
+ }): Promise {
+ return this._get("/store/submissions", params);
+ }
+
+ createStoreSubmission(
+ submission: StoreSubmissionRequest,
+ ): Promise {
+ return this._request("POST", "/store/submissions", submission);
+ }
+
+ deleteStoreSubmission(submission_id: string): Promise {
+ return this._request("DELETE", `/store/submissions/${submission_id}`);
+ }
+
+ uploadStoreSubmissionMedia(file: File): Promise {
+ const formData = new FormData();
+ formData.append("file", file);
+ return this._uploadFile("/store/submissions/media", file);
+ }
+
+ updateStoreProfile(profile: ProfileDetails): Promise {
+ return this._request("POST", "/store/profile", profile);
+ }
+
+ reviewAgent(
+ username: string,
+ agentName: string,
+ review: StoreReviewCreate,
+ ): Promise {
+ console.log("Reviewing agent: ", username, agentName, review);
+ return this._request(
+ "POST",
+ `/store/agents/${username}/${agentName}/review`,
+ review,
+ );
+ }
+
+ getMyAgents(params?: {
+ page?: number;
+ page_size?: number;
+ }): Promise {
+ return this._get("/store/myagents", params);
+ }
+
+ ///////////////////////////////////////////
+ /////////// INTERNAL FUNCTIONS ////////////
+ //////////////////////////////??///////////
+
+ private async _get(path: string, query?: Record, page?: string) {
+ return this._request("GET", path, query, page);
}
async createSchedule(schedule: ScheduleCreatable): Promise {
@@ -266,18 +343,93 @@ export default class BaseAutoGPTServerAPI {
return this._get(`/schedules`);
}
+ private async _uploadFile(path: string, file: File): Promise {
+ // Get session with retry logic
+ let token = "no-token-found";
+ let retryCount = 0;
+ const maxRetries = 3;
+
+ while (retryCount < maxRetries) {
+ const {
+ data: { session },
+ } = (await this.supabaseClient?.auth.getSession()) || {
+ data: { session: null },
+ };
+
+ if (session?.access_token) {
+ token = session.access_token;
+ break;
+ }
+
+ retryCount++;
+ if (retryCount < maxRetries) {
+ await new Promise((resolve) => setTimeout(resolve, 100 * retryCount));
+ }
+ }
+
+ // Create a FormData object and append the file
+ const formData = new FormData();
+ formData.append("file", file);
+
+ const response = await fetch(this.baseUrl + path, {
+ method: "POST",
+ headers: {
+ ...(token && { Authorization: `Bearer ${token}` }),
+ },
+ body: formData,
+ });
+
+ if (!response.ok) {
+ throw new Error(`Error uploading file: ${response.statusText}`);
+ }
+
+ // Parse the response appropriately
+ const media_url = await response.text();
+ return media_url;
+ }
+
private async _request(
method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE",
path: string,
payload?: Record,
+ page?: string,
) {
if (method !== "GET") {
console.debug(`${method} ${path} payload:`, payload);
}
- const token =
- (await this.supabaseClient?.auth.getSession())?.data.session
- ?.access_token || "";
+ // Get session with retry logic
+ let token = "no-token-found";
+ let retryCount = 0;
+ const maxRetries = 3;
+
+ while (retryCount < maxRetries) {
+ const {
+ data: { session },
+ } = (await this.supabaseClient?.auth.getSession()) || {
+ data: { session: null },
+ };
+
+ if (session?.access_token) {
+ token = session.access_token;
+ break;
+ }
+
+ retryCount++;
+ if (retryCount < maxRetries) {
+ await new Promise((resolve) => setTimeout(resolve, 100 * retryCount));
+ }
+ }
+ console.log("Request: ", method, path, "from: ", page);
+ if (token === "no-token-found") {
+ console.warn(
+ "No auth token found after retries. This may indicate a session sync issue between client and server.",
+ );
+ console.debug("Last session attempt:", retryCount);
+ } else {
+ console.log("Auth token found");
+ }
+ console.log("--------------------------------");
let url = this.baseUrl + path;
const payloadAsQuery = ["GET", "DELETE"].includes(method);
@@ -300,13 +452,14 @@ export default class BaseAutoGPTServerAPI {
if (!response.ok) {
console.warn(`${method} ${path} returned non-OK response:`, response);
- if (
- response.status === 403 &&
- typeof window !== "undefined" // Check if in browser environment
- ) {
- window.location.href = "/login";
- return null;
- }
+ // console.warn("baseClient is attempting to redirect by changing window location")
+ // if (
+ // response.status === 403 &&
+ // response.statusText === "Not authenticated" &&
+ // typeof window !== "undefined" // Check if in browser environment
+ // ) {
+ // window.location.href = "/login";
+ // }
let errorDetail;
try {
@@ -476,14 +629,9 @@ export default class BaseAutoGPTServerAPI {
/* *** UTILITY TYPES *** */
-type GraphCreateRequestBody =
- | {
- template_id: string;
- template_version: number;
- }
- | {
- graph: GraphCreatable;
- };
+type GraphCreateRequestBody = {
+ graph: GraphCreatable;
+};
type WebsocketMessageTypeMap = {
subscribe: { graph_id: string };
diff --git a/autogpt_platform/frontend/src/lib/autogpt-server-api/client.ts b/autogpt_platform/frontend/src/lib/autogpt-server-api/client.ts
index 6d7a4d25c1..4f71cae078 100644
--- a/autogpt_platform/frontend/src/lib/autogpt-server-api/client.ts
+++ b/autogpt_platform/frontend/src/lib/autogpt-server-api/client.ts
@@ -1,3 +1,4 @@
+import { SupabaseClient } from "@supabase/supabase-js";
import { createClient } from "../supabase/client";
import BaseAutoGPTServerAPI from "./baseClient";
@@ -7,8 +8,8 @@ export class AutoGPTServerAPI extends BaseAutoGPTServerAPI {
"http://localhost:8006/api",
wsUrl: string = process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL ||
"ws://localhost:8001/ws",
+ supabaseClient: SupabaseClient | null = createClient(),
) {
- const supabaseClient = createClient();
super(baseUrl, wsUrl, supabaseClient);
}
}
diff --git a/autogpt_platform/frontend/src/lib/autogpt-server-api/clientServer.ts b/autogpt_platform/frontend/src/lib/autogpt-server-api/clientServer.ts
index 38f2bd316c..097a18149c 100644
--- a/autogpt_platform/frontend/src/lib/autogpt-server-api/clientServer.ts
+++ b/autogpt_platform/frontend/src/lib/autogpt-server-api/clientServer.ts
@@ -2,13 +2,15 @@ import { createServerClient } from "../supabase/server";
import BaseAutoGPTServerAPI from "./baseClient";
export default class AutoGPTServerAPIServerSide extends BaseAutoGPTServerAPI {
+ private cachedToken: string | null = null;
+
constructor(
baseUrl: string = process.env.NEXT_PUBLIC_AGPT_SERVER_URL ||
"http://localhost:8006/api",
wsUrl: string = process.env.NEXT_PUBLIC_AGPT_WS_SERVER_URL ||
"ws://localhost:8001/ws",
+ supabaseClient = createServerClient(),
) {
- const supabaseClient = createServerClient();
super(baseUrl, wsUrl, supabaseClient);
}
}
diff --git a/autogpt_platform/frontend/src/lib/autogpt-server-api/index.ts b/autogpt_platform/frontend/src/lib/autogpt-server-api/index.ts
index 60047d2f3a..d1575b7ef1 100644
--- a/autogpt_platform/frontend/src/lib/autogpt-server-api/index.ts
+++ b/autogpt_platform/frontend/src/lib/autogpt-server-api/index.ts
@@ -2,6 +2,5 @@ import { AutoGPTServerAPI } from "./client";
export default AutoGPTServerAPI;
export * from "./client";
-export * from "./context";
export * from "./types";
export * from "./utils";
diff --git a/autogpt_platform/frontend/src/lib/autogpt-server-api/types.ts b/autogpt_platform/frontend/src/lib/autogpt-server-api/types.ts
index cf9299be96..af43687bd3 100644
--- a/autogpt_platform/frontend/src/lib/autogpt-server-api/types.ts
+++ b/autogpt_platform/frontend/src/lib/autogpt-server-api/types.ts
@@ -204,7 +204,6 @@ export type GraphMeta = {
id: string;
version: number;
is_active: boolean;
- is_template: boolean;
name: string;
description: string;
input_schema: BlockIOObjectSubSchema;
@@ -219,16 +218,10 @@ export type Graph = GraphMeta & {
export type GraphUpdateable = Omit<
Graph,
- | "version"
- | "is_active"
- | "is_template"
- | "links"
- | "input_schema"
- | "output_schema"
+ "version" | "is_active" | "links" | "input_schema" | "output_schema"
> & {
version?: number;
is_active?: boolean;
- is_template?: boolean;
links: Array;
input_schema?: BlockIOObjectSubSchema;
output_schema?: BlockIOObjectSubSchema;
@@ -352,6 +345,111 @@ export type AnalyticsDetails = {
index: string;
};
+export type Pagination = {
+ total_items: number;
+ total_pages: number;
+ current_page: number;
+ page_size: number;
+};
+
+export type StoreAgent = {
+ slug: string;
+ agent_name: string;
+ agent_image: string;
+ creator: string;
+ creator_avatar: string;
+ sub_heading: string;
+ description: string;
+ runs: number;
+ rating: number;
+};
+
+export type StoreAgentsResponse = {
+ agents: StoreAgent[];
+ pagination: Pagination;
+};
+
+export type StoreAgentDetails = {
+ store_listing_version_id: string;
+ slug: string;
+ updated_at: string;
+ agent_name: string;
+ agent_video: string;
+ agent_image: string[];
+ creator: string;
+ creator_avatar: string;
+ sub_heading: string;
+ description: string;
+ categories: string[];
+ runs: number;
+ rating: number;
+ versions: string[];
+};
+
+export type Creator = {
+ name: string;
+ username: string;
+ description: string;
+ avatar_url: string;
+ num_agents: number;
+ agent_rating: number;
+ agent_runs: number;
+};
+
+export type CreatorsResponse = {
+ creators: Creator[];
+ pagination: Pagination;
+};
+
+export type CreatorDetails = {
+ name: string;
+ username: string;
+ description: string;
+ links: string[];
+ avatar_url: string;
+ agent_rating: number;
+ agent_runs: number;
+ top_categories: string[];
+};
+
+export type StoreSubmission = {
+ agent_id: string;
+ agent_version: number;
+ name: string;
+ sub_heading: string;
+ description: string;
+ image_urls: string[];
+ date_submitted: string;
+ status: string;
+ runs: number;
+ rating: number;
+};
+
+export type StoreSubmissionsResponse = {
+ submissions: StoreSubmission[];
+ pagination: Pagination;
+};
+
+export type StoreSubmissionRequest = {
+ agent_id: string;
+ agent_version: number;
+ slug: string;
+ name: string;
+ sub_heading: string;
+ video_url?: string;
+ image_urls: string[];
+ description: string;
+ categories: string[];
+};
+
+export type ProfileDetails = {
+ name: string;
+ username: string;
+ description: string;
+ links: string[];
+ avatar_url: string;
+};
+
export type Schedule = {
id: string;
name: string;
@@ -368,3 +466,26 @@ export type ScheduleCreatable = {
graph_id: string;
input_data: { [key: string]: any };
};
+
+export type MyAgent = {
+ agent_id: string;
+ agent_version: number;
+ agent_name: string;
+ last_edited: string;
+};
+
+export type MyAgentsResponse = {
+ agents: MyAgent[];
+ pagination: Pagination;
+};
+
+export type StoreReview = {
+ score: number;
+ comments?: string;
+};
+
+export type StoreReviewCreate = {
+ store_listing_version_id: string;
+ score: number;
+ comments?: string;
+};
diff --git a/autogpt_platform/frontend/src/lib/marketplace-api/base-client.ts b/autogpt_platform/frontend/src/lib/marketplace-api/base-client.ts
deleted file mode 100644
index 0c57935805..0000000000
--- a/autogpt_platform/frontend/src/lib/marketplace-api/base-client.ts
+++ /dev/null
@@ -1,281 +0,0 @@
-import { SupabaseClient } from "@supabase/supabase-js";
-import {
- AddAgentRequest,
- AgentResponse,
- ListAgentsParams,
- AgentDetailResponse,
- AgentWithRank,
- FeaturedAgentResponse,
- UniqueCategoriesResponse,
- AnalyticsEvent,
- ListResponse,
- Agent,
- AgentListResponse,
-} from "./types";
-
-export default class BaseMarketplaceAPI {
- private baseUrl: string;
- private supabaseClient: SupabaseClient | null = null;
-
- constructor(
- baseUrl: string = process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market",
- supabaseClient: SupabaseClient | null = null,
- ) {
- this.baseUrl = baseUrl;
- this.supabaseClient = supabaseClient;
- }
-
- async checkHealth(): Promise<{ status: string }> {
- try {
- this._get("/health");
- return { status: "available" };
- } catch (error) {
- return { status: "unavailable" };
- }
- }
-
- async listAgents(params: ListAgentsParams = {}): Promise {
- const queryParams = new URLSearchParams(
- Object.entries(params).filter(([_, v]) => v != null) as [
- string,
- string,
- ][],
- );
- return this._get(`/agents?${queryParams.toString()}`);
- }
-
- async getTopDownloadedAgents(
- page: number = 1,
- pageSize: number = 10,
- ): Promise> {
- return this._get(
- `/top-downloads/agents?page=${page}&page_size=${pageSize}`,
- );
- }
-
- async getFeaturedAgents(
- page: number = 1,
- pageSize: number = 10,
- ): Promise> {
- return this._get(`/featured/agents?page=${page}&page_size=${pageSize}`);
- }
-
- async searchAgents(
- query: string,
- page: number = 1,
- pageSize: number = 10,
- categories?: string[],
- descriptionThreshold: number = 60,
- sortBy: string = "rank",
- sortOrder: "asc" | "desc" = "desc",
- ): Promise> {
- const queryParams = new URLSearchParams({
- query,
- page: page.toString(),
- page_size: pageSize.toString(),
- description_threshold: descriptionThreshold.toString(),
- sort_by: sortBy,
- sort_order: sortOrder,
- });
-
- if (categories && categories.length > 0) {
- categories.forEach((category) =>
- queryParams.append("categories", category),
- );
- }
-
- return this._get(`/search?${queryParams.toString()}`);
- }
-
- async getAgentDetails(
- id: string,
- version?: number,
- ): Promise {
- const queryParams = new URLSearchParams();
- if (version) queryParams.append("version", version.toString());
- return this._get(`/agents/${id}?${queryParams.toString()}`);
- }
-
- async downloadAgent(
- id: string,
- version?: number,
- ): Promise {
- const queryParams = new URLSearchParams();
- if (version) queryParams.append("version", version.toString());
- return this._get(`/agents/${id}/download?${queryParams.toString()}`);
- }
-
- async submitAgent(
- graph: { [key: string]: any },
- author: string,
- keywords: string[],
- categories: string[],
- ): Promise {
- return this._post("/agents/submit", {
- graph,
- author,
- keywords,
- categories,
- });
- }
-
- async downloadAgentFile(id: string, version?: number): Promise {
- const queryParams = new URLSearchParams();
- if (version) queryParams.append("version", version.toString());
- return this._getBlob(
- `/agents/${id}/download-file?${queryParams.toString()}`,
- );
- }
-
- async getAgentSubmissions(): Promise> {
- return this._get("/admin/agent/submissions");
- }
-
- async createAgentEntry(request: AddAgentRequest): Promise {
- return this._post("/admin/agent", request);
- }
-
- async approveAgentSubmission(
- agentId: string,
- version: number,
- comments: string = "",
- ): Promise {
- return this._post("/admin/agent/submissions", {
- agent_id: agentId,
- version: version,
- status: "APPROVED",
- comments: comments,
- });
- }
-
- async rejectAgentSubmission(
- agentId: string,
- version: number,
- comments: string = "",
- ): Promise {
- return this._post("/admin/agent/submissions", {
- agent_id: agentId,
- version: version,
- status: "REJECTED",
- comments: comments,
- });
- }
-
- async addFeaturedAgent(
- agentId: string,
- categories: string[],
- ): Promise {
- const response = await this._post(`/admin/agent/featured/${agentId}`, {
- categories: categories,
- });
- return response;
- }
-
- async removeFeaturedAgent(
- agentId: string,
- categories: string[],
- ): Promise {
- return this._delete(`/admin/agent/featured/${agentId}`, {
- categories: categories,
- });
- }
-
- async getFeaturedAgent(agentId: string): Promise {
- return this._get(`/admin/agent/featured/${agentId}`);
- }
-
- async getNotFeaturedAgents(
- page: number = 1,
- pageSize: number = 10,
- ): Promise> {
- return this._get(
- `/admin/agent/not-featured?page=${page}&page_size=${pageSize}`,
- );
- }
-
- async getCategories(): Promise {
- return this._get("/admin/categories");
- }
-
- async makeAnalyticsEvent(event: AnalyticsEvent) {
- if (event.event_name === "agent_installed_from_marketplace") {
- return this._post("/analytics/agent-installed", event.event_data);
- }
- throw new Error("Invalid event name");
- }
-
- private async _get(path: string) {
- return this._request("GET", path);
- }
-
- private async _post(path: string, payload: { [key: string]: any }) {
- return this._request("POST", path, payload);
- }
-
- private async _delete(path: string, payload: { [key: string]: any }) {
- return this._request("DELETE", path, payload);
- }
-
- private async _getBlob(path: string): Promise {
- const response = await fetch(this.baseUrl + path);
- if (!response.ok) {
- const errorData = await response.json();
- console.warn(
- `GET ${path} returned non-OK response:`,
- errorData.detail,
- response,
- );
- throw new Error(`HTTP error ${response.status}! ${errorData.detail}`);
- }
- return response.blob();
- }
-
- private async _request(
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE",
- path: string,
- payload?: { [key: string]: any },
- ) {
- if (method != "GET") {
- console.debug(`${method} ${path} payload:`, payload);
- }
-
- const token =
- (await this.supabaseClient?.auth.getSession())?.data.session
- ?.access_token || "";
-
- const response = await fetch(this.baseUrl + path, {
- method,
- headers:
- method != "GET"
- ? {
- "Content-Type": "application/json",
- Authorization: token ? `Bearer ${token}` : "",
- }
- : {
- Authorization: token ? `Bearer ${token}` : "",
- },
- body: JSON.stringify(payload),
- });
-
- const response_data = await response.json();
-
- if (!response.ok) {
- console.warn(
- `${method} ${path} returned non-OK response:`,
- response_data.detail,
- response,
- );
- try {
- const response_data = await response.json();
- } catch (e) {
- console.warn("Failed to parse response body", e);
- }
-
- throw new Error(
- `HTTP error ${response.status}! ${response_data.detail} ${method} ${response.url}`,
- );
- }
- return response_data;
- }
-}
diff --git a/autogpt_platform/frontend/src/lib/marketplace-api/browser-client.ts b/autogpt_platform/frontend/src/lib/marketplace-api/browser-client.ts
deleted file mode 100644
index ae12f1b25d..0000000000
--- a/autogpt_platform/frontend/src/lib/marketplace-api/browser-client.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-import { createClient } from "../supabase/client";
-import BaseMarketplaceAPI from "./base-client";
-
-export default class ClientSideMarketplaceAPI extends BaseMarketplaceAPI {
- constructor(
- baseUrl: string = process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market",
- ) {
- const supabaseClient = createClient();
- super(baseUrl, supabaseClient);
- }
-}
diff --git a/autogpt_platform/frontend/src/lib/marketplace-api/index.ts b/autogpt_platform/frontend/src/lib/marketplace-api/index.ts
deleted file mode 100644
index 8542abbbcb..0000000000
--- a/autogpt_platform/frontend/src/lib/marketplace-api/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-import MarketplaceAPI from "./browser-client";
-
-export default MarketplaceAPI;
-export * from "./types";
diff --git a/autogpt_platform/frontend/src/lib/marketplace-api/server-client.ts b/autogpt_platform/frontend/src/lib/marketplace-api/server-client.ts
deleted file mode 100644
index f3f91e8a17..0000000000
--- a/autogpt_platform/frontend/src/lib/marketplace-api/server-client.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-import { createServerClient } from "../supabase/server";
-import BaseMarketplaceAPI from "./base-client";
-
-export default class ServerSideMarketplaceAPI extends BaseMarketplaceAPI {
- constructor(
- baseUrl: string = process.env.NEXT_PUBLIC_AGPT_MARKETPLACE_URL ||
- "http://localhost:8015/api/v1/market",
- ) {
- const supabaseClient = createServerClient();
- super(baseUrl, supabaseClient);
- }
-}
diff --git a/autogpt_platform/frontend/src/lib/marketplace-api/types.ts b/autogpt_platform/frontend/src/lib/marketplace-api/types.ts
deleted file mode 100644
index 82516d8acf..0000000000
--- a/autogpt_platform/frontend/src/lib/marketplace-api/types.ts
+++ /dev/null
@@ -1,118 +0,0 @@
-export type ListAgentsParams = {
- page?: number;
- page_size?: number;
- name?: string;
- keyword?: string;
- category?: string;
- description?: string;
- description_threshold?: number;
- sort_by?: string;
- sort_order?: "asc" | "desc";
-};
-
-export type AddAgentRequest = {
- graph: {
- name: string;
- description: string;
- [key: string]: any;
- };
- author: string;
- keywords: string[];
- categories: string[];
-};
-
-export type Agent = {
- id: string;
- name: string;
- description: string;
- author: string;
- keywords: string[];
- categories: string[];
- version: number;
- createdAt: string; // ISO8601 datetime string
- updatedAt: string; // ISO8601 datetime string
- views: number;
- downloads: number;
-};
-
-export type AgentList = {
- agents: Agent[];
- total_count: number;
- page: number;
- page_size: number;
- total_pages: number;
-};
-
-export type FeaturedAgentResponse = {
- agentId: string;
- featuredCategories: string[];
- createdAt: string; // ISO8601 datetime string
- updatedAt: string; // ISO8601 datetime string
- isActive: boolean;
-};
-
-export type FeaturedAgentsList = {
- agents: FeaturedAgentResponse[];
- total_count: number;
- page: number;
- page_size: number;
- total_pages: number;
-};
-
-export type AgentDetail = Agent & {
- graph: Record;
-};
-
-export type AgentWithRank = Agent & {
- rank: number;
-};
-
-export type ListResponse = {
- items: T[];
- total_count: number;
- page: number;
- page_size: number;
- total_pages: number;
-};
-
-export type AgentListResponse = ListResponse;
-export type AgentWithRankListResponse = ListResponse;
-
-export type AgentDetailResponse = AgentDetail;
-
-export type AgentResponse = Agent;
-
-export type UniqueCategoriesResponse = {
- unique_categories: string[];
-};
-
-export enum InstallationLocation {
- LOCAL = "local",
- CLOUD = "cloud",
-}
-
-export type AgentInstalledFromMarketplaceEventData = {
- marketplace_agent_id: string;
- installed_agent_id: string;
- installation_location: InstallationLocation;
-};
-
-export type AgentInstalledFromTemplateEventData = {
- template_id: string;
- installed_agent_id: string;
- installation_location: InstallationLocation;
-};
-
-export interface AgentInstalledFromMarketplaceEvent {
- event_name: "agent_installed_from_marketplace";
- event_data: AgentInstalledFromMarketplaceEventData;
-}
-
-export interface AgentInstalledFromTemplateEvent {
- event_name: "agent_installed_from_template";
- event_data: AgentInstalledFromTemplateEventData;
-}
-
-export type AnalyticsEvent =
- | AgentInstalledFromMarketplaceEvent
- | AgentInstalledFromTemplateEvent;
diff --git a/autogpt_platform/frontend/src/lib/supabase/middleware.ts b/autogpt_platform/frontend/src/lib/supabase/middleware.ts
index babdb3d7f1..e6b4308a2b 100644
--- a/autogpt_platform/frontend/src/lib/supabase/middleware.ts
+++ b/autogpt_platform/frontend/src/lib/supabase/middleware.ts
@@ -1,6 +1,16 @@
import { createServerClient } from "@supabase/ssr";
import { NextResponse, type NextRequest } from "next/server";
+// TODO: Update the protected pages list
+const PROTECTED_PAGES = [
+ "/monitor",
+ "/build",
+ "/store/profile",
+ "/store/settings",
+ "/store/dashboard",
+];
+const ADMIN_PAGES = ["/admin"];
+
export async function updateSession(request: NextRequest) {
let supabaseResponse = NextResponse.next({
request,
@@ -48,15 +58,37 @@ export async function updateSession(request: NextRequest) {
error,
} = await supabase.auth.getUser();
+ // Get the user role
+ const userRole = user?.role;
+ const url = request.nextUrl.clone();
+ const pathname = request.nextUrl.pathname;
+ // AUTH REDIRECTS
+ // If not logged in and trying to access a protected page, redirect to login
if (
- !user &&
- !request.nextUrl.pathname.startsWith("/login") &&
- !request.nextUrl.pathname.startsWith("/auth")
+ (!user &&
+ PROTECTED_PAGES.some((page) => {
+ const combinedPath = `${page}`;
+ // console.log("Checking pathname:", request.nextUrl.pathname, "against:", combinedPath);
+ return request.nextUrl.pathname.startsWith(combinedPath);
+ })) ||
+ ADMIN_PAGES.some((page) => {
+ const combinedPath = `${page}`;
+ // console.log("Checking pathname:", request.nextUrl.pathname, "against:", combinedPath);
+ return request.nextUrl.pathname.startsWith(combinedPath);
+ })
) {
// no user, potentially respond by redirecting the user to the login page
- const url = request.nextUrl.clone();
- url.pathname = "/login";
- // return NextResponse.redirect(url)
+ url.pathname = `/login`;
+ return NextResponse.redirect(url);
+ }
+ if (
+ user &&
+ userRole != "admin" &&
+ ADMIN_PAGES.some((page) => request.nextUrl.pathname.startsWith(`${page}`))
+ ) {
+ // no user, potentially respond by redirecting the user to the login page
+ url.pathname = `/store`;
+ return NextResponse.redirect(url);
}
// IMPORTANT: You *must* return the supabaseResponse object as it is. If you're
diff --git a/autogpt_platform/frontend/src/lib/supabase/server.ts b/autogpt_platform/frontend/src/lib/supabase/server.ts
index 8673969c63..a3d3070bd6 100644
--- a/autogpt_platform/frontend/src/lib/supabase/server.ts
+++ b/autogpt_platform/frontend/src/lib/supabase/server.ts
@@ -32,7 +32,7 @@ export function createServerClient() {
},
);
} catch (error) {
- return null;
+ throw error;
}
}
diff --git a/autogpt_platform/frontend/src/lib/utils.ts b/autogpt_platform/frontend/src/lib/utils.ts
index b4b7747d87..5111198776 100644
--- a/autogpt_platform/frontend/src/lib/utils.ts
+++ b/autogpt_platform/frontend/src/lib/utils.ts
@@ -205,23 +205,25 @@ export function removeEmptyStringsAndNulls(obj: any): any {
}
export const categoryColorMap: Record = {
- AI: "bg-orange-300",
- SOCIAL: "bg-yellow-300",
- TEXT: "bg-green-300",
- SEARCH: "bg-blue-300",
- BASIC: "bg-purple-300",
- INPUT: "bg-cyan-300",
- OUTPUT: "bg-red-300",
- LOGIC: "bg-teal-300",
- DEVELOPER_TOOLS: "bg-fuchsia-300",
- AGENT: "bg-lime-300",
+ AI: "bg-orange-300 dark:bg-orange-700",
+ SOCIAL: "bg-yellow-300 dark:bg-yellow-700",
+ TEXT: "bg-green-300 dark:bg-green-700",
+ SEARCH: "bg-blue-300 dark:bg-blue-700",
+ BASIC: "bg-purple-300 dark:bg-purple-700",
+ INPUT: "bg-cyan-300 dark:bg-cyan-700",
+ OUTPUT: "bg-red-300 dark:bg-red-700",
+ LOGIC: "bg-teal-300 dark:bg-teal-700",
+ DEVELOPER_TOOLS: "bg-fuchsia-300 dark:bg-fuchsia-700",
+ AGENT: "bg-lime-300 dark:bg-lime-700",
};
export function getPrimaryCategoryColor(categories: Category[]): string {
if (categories.length === 0) {
- return "bg-gray-300";
+ return "bg-gray-300 dark:bg-slate-700";
}
- return categoryColorMap[categories[0].category] || "bg-gray-300";
+ return (
+ categoryColorMap[categories[0].category] || "bg-gray-300 dark:bg-slate-700"
+ );
}
export function filterBlocksByType(
diff --git a/autogpt_platform/frontend/src/lib/withRoleAccess.ts b/autogpt_platform/frontend/src/lib/withRoleAccess.ts
index a4c40e4789..38ccd09456 100644
--- a/autogpt_platform/frontend/src/lib/withRoleAccess.ts
+++ b/autogpt_platform/frontend/src/lib/withRoleAccess.ts
@@ -4,18 +4,13 @@ import React from "react";
import * as Sentry from "@sentry/nextjs";
export async function withRoleAccess(allowedRoles: string[]) {
- "use server";
+ console.log("withRoleAccess called:", allowedRoles);
+ ("use server");
return await Sentry.withServerActionInstrumentation(
"withRoleAccess",
{},
async () => {
return async function >(Component: T) {
- const { user, role, error } = await getServerUser();
-
- if (error || !user || !role || !allowedRoles.includes(role)) {
- redirect("/unauthorized");
- }
-
return Component;
};
},
diff --git a/autogpt_platform/frontend/src/middleware.ts b/autogpt_platform/frontend/src/middleware.ts
index f136175aad..65edec41d7 100644
--- a/autogpt_platform/frontend/src/middleware.ts
+++ b/autogpt_platform/frontend/src/middleware.ts
@@ -14,6 +14,6 @@ export const config = {
* - favicon.ico (favicon file)
* Feel free to modify this pattern to include more paths.
*/
- "/((?!_next/static|_next/image|favicon.ico|.*\\.(?:svg|png|jpg|jpeg|gif|webp)$).*)",
+ "/((?!_next/static|_next/image|favicon.ico|auth|.*\\.(?:svg|png|jpg|jpeg|gif|webp)$).*)",
],
};
diff --git a/autogpt_platform/frontend/src/tests/auth.spec.ts b/autogpt_platform/frontend/src/tests/auth.spec.ts
index 16b2450c19..8c7ac4ab77 100644
--- a/autogpt_platform/frontend/src/tests/auth.spec.ts
+++ b/autogpt_platform/frontend/src/tests/auth.spec.ts
@@ -5,8 +5,10 @@ test.describe("Authentication", () => {
test("user can login successfully", async ({ page, loginPage, testUser }) => {
await page.goto("/login");
await loginPage.login(testUser.email, testUser.password);
- await test.expect(page).toHaveURL("/");
- await test.expect(page.getByText("Monitor")).toBeVisible();
+ await test.expect(page).toHaveURL("/store");
+ await test
+ .expect(page.getByTestId("profile-popout-menu-trigger"))
+ .toBeVisible();
});
test("user can logout successfully", async ({
@@ -17,12 +19,19 @@ test.describe("Authentication", () => {
await page.goto("/login");
await loginPage.login(testUser.email, testUser.password);
- await test.expect(page).toHaveURL("/");
+ await test.expect(page).toHaveURL("/store");
- // Click on the user menu
- await page.getByRole("button", { name: "CN" }).click();
- // Click on the logout menu item
- await page.getByRole("menuitem", { name: "Log out" }).click();
+ // Click on the profile menu trigger to open popout
+ await page.getByTestId("profile-popout-menu-trigger").click();
+
+ // Wait for menu to be visible before clicking logout
+ await page.getByRole("button", { name: "Log out" }).waitFor({
+ state: "visible",
+ timeout: 5000,
+ });
+
+ // Click the logout button in the popout menu
+ await page.getByRole("button", { name: "Log out" }).click();
await test.expect(page).toHaveURL("/login");
});
@@ -34,12 +43,18 @@ test.describe("Authentication", () => {
}) => {
await page.goto("/login");
await loginPage.login(testUser.email, testUser.password);
- await page.goto("/");
- await page.getByRole("button", { name: "CN" }).click();
- await page.getByRole("menuitem", { name: "Log out" }).click();
+ await test.expect(page).toHaveURL("/store");
+ // Click on the profile menu trigger to open popout
+ await page.getByTestId("profile-popout-menu-trigger").click();
+
+ // Click the logout button in the popout menu
+ await page.getByRole("button", { name: "Log out" }).click();
+
await test.expect(page).toHaveURL("/login");
await loginPage.login(testUser.email, testUser.password);
- await test.expect(page).toHaveURL("/");
- await test.expect(page.getByText("Monitor")).toBeVisible();
+ await test.expect(page).toHaveURL("/store");
+ await test
+ .expect(page.getByTestId("profile-popout-menu-trigger"))
+ .toBeVisible();
});
});
diff --git a/autogpt_platform/frontend/src/tests/build.spec.ts b/autogpt_platform/frontend/src/tests/build.spec.ts
index 69a8672703..3868e70c68 100644
--- a/autogpt_platform/frontend/src/tests/build.spec.ts
+++ b/autogpt_platform/frontend/src/tests/build.spec.ts
@@ -26,8 +26,11 @@ test.describe("Build", () => { //(1)!
// Reason Ignore: admonishment is in the wrong place visually with correct prettier rules
// prettier-ignore
test("user can add a block", async ({ page }) => { //(6)!
+ // workaround for #8788
+ await buildPage.navbar.clickBuildLink();
+ await test.expect(page).toHaveURL(new RegExp("/build"));
+ await buildPage.waitForPageLoad();
await test.expect(buildPage.isLoaded()).resolves.toBeTruthy(); //(7)!
- await test.expect(page).toHaveURL(new RegExp("/.*build")); //(8)!
await buildPage.closeTutorial(); //(9)!
await buildPage.openBlocksPanel(); //(10)!
@@ -50,12 +53,16 @@ test.describe("Build", () => { //(1)!
// add all the blocks in order
for (const block of blocks) {
- await buildPage.addBlock(block);
+ if (block.id !== "e189baac-8c20-45a1-94a7-55177ea42565") {
+ await buildPage.addBlock(block);
+ }
}
await buildPage.closeBlocksPanel();
// check that all the blocks are visible
for (const block of blocks) {
- await test.expect(buildPage.hasBlock(block)).resolves.toBeTruthy();
+ if (block.id !== "e189baac-8c20-45a1-94a7-55177ea42565") {
+ await test.expect(buildPage.hasBlock(block)).resolves.toBeTruthy();
+ }
}
// fill in the input for the agent input block
await buildPage.fillBlockInputByPlaceholder(
@@ -152,7 +159,7 @@ test.describe("Build", () => { //(1)!
test("user can build an agent with inputs and output blocks", async ({
page,
}) => {
- // simple caluclator to double input and output it
+ // simple calculator to double input and output it
// load the pages and prep
await test.expect(buildPage.isLoaded()).resolves.toBeTruthy();
@@ -174,12 +181,19 @@ test.describe("Build", () => { //(1)!
await buildPage.addBlock(outputBlock);
await buildPage.addBlock(calculatorBlock);
await buildPage.closeBlocksPanel();
+
+ // Wait for blocks to be fully loaded
+ await page.waitForTimeout(1000);
+
await test.expect(buildPage.hasBlock(inputBlock)).resolves.toBeTruthy();
await test.expect(buildPage.hasBlock(outputBlock)).resolves.toBeTruthy();
await test
.expect(buildPage.hasBlock(calculatorBlock))
.resolves.toBeTruthy();
+ // Wait for blocks to be ready for connections
+ await page.waitForTimeout(1000);
+
await buildPage.connectBlockOutputToBlockInputViaName(
inputBlock.id,
"Result",
@@ -198,6 +212,10 @@ test.describe("Build", () => { //(1)!
outputBlock.id,
"Value",
);
+
+ // Wait for connections to stabilize
+ await page.waitForTimeout(1000);
+
await buildPage.fillBlockInputByPlaceholder(
inputBlock.id,
"Enter Name",
@@ -208,16 +226,28 @@ test.describe("Build", () => { //(1)!
"Enter Name",
"Doubled",
);
+
+ // Wait before changing dropdown
+ await page.waitForTimeout(500);
+
await buildPage.selectBlockInputValue(
calculatorBlock.id,
"Operation",
"Add",
);
+
+ // Wait before saving
+ await page.waitForTimeout(1000);
+
await buildPage.saveAgent(
"Input and Output Blocks Test",
"Testing input and output blocks",
);
await test.expect(page).toHaveURL(new RegExp("/.*build\\?flowID=.+"));
+
+ // Wait for save to complete
+ await page.waitForTimeout(1000);
+
await buildPage.runAgent();
await buildPage.fillRunDialog({
Value: "10",
diff --git a/autogpt_platform/frontend/src/tests/fixtures/login-page.fixture.ts b/autogpt_platform/frontend/src/tests/fixtures/login-page.fixture.ts
index fad6c1c7b0..2bf67c8464 100644
--- a/autogpt_platform/frontend/src/tests/fixtures/login-page.fixture.ts
+++ b/autogpt_platform/frontend/src/tests/fixtures/login-page.fixture.ts
@@ -1,7 +1,7 @@
/* eslint-disable react-hooks/rules-of-hooks */
import { test as base } from "@playwright/test";
import { LoginPage } from "../pages/login.page";
-
+import { Page } from "@playwright/test";
export const loginPageFixture = base.extend<{ loginPage: LoginPage }>({
loginPage: async ({ page }, use) => {
await use(new LoginPage(page));
@@ -9,6 +9,9 @@ export const loginPageFixture = base.extend<{ loginPage: LoginPage }>({
});
// Export just the fixture function
-export const createLoginPageFixture = async ({ page }, use) => {
+export const createLoginPageFixture = async (
+ { page }: { page: Page },
+ use: (loginPage: LoginPage) => Promise,
+) => {
await use(new LoginPage(page));
};
diff --git a/autogpt_platform/frontend/src/tests/monitor.spec.ts b/autogpt_platform/frontend/src/tests/monitor.spec.ts
deleted file mode 100644
index 7552251a02..0000000000
--- a/autogpt_platform/frontend/src/tests/monitor.spec.ts
+++ /dev/null
@@ -1,125 +0,0 @@
-import { expect, TestInfo } from "@playwright/test";
-import { test } from "./fixtures";
-import { BuildPage } from "./pages/build.page";
-import { MonitorPage } from "./pages/monitor.page";
-import { v4 as uuidv4 } from "uuid";
-import * as fs from "fs/promises";
-import path from "path";
-// --8<-- [start:AttachAgentId]
-
-test.describe("Monitor", () => {
- let buildPage: BuildPage;
- let monitorPage: MonitorPage;
-
- test.beforeEach(async ({ page, loginPage, testUser }, testInfo: TestInfo) => {
- buildPage = new BuildPage(page);
- monitorPage = new MonitorPage(page);
-
- // Start each test with login using worker auth
- await page.goto("/login");
- await loginPage.login(testUser.email, testUser.password);
- await test.expect(page).toHaveURL("/");
-
- // add a test agent
- const basicBlock = await buildPage.getBasicBlock();
- const id = uuidv4();
- await buildPage.createSingleBlockAgent(
- `test-agent-${id}`,
- `test-agent-description-${id}`,
- basicBlock,
- );
- await buildPage.runAgent();
- await monitorPage.navbar.clickMonitorLink();
- await monitorPage.waitForPageLoad();
- await test.expect(monitorPage.isLoaded()).resolves.toBeTruthy();
- testInfo.attach("agent-id", { body: id });
- });
- // --8<-- [end:AttachAgentId]
-
- test.afterAll(async ({}) => {
- // clear out the downloads folder
- console.log(
- `clearing out the downloads folder ${monitorPage.downloadsFolder}`,
- );
-
- await fs.rm(`${monitorPage.downloadsFolder}/monitor`, {
- recursive: true,
- force: true,
- });
- });
-
- test("user can view agents", async ({ page }) => {
- const agents = await monitorPage.listAgents();
- // there should be at least one agent
- await test.expect(agents.length).toBeGreaterThan(0);
- });
-
- test("user can export and import agents", async ({
- page,
- }, testInfo: TestInfo) => {
- // --8<-- [start:ReadAgentId]
- if (testInfo.attachments.length === 0 || !testInfo.attachments[0].body) {
- throw new Error("No agent id attached to the test");
- }
- const id = testInfo.attachments[0].body.toString();
- // --8<-- [end:ReadAgentId]
- const agents = await monitorPage.listAgents();
-
- const downloadPromise = page.waitForEvent("download");
- await monitorPage.exportToFile(
- agents.find((a) => a.id === id) || agents[0],
- );
- const download = await downloadPromise;
-
- // Wait for the download process to complete and save the downloaded file somewhere.
- await download.saveAs(
- `${monitorPage.downloadsFolder}/monitor/${download.suggestedFilename()}`,
- );
- console.log(`downloaded file to ${download.suggestedFilename()}`);
- await test.expect(download.suggestedFilename()).toBeDefined();
- // test-agent-uuid-v1.json
- if (id) {
- await test.expect(download.suggestedFilename()).toContain(id);
- }
- await test.expect(download.suggestedFilename()).toContain("test-agent-");
- await test.expect(download.suggestedFilename()).toContain("v1.json");
-
- // import the agent
- const preImportAgents = await monitorPage.listAgents();
- const filesInFolder = await fs.readdir(
- `${monitorPage.downloadsFolder}/monitor`,
- );
- const importFile = filesInFolder.find((f) => f.includes(id));
- if (!importFile) {
- throw new Error(`No import file found for agent ${id}`);
- }
- const baseName = importFile.split(".")[0];
- await monitorPage.importFromFile(
- path.resolve(monitorPage.downloadsFolder, "monitor"),
- importFile,
- baseName + "-imported",
- );
-
- // You'll be dropped at the build page, so hit run and then go back to monitor
- await buildPage.runAgent();
- await monitorPage.navbar.clickMonitorLink();
- await monitorPage.waitForPageLoad();
-
- const postImportAgents = await monitorPage.listAgents();
- await test
- .expect(postImportAgents.length)
- .toBeGreaterThan(preImportAgents.length);
- console.log(`postImportAgents: ${JSON.stringify(postImportAgents)}`);
- const importedAgent = postImportAgents.find(
- (a) => a.name === `${baseName}-imported`,
- );
- await test.expect(importedAgent).toBeDefined();
- });
-
- test("user can view runs", async ({ page }) => {
- const runs = await monitorPage.listRuns();
- console.log(runs);
- // there should be at least one run
- await test.expect(runs.length).toBeGreaterThan(0);
- });
-});
diff --git a/autogpt_platform/frontend/src/tests/pages/base.page.ts b/autogpt_platform/frontend/src/tests/pages/base.page.ts
index 7267b66430..a79e2eb4a9 100644
--- a/autogpt_platform/frontend/src/tests/pages/base.page.ts
+++ b/autogpt_platform/frontend/src/tests/pages/base.page.ts
@@ -12,6 +12,6 @@ export class BasePage {
async waitForPageLoad() {
// Common page load waiting logic
console.log(`waiting for page to load`);
- await this.page.waitForLoadState("networkidle", { timeout: 10000 });
+ await this.page.waitForLoadState("domcontentloaded", { timeout: 10_000 });
}
}
diff --git a/autogpt_platform/frontend/src/tests/pages/build.page.ts b/autogpt_platform/frontend/src/tests/pages/build.page.ts
index 298d398cd0..c6be0e6e99 100644
--- a/autogpt_platform/frontend/src/tests/pages/build.page.ts
+++ b/autogpt_platform/frontend/src/tests/pages/build.page.ts
@@ -15,7 +15,9 @@ export class BuildPage extends BasePage {
async closeTutorial(): Promise {
console.log(`closing tutorial`);
try {
- await this.page.getByRole("button", { name: "Skip Tutorial" }).click();
+ await this.page
+ .getByRole("button", { name: "Skip Tutorial", exact: true })
+ .click();
} catch (error) {
console.info("Error closing tutorial:", error);
}
@@ -276,7 +278,7 @@ export class BuildPage extends BasePage {
async isLoaded(): Promise {
console.log(`checking if build page is loaded`);
try {
- await this.page.waitForLoadState("networkidle", { timeout: 10_000 });
+ await this.page.waitForLoadState("domcontentloaded", { timeout: 10_000 });
return true;
} catch (error) {
return false;
diff --git a/autogpt_platform/frontend/src/tests/pages/login.page.ts b/autogpt_platform/frontend/src/tests/pages/login.page.ts
index 8abc87588d..66c0532a1b 100644
--- a/autogpt_platform/frontend/src/tests/pages/login.page.ts
+++ b/autogpt_platform/frontend/src/tests/pages/login.page.ts
@@ -32,11 +32,14 @@ export class LoginPage {
await passwordInput2.fill(password);
// Wait for the button to be ready
- const loginButton = this.page.getByRole("button", { name: "Log in" });
+ const loginButton = this.page.getByRole("button", {
+ name: "Log in",
+ exact: true,
+ });
await loginButton.waitFor({ state: "visible" });
// Start waiting for navigation before clicking
- const navigationPromise = this.page.waitForURL("/", { timeout: 60000 });
+ const navigationPromise = this.page.waitForURL("/", { timeout: 10_000 });
console.log("About to click login button"); // Debug log
await loginButton.click();
@@ -45,7 +48,7 @@ export class LoginPage {
await navigationPromise;
console.log("Navigation complete, waiting for network idle"); // Debug log
- await this.page.waitForLoadState("networkidle", { timeout: 60000 });
+ await this.page.waitForLoadState("load", { timeout: 10_000 });
console.log("Login process complete"); // Debug log
}
}
diff --git a/autogpt_platform/frontend/src/tests/pages/monitor.page.ts b/autogpt_platform/frontend/src/tests/pages/monitor.page.ts
deleted file mode 100644
index e696cd028c..0000000000
--- a/autogpt_platform/frontend/src/tests/pages/monitor.page.ts
+++ /dev/null
@@ -1,235 +0,0 @@
-import { ElementHandle, Locator, Page } from "@playwright/test";
-import { BasePage } from "./base.page";
-import path from "path";
-
-interface Agent {
- id: string;
- name: string;
- runCount: number;
- lastRun: string;
-}
-
-interface Run {
- id: string;
- agentId: string;
- agentName: string;
- started: string;
- duration: number;
- status: string;
-}
-
-interface AgentRun extends Agent {
- runs: Run[];
-}
-
-interface Schedule {
- id: string;
- graphName: string;
- nextExecution: string;
- schedule: string;
- actions: string[];
-}
-
-enum ImportType {
- AGENT = "agent",
- TEMPLATE = "template",
-}
-
-export class MonitorPage extends BasePage {
- constructor(page: Page) {
- super(page);
- }
-
- async isLoaded(): Promise {
- console.log(`checking if monitor page is loaded`);
- try {
- // Wait for network to settle first
- await this.page.waitForLoadState("networkidle", { timeout: 10_000 });
-
- // Wait for the monitor page container
- await this.page.getByTestId("monitor-page").waitFor({
- state: "visible",
- timeout: 10_000,
- });
-
- // Wait for table headers to be visible (indicates table structure is ready)
- await this.page.locator("thead th").first().waitFor({
- state: "visible",
- timeout: 5_000,
- });
-
- // Wait for either a table row or an empty tbody to be present
- await Promise.race([
- // Wait for at least one row
- this.page.locator("tbody tr[data-testid]").first().waitFor({
- state: "visible",
- timeout: 5_000,
- }),
- // OR wait for an empty tbody (indicating no agents but table is loaded)
- this.page
- .locator("tbody[data-testid='agent-flow-list-body']:empty")
- .waitFor({
- state: "visible",
- timeout: 5_000,
- }),
- ]);
-
- return true;
- } catch (error) {
- return false;
- }
- }
-
- async listAgents(): Promise {
- console.log(`listing agents`);
- // Wait for table rows to be available
- const rows = await this.page.locator("tbody tr[data-testid]").all();
-
- const agents: Agent[] = [];
-
- for (const row of rows) {
- // Get the id from data-testid attribute
- const id = (await row.getAttribute("data-testid")) || "";
-
- // Get columns - there are 3 cells per row (name, run count, last run)
- const cells = await row.locator("td").all();
-
- // Extract name from first cell
- const name = (await row.getAttribute("data-name")) || "";
-
- // Extract run count from second cell
- const runCountText = (await cells[1].textContent()) || "0";
- const runCount = parseInt(runCountText, 10);
-
- // Extract last run from third cell's title attribute (contains full timestamp)
- // If no title, the cell will be empty indicating no last run
- const lastRunCell = cells[2];
- const lastRun = (await lastRunCell.getAttribute("title")) || "";
-
- agents.push({
- id,
- name,
- runCount,
- lastRun,
- });
- }
-
- return agents;
- }
-
- async listRuns(filter?: Agent): Promise {
- console.log(`listing runs`);
- // Wait for the runs table to be loaded - look for table header "Agent"
- await this.page.locator("[data-testid='flow-runs-list-body']").waitFor();
-
- // Get all run rows
- const rows = await this.page
- .locator('tbody tr[data-testid^="flow-run-"]')
- .all();
-
- const runs: Run[] = [];
-
- for (const row of rows) {
- const runId = (await row.getAttribute("data-runid")) || "";
- const agentId = (await row.getAttribute("data-graphid")) || "";
-
- // Get columns
- const cells = await row.locator("td").all();
-
- // Parse data from cells
- const agentName = (await cells[0].textContent()) || "";
- const started = (await cells[1].textContent()) || "";
- const status = (await cells[2].locator("div").textContent()) || "";
- const duration = (await cells[3].textContent()) || "";
-
- // Only add if no filter or if matches filter
- if (!filter || filter.id === agentId) {
- runs.push({
- id: runId,
- agentId: agentId,
- agentName: agentName.trim(),
- started: started.trim(),
- duration: parseFloat(duration.replace("s", "")),
- status: status.toLowerCase().trim(),
- });
- }
- }
-
- return runs;
- }
- async listSchedules(): Promise {
- console.log(`listing schedules`);
- return [];
- }
-
- async clickAgent(id: string) {
- console.log(`selecting agent ${id}`);
- await this.page.getByTestId(id).click();
- }
-
- async clickCreateAgent(): Promise {
- console.log(`clicking create agent`);
- await this.page.getByRole("link", { name: "Create" }).click();
- }
-
- async importFromFile(
- directory: string,
- file: string,
- name?: string,
- description?: string,
- importType: ImportType = ImportType.AGENT,
- ) {
- console.log(
- `importing from directory: ${directory} file: ${file} name: ${name} description: ${description} importType: ${importType}`,
- );
- await this.page.getByTestId("create-agent-dropdown").click();
- await this.page.getByTestId("import-agent-from-file").click();
-
- await this.page
- .getByTestId("import-agent-file-input")
- .setInputFiles(path.join(directory, file));
- if (name) {
- console.log(`filling agent name: ${name}`);
- await this.page.getByTestId("agent-name-input").fill(name);
- }
- if (description) {
- console.log(`filling agent description: ${description}`);
- await this.page.getByTestId("agent-description-input").fill(description);
- }
- if (importType === ImportType.TEMPLATE) {
- console.log(`clicking import as template switch`);
- await this.page.getByTestId("import-as-template-switch").click();
- }
- console.log(`clicking import agent submit`);
- await this.page.getByTestId("import-agent-submit").click();
- }
-
- async deleteAgent(agent: Agent) {
- console.log(`deleting agent ${agent.id} ${agent.name}`);
- }
-
- async clickAllVersions(agent: Agent) {
- console.log(`clicking all versions for agent ${agent.id} ${agent.name}`);
- }
-
- async openInBuilder(agent: Agent) {
- console.log(`opening agent ${agent.id} ${agent.name} in builder`);
- }
-
- async exportToFile(agent: Agent) {
- await this.clickAgent(agent.id);
-
- console.log(`exporting agent ${agent.id} ${agent.name} to file`);
- await this.page.getByTestId("export-button").click();
- }
-
- async selectRun(agent: Agent, run: Run) {
- console.log(`selecting run ${run.id} for agent ${agent.id} ${agent.name}`);
- }
-
- async openOutputs(agent: Agent, run: Run) {
- console.log(
- `opening outputs for run ${run.id} of agent ${agent.id} ${agent.name}`,
- );
- }
-}
diff --git a/autogpt_platform/frontend/src/tests/pages/navbar.page.ts b/autogpt_platform/frontend/src/tests/pages/navbar.page.ts
index bb7ddf4df5..b95c852059 100644
--- a/autogpt_platform/frontend/src/tests/pages/navbar.page.ts
+++ b/autogpt_platform/frontend/src/tests/pages/navbar.page.ts
@@ -4,44 +4,40 @@ export class NavBar {
constructor(private page: Page) {}
async clickProfileLink() {
- // await this.page.getByTestId("profile-link").click();
-
- await this.page.getByRole("button", { name: "CN" }).click();
- await this.page.getByRole("menuitem", { name: "Profile" }).click();
+ await this.page.getByTestId("profile-popout-menu-trigger").click();
+ await this.page.getByRole("link", { name: "Edit profile" }).click();
}
async clickMonitorLink() {
- await this.page.getByTestId("monitor-nav-link").click();
+ await this.page.getByRole("link", { name: "Library" }).click();
}
async clickBuildLink() {
- await this.page.getByTestId("build-nav-link").click();
+ await this.page.locator('a[href="/build"] div').click();
}
async clickMarketplaceLink() {
- await this.page.getByTestId("marketplace-nav-link").click();
+ await this.page.locator('a[href="/store"]').click();
}
async getUserMenuButton() {
- return this.page.getByRole("button", { name: "CN" });
+ return this.page.getByTestId("profile-popout-menu-trigger");
}
async clickUserMenu() {
- await (await this.getUserMenuButton()).click();
+ await this.page.getByTestId("profile-popout-menu-trigger").click();
}
async logout() {
await this.clickUserMenu();
- await this.page.getByRole("menuitem", { name: "Log out" }).click();
+ await this.page.getByText("Log out").click();
}
async isLoggedIn(): Promise {
try {
- await (
- await this.getUserMenuButton()
- ).waitFor({
+ await this.page.getByTestId("profile-popout-menu-trigger").waitFor({
state: "visible",
- timeout: 5000,
+ timeout: 10_000,
});
return true;
} catch {
diff --git a/autogpt_platform/frontend/src/tests/pages/profile.page.ts b/autogpt_platform/frontend/src/tests/pages/profile.page.ts
index d38896476d..fdeda32df0 100644
--- a/autogpt_platform/frontend/src/tests/pages/profile.page.ts
+++ b/autogpt_platform/frontend/src/tests/pages/profile.page.ts
@@ -7,13 +7,24 @@ export class ProfilePage extends BasePage {
super(page);
}
- async getDisplayedEmail(): Promise {
+ async getDisplayedHandle(): Promise {
await this.waitForPageToLoad();
- const email = await this.page.getByTestId("profile-email").textContent();
- if (!email) {
- throw new Error("Email not found");
+ const handle = await this.page.locator('input[name="handle"]').inputValue();
+ if (!handle) {
+ throw new Error("Handle not found");
}
- return email;
+ return handle;
+ }
+
+ async getDisplayedName(): Promise {
+ await this.waitForPageToLoad();
+ const displayName = await this.page
+ .locator('input[name="displayName"]')
+ .inputValue();
+ if (!displayName) {
+ throw new Error("Display name not found");
+ }
+ return displayName;
}
// --8<-- [end:ProfilePageExample]
async isLoaded(): Promise {
@@ -27,13 +38,13 @@ export class ProfilePage extends BasePage {
}
private async waitForPageToLoad(): Promise {
- await this.page.waitForLoadState("networkidle", { timeout: 60_000 });
+ await this.page.waitForLoadState("domcontentloaded", { timeout: 60_000 });
- await this.page.getByTestId("profile-email").waitFor({
+ await this.page.locator('input[name="handle"]').waitFor({
state: "visible",
- timeout: 60_000,
+ timeout: 10_000,
});
- await this.page.waitForLoadState("networkidle", { timeout: 60_000 });
+ await this.page.waitForLoadState("domcontentloaded", { timeout: 60_000 });
}
}
diff --git a/autogpt_platform/frontend/src/tests/profile.spec.ts b/autogpt_platform/frontend/src/tests/profile.spec.ts
index 6d88eb2be0..03787e2748 100644
--- a/autogpt_platform/frontend/src/tests/profile.spec.ts
+++ b/autogpt_platform/frontend/src/tests/profile.spec.ts
@@ -10,7 +10,7 @@ test.describe("Profile", () => {
// Start each test with login using worker auth
await page.goto("/login");
await loginPage.login(testUser.email, testUser.password);
- await test.expect(page).toHaveURL("/");
+ await test.expect(page).toHaveURL("/store");
});
test("user can view their profile information", async ({
@@ -20,23 +20,20 @@ test.describe("Profile", () => {
await profilePage.navbar.clickProfileLink();
// workaround for #8788
// sleep for 10 seconds to allow page to load due to bug in our system
- await page.waitForTimeout(10000);
+ await page.waitForTimeout(10_000);
await page.reload();
await page.reload();
await test.expect(profilePage.isLoaded()).resolves.toBeTruthy();
await test.expect(page).toHaveURL(new RegExp("/profile"));
// Verify email matches test worker's email
- const displayedEmail = await profilePage.getDisplayedEmail();
- test.expect(displayedEmail).toBe(testUser.email);
+ const displayedHandle = await profilePage.getDisplayedName();
+ test.expect(displayedHandle).toBe("No Profile Data");
});
test("profile navigation is accessible from navbar", async ({ page }) => {
await profilePage.navbar.clickProfileLink();
await test.expect(page).toHaveURL(new RegExp("/profile"));
- // workaround for #8788
- await page.reload();
- await page.reload();
await test.expect(profilePage.isLoaded()).resolves.toBeTruthy();
});
diff --git a/autogpt_platform/frontend/tailwind.config.ts b/autogpt_platform/frontend/tailwind.config.ts
index 2deb32f736..3101cd7cc5 100644
--- a/autogpt_platform/frontend/tailwind.config.ts
+++ b/autogpt_platform/frontend/tailwind.config.ts
@@ -16,6 +16,8 @@ const config = {
fontFamily: {
sans: ["var(--font-geist-sans)"],
mono: ["var(--font-geist-mono)"],
+ // Include the custom font family
+ neue: ['"PP Neue Montreal TT"', "sans-serif"],
},
colors: {
border: "hsl(var(--border))",
@@ -51,11 +53,73 @@ const config = {
DEFAULT: "hsl(var(--card))",
foreground: "hsl(var(--card-foreground))",
},
+ // Extend the color palette with custom colors
+ customGray: {
+ 100: "#d9d9d9",
+ 200: "#a8a8a8",
+ 300: "#878787",
+ 400: "#646464",
+ 500: "#474747",
+ 600: "#282828",
+ 700: "#272727",
+ },
+ },
+ spacing: {
+ // Tailwind spacing + custom sizes
+ 0: "0rem",
+ 0.5: "0.125rem",
+ 1: "0.25rem",
+ 1.5: "0.375rem",
+ 2: "0.5rem",
+ 2.5: "0.625rem",
+ 3: "0.75rem",
+ 3.5: "0.875rem",
+ 4: "1rem",
+ 5: "1.25rem",
+ 6: "1.5rem",
+ 7: "1.75rem",
+ 7.5: "1.875rem",
+ 8: "2rem",
+ 8.5: "2.125rem",
+ 9: "2.25rem",
+ 10: "2.5rem",
+ 11: "2.75rem",
+ 12: "3rem",
+ 14: "3.5rem",
+ 16: "4rem",
+ 18: "4.5rem",
+ 20: "5rem",
+ 24: "6rem",
+ 28: "7rem",
+ 32: "8rem",
+ 36: "9rem",
+ 39: "9.875rem",
+ 40: "10rem",
+ 44: "11rem",
+ 48: "12rem",
+ 52: "13rem",
+ 56: "14rem",
+ 69: "14.875rem",
+ 60: "15rem",
+ 63: "15.875rem",
+ 64: "16rem",
+ 68: "17.75rem",
+ 72: "18rem",
+ 77: "18.5625rem",
+ 80: "20rem",
+ 89: "22.5rem",
+ 96: "24rem",
+ 110: "27.5rem",
+ 139: "37.1875rem",
+ 167: "41.6875rem",
+ 225: "56.25rem",
},
borderRadius: {
lg: "var(--radius)",
md: "calc(var(--radius) - 2px)",
sm: "calc(var(--radius) - 4px)",
+ // Add a full radius for pill-shaped buttons
+ full: "9999px",
},
keyframes: {
"accordion-down": {
diff --git a/autogpt_platform/frontend/yarn.lock b/autogpt_platform/frontend/yarn.lock
index f6317a2eba..1732f8e218 100644
--- a/autogpt_platform/frontend/yarn.lock
+++ b/autogpt_platform/frontend/yarn.lock
@@ -3,85 +3,79 @@
"@adobe/css-tools@^4.4.0":
- version "4.4.0"
- resolved "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.0.tgz"
- integrity sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.4.1.tgz#2447a230bfe072c1659e6815129c03cf170710e3"
+ integrity sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==
"@alloc/quick-lru@^5.2.0":
version "5.2.0"
- resolved "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30"
integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==
"@ampproject/remapping@^2.2.0":
version "2.3.0"
- resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4"
integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==
dependencies:
"@jridgewell/gen-mapping" "^0.3.5"
"@jridgewell/trace-mapping" "^0.3.24"
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.24.7", "@babel/code-frame@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.9.tgz"
- integrity sha512-z88xeGxnzehn2sqZ8UdGQEvYErF1odv2CftxInpSYJt6uHuPe9YjahKZITGs3l5LeI9d2ROG+obuDAoSlqbNfQ==
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0", "@babel/code-frame@^7.26.2":
+ version "7.26.2"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85"
+ integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==
dependencies:
- "@babel/highlight" "^7.25.9"
+ "@babel/helper-validator-identifier" "^7.25.9"
+ js-tokens "^4.0.0"
picocolors "^1.0.0"
-"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.9.tgz"
- integrity sha512-yD+hEuJ/+wAJ4Ox2/rpNv5HIuPG82x3ZlQvYVn8iYCprdxzE7P1udpGF1jyjQVBU4dgznN+k2h103vxZ7NdPyw==
+"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9", "@babel/compat-data@^7.26.0":
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.3.tgz#99488264a56b2aded63983abd6a417f03b92ed02"
+ integrity sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==
"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.18.5", "@babel/core@^7.18.9", "@babel/core@^7.22.5", "@babel/core@^7.23.9", "@babel/core@^7.24.4", "@babel/core@^7.7.5":
- version "7.25.2"
- resolved "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz"
- integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40"
+ integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==
dependencies:
"@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.24.7"
- "@babel/generator" "^7.25.0"
- "@babel/helper-compilation-targets" "^7.25.2"
- "@babel/helper-module-transforms" "^7.25.2"
- "@babel/helpers" "^7.25.0"
- "@babel/parser" "^7.25.0"
- "@babel/template" "^7.25.0"
- "@babel/traverse" "^7.25.2"
- "@babel/types" "^7.25.2"
+ "@babel/code-frame" "^7.26.0"
+ "@babel/generator" "^7.26.0"
+ "@babel/helper-compilation-targets" "^7.25.9"
+ "@babel/helper-module-transforms" "^7.26.0"
+ "@babel/helpers" "^7.26.0"
+ "@babel/parser" "^7.26.0"
+ "@babel/template" "^7.25.9"
+ "@babel/traverse" "^7.25.9"
+ "@babel/types" "^7.26.0"
convert-source-map "^2.0.0"
debug "^4.1.0"
gensync "^1.0.0-beta.2"
json5 "^2.2.3"
semver "^6.3.1"
-"@babel/generator@^7.22.5", "@babel/generator@^7.25.0", "@babel/generator@^7.25.9", "@babel/generator@^7.7.2":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.25.9.tgz"
- integrity sha512-omlUGkr5EaoIJrhLf9CJ0TvjBRpd9+AXRG//0GEQ9THSo8wPiTlbpy1/Ow8ZTrbXpjd9FHXfbFQx32I04ht0FA==
+"@babel/generator@^7.22.5", "@babel/generator@^7.26.0", "@babel/generator@^7.26.3", "@babel/generator@^7.7.2":
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.3.tgz#ab8d4360544a425c90c248df7059881f4b2ce019"
+ integrity sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==
dependencies:
- "@babel/types" "^7.25.9"
+ "@babel/parser" "^7.26.3"
+ "@babel/types" "^7.26.3"
"@jridgewell/gen-mapping" "^0.3.5"
"@jridgewell/trace-mapping" "^0.3.25"
jsesc "^3.0.2"
"@babel/helper-annotate-as-pure@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4"
integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==
dependencies:
"@babel/types" "^7.25.9"
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.9":
+"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz"
- integrity sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==
- dependencies:
- "@babel/traverse" "^7.25.9"
- "@babel/types" "^7.25.9"
-
-"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.2", "@babel/helper-compilation-targets@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875"
integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==
dependencies:
"@babel/compat-data" "^7.25.9"
@@ -92,7 +86,7 @@
"@babel/helper-create-class-features-plugin@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83"
integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -104,18 +98,18 @@
semver "^6.3.1"
"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz"
- integrity sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw==
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.26.3.tgz#5169756ecbe1d95f7866b90bb555b022595302a0"
+ integrity sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
- regexpu-core "^6.1.1"
+ regexpu-core "^6.2.0"
semver "^6.3.1"
-"@babel/helper-define-polyfill-provider@^0.6.2":
- version "0.6.2"
- resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz"
- integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==
+"@babel/helper-define-polyfill-provider@^0.6.2", "@babel/helper-define-polyfill-provider@^0.6.3":
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.3.tgz#f4f2792fae2ef382074bc2d713522cf24e6ddb21"
+ integrity sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==
dependencies:
"@babel/helper-compilation-targets" "^7.22.6"
"@babel/helper-plugin-utils" "^7.22.5"
@@ -125,7 +119,7 @@
"@babel/helper-member-expression-to-functions@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3"
integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==
dependencies:
"@babel/traverse" "^7.25.9"
@@ -133,37 +127,36 @@
"@babel/helper-module-imports@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715"
integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==
dependencies:
"@babel/traverse" "^7.25.9"
"@babel/types" "^7.25.9"
-"@babel/helper-module-transforms@^7.25.2", "@babel/helper-module-transforms@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.9.tgz"
- integrity sha512-TvLZY/F3+GvdRYFZFyxMvnsKi+4oJdgZzU3BoGN9Uc2d9C6zfNwJcKKhjqLAhK8i46mv93jsO74fDh3ih6rpHA==
+"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae"
+ integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==
dependencies:
"@babel/helper-module-imports" "^7.25.9"
- "@babel/helper-simple-access" "^7.25.9"
"@babel/helper-validator-identifier" "^7.25.9"
"@babel/traverse" "^7.25.9"
"@babel/helper-optimise-call-expression@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e"
integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==
dependencies:
"@babel/types" "^7.25.9"
"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.9", "@babel/helper-plugin-utils@^7.8.0":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46"
integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==
"@babel/helper-remap-async-to-generator@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92"
integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -172,24 +165,16 @@
"@babel/helper-replace-supers@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5"
integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==
dependencies:
"@babel/helper-member-expression-to-functions" "^7.25.9"
"@babel/helper-optimise-call-expression" "^7.25.9"
"@babel/traverse" "^7.25.9"
-"@babel/helper-simple-access@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz"
- integrity sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==
- dependencies:
- "@babel/traverse" "^7.25.9"
- "@babel/types" "^7.25.9"
-
"@babel/helper-skip-transparent-expression-wrappers@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9"
integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==
dependencies:
"@babel/traverse" "^7.25.9"
@@ -197,56 +182,46 @@
"@babel/helper-string-parser@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c"
integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==
"@babel/helper-validator-identifier@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7"
integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==
"@babel/helper-validator-option@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72"
integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==
"@babel/helper-wrap-function@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0"
integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==
dependencies:
"@babel/template" "^7.25.9"
"@babel/traverse" "^7.25.9"
"@babel/types" "^7.25.9"
-"@babel/helpers@^7.25.0":
- version "7.25.6"
- resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz"
- integrity sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==
+"@babel/helpers@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4"
+ integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==
dependencies:
- "@babel/template" "^7.25.0"
- "@babel/types" "^7.25.6"
+ "@babel/template" "^7.25.9"
+ "@babel/types" "^7.26.0"
-"@babel/highlight@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.9.tgz"
- integrity sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.3":
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.3.tgz#8c51c5db6ddf08134af1ddbacf16aaab48bac234"
+ integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==
dependencies:
- "@babel/helper-validator-identifier" "^7.25.9"
- chalk "^2.4.2"
- js-tokens "^4.0.0"
- picocolors "^1.0.0"
-
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.25.0", "@babel/parser@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.25.9.tgz"
- integrity sha512-aI3jjAAO1fh7vY/pBGsn1i9LDbRP43+asrRlkPuTXW5yHXtd1NgTEMudbBoDDxrf1daEEfPJqR+JBMakzrR4Dg==
- dependencies:
- "@babel/types" "^7.25.9"
+ "@babel/types" "^7.26.3"
"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe"
integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -254,21 +229,21 @@
"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30"
integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137"
integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1"
integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -277,7 +252,7 @@
"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e"
integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -285,145 +260,145 @@
"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2":
version "7.21.0-placeholder-for-preset-env.2"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
"@babel/plugin-syntax-async-generators@^7.8.4":
version "7.8.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-bigint@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-class-properties@^7.12.13":
version "7.12.13"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10"
integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==
dependencies:
"@babel/helper-plugin-utils" "^7.12.13"
"@babel/plugin-syntax-class-static-block@^7.14.5":
version "7.14.5"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406"
integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==
dependencies:
"@babel/helper-plugin-utils" "^7.14.5"
"@babel/plugin-syntax-dynamic-import@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-import-assertions@^7.24.1", "@babel/plugin-syntax-import-assertions@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.9.tgz"
- integrity sha512-4GHX5uzr5QMOOuzV0an9MFju4hKlm0OyePl/lHhcsTVae5t/IKVHnb8W67Vr6FuLlk5lPqLB7n7O+K5R46emYg==
+"@babel/plugin-syntax-import-assertions@^7.24.1", "@babel/plugin-syntax-import-assertions@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f"
+ integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
-"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.9.tgz"
- integrity sha512-u3EN9ub8LyYvgTnrgp8gboElouayiwPdnM7x5tcnW3iSt09/lQYPwMNK40I9IUxo7QOZhAsPHCmmuO7EPdruqg==
+"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7"
+ integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-syntax-import-meta@^7.10.4":
version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51"
integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==
dependencies:
"@babel/helper-plugin-utils" "^7.10.4"
"@babel/plugin-syntax-json-strings@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-jsx@^7.25.9", "@babel/plugin-syntax-jsx@^7.7.2":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290"
integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-syntax-logical-assignment-operators@^7.10.4":
version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==
dependencies:
"@babel/helper-plugin-utils" "^7.10.4"
"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-numeric-separator@^7.10.4":
version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97"
integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==
dependencies:
"@babel/helper-plugin-utils" "^7.10.4"
"@babel/plugin-syntax-object-rest-spread@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-optional-catch-binding@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-optional-chaining@^7.8.3":
version "7.8.3"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
"@babel/plugin-syntax-private-property-in-object@^7.14.5":
version "7.14.5"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad"
integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==
dependencies:
"@babel/helper-plugin-utils" "^7.14.5"
"@babel/plugin-syntax-top-level-await@^7.14.5":
version "7.14.5"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c"
integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
dependencies:
"@babel/helper-plugin-utils" "^7.14.5"
"@babel/plugin-syntax-typescript@^7.25.9", "@babel/plugin-syntax-typescript@^7.7.2":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399"
integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357"
integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.18.6"
@@ -431,14 +406,14 @@
"@babel/plugin-transform-arrow-functions@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845"
integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-async-generator-functions@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz#1b18530b077d18a407c494eb3d1d72da505283a2"
integrity sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -447,7 +422,7 @@
"@babel/plugin-transform-async-to-generator@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71"
integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==
dependencies:
"@babel/helper-module-imports" "^7.25.9"
@@ -456,37 +431,37 @@
"@babel/plugin-transform-block-scoped-functions@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz#5700691dbd7abb93de300ca7be94203764fce458"
integrity sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-block-scoping@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1"
integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-class-properties@^7.24.1", "@babel/plugin-transform-class-properties@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f"
integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==
dependencies:
"@babel/helper-create-class-features-plugin" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
-"@babel/plugin-transform-class-static-block@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.9.tgz"
- integrity sha512-UIf+72C7YJ+PJ685/PpATbCz00XqiFEzHX5iysRwfvNT0Ko+FaXSvRgLytFSp8xUItrG9pFM/KoBBZDrY/cYyg==
+"@babel/plugin-transform-class-static-block@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0"
+ integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==
dependencies:
"@babel/helper-create-class-features-plugin" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-classes@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52"
integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -498,7 +473,7 @@
"@babel/plugin-transform-computed-properties@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b"
integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -506,14 +481,14 @@
"@babel/plugin-transform-destructuring@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1"
integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-dotall-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a"
integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
@@ -521,14 +496,14 @@
"@babel/plugin-transform-duplicate-keys@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d"
integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31"
integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
@@ -536,29 +511,28 @@
"@babel/plugin-transform-dynamic-import@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8"
integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-exponentiation-operator@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz"
- integrity sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz#e29f01b6de302c7c2c794277a48f04a9ca7f03bc"
+ integrity sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==
dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-export-namespace-from@^7.24.1", "@babel/plugin-transform-export-namespace-from@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2"
integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-for-of@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz#4bdc7d42a213397905d89f02350c5267866d5755"
integrity sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -566,7 +540,7 @@
"@babel/plugin-transform-function-name@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97"
integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==
dependencies:
"@babel/helper-compilation-targets" "^7.25.9"
@@ -575,52 +549,51 @@
"@babel/plugin-transform-json-strings@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660"
integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-literals@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de"
integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-logical-assignment-operators@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7"
integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-member-expression-literals@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de"
integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-modules-amd@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5"
integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==
dependencies:
"@babel/helper-module-transforms" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-modules-commonjs@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz"
- integrity sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz#8f011d44b20d02c3de44d8850d971d8497f981fb"
+ integrity sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==
dependencies:
- "@babel/helper-module-transforms" "^7.25.9"
+ "@babel/helper-module-transforms" "^7.26.0"
"@babel/helper-plugin-utils" "^7.25.9"
- "@babel/helper-simple-access" "^7.25.9"
"@babel/plugin-transform-modules-systemjs@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8"
integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==
dependencies:
"@babel/helper-module-transforms" "^7.25.9"
@@ -630,7 +603,7 @@
"@babel/plugin-transform-modules-umd@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9"
integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==
dependencies:
"@babel/helper-module-transforms" "^7.25.9"
@@ -638,7 +611,7 @@
"@babel/plugin-transform-named-capturing-groups-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a"
integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
@@ -646,28 +619,28 @@
"@babel/plugin-transform-new-target@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd"
integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-nullish-coalescing-operator@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz#bcb1b0d9e948168102d5f7104375ca21c3266949"
integrity sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-numeric-separator@^7.24.1", "@babel/plugin-transform-numeric-separator@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1"
integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-object-rest-spread@^7.24.1", "@babel/plugin-transform-object-rest-spread@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18"
integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==
dependencies:
"@babel/helper-compilation-targets" "^7.25.9"
@@ -676,7 +649,7 @@
"@babel/plugin-transform-object-super@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03"
integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -684,14 +657,14 @@
"@babel/plugin-transform-optional-catch-binding@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3"
integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-optional-chaining@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd"
integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -699,14 +672,14 @@
"@babel/plugin-transform-parameters@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257"
integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-private-methods@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57"
integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==
dependencies:
"@babel/helper-create-class-features-plugin" "^7.25.9"
@@ -714,7 +687,7 @@
"@babel/plugin-transform-private-property-in-object@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33"
integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -723,28 +696,28 @@
"@babel/plugin-transform-property-literals@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f"
integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-react-display-name@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.25.9.tgz#4b79746b59efa1f38c8695065a92a9f5afb24f7d"
integrity sha512-KJfMlYIUxQB1CJfO3e0+h0ZHWOTLCPP115Awhaz8U0Zpq36Gl/cXlpoyMRnUWlhNUBAzldnCiAZNvCDj7CrKxQ==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-react-jsx-development@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.25.9.tgz#8fd220a77dd139c07e25225a903b8be8c829e0d7"
integrity sha512-9mj6rm7XVYs4mdLIpbZnHOYdpW42uoiBCTVowg7sP1thUOiANgMb4UtpRivR0pp5iL+ocvUv7X4mZgFRpJEzGw==
dependencies:
"@babel/plugin-transform-react-jsx" "^7.25.9"
"@babel/plugin-transform-react-jsx@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.9.tgz#06367940d8325b36edff5e2b9cbe782947ca4166"
integrity sha512-s5XwpQYCqGerXl+Pu6VDL3x0j2d82eiV77UJ8a2mDHAW7j9SWRqQ2y1fNo1Z74CdcYipl5Z41zvjj4Nfzq36rw==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -755,7 +728,7 @@
"@babel/plugin-transform-react-pure-annotations@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.25.9.tgz#ea1c11b2f9dbb8e2d97025f43a3b5bc47e18ae62"
integrity sha512-KQ/Takk3T8Qzj5TppkS1be588lkbTp5uj7w6a0LeQaTMSckU/wK0oJ/pih+T690tkgI5jfmg2TqDJvd41Sj1Cg==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
@@ -763,22 +736,30 @@
"@babel/plugin-transform-regenerator@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b"
integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
regenerator-transform "^0.15.2"
+"@babel/plugin-transform-regexp-modifiers@^7.26.0":
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850"
+ integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.25.9"
+ "@babel/helper-plugin-utils" "^7.25.9"
+
"@babel/plugin-transform-reserved-words@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce"
integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-runtime@^7.24.3":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.9.tgz#62723ea3f5b31ffbe676da9d6dae17138ae580ea"
integrity sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==
dependencies:
"@babel/helper-module-imports" "^7.25.9"
@@ -790,14 +771,14 @@
"@babel/plugin-transform-shorthand-properties@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2"
integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-spread@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9"
integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
@@ -805,29 +786,29 @@
"@babel/plugin-transform-sticky-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32"
integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-template-literals@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz#6dbd4a24e8fad024df76d1fac6a03cf413f60fe1"
integrity sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-typeof-symbol@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz#224ba48a92869ddbf81f9b4a5f1204bbf5a2bc4b"
integrity sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-typescript@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.9.tgz"
- integrity sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz#3d6add9c78735623317387ee26d5ada540eee3fd"
+ integrity sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==
dependencies:
"@babel/helper-annotate-as-pure" "^7.25.9"
"@babel/helper-create-class-features-plugin" "^7.25.9"
@@ -837,14 +818,14 @@
"@babel/plugin-transform-unicode-escapes@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82"
integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/plugin-transform-unicode-property-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3"
integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
@@ -852,7 +833,7 @@
"@babel/plugin-transform-unicode-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1"
integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
@@ -860,18 +841,18 @@
"@babel/plugin-transform-unicode-sets-regex@^7.25.9":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe"
integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/preset-env@^7.24.4":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.9.tgz"
- integrity sha512-XqDEt+hfsQukahSX9JOBDHhpUHDhj2zGSxoqWQFCMajOSBnbhBdgON/bU/5PkBA1yX5tqW6tTzuIPVsZTQ7h5Q==
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.0.tgz#30e5c6bc1bcc54865bff0c5a30f6d4ccdc7fa8b1"
+ integrity sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw==
dependencies:
- "@babel/compat-data" "^7.25.9"
+ "@babel/compat-data" "^7.26.0"
"@babel/helper-compilation-targets" "^7.25.9"
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/helper-validator-option" "^7.25.9"
@@ -881,8 +862,8 @@
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9"
"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9"
"@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
- "@babel/plugin-syntax-import-assertions" "^7.25.9"
- "@babel/plugin-syntax-import-attributes" "^7.25.9"
+ "@babel/plugin-syntax-import-assertions" "^7.26.0"
+ "@babel/plugin-syntax-import-attributes" "^7.26.0"
"@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
"@babel/plugin-transform-arrow-functions" "^7.25.9"
"@babel/plugin-transform-async-generator-functions" "^7.25.9"
@@ -890,7 +871,7 @@
"@babel/plugin-transform-block-scoped-functions" "^7.25.9"
"@babel/plugin-transform-block-scoping" "^7.25.9"
"@babel/plugin-transform-class-properties" "^7.25.9"
- "@babel/plugin-transform-class-static-block" "^7.25.9"
+ "@babel/plugin-transform-class-static-block" "^7.26.0"
"@babel/plugin-transform-classes" "^7.25.9"
"@babel/plugin-transform-computed-properties" "^7.25.9"
"@babel/plugin-transform-destructuring" "^7.25.9"
@@ -923,6 +904,7 @@
"@babel/plugin-transform-private-property-in-object" "^7.25.9"
"@babel/plugin-transform-property-literals" "^7.25.9"
"@babel/plugin-transform-regenerator" "^7.25.9"
+ "@babel/plugin-transform-regexp-modifiers" "^7.26.0"
"@babel/plugin-transform-reserved-words" "^7.25.9"
"@babel/plugin-transform-shorthand-properties" "^7.25.9"
"@babel/plugin-transform-spread" "^7.25.9"
@@ -942,7 +924,7 @@
"@babel/preset-modules@0.1.6-no-external-plugins":
version "0.1.6-no-external-plugins"
- resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a"
integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
@@ -950,9 +932,9 @@
esutils "^2.0.2"
"@babel/preset-react@^7.24.1":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.25.9.tgz"
- integrity sha512-D3to0uSPiWE7rBrdIICCd0tJSIGpLaaGptna2+w7Pft5xMqLpA1sz99DK5TZ1TjGbdQ/VI1eCSZ06dv3lT4JOw==
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.26.3.tgz#7c5e028d623b4683c1f83a0bd4713b9100560caa"
+ integrity sha512-Nl03d6T9ky516DGK2YMxrTqvnpUW63TnJMOMonj+Zae0JiPC5BC9xPMSL6L8fiSpA5vP88qfygavVQvnLp+6Cw==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/helper-validator-option" "^7.25.9"
@@ -962,9 +944,9 @@
"@babel/plugin-transform-react-pure-annotations" "^7.25.9"
"@babel/preset-typescript@^7.24.1":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.25.9.tgz"
- integrity sha512-XWxw1AcKk36kgxf4C//fl0ikjLeqGUWn062/Fd8GtpTfDJOX6Ud95FK+4JlDA36BX4bNGndXi3a6Vr4Jo5/61A==
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz#4a570f1b8d104a242d923957ffa1eaff142a106d"
+ integrity sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==
dependencies:
"@babel/helper-plugin-utils" "^7.25.9"
"@babel/helper-validator-option" "^7.25.9"
@@ -973,55 +955,72 @@
"@babel/plugin-transform-typescript" "^7.25.9"
"@babel/runtime@^7.12.5", "@babel/runtime@^7.17.8", "@babel/runtime@^7.24.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
- version "7.25.4"
- resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.4.tgz"
- integrity sha512-DSgLeL/FNcpXuzav5wfYvHCGvynXkJbn3Zvc3823AEe9nPwW9IK4UoCSS5yGymmQzN0pCPvivtgS6/8U2kkm1w==
+ version "7.26.0"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1"
+ integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==
dependencies:
regenerator-runtime "^0.14.0"
-"@babel/template@^7.22.5", "@babel/template@^7.25.0", "@babel/template@^7.25.9", "@babel/template@^7.3.3":
+"@babel/template@^7.22.5", "@babel/template@^7.25.9", "@babel/template@^7.3.3":
version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016"
integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==
dependencies:
"@babel/code-frame" "^7.25.9"
"@babel/parser" "^7.25.9"
"@babel/types" "^7.25.9"
-"@babel/traverse@^7.18.9", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.9":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz"
- integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==
+"@babel/traverse@^7.18.9", "@babel/traverse@^7.25.9":
+ version "7.26.4"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.26.4.tgz#ac3a2a84b908dde6d463c3bfa2c5fdc1653574bd"
+ integrity sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==
dependencies:
- "@babel/code-frame" "^7.25.9"
- "@babel/generator" "^7.25.9"
- "@babel/parser" "^7.25.9"
+ "@babel/code-frame" "^7.26.2"
+ "@babel/generator" "^7.26.3"
+ "@babel/parser" "^7.26.3"
"@babel/template" "^7.25.9"
- "@babel/types" "^7.25.9"
+ "@babel/types" "^7.26.3"
debug "^4.3.1"
globals "^11.1.0"
-"@babel/types@^7.0.0", "@babel/types@^7.18.9", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.25.2", "@babel/types@^7.25.6", "@babel/types@^7.25.9", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
- version "7.25.9"
- resolved "https://registry.npmjs.org/@babel/types/-/types-7.25.9.tgz"
- integrity sha512-OwS2CM5KocvQ/k7dFJa8i5bNGJP0hXWfVCfDkqRFP1IreH1JDC7wG6eCYCi0+McbfT8OR/kNqsI0UU0xP9H6PQ==
+"@babel/types@^7.0.0", "@babel/types@^7.18.9", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.26.3", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
+ version "7.26.3"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.3.tgz#37e79830f04c2b5687acc77db97fbc75fb81f3c0"
+ integrity sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==
dependencies:
"@babel/helper-string-parser" "^7.25.9"
"@babel/helper-validator-identifier" "^7.25.9"
-"@base2/pretty-print-object@1.0.1":
- version "1.0.1"
- resolved "https://registry.npmjs.org/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz"
- integrity sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==
-
"@bcoe/v8-coverage@^0.2.3":
version "0.2.3"
- resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
+"@bundled-es-modules/cookie@^2.0.1":
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz#b41376af6a06b3e32a15241d927b840a9b4de507"
+ integrity sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==
+ dependencies:
+ cookie "^0.7.2"
+
+"@bundled-es-modules/statuses@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@bundled-es-modules/statuses/-/statuses-1.0.1.tgz#761d10f44e51a94902c4da48675b71a76cc98872"
+ integrity sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==
+ dependencies:
+ statuses "^2.0.1"
+
+"@bundled-es-modules/tough-cookie@^0.1.6":
+ version "0.1.6"
+ resolved "https://registry.yarnpkg.com/@bundled-es-modules/tough-cookie/-/tough-cookie-0.1.6.tgz#fa9cd3cedfeecd6783e8b0d378b4a99e52bde5d3"
+ integrity sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==
+ dependencies:
+ "@types/tough-cookie" "^4.0.5"
+ tough-cookie "^4.1.4"
+
"@chromatic-com/storybook@^3.2.2":
version "3.2.2"
- resolved "https://registry.npmjs.org/@chromatic-com/storybook/-/storybook-3.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/@chromatic-com/storybook/-/storybook-3.2.2.tgz#08754443de55618f802f88450c35266fd6d25db5"
integrity sha512-xmXt/GW0hAPbzNTrxYuVo43Adrtjue4DeVrsoIIEeJdGaPNNeNf+DHMlJKOBdlHmCnFUoe9R/0mLM9zUp5bKWw==
dependencies:
chromatic "^11.15.0"
@@ -1032,7 +1031,7 @@
"@date-fns/tz@^1.2.0":
version "1.2.0"
- resolved "https://registry.npmjs.org/@date-fns/tz/-/tz-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@date-fns/tz/-/tz-1.2.0.tgz#81cb3211693830babaf3b96aff51607e143030a6"
integrity sha512-LBrd7MiJZ9McsOgxqWX7AaxrDjcFVjWH/tIKJd7pnR7McaslGYOP1QmmiBXdJH/H/yLCT+rcQ7FaPBUxRGUtrg==
"@emnapi/runtime@^1.2.0":
@@ -1064,7 +1063,7 @@
"@esbuild/darwin-arm64@0.24.0":
version "0.24.0"
- resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz"
+ resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz#2d0d9414f2acbffd2d86e98253914fca603a53dd"
integrity sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==
"@esbuild/darwin-x64@0.24.0":
@@ -1163,20 +1162,20 @@
integrity sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
- version "4.4.0"
- resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
- integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz#d1145bf2c20132d6400495d6df4bf59362fd9d56"
+ integrity sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==
dependencies:
- eslint-visitor-keys "^3.3.0"
+ eslint-visitor-keys "^3.4.3"
"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.6.1":
- version "4.11.0"
- resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz"
- integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==
+ version "4.12.1"
+ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0"
+ integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==
"@eslint/eslintrc@^2.1.4":
version "2.1.4"
- resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad"
integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==
dependencies:
ajv "^6.12.4"
@@ -1189,10 +1188,10 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
-"@eslint/js@8.57.0":
- version "8.57.0"
- resolved "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz"
- integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==
+"@eslint/js@8.57.1":
+ version "8.57.1"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2"
+ integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==
"@faker-js/faker@^9.3.0":
version "9.3.0"
@@ -1200,71 +1199,71 @@
integrity sha512-r0tJ3ZOkMd9xsu3VRfqlFR6cz0V/jFYRswAIpC+m/DIfAUXq7g8N7wTAlhSANySXYGKzGryfDXwtwsY8TxEIDw==
"@floating-ui/core@^1.6.0":
- version "1.6.7"
- resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.7.tgz"
- integrity sha512-yDzVT/Lm101nQ5TCVeK65LtdN7Tj4Qpr9RTXJ2vPFLqtLxwOrpoxAHAJI8J3yYWUc40J0BDBheaitK5SJmno2g==
+ version "1.6.8"
+ resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.6.8.tgz#aa43561be075815879305965020f492cdb43da12"
+ integrity sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==
dependencies:
- "@floating-ui/utils" "^0.2.7"
+ "@floating-ui/utils" "^0.2.8"
"@floating-ui/dom@^1.0.0", "@floating-ui/dom@^1.6.5":
- version "1.6.10"
- resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.10.tgz"
- integrity sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A==
+ version "1.6.12"
+ resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.12.tgz#6333dcb5a8ead3b2bf82f33d6bc410e95f54e556"
+ integrity sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==
dependencies:
"@floating-ui/core" "^1.6.0"
- "@floating-ui/utils" "^0.2.7"
+ "@floating-ui/utils" "^0.2.8"
"@floating-ui/react-dom@^2.0.0":
- version "2.1.1"
- resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.1.tgz"
- integrity sha512-4h84MJt3CHrtG18mGsXuLCHMrug49d7DFkU0RMIyshRveBeyV2hmV/pDaF2Uxtu8kgq5r46llp5E5FQiR0K2Yg==
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.2.tgz#a1349bbf6a0e5cb5ded55d023766f20a4d439a31"
+ integrity sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==
dependencies:
"@floating-ui/dom" "^1.0.0"
-"@floating-ui/utils@^0.2.7":
- version "0.2.7"
- resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.7.tgz"
- integrity sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==
+"@floating-ui/utils@^0.2.8":
+ version "0.2.8"
+ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.8.tgz#21a907684723bbbaa5f0974cf7730bd797eb8e62"
+ integrity sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==
"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0":
version "9.3.0"
- resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb"
integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==
"@hapi/topo@^5.1.0":
version "5.1.0"
- resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012"
integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==
dependencies:
"@hapi/hoek" "^9.0.0"
"@hookform/resolvers@^3.9.1":
version "3.9.1"
- resolved "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.9.1.tgz"
+ resolved "https://registry.yarnpkg.com/@hookform/resolvers/-/resolvers-3.9.1.tgz#a23883c40bfd449cb6c6ab5a0fa0729184c950ff"
integrity sha512-ud2HqmGBM0P0IABqoskKWI6PEf6ZDDBZkFqe2Vnl+mTHCEHzr3ISjjZyCwTjC/qpL25JC9aIDkloQejvMeq0ug==
-"@humanwhocodes/config-array@^0.11.14":
- version "0.11.14"
- resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz"
- integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==
+"@humanwhocodes/config-array@^0.13.0":
+ version "0.13.0"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748"
+ integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==
dependencies:
- "@humanwhocodes/object-schema" "^2.0.2"
+ "@humanwhocodes/object-schema" "^2.0.3"
debug "^4.3.1"
minimatch "^3.0.5"
"@humanwhocodes/module-importer@^1.0.1":
version "1.0.1"
- resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
-"@humanwhocodes/object-schema@^2.0.2":
+"@humanwhocodes/object-schema@^2.0.3":
version "2.0.3"
- resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
"@img/sharp-darwin-arm64@0.33.5":
version "0.33.5"
- resolved "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz"
+ resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08"
integrity sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==
optionalDependencies:
"@img/sharp-libvips-darwin-arm64" "1.0.4"
@@ -1278,7 +1277,7 @@
"@img/sharp-libvips-darwin-arm64@1.0.4":
version "1.0.4"
- resolved "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz#447c5026700c01a993c7804eb8af5f6e9868c07f"
integrity sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==
"@img/sharp-libvips-darwin-x64@1.0.4":
@@ -1375,9 +1374,42 @@
resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz#56f00962ff0c4e0eb93d34a047d29fa995e3e342"
integrity sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==
+"@inquirer/confirm@^5.0.0":
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-5.1.0.tgz#061cd0790c8debe092353589a501211b0d6c53ef"
+ integrity sha512-osaBbIMEqVFjTX5exoqPXs6PilWQdjaLhGtMDXMXg/yxkHXNq43GlxGyTA35lK2HpzUgDN+Cjh/2AmqCN0QJpw==
+ dependencies:
+ "@inquirer/core" "^10.1.1"
+ "@inquirer/type" "^3.0.1"
+
+"@inquirer/core@^10.1.1":
+ version "10.1.1"
+ resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-10.1.1.tgz#801e82649fb64bcb2b5e4667397ff8c25bccebab"
+ integrity sha512-rmZVXy9iZvO3ZStEe/ayuuwIJ23LSF13aPMlLMTQARX6lGUBDHGV8UB5i9MRrfy0+mZwt5/9bdy8llszSD3NQA==
+ dependencies:
+ "@inquirer/figures" "^1.0.8"
+ "@inquirer/type" "^3.0.1"
+ ansi-escapes "^4.3.2"
+ cli-width "^4.1.0"
+ mute-stream "^2.0.0"
+ signal-exit "^4.1.0"
+ strip-ansi "^6.0.1"
+ wrap-ansi "^6.2.0"
+ yoctocolors-cjs "^2.1.2"
+
+"@inquirer/figures@^1.0.8":
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.8.tgz#d9e414a1376a331a0e71b151fea27c48845788b0"
+ integrity sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==
+
+"@inquirer/type@^3.0.1":
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-3.0.1.tgz#619ce9f65c3e114d8e39c41822bed3440d20b478"
+ integrity sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A==
+
"@isaacs/cliui@^8.0.2":
version "8.0.2"
- resolved "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
dependencies:
string-width "^5.1.2"
@@ -1389,7 +1421,7 @@
"@istanbuljs/load-nyc-config@^1.0.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==
dependencies:
camelcase "^5.3.1"
@@ -1400,12 +1432,12 @@
"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3":
version "0.1.3"
- resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
"@jest/console@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc"
integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==
dependencies:
"@jest/types" "^29.6.3"
@@ -1417,7 +1449,7 @@
"@jest/core@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f"
integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==
dependencies:
"@jest/console" "^29.7.0"
@@ -1451,14 +1483,14 @@
"@jest/create-cache-key-function@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz#793be38148fab78e65f40ae30c36785f4ad859f0"
integrity sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==
dependencies:
"@jest/types" "^29.6.3"
"@jest/environment@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7"
integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==
dependencies:
"@jest/fake-timers" "^29.7.0"
@@ -1468,14 +1500,14 @@
"@jest/expect-utils@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6"
integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==
dependencies:
jest-get-type "^29.6.3"
"@jest/expect@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2"
integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==
dependencies:
expect "^29.7.0"
@@ -1483,7 +1515,7 @@
"@jest/fake-timers@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565"
integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==
dependencies:
"@jest/types" "^29.6.3"
@@ -1495,7 +1527,7 @@
"@jest/globals@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d"
integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==
dependencies:
"@jest/environment" "^29.7.0"
@@ -1505,7 +1537,7 @@
"@jest/reporters@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7"
integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==
dependencies:
"@bcoe/v8-coverage" "^0.2.3"
@@ -1535,14 +1567,14 @@
"@jest/schemas@^29.6.3":
version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03"
integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==
dependencies:
"@sinclair/typebox" "^0.27.8"
"@jest/source-map@^29.6.3":
version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4"
integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==
dependencies:
"@jridgewell/trace-mapping" "^0.3.18"
@@ -1551,7 +1583,7 @@
"@jest/test-result@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c"
integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==
dependencies:
"@jest/console" "^29.7.0"
@@ -1561,7 +1593,7 @@
"@jest/test-sequencer@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce"
integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==
dependencies:
"@jest/test-result" "^29.7.0"
@@ -1571,7 +1603,7 @@
"@jest/transform@^29.7.0":
version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c"
integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==
dependencies:
"@babel/core" "^7.11.6"
@@ -1592,7 +1624,7 @@
"@jest/types@^29.6.3":
version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59"
integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==
dependencies:
"@jest/schemas" "^29.6.3"
@@ -1603,9 +1635,9 @@
chalk "^4.0.0"
"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5":
- version "0.3.5"
- resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz"
- integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==
+ version "0.3.8"
+ resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz#4f0e06362e01362f823d348f1872b08f666d8142"
+ integrity sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==
dependencies:
"@jridgewell/set-array" "^1.2.1"
"@jridgewell/sourcemap-codec" "^1.4.10"
@@ -1613,17 +1645,17 @@
"@jridgewell/resolve-uri@^3.1.0":
version "3.1.2"
- resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6"
integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
"@jridgewell/set-array@^1.2.1":
version "1.2.1"
- resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280"
integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
"@jridgewell/source-map@^0.3.3":
version "0.3.6"
- resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz"
+ resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a"
integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==
dependencies:
"@jridgewell/gen-mapping" "^0.3.5"
@@ -1631,12 +1663,12 @@
"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15", "@jridgewell/sourcemap-codec@^1.5.0":
version "1.5.0"
- resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a"
integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==
-"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
+"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
version "0.3.25"
- resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
dependencies:
"@jridgewell/resolve-uri" "^3.1.0"
@@ -1644,78 +1676,90 @@
"@mdx-js/react@^3.0.0":
version "3.1.0"
- resolved "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-3.1.0.tgz#c4522e335b3897b9a845db1dbdd2f966ae8fb0ed"
integrity sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==
dependencies:
"@types/mdx" "^2.0.0"
-"@next/env@14.2.16":
- version "14.2.16"
- resolved "https://registry.npmjs.org/@next/env/-/env-14.2.16.tgz"
- integrity sha512-fLrX5TfJzHCbnZ9YUSnGW63tMV3L4nSfhgOQ0iCcX21Pt+VSTDuaLsSuL8J/2XAiVA5AnzvXDpf6pMs60QxOag==
+"@mswjs/interceptors@^0.37.0":
+ version "0.37.3"
+ resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.37.3.tgz#1ed2460c2f056ffad2a179a119bb755ac50140a6"
+ integrity sha512-USvgCL/uOGFtVa6SVyRrC8kIAedzRohxIXN5LISlg5C5vLZCn7dgMFVSNhSF9cuBEFrm/O2spDWEZeMnw4ZXYg==
+ dependencies:
+ "@open-draft/deferred-promise" "^2.2.0"
+ "@open-draft/logger" "^0.3.0"
+ "@open-draft/until" "^2.0.0"
+ is-node-process "^1.2.0"
+ outvariant "^1.4.3"
+ strict-event-emitter "^0.5.1"
+
+"@next/env@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/env/-/env-14.2.20.tgz#0be2cc955f4eb837516e7d7382284cd5bc1d5a02"
+ integrity sha512-JfDpuOCB0UBKlEgEy/H6qcBSzHimn/YWjUHzKl1jMeUO+QVRdzmTTl8gFJaNO87c8DXmVKhFCtwxQ9acqB3+Pw==
"@next/eslint-plugin-next@15.0.3":
version "15.0.3"
- resolved "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-15.0.3.tgz#ce953098036d462f6901e423cc6445fc165b78c4"
integrity sha512-3Ln/nHq2V+v8uIaxCR6YfYo7ceRgZNXfTd3yW1ukTaFbO+/I8jNakrjYWODvG9BuR2v5kgVtH/C8r0i11quOgw==
dependencies:
fast-glob "3.3.1"
-"@next/swc-darwin-arm64@14.2.16":
- version "14.2.16"
- resolved "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.16.tgz"
- integrity sha512-uFT34QojYkf0+nn6MEZ4gIWQ5aqGF11uIZ1HSxG+cSbj+Mg3+tYm8qXYd3dKN5jqKUm5rBVvf1PBRO/MeQ6rxw==
+"@next/swc-darwin-arm64@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.20.tgz#3c99d318c08362aedde5d2778eec3a50b8085d99"
+ integrity sha512-WDfq7bmROa5cIlk6ZNonNdVhKmbCv38XteVFYsxea1vDJt3SnYGgxLGMTXQNfs5OkFvAhmfKKrwe7Y0Hs+rWOg==
-"@next/swc-darwin-x64@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.16.tgz#c6307af69699583ef39b41b182bed76a3c2c9461"
- integrity sha512-mCecsFkYezem0QiZlg2bau3Xul77VxUD38b/auAjohMA22G9KTJneUYMv78vWoCCFkleFAhY1NIvbyjj1ncG9g==
+"@next/swc-darwin-x64@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.20.tgz#fd547fad1446a677f29c1160006fdd482bba4052"
+ integrity sha512-XIQlC+NAmJPfa2hruLvr1H1QJJeqOTDV+v7tl/jIdoFvqhoihvSNykLU/G6NMgoeo+e/H7p/VeWSOvMUHKtTIg==
-"@next/swc-linux-arm64-gnu@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.16.tgz#47a74cb824cb185840f6fbea90dec9fc7a248a33"
- integrity sha512-yhkNA36+ECTC91KSyZcgWgKrYIyDnXZj8PqtJ+c2pMvj45xf7y/HrgI17hLdrcYamLfVt7pBaJUMxADtPaczHA==
+"@next/swc-linux-arm64-gnu@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.20.tgz#1d6ba1929d3a11b74c0185cdeca1e38b824222ca"
+ integrity sha512-pnzBrHTPXIMm5QX3QC8XeMkpVuoAYOmyfsO4VlPn+0NrHraNuWjdhe+3xLq01xR++iCvX+uoeZmJDKcOxI201Q==
-"@next/swc-linux-arm64-musl@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.16.tgz#bbbdaab8aa939d12fd3b3b9ad84f6f3964cafeb4"
- integrity sha512-X2YSyu5RMys8R2lA0yLMCOCtqFOoLxrq2YbazFvcPOE4i/isubYjkh+JCpRmqYfEuCVltvlo+oGfj/b5T2pKUA==
+"@next/swc-linux-arm64-musl@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.20.tgz#0fe0c67b5d916f99ca76b39416557af609768f17"
+ integrity sha512-WhJJAFpi6yqmUx1momewSdcm/iRXFQS0HU2qlUGlGE/+98eu7JWLD5AAaP/tkK1mudS/rH2f9E3WCEF2iYDydQ==
-"@next/swc-linux-x64-gnu@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.16.tgz#df9f542c9391f8ce32979ee32cff4773f92cd712"
- integrity sha512-9AGcX7VAkGbc5zTSa+bjQ757tkjr6C/pKS7OK8cX7QEiK6MHIIezBLcQ7gQqbDW2k5yaqba2aDtaBeyyZh1i6Q==
+"@next/swc-linux-x64-gnu@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.20.tgz#6d29fa8cdb6a9f8250c2048aaa24538f0cd0b02d"
+ integrity sha512-ao5HCbw9+iG1Kxm8XsGa3X174Ahn17mSYBQlY6VGsdsYDAbz/ZP13wSLfvlYoIDn1Ger6uYA+yt/3Y9KTIupRg==
-"@next/swc-linux-x64-musl@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.16.tgz#4c7792fbd67561d06228ec6a4de73faf22f40d47"
- integrity sha512-Klgeagrdun4WWDaOizdbtIIm8khUDQJ/5cRzdpXHfkbY91LxBXeejL4kbZBrpR/nmgRrQvmz4l3OtttNVkz2Sg==
+"@next/swc-linux-x64-musl@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.20.tgz#bfc57482bc033fda8455e8aab1c3cbc44f0c4690"
+ integrity sha512-CXm/kpnltKTT7945np6Td3w7shj/92TMRPyI/VvveFe8+YE+/YOJ5hyAWK5rpx711XO1jBCgXl211TWaxOtkaA==
-"@next/swc-win32-arm64-msvc@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.16.tgz#d556ba513ec78452239e295d0b9096ba0053e631"
- integrity sha512-PwW8A1UC1Y0xIm83G3yFGPiOBftJK4zukTmk7DI1CebyMOoaVpd8aSy7K6GhobzhkjYvqS/QmzcfsWG2Dwizdg==
+"@next/swc-win32-arm64-msvc@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.20.tgz#6f7783e643310510240a981776532ffe0e02af95"
+ integrity sha512-upJn2HGQgKNDbXVfIgmqT2BN8f3z/mX8ddoyi1I565FHbfowVK5pnMEwauvLvaJf4iijvuKq3kw/b6E9oIVRWA==
-"@next/swc-win32-ia32-msvc@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.16.tgz#6d093a33bc285404b1cd817959ce6129f4b32c02"
- integrity sha512-jhPl3nN0oKEshJBNDAo0etGMzv0j3q3VYorTSFqH1o3rwv1MQRdor27u1zhkgsHPNeY1jxcgyx1ZsCkDD1IHgg==
+"@next/swc-win32-ia32-msvc@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.20.tgz#58c7720687e80a13795e22c29d5860fa142e44fc"
+ integrity sha512-igQW/JWciTGJwj3G1ipalD2V20Xfx3ywQy17IV0ciOUBbFhNfyU1DILWsTi32c8KmqgIDviUEulW/yPb2FF90w==
-"@next/swc-win32-x64-msvc@14.2.16":
- version "14.2.16"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.16.tgz#4d8e89f47a2ea53b040cc9fee0a351b0bb6188c4"
- integrity sha512-OA7NtfxgirCjfqt+02BqxC3MIgM/JaGjw9tOe4fyZgPsqfseNiMPnCRP44Pfs+Gpo9zPN+SXaFsgP6vk8d571A==
+"@next/swc-win32-x64-msvc@14.2.20":
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.20.tgz#689bc7beb8005b73c95d926e7edfb7f73efc78f2"
+ integrity sha512-AFmqeLW6LtxeFTuoB+MXFeM5fm5052i3MU6xD0WzJDOwku6SkZaxb1bxjBaRC8uNqTRTSPl0yMFtjNowIVI67w==
"@next/third-parties@^15.0.4":
- version "15.0.4"
- resolved "https://registry.yarnpkg.com/@next/third-parties/-/third-parties-15.0.4.tgz#d9475e8677063e1fb82a371247e0a715a4eca4eb"
- integrity sha512-Pa0VWD5zROfJGyVIPXvGVE75fGOBWyIwTzsjCWCQ68KzapRRkEFPhyI0PFMsHXLsLhrqM5bx5wwxe7KP7e5tQw==
+ version "15.1.0"
+ resolved "https://registry.yarnpkg.com/@next/third-parties/-/third-parties-15.1.0.tgz#ab898927a006fe41ef90888220b51e22e11e110c"
+ integrity sha512-eiv8vTo5HJOE/LabnIjRNVpN0hvjXfqPrE7D/XecmWvHBs9KrIISxlb1NZizDMcvjGtnHkdupWsquM9ur25rYw==
dependencies:
third-party-capital "1.0.20"
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
dependencies:
"@nodelib/fs.stat" "2.0.5"
@@ -1723,274 +1767,285 @@
"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
version "2.0.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
version "1.2.8"
- resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
dependencies:
"@nodelib/fs.scandir" "2.1.5"
fastq "^1.6.0"
+"@nolyfill/is-core-module@1.0.39":
+ version "1.0.39"
+ resolved "https://registry.yarnpkg.com/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz#3dc35ba0f1e66b403c00b39344f870298ebb1c8e"
+ integrity sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==
+
+"@open-draft/deferred-promise@^2.2.0":
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/@open-draft/deferred-promise/-/deferred-promise-2.2.0.tgz#4a822d10f6f0e316be4d67b4d4f8c9a124b073bd"
+ integrity sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==
+
+"@open-draft/logger@^0.3.0":
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/@open-draft/logger/-/logger-0.3.0.tgz#2b3ab1242b360aa0adb28b85f5d7da1c133a0954"
+ integrity sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==
+ dependencies:
+ is-node-process "^1.2.0"
+ outvariant "^1.4.0"
+
+"@open-draft/until@^2.0.0", "@open-draft/until@^2.1.0":
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-2.1.0.tgz#0acf32f470af2ceaf47f095cdecd40d68666efda"
+ integrity sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==
+
"@opentelemetry/api-logs@0.52.1":
version "0.52.1"
- resolved "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.52.1.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/api-logs/-/api-logs-0.52.1.tgz#52906375da4d64c206b0c4cb8ffa209214654ecc"
integrity sha512-qnSqB2DQ9TPP96dl8cDubDvrUyWc0/sK81xHTK8eSUspzDM3bsewX903qclQFvVhgStjRWdC5bLb3kQqMkfV5A==
dependencies:
"@opentelemetry/api" "^1.0.0"
-"@opentelemetry/api-logs@0.53.0":
- version "0.53.0"
- resolved "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.53.0.tgz"
- integrity sha512-8HArjKx+RaAI8uEIgcORbZIPklyh1YLjPSBus8hjRmvLi6DeFzgOcdZ7KwPabKj8mXF8dX0hyfAyGfycz0DbFw==
- dependencies:
- "@opentelemetry/api" "^1.0.0"
-
-"@opentelemetry/api-logs@0.54.2":
- version "0.54.2"
- resolved "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.54.2.tgz"
- integrity sha512-4MTVwwmLgUh5QrJnZpYo6YRO5IBLAggf2h8gWDblwRagDStY13aEvt7gGk3jewrMaPlHiF83fENhIx0HO97/cQ==
+"@opentelemetry/api-logs@0.56.0":
+ version "0.56.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/api-logs/-/api-logs-0.56.0.tgz#68f8c51ca905c260b610c8a3c67d3f9fa3d59a45"
+ integrity sha512-Wr39+94UNNG3Ei9nv3pHd4AJ63gq5nSemMRpCd8fPwDL9rN3vK26lzxfH27mw16XzOSO+TpyQwBAMaLxaPWG0g==
dependencies:
"@opentelemetry/api" "^1.3.0"
"@opentelemetry/api@^1.0.0", "@opentelemetry/api@^1.3.0", "@opentelemetry/api@^1.8", "@opentelemetry/api@^1.9.0":
version "1.9.0"
- resolved "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.9.0.tgz#d03eba68273dc0f7509e2a3d5cba21eae10379fe"
integrity sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==
-"@opentelemetry/context-async-hooks@^1.25.1":
+"@opentelemetry/context-async-hooks@^1.29.0":
version "1.29.0"
- resolved "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.29.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/context-async-hooks/-/context-async-hooks-1.29.0.tgz#3b3836c913834afa7720fdcf9687620f49b2cf37"
integrity sha512-TKT91jcFXgHyIDF1lgJF3BHGIakn6x0Xp7Tq3zoS3TMPzT9IlP0xEavWP8C1zGjU9UmZP2VR1tJhW9Az1A3w8Q==
-"@opentelemetry/core@1.26.0":
- version "1.26.0"
- resolved "https://registry.npmjs.org/@opentelemetry/core/-/core-1.26.0.tgz"
- integrity sha512-1iKxXXE8415Cdv0yjG3G6hQnB5eVEsJce3QaawX8SjDn0mAS0ZM8fAbZZJD4ajvhC15cePvosSCut404KrIIvQ==
- dependencies:
- "@opentelemetry/semantic-conventions" "1.27.0"
-
-"@opentelemetry/core@1.29.0", "@opentelemetry/core@^1.1.0", "@opentelemetry/core@^1.25.1", "@opentelemetry/core@^1.8.0":
+"@opentelemetry/core@1.29.0", "@opentelemetry/core@^1.1.0", "@opentelemetry/core@^1.26.0", "@opentelemetry/core@^1.29.0", "@opentelemetry/core@^1.8.0":
version "1.29.0"
- resolved "https://registry.npmjs.org/@opentelemetry/core/-/core-1.29.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.29.0.tgz#a9397dfd9a8b37b2435b5e44be16d39ec1c82bd9"
integrity sha512-gmT7vAreXl0DTHD2rVZcw3+l2g84+5XiHIqdBUxXbExymPCvSsGOpiwMmn8nkiJur28STV31wnhIDrzWDPzjfA==
dependencies:
"@opentelemetry/semantic-conventions" "1.28.0"
-"@opentelemetry/instrumentation-amqplib@^0.43.0":
- version "0.43.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-amqplib/-/instrumentation-amqplib-0.43.0.tgz"
- integrity sha512-ALjfQC+0dnIEcvNYsbZl/VLh7D2P1HhFF4vicRKHhHFIUV3Shpg4kXgiek5PLhmeKSIPiUB25IYH5RIneclL4A==
+"@opentelemetry/instrumentation-amqplib@^0.45.0":
+ version "0.45.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-amqplib/-/instrumentation-amqplib-0.45.0.tgz#747d72e38ff89266670e730ead90b85b6edc62d3"
+ integrity sha512-SlKLsOS65NGMIBG1Lh/hLrMDU9WzTUF25apnV6ZmWZB1bBmUwan7qrwwrTu1cL5LzJWCXOdZPuTaxP7pC9qxnQ==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-connect@0.40.0":
- version "0.40.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-connect/-/instrumentation-connect-0.40.0.tgz"
- integrity sha512-3aR/3YBQ160siitwwRLjwqrv2KBT16897+bo6yz8wIfel6nWOxTZBJudcbsK3p42pTC7qrbotJ9t/1wRLpv79Q==
+"@opentelemetry/instrumentation-connect@0.42.0":
+ version "0.42.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-connect/-/instrumentation-connect-0.42.0.tgz#daebedbe65068746c9db0eee6e3a636a0912d251"
+ integrity sha512-bOoYHBmbnq/jFaLHmXJ55VQ6jrH5fHDMAPjFM0d3JvR0dvIqW7anEoNC33QqYGFYUfVJ50S0d/eoyF61ALqQuA==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
"@types/connect" "3.4.36"
-"@opentelemetry/instrumentation-dataloader@0.12.0":
- version "0.12.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-dataloader/-/instrumentation-dataloader-0.12.0.tgz"
- integrity sha512-pnPxatoFE0OXIZDQhL2okF//dmbiWFzcSc8pUg9TqofCLYZySSxDCgQc69CJBo5JnI3Gz1KP+mOjS4WAeRIH4g==
+"@opentelemetry/instrumentation-dataloader@0.15.0":
+ version "0.15.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-dataloader/-/instrumentation-dataloader-0.15.0.tgz#c3ac6f41672961a489080edd2c59aceebe412798"
+ integrity sha512-5fP35A2jUPk4SerVcduEkpbRAIoqa2PaP5rWumn01T1uSbavXNccAr3Xvx1N6xFtZxXpLJq4FYqGFnMgDWgVng==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
-"@opentelemetry/instrumentation-express@0.44.0":
+"@opentelemetry/instrumentation-express@0.46.0":
+ version "0.46.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-express/-/instrumentation-express-0.46.0.tgz#8dfbc9dc567e2e864a00a6a7edfbec2dd8482056"
+ integrity sha512-BCEClDj/HPq/1xYRAlOr6z+OUnbp2eFp18DSrgyQz4IT9pkdYk8eWHnMi9oZSqlC6J5mQzkFmaW5RrKb1GLQhg==
+ dependencies:
+ "@opentelemetry/core" "^1.8.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
+ "@opentelemetry/semantic-conventions" "^1.27.0"
+
+"@opentelemetry/instrumentation-fastify@0.43.0":
+ version "0.43.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-fastify/-/instrumentation-fastify-0.43.0.tgz#855e259733bd75e21cb54cc110a7910861b200a4"
+ integrity sha512-Lmdsg7tYiV+K3/NKVAQfnnLNGmakUOFdB0PhoTh2aXuSyCmyNnnDvhn2MsArAPTZ68wnD5Llh5HtmiuTkf+DyQ==
+ dependencies:
+ "@opentelemetry/core" "^1.8.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
+ "@opentelemetry/semantic-conventions" "^1.27.0"
+
+"@opentelemetry/instrumentation-fs@0.18.0":
+ version "0.18.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-fs/-/instrumentation-fs-0.18.0.tgz#6ef0e58cda3212ce2cd17bddc4dd74f768fd74c0"
+ integrity sha512-kC40y6CEMONm8/MWwoF5GHWIC7gOdF+g3sgsjfwJaUkgD6bdWV+FgG0XApqSbTQndICKzw3RonVk8i7s6mHqhA==
+ dependencies:
+ "@opentelemetry/core" "^1.8.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
+
+"@opentelemetry/instrumentation-generic-pool@0.42.0":
+ version "0.42.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-generic-pool/-/instrumentation-generic-pool-0.42.0.tgz#6c6c6dcf2300e803acb22b2b914c6053acb80bf3"
+ integrity sha512-J4QxqiQ1imtB9ogzsOnHra0g3dmmLAx4JCeoK3o0rFes1OirljNHnO8Hsj4s1jAir8WmWvnEEQO1y8yk6j2tog==
+ dependencies:
+ "@opentelemetry/instrumentation" "^0.56.0"
+
+"@opentelemetry/instrumentation-graphql@0.46.0":
+ version "0.46.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-graphql/-/instrumentation-graphql-0.46.0.tgz#fbcf0844656c759294c03c30c471fc4862209a01"
+ integrity sha512-tplk0YWINSECcK89PGM7IVtOYenXyoOuhOQlN0X0YrcDUfMS4tZMKkVc0vyhNWYYrexnUHwNry2YNBNugSpjlQ==
+ dependencies:
+ "@opentelemetry/instrumentation" "^0.56.0"
+
+"@opentelemetry/instrumentation-hapi@0.44.0":
version "0.44.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-express/-/instrumentation-express-0.44.0.tgz"
- integrity sha512-GWgibp6Q0wxyFaaU8ERIgMMYgzcHmGrw3ILUtGchLtLncHNOKk0SNoWGqiylXWWT4HTn5XdV8MGawUgpZh80cA==
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-hapi/-/instrumentation-hapi-0.44.0.tgz#5b4524bef636209ba6cc95cfbb976b605c2946cd"
+ integrity sha512-4HdNIMNXWK1O6nsaQOrACo83QWEVoyNODTdVDbUqtqXiv2peDfD0RAPhSQlSGWLPw3S4d9UoOmrV7s2HYj6T2A==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-fastify@0.41.0":
- version "0.41.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-fastify/-/instrumentation-fastify-0.41.0.tgz"
- integrity sha512-pNRjFvf0mvqfJueaeL/qEkuGJwgtE5pgjIHGYwjc2rMViNCrtY9/Sf+Nu8ww6dDd/Oyk2fwZZP7i0XZfCnETrA==
+"@opentelemetry/instrumentation-http@0.56.0":
+ version "0.56.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-http/-/instrumentation-http-0.56.0.tgz#f7a9e1bb4126c0d918775c1368a42b8afd5a48a2"
+ integrity sha512-/bWHBUAq8VoATnH9iLk5w8CE9+gj+RgYSUphe7hry472n6fYl7+4PvuScoQMdmSUTprKq/gyr2kOWL6zrC7FkQ==
dependencies:
- "@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.54.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
-
-"@opentelemetry/instrumentation-fs@0.16.0":
- version "0.16.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-fs/-/instrumentation-fs-0.16.0.tgz"
- integrity sha512-hMDRUxV38ln1R3lNz6osj3YjlO32ykbHqVrzG7gEhGXFQfu7LJUx8t9tEwE4r2h3CD4D0Rw4YGDU4yF4mP3ilg==
- dependencies:
- "@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.54.0"
-
-"@opentelemetry/instrumentation-generic-pool@0.39.0":
- version "0.39.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-generic-pool/-/instrumentation-generic-pool-0.39.0.tgz"
- integrity sha512-y4v8Y+tSfRB3NNBvHjbjrn7rX/7sdARG7FuK6zR8PGb28CTa0kHpEGCJqvL9L8xkTNvTXo+lM36ajFGUaK1aNw==
- dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
-
-"@opentelemetry/instrumentation-graphql@0.44.0":
- version "0.44.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-graphql/-/instrumentation-graphql-0.44.0.tgz"
- integrity sha512-FYXTe3Bv96aNpYktqm86BFUTpjglKD0kWI5T5bxYkLUPEPvFn38vWGMJTGrDMVou/i55E4jlWvcm6hFIqLsMbg==
- dependencies:
- "@opentelemetry/instrumentation" "^0.54.0"
-
-"@opentelemetry/instrumentation-hapi@0.41.0":
- version "0.41.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-hapi/-/instrumentation-hapi-0.41.0.tgz"
- integrity sha512-jKDrxPNXDByPlYcMdZjNPYCvw0SQJjN+B1A+QH+sx+sAHsKSAf9hwFiJSrI6C4XdOls43V/f/fkp9ITkHhKFbQ==
- dependencies:
- "@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.53.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
-
-"@opentelemetry/instrumentation-http@0.53.0":
- version "0.53.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.53.0.tgz"
- integrity sha512-H74ErMeDuZfj7KgYCTOFGWF5W9AfaPnqLQQxeFq85+D29wwV2yqHbz2IKLYpkOh7EI6QwDEl7rZCIxjJLyc/CQ==
- dependencies:
- "@opentelemetry/core" "1.26.0"
- "@opentelemetry/instrumentation" "0.53.0"
- "@opentelemetry/semantic-conventions" "1.27.0"
+ "@opentelemetry/core" "1.29.0"
+ "@opentelemetry/instrumentation" "0.56.0"
+ "@opentelemetry/semantic-conventions" "1.28.0"
+ forwarded-parse "2.1.2"
semver "^7.5.2"
-"@opentelemetry/instrumentation-ioredis@0.43.0":
- version "0.43.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-ioredis/-/instrumentation-ioredis-0.43.0.tgz"
- integrity sha512-i3Dke/LdhZbiUAEImmRG3i7Dimm/BD7t8pDDzwepSvIQ6s2X6FPia7561gw+64w+nx0+G9X14D7rEfaMEmmjig==
+"@opentelemetry/instrumentation-ioredis@0.46.0":
+ version "0.46.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-ioredis/-/instrumentation-ioredis-0.46.0.tgz#ec230466813f8ce82eb9ca9b23308ccfa460ce2b"
+ integrity sha512-sOdsq8oGi29V58p1AkefHvuB3l2ymP1IbxRIX3y4lZesQWKL8fLhBmy8xYjINSQ5gHzWul2yoz7pe7boxhZcqQ==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/redis-common" "^0.36.2"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-kafkajs@0.4.0":
- version "0.4.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-kafkajs/-/instrumentation-kafkajs-0.4.0.tgz"
- integrity sha512-I9VwDG314g7SDL4t8kD/7+1ytaDBRbZQjhVaQaVIDR8K+mlsoBhLsWH79yHxhHQKvwCSZwqXF+TiTOhoQVUt7A==
+"@opentelemetry/instrumentation-kafkajs@0.6.0":
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-kafkajs/-/instrumentation-kafkajs-0.6.0.tgz#5d1c6738da8e270acde9259521a9c6e0f421490c"
+ integrity sha512-MGQrzqEUAl0tacKJUFpuNHJesyTi51oUzSVizn7FdvJplkRIdS11FukyZBZJEscofSEdk7Ycmg+kNMLi5QHUFg==
dependencies:
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-knex@0.41.0":
- version "0.41.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-knex/-/instrumentation-knex-0.41.0.tgz"
- integrity sha512-OhI1SlLv5qnsnm2dOVrian/x3431P75GngSpnR7c4fcVFv7prXGYu29Z6ILRWJf/NJt6fkbySmwdfUUnFnHCTg==
- dependencies:
- "@opentelemetry/instrumentation" "^0.54.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
-
-"@opentelemetry/instrumentation-koa@0.43.0":
+"@opentelemetry/instrumentation-knex@0.43.0":
version "0.43.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-koa/-/instrumentation-koa-0.43.0.tgz"
- integrity sha512-lDAhSnmoTIN6ELKmLJBplXzT/Jqs5jGZehuG22EdSMaTwgjMpxMDI1YtlKEhiWPWkrz5LUsd0aOO0ZRc9vn3AQ==
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-knex/-/instrumentation-knex-0.43.0.tgz#1f45cfea69212bd579e4fa95c6d5cccdd9626b8e"
+ integrity sha512-mOp0TRQNFFSBj5am0WF67fRO7UZMUmsF3/7HSDja9g3H4pnj+4YNvWWyZn4+q0rGrPtywminAXe0rxtgaGYIqg==
+ dependencies:
+ "@opentelemetry/instrumentation" "^0.56.0"
+ "@opentelemetry/semantic-conventions" "^1.27.0"
+
+"@opentelemetry/instrumentation-koa@0.46.0":
+ version "0.46.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-koa/-/instrumentation-koa-0.46.0.tgz#bcdfb29f3b41be45355a9aa278fb231e19eb02e5"
+ integrity sha512-RcWXMQdJQANnPUaXbHY5G0Fg6gmleZ/ZtZeSsekWPaZmQq12FGk0L1UwodIgs31OlYfviAZ4yTeytoSUkgo5vQ==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-lru-memoizer@0.40.0":
- version "0.40.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-lru-memoizer/-/instrumentation-lru-memoizer-0.40.0.tgz"
- integrity sha512-21xRwZsEdMPnROu/QsaOIODmzw59IYpGFmuC4aFWvMj6stA8+Ei1tX67nkarJttlNjoM94um0N4X26AD7ff54A==
+"@opentelemetry/instrumentation-lru-memoizer@0.43.0":
+ version "0.43.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-lru-memoizer/-/instrumentation-lru-memoizer-0.43.0.tgz#7d3f524a10715d9f681e8d4ee6bfe91be80c82cf"
+ integrity sha512-fZc+1eJUV+tFxaB3zkbupiA8SL3vhDUq89HbDNg1asweYrEb9OlHIB+Ot14ZiHUc1qCmmWmZHbPTwa56mVVwzg==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
-"@opentelemetry/instrumentation-mongodb@0.48.0":
- version "0.48.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-mongodb/-/instrumentation-mongodb-0.48.0.tgz"
- integrity sha512-9YWvaGvrrcrydMsYGLu0w+RgmosLMKe3kv/UNlsPy8RLnCkN2z+bhhbjjjuxtUmvEuKZMCoXFluABVuBr1yhjw==
+"@opentelemetry/instrumentation-mongodb@0.50.0":
+ version "0.50.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-mongodb/-/instrumentation-mongodb-0.50.0.tgz#e5c60ad0bfbdd8ac3238c255a0662b7430083303"
+ integrity sha512-DtwJMjYFXFT5auAvv8aGrBj1h3ciA/dXQom11rxL7B1+Oy3FopSpanvwYxJ+z0qmBrQ1/iMuWELitYqU4LnlkQ==
dependencies:
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-mongoose@0.42.0":
- version "0.42.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-mongoose/-/instrumentation-mongoose-0.42.0.tgz"
- integrity sha512-AnWv+RaR86uG3qNEMwt3plKX1ueRM7AspfszJYVkvkehiicC3bHQA6vWdb6Zvy5HAE14RyFbu9+2hUUjR2NSyg==
+"@opentelemetry/instrumentation-mongoose@0.45.0":
+ version "0.45.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-mongoose/-/instrumentation-mongoose-0.45.0.tgz#c8179827769fac8528b681da5888ae1779bd844b"
+ integrity sha512-zHgNh+A01C5baI2mb5dAGyMC7DWmUpOfwpV8axtC0Hd5Uzqv+oqKgKbVDIVhOaDkPxjgVJwYF9YQZl2pw2qxIA==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-mysql2@0.41.0":
- version "0.41.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql2/-/instrumentation-mysql2-0.41.0.tgz"
- integrity sha512-REQB0x+IzVTpoNgVmy5b+UnH1/mDByrneimP6sbDHkp1j8QOl1HyWOrBH/6YWR0nrbU3l825Em5PlybjT3232g==
+"@opentelemetry/instrumentation-mysql2@0.44.0":
+ version "0.44.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-mysql2/-/instrumentation-mysql2-0.44.0.tgz#309d3fa452d4fcb632c4facb68ed7ea74b6738f9"
+ integrity sha512-e9QY4AGsjGFwmfHd6kBa4yPaQZjAq2FuxMb0BbKlXCAjG+jwqw+sr9xWdJGR60jMsTq52hx3mAlE3dUJ9BipxQ==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
"@opentelemetry/sql-common" "^0.40.1"
-"@opentelemetry/instrumentation-mysql@0.41.0":
- version "0.41.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql/-/instrumentation-mysql-0.41.0.tgz"
- integrity sha512-jnvrV6BsQWyHS2qb2fkfbfSb1R/lmYwqEZITwufuRl37apTopswu9izc0b1CYRp/34tUG/4k/V39PND6eyiNvw==
+"@opentelemetry/instrumentation-mysql@0.44.0":
+ version "0.44.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-mysql/-/instrumentation-mysql-0.44.0.tgz#a29af4432d4289ed9d147d9c30038c57031d950c"
+ integrity sha512-al7jbXvT/uT1KV8gdNDzaWd5/WXf+mrjrsF0/NtbnqLa0UUFGgQnoK3cyborgny7I+KxWhL8h7YPTf6Zq4nKsg==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
"@types/mysql" "2.15.26"
-"@opentelemetry/instrumentation-nestjs-core@0.40.0":
- version "0.40.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-nestjs-core/-/instrumentation-nestjs-core-0.40.0.tgz"
- integrity sha512-WF1hCUed07vKmf5BzEkL0wSPinqJgH7kGzOjjMAiTGacofNXjb/y4KQ8loj2sNsh5C/NN7s1zxQuCgbWbVTGKg==
+"@opentelemetry/instrumentation-nestjs-core@0.43.0":
+ version "0.43.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-nestjs-core/-/instrumentation-nestjs-core-0.43.0.tgz#c176409ab5ebfac862298e31a6a149126e278700"
+ integrity sha512-NEo4RU7HTjiaXk3curqXUvCb9alRiFWxQY//+hvDXwWLlADX2vB6QEmVCeEZrKO+6I/tBrI4vNdAnbCY9ldZVg==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-pg@0.44.0":
- version "0.44.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-pg/-/instrumentation-pg-0.44.0.tgz"
- integrity sha512-oTWVyzKqXud1BYEGX1loo2o4k4vaU1elr3vPO8NZolrBtFvQ34nx4HgUaexUDuEog00qQt+MLR5gws/p+JXMLQ==
+"@opentelemetry/instrumentation-pg@0.49.0":
+ version "0.49.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-pg/-/instrumentation-pg-0.49.0.tgz#47a6a461099fae8e1ffbb97b715a0c34f0aec0b6"
+ integrity sha512-3alvNNjPXVdAPdY1G7nGRVINbDxRK02+KAugDiEpzw0jFQfU8IzFkSWA4jyU4/GbMxKvHD+XIOEfSjpieSodKw==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
+ "@opentelemetry/core" "^1.26.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
+ "@opentelemetry/semantic-conventions" "1.27.0"
"@opentelemetry/sql-common" "^0.40.1"
"@types/pg" "8.6.1"
"@types/pg-pool" "2.0.6"
-"@opentelemetry/instrumentation-redis-4@0.42.0":
- version "0.42.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-redis-4/-/instrumentation-redis-4-0.42.0.tgz"
- integrity sha512-NaD+t2JNcOzX/Qa7kMy68JbmoVIV37fT/fJYzLKu2Wwd+0NCxt+K2OOsOakA8GVg8lSpFdbx4V/suzZZ2Pvdjg==
+"@opentelemetry/instrumentation-redis-4@0.45.0":
+ version "0.45.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-redis-4/-/instrumentation-redis-4-0.45.0.tgz#34115d39f7050b8576344d9e7f7cb8ceebf85067"
+ integrity sha512-Sjgym1xn3mdxPRH5CNZtoz+bFd3E3NlGIu7FoYr4YrQouCc9PbnmoBcmSkEdDy5LYgzNildPgsjx9l0EKNjKTQ==
dependencies:
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/redis-common" "^0.36.2"
"@opentelemetry/semantic-conventions" "^1.27.0"
-"@opentelemetry/instrumentation-tedious@0.15.0":
- version "0.15.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-tedious/-/instrumentation-tedious-0.15.0.tgz"
- integrity sha512-Kb7yo8Zsq2TUwBbmwYgTAMPK0VbhoS8ikJ6Bup9KrDtCx2JC01nCb+M0VJWXt7tl0+5jARUbKWh5jRSoImxdCw==
+"@opentelemetry/instrumentation-tedious@0.17.0":
+ version "0.17.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-tedious/-/instrumentation-tedious-0.17.0.tgz#689b7c87346f11b73488b3aa91661d15e8fa830c"
+ integrity sha512-yRBz2409an03uVd1Q2jWMt3SqwZqRFyKoWYYX3hBAtPDazJ4w5L+1VOij71TKwgZxZZNdDBXImTQjii+VeuzLg==
dependencies:
- "@opentelemetry/instrumentation" "^0.54.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
"@opentelemetry/semantic-conventions" "^1.27.0"
"@types/tedious" "^4.0.14"
-"@opentelemetry/instrumentation-undici@0.6.0":
- version "0.6.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation-undici/-/instrumentation-undici-0.6.0.tgz"
- integrity sha512-ABJBhm5OdhGmbh0S/fOTE4N69IZ00CsHC5ijMYfzbw3E5NwLgpQk5xsljaECrJ8wz1SfXbO03FiSuu5AyRAkvQ==
+"@opentelemetry/instrumentation-undici@0.9.0":
+ version "0.9.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-undici/-/instrumentation-undici-0.9.0.tgz#c0be1854a90a5002d2345f8bc939d659a9ad76b1"
+ integrity sha512-lxc3cpUZ28CqbrWcUHxGW/ObDpMOYbuxF/ZOzeFZq54P9uJ2Cpa8gcrC9F716mtuiMaekwk8D6n34vg/JtkkxQ==
dependencies:
"@opentelemetry/core" "^1.8.0"
- "@opentelemetry/instrumentation" "^0.53.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
-"@opentelemetry/instrumentation@0.53.0", "@opentelemetry/instrumentation@^0.53.0":
- version "0.53.0"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.53.0.tgz"
- integrity sha512-DMwg0hy4wzf7K73JJtl95m/e0boSoWhH07rfvHvYzQtBD3Bmv0Wc1x733vyZBqmFm8OjJD0/pfiUg1W3JjFX0A==
+"@opentelemetry/instrumentation@0.56.0", "@opentelemetry/instrumentation@^0.56.0":
+ version "0.56.0"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.56.0.tgz#3330ce16d9235a548efa1019a4a7f01414edd44a"
+ integrity sha512-2KkGBKE+FPXU1F0zKww+stnlUxUTlBvLCiWdP63Z9sqXYeNI/ziNzsxAp4LAdUcTQmXjw1IWgvm5CAb/BHy99w==
dependencies:
- "@opentelemetry/api-logs" "0.53.0"
+ "@opentelemetry/api-logs" "0.56.0"
"@types/shimmer" "^1.2.0"
import-in-the-middle "^1.8.1"
require-in-the-middle "^7.1.1"
@@ -1999,7 +2054,7 @@
"@opentelemetry/instrumentation@^0.49 || ^0.50 || ^0.51 || ^0.52.0":
version "0.52.1"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz#2e7e46a38bd7afbf03cf688c862b0b43418b7f48"
integrity sha512-uXJbYU/5/MBHjMp1FqrILLRuiJCs3Ofk0MeRDk8g1S1gD47U8X3JnSwcMO1rtRo1x1a7zKaQHaoYu49p/4eSKw==
dependencies:
"@opentelemetry/api-logs" "0.52.1"
@@ -2009,34 +2064,22 @@
semver "^7.5.2"
shimmer "^1.2.1"
-"@opentelemetry/instrumentation@^0.54.0":
- version "0.54.2"
- resolved "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.54.2.tgz"
- integrity sha512-go6zpOVoZVztT9r1aPd79Fr3OWiD4N24bCPJsIKkBses8oyFo12F/Ew3UBTdIu6hsW4HC4MVEJygG6TEyJI/lg==
- dependencies:
- "@opentelemetry/api-logs" "0.54.2"
- "@types/shimmer" "^1.2.0"
- import-in-the-middle "^1.8.1"
- require-in-the-middle "^7.1.1"
- semver "^7.5.2"
- shimmer "^1.2.1"
-
"@opentelemetry/redis-common@^0.36.2":
version "0.36.2"
- resolved "https://registry.npmjs.org/@opentelemetry/redis-common/-/redis-common-0.36.2.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/redis-common/-/redis-common-0.36.2.tgz#906ac8e4d804d4109f3ebd5c224ac988276fdc47"
integrity sha512-faYX1N0gpLhej/6nyp6bgRjzAKXn5GOEMYY7YhciSfCoITAktLUtQ36d24QEWNA1/WA1y6qQunCe0OhHRkVl9g==
-"@opentelemetry/resources@1.29.0", "@opentelemetry/resources@^1.26.0":
+"@opentelemetry/resources@1.29.0", "@opentelemetry/resources@^1.29.0":
version "1.29.0"
- resolved "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.29.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.29.0.tgz#d170f39b2ac93d61b53d13dfcd96795181bdc372"
integrity sha512-s7mLXuHZE7RQr1wwweGcaRp3Q4UJJ0wazeGlc/N5/XSe6UyXfsh1UQGMADYeg7YwD+cEdMtU1yJAUXdnFzYzyQ==
dependencies:
"@opentelemetry/core" "1.29.0"
"@opentelemetry/semantic-conventions" "1.28.0"
-"@opentelemetry/sdk-trace-base@^1.22", "@opentelemetry/sdk-trace-base@^1.26.0":
+"@opentelemetry/sdk-trace-base@^1.22", "@opentelemetry/sdk-trace-base@^1.29.0":
version "1.29.0"
- resolved "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.29.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.29.0.tgz#f48d95dae0e58e601d0596bd2e482122d2688fb8"
integrity sha512-hEOpAYLKXF3wGJpXOtWsxEtqBgde0SCv+w+jvr3/UusR4ll3QrENEGnSl1WDCyRrpqOQ5NCNOvZch9UFVa7MnQ==
dependencies:
"@opentelemetry/core" "1.29.0"
@@ -2045,36 +2088,36 @@
"@opentelemetry/semantic-conventions@1.27.0":
version "1.27.0"
- resolved "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz#1a857dcc95a5ab30122e04417148211e6f945e6c"
integrity sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==
-"@opentelemetry/semantic-conventions@1.28.0", "@opentelemetry/semantic-conventions@^1.27.0":
+"@opentelemetry/semantic-conventions@1.28.0", "@opentelemetry/semantic-conventions@^1.27.0", "@opentelemetry/semantic-conventions@^1.28.0":
version "1.28.0"
- resolved "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz#337fb2bca0453d0726696e745f50064411f646d6"
integrity sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==
"@opentelemetry/sql-common@^0.40.1":
version "0.40.1"
- resolved "https://registry.npmjs.org/@opentelemetry/sql-common/-/sql-common-0.40.1.tgz"
+ resolved "https://registry.yarnpkg.com/@opentelemetry/sql-common/-/sql-common-0.40.1.tgz#93fbc48d8017449f5b3c3274f2268a08af2b83b6"
integrity sha512-nSDlnHSqzC3pXn/wZEZVLuAuJ1MYMXPBwtv2qAbCa3847SaHItdE7SzUq/Jtb0KZmh1zfAbNi3AAMjztTT4Ugg==
dependencies:
"@opentelemetry/core" "^1.1.0"
"@pkgjs/parseargs@^0.11.0":
version "0.11.0"
- resolved "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz"
+ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
-"@playwright/test@^1.49.0":
- version "1.49.0"
- resolved "https://registry.npmjs.org/@playwright/test/-/test-1.49.0.tgz"
- integrity sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==
+"@playwright/test@^1.48.2":
+ version "1.49.1"
+ resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.49.1.tgz#55fa360658b3187bfb6371e2f8a64f50ef80c827"
+ integrity sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g==
dependencies:
- playwright "1.49.0"
+ playwright "1.49.1"
"@pmmmwh/react-refresh-webpack-plugin@^0.5.11":
version "0.5.15"
- resolved "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.15.tgz"
+ resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.15.tgz#f126be97c30b83ed777e2aeabd518bc592e6e7c4"
integrity sha512-LFWllMA55pzB9D34w/wXUCf8+c+IYKuJDgxiZ3qMhl64KRMBHYM1I3VdGaD2BV5FNPV2/S2596bppxHbv2ZydQ==
dependencies:
ansi-html "^0.0.9"
@@ -2087,7 +2130,7 @@
"@prisma/instrumentation@5.19.1":
version "5.19.1"
- resolved "https://registry.npmjs.org/@prisma/instrumentation/-/instrumentation-5.19.1.tgz"
+ resolved "https://registry.yarnpkg.com/@prisma/instrumentation/-/instrumentation-5.19.1.tgz#146319cf85f22b7a43296f0f40cfeac55516e66e"
integrity sha512-VLnzMQq7CWroL5AeaW0Py2huiNKeoMfCH3SUxstdzPrlWQi6UQ9UrfcbUkNHlVFqOMacqy8X/8YtE0kuKDpD9w==
dependencies:
"@opentelemetry/api" "^1.8"
@@ -2096,468 +2139,463 @@
"@radix-ui/number@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/number/-/number-1.1.0.tgz#1e95610461a09cdf8bb05c152e76ca1278d5da46"
integrity sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==
-"@radix-ui/primitive@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz"
- integrity sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==
+"@radix-ui/primitive@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.1.1.tgz#fc169732d755c7fbad33ba8d0cd7fd10c90dc8e3"
+ integrity sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==
"@radix-ui/react-alert-dialog@^1.1.2":
- version "1.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.2.tgz"
- integrity sha512-eGSlLzPhKO+TErxkiGcCZGuvbVMnLA1MTnyBksGOeGRGkxHiiJUujsjmNTdWTm4iHVSRaUao9/4Ur671auMghQ==
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.3.tgz#6bcf7c958f42bc36285febf55f36e564d3c9ecb6"
+ integrity sha512-5xzWppXTNZe6zFrTTwAJIoMJeZmdFe0l8ZqQrPGKAVvhdyOWR4r53/G7SZqx6/uf1J441oxK7GzmTkrrWDroHA==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-dialog" "1.1.2"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-dialog" "1.1.3"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
-"@radix-ui/react-arrow@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz"
- integrity sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==
+"@radix-ui/react-arrow@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-arrow/-/react-arrow-1.1.1.tgz#2103721933a8bfc6e53bbfbdc1aaad5fc8ba0dd7"
+ integrity sha512-NaVpZfmv8SKeZbn4ijN2V3jlHA9ngBG16VnIIm22nUR0Yk8KUALyBxT3KYEUnNuch9sTE8UTsS3whzBgKOL30w==
dependencies:
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-avatar@^1.1.1":
- version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.1.tgz"
- integrity sha512-eoOtThOmxeoizxpX6RiEsQZ2wj5r4+zoeqAwO0cBaFQGjJwIH3dIX0OCxNrCyrrdxG+vBweMETh3VziQG7c1kw==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-avatar/-/react-avatar-1.1.2.tgz#24af4c66bb5271460a4a6b74c4f4f9d4789d3d90"
+ integrity sha512-GaC7bXQZ5VgZvVvsJ5mu/AEbjYLnhhkoidOboC50Z6FFlLA03wG2ianUoH+zgDQ31/9gCF59bE4+2bBgTyMiig==
dependencies:
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
"@radix-ui/react-checkbox@^1.1.2":
- version "1.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.1.2.tgz"
- integrity sha512-/i0fl686zaJbDQLNKrkCbMyDm6FQMt4jg323k7HuqitoANm9sE23Ql8yOK3Wusk34HSLKDChhMux05FnP6KUkw==
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-checkbox/-/react-checkbox-1.1.3.tgz#0e2ab913fddf3c88603625f7a9457d73882c8a32"
+ integrity sha512-HD7/ocp8f1B3e6OHygH0n7ZKjONkhciy1Nh0yuBgObqThc3oyx+vuMfFHKAknXRHHWVE9XvXStxJFyjUmB8PIw==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-previous" "1.1.0"
"@radix-ui/react-use-size" "1.1.0"
"@radix-ui/react-collapsible@^1.1.1":
- version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.1.tgz"
- integrity sha512-1///SnrfQHJEofLokyczERxQbWfCGQlQ2XsCZMucVs6it+lq9iw4vXy+uDn1edlb58cOZOWSldnfPAYcT4O/Yg==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-collapsible/-/react-collapsible-1.1.2.tgz#42477c428bb0d2eec35b9b47601c5ff0a6210165"
+ integrity sha512-PliMB63vxz7vggcyq0IxNYk8vGDrLXVWw4+W4B8YnwI1s18x7YZYqlG9PLX7XxAJUi0g2DxP4XKJMFHh/iVh9A==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
-"@radix-ui/react-collection@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.0.tgz"
- integrity sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw==
+"@radix-ui/react-collection@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-collection/-/react-collection-1.1.1.tgz#be2c7e01d3508e6d4b6d838f492e7d182f17d3b0"
+ integrity sha512-LwT3pSho9Dljg+wY2KN2mrrh6y3qELfftINERIzBUO9e0N+t0oMTyn3k9iv+ZqgrwGkRnLpNJrsMv9BZlt2yuA==
dependencies:
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-context" "1.1.0"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-compose-refs" "1.1.1"
+ "@radix-ui/react-context" "1.1.1"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
-"@radix-ui/react-compose-refs@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz"
- integrity sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==
+"@radix-ui/react-compose-refs@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.1.tgz#6f766faa975f8738269ebb8a23bad4f5a8d2faec"
+ integrity sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==
"@radix-ui/react-context-menu@^2.2.1":
- version "2.2.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.2.tgz"
- integrity sha512-99EatSTpW+hRYHt7m8wdDlLtkmTovEe8Z/hnxUPV+SKuuNL5HWNhQI4QSdjZqNSgXHay2z4M3Dym73j9p2Gx5Q==
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-context-menu/-/react-context-menu-2.2.3.tgz#10693d3bf8943906328b6c173b4f67dc84ee511b"
+ integrity sha512-i4ZjZNoiAKwxcaKBR5XdiOyEJQdBT4P6TeMtzP4fjlcDJpxwIcmmWkdd13YEzCHHcWYZOyl7fVHKT8dFMHdo3w==
dependencies:
- "@radix-ui/primitive" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-menu" "2.1.2"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-menu" "2.1.3"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-controllable-state" "1.1.0"
-"@radix-ui/react-context@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz"
- integrity sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==
-
"@radix-ui/react-context@1.1.1":
version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.1.1.tgz#82074aa83a472353bb22e86f11bcbd1c61c4c71a"
integrity sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==
-"@radix-ui/react-dialog@1.1.2", "@radix-ui/react-dialog@^1.1.2":
- version "1.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.2.tgz"
- integrity sha512-Yj4dZtqa2o+kG61fzB0H2qUvmwBA2oyQroGLyNtBj1beo1khoQ3q1a2AO8rrQYjd8256CO9+N8L9tvsS+bnIyA==
+"@radix-ui/react-dialog@1.1.3", "@radix-ui/react-dialog@^1.1.2":
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-dialog/-/react-dialog-1.1.3.tgz#87cf49f619a6a0f6219980678be0f7c31978dee1"
+ integrity sha512-ujGvqQNkZ0J7caQyl8XuZRj2/TIrYcOGwqz5TeD1OMcCdfBuEMP0D12ve+8J5F9XuNUth3FAKFWo/wt0E/GJrQ==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-dismissable-layer" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
"@radix-ui/react-focus-guards" "1.1.1"
- "@radix-ui/react-focus-scope" "1.1.0"
+ "@radix-ui/react-focus-scope" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
aria-hidden "^1.1.1"
react-remove-scroll "2.6.0"
"@radix-ui/react-direction@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-direction/-/react-direction-1.1.0.tgz#a7d39855f4d077adc2a1922f9c353c5977a09cdc"
integrity sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==
-"@radix-ui/react-dismissable-layer@1.1.1":
- version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.1.tgz"
- integrity sha512-QSxg29lfr/xcev6kSz7MAlmDnzbP1eI/Dwn3Tp1ip0KT5CUELsxkekFEMVBEoykI3oV39hKT4TKZzBNMbcTZYQ==
+"@radix-ui/react-dismissable-layer@1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.2.tgz#771594b202f32bc8ffeb278c565f10c513814aee"
+ integrity sha512-kEHnlhv7wUggvhuJPkyw4qspXLJOdYoAP4dO2c8ngGuXTq1w/HZp1YeVB+NQ2KbH1iEG+pvOCGYSqh9HZOz6hg==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-escape-keydown" "1.1.0"
"@radix-ui/react-dropdown-menu@^2.1.2":
- version "2.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.2.tgz"
- integrity sha512-GVZMR+eqK8/Kes0a36Qrv+i20bAPXSn8rCBTHx30w+3ECnR5o3xixAlqcVaYvLeyKUsm0aqyhWfmUcqufM8nYA==
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.3.tgz#02665f99bfdcefc33a8a15dc130e9b98ebdf7671"
+ integrity sha512-eKyAfA9e4HOavzyGJC6kiDIlHMPzAU0zqSqTg+VwS0Okvb9nkTo7L4TugkCUqM3I06ciSpdtYQ73cgB7tyUgVw==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-menu" "2.1.2"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-menu" "2.1.3"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-focus-guards@1.1.1":
version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.1.tgz#8635edd346304f8b42cae86b05912b61aef27afe"
integrity sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==
-"@radix-ui/react-focus-scope@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.0.tgz"
- integrity sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==
+"@radix-ui/react-focus-scope@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.1.tgz#5c602115d1db1c4fcfa0fae4c3b09bb8919853cb"
+ integrity sha512-01omzJAYRxXdG2/he/+xy+c8a8gCydoQ1yOxnWNcRhrrBW5W+RQJ22EK1SaO8tb3WoUsuEw7mJjBozPzihDFjA==
dependencies:
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-compose-refs" "1.1.1"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-icons@^1.3.2":
version "1.3.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-icons/-/react-icons-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-icons/-/react-icons-1.3.2.tgz#09be63d178262181aeca5fb7f7bc944b10a7f441"
integrity sha512-fyQIhGDhzfc9pK2kH6Pl9c4BDJGfMkPqkyIgYDthyNYoNg3wVhoJMMh19WS4Up/1KMPFVpNsT2q3WmXn2N1m6g==
"@radix-ui/react-id@1.1.0", "@radix-ui/react-id@^1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-1.1.0.tgz#de47339656594ad722eb87f94a6b25f9cffae0ed"
integrity sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==
dependencies:
"@radix-ui/react-use-layout-effect" "1.1.0"
"@radix-ui/react-label@^2.1.0":
- version "2.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.0.tgz"
- integrity sha512-peLblDlFw/ngk3UWq0VnYaOLy6agTZZ+MUO/WhVfm14vJGML+xH4FAl2XQGLqdefjNb7ApRg6Yn7U42ZhmYXdw==
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-label/-/react-label-2.1.1.tgz#f30bd577b26873c638006e4f65761d4c6b80566d"
+ integrity sha512-UUw5E4e/2+4kFMH7+YxORXGWggtY6sM8WIwh5RZchhLuUg2H1hc98Py+pr8HMz6rdaYrK2t296ZEjYLOCO5uUw==
dependencies:
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
-"@radix-ui/react-menu@2.1.2":
- version "2.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.2.tgz"
- integrity sha512-lZ0R4qR2Al6fZ4yCCZzu/ReTFrylHFxIqy7OezIpWF4bL0o9biKo0pFIvkaew3TyZ9Fy5gYVrR5zCGZBVbO1zg==
+"@radix-ui/react-menu@2.1.3":
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-menu/-/react-menu-2.1.3.tgz#5a3330cf5dc5d48666da31ba0e83fef99288e367"
+ integrity sha512-wY5SY6yCiJYP+DMIy7RrjF4shoFpB9LJltliVwejBm8T2yepWDJgKBhIFYOGWYR/lFHOCtbstN9duZFu6gmveQ==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-collection" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-collection" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-direction" "1.1.0"
- "@radix-ui/react-dismissable-layer" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
"@radix-ui/react-focus-guards" "1.1.1"
- "@radix-ui/react-focus-scope" "1.1.0"
+ "@radix-ui/react-focus-scope" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-popper" "1.2.0"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-roving-focus" "1.1.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-popper" "1.2.1"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-roving-focus" "1.1.1"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
aria-hidden "^1.1.1"
react-remove-scroll "2.6.0"
"@radix-ui/react-popover@^1.1.2":
- version "1.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.2.tgz"
- integrity sha512-u2HRUyWW+lOiA2g0Le0tMmT55FGOEWHwPFt1EPfbLly7uXQExFo5duNKqG2DzmFXIdqOeNd+TpE8baHWJCyP9w==
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-popover/-/react-popover-1.1.3.tgz#b2c81c739eb183ede2314d6a448439d15aeec129"
+ integrity sha512-MBDKFwRe6fi0LT8m/Jl4V8J3WbS/UfXJtsgg8Ym5w5AyPG3XfHH4zhBp1P8HmZK83T8J7UzVm6/JpDE3WMl1Dw==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-dismissable-layer" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
"@radix-ui/react-focus-guards" "1.1.1"
- "@radix-ui/react-focus-scope" "1.1.0"
+ "@radix-ui/react-focus-scope" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-popper" "1.2.0"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-popper" "1.2.1"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
aria-hidden "^1.1.1"
react-remove-scroll "2.6.0"
-"@radix-ui/react-popper@1.2.0":
- version "1.2.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.0.tgz"
- integrity sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==
+"@radix-ui/react-popper@1.2.1":
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-popper/-/react-popper-1.2.1.tgz#2fc66cfc34f95f00d858924e3bee54beae2dff0a"
+ integrity sha512-3kn5Me69L+jv82EKRuQCXdYyf1DqHwD2U/sxoNgBGCB7K9TRc3bQamQ+5EPM9EvyPdli0W41sROd+ZU1dTCztw==
dependencies:
"@floating-ui/react-dom" "^2.0.0"
- "@radix-ui/react-arrow" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-context" "1.1.0"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-arrow" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
+ "@radix-ui/react-context" "1.1.1"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
"@radix-ui/react-use-rect" "1.1.0"
"@radix-ui/react-use-size" "1.1.0"
"@radix-ui/rect" "1.1.0"
-"@radix-ui/react-portal@1.1.2":
+"@radix-ui/react-portal@1.1.3":
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-1.1.3.tgz#b0ea5141103a1671b715481b13440763d2ac4440"
+ integrity sha512-NciRqhXnGojhT93RPyDaMPfLH3ZSl4jjIFbZQ1b/vxvZEdHsBZ49wP9w8L3HzUQwep01LcWtkUvm0OVB5JAHTw==
+ dependencies:
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-use-layout-effect" "1.1.0"
+
+"@radix-ui/react-presence@1.1.2":
version "1.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.2.tgz"
- integrity sha512-WeDYLGPxJb/5EGBoedyJbT0MpoULmwnIPMJMSldkuiMsBAv7N1cRdsTWZWht9vpPOiN3qyiGAtbK2is47/uMFg==
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-1.1.2.tgz#bb764ed8a9118b7ec4512da5ece306ded8703cdc"
+ integrity sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==
dependencies:
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-use-layout-effect" "1.1.0"
-"@radix-ui/react-presence@1.1.1":
- version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.1.tgz"
- integrity sha512-IeFXVi4YS1K0wVZzXNrbaaUvIJ3qdY+/Ih4eHFhWA9SwGR9UDX7Ck8abvL57C4cv3wwMvUE0OG69Qc3NCcTe/A==
+"@radix-ui/react-primitive@2.0.1", "@radix-ui/react-primitive@^2.0.0":
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-2.0.1.tgz#6d9efc550f7520135366f333d1e820cf225fad9e"
+ integrity sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==
dependencies:
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-use-layout-effect" "1.1.0"
-
-"@radix-ui/react-primitive@2.0.0", "@radix-ui/react-primitive@^2.0.0":
- version "2.0.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz"
- integrity sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==
- dependencies:
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-radio-group@^1.2.1":
- version "1.2.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.2.1.tgz"
- integrity sha512-kdbv54g4vfRjja9DNWPMxKvXblzqbpEC8kspEkZ6dVP7kQksGCn+iZHkcCz2nb00+lPdRvxrqy4WrvvV1cNqrQ==
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-radio-group/-/react-radio-group-1.2.2.tgz#a37e9bd9d80b33bb8c1b7af8cf1dc9e5014e52d0"
+ integrity sha512-E0MLLGfOP0l8P/NxgVzfXJ8w3Ch8cdO6UDzJfDChu4EJDy+/WdO5LqpdY8PYnCErkmZH3gZhDL1K7kQ41fAHuQ==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-direction" "1.1.0"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-roving-focus" "1.1.0"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-roving-focus" "1.1.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-previous" "1.1.0"
"@radix-ui/react-use-size" "1.1.0"
-"@radix-ui/react-roving-focus@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.0.tgz"
- integrity sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA==
+"@radix-ui/react-roving-focus@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.1.tgz#3b3abb1e03646937f28d9ab25e96343667ca6520"
+ integrity sha512-QE1RoxPGJ/Nm8Qmk0PxP8ojmoaS67i0s7hVssS7KuI2FQoc/uzVlZsqKfQvxPE6D8hICCPHJ4D88zNhT3OOmkw==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-collection" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
- "@radix-ui/react-context" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-collection" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
+ "@radix-ui/react-context" "1.1.1"
"@radix-ui/react-direction" "1.1.0"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-scroll-area@^1.2.1":
- version "1.2.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.1.tgz"
- integrity sha512-FnM1fHfCtEZ1JkyfH/1oMiTcFBQvHKl4vD9WnpwkLgtF+UmnXMCad6ECPTaAjcDjam+ndOEJWgHyKDGNteWSHw==
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.2.tgz#28e34fd4d83e9de5d987c5e8914a7bd8be9546a5"
+ integrity sha512-EFI1N/S3YxZEW/lJ/H1jY3njlvTd8tBmgKEn4GHi51+aMm94i6NmAJstsm5cu3yJwYqYc93gpCPm21FeAbFk6g==
dependencies:
"@radix-ui/number" "1.1.0"
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-direction" "1.1.0"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
"@radix-ui/react-select@^2.1.2":
- version "2.1.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.1.2.tgz"
- integrity sha512-rZJtWmorC7dFRi0owDmoijm6nSJH1tVw64QGiNIZ9PNLyBDtG+iAq+XGsya052At4BfarzY/Dhv9wrrUr6IMZA==
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-select/-/react-select-2.1.3.tgz#b3f0ed2ae8fb9ebb03baaec49f9856e24628fc16"
+ integrity sha512-tlLwaewTfrKetiex8iW9wwME/qrYlzlH0qcgYmos7xS54MO00SiPHasLoAykg/yVrjf41GQptPPi4oXzrP+sgg==
dependencies:
"@radix-ui/number" "1.1.0"
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-collection" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-collection" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
"@radix-ui/react-direction" "1.1.0"
- "@radix-ui/react-dismissable-layer" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
"@radix-ui/react-focus-guards" "1.1.1"
- "@radix-ui/react-focus-scope" "1.1.0"
+ "@radix-ui/react-focus-scope" "1.1.1"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-popper" "1.2.0"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-popper" "1.2.1"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
"@radix-ui/react-use-previous" "1.1.0"
- "@radix-ui/react-visually-hidden" "1.1.0"
+ "@radix-ui/react-visually-hidden" "1.1.1"
aria-hidden "^1.1.1"
react-remove-scroll "2.6.0"
"@radix-ui/react-separator@^1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.0.tgz"
- integrity sha512-3uBAs+egzvJBDZAzvb/n4NxxOYpnspmWxO2u5NbZ8Y6FM/NdrGSF9bop3Cf6F6C71z1rTSn8KV0Fo2ZVd79lGA==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-separator/-/react-separator-1.1.1.tgz#dd60621553c858238d876be9b0702287424866d2"
+ integrity sha512-RRiNRSrD8iUiXriq/Y5n4/3iE8HzqgLHsusUSg5jVpU2+3tqcUFPJXHDymwEypunc2sWxDUS3UC+rkZRlHedsw==
dependencies:
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
-"@radix-ui/react-slot@1.1.0", "@radix-ui/react-slot@^1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz"
- integrity sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==
+"@radix-ui/react-slot@1.1.1", "@radix-ui/react-slot@^1.1.0":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.1.1.tgz#ab9a0ffae4027db7dc2af503c223c978706affc3"
+ integrity sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==
dependencies:
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-switch@^1.1.1":
- version "1.1.1"
- resolved "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.1.1.tgz"
- integrity sha512-diPqDDoBcZPSicYoMWdWx+bCPuTRH4QSp9J+65IvtdS0Kuzt67bI6n32vCj8q6NZmYW/ah+2orOtMwcX5eQwIg==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-switch/-/react-switch-1.1.2.tgz#61323f4cccf25bf56c95fceb3b56ce1407bc9aec"
+ integrity sha512-zGukiWHjEdBCRyXvKR6iXAQG6qXm2esuAD6kDOi9Cn+1X6ev3ASo4+CsYaD6Fov9r/AQFekqnD/7+V0Cs6/98g==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-previous" "1.1.0"
"@radix-ui/react-use-size" "1.1.0"
"@radix-ui/react-toast@^1.2.2":
- version "1.2.2"
- resolved "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.2.tgz"
- integrity sha512-Z6pqSzmAP/bFJoqMAston4eSNa+ud44NSZTiZUmUen+IOZ5nBY8kzuU5WDBVyFXPtcW6yUalOHsxM/BP6Sv8ww==
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-toast/-/react-toast-1.2.3.tgz#459979e05d287f92cd907c6c0a00d390d5c0cdd7"
+ integrity sha512-oB8irs7CGAml6zWbum7MNySTH/sR7PM1ZQyLV8reO946u73sU83yZUKijrMLNbm4hTOrJY4tE8Oa/XUKrOr2Wg==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-collection" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-collection" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-dismissable-layer" "1.1.1"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-controllable-state" "1.1.0"
"@radix-ui/react-use-layout-effect" "1.1.0"
- "@radix-ui/react-visually-hidden" "1.1.0"
+ "@radix-ui/react-visually-hidden" "1.1.1"
"@radix-ui/react-tooltip@^1.1.4":
- version "1.1.4"
- resolved "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.1.4.tgz"
- integrity sha512-QpObUH/ZlpaO4YgHSaYzrLO2VuO+ZBFFgGzjMUPwtiYnAzzNNDPJeEGRrT7qNOrWm/Jr08M1vlp+vTHtnSQ0Uw==
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-tooltip/-/react-tooltip-1.1.5.tgz#402f4f7019159bf4a40be3f1fa01978339ea33cc"
+ integrity sha512-IucoQPcK5nwUuztaxBQvudvYwH58wtRcJlv1qvaMSyIbL9dEBfFN0vRf/D8xDbu6HmAJLlNGty4z8Na+vIqe9Q==
dependencies:
- "@radix-ui/primitive" "1.1.0"
- "@radix-ui/react-compose-refs" "1.1.0"
+ "@radix-ui/primitive" "1.1.1"
+ "@radix-ui/react-compose-refs" "1.1.1"
"@radix-ui/react-context" "1.1.1"
- "@radix-ui/react-dismissable-layer" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.2"
"@radix-ui/react-id" "1.1.0"
- "@radix-ui/react-popper" "1.2.0"
- "@radix-ui/react-portal" "1.1.2"
- "@radix-ui/react-presence" "1.1.1"
- "@radix-ui/react-primitive" "2.0.0"
- "@radix-ui/react-slot" "1.1.0"
+ "@radix-ui/react-popper" "1.2.1"
+ "@radix-ui/react-portal" "1.1.3"
+ "@radix-ui/react-presence" "1.1.2"
+ "@radix-ui/react-primitive" "2.0.1"
+ "@radix-ui/react-slot" "1.1.1"
"@radix-ui/react-use-controllable-state" "1.1.0"
- "@radix-ui/react-visually-hidden" "1.1.0"
+ "@radix-ui/react-visually-hidden" "1.1.1"
"@radix-ui/react-use-callback-ref@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz#bce938ca413675bc937944b0d01ef6f4a6dc5bf1"
integrity sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==
"@radix-ui/react-use-controllable-state@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz#1321446857bb786917df54c0d4d084877aab04b0"
integrity sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==
dependencies:
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-escape-keydown@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz#31a5b87c3b726504b74e05dac1edce7437b98754"
integrity sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==
dependencies:
"@radix-ui/react-use-callback-ref" "1.1.0"
"@radix-ui/react-use-layout-effect@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz#3c2c8ce04827b26a39e442ff4888d9212268bd27"
integrity sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==
"@radix-ui/react-use-previous@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz#d4dd37b05520f1d996a384eb469320c2ada8377c"
integrity sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==
"@radix-ui/react-use-rect@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz#13b25b913bd3e3987cc9b073a1a164bb1cf47b88"
integrity sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==
dependencies:
"@radix-ui/rect" "1.1.0"
"@radix-ui/react-use-size@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz#b4dba7fbd3882ee09e8d2a44a3eed3a7e555246b"
integrity sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==
dependencies:
"@radix-ui/react-use-layout-effect" "1.1.0"
-"@radix-ui/react-visually-hidden@1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.0.tgz"
- integrity sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ==
+"@radix-ui/react-visually-hidden@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.1.tgz#f7b48c1af50dfdc366e92726aee6d591996c5752"
+ integrity sha512-vVfA2IZ9q/J+gEamvj761Oq1FpWgCDaNOOIfbPVp2MVPLEomUr5+Vf7kJGwQ24YxZSlQVar7Bes8kyTo5Dshpg==
dependencies:
- "@radix-ui/react-primitive" "2.0.0"
+ "@radix-ui/react-primitive" "2.0.1"
"@radix-ui/rect@1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-1.1.0.tgz#f817d1d3265ac5415dadc67edab30ae196696438"
integrity sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==
"@rollup/plugin-commonjs@28.0.1":
version "28.0.1"
- resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz#e2138e31cc0637676dc3d5cae7739131f7cd565e"
integrity sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==
dependencies:
"@rollup/pluginutils" "^5.0.1"
@@ -2570,7 +2608,7 @@
"@rollup/pluginutils@^5.0.1":
version "5.1.3"
- resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.1.3.tgz#3001bf1a03f3ad24457591f2c259c8e514e0dbdf"
integrity sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==
dependencies:
"@types/estree" "^1.0.0"
@@ -2579,73 +2617,73 @@
"@rtsao/scc@^1.1.0":
version "1.1.0"
- resolved "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8"
integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==
"@rushstack/eslint-patch@^1.10.3":
version "1.10.4"
- resolved "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz"
+ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz#427d5549943a9c6fce808e39ea64dbe60d4047f1"
integrity sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==
"@scarf/scarf@^1.3.0":
version "1.4.0"
- resolved "https://registry.npmjs.org/@scarf/scarf/-/scarf-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/@scarf/scarf/-/scarf-1.4.0.tgz#3bbb984085dbd6d982494538b523be1ce6562972"
integrity sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ==
-"@sentry-internal/browser-utils@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.42.0.tgz"
- integrity sha512-xzgRI0wglKYsPrna574w1t38aftuvo44gjOKFvPNGPnYfiW9y4m+64kUz3JFbtanvOrKPcaITpdYiB4DeJXEbA==
+"@sentry-internal/browser-utils@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-8.45.0.tgz#8e9217b8e8a4242c9a8244dce648289eaa1e38a0"
+ integrity sha512-MX/E/C+W5I9jkGD1PsbZ2hpCc7YuizNKmEbuGPxQPfUSIPrdE2wpo6ZfIhEbxq9m/trl1oRCN4PXi3BB7dlYYg==
dependencies:
- "@sentry/core" "8.42.0"
+ "@sentry/core" "8.45.0"
-"@sentry-internal/feedback@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.42.0.tgz"
- integrity sha512-dkIw5Wdukwzngg5gNJ0QcK48LyJaMAnBspqTqZ3ItR01STi6Z+6+/Bt5XgmrvDgRD+FNBinflc5zMmfdFXXhvw==
+"@sentry-internal/feedback@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-8.45.0.tgz#cfd7f54d5089682a2768c1229a5efcda4d9561fe"
+ integrity sha512-WerpfkKrKPAlnQuqjEgKXZtrx68cla7GyOkNOeL40JQbY4/By4Qjx1atUOmgk/FdjrCLPw+jQQY9pXRpMRqqRw==
dependencies:
- "@sentry/core" "8.42.0"
+ "@sentry/core" "8.45.0"
-"@sentry-internal/replay-canvas@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.42.0.tgz"
- integrity sha512-XrPErqVhPsPh/oFLVKvz7Wb+Fi2J1zCPLeZCxWqFuPWI2agRyLVu0KvqJyzSpSrRAEJC/XFzuSVILlYlXXSfgA==
+"@sentry-internal/replay-canvas@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-8.45.0.tgz#46f39402ff0cfee4ae05191af20b4e4fac6f474c"
+ integrity sha512-LZ8kBuzO5gutDiWnCyYEzBMDLq9PIllcsWsXRpKoau0Zqs3DbyRolI11dNnxmUSh7UW21FksxBpqn5yPmUMbag==
dependencies:
- "@sentry-internal/replay" "8.42.0"
- "@sentry/core" "8.42.0"
+ "@sentry-internal/replay" "8.45.0"
+ "@sentry/core" "8.45.0"
-"@sentry-internal/replay@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.42.0.tgz"
- integrity sha512-oNcJEBlDfXnRFYC5Mxj5fairyZHNqlnU4g8kPuztB9G5zlsyLgWfPxzcn1ixVQunth2/WZRklDi4o1ZfyHww7w==
+"@sentry-internal/replay@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-8.45.0.tgz#e94d250de235491888694f7cf0f637114adb4b9a"
+ integrity sha512-SOFwFpzx0B6lxhLl2hBnxvybo7gdB5TMY8dOHMwXgk5A2+BXvSpvWXnr33yqUlBmC8R3LeFTB3C0plzM5lhkJg==
dependencies:
- "@sentry-internal/browser-utils" "8.42.0"
- "@sentry/core" "8.42.0"
+ "@sentry-internal/browser-utils" "8.45.0"
+ "@sentry/core" "8.45.0"
-"@sentry/babel-plugin-component-annotate@2.22.6":
- version "2.22.6"
- resolved "https://registry.npmjs.org/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-2.22.6.tgz"
- integrity sha512-V2g1Y1I5eSe7dtUVMBvAJr8BaLRr4CLrgNgtPaZyMT4Rnps82SrZ5zqmEkLXPumlXhLUWR6qzoMNN2u+RXVXfQ==
+"@sentry/babel-plugin-component-annotate@2.22.7":
+ version "2.22.7"
+ resolved "https://registry.yarnpkg.com/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-2.22.7.tgz#604c7e33d48528a13477e7af597c4d5fca51b8bd"
+ integrity sha512-aa7XKgZMVl6l04NY+3X7BP7yvQ/s8scn8KzQfTLrGRarziTlMGrsCOBQtCNWXOPEbtxAIHpZ9dsrAn5EJSivOQ==
-"@sentry/browser@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/browser/-/browser-8.42.0.tgz"
- integrity sha512-lStrEk609KJHwXfDrOgoYVVoFFExixHywxSExk7ZDtwj2YPv6r6Y1gogvgr7dAZj7jWzadHkxZ33l9EOSJBfug==
+"@sentry/browser@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-8.45.0.tgz#2e8f7b8b1a7860863aae4d716b9748a21789f0e0"
+ integrity sha512-Y+BcfpXY1eEkOYOzgLGkx1YH940uMAymYOxfSZSvC+Vx6xHuaGT05mIFef/aeZbyu2AUs6JjdvD1BRBZlHg78w==
dependencies:
- "@sentry-internal/browser-utils" "8.42.0"
- "@sentry-internal/feedback" "8.42.0"
- "@sentry-internal/replay" "8.42.0"
- "@sentry-internal/replay-canvas" "8.42.0"
- "@sentry/core" "8.42.0"
+ "@sentry-internal/browser-utils" "8.45.0"
+ "@sentry-internal/feedback" "8.45.0"
+ "@sentry-internal/replay" "8.45.0"
+ "@sentry-internal/replay-canvas" "8.45.0"
+ "@sentry/core" "8.45.0"
-"@sentry/bundler-plugin-core@2.22.6":
- version "2.22.6"
- resolved "https://registry.npmjs.org/@sentry/bundler-plugin-core/-/bundler-plugin-core-2.22.6.tgz"
- integrity sha512-1esQdgSUCww9XAntO4pr7uAM5cfGhLsgTK9MEwAKNfvpMYJi9NUTYa3A7AZmdA8V6107Lo4OD7peIPrDRbaDCg==
+"@sentry/bundler-plugin-core@2.22.7":
+ version "2.22.7"
+ resolved "https://registry.yarnpkg.com/@sentry/bundler-plugin-core/-/bundler-plugin-core-2.22.7.tgz#28204a224cd1fef58d157e5beeb2493947a9bc35"
+ integrity sha512-ouQh5sqcB8vsJ8yTTe0rf+iaUkwmeUlGNFi35IkCFUQlWJ22qS6OfvNjOqFI19e6eGUXks0c/2ieFC4+9wJ+1g==
dependencies:
"@babel/core" "^7.18.5"
- "@sentry/babel-plugin-component-annotate" "2.22.6"
- "@sentry/cli" "^2.36.1"
+ "@sentry/babel-plugin-component-annotate" "2.22.7"
+ "@sentry/cli" "2.39.1"
dotenv "^16.3.1"
find-up "^5.0.0"
glob "^9.3.2"
@@ -2654,7 +2692,7 @@
"@sentry/cli-darwin@2.39.1":
version "2.39.1"
- resolved "https://registry.npmjs.org/@sentry/cli-darwin/-/cli-darwin-2.39.1.tgz"
+ resolved "https://registry.yarnpkg.com/@sentry/cli-darwin/-/cli-darwin-2.39.1.tgz#75c338a53834b4cf72f57599f4c72ffb36cf0781"
integrity sha512-kiNGNSAkg46LNGatfNH5tfsmI/kCAaPA62KQuFZloZiemTNzhy9/6NJP8HZ/GxGs8GDMxic6wNrV9CkVEgFLJQ==
"@sentry/cli-linux-arm64@2.39.1":
@@ -2687,9 +2725,9 @@
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-x64/-/cli-win32-x64-2.39.1.tgz#1a874a5570c6d162b35d9d001c96e5389d07d2cb"
integrity sha512-xv0R2CMf/X1Fte3cMWie1NXuHmUyQPDBfCyIt6k6RPFPxAYUgcqgMPznYwVMwWEA1W43PaOkSn3d8ZylsDaETw==
-"@sentry/cli@^2.36.1":
+"@sentry/cli@2.39.1":
version "2.39.1"
- resolved "https://registry.npmjs.org/@sentry/cli/-/cli-2.39.1.tgz"
+ resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.39.1.tgz#916bb5b7567ccf7fdf94ef6cf8a2b9ab78370d29"
integrity sha512-JIb3e9vh0+OmQ0KxmexMXg9oZsR/G7HMwxt5BUIKAXZ9m17Xll4ETXTRnRUBT3sf7EpNGAmlQk1xEmVN9pYZYQ==
dependencies:
https-proxy-agent "^5.0.0"
@@ -2706,146 +2744,153 @@
"@sentry/cli-win32-i686" "2.39.1"
"@sentry/cli-win32-x64" "2.39.1"
-"@sentry/core@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/core/-/core-8.42.0.tgz"
- integrity sha512-ac6O3pgoIbU6rpwz6LlwW0wp3/GAHuSI0C5IsTgIY6baN8rOBnlAtG6KrHDDkGmUQ2srxkDJu9n1O6Td3cBCqw==
+"@sentry/core@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/core/-/core-8.45.0.tgz#a03a1b666989898ce7fb33f9ec279ea08450b317"
+ integrity sha512-4YTuBipWSh4JrtSYS5GxUQBAcAgOIkEoFfFbwVcr3ivijOacJLRXTBn3rpcy1CKjBq0PHDGR+2RGRYC+bNAMxg==
"@sentry/nextjs@^8":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/nextjs/-/nextjs-8.42.0.tgz"
- integrity sha512-8gZ0kVwaMpNeDg510m/8OSIuPSahP9GaKoFwPqscbvvbk1Hd+9wdW2X6YhdY+KzKiPLmYH/dGU20CvtN0iZqeg==
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/nextjs/-/nextjs-8.45.0.tgz#5a9da7f22cbc4d29787d9c2438f0d569f467df54"
+ integrity sha512-0Yy9C14AzEqJQkFF4RcCfqgZ2hQby13wS+Zz9p1hyGa0sD83krhS6cJTXa1oAYCTtA1MNAEzRRJ452tBmwa1jA==
dependencies:
"@opentelemetry/api" "^1.9.0"
- "@opentelemetry/instrumentation-http" "0.53.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
+ "@opentelemetry/semantic-conventions" "^1.28.0"
"@rollup/plugin-commonjs" "28.0.1"
- "@sentry-internal/browser-utils" "8.42.0"
- "@sentry/core" "8.42.0"
- "@sentry/node" "8.42.0"
- "@sentry/opentelemetry" "8.42.0"
- "@sentry/react" "8.42.0"
- "@sentry/vercel-edge" "8.42.0"
- "@sentry/webpack-plugin" "2.22.6"
+ "@sentry-internal/browser-utils" "8.45.0"
+ "@sentry/core" "8.45.0"
+ "@sentry/node" "8.45.0"
+ "@sentry/opentelemetry" "8.45.0"
+ "@sentry/react" "8.45.0"
+ "@sentry/vercel-edge" "8.45.0"
+ "@sentry/webpack-plugin" "2.22.7"
chalk "3.0.0"
resolve "1.22.8"
rollup "3.29.5"
stacktrace-parser "^0.1.10"
-"@sentry/node@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/node/-/node-8.42.0.tgz"
- integrity sha512-MsNrmAIwDaxf1jTX1FsgZ+3mUq6G6IuU6FAqyp7TDnvUTsbWUtr0OM6EvVUz0zCImybIh9dcTQ+6KTmUyA7URw==
+"@sentry/node@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/node/-/node-8.45.0.tgz#669360fc23214b7efb9b3209392d14d3e6d423e6"
+ integrity sha512-a+4csASc7zQlSAGt5AMVTUFn3Rz0qyiU90Hq1ejWLEF11i2FI73TrPVmyYT9bb+/AhzZV0vqmmrL5HVvxp/UGA==
dependencies:
"@opentelemetry/api" "^1.9.0"
- "@opentelemetry/context-async-hooks" "^1.25.1"
- "@opentelemetry/core" "^1.25.1"
- "@opentelemetry/instrumentation" "^0.54.0"
- "@opentelemetry/instrumentation-amqplib" "^0.43.0"
- "@opentelemetry/instrumentation-connect" "0.40.0"
- "@opentelemetry/instrumentation-dataloader" "0.12.0"
- "@opentelemetry/instrumentation-express" "0.44.0"
- "@opentelemetry/instrumentation-fastify" "0.41.0"
- "@opentelemetry/instrumentation-fs" "0.16.0"
- "@opentelemetry/instrumentation-generic-pool" "0.39.0"
- "@opentelemetry/instrumentation-graphql" "0.44.0"
- "@opentelemetry/instrumentation-hapi" "0.41.0"
- "@opentelemetry/instrumentation-http" "0.53.0"
- "@opentelemetry/instrumentation-ioredis" "0.43.0"
- "@opentelemetry/instrumentation-kafkajs" "0.4.0"
- "@opentelemetry/instrumentation-knex" "0.41.0"
- "@opentelemetry/instrumentation-koa" "0.43.0"
- "@opentelemetry/instrumentation-lru-memoizer" "0.40.0"
- "@opentelemetry/instrumentation-mongodb" "0.48.0"
- "@opentelemetry/instrumentation-mongoose" "0.42.0"
- "@opentelemetry/instrumentation-mysql" "0.41.0"
- "@opentelemetry/instrumentation-mysql2" "0.41.0"
- "@opentelemetry/instrumentation-nestjs-core" "0.40.0"
- "@opentelemetry/instrumentation-pg" "0.44.0"
- "@opentelemetry/instrumentation-redis-4" "0.42.0"
- "@opentelemetry/instrumentation-tedious" "0.15.0"
- "@opentelemetry/instrumentation-undici" "0.6.0"
- "@opentelemetry/resources" "^1.26.0"
- "@opentelemetry/sdk-trace-base" "^1.26.0"
- "@opentelemetry/semantic-conventions" "^1.27.0"
+ "@opentelemetry/context-async-hooks" "^1.29.0"
+ "@opentelemetry/core" "^1.29.0"
+ "@opentelemetry/instrumentation" "^0.56.0"
+ "@opentelemetry/instrumentation-amqplib" "^0.45.0"
+ "@opentelemetry/instrumentation-connect" "0.42.0"
+ "@opentelemetry/instrumentation-dataloader" "0.15.0"
+ "@opentelemetry/instrumentation-express" "0.46.0"
+ "@opentelemetry/instrumentation-fastify" "0.43.0"
+ "@opentelemetry/instrumentation-fs" "0.18.0"
+ "@opentelemetry/instrumentation-generic-pool" "0.42.0"
+ "@opentelemetry/instrumentation-graphql" "0.46.0"
+ "@opentelemetry/instrumentation-hapi" "0.44.0"
+ "@opentelemetry/instrumentation-http" "0.56.0"
+ "@opentelemetry/instrumentation-ioredis" "0.46.0"
+ "@opentelemetry/instrumentation-kafkajs" "0.6.0"
+ "@opentelemetry/instrumentation-knex" "0.43.0"
+ "@opentelemetry/instrumentation-koa" "0.46.0"
+ "@opentelemetry/instrumentation-lru-memoizer" "0.43.0"
+ "@opentelemetry/instrumentation-mongodb" "0.50.0"
+ "@opentelemetry/instrumentation-mongoose" "0.45.0"
+ "@opentelemetry/instrumentation-mysql" "0.44.0"
+ "@opentelemetry/instrumentation-mysql2" "0.44.0"
+ "@opentelemetry/instrumentation-nestjs-core" "0.43.0"
+ "@opentelemetry/instrumentation-pg" "0.49.0"
+ "@opentelemetry/instrumentation-redis-4" "0.45.0"
+ "@opentelemetry/instrumentation-tedious" "0.17.0"
+ "@opentelemetry/instrumentation-undici" "0.9.0"
+ "@opentelemetry/resources" "^1.29.0"
+ "@opentelemetry/sdk-trace-base" "^1.29.0"
+ "@opentelemetry/semantic-conventions" "^1.28.0"
"@prisma/instrumentation" "5.19.1"
- "@sentry/core" "8.42.0"
- "@sentry/opentelemetry" "8.42.0"
+ "@sentry/core" "8.45.0"
+ "@sentry/opentelemetry" "8.45.0"
import-in-the-middle "^1.11.2"
-"@sentry/opentelemetry@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-8.42.0.tgz"
- integrity sha512-QPb9kMFgl35TIwIz0u+BFTbPG461CofMiloidJ44GFZ9cB33T5cB0oIN7ut/5tsH/AvqUmucydsV/Nj3HNQx9g==
+"@sentry/opentelemetry@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/opentelemetry/-/opentelemetry-8.45.0.tgz#9e544d975575834bd23860700d039917c1cb2b90"
+ integrity sha512-qk8TBqk0EO7ggMdun16Wfb38IBN+VQBKwdbs7rbUfKOmXudsDAcz3gg7QfCO7qHoCK8c+fY3cIKoVrQkJ879+Q==
dependencies:
- "@sentry/core" "8.42.0"
+ "@sentry/core" "8.45.0"
-"@sentry/react@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/react/-/react-8.42.0.tgz"
- integrity sha512-UBi/WM4oMa+kOA99R7t7Ke57zq6uQw6mALYW4fJ+wuhHZJBLDDDHSGpEUhdWuQ1oWQv/laT34DGS44PJOjfeAg==
+"@sentry/react@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/react/-/react-8.45.0.tgz#9a1bfbbbb3575fffb92796acc28ad5bb93a6855a"
+ integrity sha512-xuJBDATJKAHOxpR5IBfGFWJxXb05GMPGGpk8UoWai1Mh50laAQ0/WW+5sDAKrCjXoA+JZ6fb3DP8EE2X93n1nw==
dependencies:
- "@sentry/browser" "8.42.0"
- "@sentry/core" "8.42.0"
+ "@sentry/browser" "8.45.0"
+ "@sentry/core" "8.45.0"
hoist-non-react-statics "^3.3.2"
-"@sentry/vercel-edge@8.42.0":
- version "8.42.0"
- resolved "https://registry.npmjs.org/@sentry/vercel-edge/-/vercel-edge-8.42.0.tgz"
- integrity sha512-OvUPowWCLqrllJ/1mUs2SfkNGNVjYDJ2+nmbHOdK7SMlUaHatKbCrb1nUWzRgWJ5E+ztsXi3uCC7cE1a3kA/rQ==
+"@sentry/vercel-edge@8.45.0":
+ version "8.45.0"
+ resolved "https://registry.yarnpkg.com/@sentry/vercel-edge/-/vercel-edge-8.45.0.tgz#69048987997948f49dd463333aec27170b0d5496"
+ integrity sha512-9cQrLSi3x7zZ33zfrpwU5P/kmANN+SdS7Ua3Vu5fKlM3xn6VETbuAngD57wA2XVVL/LG6i7DGA6I7/csswlfBQ==
dependencies:
"@opentelemetry/api" "^1.9.0"
- "@sentry/core" "8.42.0"
+ "@sentry/core" "8.45.0"
-"@sentry/webpack-plugin@2.22.6":
- version "2.22.6"
- resolved "https://registry.npmjs.org/@sentry/webpack-plugin/-/webpack-plugin-2.22.6.tgz"
- integrity sha512-BiLhAzQYAz/9kCXKj2LeUKWf/9GBVn2dD0DeYK89s+sjDEaxjbcLBBiLlLrzT7eC9QVj2tUZRKOi6puCfc8ysw==
+"@sentry/webpack-plugin@2.22.7":
+ version "2.22.7"
+ resolved "https://registry.yarnpkg.com/@sentry/webpack-plugin/-/webpack-plugin-2.22.7.tgz#992c6c782c736f22e72eb318745e28cc24aabad7"
+ integrity sha512-j5h5LZHWDlm/FQCCmEghQ9FzYXwfZdlOf3FE/X6rK6lrtx0JCAkq+uhMSasoyP4XYKL4P4vRS6WFSos4jxf/UA==
dependencies:
- "@sentry/bundler-plugin-core" "2.22.6"
+ "@sentry/bundler-plugin-core" "2.22.7"
unplugin "1.0.1"
uuid "^9.0.0"
"@sideway/address@^4.1.5":
version "4.1.5"
- resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5"
integrity sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==
dependencies:
"@hapi/hoek" "^9.0.0"
"@sideway/formula@^3.0.1":
version "3.0.1"
- resolved "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f"
integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==
"@sideway/pinpoint@^2.0.0":
version "2.0.0"
- resolved "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df"
integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==
"@sinclair/typebox@^0.27.8":
version "0.27.8"
- resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz"
+ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e"
integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==
"@sinonjs/commons@^3.0.0":
version "3.0.1"
- resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd"
integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==
dependencies:
type-detect "4.0.8"
"@sinonjs/fake-timers@^10.0.2":
version "10.3.0"
- resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66"
integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==
dependencies:
"@sinonjs/commons" "^3.0.0"
-"@storybook/addon-actions@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.4.5.tgz"
- integrity sha512-rbB19uiGJ61XHbKIbS1a9bUS6re5L8rT5NMNeEJhCxXRpFUPrlTXMSoD/Pgcn3ENeEMVZsm8/eCzxAVgAP3Mgg==
+"@storybook/addon-a11y@^8.3.5":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-8.4.7.tgz#0073090d8d4e0748249317a292ac27dc2c2b9ef2"
+ integrity sha512-GpUvXp6n25U1ZSv+hmDC+05BEqxWdlWjQTb/GaboRXZQeMBlze6zckpVb66spjmmtQAIISo0eZxX1+mGcVR7lA==
+ dependencies:
+ "@storybook/addon-highlight" "8.4.7"
+ axe-core "^4.2.0"
+
+"@storybook/addon-actions@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-8.4.7.tgz#210c6bb5a7e17c3664c300b4b69b6243ec34b9cd"
+ integrity sha512-mjtD5JxcPuW74T6h7nqMxWTvDneFtokg88p6kQ5OnC1M259iAXb//yiSZgu/quunMHPCXSiqn4FNOSgASTSbsA==
dependencies:
"@storybook/global" "^5.0.0"
"@types/uuid" "^9.0.1"
@@ -2853,130 +2898,130 @@
polished "^4.2.2"
uuid "^9.0.0"
-"@storybook/addon-backgrounds@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.4.5.tgz"
- integrity sha512-FeMt4qHCMYDQiLGGDKiRuSPXFup2WXOaZSdL137v1W36wEL/vGkK1A5iQt1qJ8MZzL5WZQuedox8rSybFy7eow==
+"@storybook/addon-backgrounds@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-8.4.7.tgz#56856bdafc5a2ba18cc19422320883c9e8f66c1c"
+ integrity sha512-I4/aErqtFiazcoWyKafOAm3bLpxTj6eQuH/woSbk1Yx+EzN+Dbrgx1Updy8//bsNtKkcrXETITreqHC+a57DHQ==
dependencies:
"@storybook/global" "^5.0.0"
memoizerific "^1.11.3"
ts-dedent "^2.0.0"
-"@storybook/addon-controls@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.4.5.tgz"
- integrity sha512-RVTtDDuESLYc1+SJQv2kI7wzBddzAS9uoEe8P75quN6S4pC0GxAB6xirWZ2+WOcba4eHosY+PxMwuBXQfH78Ew==
+"@storybook/addon-controls@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-8.4.7.tgz#0c2ace0c7056248577f08f90471f29e861b485be"
+ integrity sha512-377uo5IsJgXLnQLJixa47+11V+7Wn9KcDEw+96aGCBCfLbWNH8S08tJHHnSu+jXg9zoqCAC23MetntVp6LetHA==
dependencies:
"@storybook/global" "^5.0.0"
dequal "^2.0.2"
ts-dedent "^2.0.0"
-"@storybook/addon-docs@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.4.5.tgz"
- integrity sha512-zPELIl7wXormOylVaaSpkUIuuCCxrO+OFPMKZnlENt6zSReyy0dJu4V0tzfV8FCw+V4D6Y4wrLRk/TIG951Ojw==
+"@storybook/addon-docs@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-8.4.7.tgz#556515da1049f97023427301e11ecb52d0b9dbe7"
+ integrity sha512-NwWaiTDT5puCBSUOVuf6ME7Zsbwz7Y79WF5tMZBx/sLQ60vpmJVQsap6NSjvK1Ravhc21EsIXqemAcBjAWu80w==
dependencies:
"@mdx-js/react" "^3.0.0"
- "@storybook/blocks" "8.4.5"
- "@storybook/csf-plugin" "8.4.5"
- "@storybook/react-dom-shim" "8.4.5"
+ "@storybook/blocks" "8.4.7"
+ "@storybook/csf-plugin" "8.4.7"
+ "@storybook/react-dom-shim" "8.4.7"
react "^16.8.0 || ^17.0.0 || ^18.0.0"
react-dom "^16.8.0 || ^17.0.0 || ^18.0.0"
ts-dedent "^2.0.0"
-"@storybook/addon-essentials@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.4.5.tgz"
- integrity sha512-AxetQo/zSPIu3RZqWG2opwAz22Bb+jpf1nWbHp0kEpCrBemcWd8X2gonVmXNOC1PDKNl3jcWyc3lmg/+3mxjYg==
+"@storybook/addon-essentials@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-8.4.7.tgz#381c74230d1b1a209d5fdc017d241c016b98affe"
+ integrity sha512-+BtZHCBrYtQKILtejKxh0CDRGIgTl9PumfBOKRaihYb4FX1IjSAxoV/oo/IfEjlkF5f87vouShWsRa8EUauFDw==
dependencies:
- "@storybook/addon-actions" "8.4.5"
- "@storybook/addon-backgrounds" "8.4.5"
- "@storybook/addon-controls" "8.4.5"
- "@storybook/addon-docs" "8.4.5"
- "@storybook/addon-highlight" "8.4.5"
- "@storybook/addon-measure" "8.4.5"
- "@storybook/addon-outline" "8.4.5"
- "@storybook/addon-toolbars" "8.4.5"
- "@storybook/addon-viewport" "8.4.5"
+ "@storybook/addon-actions" "8.4.7"
+ "@storybook/addon-backgrounds" "8.4.7"
+ "@storybook/addon-controls" "8.4.7"
+ "@storybook/addon-docs" "8.4.7"
+ "@storybook/addon-highlight" "8.4.7"
+ "@storybook/addon-measure" "8.4.7"
+ "@storybook/addon-outline" "8.4.7"
+ "@storybook/addon-toolbars" "8.4.7"
+ "@storybook/addon-viewport" "8.4.7"
ts-dedent "^2.0.0"
-"@storybook/addon-highlight@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.4.5.tgz"
- integrity sha512-sMA7v+4unaKY+5RDhow6lLncJqNX9ZLUnBIt3vzY1ntUsOYVwykAY1Hq4Ysj0luCBXjJJdJ6223ylrycnb7Ilw==
+"@storybook/addon-highlight@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-highlight/-/addon-highlight-8.4.7.tgz#06b9752977e38884007e9446f9a2b0c04c873229"
+ integrity sha512-whQIDBd3PfVwcUCrRXvCUHWClXe9mQ7XkTPCdPo4B/tZ6Z9c6zD8JUHT76ddyHivixFLowMnA8PxMU6kCMAiNw==
dependencies:
"@storybook/global" "^5.0.0"
-"@storybook/addon-interactions@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.4.5.tgz"
- integrity sha512-s6R8XVD8LTp+LQTDbhtDjDLE6S44I7FtMLxPdMNwN9VEJjBk01NONLDuGDpNq5o/0bnybA3rMHk9+3afsgzidQ==
+"@storybook/addon-interactions@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-8.4.7.tgz#d34545db5ea6f03a5499ad6742c3317fb9e02d55"
+ integrity sha512-fnufT3ym8ht3HHUIRVXAH47iOJW/QOb0VSM+j269gDuvyDcY03D1civCu1v+eZLGaXPKJ8vtjr0L8zKQ/4P0JQ==
dependencies:
"@storybook/global" "^5.0.0"
- "@storybook/instrumenter" "8.4.5"
- "@storybook/test" "8.4.5"
+ "@storybook/instrumenter" "8.4.7"
+ "@storybook/test" "8.4.7"
polished "^4.2.2"
ts-dedent "^2.2.0"
-"@storybook/addon-links@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.4.5.tgz"
- integrity sha512-ac3OtplFdrPw/2jtLnteuVllwu2yCe3sgKJS9AbdYMT/65OW47M7oDnzcpRPsDGufrKlDMBJXXEv4SfTtlT+rg==
+"@storybook/addon-links@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-8.4.7.tgz#c38b2b63c3b0308adacff4b0758464a0657154c4"
+ integrity sha512-L/1h4dMeMKF+MM0DanN24v5p3faNYbbtOApMgg7SlcBT/tgo3+cAjkgmNpYA8XtKnDezm+T2mTDhB8mmIRZpIQ==
dependencies:
"@storybook/csf" "^0.1.11"
"@storybook/global" "^5.0.0"
ts-dedent "^2.0.0"
-"@storybook/addon-measure@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.4.5.tgz"
- integrity sha512-+sNjew991YaoXQyWWloFybjEGrDO40Jk6w8BgZs2X7oc3D5t/6oFzvyC862U++LGqKFA3quXDeBjEb92CI9cRA==
+"@storybook/addon-measure@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-8.4.7.tgz#9d556ba34b57c13ad8d00bd953b27ec405a64d23"
+ integrity sha512-QfvqYWDSI5F68mKvafEmZic3SMiK7zZM8VA0kTXx55hF/+vx61Mm0HccApUT96xCXIgmwQwDvn9gS4TkX81Dmw==
dependencies:
"@storybook/global" "^5.0.0"
tiny-invariant "^1.3.1"
-"@storybook/addon-onboarding@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-onboarding/-/addon-onboarding-8.4.5.tgz"
- integrity sha512-+FW50yVw2NMxYvk3uMpIberfkG4Sn0qRpiMse7MGHgTimtaJ0Mo1AUIrSfyIJCVTuxiWZud1a5DAnH0ybbWjjA==
+"@storybook/addon-onboarding@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-onboarding/-/addon-onboarding-8.4.7.tgz#212a5e27db1ee8440a2dd0d5c67ac29f0e6efda5"
+ integrity sha512-FdC2NV60VNYeMxf6DVe0qV9ucSBAzMh1//C0Qqwq8CcjthMbmKlVZ7DqbVsbIHKnFaSCaUC88eR5olAfMaauCQ==
dependencies:
react-confetti "^6.1.0"
-"@storybook/addon-outline@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.4.5.tgz"
- integrity sha512-XlpN98AUDnWQWNFSFVm+HkRUzm3xIUMjBGTkv6HsL6zt6XoJ+LsQMca+PPtYqlBJA+5CU41xMDaG8HC/p+sd3A==
+"@storybook/addon-outline@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-8.4.7.tgz#8a35fe519dd639bb287a370da2222e6ffdce4020"
+ integrity sha512-6LYRqUZxSodmAIl8icr585Oi8pmzbZ90aloZJIpve+dBAzo7ydYrSQxxoQEVltXbKf3VeVcrs64ouAYqjisMYA==
dependencies:
"@storybook/global" "^5.0.0"
ts-dedent "^2.0.0"
-"@storybook/addon-toolbars@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.4.5.tgz"
- integrity sha512-hOq5560ONOU/qrslrwosWzxnC4nrF8HZWD43ciKwtethm8HuptU2M+Jrui1CRsMScEZLopWWVE9o0vJMdKpIFQ==
+"@storybook/addon-toolbars@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-8.4.7.tgz#b898d4deaf6f5a58f3b70bd8d136cd4ec2844b79"
+ integrity sha512-OSfdv5UZs+NdGB+nZmbafGUWimiweJ/56gShlw8Neo/4jOJl1R3rnRqqY7MYx8E4GwoX+i3GF5C3iWFNQqlDcw==
-"@storybook/addon-viewport@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.4.5.tgz"
- integrity sha512-l7Y41gIbJAsIN/QCg1QJ9sr61FLz1C/imUotcDej41tOHxUTSQOlXpNtVnfhUM1vGQc0yNpP3pVxj8BpXi0cAw==
+"@storybook/addon-viewport@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-8.4.7.tgz#e65c53608f52149c06347b395487960605fc4805"
+ integrity sha512-hvczh/jjuXXcOogih09a663sRDDSATXwbE866al1DXgbDFraYD/LxX/QDb38W9hdjU9+Qhx8VFIcNWoMQns5HQ==
dependencies:
memoizerific "^1.11.3"
-"@storybook/blocks@8.4.5", "@storybook/blocks@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.4.5.tgz"
- integrity sha512-Z+LHauSqm3A4HBR9pUEf9KQhD3/3xYMt0FXgA+GHCAyDa6lFeD1C6r9Y2nlT+9dt8gv9B9oygTZvV6GqFVyRSQ==
+"@storybook/blocks@8.4.7", "@storybook/blocks@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/blocks/-/blocks-8.4.7.tgz#ee17f59dd52d11c97c39b0f6b03957085a80ad95"
+ integrity sha512-+QH7+JwXXXIyP3fRCxz/7E2VZepAanXJM7G8nbR3wWsqWgrRp4Wra6MvybxAYCxU7aNfJX5c+RW84SNikFpcIA==
dependencies:
"@storybook/csf" "^0.1.11"
"@storybook/icons" "^1.2.12"
ts-dedent "^2.0.0"
-"@storybook/builder-webpack5@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-8.4.5.tgz"
- integrity sha512-5TSpirK2LIL4Wultpowlkrv3iAje57HTw92Hy6c4Zn64tAs30123mkdE6MoJcXMBfD4JwX9I2K2Q+ofZXblJPg==
+"@storybook/builder-webpack5@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-8.4.7.tgz#5bc15568716bbf4f45a88fc389e25fa2ce50a8c2"
+ integrity sha512-O8LpsQ+4g2x5kh7rI9+jEUdX8k1a5egBQU1lbudmHchqsV0IKiVqBD9LL5Gj3wpit4vB8coSW4ZWTFBw8FQb4Q==
dependencies:
- "@storybook/core-webpack" "8.4.5"
+ "@storybook/core-webpack" "8.4.7"
"@types/node" "^22.0.0"
"@types/semver" "^7.3.4"
browser-assert "^1.2.1"
@@ -3002,28 +3047,28 @@
webpack-hot-middleware "^2.25.1"
webpack-virtual-modules "^0.6.0"
-"@storybook/components@8.4.5", "@storybook/components@^8.3.6":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/components/-/components-8.4.5.tgz"
- integrity sha512-2PdnKfqNNv3sO7qILgWXiNvmLOi503oN9OMemNCQjTIvdvySc5JpS9/eClwcl/JfmE4qHdSHZr8dLLkBM9S7+Q==
+"@storybook/components@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/components/-/components-8.4.7.tgz#09eeffa07aa672ad3966ca1764a43003731b1d30"
+ integrity sha512-uyJIcoyeMWKAvjrG9tJBUCKxr2WZk+PomgrgrUwejkIfXMO76i6jw9BwLa0NZjYdlthDv30r9FfbYZyeNPmF0g==
"@storybook/core-common@^8.0.0":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-8.3.6.tgz"
- integrity sha512-67GHzjuYIvIfD/sqOuTeY1PmOdXZ2Hv9iTCc5xTMJCVBW0XN2Uqqy0ORP111x4EQblBPmnuNAfyYHoWrRxvTxg==
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-8.4.7.tgz#63f775c303b4dc32da137fab9dcc6e9a97bb7b24"
+ integrity sha512-WgVg9UR/Ye4vnoB0i9pQkJsy47IlerkBaxSHycaxIlg87znrYL1K31a5Os1qUXq+eJbH6Jk70dfUmbRh/UOS6A==
-"@storybook/core-webpack@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-8.4.5.tgz"
- integrity sha512-IpK/3fM+l2WjRNplTtP+MtnRf/394GcBwyemZknUCzFFDJWNYAN1+meEZmOaZKzJ3tQyRYiErrJLHzd1+UH6Dw==
+"@storybook/core-webpack@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/core-webpack/-/core-webpack-8.4.7.tgz#660d1cbd03a91fee27b65e6acc2f9269ed1fbfc8"
+ integrity sha512-Tj+CjQLpFyBJxhhMms+vbPT3+gTRAiQlrhY3L1IEVwBa3wtRMS0qjozH26d1hK4G6mUIEdwu13L54HMU/w33Sg==
dependencies:
"@types/node" "^22.0.0"
ts-dedent "^2.0.0"
-"@storybook/core@8.4.6":
- version "8.4.6"
- resolved "https://registry.npmjs.org/@storybook/core/-/core-8.4.6.tgz"
- integrity sha512-WeojVtHy0/t50tzw/15S+DLzKsj8BN9yWdo3vJMvm+nflLFvfq1XvD9WGOWeaFp8E/o3AP+4HprXG0r42KEJtA==
+"@storybook/core@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/core/-/core-8.4.7.tgz#af9cbb3f26f0b6c98c679a134ce776c202570d66"
+ integrity sha512-7Z8Z0A+1YnhrrSXoKKwFFI4gnsLbWzr8fnDCU6+6HlDukFYh8GHRcZ9zKfqmy6U3hw2h8H5DrHsxWfyaYUUOoA==
dependencies:
"@storybook/csf" "^0.1.11"
better-opn "^3.0.2"
@@ -3037,61 +3082,52 @@
util "^0.12.5"
ws "^8.2.3"
-"@storybook/csf-plugin@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.4.5.tgz"
- integrity sha512-qd2rQTglOTS+phQmTbNTXNjNyxdGvolaqHqDNMw3Vf6h9o3U+mLkwnDWNVnQ9oqvOoUEAqpBthgwzU9FhkIk+A==
+"@storybook/csf-plugin@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/csf-plugin/-/csf-plugin-8.4.7.tgz#0117c872b05bf033eec089ab0224e0fab01da810"
+ integrity sha512-Fgogplu4HImgC+AYDcdGm1rmL6OR1rVdNX1Be9C/NEXwOCpbbBwi0BxTf/2ZxHRk9fCeaPEcOdP5S8QHfltc1g==
dependencies:
unplugin "^1.3.1"
"@storybook/csf-tools@^8.0.0":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-8.3.6.tgz"
- integrity sha512-92D+GUXdmx5eDYcuQ2ajYSUINQngSjB345//43Tx+Xn30eS4flRBmgPsbSPN8IvSBSQlsUU/w8+MFKBK1qGnUw==
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-8.4.7.tgz#956f9073bbcd377c67e691440ae23536f5be882e"
+ integrity sha512-UR+qMZFEII1e9Gx3RViQoqpSIQnaZWiGQFE2u+wjMMRzqoP2TMRnAHM1d8m6Tk0c1BSrcRt4tUfJkIsTI0o5vw==
"@storybook/csf@^0.1.11":
- version "0.1.11"
- resolved "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.11.tgz"
- integrity sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==
+ version "0.1.12"
+ resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.1.12.tgz#1dcfa0f398a69b834c563884b5f747db3d5a81df"
+ integrity sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==
dependencies:
type-fest "^2.19.0"
"@storybook/global@^5.0.0":
version "5.0.0"
- resolved "https://registry.npmjs.org/@storybook/global/-/global-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/@storybook/global/-/global-5.0.0.tgz#b793d34b94f572c1d7d9e0f44fac4e0dbc9572ed"
integrity sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==
"@storybook/icons@^1.2.12":
- version "1.2.12"
- resolved "https://registry.npmjs.org/@storybook/icons/-/icons-1.2.12.tgz"
- integrity sha512-UxgyK5W3/UV4VrI3dl6ajGfHM4aOqMAkFLWe2KibeQudLf6NJpDrDMSHwZj+3iKC4jFU7dkKbbtH2h/al4sW3Q==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@storybook/icons/-/icons-1.3.0.tgz#a5c1460fb15a7260e0b638ab86163f7347a0061e"
+ integrity sha512-Nz/UzeYQdUZUhacrPyfkiiysSjydyjgg/p0P9HxB4p/WaJUUjMAcaoaLgy3EXx61zZJ3iD36WPuDkZs5QYrA0A==
-"@storybook/instrumenter@8.3.6":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.3.6.tgz"
- integrity sha512-0RowbKwoB/s7rtymlnKNiyWN1Z3ZK5mwgzVjlRmzxDL8hrdi5KDjTNExuJTRR3ZaBP2RR0/I3m/n0p9JhHAZvg==
- dependencies:
- "@storybook/global" "^5.0.0"
- "@vitest/utils" "^2.0.5"
- util "^0.12.4"
-
-"@storybook/instrumenter@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.4.5.tgz"
- integrity sha512-8qM35FkueuRpJr0zA6ENvhQICbo+iKL1ln450DwV1kKJtc41KdbA3CuCvtZ/FnoPsFnwdtPjhhICFtRt8LRTSg==
+"@storybook/instrumenter@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-8.4.7.tgz#5a37876fee8f828241a1e7fd76891c6effc1805a"
+ integrity sha512-k6NSD3jaRCCHAFtqXZ7tw8jAzD/yTEWXGya+REgZqq5RCkmJ+9S4Ytp/6OhQMPtPFX23gAuJJzTQVLcCr+gjRg==
dependencies:
"@storybook/global" "^5.0.0"
"@vitest/utils" "^2.1.1"
-"@storybook/manager-api@8.4.5", "@storybook/manager-api@^8.3.6":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.4.5.tgz"
- integrity sha512-t39JaMy3UX4StbUH/tIDcaflBDxTcyIq853wQtBMhVL3e1+Dw3MIiiG/5bw79HU4R7kSmPVLXIIbV3FmXkq7KQ==
+"@storybook/manager-api@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-8.4.7.tgz#4e13debf645c9300d7d6d49195e720d0c7ecd261"
+ integrity sha512-ELqemTviCxAsZ5tqUz39sDmQkvhVAvAgiplYy9Uf15kO0SP2+HKsCMzlrm2ue2FfkUNyqbDayCPPCB0Cdn/mpQ==
-"@storybook/nextjs@^8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/nextjs/-/nextjs-8.4.5.tgz"
- integrity sha512-KhP9XVI20iwAvMFHqvlV0x5UqzvMbD42QjSW5/2KYy52CStnczfa/3Xyb2VBgAMQx3Ony0qnqlTVHi6qhJQtOA==
+"@storybook/nextjs@^8.4.2":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/nextjs/-/nextjs-8.4.7.tgz#429b7f9b36b3117ed4d6f194c7caea0a88eeb239"
+ integrity sha512-6dVt6VKBndSqn91egZx2fWl44i1TnIggRgmnk5jyl2KHDRvXziFNa2ujBz1nveriAWmwRchhce0OLDx9zQ9b4w==
dependencies:
"@babel/core" "^7.24.4"
"@babel/plugin-syntax-bigint" "^7.8.3"
@@ -3107,10 +3143,10 @@
"@babel/preset-typescript" "^7.24.1"
"@babel/runtime" "^7.24.4"
"@pmmmwh/react-refresh-webpack-plugin" "^0.5.11"
- "@storybook/builder-webpack5" "8.4.5"
- "@storybook/preset-react-webpack" "8.4.5"
- "@storybook/react" "8.4.5"
- "@storybook/test" "8.4.5"
+ "@storybook/builder-webpack5" "8.4.7"
+ "@storybook/preset-react-webpack" "8.4.7"
+ "@storybook/react" "8.4.7"
+ "@storybook/test" "8.4.7"
"@types/node" "^22.0.0"
"@types/semver" "^7.3.4"
babel-loader "^9.1.3"
@@ -3134,13 +3170,13 @@
optionalDependencies:
sharp "^0.33.3"
-"@storybook/preset-react-webpack@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/preset-react-webpack/-/preset-react-webpack-8.4.5.tgz"
- integrity sha512-BKPAN7G0yFXfojQdF8tvgwVJ0ldcl6+p1JtAPAieH69BMGni3TEPnvPhkefRWcM8oM8pl+Hch/J2PLHiZ6QKNQ==
+"@storybook/preset-react-webpack@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/preset-react-webpack/-/preset-react-webpack-8.4.7.tgz#7b303f464228035a919ea18a3cd6193f6776c2bc"
+ integrity sha512-geTSBKyrBagVihil5MF7LkVFynbfHhCinvnbCZZqXW7M1vgcxvatunUENB+iV8eWg/0EJ+8O7scZL+BAxQ/2qg==
dependencies:
- "@storybook/core-webpack" "8.4.5"
- "@storybook/react" "8.4.5"
+ "@storybook/core-webpack" "8.4.7"
+ "@storybook/react" "8.4.7"
"@storybook/react-docgen-typescript-plugin" "1.0.6--canary.9.0c3f3b7.0"
"@types/node" "^22.0.0"
"@types/semver" "^7.3.4"
@@ -3152,14 +3188,14 @@
tsconfig-paths "^4.2.0"
webpack "5"
-"@storybook/preview-api@8.4.5", "@storybook/preview-api@^8.0.0", "@storybook/preview-api@^8.3.6":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.4.5.tgz"
- integrity sha512-MKIZ2jQO/3cUdsT57eq8jRgB6inALo9BxrQ88f7mqzltOkMvADvTAY6y8JZqTUoDzWTH/ny/8SGGdtpqlxRuiQ==
+"@storybook/preview-api@8.4.7", "@storybook/preview-api@^8.0.0":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-8.4.7.tgz#85e01a97f4182b974581765d725f6c7a7d190013"
+ integrity sha512-0QVQwHw+OyZGHAJEXo6Knx+6/4er7n2rTDE5RYJ9F2E2Lg42E19pfdLlq2Jhoods2Xrclo3wj6GWR//Ahi39Eg==
"@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0":
version "1.0.6--canary.9.0c3f3b7.0"
- resolved "https://registry.npmjs.org/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.6--canary.9.0c3f3b7.0.tgz"
+ resolved "https://registry.yarnpkg.com/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.6--canary.9.0c3f3b7.0.tgz#7f10f3c641f32e4513a8b6ffb5036933e7059534"
integrity sha512-KUqXC3oa9JuQ0kZJLBhVdS4lOneKTOopnNBK4tUAgoxWQ3u/IjzdueZjFr7gyBrXMoU6duutk3RQR9u8ZpYJ4Q==
dependencies:
debug "^4.1.1"
@@ -3170,57 +3206,26 @@
react-docgen-typescript "^2.2.2"
tslib "^2.0.0"
-"@storybook/react-dom-shim@8.3.6":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.3.6.tgz"
- integrity sha512-9BO6VXIdli4GHSfiP/Z0gwAf7oQig3D/yWK2U1+91UWDV8nIAgnNBAi76U4ORC6MiK5MdkDfIikIxnLLeLnahA==
+"@storybook/react-dom-shim@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/react-dom-shim/-/react-dom-shim-8.4.7.tgz#f0dd5bbf2fc185def72d9d08a11c8de22f152c2a"
+ integrity sha512-6bkG2jvKTmWrmVzCgwpTxwIugd7Lu+2btsLAqhQSzDyIj2/uhMNp8xIMr/NBDtLgq3nomt9gefNa9xxLwk/OMg==
-"@storybook/react-dom-shim@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.4.5.tgz"
- integrity sha512-YTWTfPagptEYXJsnxAl3zP97Ev0zebtaEV0WgjGaEeumr+zsfgKKwzzHxgrtumBmDzwkuKlzFwlQB5A8keOIGA==
-
-"@storybook/react@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/react/-/react-8.4.5.tgz"
- integrity sha512-2+p4aGEdGOnu2XNhnMi1B8GPeszm34P905HgqGD1cuz9gMt7x/bgZQaVxs6kpHZ3Hb6V9qp62La2dbAYatHdSw==
+"@storybook/react@8.4.7", "@storybook/react@^8.3.5":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/react/-/react-8.4.7.tgz#e2cf62b3c1d8e4bfe5eff82ced07ec473d4e4fd1"
+ integrity sha512-nQ0/7i2DkaCb7dy0NaT95llRVNYWQiPIVuhNfjr1mVhEP7XD090p0g7eqUmsx8vfdHh2BzWEo6CoBFRd3+EXxw==
dependencies:
- "@storybook/components" "8.4.5"
+ "@storybook/components" "8.4.7"
"@storybook/global" "^5.0.0"
- "@storybook/manager-api" "8.4.5"
- "@storybook/preview-api" "8.4.5"
- "@storybook/react-dom-shim" "8.4.5"
- "@storybook/theming" "8.4.5"
-
-"@storybook/react@^8.3.5":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/react/-/react-8.3.6.tgz"
- integrity sha512-s3COryqIOYK7urgZaCPb77zlxGjPKr6dIsYmblQJcsFY2ZlG2x0Ysm8b5oRgD8Pv71hCJ0PKYA4RzDgBVYJS9A==
- dependencies:
- "@storybook/components" "^8.3.6"
- "@storybook/global" "^5.0.0"
- "@storybook/manager-api" "^8.3.6"
- "@storybook/preview-api" "^8.3.6"
- "@storybook/react-dom-shim" "8.3.6"
- "@storybook/theming" "^8.3.6"
- "@types/escodegen" "^0.0.6"
- "@types/estree" "^0.0.51"
- "@types/node" "^22.0.0"
- acorn "^7.4.1"
- acorn-jsx "^5.3.1"
- acorn-walk "^7.2.0"
- escodegen "^2.1.0"
- html-tags "^3.1.0"
- prop-types "^15.7.2"
- react-element-to-jsx-string "^15.0.0"
- semver "^7.3.7"
- ts-dedent "^2.0.0"
- type-fest "~2.19"
- util-deprecate "^1.0.2"
+ "@storybook/manager-api" "8.4.7"
+ "@storybook/preview-api" "8.4.7"
+ "@storybook/react-dom-shim" "8.4.7"
+ "@storybook/theming" "8.4.7"
"@storybook/test-runner@^0.19.1":
version "0.19.1"
- resolved "https://registry.npmjs.org/@storybook/test-runner/-/test-runner-0.19.1.tgz"
+ resolved "https://registry.yarnpkg.com/@storybook/test-runner/-/test-runner-0.19.1.tgz#b0a94bd09d9914f47e23d11779690ffc5b5164a7"
integrity sha512-Nc4djXw3Lv3AAXg6TJ7yVTeuMryjMsTDd8GCbE/PStU602rpe8syEqElz78GPoJqB1VYWQ3T9pcu93MKyHT+xQ==
dependencies:
"@babel/core" "^7.22.5"
@@ -3246,64 +3251,49 @@
nyc "^15.1.0"
playwright "^1.14.0"
-"@storybook/test@8.4.5":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/test/-/test-8.4.5.tgz"
- integrity sha512-mHsRc6m60nfcEBsjvUkKz+Jnz0or4WH5jmJ1VL2pGKO4VzESCPqAwDnwDqP2YyeSQ0b/MAKUT5kdoLE2RE2eVw==
+"@storybook/test@8.4.7", "@storybook/test@^8.3.5":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/test/-/test-8.4.7.tgz#7f58f2cdf3a6d810bf3ff4e0e2fee634040c678f"
+ integrity sha512-AhvJsu5zl3uG40itSQVuSy5WByp3UVhS6xAnme4FWRwgSxhvZjATJ3AZkkHWOYjnnk+P2/sbz/XuPli1FVCWoQ==
dependencies:
"@storybook/csf" "^0.1.11"
"@storybook/global" "^5.0.0"
- "@storybook/instrumenter" "8.4.5"
+ "@storybook/instrumenter" "8.4.7"
"@testing-library/dom" "10.4.0"
"@testing-library/jest-dom" "6.5.0"
"@testing-library/user-event" "14.5.2"
"@vitest/expect" "2.0.5"
"@vitest/spy" "2.0.5"
-"@storybook/test@^8.3.5":
- version "8.3.6"
- resolved "https://registry.npmjs.org/@storybook/test/-/test-8.3.6.tgz"
- integrity sha512-WIc8LzK9jaEw+e3OiweEM2j3cppPzsWod59swuf6gDBf176EQLIyjtVc+Kh3qO4NNkcL+lwmqaLPjOxlBLaDbg==
- dependencies:
- "@storybook/csf" "^0.1.11"
- "@storybook/global" "^5.0.0"
- "@storybook/instrumenter" "8.3.6"
- "@testing-library/dom" "10.4.0"
- "@testing-library/jest-dom" "6.5.0"
- "@testing-library/user-event" "14.5.2"
- "@vitest/expect" "2.0.5"
- "@vitest/spy" "2.0.5"
- util "^0.12.4"
+"@storybook/theming@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-8.4.7.tgz#c308f6a883999bd35e87826738ab8a76515932b5"
+ integrity sha512-99rgLEjf7iwfSEmdqlHkSG3AyLcK0sfExcr0jnc6rLiAkBhzuIsvcHjjUwkR210SOCgXqBPW0ZA6uhnuyppHLw==
-"@storybook/theming@8.4.5", "@storybook/theming@^8.3.6":
- version "8.4.5"
- resolved "https://registry.npmjs.org/@storybook/theming/-/theming-8.4.5.tgz"
- integrity sha512-45e/jeG4iuqdZcHg3PbB6dwXQTwlnnEB7r/QcVExyC7ibrkTnjUfvxzyUw4mmU3CXETFGD5EcUobFkgK+/aPxQ==
-
-"@supabase/auth-js@2.66.1":
- version "2.66.1"
- resolved "https://registry.yarnpkg.com/@supabase/auth-js/-/auth-js-2.66.1.tgz#40d9e7d98206123afc169877ecfe3fea33a4a0ae"
- integrity sha512-kOW+04SuDXmP2jRX9JL1Rgzduj8BcOG1qC3RaWdZsxnv89svNCdLRv8PfXW3QPKJdw0k1jF30OlQDPkzbDEL9w==
+"@supabase/auth-js@2.67.0":
+ version "2.67.0"
+ resolved "https://registry.yarnpkg.com/@supabase/auth-js/-/auth-js-2.67.0.tgz#2cde1126e889c8f941965eeea2c181f916f04fbe"
+ integrity sha512-zbyxFWJmdkQalnDr4vYNtxh//NLBwjPgggZ0hcoY/Ry8c5p9gZV6v972uz/wRxiRSGyNt9xnxbXKLQkDsqEMkQ==
dependencies:
"@supabase/node-fetch" "^2.6.14"
"@supabase/functions-js@2.4.3":
version "2.4.3"
- resolved "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-2.4.3.tgz"
+ resolved "https://registry.yarnpkg.com/@supabase/functions-js/-/functions-js-2.4.3.tgz#ac1c696d3a1ebe00f60d5cea69b208078678ef8b"
integrity sha512-sOLXy+mWRyu4LLv1onYydq+10mNRQ4rzqQxNhbrKLTLTcdcmS9hbWif0bGz/NavmiQfPs4ZcmQJp4WqOXlR4AQ==
dependencies:
"@supabase/node-fetch" "^2.6.14"
"@supabase/node-fetch@2.6.15", "@supabase/node-fetch@^2.6.14":
version "2.6.15"
- resolved "https://registry.npmjs.org/@supabase/node-fetch/-/node-fetch-2.6.15.tgz"
+ resolved "https://registry.yarnpkg.com/@supabase/node-fetch/-/node-fetch-2.6.15.tgz#731271430e276983191930816303c44159e7226c"
integrity sha512-1ibVeYUacxWYi9i0cf5efil6adJ9WRyZBLivgjs+AUpewx1F3xPi7gLgaASI2SmIQxPoCEjAsLAzKPgMJVgOUQ==
dependencies:
whatwg-url "^5.0.0"
"@supabase/postgrest-js@1.16.3":
version "1.16.3"
- resolved "https://registry.npmjs.org/@supabase/postgrest-js/-/postgrest-js-1.16.3.tgz"
+ resolved "https://registry.yarnpkg.com/@supabase/postgrest-js/-/postgrest-js-1.16.3.tgz#d8e009e63b9152e46715982a6d706f1450c0af0d"
integrity sha512-HI6dsbW68AKlOPofUjDTaosiDBCtW4XAm0D18pPwxoW3zKOE2Ru13Z69Wuys9fd6iTpfDViNco5sgrtnP0666A==
dependencies:
"@supabase/node-fetch" "^2.6.14"
@@ -3320,7 +3310,7 @@
"@supabase/ssr@^0.5.2":
version "0.5.2"
- resolved "https://registry.npmjs.org/@supabase/ssr/-/ssr-0.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/@supabase/ssr/-/ssr-0.5.2.tgz#04233a0ca23a5bc15e02006fb324b9ed2f9f645d"
integrity sha512-n3plRhr2Bs8Xun1o4S3k1CDv17iH5QY9YcoEvXX3bxV1/5XSasA0mNXYycFmADIdtdE6BG9MRjP5CGIs8qxC8A==
dependencies:
"@types/cookie" "^0.6.0"
@@ -3328,136 +3318,136 @@
"@supabase/storage-js@2.7.1":
version "2.7.1"
- resolved "https://registry.npmjs.org/@supabase/storage-js/-/storage-js-2.7.1.tgz"
+ resolved "https://registry.yarnpkg.com/@supabase/storage-js/-/storage-js-2.7.1.tgz#761482f237deec98a59e5af1ace18c7a5e0a69af"
integrity sha512-asYHcyDR1fKqrMpytAS1zjyEfvxuOIp1CIXX7ji4lHHcJKqyk+sLl/Vxgm4sN6u8zvuUtae9e4kDxQP2qrwWBA==
dependencies:
"@supabase/node-fetch" "^2.6.14"
"@supabase/supabase-js@^2.47.3":
- version "2.47.3"
- resolved "https://registry.yarnpkg.com/@supabase/supabase-js/-/supabase-js-2.47.3.tgz#1240eae822d9ad78619fb75709e0e0a5d9411b1b"
- integrity sha512-AmwTyHtOXdfjLVKiM+neYItB62T4gAl1jV8ZrIg3yp1Z1NICzYfsujJDSuELkrLkYvU/RGfZXpIBheDTt7fmwA==
+ version "2.47.6"
+ resolved "https://registry.yarnpkg.com/@supabase/supabase-js/-/supabase-js-2.47.6.tgz#16b390360777f48e4bec9ea209863dfee47214ec"
+ integrity sha512-qObNaqeDOb1+yh8oHdcjGxOVIvNOsOPE+rKr01ODDxWQHtwC2Wsye42BXZDZz7+FJFxEAqNieDqRPrlMRu5VyA==
dependencies:
- "@supabase/auth-js" "2.66.1"
+ "@supabase/auth-js" "2.67.0"
"@supabase/functions-js" "2.4.3"
"@supabase/node-fetch" "2.6.15"
"@supabase/postgrest-js" "1.16.3"
"@supabase/realtime-js" "2.11.2"
"@supabase/storage-js" "2.7.1"
-"@swc/core-darwin-arm64@1.7.39":
- version "1.7.39"
- resolved "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.7.39.tgz"
- integrity sha512-o2nbEL6scMBMCTvY9OnbyVXtepLuNbdblV9oNJEFia5v5eGj9WMrnRQiylH3Wp/G2NYkW7V1/ZVW+kfvIeYe9A==
+"@swc/core-darwin-arm64@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.10.1.tgz#faaaab19b4a039ae67ef661c0144a6f20fe8a78e"
+ integrity sha512-NyELPp8EsVZtxH/mEqvzSyWpfPJ1lugpTQcSlMduZLj1EASLO4sC8wt8hmL1aizRlsbjCX+r0PyL+l0xQ64/6Q==
-"@swc/core-darwin-x64@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.7.39.tgz#bd4699cca0b104629422eabaea1bc09afcd1ccc2"
- integrity sha512-qMlv3XPgtPi/Fe11VhiPDHSLiYYk2dFYl747oGsHZPq+6tIdDQjIhijXPcsUHIXYDyG7lNpODPL8cP/X1sc9MA==
+"@swc/core-darwin-x64@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.10.1.tgz#754600f453abd24471c202d48836f1161d798f49"
+ integrity sha512-L4BNt1fdQ5ZZhAk5qoDfUnXRabDOXKnXBxMDJ+PWLSxOGBbWE6aJTnu4zbGjJvtot0KM46m2LPAPY8ttknqaZA==
-"@swc/core-linux-arm-gnueabihf@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.7.39.tgz#921603cd294734d673b292efd6385d13ffb075ed"
- integrity sha512-NP+JIkBs1ZKnpa3Lk2W1kBJMwHfNOxCUJXuTa2ckjFsuZ8OUu2gwdeLFkTHbR43dxGwH5UzSmuGocXeMowra/Q==
+"@swc/core-linux-arm-gnueabihf@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.10.1.tgz#b0f43c482d0d1819b382a4eb4a0733ce2e386257"
+ integrity sha512-Y1u9OqCHgvVp2tYQAJ7hcU9qO5brDMIrA5R31rwWQIAKDkJKtv3IlTHF0hrbWk1wPR0ZdngkQSJZple7G+Grvw==
-"@swc/core-linux-arm64-gnu@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.7.39.tgz#d751faf13b575bb0eb422a283a9e61c11e547dc8"
- integrity sha512-cPc+/HehyHyHcvAsk3ML/9wYcpWVIWax3YBaA+ScecJpSE04l/oBHPfdqKUPslqZ+Gcw0OWnIBGJT/fBZW2ayw==
+"@swc/core-linux-arm64-gnu@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.10.1.tgz#e02a9e22c25ba85ef00335742e549e06284cf33a"
+ integrity sha512-tNQHO/UKdtnqjc7o04iRXng1wTUXPgVd8Y6LI4qIbHVoVPwksZydISjMcilKNLKIwOoUQAkxyJ16SlOAeADzhQ==
-"@swc/core-linux-arm64-musl@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.7.39.tgz#ac9b346dd5891798956e6b573f5111126c00fe17"
- integrity sha512-8RxgBC6ubFem66bk9XJ0vclu3exJ6eD7x7CwDhp5AD/tulZslTYXM7oNPjEtje3xxabXuj/bEUMNvHZhQRFdqA==
+"@swc/core-linux-arm64-musl@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.10.1.tgz#3a0530af8f8bd3717f2f1bd8a2f5183fc58d4cf1"
+ integrity sha512-x0L2Pd9weQ6n8dI1z1Isq00VHFvpBClwQJvrt3NHzmR+1wCT/gcYl1tp9P5xHh3ldM8Cn4UjWCw+7PaUgg8FcQ==
-"@swc/core-linux-x64-gnu@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.7.39.tgz#1a0bb356bc83cc3c6c88e0a35281fd0c57aa27cc"
- integrity sha512-3gtCPEJuXLQEolo9xsXtuPDocmXQx12vewEyFFSMSjOfakuPOBmOQMa0sVL8Wwius8C1eZVeD1fgk0omMqeC+Q==
+"@swc/core-linux-x64-gnu@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.10.1.tgz#5eb4d282b047a22896ab1d4627403be4c3e4fa6a"
+ integrity sha512-yyYEwQcObV3AUsC79rSzN9z6kiWxKAVJ6Ntwq2N9YoZqSPYph+4/Am5fM1xEQYf/kb99csj0FgOelomJSobxQA==
-"@swc/core-linux-x64-musl@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.7.39.tgz#800dc36a964e04bd04944934218506eff19cc158"
- integrity sha512-mg39pW5x/eqqpZDdtjZJxrUvQNSvJF4O8wCl37fbuFUqOtXs4TxsjZ0aolt876HXxxhsQl7rS+N4KioEMSgTZw==
+"@swc/core-linux-x64-musl@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.10.1.tgz#890f2eda3e67ccc6817cdd04eff91e6ad9e761c4"
+ integrity sha512-tcaS43Ydd7Fk7sW5ROpaf2Kq1zR+sI5K0RM+0qYLYYurvsJruj3GhBCaiN3gkzd8m/8wkqNqtVklWaQYSDsyqA==
-"@swc/core-win32-arm64-msvc@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.7.39.tgz#91dcd6a9996714a78005984f08e8cc8dcdf8a90f"
- integrity sha512-NZwuS0mNJowH3e9bMttr7B1fB8bW5svW/yyySigv9qmV5VcQRNz1kMlCvrCLYRsa93JnARuiaBI6FazSeG8mpA==
+"@swc/core-win32-arm64-msvc@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.10.1.tgz#4ea7b2a2fab47f801d31ea8b001a141efaa5e6bf"
+ integrity sha512-D3Qo1voA7AkbOzQ2UGuKNHfYGKL6eejN8VWOoQYtGHHQi1p5KK/Q7V1ku55oxXBsj79Ny5FRMqiRJpVGad7bjQ==
-"@swc/core-win32-ia32-msvc@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.7.39.tgz#464bd804d92d3e09cb72cc9764ea3a53e58e8405"
- integrity sha512-qFmvv5UExbJPXhhvCVDBnjK5Duqxr048dlVB6ZCgGzbRxuarOlawCzzLK4N172230pzlAWGLgn9CWl3+N6zfHA==
+"@swc/core-win32-ia32-msvc@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.10.1.tgz#729102669ccdb72e69884cce58e3686ac63d6f36"
+ integrity sha512-WalYdFoU3454Og+sDKHM1MrjvxUGwA2oralknXkXL8S0I/8RkWZOB++p3pLaGbTvOO++T+6znFbQdR8KRaa7DA==
-"@swc/core-win32-x64-msvc@1.7.39":
- version "1.7.39"
- resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.7.39.tgz#a30d68b49ffdd325d676d5d2d5ff8d5edc6ff761"
- integrity sha512-o+5IMqgOtj9+BEOp16atTfBgCogVak9svhBpwsbcJQp67bQbxGYhAPPDW/hZ2rpSSF7UdzbY9wudoX9G4trcuQ==
+"@swc/core-win32-x64-msvc@1.10.1":
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.10.1.tgz#7d665a7c69642861aed850ecb0cdf5d87197edda"
+ integrity sha512-JWobfQDbTnoqaIwPKQ3DVSywihVXlQMbDuwik/dDWlj33A8oEHcjPOGs4OqcA3RHv24i+lfCQpM3Mn4FAMfacA==
"@swc/core@^1.5.22":
- version "1.7.39"
- resolved "https://registry.npmjs.org/@swc/core/-/core-1.7.39.tgz"
- integrity sha512-jns6VFeOT49uoTKLWIEfiQqJAlyqldNAt80kAr8f7a5YjX0zgnG3RBiLMpksx4Ka4SlK4O6TJ/lumIM3Trp82g==
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.10.1.tgz#16b3b8284bafb0ecabb253925796883971e5a761"
+ integrity sha512-rQ4dS6GAdmtzKiCRt3LFVxl37FaY1cgL9kSUTnhQ2xc3fmHOd7jdJK/V4pSZMG1ruGTd0bsi34O2R0Olg9Zo/w==
dependencies:
"@swc/counter" "^0.1.3"
- "@swc/types" "^0.1.13"
+ "@swc/types" "^0.1.17"
optionalDependencies:
- "@swc/core-darwin-arm64" "1.7.39"
- "@swc/core-darwin-x64" "1.7.39"
- "@swc/core-linux-arm-gnueabihf" "1.7.39"
- "@swc/core-linux-arm64-gnu" "1.7.39"
- "@swc/core-linux-arm64-musl" "1.7.39"
- "@swc/core-linux-x64-gnu" "1.7.39"
- "@swc/core-linux-x64-musl" "1.7.39"
- "@swc/core-win32-arm64-msvc" "1.7.39"
- "@swc/core-win32-ia32-msvc" "1.7.39"
- "@swc/core-win32-x64-msvc" "1.7.39"
+ "@swc/core-darwin-arm64" "1.10.1"
+ "@swc/core-darwin-x64" "1.10.1"
+ "@swc/core-linux-arm-gnueabihf" "1.10.1"
+ "@swc/core-linux-arm64-gnu" "1.10.1"
+ "@swc/core-linux-arm64-musl" "1.10.1"
+ "@swc/core-linux-x64-gnu" "1.10.1"
+ "@swc/core-linux-x64-musl" "1.10.1"
+ "@swc/core-win32-arm64-msvc" "1.10.1"
+ "@swc/core-win32-ia32-msvc" "1.10.1"
+ "@swc/core-win32-x64-msvc" "1.10.1"
"@swc/counter@^0.1.3":
version "0.1.3"
- resolved "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9"
integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==
"@swc/helpers@0.5.5":
version "0.5.5"
- resolved "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz"
+ resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.5.tgz#12689df71bfc9b21c4f4ca00ae55f2f16c8b77c0"
integrity sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==
dependencies:
"@swc/counter" "^0.1.3"
tslib "^2.4.0"
"@swc/jest@^0.2.23":
- version "0.2.36"
- resolved "https://registry.npmjs.org/@swc/jest/-/jest-0.2.36.tgz"
- integrity sha512-8X80dp81ugxs4a11z1ka43FPhP+/e+mJNXJSxiNYk8gIX/jPBtY4gQTrKu/KIoco8bzKuPI5lUxjfLiGsfvnlw==
+ version "0.2.37"
+ resolved "https://registry.yarnpkg.com/@swc/jest/-/jest-0.2.37.tgz#9c2aaf22c87682aa968016e3e4843d1a25cae6bd"
+ integrity sha512-CR2BHhmXKGxTiFr21DYPRHQunLkX3mNIFGFkxBGji6r9uyIR5zftTOVYj1e0sFNMV2H7mf/+vpaglqaryBtqfQ==
dependencies:
"@jest/create-cache-key-function" "^29.7.0"
"@swc/counter" "^0.1.3"
jsonc-parser "^3.2.0"
-"@swc/types@^0.1.13":
- version "0.1.13"
- resolved "https://registry.npmjs.org/@swc/types/-/types-0.1.13.tgz"
- integrity sha512-JL7eeCk6zWCbiYQg2xQSdLXQJl8Qoc9rXmG2cEKvHe3CKwMHwHGpfOb8frzNLmbycOo6I51qxnLnn9ESf4I20Q==
+"@swc/types@^0.1.17":
+ version "0.1.17"
+ resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.17.tgz#bd1d94e73497f27341bf141abdf4c85230d41e7c"
+ integrity sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==
dependencies:
"@swc/counter" "^0.1.3"
"@tanstack/react-table@^8.20.5":
version "8.20.5"
- resolved "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz"
+ resolved "https://registry.yarnpkg.com/@tanstack/react-table/-/react-table-8.20.5.tgz#19987d101e1ea25ef5406dce4352cab3932449d8"
integrity sha512-WEHopKw3znbUZ61s9i0+i9g8drmDo6asTWbrQh8Us63DAk/M0FkmIqERew6P71HI75ksZ2Pxyuf4vvKh9rAkiA==
dependencies:
"@tanstack/table-core" "8.20.5"
"@tanstack/table-core@8.20.5":
version "8.20.5"
- resolved "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz"
+ resolved "https://registry.yarnpkg.com/@tanstack/table-core/-/table-core-8.20.5.tgz#3974f0b090bed11243d4107283824167a395cf1d"
integrity sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==
"@testing-library/dom@10.4.0":
version "10.4.0"
- resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.0.tgz#82a9d9462f11d240ecadbf406607c6ceeeff43a8"
integrity sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==
dependencies:
"@babel/code-frame" "^7.10.4"
@@ -3471,7 +3461,7 @@
"@testing-library/jest-dom@6.5.0":
version "6.5.0"
- resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz#50484da3f80fb222a853479f618a9ce5c47bfe54"
integrity sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==
dependencies:
"@adobe/css-tools" "^4.4.0"
@@ -3484,17 +3474,17 @@
"@testing-library/user-event@14.5.2":
version "14.5.2"
- resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.5.2.tgz#db7257d727c891905947bd1c1a99da20e03c2ebd"
integrity sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==
"@types/aria-query@^5.0.1":
version "5.0.4"
- resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708"
integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==
"@types/babel__core@^7.1.14", "@types/babel__core@^7.18.0":
version "7.20.5"
- resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz"
+ resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017"
integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==
dependencies:
"@babel/parser" "^7.20.7"
@@ -3505,14 +3495,14 @@
"@types/babel__generator@*":
version "7.6.8"
- resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz"
+ resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab"
integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.4.4"
- resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f"
integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==
dependencies:
"@babel/parser" "^7.1.0"
@@ -3520,96 +3510,96 @@
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6", "@types/babel__traverse@^7.18.0":
version "7.20.6"
- resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz"
+ resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz#8dc9f0ae0f202c08d8d4dab648912c8d6038e3f7"
integrity sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==
dependencies:
"@babel/types" "^7.20.7"
"@types/connect@3.4.36":
version "3.4.36"
- resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz"
+ resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.36.tgz#e511558c15a39cb29bd5357eebb57bd1459cd1ab"
integrity sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==
dependencies:
"@types/node" "*"
"@types/cookie@^0.6.0":
version "0.6.0"
- resolved "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.6.0.tgz#eac397f28bf1d6ae0ae081363eca2f425bedf0d5"
integrity sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==
"@types/d3-array@^3.0.3":
version "3.2.1"
- resolved "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.1.tgz#1f6658e3d2006c4fceac53fde464166859f8b8c5"
integrity sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==
"@types/d3-color@*":
version "3.1.3"
- resolved "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2"
integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==
"@types/d3-drag@^3.0.7":
version "3.0.7"
- resolved "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-drag/-/d3-drag-3.0.7.tgz#b13aba8b2442b4068c9a9e6d1d82f8bcea77fc02"
integrity sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ==
dependencies:
"@types/d3-selection" "*"
"@types/d3-ease@^3.0.0":
version "3.0.2"
- resolved "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b"
integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==
"@types/d3-interpolate@*", "@types/d3-interpolate@^3.0.1":
version "3.0.4"
- resolved "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c"
integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==
dependencies:
"@types/d3-color" "*"
"@types/d3-path@*":
version "3.1.0"
- resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-3.1.0.tgz#2b907adce762a78e98828f0b438eaca339ae410a"
integrity sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ==
"@types/d3-scale@^4.0.2":
version "4.0.8"
- resolved "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb"
integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==
dependencies:
"@types/d3-time" "*"
"@types/d3-selection@*", "@types/d3-selection@^3.0.10":
version "3.0.11"
- resolved "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.11.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-selection/-/d3-selection-3.0.11.tgz#bd7a45fc0a8c3167a631675e61bc2ca2b058d4a3"
integrity sha512-bhAXu23DJWsrI45xafYpkQ4NtcKMwWnAC/vKrd2l+nxMFuvOT3XMYTIj2opv8vq8AO5Yh7Qac/nSeP/3zjTK0w==
"@types/d3-shape@^3.1.0":
version "3.1.6"
- resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.6.tgz#65d40d5a548f0a023821773e39012805e6e31a72"
integrity sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA==
dependencies:
"@types/d3-path" "*"
"@types/d3-time@*", "@types/d3-time@^3.0.0":
- version "3.0.3"
- resolved "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz"
- integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.4.tgz#8472feecd639691450dd8000eb33edd444e1323f"
+ integrity sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==
"@types/d3-timer@^3.0.0":
version "3.0.2"
- resolved "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70"
integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==
"@types/d3-transition@^3.0.8":
version "3.0.9"
- resolved "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.9.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-transition/-/d3-transition-3.0.9.tgz#1136bc57e9ddb3c390dccc9b5ff3b7d2b8d94706"
integrity sha512-uZS5shfxzO3rGlu0cC3bjmMFKsXv+SmZZcgp0KD22ts4uGXp5EVYGzu/0YdwZeKmddhcAccYtREJKkPfXkZuCg==
dependencies:
"@types/d3-selection" "*"
"@types/d3-zoom@^3.0.8":
version "3.0.8"
- resolved "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/@types/d3-zoom/-/d3-zoom-3.0.8.tgz#dccb32d1c56b1e1c6e0f1180d994896f038bc40b"
integrity sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw==
dependencies:
"@types/d3-interpolate" "*"
@@ -3617,132 +3607,157 @@
"@types/debug@^4.0.0":
version "4.1.12"
- resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz"
+ resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917"
integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==
dependencies:
"@types/ms" "*"
"@types/doctrine@^0.0.9":
version "0.0.9"
- resolved "https://registry.npmjs.org/@types/doctrine/-/doctrine-0.0.9.tgz"
+ resolved "https://registry.yarnpkg.com/@types/doctrine/-/doctrine-0.0.9.tgz#d86a5f452a15e3e3113b99e39616a9baa0f9863f"
integrity sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==
-"@types/escodegen@^0.0.6":
- version "0.0.6"
- resolved "https://registry.npmjs.org/@types/escodegen/-/escodegen-0.0.6.tgz"
- integrity sha512-AjwI4MvWx3HAOaZqYsjKWyEObT9lcVV0Y0V8nXo6cXzN8ZiMxVhf6F3d/UNvXVGKrEzL/Dluc5p+y9GkzlTWig==
+"@types/eslint-scope@^3.7.7":
+ version "3.7.7"
+ resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5"
+ integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==
+ dependencies:
+ "@types/eslint" "*"
+ "@types/estree" "*"
+
+"@types/eslint@*":
+ version "9.6.1"
+ resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584"
+ integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==
+ dependencies:
+ "@types/estree" "*"
+ "@types/json-schema" "*"
"@types/estree-jsx@^1.0.0":
version "1.0.5"
- resolved "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18"
integrity sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==
dependencies:
"@types/estree" "*"
-"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.5":
- version "1.0.5"
- resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz"
- integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==
-
-"@types/estree@^0.0.51":
- version "0.0.51"
- resolved "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz"
- integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==
+"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.6":
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50"
+ integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==
"@types/graceful-fs@^4.1.3":
version "4.1.9"
- resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz"
+ resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4"
integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==
dependencies:
"@types/node" "*"
"@types/hast@^3.0.0":
version "3.0.4"
- resolved "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa"
integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==
dependencies:
"@types/unist" "*"
"@types/html-minifier-terser@^6.0.0":
version "6.1.0"
- resolved "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35"
integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
version "2.0.6"
- resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7"
integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==
"@types/istanbul-lib-report@*":
version "3.0.3"
- resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf"
integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==
dependencies:
"@types/istanbul-lib-coverage" "*"
"@types/istanbul-reports@^3.0.0":
version "3.0.4"
- resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54"
integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==
dependencies:
"@types/istanbul-lib-report" "*"
-"@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
+"@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
version "7.0.15"
- resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz"
+ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
"@types/json5@^0.0.29":
version "0.0.29"
- resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz"
+ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==
+"@types/junit-report-builder@^3.0.2":
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/@types/junit-report-builder/-/junit-report-builder-3.0.2.tgz#17cc131d14ceff59dcf14e5847bd971b96f2cbe0"
+ integrity sha512-R5M+SYhMbwBeQcNXYWNCZkl09vkVfAtcPIaCGdzIkkbeaTrVbGQ7HVgi4s+EmM/M1K4ZuWQH0jGcvMvNePfxYA==
+
"@types/mdast@^4.0.0":
version "4.0.4"
- resolved "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6"
integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==
dependencies:
"@types/unist" "*"
"@types/mdx@^2.0.0":
version "2.0.13"
- resolved "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz"
+ resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.13.tgz#68f6877043d377092890ff5b298152b0a21671bd"
integrity sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==
"@types/ms@*":
version "0.7.34"
- resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz"
+ resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433"
integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==
"@types/mysql@2.15.26":
version "2.15.26"
- resolved "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.26.tgz"
+ resolved "https://registry.yarnpkg.com/@types/mysql/-/mysql-2.15.26.tgz#f0de1484b9e2354d587e7d2bd17a873cc8300836"
integrity sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ==
dependencies:
"@types/node" "*"
-"@types/node@*", "@types/node@^22.0.0", "@types/node@^22.9.3":
- version "22.10.0"
- resolved "https://registry.npmjs.org/@types/node/-/node-22.10.0.tgz"
- integrity sha512-XC70cRZVElFHfIUB40FgZOBbgJYFKKMa5nb9lxcwYstFG/Mi+/Y0bGS+rs6Dmhmkpq4pnNiLiuZAbc02YCOnmA==
+"@types/negotiator@^0.6.3":
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/@types/negotiator/-/negotiator-0.6.3.tgz#29e8fce64e35f57f6fe9c624f8e4ed304357745a"
+ integrity sha512-JkXTOdKs5MF086b/pt8C3+yVp3iDUwG635L7oCH6HvJvvr6lSUU5oe/gLXnPEfYRROHjJIPgCV6cuAg8gGkntQ==
+
+"@types/node@*", "@types/node@^22.0.0", "@types/node@^22.9.0":
+ version "22.10.2"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.2.tgz#a485426e6d1fdafc7b0d4c7b24e2c78182ddabb9"
+ integrity sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==
dependencies:
undici-types "~6.20.0"
"@types/parse-json@^4.0.0":
version "4.0.2"
- resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239"
integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==
"@types/pg-pool@2.0.6":
version "2.0.6"
- resolved "https://registry.npmjs.org/@types/pg-pool/-/pg-pool-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/@types/pg-pool/-/pg-pool-2.0.6.tgz#1376d9dc5aec4bb2ec67ce28d7e9858227403c77"
integrity sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==
dependencies:
"@types/pg" "*"
-"@types/pg@*", "@types/pg@8.6.1":
+"@types/pg@*":
+ version "8.11.10"
+ resolved "https://registry.yarnpkg.com/@types/pg/-/pg-8.11.10.tgz#b8fb2b2b759d452fe3ec182beadd382563b63291"
+ integrity sha512-LczQUW4dbOQzsH2RQ5qoeJ6qJPdrcM/DcMLoqWQkMLMsq83J5lAX3LXjdkWdpscFy67JSOWDnh7Ny/sPFykmkg==
+ dependencies:
+ "@types/node" "*"
+ pg-protocol "*"
+ pg-types "^4.0.1"
+
+"@types/pg@8.6.1":
version "8.6.1"
- resolved "https://registry.npmjs.org/@types/pg/-/pg-8.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/@types/pg/-/pg-8.6.1.tgz#099450b8dc977e8197a44f5229cedef95c8747f9"
integrity sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==
dependencies:
"@types/node" "*"
@@ -3750,161 +3765,176 @@
pg-types "^2.2.0"
"@types/phoenix@^1.5.4":
- version "1.6.5"
- resolved "https://registry.npmjs.org/@types/phoenix/-/phoenix-1.6.5.tgz"
- integrity sha512-xegpDuR+z0UqG9fwHqNoy3rI7JDlvaPh2TY47Fl80oq6g+hXT+c/LEuE43X48clZ6lOfANl5WrPur9fYO1RJ/w==
+ version "1.6.6"
+ resolved "https://registry.yarnpkg.com/@types/phoenix/-/phoenix-1.6.6.tgz#3c1ab53fd5a23634b8e37ea72ccacbf07fbc7816"
+ integrity sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==
"@types/prop-types@*":
- version "15.7.12"
- resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz"
- integrity sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==
+ version "15.7.14"
+ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.14.tgz#1433419d73b2a7ebfc6918dcefd2ec0d5cd698f2"
+ integrity sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==
"@types/react-dom@^18":
- version "18.3.0"
- resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz"
- integrity sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==
- dependencies:
- "@types/react" "*"
+ version "18.3.5"
+ resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.5.tgz#45f9f87398c5dcea085b715c58ddcf1faf65f716"
+ integrity sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==
"@types/react-modal@^3.16.3":
version "3.16.3"
- resolved "https://registry.npmjs.org/@types/react-modal/-/react-modal-3.16.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/react-modal/-/react-modal-3.16.3.tgz#250f32c07f1de28e2bcf9c3e84b56adaa6897013"
integrity sha512-xXuGavyEGaFQDgBv4UVm8/ZsG+qxeQ7f77yNrW3n+1J6XAstUy5rYHeIHPh1KzsGc6IkCIdu6lQ2xWzu1jBTLg==
dependencies:
"@types/react" "*"
-"@types/react@*", "@types/react@^18":
- version "18.3.4"
- resolved "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz"
- integrity sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==
+"@types/react@*":
+ version "19.0.1"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-19.0.1.tgz#a000d5b78f473732a08cecbead0f3751e550b3df"
+ integrity sha512-YW6614BDhqbpR5KtUYzTA+zlA7nayzJRA9ljz9CQoxthR0sDisYZLuvSMsil36t4EH/uAt8T52Xb4sVw17G+SQ==
+ dependencies:
+ csstype "^3.0.2"
+
+"@types/react@^18":
+ version "18.3.16"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.16.tgz#5326789125fac98b718d586ad157442ceb44ff28"
+ integrity sha512-oh8AMIC4Y2ciKufU8hnKgs+ufgbA/dhPTACaZPM86AbwX9QwnFtSoPWEeRUj8fge+v6kFt78BXcDhAU1SrrAsw==
dependencies:
"@types/prop-types" "*"
csstype "^3.0.2"
"@types/resolve@^1.20.2":
version "1.20.6"
- resolved "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.6.tgz"
+ resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.20.6.tgz#e6e60dad29c2c8c206c026e6dd8d6d1bdda850b8"
integrity sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==
"@types/semver@^7.3.4":
version "7.5.8"
- resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz"
+ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e"
integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==
"@types/shimmer@^1.0.2", "@types/shimmer@^1.2.0":
version "1.2.0"
- resolved "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@types/shimmer/-/shimmer-1.2.0.tgz#9b706af96fa06416828842397a70dfbbf1c14ded"
integrity sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==
"@types/stack-utils@^2.0.0":
version "2.0.3"
- resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8"
integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==
+"@types/statuses@^2.0.4":
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/@types/statuses/-/statuses-2.0.5.tgz#f61ab46d5352fd73c863a1ea4e1cef3b0b51ae63"
+ integrity sha512-jmIUGWrAiwu3dZpxntxieC+1n/5c3mjrImkmOSQ2NC5uP6cYO4aAZDdSmRcI5C1oiTmqlZGHC+/NmJrKogbP5A==
+
"@types/tedious@^4.0.14":
version "4.0.14"
- resolved "https://registry.npmjs.org/@types/tedious/-/tedious-4.0.14.tgz"
+ resolved "https://registry.yarnpkg.com/@types/tedious/-/tedious-4.0.14.tgz#868118e7a67808258c05158e9cad89ca58a2aec1"
integrity sha512-KHPsfX/FoVbUGbyYvk1q9MMQHLPeRZhRJZdO45Q4YjvFkv4hMNghCWTvy7rdKessBsmtz4euWCWAB6/tVpI1Iw==
dependencies:
"@types/node" "*"
+"@types/tough-cookie@^4.0.5":
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304"
+ integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==
+
"@types/unist@*", "@types/unist@^3.0.0":
version "3.0.3"
- resolved "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c"
integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==
"@types/unist@^2.0.0":
version "2.0.11"
- resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz"
+ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4"
integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==
"@types/uuid@^9.0.1":
version "9.0.8"
- resolved "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba"
integrity sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==
"@types/wait-on@^5.2.0":
version "5.3.4"
- resolved "https://registry.npmjs.org/@types/wait-on/-/wait-on-5.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/@types/wait-on/-/wait-on-5.3.4.tgz#5ee270b3e073fb01073f9f044922c6893de8c4d2"
integrity sha512-EBsPjFMrFlMbbUFf9D1Fp+PAB2TwmUn7a3YtHyD9RLuTIk1jDd8SxXVAoez2Ciy+8Jsceo2MYEYZzJ/DvorOKw==
dependencies:
"@types/node" "*"
"@types/ws@^8.5.10":
version "8.5.13"
- resolved "https://registry.npmjs.org/@types/ws/-/ws-8.5.13.tgz"
+ resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.13.tgz#6414c280875e2691d0d1e080b05addbf5cb91e20"
integrity sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==
dependencies:
"@types/node" "*"
"@types/yargs-parser@*":
version "21.0.3"
- resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15"
integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==
"@types/yargs@^17.0.8":
version "17.0.33"
- resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d"
integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==
dependencies:
"@types/yargs-parser" "*"
"@typescript-eslint/eslint-plugin@^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.13.0.tgz"
- integrity sha512-nQtBLiZYMUPkclSeC3id+x4uVd1SGtHuElTxL++SfP47jR0zfkZBJHc+gL4qPsgTuypz0k8Y2GheaDYn6Gy3rg==
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.0.tgz#0901933326aea4443b81df3f740ca7dfc45c7bea"
+ integrity sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==
dependencies:
"@eslint-community/regexpp" "^4.10.0"
- "@typescript-eslint/scope-manager" "8.13.0"
- "@typescript-eslint/type-utils" "8.13.0"
- "@typescript-eslint/utils" "8.13.0"
- "@typescript-eslint/visitor-keys" "8.13.0"
+ "@typescript-eslint/scope-manager" "8.18.0"
+ "@typescript-eslint/type-utils" "8.18.0"
+ "@typescript-eslint/utils" "8.18.0"
+ "@typescript-eslint/visitor-keys" "8.18.0"
graphemer "^1.4.0"
ignore "^5.3.1"
natural-compare "^1.4.0"
ts-api-utils "^1.3.0"
"@typescript-eslint/parser@^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.13.0.tgz"
- integrity sha512-w0xp+xGg8u/nONcGw1UXAr6cjCPU1w0XVyBs6Zqaj5eLmxkKQAByTdV/uGgNN5tVvN/kKpoQlP2cL7R+ajZZIQ==
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.18.0.tgz#a1c9456cbb6a089730bf1d3fc47946c5fb5fe67b"
+ integrity sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==
dependencies:
- "@typescript-eslint/scope-manager" "8.13.0"
- "@typescript-eslint/types" "8.13.0"
- "@typescript-eslint/typescript-estree" "8.13.0"
- "@typescript-eslint/visitor-keys" "8.13.0"
+ "@typescript-eslint/scope-manager" "8.18.0"
+ "@typescript-eslint/types" "8.18.0"
+ "@typescript-eslint/typescript-estree" "8.18.0"
+ "@typescript-eslint/visitor-keys" "8.18.0"
debug "^4.3.4"
-"@typescript-eslint/scope-manager@8.13.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.13.0.tgz"
- integrity sha512-XsGWww0odcUT0gJoBZ1DeulY1+jkaHUciUq4jKNv4cpInbvvrtDoyBH9rE/n2V29wQJPk8iCH1wipra9BhmiMA==
+"@typescript-eslint/scope-manager@8.18.0":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.18.0.tgz#30b040cb4557804a7e2bcc65cf8fdb630c96546f"
+ integrity sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==
dependencies:
- "@typescript-eslint/types" "8.13.0"
- "@typescript-eslint/visitor-keys" "8.13.0"
+ "@typescript-eslint/types" "8.18.0"
+ "@typescript-eslint/visitor-keys" "8.18.0"
-"@typescript-eslint/type-utils@8.13.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.13.0.tgz"
- integrity sha512-Rqnn6xXTR316fP4D2pohZenJnp+NwQ1mo7/JM+J1LWZENSLkJI8ID8QNtlvFeb0HnFSK94D6q0cnMX6SbE5/vA==
+"@typescript-eslint/type-utils@8.18.0":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.18.0.tgz#6f0d12cf923b6fd95ae4d877708c0adaad93c471"
+ integrity sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==
dependencies:
- "@typescript-eslint/typescript-estree" "8.13.0"
- "@typescript-eslint/utils" "8.13.0"
+ "@typescript-eslint/typescript-estree" "8.18.0"
+ "@typescript-eslint/utils" "8.18.0"
debug "^4.3.4"
ts-api-utils "^1.3.0"
-"@typescript-eslint/types@8.13.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.13.0.tgz"
- integrity sha512-4cyFErJetFLckcThRUFdReWJjVsPCqyBlJTi6IDEpc1GWCIIZRFxVppjWLIMcQhNGhdWJJRYFHpHoDWvMlDzng==
+"@typescript-eslint/types@8.18.0":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.18.0.tgz#3afcd30def8756bc78541268ea819a043221d5f3"
+ integrity sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==
-"@typescript-eslint/typescript-estree@8.13.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.13.0.tgz"
- integrity sha512-v7SCIGmVsRK2Cy/LTLGN22uea6SaUIlpBcO/gnMGT/7zPtxp90bphcGf4fyrCQl3ZtiBKqVTG32hb668oIYy1g==
+"@typescript-eslint/typescript-estree@8.18.0":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.0.tgz#d8ca785799fbb9c700cdff1a79c046c3e633c7f9"
+ integrity sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==
dependencies:
- "@typescript-eslint/types" "8.13.0"
- "@typescript-eslint/visitor-keys" "8.13.0"
+ "@typescript-eslint/types" "8.18.0"
+ "@typescript-eslint/visitor-keys" "8.18.0"
debug "^4.3.4"
fast-glob "^3.3.2"
is-glob "^4.0.3"
@@ -3912,32 +3942,32 @@
semver "^7.6.0"
ts-api-utils "^1.3.0"
-"@typescript-eslint/utils@8.13.0", "@typescript-eslint/utils@^8.8.1":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.13.0.tgz"
- integrity sha512-A1EeYOND6Uv250nybnLZapeXpYMl8tkzYUxqmoKAWnI4sei3ihf2XdZVd+vVOmHGcp3t+P7yRrNsyyiXTvShFQ==
+"@typescript-eslint/utils@8.18.0", "@typescript-eslint/utils@^8.8.1":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.18.0.tgz#48f67205d42b65d895797bb7349d1be5c39a62f7"
+ integrity sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==
dependencies:
"@eslint-community/eslint-utils" "^4.4.0"
- "@typescript-eslint/scope-manager" "8.13.0"
- "@typescript-eslint/types" "8.13.0"
- "@typescript-eslint/typescript-estree" "8.13.0"
+ "@typescript-eslint/scope-manager" "8.18.0"
+ "@typescript-eslint/types" "8.18.0"
+ "@typescript-eslint/typescript-estree" "8.18.0"
-"@typescript-eslint/visitor-keys@8.13.0":
- version "8.13.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.13.0.tgz"
- integrity sha512-7N/+lztJqH4Mrf0lb10R/CbI1EaAMMGyF5y0oJvFoAhafwgiRA7TXyd8TFn8FC8k5y2dTsYogg238qavRGNnlw==
+"@typescript-eslint/visitor-keys@8.18.0":
+ version "8.18.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.0.tgz#7b6d33534fa808e33a19951907231ad2ea5c36dd"
+ integrity sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==
dependencies:
- "@typescript-eslint/types" "8.13.0"
- eslint-visitor-keys "^3.4.3"
+ "@typescript-eslint/types" "8.18.0"
+ eslint-visitor-keys "^4.2.0"
"@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0":
- version "1.2.0"
- resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz"
- integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.1.tgz#28fa185f67daaf7b7a1a8c1d445132c5d979f8bd"
+ integrity sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==
"@vitest/expect@2.0.5":
version "2.0.5"
- resolved "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-2.0.5.tgz#f3745a6a2c18acbea4d39f5935e913f40d26fa86"
integrity sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==
dependencies:
"@vitest/spy" "2.0.5"
@@ -3947,28 +3977,28 @@
"@vitest/pretty-format@2.0.5":
version "2.0.5"
- resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.0.5.tgz#91d2e6d3a7235c742e1a6cc50e7786e2f2979b1e"
integrity sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==
dependencies:
tinyrainbow "^1.2.0"
-"@vitest/pretty-format@2.1.3":
- version "2.1.3"
- resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.3.tgz"
- integrity sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==
+"@vitest/pretty-format@2.1.8":
+ version "2.1.8"
+ resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.1.8.tgz#88f47726e5d0cf4ba873d50c135b02e4395e2bca"
+ integrity sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==
dependencies:
tinyrainbow "^1.2.0"
"@vitest/spy@2.0.5":
version "2.0.5"
- resolved "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-2.0.5.tgz#590fc07df84a78b8e9dd976ec2090920084a2b9f"
integrity sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==
dependencies:
tinyspy "^3.0.0"
"@vitest/utils@2.0.5":
version "2.0.5"
- resolved "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.0.5.tgz#6f8307a4b6bc6ceb9270007f73c67c915944e926"
integrity sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==
dependencies:
"@vitest/pretty-format" "2.0.5"
@@ -3976,144 +4006,144 @@
loupe "^3.1.1"
tinyrainbow "^1.2.0"
-"@vitest/utils@^2.0.5", "@vitest/utils@^2.1.1":
- version "2.1.3"
- resolved "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.3.tgz"
- integrity sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==
+"@vitest/utils@^2.1.1":
+ version "2.1.8"
+ resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.8.tgz#f8ef85525f3362ebd37fd25d268745108d6ae388"
+ integrity sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==
dependencies:
- "@vitest/pretty-format" "2.1.3"
- loupe "^3.1.1"
+ "@vitest/pretty-format" "2.1.8"
+ loupe "^3.1.2"
tinyrainbow "^1.2.0"
-"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz"
- integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==
+"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6"
+ integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==
dependencies:
- "@webassemblyjs/helper-numbers" "1.11.6"
- "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
+ "@webassemblyjs/helper-numbers" "1.13.2"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
-"@webassemblyjs/floating-point-hex-parser@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz"
- integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==
+"@webassemblyjs/floating-point-hex-parser@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz#fcca1eeddb1cc4e7b6eed4fc7956d6813b21b9fb"
+ integrity sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==
-"@webassemblyjs/helper-api-error@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz"
- integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==
+"@webassemblyjs/helper-api-error@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz#e0a16152248bc38daee76dd7e21f15c5ef3ab1e7"
+ integrity sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==
-"@webassemblyjs/helper-buffer@1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz"
- integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==
+"@webassemblyjs/helper-buffer@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz#822a9bc603166531f7d5df84e67b5bf99b72b96b"
+ integrity sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==
-"@webassemblyjs/helper-numbers@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz"
- integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==
+"@webassemblyjs/helper-numbers@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz#dbd932548e7119f4b8a7877fd5a8d20e63490b2d"
+ integrity sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==
dependencies:
- "@webassemblyjs/floating-point-hex-parser" "1.11.6"
- "@webassemblyjs/helper-api-error" "1.11.6"
+ "@webassemblyjs/floating-point-hex-parser" "1.13.2"
+ "@webassemblyjs/helper-api-error" "1.13.2"
"@xtuc/long" "4.2.2"
-"@webassemblyjs/helper-wasm-bytecode@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz"
- integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==
+"@webassemblyjs/helper-wasm-bytecode@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz#e556108758f448aae84c850e593ce18a0eb31e0b"
+ integrity sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==
-"@webassemblyjs/helper-wasm-section@1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz"
- integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==
+"@webassemblyjs/helper-wasm-section@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz#9629dda9c4430eab54b591053d6dc6f3ba050348"
+ integrity sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
- "@webassemblyjs/helper-buffer" "1.12.1"
- "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
- "@webassemblyjs/wasm-gen" "1.12.1"
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/wasm-gen" "1.14.1"
-"@webassemblyjs/ieee754@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz"
- integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==
+"@webassemblyjs/ieee754@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz#1c5eaace1d606ada2c7fd7045ea9356c59ee0dba"
+ integrity sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==
dependencies:
"@xtuc/ieee754" "^1.2.0"
-"@webassemblyjs/leb128@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz"
- integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==
+"@webassemblyjs/leb128@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz#57c5c3deb0105d02ce25fa3fd74f4ebc9fd0bbb0"
+ integrity sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==
dependencies:
"@xtuc/long" "4.2.2"
-"@webassemblyjs/utf8@1.11.6":
- version "1.11.6"
- resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz"
- integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==
+"@webassemblyjs/utf8@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1"
+ integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==
-"@webassemblyjs/wasm-edit@^1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz"
- integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==
+"@webassemblyjs/wasm-edit@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597"
+ integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
- "@webassemblyjs/helper-buffer" "1.12.1"
- "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
- "@webassemblyjs/helper-wasm-section" "1.12.1"
- "@webassemblyjs/wasm-gen" "1.12.1"
- "@webassemblyjs/wasm-opt" "1.12.1"
- "@webassemblyjs/wasm-parser" "1.12.1"
- "@webassemblyjs/wast-printer" "1.12.1"
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/helper-wasm-section" "1.14.1"
+ "@webassemblyjs/wasm-gen" "1.14.1"
+ "@webassemblyjs/wasm-opt" "1.14.1"
+ "@webassemblyjs/wasm-parser" "1.14.1"
+ "@webassemblyjs/wast-printer" "1.14.1"
-"@webassemblyjs/wasm-gen@1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz"
- integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==
+"@webassemblyjs/wasm-gen@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz#991e7f0c090cb0bb62bbac882076e3d219da9570"
+ integrity sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
- "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
- "@webassemblyjs/ieee754" "1.11.6"
- "@webassemblyjs/leb128" "1.11.6"
- "@webassemblyjs/utf8" "1.11.6"
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/ieee754" "1.13.2"
+ "@webassemblyjs/leb128" "1.13.2"
+ "@webassemblyjs/utf8" "1.13.2"
-"@webassemblyjs/wasm-opt@1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz"
- integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==
+"@webassemblyjs/wasm-opt@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz#e6f71ed7ccae46781c206017d3c14c50efa8106b"
+ integrity sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
- "@webassemblyjs/helper-buffer" "1.12.1"
- "@webassemblyjs/wasm-gen" "1.12.1"
- "@webassemblyjs/wasm-parser" "1.12.1"
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/wasm-gen" "1.14.1"
+ "@webassemblyjs/wasm-parser" "1.14.1"
-"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz"
- integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==
+"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb"
+ integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
- "@webassemblyjs/helper-api-error" "1.11.6"
- "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
- "@webassemblyjs/ieee754" "1.11.6"
- "@webassemblyjs/leb128" "1.11.6"
- "@webassemblyjs/utf8" "1.11.6"
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-api-error" "1.13.2"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/ieee754" "1.13.2"
+ "@webassemblyjs/leb128" "1.13.2"
+ "@webassemblyjs/utf8" "1.13.2"
-"@webassemblyjs/wast-printer@1.12.1":
- version "1.12.1"
- resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz"
- integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==
+"@webassemblyjs/wast-printer@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz#3bb3e9638a8ae5fdaf9610e7a06b4d9f9aa6fe07"
+ integrity sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==
dependencies:
- "@webassemblyjs/ast" "1.12.1"
+ "@webassemblyjs/ast" "1.14.1"
"@xtuc/long" "4.2.2"
"@xtuc/ieee754@^1.2.0":
version "1.2.0"
- resolved "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
"@xtuc/long@4.2.2":
version "4.2.2"
- resolved "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
"@xyflow/react@^12.3.6":
@@ -4140,39 +4170,29 @@
abort-controller@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==
dependencies:
event-target-shim "^5.0.0"
acorn-import-attributes@^1.9.5:
version "1.9.5"
- resolved "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz"
+ resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef"
integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==
-acorn-jsx@^5.3.1, acorn-jsx@^5.3.2:
+acorn-jsx@^5.3.2:
version "5.3.2"
- resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-acorn-walk@^7.2.0:
- version "7.2.0"
- resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz"
- integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
-
-acorn@^7.4.1:
- version "7.4.1"
- resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
- integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
-
-acorn@^8.14.0, acorn@^8.7.1, acorn@^8.8.1, acorn@^8.8.2, acorn@^8.9.0:
+acorn@^8.14.0, acorn@^8.8.1, acorn@^8.8.2, acorn@^8.9.0:
version "8.14.0"
- resolved "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0"
integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==
adjust-sourcemap-loader@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz#fc4a0fd080f7d10471f30a7320f25560ade28c99"
integrity sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==
dependencies:
loader-utils "^2.0.0"
@@ -4180,14 +4200,14 @@ adjust-sourcemap-loader@^4.0.0:
agent-base@6:
version "6.0.2"
- resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77"
integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==
dependencies:
debug "4"
aggregate-error@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==
dependencies:
clean-stack "^2.0.0"
@@ -4195,26 +4215,26 @@ aggregate-error@^3.0.0:
ajv-formats@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520"
integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==
dependencies:
ajv "^8.0.0"
ajv-keywords@^3.5.2:
version "3.5.2"
- resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
ajv-keywords@^5.1.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16"
integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==
dependencies:
fast-deep-equal "^3.1.3"
ajv@^6.12.4, ajv@^6.12.5:
version "6.12.6"
- resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
dependencies:
fast-deep-equal "^3.1.1"
@@ -4224,7 +4244,7 @@ ajv@^6.12.4, ajv@^6.12.5:
ajv@^8.0.0, ajv@^8.17.1, ajv@^8.9.0:
version "8.17.1"
- resolved "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6"
integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==
dependencies:
fast-deep-equal "^3.1.3"
@@ -4232,70 +4252,70 @@ ajv@^8.0.0, ajv@^8.17.1, ajv@^8.9.0:
json-schema-traverse "^1.0.0"
require-from-string "^2.0.2"
-ansi-escapes@^4.2.1:
+ansi-escapes@^4.2.1, ansi-escapes@^4.3.2:
version "4.3.2"
- resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
dependencies:
type-fest "^0.21.3"
ansi-escapes@^6.0.0:
version "6.2.1"
- resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.1.tgz#76c54ce9b081dad39acec4b5d53377913825fb0f"
integrity sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==
ansi-html-community@0.0.8:
version "0.0.8"
- resolved "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41"
integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==
ansi-html@^0.0.9:
version "0.0.9"
- resolved "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.9.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.9.tgz#6512d02342ae2cc68131952644a129cb734cd3f0"
integrity sha512-ozbS3LuenHVxNRh/wdnN16QapUHzauqSomAl1jwwJRRsGwFwtj644lIhxfWu0Fy0acCij2+AEgHvjscq3dlVXg==
ansi-regex@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
ansi-regex@^6.0.1:
version "6.1.0"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.1.0.tgz#95ec409c69619d6cb1b8b34f14b660ef28ebd654"
integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==
ansi-styles@^3.2.1:
version "3.2.1"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
dependencies:
color-convert "^1.9.0"
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
color-convert "^2.0.1"
ansi-styles@^5.0.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
ansi-styles@^6.1.0:
version "6.2.1"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
any-promise@^1.0.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==
anymatch@^3.0.3, anymatch@~3.1.2:
version "3.1.3"
- resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
dependencies:
normalize-path "^3.0.0"
@@ -4303,55 +4323,55 @@ anymatch@^3.0.3, anymatch@~3.1.2:
append-transform@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-2.0.0.tgz#99d9d29c7b38391e6f428d28ce136551f0b77e12"
integrity sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==
dependencies:
default-require-extensions "^3.0.0"
archy@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40"
integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==
arg@^5.0.2:
version "5.0.2"
- resolved "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c"
integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==
argparse@^1.0.7:
version "1.0.10"
- resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
dependencies:
sprintf-js "~1.0.2"
argparse@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
aria-hidden@^1.1.1:
version "1.2.4"
- resolved "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.4.tgz#b78e383fdbc04d05762c78b4a25a501e736c4522"
integrity sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==
dependencies:
tslib "^2.0.0"
aria-query@5.3.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e"
integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==
dependencies:
dequal "^2.0.3"
aria-query@^5.0.0, aria-query@^5.3.2:
version "5.3.2"
- resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.2.tgz#93f81a43480e33a338f19163a3d10a50c01dcd59"
integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==
array-buffer-byte-length@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f"
integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==
dependencies:
call-bind "^1.0.5"
@@ -4359,7 +4379,7 @@ array-buffer-byte-length@^1.0.1:
array-includes@^3.1.6, array-includes@^3.1.8:
version "3.1.8"
- resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz"
+ resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d"
integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==
dependencies:
call-bind "^1.0.7"
@@ -4371,7 +4391,7 @@ array-includes@^3.1.6, array-includes@^3.1.8:
array.prototype.findlast@^1.2.5:
version "1.2.5"
- resolved "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz"
+ resolved "https://registry.yarnpkg.com/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz#3e4fbcb30a15a7f5bf64cf2faae22d139c2e4904"
integrity sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==
dependencies:
call-bind "^1.0.7"
@@ -4383,7 +4403,7 @@ array.prototype.findlast@^1.2.5:
array.prototype.findlastindex@^1.2.5:
version "1.2.5"
- resolved "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz"
+ resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d"
integrity sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==
dependencies:
call-bind "^1.0.7"
@@ -4395,7 +4415,7 @@ array.prototype.findlastindex@^1.2.5:
array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2:
version "1.3.2"
- resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18"
integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==
dependencies:
call-bind "^1.0.2"
@@ -4405,7 +4425,7 @@ array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2:
array.prototype.flatmap@^1.3.2:
version "1.3.2"
- resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527"
integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==
dependencies:
call-bind "^1.0.2"
@@ -4415,7 +4435,7 @@ array.prototype.flatmap@^1.3.2:
array.prototype.tosorted@^1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz#fe954678ff53034e717ea3352a03f0b0b86f7ffc"
integrity sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==
dependencies:
call-bind "^1.0.7"
@@ -4426,7 +4446,7 @@ array.prototype.tosorted@^1.1.4:
arraybuffer.prototype.slice@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6"
integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==
dependencies:
array-buffer-byte-length "^1.0.1"
@@ -4440,7 +4460,7 @@ arraybuffer.prototype.slice@^1.0.3:
asn1.js@^4.10.1:
version "4.10.1"
- resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz"
+ resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0"
integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==
dependencies:
bn.js "^4.0.0"
@@ -4449,7 +4469,7 @@ asn1.js@^4.10.1:
assert@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/assert/-/assert-2.1.0.tgz#6d92a238d05dc02e7427c881fb8be81c8448b2dd"
integrity sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==
dependencies:
call-bind "^1.0.2"
@@ -4460,42 +4480,60 @@ assert@^2.0.0:
assertion-error@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-2.0.1.tgz#f641a196b335690b1070bf00b6e7593fec190bf7"
integrity sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==
ast-types-flow@^0.0.8:
version "0.0.8"
- resolved "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.8.tgz#0a85e1c92695769ac13a428bb653e7538bea27d6"
integrity sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==
ast-types@^0.16.1:
version "0.16.1"
- resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.16.1.tgz"
+ resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.16.1.tgz#7a9da1617c9081bc121faafe91711b4c8bb81da2"
integrity sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==
dependencies:
tslib "^2.0.1"
asynckit@^0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
available-typed-arrays@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846"
integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==
dependencies:
possible-typed-array-names "^1.0.0"
-axe-core@^4.10.0:
+axe-core@^4.10.0, axe-core@^4.2.0:
version "4.10.2"
- resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.10.2.tgz"
+ resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.10.2.tgz#85228e3e1d8b8532a27659b332e39b7fa0e022df"
integrity sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==
+axe-html-reporter@2.2.11:
+ version "2.2.11"
+ resolved "https://registry.yarnpkg.com/axe-html-reporter/-/axe-html-reporter-2.2.11.tgz#749a4d5836f6aebb6780049933c2f6030e06c7d0"
+ integrity sha512-WlF+xlNVgNVWiM6IdVrsh+N0Cw7qupe5HT9N6Uyi+aN7f6SSi92RDomiP1noW8OWIV85V6x404m5oKMeqRV3tQ==
+ dependencies:
+ mustache "^4.0.1"
+
+axe-playwright@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/axe-playwright/-/axe-playwright-2.0.3.tgz#a7b1250f22f237ee0f38974722fa695dfd641b31"
+ integrity sha512-s7iI2okyHHsD3XZK4RMJtTy2UASkNWLQtnzLuaHiK3AWkERf+cqZJqkxb7O4b56fnbib9YnZVRByTl92ME3o6g==
+ dependencies:
+ "@types/junit-report-builder" "^3.0.2"
+ axe-core "^4.10.0"
+ axe-html-reporter "2.2.11"
+ junit-report-builder "^5.1.1"
+ picocolors "^1.1.0"
+
axios@^1.6.1:
- version "1.7.7"
- resolved "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz"
- integrity sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==
+ version "1.7.9"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.9.tgz#d7d071380c132a24accda1b2cfc1535b79ec650a"
+ integrity sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==
dependencies:
follow-redirects "^1.15.6"
form-data "^4.0.0"
@@ -4503,12 +4541,12 @@ axios@^1.6.1:
axobject-query@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-4.1.0.tgz#28768c76d0e3cff21bc62a9e2d0b6ac30042a1ee"
integrity sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==
babel-jest@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5"
integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==
dependencies:
"@jest/transform" "^29.7.0"
@@ -4521,7 +4559,7 @@ babel-jest@^29.7.0:
babel-loader@^9.1.3:
version "9.2.1"
- resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-9.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-9.2.1.tgz#04c7835db16c246dd19ba0914418f3937797587b"
integrity sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==
dependencies:
find-cache-dir "^4.0.0"
@@ -4529,7 +4567,7 @@ babel-loader@^9.1.3:
babel-plugin-istanbul@^6.1.1:
version "6.1.1"
- resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
@@ -4540,7 +4578,7 @@ babel-plugin-istanbul@^6.1.1:
babel-plugin-jest-hoist@^29.6.3:
version "29.6.3"
- resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626"
integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==
dependencies:
"@babel/template" "^7.3.3"
@@ -4549,32 +4587,32 @@ babel-plugin-jest-hoist@^29.6.3:
"@types/babel__traverse" "^7.0.6"
babel-plugin-polyfill-corejs2@^0.4.10:
- version "0.4.11"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz"
- integrity sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==
+ version "0.4.12"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.12.tgz#ca55bbec8ab0edeeef3d7b8ffd75322e210879a9"
+ integrity sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og==
dependencies:
"@babel/compat-data" "^7.22.6"
- "@babel/helper-define-polyfill-provider" "^0.6.2"
+ "@babel/helper-define-polyfill-provider" "^0.6.3"
semver "^6.3.1"
babel-plugin-polyfill-corejs3@^0.10.6:
version "0.10.6"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7"
integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==
dependencies:
"@babel/helper-define-polyfill-provider" "^0.6.2"
core-js-compat "^3.38.0"
babel-plugin-polyfill-regenerator@^0.6.1:
- version "0.6.2"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz"
- integrity sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.3.tgz#abeb1f3f1c762eace37587f42548b08b57789bc8"
+ integrity sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q==
dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.2"
+ "@babel/helper-define-polyfill-provider" "^0.6.3"
babel-preset-current-node-syntax@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz#9a929eafece419612ef4ae4f60b1862ebad8ef30"
integrity sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==
dependencies:
"@babel/plugin-syntax-async-generators" "^7.8.4"
@@ -4595,7 +4633,7 @@ babel-preset-current-node-syntax@^1.0.0:
babel-preset-jest@^29.6.3:
version "29.6.3"
- resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c"
integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==
dependencies:
babel-plugin-jest-hoist "^29.6.3"
@@ -4603,54 +4641,59 @@ babel-preset-jest@^29.6.3:
bail@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d"
integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==
balanced-match@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
base64-js@^1.3.0, base64-js@^1.3.1:
version "1.5.1"
- resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
better-opn@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/better-opn/-/better-opn-3.0.2.tgz#f96f35deaaf8f34144a4102651babcf00d1d8817"
integrity sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==
dependencies:
open "^8.0.4"
big.js@^5.2.2:
version "5.2.2"
- resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
binary-extensions@^2.0.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522"
integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==
bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9:
- version "4.12.0"
- resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz"
- integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
+ version "4.12.1"
+ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.1.tgz#215741fe3c9dba2d7e12c001d0cfdbae43975ba7"
+ integrity sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==
bn.js@^5.2.1:
version "5.2.1"
- resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"
integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==
boolbase@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
+boring-avatars@^1.11.2:
+ version "1.11.2"
+ resolved "https://registry.yarnpkg.com/boring-avatars/-/boring-avatars-1.11.2.tgz#365e0b765fb0065ca0cb2fd20c200674d0a9ded6"
+ integrity sha512-3+wkwPeObwS4R37FGXMYViqc4iTrIRj5yzfX9Qy4mnpZ26sX41dGMhsAgmKks1r/uufY1pl4vpgzMWHYfJRb2A==
+
brace-expansion@^1.1.7:
version "1.1.11"
- resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
dependencies:
balanced-match "^1.0.0"
@@ -4658,31 +4701,31 @@ brace-expansion@^1.1.7:
brace-expansion@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"
integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==
dependencies:
balanced-match "^1.0.0"
braces@^3.0.3, braces@~3.0.2:
version "3.0.3"
- resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
dependencies:
fill-range "^7.1.1"
brorand@^1.0.1, brorand@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==
browser-assert@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/browser-assert/-/browser-assert-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/browser-assert/-/browser-assert-1.2.1.tgz#9aaa5a2a8c74685c2ae05bfe46efd606f068c200"
integrity sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==
browserify-aes@^1.0.4, browserify-aes@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
dependencies:
buffer-xor "^1.0.3"
@@ -4694,7 +4737,7 @@ browserify-aes@^1.0.4, browserify-aes@^1.2.0:
browserify-cipher@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"
integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==
dependencies:
browserify-aes "^1.0.4"
@@ -4703,7 +4746,7 @@ browserify-cipher@^1.0.1:
browserify-des@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"
integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==
dependencies:
cipher-base "^1.0.1"
@@ -4713,7 +4756,7 @@ browserify-des@^1.0.0:
browserify-rsa@^4.0.0, browserify-rsa@^4.1.0:
version "4.1.1"
- resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.1.tgz#06e530907fe2949dc21fc3c2e2302e10b1437238"
integrity sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==
dependencies:
bn.js "^5.2.1"
@@ -4722,7 +4765,7 @@ browserify-rsa@^4.0.0, browserify-rsa@^4.1.0:
browserify-sign@^4.2.3:
version "4.2.3"
- resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.3.tgz#7afe4c01ec7ee59a89a558a4b75bd85ae62d4208"
integrity sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==
dependencies:
bn.js "^5.2.1"
@@ -4738,41 +4781,41 @@ browserify-sign@^4.2.3:
browserify-zlib@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==
dependencies:
pako "~1.0.5"
-browserslist@^4.21.10, browserslist@^4.23.3, browserslist@^4.24.0:
- version "4.24.0"
- resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz"
- integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==
+browserslist@^4.24.0, browserslist@^4.24.2:
+ version "4.24.2"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580"
+ integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==
dependencies:
- caniuse-lite "^1.0.30001663"
- electron-to-chromium "^1.5.28"
+ caniuse-lite "^1.0.30001669"
+ electron-to-chromium "^1.5.41"
node-releases "^2.0.18"
- update-browserslist-db "^1.1.0"
+ update-browserslist-db "^1.1.1"
bser@2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"
integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==
dependencies:
node-int64 "^0.4.0"
buffer-from@^1.0.0:
version "1.1.2"
- resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
buffer-xor@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==
buffer@^6.0.3:
version "6.0.3"
- resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
dependencies:
base64-js "^1.3.1"
@@ -4780,19 +4823,19 @@ buffer@^6.0.3:
builtin-status-codes@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==
busboy@1.6.0:
version "1.6.0"
- resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893"
integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==
dependencies:
streamsearch "^1.1.0"
caching-transform@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-4.0.0.tgz#00d297a4206d71e2163c39eaffa8157ac0651f0f"
integrity sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==
dependencies:
hasha "^5.0.0"
@@ -4800,25 +4843,40 @@ caching-transform@^4.0.0:
package-hash "^4.0.0"
write-file-atomic "^3.0.0"
-call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7:
- version "1.0.7"
- resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz"
- integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==
+call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz#32e5892e6361b29b0b545ba6f7763378daca2840"
+ integrity sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==
dependencies:
- es-define-property "^1.0.0"
es-errors "^1.3.0"
function-bind "^1.1.2"
+
+call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7, call-bind@^1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c"
+ integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==
+ dependencies:
+ call-bind-apply-helpers "^1.0.0"
+ es-define-property "^1.0.0"
get-intrinsic "^1.2.4"
- set-function-length "^1.2.1"
+ set-function-length "^1.2.2"
+
+call-bound@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.2.tgz#9dbd4daf9f5f753bec3e4c8fbb8a2ecc4de6c39b"
+ integrity sha512-0lk0PHFe/uz0vl527fG9CgdE9WdafjDbCXvBbs+LUv000TVt2Jjhqbs4Jwm8gz070w8xXyEAxrPOMullsxXeGg==
+ dependencies:
+ call-bind "^1.0.8"
+ get-intrinsic "^1.2.5"
callsites@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
camel-case@^4.1.2:
version "4.1.2"
- resolved "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a"
integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==
dependencies:
pascal-case "^3.1.2"
@@ -4826,37 +4884,37 @@ camel-case@^4.1.2:
camelcase-css@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==
camelcase@^5.0.0, camelcase@^5.3.1:
version "5.3.1"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
camelcase@^6.2.0:
version "6.3.0"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
-caniuse-lite@^1.0.30001579, caniuse-lite@^1.0.30001663:
- version "1.0.30001669"
- resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz"
- integrity sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==
+caniuse-lite@^1.0.30001579, caniuse-lite@^1.0.30001669:
+ version "1.0.30001688"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001688.tgz#f9d3ede749f083ce0db4c13db9d828adaf2e8d0a"
+ integrity sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==
case-sensitive-paths-webpack-plugin@^2.4.0:
version "2.4.0"
- resolved "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4"
integrity sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==
ccount@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5"
integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==
chai@^5.1.1:
version "5.1.2"
- resolved "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/chai/-/chai-5.1.2.tgz#3afbc340b994ae3610ca519a6c70ace77ad4378d"
integrity sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==
dependencies:
assertion-error "^2.0.1"
@@ -4867,7 +4925,7 @@ chai@^5.1.1:
chalk@3.0.0, chalk@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4"
integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
dependencies:
ansi-styles "^4.1.0"
@@ -4875,7 +4933,7 @@ chalk@3.0.0, chalk@^3.0.0:
chalk@^2.4.2:
version "2.4.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
dependencies:
ansi-styles "^3.2.1"
@@ -4884,7 +4942,7 @@ chalk@^2.4.2:
chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2:
version "4.1.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
dependencies:
ansi-styles "^4.1.0"
@@ -4892,47 +4950,47 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2:
chalk@^5.2.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385"
integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==
char-regex@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
char-regex@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz"
- integrity sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-2.0.2.tgz#81385bb071af4df774bff8721d0ca15ef29ea0bb"
+ integrity sha512-cbGOjAptfM2LVmWhwRFHEKTPkLwNddVmuqYZQt895yXwAsWsXObCG+YN4DGQ/JBtT4GP1a1lPPdio2z413LmTg==
character-entities-html4@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b"
integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==
character-entities-legacy@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b"
integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==
character-entities@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22"
integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==
character-reference-invalid@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9"
integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==
check-error@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc"
integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==
chokidar@^3.5.3, chokidar@^3.6.0:
version "3.6.0"
- resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b"
integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==
dependencies:
anymatch "~3.1.2"
@@ -4945,32 +5003,32 @@ chokidar@^3.5.3, chokidar@^3.6.0:
optionalDependencies:
fsevents "~2.3.2"
-chromatic@^11.15.0:
- version "11.15.0"
- resolved "https://registry.npmjs.org/chromatic/-/chromatic-11.15.0.tgz"
- integrity sha512-5WBm+akQnxsdJv7A//XBafYxk88RJYmRjOh61lVitbPCIN2J9jcsQR+hYApnInmQsWRZvO8GKkMy7SdTlnm1dg==
+chromatic@^11.12.5, chromatic@^11.15.0:
+ version "11.20.2"
+ resolved "https://registry.yarnpkg.com/chromatic/-/chromatic-11.20.2.tgz#10b309179cdc0b9195a5b68970366f9ebe67dfd1"
+ integrity sha512-c+M3HVl5Y60c7ipGTZTyeWzWubRW70YsJ7PPDpO1D735ib8+Lu3yGF90j61pvgkXGngpkTPHZyBw83lcu2JMxA==
chrome-trace-event@^1.0.2:
version "1.0.4"
- resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b"
integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==
ci-info@^3.2.0:
version "3.9.0"
- resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4"
integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
- version "1.0.4"
- resolved "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz"
- integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.6.tgz#8fe672437d01cd6c4561af5334e0cc50ff1955f7"
+ integrity sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw==
dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
+ inherits "^2.0.4"
+ safe-buffer "^5.2.1"
cjs-module-lexer@^1.0.0, cjs-module-lexer@^1.2.2, cjs-module-lexer@^1.2.3:
version "1.4.1"
- resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz#707413784dbb3a72aa11c2f2b042a0bef4004170"
integrity sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==
class-variance-authority@^0.7.1:
@@ -4982,29 +5040,34 @@ class-variance-authority@^0.7.1:
classcat@^5.0.3:
version "5.0.5"
- resolved "https://registry.npmjs.org/classcat/-/classcat-5.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/classcat/-/classcat-5.0.5.tgz#8c209f359a93ac302404a10161b501eba9c09c77"
integrity sha512-JhZUT7JFcQy/EzW605k/ktHtncoo9vnyW/2GspNYwFlN1C/WmjuV/xtS04e9SOkL2sTdw0VAZ2UGCcQ9lR6p6w==
clean-css@^5.2.2:
version "5.3.3"
- resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.3.tgz#b330653cd3bd6b75009cc25c714cae7b93351ccd"
integrity sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==
dependencies:
source-map "~0.6.0"
clean-stack@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
+cli-width@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-4.1.0.tgz#42daac41d3c254ef38ad8ac037672130173691c5"
+ integrity sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==
+
client-only@0.0.1:
version "0.0.1"
- resolved "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1"
integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==
cliui@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1"
integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
dependencies:
string-width "^4.2.0"
@@ -5013,7 +5076,7 @@ cliui@^6.0.0:
cliui@^8.0.1:
version "8.0.1"
- resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
dependencies:
string-width "^4.2.0"
@@ -5022,12 +5085,12 @@ cliui@^8.0.1:
clsx@^2.0.0, clsx@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999"
integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==
cmdk@1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/cmdk/-/cmdk-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/cmdk/-/cmdk-1.0.4.tgz#cbddef6f5ade2378f85c80a0b9ad9a8a712779b5"
integrity sha512-AnsjfHyHpQ/EFeAnG216WY7A5LiYCoZzCSygiLvfXC3H3LFGCprErteUcszaVluGOhuOTbJS3jWHrSDYPBBygg==
dependencies:
"@radix-ui/react-dialog" "^1.1.2"
@@ -5037,41 +5100,41 @@ cmdk@1.0.4:
co@^4.6.0:
version "4.6.0"
- resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
collect-v8-coverage@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9"
integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==
color-convert@^1.9.0:
version "1.9.3"
- resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
dependencies:
color-name "1.1.3"
color-convert@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
dependencies:
color-name "~1.1.4"
color-name@1.1.3:
version "1.1.3"
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
color-name@^1.0.0, color-name@~1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
color-string@^1.9.0:
version "1.9.1"
- resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz"
+ resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4"
integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==
dependencies:
color-name "^1.0.0"
@@ -5079,7 +5142,7 @@ color-string@^1.9.0:
color@^4.2.3:
version "4.2.3"
- resolved "https://registry.npmjs.org/color/-/color-4.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a"
integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==
dependencies:
color-convert "^2.0.1"
@@ -5087,64 +5150,64 @@ color@^4.2.3:
colorette@^2.0.10:
version "2.0.20"
- resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz"
+ resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
combined-stream@^1.0.8:
version "1.0.8"
- resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
dependencies:
delayed-stream "~1.0.0"
comma-separated-tokens@^2.0.0:
version "2.0.3"
- resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee"
integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==
commander@^2.20.0:
version "2.20.3"
- resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
commander@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-3.0.2.tgz#6837c3fb677ad9933d1cfba42dd14d5117d6b39e"
integrity sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==
commander@^4.0.0:
version "4.1.1"
- resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
commander@^5.1.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"
integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==
commander@^8.3.0:
version "8.3.0"
- resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66"
integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==
common-path-prefix@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0"
integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==
commondir@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==
concat-map@0.0.1:
version "0.0.1"
- resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-concurrently@^9.1.0:
+concurrently@^9.0.1:
version "9.1.0"
- resolved "https://registry.npmjs.org/concurrently/-/concurrently-9.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-9.1.0.tgz#8da6d609f4321752912dab9be8710232ac496aa0"
integrity sha512-VxkzwMAn4LP7WyMnJNbHN5mKV9L2IbyDjpzemKr99sXNR3GqRNMMHdm7prV1ws9wg7ETj6WUkNOigZVsptwbgg==
dependencies:
chalk "^4.1.2"
@@ -5157,54 +5220,54 @@ concurrently@^9.1.0:
console-browserify@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
constants-browserify@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==
convert-source-map@^1.7.0:
version "1.9.0"
- resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
convert-source-map@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
cookie@1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-1.0.2.tgz#27360701532116bd3f1f9416929d176afe1e4610"
integrity sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==
-cookie@^0.7.0:
+cookie@^0.7.0, cookie@^0.7.2:
version "0.7.2"
- resolved "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7"
integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==
core-js-compat@^3.38.0, core-js-compat@^3.38.1:
- version "3.38.1"
- resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz"
- integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==
+ version "3.39.0"
+ resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.39.0.tgz#b12dccb495f2601dc860bdbe7b4e3ffa8ba63f61"
+ integrity sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==
dependencies:
- browserslist "^4.23.3"
+ browserslist "^4.24.2"
core-js-pure@^3.23.3:
- version "3.38.1"
- resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.38.1.tgz"
- integrity sha512-BY8Etc1FZqdw1glX0XNOq2FDwfrg/VGqoZOZCdaL+UmdaqDwQwYXkMJT4t6In+zfEfOJDcM9T0KdbBeJg8KKCQ==
+ version "3.39.0"
+ resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.39.0.tgz#aa0d54d70a15bdc13e7c853db87c10abc30d68f3"
+ integrity sha512-7fEcWwKI4rJinnK+wLTezeg2smbFFdSBP6E2kQZNbnzM2s1rpKQ6aaRteZSSg7FLU3P0HGGVo/gbpfanU36urg==
core-util-is@~1.0.0:
version "1.0.3"
- resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
cosmiconfig@^7.0.1:
version "7.1.0"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6"
integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==
dependencies:
"@types/parse-json" "^4.0.0"
@@ -5215,7 +5278,7 @@ cosmiconfig@^7.0.1:
cosmiconfig@^9.0.0:
version "9.0.0"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-9.0.0.tgz#34c3fc58287b915f3ae905ab6dc3de258b55ad9d"
integrity sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==
dependencies:
env-paths "^2.2.1"
@@ -5225,7 +5288,7 @@ cosmiconfig@^9.0.0:
create-ecdh@^4.0.4:
version "4.0.4"
- resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"
integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==
dependencies:
bn.js "^4.1.0"
@@ -5233,7 +5296,7 @@ create-ecdh@^4.0.4:
create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==
dependencies:
cipher-base "^1.0.1"
@@ -5244,7 +5307,7 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
create-hmac@^1.1.4, create-hmac@^1.1.7:
version "1.1.7"
- resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
dependencies:
cipher-base "^1.0.3"
@@ -5256,7 +5319,7 @@ create-hmac@^1.1.4, create-hmac@^1.1.7:
create-jest@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320"
integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==
dependencies:
"@jest/types" "^29.6.3"
@@ -5269,7 +5332,7 @@ create-jest@^29.7.0:
cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
version "7.0.6"
- resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f"
integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==
dependencies:
path-key "^3.1.0"
@@ -5278,7 +5341,7 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
crypto-browserify@^3.12.0:
version "3.12.1"
- resolved "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.1.tgz"
+ resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.1.tgz#bb8921bec9acc81633379aa8f52d69b0b69e0dac"
integrity sha512-r4ESw/IlusD17lgQi1O20Fa3qNnsckR126TdUuBgAu7GBYSIPvdNyONd3Zrxh0xCwA4+6w/TDArBPsMvhur+KQ==
dependencies:
browserify-cipher "^1.0.1"
@@ -5296,7 +5359,7 @@ crypto-browserify@^3.12.0:
css-loader@^6.7.1, css-loader@^6.7.3:
version "6.11.0"
- resolved "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz"
+ resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.11.0.tgz#33bae3bf6363d0a7c2cf9031c96c744ff54d85ba"
integrity sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==
dependencies:
icss-utils "^5.1.0"
@@ -5310,7 +5373,7 @@ css-loader@^6.7.1, css-loader@^6.7.3:
css-select@^4.1.3:
version "4.3.0"
- resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b"
integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
dependencies:
boolbase "^1.0.0"
@@ -5321,27 +5384,27 @@ css-select@^4.1.3:
css-what@^6.0.1:
version "6.1.0"
- resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
css.escape@^1.5.1:
version "1.5.1"
- resolved "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==
cssesc@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
csstype@^3.0.2:
version "3.1.3"
- resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"
integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
cwd@^0.10.0:
version "0.10.0"
- resolved "https://registry.npmjs.org/cwd/-/cwd-0.10.0.tgz"
+ resolved "https://registry.yarnpkg.com/cwd/-/cwd-0.10.0.tgz#172400694057c22a13b0cf16162c7e4b7a7fe567"
integrity sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA==
dependencies:
find-pkg "^0.1.2"
@@ -5349,24 +5412,24 @@ cwd@^0.10.0:
"d3-array@2 - 3", "d3-array@2.10.0 - 3", d3-array@^3.1.6:
version "3.2.4"
- resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5"
integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==
dependencies:
internmap "1 - 2"
"d3-color@1 - 3":
version "3.1.0"
- resolved "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2"
integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==
"d3-dispatch@1 - 3":
version "3.0.1"
- resolved "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e"
integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==
"d3-drag@2 - 3", d3-drag@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba"
integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==
dependencies:
d3-dispatch "1 - 3"
@@ -5374,29 +5437,29 @@ cwd@^0.10.0:
"d3-ease@1 - 3", d3-ease@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4"
integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==
"d3-format@1 - 3":
version "3.1.0"
- resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641"
integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==
"d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d"
integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==
dependencies:
d3-color "1 - 3"
d3-path@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526"
integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==
d3-scale@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396"
integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==
dependencies:
d3-array "2.10.0 - 3"
@@ -5407,38 +5470,38 @@ d3-scale@^4.0.2:
"d3-selection@2 - 3", d3-selection@3, d3-selection@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31"
integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==
d3-shape@^3.1.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5"
integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==
dependencies:
d3-path "^3.1.0"
"d3-time-format@2 - 4":
version "4.1.0"
- resolved "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a"
integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==
dependencies:
d3-time "1 - 3"
"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7"
integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==
dependencies:
d3-array "2 - 3"
"d3-timer@1 - 3", d3-timer@^3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0"
integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==
"d3-transition@2 - 3":
version "3.0.1"
- resolved "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f"
integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==
dependencies:
d3-color "1 - 3"
@@ -5449,7 +5512,7 @@ d3-shape@^3.1.0:
d3-zoom@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3"
integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==
dependencies:
d3-dispatch "1 - 3"
@@ -5460,12 +5523,12 @@ d3-zoom@^3.0.0:
damerau-levenshtein@^1.0.8:
version "1.0.8"
- resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7"
integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==
data-view-buffer@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2"
integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==
dependencies:
call-bind "^1.0.6"
@@ -5474,7 +5537,7 @@ data-view-buffer@^1.0.1:
data-view-byte-length@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2"
integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==
dependencies:
call-bind "^1.0.7"
@@ -5483,7 +5546,7 @@ data-view-byte-length@^1.0.1:
data-view-byte-offset@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a"
integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==
dependencies:
call-bind "^1.0.6"
@@ -5492,80 +5555,80 @@ data-view-byte-offset@^1.0.0:
date-fns@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-4.1.0.tgz#64b3d83fff5aa80438f5b1a633c2e83b8a1c2d14"
integrity sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==
-debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5:
- version "4.3.7"
- resolved "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz"
- integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==
+debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.3.7:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a"
+ integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==
dependencies:
ms "^2.1.3"
debug@^3.2.7:
version "3.2.7"
- resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a"
integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==
dependencies:
ms "^2.1.1"
decamelize@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
decimal.js-light@^2.4.1:
version "2.5.1"
- resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934"
integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==
decode-named-character-reference@^1.0.0:
version "1.0.2"
- resolved "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz#daabac9690874c394c81e4162a0304b35d824f0e"
integrity sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==
dependencies:
character-entities "^2.0.0"
dedent@^0.7.0:
version "0.7.0"
- resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==
dedent@^1.0.0:
version "1.5.3"
- resolved "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz"
+ resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a"
integrity sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==
deep-eql@^5.0.1:
version "5.0.2"
- resolved "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341"
integrity sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==
deep-is@^0.1.3:
version "0.1.4"
- resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
deepmerge-ts@^7.1.1:
version "7.1.3"
- resolved "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-7.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/deepmerge-ts/-/deepmerge-ts-7.1.3.tgz#9a07e5e7dff7afa8ddf48b90b7161ca9439ca4ca"
integrity sha512-qCSH6I0INPxd9Y1VtAiLpnYvz5O//6rCfJXKk0z66Up9/VOSr+1yS8XSKA5IWRxjocFGlzPyaZYe+jxq7OOLtQ==
deepmerge@^4.2.2:
version "4.3.1"
- resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
default-require-extensions@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-3.0.1.tgz#bfae00feeaeada68c2ae256c62540f60b80625bd"
integrity sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==
dependencies:
strip-bom "^4.0.0"
define-data-property@^1.0.1, define-data-property@^1.1.4:
version "1.1.4"
- resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e"
integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
dependencies:
es-define-property "^1.0.0"
@@ -5574,12 +5637,12 @@ define-data-property@^1.0.1, define-data-property@^1.1.4:
define-lazy-prop@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f"
integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==
define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
dependencies:
define-data-property "^1.0.1"
@@ -5588,17 +5651,17 @@ define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1:
delayed-stream@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
dequal@^2.0.0, dequal@^2.0.2, dequal@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
des.js@^1.0.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.1.0.tgz#1d37f5766f3bbff4ee9638e871a8768c173b81da"
integrity sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==
dependencies:
inherits "^2.0.1"
@@ -5606,46 +5669,46 @@ des.js@^1.0.0:
detect-libc@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700"
integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==
detect-newline@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
detect-node-es@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493"
integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==
devlop@^1.0.0, devlop@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018"
integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==
dependencies:
dequal "^2.0.0"
didyoumean@^1.2.2:
version "1.2.2"
- resolved "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037"
integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==
diff-sequences@^29.6.3:
version "29.6.3"
- resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921"
integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==
diffable-html@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/diffable-html/-/diffable-html-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/diffable-html/-/diffable-html-4.1.0.tgz#e7a2d1de187c4e23a59751b4e4c17483a058c696"
integrity sha512-++kyNek+YBLH8cLXS+iTj/Hiy2s5qkRJEJ8kgu/WHbFrVY2vz9xPFUT+fii2zGF0m1CaojDlQJjkfrCt7YWM1g==
dependencies:
htmlparser2 "^3.9.2"
diffie-hellman@^5.0.3:
version "5.0.3"
- resolved "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==
dependencies:
bn.js "^4.1.0"
@@ -5654,43 +5717,43 @@ diffie-hellman@^5.0.3:
dlv@^1.1.3:
version "1.1.3"
- resolved "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
doctrine@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
dependencies:
esutils "^2.0.2"
doctrine@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
dependencies:
esutils "^2.0.2"
dom-accessibility-api@^0.5.9:
version "0.5.16"
- resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz"
+ resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453"
integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==
dom-accessibility-api@^0.6.3:
version "0.6.3"
- resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz#993e925cc1d73f2c662e7d75dd5a5445259a8fd8"
integrity sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==
dom-converter@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768"
integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==
dependencies:
utila "~0.4"
dom-helpers@^5.0.1:
version "5.2.1"
- resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==
dependencies:
"@babel/runtime" "^7.8.7"
@@ -5698,7 +5761,7 @@ dom-helpers@^5.0.1:
dom-serializer@0:
version "0.2.2"
- resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==
dependencies:
domelementtype "^2.0.1"
@@ -5706,7 +5769,7 @@ dom-serializer@0:
dom-serializer@^1.0.1:
version "1.4.1"
- resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30"
integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==
dependencies:
domelementtype "^2.0.1"
@@ -5715,36 +5778,36 @@ dom-serializer@^1.0.1:
domain-browser@^4.22.0:
version "4.23.0"
- resolved "https://registry.npmjs.org/domain-browser/-/domain-browser-4.23.0.tgz"
+ resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-4.23.0.tgz#427ebb91efcb070f05cffdfb8a4e9a6c25f8c94b"
integrity sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==
domelementtype@1, domelementtype@^1.3.1:
version "1.3.1"
- resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
domelementtype@^2.0.1, domelementtype@^2.2.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d"
integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
domhandler@^2.3.0:
version "2.4.2"
- resolved "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==
dependencies:
domelementtype "1"
domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1:
version "4.3.1"
- resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c"
integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==
dependencies:
domelementtype "^2.2.0"
domutils@^1.5.1:
version "1.7.0"
- resolved "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==
dependencies:
dom-serializer "0"
@@ -5752,7 +5815,7 @@ domutils@^1.5.1:
domutils@^2.5.2, domutils@^2.8.0:
version "2.8.0"
- resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
dependencies:
dom-serializer "^1.0.1"
@@ -5761,7 +5824,7 @@ domutils@^2.5.2, domutils@^2.8.0:
dot-case@^3.0.4:
version "3.0.4"
- resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751"
integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==
dependencies:
no-case "^3.0.4"
@@ -5772,19 +5835,41 @@ dotenv@^16.3.1, dotenv@^16.4.7:
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.7.tgz#0e20c5b82950140aa99be360a8a5f52335f53c26"
integrity sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==
+dunder-proto@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.0.tgz#c2fce098b3c8f8899554905f4377b6d85dabaa80"
+ integrity sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==
+ dependencies:
+ call-bind-apply-helpers "^1.0.0"
+ es-errors "^1.3.0"
+ gopd "^1.2.0"
+
eastasianwidth@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
-electron-to-chromium@^1.5.28:
- version "1.5.41"
- resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz"
- integrity sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==
+electron-to-chromium@^1.5.41:
+ version "1.5.73"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.73.tgz#f32956ce40947fa3c8606726a96cd8fb5bb5f720"
+ integrity sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==
-elliptic@6.6.1, elliptic@^6.5.3, elliptic@^6.5.5:
+elliptic@6.6.0:
+ version "6.6.0"
+ resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.0.tgz#5919ec723286c1edf28685aa89261d4761afa210"
+ integrity sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA==
+ dependencies:
+ bn.js "^4.11.9"
+ brorand "^1.1.0"
+ hash.js "^1.0.0"
+ hmac-drbg "^1.0.1"
+ inherits "^2.0.4"
+ minimalistic-assert "^1.0.1"
+ minimalistic-crypto-utils "^1.0.1"
+
+elliptic@^6.5.3, elliptic@^6.5.5:
version "6.6.1"
- resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06"
integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==
dependencies:
bn.js "^4.11.9"
@@ -5795,38 +5880,56 @@ elliptic@6.6.1, elliptic@^6.5.3, elliptic@^6.5.5:
minimalistic-assert "^1.0.1"
minimalistic-crypto-utils "^1.0.1"
+embla-carousel-react@^8.3.0:
+ version "8.5.1"
+ resolved "https://registry.yarnpkg.com/embla-carousel-react/-/embla-carousel-react-8.5.1.tgz#e06ff28cb53698d453ffad89423c23d725e9b010"
+ integrity sha512-z9Y0K84BJvhChXgqn2CFYbfEi6AwEr+FFVVKm/MqbTQ2zIzO1VQri6w67LcfpVF0AjbhwVMywDZqY4alYkjW5w==
+ dependencies:
+ embla-carousel "8.5.1"
+ embla-carousel-reactive-utils "8.5.1"
+
+embla-carousel-reactive-utils@8.5.1:
+ version "8.5.1"
+ resolved "https://registry.yarnpkg.com/embla-carousel-reactive-utils/-/embla-carousel-reactive-utils-8.5.1.tgz#3059ab2f72f04988a96694f700a772a72bb75ffb"
+ integrity sha512-n7VSoGIiiDIc4MfXF3ZRTO59KDp820QDuyBDGlt5/65+lumPHxX2JLz0EZ23hZ4eg4vZGUXwMkYv02fw2JVo/A==
+
+embla-carousel@8.5.1:
+ version "8.5.1"
+ resolved "https://registry.yarnpkg.com/embla-carousel/-/embla-carousel-8.5.1.tgz#8d83217e831666f6df573b0d3727ff0ae9208002"
+ integrity sha512-JUb5+FOHobSiWQ2EJNaueCNT/cQU9L6XWBbWmorWPQT9bkbk+fhsuLr8wWrzXKagO3oWszBO7MSx+GfaRk4E6A==
+
emittery@^0.13.1:
version "0.13.1"
- resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz"
+ resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad"
integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==
emoji-regex@^8.0.0:
version "8.0.0"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
emoji-regex@^9.2.2:
version "9.2.2"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
emojis-list@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
endent@^2.0.1:
version "2.1.0"
- resolved "https://registry.npmjs.org/endent/-/endent-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/endent/-/endent-2.1.0.tgz#5aaba698fb569e5e18e69e1ff7a28ff35373cd88"
integrity sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==
dependencies:
dedent "^0.7.0"
fast-json-parse "^1.0.3"
objectorarray "^1.0.5"
-enhanced-resolve@^5.12.0, enhanced-resolve@^5.17.1, enhanced-resolve@^5.7.0:
+enhanced-resolve@^5.15.0, enhanced-resolve@^5.17.1, enhanced-resolve@^5.7.0:
version "5.17.1"
- resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz"
+ resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15"
integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==
dependencies:
graceful-fs "^4.2.4"
@@ -5834,37 +5937,37 @@ enhanced-resolve@^5.12.0, enhanced-resolve@^5.17.1, enhanced-resolve@^5.7.0:
entities@^1.1.1:
version "1.1.2"
- resolved "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
entities@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
env-paths@^2.2.1:
version "2.2.1"
- resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
error-ex@^1.3.1:
version "1.3.2"
- resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
dependencies:
is-arrayish "^0.2.1"
error-stack-parser@^2.0.6:
version "2.1.4"
- resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz#229cb01cdbfa84440bfa91876285b94680188286"
integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==
dependencies:
stackframe "^1.3.4"
-es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.1, es-abstract@^1.23.2, es-abstract@^1.23.3:
- version "1.23.3"
- resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz"
- integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==
+es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.2, es-abstract@^1.23.3, es-abstract@^1.23.5:
+ version "1.23.5"
+ resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.5.tgz#f4599a4946d57ed467515ed10e4f157289cd52fb"
+ integrity sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==
dependencies:
array-buffer-byte-length "^1.0.1"
arraybuffer.prototype.slice "^1.0.3"
@@ -5881,7 +5984,7 @@ es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23
function.prototype.name "^1.1.6"
get-intrinsic "^1.2.4"
get-symbol-description "^1.0.2"
- globalthis "^1.0.3"
+ globalthis "^1.0.4"
gopd "^1.0.1"
has-property-descriptors "^1.0.2"
has-proto "^1.0.3"
@@ -5897,10 +6000,10 @@ es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23
is-string "^1.0.7"
is-typed-array "^1.1.13"
is-weakref "^1.0.2"
- object-inspect "^1.13.1"
+ object-inspect "^1.13.3"
object-keys "^1.1.1"
object.assign "^4.1.5"
- regexp.prototype.flags "^1.5.2"
+ regexp.prototype.flags "^1.5.3"
safe-array-concat "^1.1.2"
safe-regex-test "^1.0.3"
string.prototype.trim "^1.2.9"
@@ -5913,22 +6016,20 @@ es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23
unbox-primitive "^1.0.2"
which-typed-array "^1.1.15"
-es-define-property@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz"
- integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==
- dependencies:
- get-intrinsic "^1.2.4"
+es-define-property@^1.0.0, es-define-property@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
+ integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
es-errors@^1.2.1, es-errors@^1.3.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
-es-iterator-helpers@^1.0.19:
- version "1.0.19"
- resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz"
- integrity sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==
+es-iterator-helpers@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.2.0.tgz#2f1a3ab998b30cb2d10b195b587c6d9ebdebf152"
+ integrity sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==
dependencies:
call-bind "^1.0.7"
define-properties "^1.2.1"
@@ -5937,29 +6038,30 @@ es-iterator-helpers@^1.0.19:
es-set-tostringtag "^2.0.3"
function-bind "^1.1.2"
get-intrinsic "^1.2.4"
- globalthis "^1.0.3"
+ globalthis "^1.0.4"
+ gopd "^1.0.1"
has-property-descriptors "^1.0.2"
has-proto "^1.0.3"
has-symbols "^1.0.3"
internal-slot "^1.0.7"
- iterator.prototype "^1.1.2"
+ iterator.prototype "^1.1.3"
safe-array-concat "^1.1.2"
es-module-lexer@^1.2.1, es-module-lexer@^1.5.0:
version "1.5.4"
- resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz"
+ resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78"
integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==
es-object-atoms@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941"
integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==
dependencies:
es-errors "^1.3.0"
es-set-tostringtag@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777"
integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==
dependencies:
get-intrinsic "^1.2.4"
@@ -5968,35 +6070,35 @@ es-set-tostringtag@^2.0.3:
es-shim-unscopables@^1.0.0, es-shim-unscopables@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763"
integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==
dependencies:
hasown "^2.0.0"
es-to-primitive@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz"
- integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18"
+ integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==
dependencies:
- is-callable "^1.1.4"
- is-date-object "^1.0.1"
- is-symbol "^1.0.2"
+ is-callable "^1.2.7"
+ is-date-object "^1.0.5"
+ is-symbol "^1.0.4"
es6-error@^4.0.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d"
integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
esbuild-register@^3.5.0:
version "3.6.0"
- resolved "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/esbuild-register/-/esbuild-register-3.6.0.tgz#cf270cfa677baebbc0010ac024b823cbf723a36d"
integrity sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==
dependencies:
debug "^4.3.4"
"esbuild@^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0":
version "0.24.0"
- resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz"
+ resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.24.0.tgz#f2d470596885fcb2e91c21eb3da3b3c89c0b55e7"
integrity sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==
optionalDependencies:
"@esbuild/aix-ppc64" "0.24.0"
@@ -6024,40 +6126,29 @@ esbuild-register@^3.5.0:
"@esbuild/win32-ia32" "0.24.0"
"@esbuild/win32-x64" "0.24.0"
-escalade@^3.1.1, escalade@^3.1.2:
+escalade@^3.1.1, escalade@^3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
escape-string-regexp@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
escape-string-regexp@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
escape-string-regexp@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-escodegen@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz"
- integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==
- dependencies:
- esprima "^4.0.1"
- estraverse "^5.2.0"
- esutils "^2.0.2"
- optionalDependencies:
- source-map "~0.6.1"
-
eslint-config-next@15.0.3:
version "15.0.3"
- resolved "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-15.0.3.tgz#b483585260d5e55050d4ab87e053c88089ae12ee"
integrity sha512-IGP2DdQQrgjcr4mwFPve4DrCqo7CVVez1WoYY47XwKSrYO4hC0Dlb+iJA60i0YfICOzgNADIb8r28BpQ5Zs0wg==
dependencies:
"@next/eslint-plugin-next" "15.0.3"
@@ -6073,7 +6164,7 @@ eslint-config-next@15.0.3:
eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.9:
version "0.3.9"
- resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac"
integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==
dependencies:
debug "^3.2.7"
@@ -6081,28 +6172,29 @@ eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.9:
resolve "^1.22.4"
eslint-import-resolver-typescript@^3.5.2:
- version "3.6.1"
- resolved "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz"
- integrity sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==
+ version "3.7.0"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.7.0.tgz#e69925936a771a9cb2de418ccebc4cdf6c0818aa"
+ integrity sha512-Vrwyi8HHxY97K5ebydMtffsWAn1SCR9eol49eCd5fJS4O1WV7PaAjbcjmbfJJSMz/t4Mal212Uz/fQZrOB8mow==
dependencies:
- debug "^4.3.4"
- enhanced-resolve "^5.12.0"
- eslint-module-utils "^2.7.4"
- fast-glob "^3.3.1"
- get-tsconfig "^4.5.0"
- is-core-module "^2.11.0"
+ "@nolyfill/is-core-module" "1.0.39"
+ debug "^4.3.7"
+ enhanced-resolve "^5.15.0"
+ fast-glob "^3.3.2"
+ get-tsconfig "^4.7.5"
+ is-bun-module "^1.0.2"
is-glob "^4.0.3"
+ stable-hash "^0.0.4"
-eslint-module-utils@^2.12.0, eslint-module-utils@^2.7.4:
+eslint-module-utils@^2.12.0:
version "2.12.0"
- resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b"
integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==
dependencies:
debug "^3.2.7"
eslint-plugin-import@^2.31.0:
version "2.31.0"
- resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7"
integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==
dependencies:
"@rtsao/scc" "^1.1.0"
@@ -6127,7 +6219,7 @@ eslint-plugin-import@^2.31.0:
eslint-plugin-jsx-a11y@^6.10.0:
version "6.10.2"
- resolved "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz#d2812bb23bf1ab4665f1718ea442e8372e638483"
integrity sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==
dependencies:
aria-query "^5.3.2"
@@ -6147,21 +6239,21 @@ eslint-plugin-jsx-a11y@^6.10.0:
string.prototype.includes "^2.0.1"
eslint-plugin-react-hooks@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0.tgz"
- integrity sha512-hIOwI+5hYGpJEc4uPRmz2ulCjAGD/N13Lukkh8cLV0i2IRk/bdZDYjgLVHj+U9Z704kLIdIO6iueGvxNur0sgw==
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0.tgz#3d34e37d5770866c34b87d5b499f5f0b53bf0854"
+ integrity sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==
eslint-plugin-react@^7.35.0:
- version "7.35.0"
- resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz"
- integrity sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==
+ version "7.37.2"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz#cd0935987876ba2900df2f58339f6d92305acc7a"
+ integrity sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==
dependencies:
array-includes "^3.1.8"
array.prototype.findlast "^1.2.5"
array.prototype.flatmap "^1.3.2"
array.prototype.tosorted "^1.1.4"
doctrine "^2.1.0"
- es-iterator-helpers "^1.0.19"
+ es-iterator-helpers "^1.1.0"
estraverse "^5.3.0"
hasown "^2.0.2"
jsx-ast-utils "^2.4.1 || ^3.0.0"
@@ -6175,9 +6267,9 @@ eslint-plugin-react@^7.35.0:
string.prototype.matchall "^4.0.11"
string.prototype.repeat "^1.0.0"
-eslint-plugin-storybook@^0.11.1:
+eslint-plugin-storybook@^0.11.0:
version "0.11.1"
- resolved "https://registry.npmjs.org/eslint-plugin-storybook/-/eslint-plugin-storybook-0.11.1.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-storybook/-/eslint-plugin-storybook-0.11.1.tgz#4ef4f3550855fdc4a902296dfc278340ec287506"
integrity sha512-yGKpAYkBm/Q2hZg476vRUAvd9lAccjjSvzU5nYy3BSQbKTPy7uopx7JEpwk2vSuw4weTMZzWF64z9/gp/K5RCg==
dependencies:
"@storybook/csf" "^0.1.11"
@@ -6186,7 +6278,7 @@ eslint-plugin-storybook@^0.11.1:
eslint-scope@5.1.1:
version "5.1.1"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
dependencies:
esrecurse "^4.3.0"
@@ -6194,27 +6286,32 @@ eslint-scope@5.1.1:
eslint-scope@^7.2.2:
version "7.2.2"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
dependencies:
esrecurse "^4.3.0"
estraverse "^5.2.0"
-eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
+eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
version "3.4.3"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
+eslint-visitor-keys@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45"
+ integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==
+
eslint@^8:
- version "8.57.0"
- resolved "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz"
- integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==
+ version "8.57.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9"
+ integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.6.1"
"@eslint/eslintrc" "^2.1.4"
- "@eslint/js" "8.57.0"
- "@humanwhocodes/config-array" "^0.11.14"
+ "@eslint/js" "8.57.1"
+ "@humanwhocodes/config-array" "^0.13.0"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
"@ungap/structured-clone" "^1.2.0"
@@ -6251,82 +6348,82 @@ eslint@^8:
espree@^9.6.0, espree@^9.6.1:
version "9.6.1"
- resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
dependencies:
acorn "^8.9.0"
acorn-jsx "^5.3.2"
eslint-visitor-keys "^3.4.1"
-esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0:
+esprima@^4.0.0, esprima@~4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
esquery@^1.4.2:
version "1.6.0"
- resolved "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7"
integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==
dependencies:
estraverse "^5.1.0"
esrecurse@^4.3.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
dependencies:
estraverse "^5.2.0"
estraverse@^4.1.1:
version "4.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0:
version "5.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
estree-util-is-identifier-name@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz#0b5ef4c4ff13508b34dcd01ecfa945f61fce5dbd"
integrity sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==
estree-walker@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
estree-walker@^3.0.3:
version "3.0.3"
- resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d"
integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==
dependencies:
"@types/estree" "^1.0.0"
esutils@^2.0.2:
version "2.0.3"
- resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
event-target-shim@^5.0.0:
version "5.0.1"
- resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
eventemitter3@^4.0.1:
version "4.0.7"
- resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
events@^3.2.0, events@^3.3.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
dependencies:
md5.js "^1.3.4"
@@ -6334,7 +6431,7 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
execa@^5.0.0:
version "5.1.1"
- resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
dependencies:
cross-spawn "^7.0.3"
@@ -6349,29 +6446,29 @@ execa@^5.0.0:
exenv@^1.2.0:
version "1.2.2"
- resolved "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d"
integrity sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==
exit@^0.1.2:
version "0.1.2"
- resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
expand-tilde@^1.2.2:
version "1.2.2"
- resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449"
integrity sha512-rtmc+cjLZqnu9dSYosX9EWmSJhTwpACgJQTfj4hgg2JjOD/6SIQalZrt4a3aQeh++oNxkazcaxrhPUj6+g5G/Q==
dependencies:
os-homedir "^1.0.1"
expect-playwright@^0.8.0:
version "0.8.0"
- resolved "https://registry.npmjs.org/expect-playwright/-/expect-playwright-0.8.0.tgz"
+ resolved "https://registry.yarnpkg.com/expect-playwright/-/expect-playwright-0.8.0.tgz#6d4ebe0bdbdd3c1693d880d97153b96a129ae4e8"
integrity sha512-+kn8561vHAY+dt+0gMqqj1oY+g5xWrsuGMk4QGxotT2WS545nVqqjs37z6hrYfIuucwqthzwJfCJUEYqixyljg==
expect@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc"
integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==
dependencies:
"@jest/expect-utils" "^29.7.0"
@@ -6382,27 +6479,27 @@ expect@^29.7.0:
extend@^3.0.0:
version "3.0.2"
- resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
fast-deep-equal@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
integrity sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==
fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
version "3.1.3"
- resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
fast-equals@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/fast-equals/-/fast-equals-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/fast-equals/-/fast-equals-5.0.1.tgz#a4eefe3c5d1c0d021aeed0bc10ba5e0c12ee405d"
integrity sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==
fast-glob@3.3.1:
version "3.3.1"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4"
integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==
dependencies:
"@nodelib/fs.stat" "^2.0.2"
@@ -6411,9 +6508,9 @@ fast-glob@3.3.1:
merge2 "^1.3.0"
micromatch "^4.0.4"
-fast-glob@^3.3.1, fast-glob@^3.3.2:
+fast-glob@^3.3.2:
version "3.3.2"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
dependencies:
"@nodelib/fs.stat" "^2.0.2"
@@ -6424,70 +6521,70 @@ fast-glob@^3.3.1, fast-glob@^3.3.2:
fast-json-parse@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d"
integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==
fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@^2.0.6:
version "2.0.6"
- resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
fast-uri@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz"
- integrity sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.3.tgz#892a1c91802d5d7860de728f18608a0573142241"
+ integrity sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==
fastq@^1.6.0:
version "1.17.1"
- resolved "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz"
+ resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47"
integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==
dependencies:
reusify "^1.0.4"
fb-watchman@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c"
integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==
dependencies:
bser "2.1.1"
fdir@^6.2.0:
version "6.4.2"
- resolved "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.4.2.tgz#ddaa7ce1831b161bc3657bb99cb36e1622702689"
integrity sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==
file-entry-cache@^6.0.1:
version "6.0.1"
- resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
dependencies:
flat-cache "^3.0.4"
filesize@^10.0.12:
version "10.1.6"
- resolved "https://registry.npmjs.org/filesize/-/filesize-10.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/filesize/-/filesize-10.1.6.tgz#31194da825ac58689c0bce3948f33ce83aabd361"
integrity sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==
fill-range@^7.1.1:
version "7.1.1"
- resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
dependencies:
to-regex-range "^5.0.1"
filter-obj@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-2.0.2.tgz#fff662368e505d69826abb113f0f6a98f56e9d5f"
integrity sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==
find-cache-dir@^3.2.0, find-cache-dir@^3.3.1:
version "3.3.2"
- resolved "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b"
integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==
dependencies:
commondir "^1.0.1"
@@ -6496,7 +6593,7 @@ find-cache-dir@^3.2.0, find-cache-dir@^3.3.1:
find-cache-dir@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2"
integrity sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==
dependencies:
common-path-prefix "^3.0.0"
@@ -6504,7 +6601,7 @@ find-cache-dir@^4.0.0:
find-file-up@^0.1.2:
version "0.1.3"
- resolved "https://registry.npmjs.org/find-file-up/-/find-file-up-0.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/find-file-up/-/find-file-up-0.1.3.tgz#cf68091bcf9f300a40da411b37da5cce5a2fbea0"
integrity sha512-mBxmNbVyjg1LQIIpgO8hN+ybWBgDQK8qjht+EbrTCGmmPV/sc7RF1i9stPTD6bpvXZywBdrwRYxhSdJv867L6A==
dependencies:
fs-exists-sync "^0.1.0"
@@ -6512,14 +6609,14 @@ find-file-up@^0.1.2:
find-pkg@^0.1.2:
version "0.1.2"
- resolved "https://registry.npmjs.org/find-pkg/-/find-pkg-0.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/find-pkg/-/find-pkg-0.1.2.tgz#1bdc22c06e36365532e2a248046854b9788da557"
integrity sha512-0rnQWcFwZr7eO0513HahrWafsc3CTFioEB7DRiEYCUM/70QXSY8f3mCST17HXLcPvEhzH/Ty/Bxd72ZZsr/yvw==
dependencies:
find-file-up "^0.1.2"
find-process@^1.4.4:
version "1.4.7"
- resolved "https://registry.npmjs.org/find-process/-/find-process-1.4.7.tgz"
+ resolved "https://registry.yarnpkg.com/find-process/-/find-process-1.4.7.tgz#8c76962259216c381ef1099371465b5b439ea121"
integrity sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==
dependencies:
chalk "^4.0.0"
@@ -6528,7 +6625,7 @@ find-process@^1.4.4:
find-up@^4.0.0, find-up@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
dependencies:
locate-path "^5.0.0"
@@ -6536,7 +6633,7 @@ find-up@^4.0.0, find-up@^4.1.0:
find-up@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
dependencies:
locate-path "^6.0.0"
@@ -6544,7 +6641,7 @@ find-up@^5.0.0:
find-up@^6.3.0:
version "6.3.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790"
integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==
dependencies:
locate-path "^7.1.0"
@@ -6552,7 +6649,7 @@ find-up@^6.3.0:
flat-cache@^3.0.4:
version "3.2.0"
- resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee"
integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
dependencies:
flatted "^3.2.9"
@@ -6560,25 +6657,25 @@ flat-cache@^3.0.4:
rimraf "^3.0.2"
flatted@^3.2.9:
- version "3.3.1"
- resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz"
- integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.2.tgz#adba1448a9841bec72b42c532ea23dbbedef1a27"
+ integrity sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==
follow-redirects@^1.15.6:
version "1.15.9"
- resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1"
integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==
for-each@^0.3.3:
version "0.3.3"
- resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==
dependencies:
is-callable "^1.1.3"
foreground-child@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53"
integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==
dependencies:
cross-spawn "^7.0.0"
@@ -6586,7 +6683,7 @@ foreground-child@^2.0.0:
foreground-child@^3.1.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.0.tgz#0ac8644c06e431439f8561db8ecf29a7b5519c77"
integrity sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==
dependencies:
cross-spawn "^7.0.0"
@@ -6594,7 +6691,7 @@ foreground-child@^3.1.0:
fork-ts-checker-webpack-plugin@^8.0.0:
version "8.0.0"
- resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-8.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-8.0.0.tgz#dae45dfe7298aa5d553e2580096ced79b6179504"
integrity sha512-mX3qW3idpueT2klaQXBzrIM/pHw+T0B/V9KHEvNrqijTq9NFnMZU6oreVxDYcf33P8a5cW+67PjodNHthGnNVg==
dependencies:
"@babel/code-frame" "^7.16.7"
@@ -6612,26 +6709,40 @@ fork-ts-checker-webpack-plugin@^8.0.0:
form-data@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.1.tgz#ba1076daaaa5bfd7e99c1a6cb02aa0a5cff90d48"
integrity sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==
dependencies:
asynckit "^0.4.0"
combined-stream "^1.0.8"
mime-types "^2.1.12"
+forwarded-parse@2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/forwarded-parse/-/forwarded-parse-2.1.2.tgz#08511eddaaa2ddfd56ba11138eee7df117a09325"
+ integrity sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw==
+
+framer-motion@^11.11.9:
+ version "11.14.4"
+ resolved "https://registry.yarnpkg.com/framer-motion/-/framer-motion-11.14.4.tgz#cb7197107d75ff4592444a83918e31827fcec3b3"
+ integrity sha512-NQuzr9JbeJDMQmy0FFLhLzk9h1kAjVC1tGE/HY4ubF02B95EBm2lpA21LE3Od/OpXqXgp0zl5Hdqu25hliBRsA==
+ dependencies:
+ motion-dom "^11.14.3"
+ motion-utils "^11.14.3"
+ tslib "^2.4.0"
+
fromentries@^1.2.0:
version "1.3.2"
- resolved "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/fromentries/-/fromentries-1.3.2.tgz#e4bca6808816bf8f93b52750f1127f5a6fd86e3a"
integrity sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==
fs-exists-sync@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
integrity sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==
fs-extra@^10.0.0:
version "10.1.0"
- resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
dependencies:
graceful-fs "^4.2.0"
@@ -6640,32 +6751,32 @@ fs-extra@^10.0.0:
fs-monkey@^1.0.4:
version "1.0.6"
- resolved "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.6.tgz#8ead082953e88d992cf3ff844faa907b26756da2"
integrity sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==
fs.realpath@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
fsevents@2.3.2:
version "2.3.2"
- resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
fsevents@^2.3.2, fsevents@~2.3.2:
version "2.3.3"
- resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
function-bind@^1.1.2:
version "1.1.2"
- resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
function.prototype.name@^1.1.6:
version "1.1.6"
- resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd"
integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==
dependencies:
call-bind "^1.0.2"
@@ -6675,83 +6786,93 @@ function.prototype.name@^1.1.6:
functions-have-names@^1.2.3:
version "1.2.3"
- resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
+geist@^1.3.1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/geist/-/geist-1.3.1.tgz#bbd95db23b2a00baf6020e3b1b63a5752f4787d2"
+ integrity sha512-Q4gC1pBVPN+D579pBaz0TRRnGA4p9UK6elDY/xizXdFk/g4EKR5g0I+4p/Kj6gM0SajDBZ/0FvDV9ey9ud7BWw==
+
gensync@^1.0.0-beta.2:
version "1.0.0-beta.2"
- resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz"
+ resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
get-caller-file@^2.0.1, get-caller-file@^2.0.5:
version "2.0.5"
- resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4:
- version "1.2.4"
- resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz"
- integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==
+get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6:
+ version "1.2.6"
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.6.tgz#43dd3dd0e7b49b82b2dfcad10dc824bf7fc265d5"
+ integrity sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==
dependencies:
+ call-bind-apply-helpers "^1.0.1"
+ dunder-proto "^1.0.0"
+ es-define-property "^1.0.1"
es-errors "^1.3.0"
+ es-object-atoms "^1.0.0"
function-bind "^1.1.2"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- hasown "^2.0.0"
+ gopd "^1.2.0"
+ has-symbols "^1.1.0"
+ hasown "^2.0.2"
+ math-intrinsics "^1.0.0"
get-nonce@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3"
integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==
get-package-type@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a"
integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
get-stream@^6.0.0:
version "6.0.1"
- resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
get-symbol-description@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5"
integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==
dependencies:
call-bind "^1.0.5"
es-errors "^1.3.0"
get-intrinsic "^1.2.4"
-get-tsconfig@^4.5.0:
- version "4.7.6"
- resolved "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.6.tgz"
- integrity sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==
+get-tsconfig@^4.7.5:
+ version "4.8.1"
+ resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.8.1.tgz#8995eb391ae6e1638d251118c7b56de7eb425471"
+ integrity sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==
dependencies:
resolve-pkg-maps "^1.0.0"
glob-parent@^5.1.2, glob-parent@~5.1.2:
version "5.1.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
dependencies:
is-glob "^4.0.1"
glob-parent@^6.0.2:
version "6.0.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
dependencies:
is-glob "^4.0.3"
glob-to-regexp@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
glob@^10.3.10:
version "10.4.5"
- resolved "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956"
integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==
dependencies:
foreground-child "^3.1.0"
@@ -6763,7 +6884,7 @@ glob@^10.3.10:
glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
version "7.2.3"
- resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
dependencies:
fs.realpath "^1.0.0"
@@ -6775,7 +6896,7 @@ glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
glob@^9.3.2:
version "9.3.5"
- resolved "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-9.3.5.tgz#ca2ed8ca452781a3009685607fdf025a899dfe21"
integrity sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==
dependencies:
fs.realpath "^1.0.0"
@@ -6785,7 +6906,7 @@ glob@^9.3.2:
global-modules@^0.2.3:
version "0.2.3"
- resolved "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d"
integrity sha512-JeXuCbvYzYXcwE6acL9V2bAOeSIGl4dD+iwLY9iUx2VBJJ80R18HCn+JCwHM9Oegdfya3lEkGCdaRkSyc10hDA==
dependencies:
global-prefix "^0.1.4"
@@ -6793,7 +6914,7 @@ global-modules@^0.2.3:
global-prefix@^0.1.4:
version "0.1.5"
- resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f"
integrity sha512-gOPiyxcD9dJGCEArAhF4Hd0BAqvAe/JzERP7tYumE4yIkmIedPUVXcJFWbV3/p/ovIIvKjkrTk+f1UVkq7vvbw==
dependencies:
homedir-polyfill "^1.0.0"
@@ -6803,91 +6924,105 @@ global-prefix@^0.1.4:
globals@^11.1.0:
version "11.12.0"
- resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
globals@^13.19.0:
version "13.24.0"
- resolved "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171"
integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==
dependencies:
type-fest "^0.20.2"
-globalthis@^1.0.3:
+globalthis@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236"
integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==
dependencies:
define-properties "^1.2.1"
gopd "^1.0.1"
-gopd@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz"
- integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
- dependencies:
- get-intrinsic "^1.1.3"
+gopd@^1.0.1, gopd@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1"
+ integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.9:
version "4.2.11"
- resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
graphemer@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
-has-bigints@^1.0.1, has-bigints@^1.0.2:
+graphql@^16.8.1:
+ version "16.9.0"
+ resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.9.0.tgz#1c310e63f16a49ce1fbb230bd0a000e99f6f115f"
+ integrity sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==
+
+has-bigints@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
has-flag@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
has-flag@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854"
integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
dependencies:
es-define-property "^1.0.0"
-has-proto@^1.0.1, has-proto@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz"
- integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==
+has-proto@^1.0.3:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5"
+ integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==
+ dependencies:
+ dunder-proto "^1.0.0"
-has-symbols@^1.0.2, has-symbols@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz"
- integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
+has-symbols@^1.0.3, has-symbols@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338"
+ integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
has-tostringtag@^1.0.0, has-tostringtag@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc"
integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==
dependencies:
has-symbols "^1.0.3"
-hash-base@^3.0.0, hash-base@~3.0, hash-base@~3.0.4:
- version "3.0.4"
- resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz"
- integrity sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==
+hash-base@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
+ integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==
dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
+ inherits "^2.0.4"
+ readable-stream "^3.6.0"
+ safe-buffer "^5.2.0"
+
+hash-base@~3.0, hash-base@~3.0.4:
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.5.tgz#52480e285395cf7fba17dc4c9e47acdc7f248a8a"
+ integrity sha512-vXm0l45VbcHEVlTCzs8M+s0VeYsB2lnlAaThoLKGXr3bE/VWDOelNUnycUPEhKEaXARL2TEFjBOyUiM6+55KBg==
+ dependencies:
+ inherits "^2.0.4"
+ safe-buffer "^5.2.1"
hash.js@^1.0.0, hash.js@^1.0.3:
version "1.1.7"
- resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
dependencies:
inherits "^2.0.3"
@@ -6895,7 +7030,7 @@ hash.js@^1.0.0, hash.js@^1.0.3:
hasha@^5.0.0:
version "5.2.2"
- resolved "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1"
integrity sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==
dependencies:
is-stream "^2.0.0"
@@ -6903,15 +7038,15 @@ hasha@^5.0.0:
hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
dependencies:
function-bind "^1.1.2"
hast-util-to-jsx-runtime@^2.0.0:
- version "2.3.0"
- resolved "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz"
- integrity sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==
+ version "2.3.2"
+ resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.2.tgz#6d11b027473e69adeaa00ca4cfb5bb68e3d282fa"
+ integrity sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==
dependencies:
"@types/estree" "^1.0.0"
"@types/hast" "^3.0.0"
@@ -6931,19 +7066,24 @@ hast-util-to-jsx-runtime@^2.0.0:
hast-util-whitespace@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621"
integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==
dependencies:
"@types/hast" "^3.0.0"
he@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
+headers-polyfill@^4.0.2:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/headers-polyfill/-/headers-polyfill-4.0.3.tgz#922a0155de30ecc1f785bcf04be77844ca95ad07"
+ integrity sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==
+
hmac-drbg@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==
dependencies:
hash.js "^1.0.3"
@@ -6952,31 +7092,31 @@ hmac-drbg@^1.0.1:
hoist-non-react-statics@^3.3.2:
version "3.3.2"
- resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
dependencies:
react-is "^16.7.0"
homedir-polyfill@^1.0.0:
version "1.0.3"
- resolved "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==
dependencies:
parse-passwd "^1.0.0"
html-entities@^2.1.0:
version "2.5.2"
- resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.5.2.tgz#201a3cf95d3a15be7099521620d19dfb4f65359f"
integrity sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==
html-escaper@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
html-minifier-terser@^6.0.2:
version "6.1.0"
- resolved "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab"
integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==
dependencies:
camel-case "^4.1.2"
@@ -6987,19 +7127,14 @@ html-minifier-terser@^6.0.2:
relateurl "^0.2.7"
terser "^5.10.0"
-html-tags@^3.1.0:
- version "3.3.1"
- resolved "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz"
- integrity sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==
-
html-url-attributes@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/html-url-attributes/-/html-url-attributes-3.0.0.tgz"
- integrity sha512-/sXbVCWayk6GDVg3ctOX6nxaVj7So40FcFAnWlWGNAB1LpYKcV5Cd10APjPjW80O7zYW2MsjBV4zZ7IZO5fVow==
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/html-url-attributes/-/html-url-attributes-3.0.1.tgz#83b052cd5e437071b756cd74ae70f708870c2d87"
+ integrity sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==
html-webpack-plugin@^5.5.0:
version "5.6.3"
- resolved "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz#a31145f0fee4184d53a794f9513147df1e653685"
integrity sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==
dependencies:
"@types/html-minifier-terser" "^6.0.0"
@@ -7010,7 +7145,7 @@ html-webpack-plugin@^5.5.0:
htmlparser2@^3.9.2:
version "3.10.1"
- resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
dependencies:
domelementtype "^1.3.1"
@@ -7022,7 +7157,7 @@ htmlparser2@^3.9.2:
htmlparser2@^6.1.0:
version "6.1.0"
- resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7"
integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==
dependencies:
domelementtype "^2.0.1"
@@ -7032,12 +7167,12 @@ htmlparser2@^6.1.0:
https-browserify@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==
https-proxy-agent@^5.0.0:
version "5.0.1"
- resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6"
integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==
dependencies:
agent-base "6"
@@ -7045,34 +7180,34 @@ https-proxy-agent@^5.0.0:
human-signals@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
icss-utils@^5.0.0, icss-utils@^5.1.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae"
integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==
ieee754@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
ignore@^5.2.0, ignore@^5.3.1:
version "5.3.2"
- resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5"
integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==
image-size@^1.0.0:
version "1.1.1"
- resolved "https://registry.npmjs.org/image-size/-/image-size-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.1.1.tgz#ddd67d4dc340e52ac29ce5f546a09f4e29e840ac"
integrity sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==
dependencies:
queue "6.0.2"
import-fresh@^3.2.1, import-fresh@^3.3.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
dependencies:
parent-module "^1.0.0"
@@ -7080,7 +7215,7 @@ import-fresh@^3.2.1, import-fresh@^3.3.0:
import-in-the-middle@^1.11.2, import-in-the-middle@^1.8.1:
version "1.11.3"
- resolved "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.11.3.tgz"
+ resolved "https://registry.yarnpkg.com/import-in-the-middle/-/import-in-the-middle-1.11.3.tgz#08559f2c05fd65ba7062e747af056ed18a80120c"
integrity sha512-tNpKEb4AjZrCyrxi+Eyu43h5ig0O8ZRFSXPHh/00/o+4P4pKzVEW/m5lsVtsAT7fCIgmQOAPjdqecGDsBXRxsw==
dependencies:
acorn "^8.8.2"
@@ -7090,7 +7225,7 @@ import-in-the-middle@^1.11.2, import-in-the-middle@^1.8.1:
import-local@^3.0.2:
version "3.2.0"
- resolved "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260"
integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==
dependencies:
pkg-dir "^4.2.0"
@@ -7098,17 +7233,17 @@ import-local@^3.0.2:
imurmurhash@^0.1.4:
version "0.1.4"
- resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
+ resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
indent-string@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
inflight@^1.0.4:
version "1.0.6"
- resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
dependencies:
once "^1.3.0"
@@ -7116,22 +7251,22 @@ inflight@^1.0.4:
inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3, inherits@~2.0.4:
version "2.0.4"
- resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
ini@^1.3.4:
version "1.3.8"
- resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
-inline-style-parser@0.2.3:
- version "0.2.3"
- resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz"
- integrity sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==
+inline-style-parser@0.2.4:
+ version "0.2.4"
+ resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22"
+ integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==
internal-slot@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802"
integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==
dependencies:
es-errors "^1.3.0"
@@ -7140,40 +7275,40 @@ internal-slot@^1.0.7:
"internmap@1 - 2":
version "2.0.3"
- resolved "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009"
integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==
invariant@^2.2.4:
version "2.2.4"
- resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
dependencies:
loose-envify "^1.0.0"
is-alphabetical@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b"
integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==
is-alphanumerical@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875"
integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==
dependencies:
is-alphabetical "^2.0.0"
is-decimal "^2.0.0"
is-arguments@^1.0.4:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz"
- integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.2.0.tgz#ad58c6aecf563b78ef2bf04df540da8f5d7d8e1b"
+ integrity sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==
dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
+ call-bound "^1.0.2"
+ has-tostringtag "^1.0.2"
is-array-buffer@^3.0.4:
version "3.0.4"
- resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98"
integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==
dependencies:
call-bind "^1.0.2"
@@ -7181,128 +7316,138 @@ is-array-buffer@^3.0.4:
is-arrayish@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
is-arrayish@^0.3.1:
version "0.3.2"
- resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03"
integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==
is-async-function@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646"
integrity sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==
dependencies:
has-tostringtag "^1.0.0"
-is-bigint@^1.0.1:
- version "1.0.4"
- resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz"
- integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==
+is-bigint@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672"
+ integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==
dependencies:
- has-bigints "^1.0.1"
+ has-bigints "^1.0.2"
is-binary-path@~2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
dependencies:
binary-extensions "^2.0.0"
-is-boolean-object@^1.1.0:
- version "1.1.2"
- resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz"
- integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==
+is-boolean-object@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.1.tgz#c20d0c654be05da4fbc23c562635c019e93daf89"
+ integrity sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==
dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
+ call-bound "^1.0.2"
+ has-tostringtag "^1.0.2"
-is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
+is-bun-module@^1.0.2:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/is-bun-module/-/is-bun-module-1.3.0.tgz#ea4d24fdebfcecc98e81bcbcb506827fee288760"
+ integrity sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==
+ dependencies:
+ semver "^7.6.3"
+
+is-callable@^1.1.3, is-callable@^1.2.7:
version "1.2.7"
- resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
-is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.15.1:
+is-core-module@^2.13.0, is-core-module@^2.15.1:
version "2.15.1"
- resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37"
integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==
dependencies:
hasown "^2.0.2"
is-data-view@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz"
- integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e"
+ integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==
dependencies:
+ call-bound "^1.0.2"
+ get-intrinsic "^1.2.6"
is-typed-array "^1.1.13"
-is-date-object@^1.0.1, is-date-object@^1.0.5:
- version "1.0.5"
- resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz"
- integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
+is-date-object@^1.0.5, is-date-object@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7"
+ integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==
dependencies:
- has-tostringtag "^1.0.0"
+ call-bound "^1.0.2"
+ has-tostringtag "^1.0.2"
is-decimal@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7"
integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==
is-docker@^2.0.0, is-docker@^2.1.1:
version "2.2.1"
- resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
is-extglob@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-is-finalizationregistry@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz"
- integrity sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==
+is-finalizationregistry@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.0.tgz#d74a7d0c5f3578e34a20729e69202e578d495dc2"
+ integrity sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==
dependencies:
- call-bind "^1.0.2"
+ call-bind "^1.0.7"
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
is-generator-fn@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
is-generator-function@^1.0.10, is-generator-function@^1.0.7:
version "1.0.10"
- resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz"
+ resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"
integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==
dependencies:
has-tostringtag "^1.0.0"
is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
version "4.0.3"
- resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
dependencies:
is-extglob "^2.1.1"
is-hexadecimal@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027"
integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==
is-map@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e"
integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==
is-nan@^1.3.2:
version "1.3.2"
- resolved "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.2.tgz#043a54adea31748b55b6cd4e09aadafa69bd9e1d"
integrity sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==
dependencies:
call-bind "^1.0.0"
@@ -7310,109 +7455,115 @@ is-nan@^1.3.2:
is-negative-zero@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747"
integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==
-is-number-object@^1.0.4:
- version "1.0.7"
- resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz"
- integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==
+is-node-process@^1.0.1, is-node-process@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/is-node-process/-/is-node-process-1.2.0.tgz#ea02a1b90ddb3934a19aea414e88edef7e11d134"
+ integrity sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==
+
+is-number-object@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.0.tgz#5a867e9ecc3d294dda740d9f127835857af7eb05"
+ integrity sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==
dependencies:
- has-tostringtag "^1.0.0"
+ call-bind "^1.0.7"
+ has-tostringtag "^1.0.2"
is-number@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
is-path-inside@^3.0.3:
version "3.0.3"
- resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
is-plain-obj@^4.0.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0"
integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==
-is-plain-object@5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz"
- integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
-
is-reference@1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7"
integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==
dependencies:
"@types/estree" "*"
-is-regex@^1.1.4:
- version "1.1.4"
- resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz"
- integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==
+is-regex@^1.1.4, is-regex@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22"
+ integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==
dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
+ call-bound "^1.0.2"
+ gopd "^1.2.0"
+ has-tostringtag "^1.0.2"
+ hasown "^2.0.2"
is-set@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d"
integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==
is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688"
integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==
dependencies:
call-bind "^1.0.7"
is-stream@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
-is-string@^1.0.5, is-string@^1.0.7:
- version "1.0.7"
- resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz"
- integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==
+is-string@^1.0.7, is-string@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.0.tgz#8cb83c5d57311bf8058bc6c8db294711641da45d"
+ integrity sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==
dependencies:
- has-tostringtag "^1.0.0"
+ call-bind "^1.0.7"
+ has-tostringtag "^1.0.2"
-is-symbol@^1.0.2, is-symbol@^1.0.3:
- version "1.0.4"
- resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz"
- integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==
+is-symbol@^1.0.4, is-symbol@^1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634"
+ integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==
dependencies:
- has-symbols "^1.0.2"
+ call-bound "^1.0.2"
+ has-symbols "^1.1.0"
+ safe-regex-test "^1.1.0"
is-typed-array@^1.1.13, is-typed-array@^1.1.3:
version "1.1.13"
- resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz"
+ resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229"
integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==
dependencies:
which-typed-array "^1.1.14"
is-typedarray@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==
is-weakmap@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd"
integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==
is-weakref@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
dependencies:
call-bind "^1.0.2"
is-weakset@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.3.tgz#e801519df8c0c43e12ff2834eead84ec9e624007"
integrity sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==
dependencies:
call-bind "^1.0.7"
@@ -7420,51 +7571,51 @@ is-weakset@^2.0.3:
is-windows@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c"
integrity sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==
is-windows@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
is-wsl@^2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
dependencies:
is-docker "^2.0.0"
isarray@^2.0.5:
version "2.0.5"
- resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723"
integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
isarray@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
isexe@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
version "3.2.2"
- resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756"
integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==
istanbul-lib-hook@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz#8f84c9434888cc6b1d0a9d7092a76d239ebf0cc6"
integrity sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==
dependencies:
append-transform "^2.0.0"
istanbul-lib-instrument@^4.0.0:
version "4.0.3"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d"
integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==
dependencies:
"@babel/core" "^7.7.5"
@@ -7474,7 +7625,7 @@ istanbul-lib-instrument@^4.0.0:
istanbul-lib-instrument@^5.0.4:
version "5.2.1"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d"
integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==
dependencies:
"@babel/core" "^7.12.3"
@@ -7485,7 +7636,7 @@ istanbul-lib-instrument@^5.0.4:
istanbul-lib-instrument@^6.0.0:
version "6.0.3"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz#fa15401df6c15874bcb2105f773325d78c666765"
integrity sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==
dependencies:
"@babel/core" "^7.23.9"
@@ -7496,7 +7647,7 @@ istanbul-lib-instrument@^6.0.0:
istanbul-lib-processinfo@^2.0.2:
version "2.0.3"
- resolved "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz#366d454cd0dcb7eb6e0e419378e60072c8626169"
integrity sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==
dependencies:
archy "^1.0.0"
@@ -7508,7 +7659,7 @@ istanbul-lib-processinfo@^2.0.2:
istanbul-lib-report@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d"
integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==
dependencies:
istanbul-lib-coverage "^3.0.0"
@@ -7517,7 +7668,7 @@ istanbul-lib-report@^3.0.0:
istanbul-lib-source-maps@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
dependencies:
debug "^4.1.1"
@@ -7526,26 +7677,27 @@ istanbul-lib-source-maps@^4.0.0:
istanbul-reports@^3.0.2, istanbul-reports@^3.1.3:
version "3.1.7"
- resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b"
integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==
dependencies:
html-escaper "^2.0.0"
istanbul-lib-report "^3.0.0"
-iterator.prototype@^1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz"
- integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==
+iterator.prototype@^1.1.3:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.4.tgz#4ae6cf98b97fdc717b7e159d79dc25f8fc9482f1"
+ integrity sha512-x4WH0BWmrMmg4oHHl+duwubhrvczGlyuGAZu3nvrf0UXOfPu8IhZObFEr7DE/iv01YgVZrsOiRcqw2srkKEDIA==
dependencies:
- define-properties "^1.2.1"
- get-intrinsic "^1.2.1"
- has-symbols "^1.0.3"
- reflect.getprototypeof "^1.0.4"
- set-function-name "^2.0.1"
+ define-data-property "^1.1.4"
+ es-object-atoms "^1.0.0"
+ get-intrinsic "^1.2.6"
+ has-symbols "^1.1.0"
+ reflect.getprototypeof "^1.0.8"
+ set-function-name "^2.0.2"
jackspeak@^3.1.2:
version "3.4.3"
- resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz"
+ resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a"
integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==
dependencies:
"@isaacs/cliui" "^8.0.2"
@@ -7554,7 +7706,7 @@ jackspeak@^3.1.2:
jest-changed-files@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a"
integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==
dependencies:
execa "^5.0.0"
@@ -7563,7 +7715,7 @@ jest-changed-files@^29.7.0:
jest-circus@^29.6.4, jest-circus@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a"
integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==
dependencies:
"@jest/environment" "^29.7.0"
@@ -7589,7 +7741,7 @@ jest-circus@^29.6.4, jest-circus@^29.7.0:
jest-cli@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995"
integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==
dependencies:
"@jest/core" "^29.7.0"
@@ -7606,7 +7758,7 @@ jest-cli@^29.7.0:
jest-config@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f"
integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==
dependencies:
"@babel/core" "^7.11.6"
@@ -7634,7 +7786,7 @@ jest-config@^29.7.0:
jest-diff@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a"
integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==
dependencies:
chalk "^4.0.0"
@@ -7644,14 +7796,14 @@ jest-diff@^29.7.0:
jest-docblock@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a"
integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==
dependencies:
detect-newline "^3.0.0"
jest-each@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1"
integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==
dependencies:
"@jest/types" "^29.6.3"
@@ -7662,7 +7814,7 @@ jest-each@^29.7.0:
jest-environment-node@^29.6.4, jest-environment-node@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376"
integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==
dependencies:
"@jest/environment" "^29.7.0"
@@ -7674,12 +7826,12 @@ jest-environment-node@^29.6.4, jest-environment-node@^29.7.0:
jest-get-type@^29.6.3:
version "29.6.3"
- resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1"
integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==
jest-haste-map@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104"
integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==
dependencies:
"@jest/types" "^29.6.3"
@@ -7698,7 +7850,7 @@ jest-haste-map@^29.7.0:
jest-junit@^16.0.0:
version "16.0.0"
- resolved "https://registry.npmjs.org/jest-junit/-/jest-junit-16.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-16.0.0.tgz#d838e8c561cf9fdd7eb54f63020777eee4136785"
integrity sha512-A94mmw6NfJab4Fg/BlvVOUXzXgF0XIH6EmTgJ5NDPp4xoKq0Kr7sErb+4Xs9nZvu58pJojz5RFGpqnZYJTrRfQ==
dependencies:
mkdirp "^1.0.4"
@@ -7708,7 +7860,7 @@ jest-junit@^16.0.0:
jest-leak-detector@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728"
integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==
dependencies:
jest-get-type "^29.6.3"
@@ -7716,7 +7868,7 @@ jest-leak-detector@^29.7.0:
jest-matcher-utils@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12"
integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==
dependencies:
chalk "^4.0.0"
@@ -7726,7 +7878,7 @@ jest-matcher-utils@^29.7.0:
jest-message-util@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3"
integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==
dependencies:
"@babel/code-frame" "^7.12.13"
@@ -7741,7 +7893,7 @@ jest-message-util@^29.7.0:
jest-mock@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347"
integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==
dependencies:
"@jest/types" "^29.6.3"
@@ -7750,7 +7902,7 @@ jest-mock@^29.7.0:
jest-playwright-preset@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/jest-playwright-preset/-/jest-playwright-preset-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-playwright-preset/-/jest-playwright-preset-4.0.0.tgz#c3d60cf039b48209cfd2234e6c7694d7ecb1cc7f"
integrity sha512-+dGZ1X2KqtwXaabVjTGxy0a3VzYfvYsWaRcuO8vMhyclHSOpGSI1+5cmlqzzCwQ3+fv0EjkTc7I5aV9lo08dYw==
dependencies:
expect-playwright "^0.8.0"
@@ -7762,12 +7914,12 @@ jest-playwright-preset@^4.0.0:
jest-pnp-resolver@^1.2.2:
version "1.2.3"
- resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e"
integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==
jest-process-manager@^0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/jest-process-manager/-/jest-process-manager-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-process-manager/-/jest-process-manager-0.4.0.tgz#fb05c8e09ad400fd038436004815653bb98f4e8b"
integrity sha512-80Y6snDyb0p8GG83pDxGI/kQzwVTkCxc7ep5FPe/F6JYdvRDhwr6RzRmPSP7SEwuLhxo80lBS/NqOdUIbHIfhw==
dependencies:
"@types/wait-on" "^5.2.0"
@@ -7783,12 +7935,12 @@ jest-process-manager@^0.4.0:
jest-regex-util@^29.0.0, jest-regex-util@^29.6.3:
version "29.6.3"
- resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52"
integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==
jest-resolve-dependencies@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428"
integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==
dependencies:
jest-regex-util "^29.6.3"
@@ -7796,7 +7948,7 @@ jest-resolve-dependencies@^29.7.0:
jest-resolve@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30"
integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==
dependencies:
chalk "^4.0.0"
@@ -7811,7 +7963,7 @@ jest-resolve@^29.7.0:
jest-runner@^29.6.4, jest-runner@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e"
integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==
dependencies:
"@jest/console" "^29.7.0"
@@ -7838,7 +7990,7 @@ jest-runner@^29.6.4, jest-runner@^29.7.0:
jest-runtime@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817"
integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==
dependencies:
"@jest/environment" "^29.7.0"
@@ -7866,14 +8018,14 @@ jest-runtime@^29.7.0:
jest-serializer-html@^7.1.0:
version "7.1.0"
- resolved "https://registry.npmjs.org/jest-serializer-html/-/jest-serializer-html-7.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-serializer-html/-/jest-serializer-html-7.1.0.tgz#0cfea8a03b9b82bc420fd2cb969bd76713a87c08"
integrity sha512-xYL2qC7kmoYHJo8MYqJkzrl/Fdlx+fat4U1AqYg+kafqwcKPiMkOcjWHPKhueuNEgr+uemhGc+jqXYiwCyRyLA==
dependencies:
diffable-html "^4.1.0"
jest-snapshot@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5"
integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==
dependencies:
"@babel/core" "^7.11.6"
@@ -7899,7 +8051,7 @@ jest-snapshot@^29.7.0:
jest-util@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc"
integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==
dependencies:
"@jest/types" "^29.6.3"
@@ -7911,7 +8063,7 @@ jest-util@^29.7.0:
jest-validate@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c"
integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==
dependencies:
"@jest/types" "^29.6.3"
@@ -7923,7 +8075,7 @@ jest-validate@^29.7.0:
jest-watch-typeahead@^2.0.0:
version "2.2.2"
- resolved "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-2.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-2.2.2.tgz#5516d3cd006485caa5cfc9bd1de40f1f8b136abf"
integrity sha512-+QgOFW4o5Xlgd6jGS5X37i08tuuXNW8X0CV9WNFi+3n8ExCIP+E1melYhvYLjv5fE6D0yyzk74vsSO8I6GqtvQ==
dependencies:
ansi-escapes "^6.0.0"
@@ -7936,7 +8088,7 @@ jest-watch-typeahead@^2.0.0:
jest-watcher@^29.0.0, jest-watcher@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2"
integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==
dependencies:
"@jest/test-result" "^29.7.0"
@@ -7950,7 +8102,7 @@ jest-watcher@^29.0.0, jest-watcher@^29.7.0:
jest-worker@^27.4.5:
version "27.5.1"
- resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0"
integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==
dependencies:
"@types/node" "*"
@@ -7959,7 +8111,7 @@ jest-worker@^27.4.5:
jest-worker@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a"
integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==
dependencies:
"@types/node" "*"
@@ -7969,7 +8121,7 @@ jest-worker@^29.7.0:
jest@^29.6.4:
version "29.7.0"
- resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613"
integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==
dependencies:
"@jest/core" "^29.7.0"
@@ -7979,12 +8131,12 @@ jest@^29.6.4:
jiti@^1.20.0, jiti@^1.21.6:
version "1.21.6"
- resolved "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz"
+ resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268"
integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==
joi@^17.11.0:
version "17.13.3"
- resolved "https://registry.npmjs.org/joi/-/joi-17.13.3.tgz"
+ resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.3.tgz#0f5cc1169c999b30d344366d384b12d92558bcec"
integrity sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==
dependencies:
"@hapi/hoek" "^9.3.0"
@@ -7995,12 +8147,12 @@ joi@^17.11.0:
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
js-yaml@^3.13.1:
version "3.14.1"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
dependencies:
argparse "^1.0.7"
@@ -8008,66 +8160,71 @@ js-yaml@^3.13.1:
js-yaml@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
dependencies:
argparse "^2.0.1"
jsdoc-type-pratt-parser@^4.0.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz#ff6b4a3f339c34a6c188cbf50a16087858d22113"
integrity sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==
-jsesc@^3.0.2, jsesc@~3.0.2:
+jsesc@^3.0.2:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d"
+ integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==
+
+jsesc@~3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e"
integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==
json-buffer@3.0.1:
version "3.0.1"
- resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1:
version "2.3.1"
- resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
json-schema-traverse@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
json-schema-traverse@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
json-stable-stringify-without-jsonify@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
json5@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593"
integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==
dependencies:
minimist "^1.2.0"
json5@^2.1.2, json5@^2.2.2, json5@^2.2.3:
version "2.2.3"
- resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
jsonc-parser@^3.2.0:
version "3.3.1"
- resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz#f2a524b4f7fd11e3d791e559977ad60b98b798b4"
integrity sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==
jsonfile@^6.0.1, jsonfile@^6.1.0:
version "6.1.0"
- resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
dependencies:
universalify "^2.0.0"
@@ -8076,7 +8233,7 @@ jsonfile@^6.0.1, jsonfile@^6.1.0:
"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.5:
version "3.3.5"
- resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz"
+ resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a"
integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==
dependencies:
array-includes "^3.1.6"
@@ -8084,33 +8241,42 @@ jsonfile@^6.0.1, jsonfile@^6.1.0:
object.assign "^4.1.4"
object.values "^1.1.6"
+junit-report-builder@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/junit-report-builder/-/junit-report-builder-5.1.1.tgz#e4f34cc78515554b06d1132ce4bf5cb2b6244d39"
+ integrity sha512-ZNOIIGMzqCGcHQEA2Q4rIQQ3Df6gSIfne+X9Rly9Bc2y55KxAZu8iGv+n2pP0bLf0XAOctJZgeloC54hWzCahQ==
+ dependencies:
+ lodash "^4.17.21"
+ make-dir "^3.1.0"
+ xmlbuilder "^15.1.1"
+
keyv@^4.5.3:
version "4.5.4"
- resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz"
+ resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
dependencies:
json-buffer "3.0.1"
kleur@^3.0.3:
version "3.0.3"
- resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
language-subtag-registry@^0.3.20:
version "0.3.23"
- resolved "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz"
+ resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz#23529e04d9e3b74679d70142df3fd2eb6ec572e7"
integrity sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==
language-tags@^1.0.9:
version "1.0.9"
- resolved "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz"
+ resolved "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.9.tgz#1ffdcd0ec0fafb4b1be7f8b11f306ad0f9c08777"
integrity sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==
dependencies:
language-subtag-registry "^0.3.20"
launchdarkly-js-client-sdk@^3.5.0:
version "3.5.0"
- resolved "https://registry.npmjs.org/launchdarkly-js-client-sdk/-/launchdarkly-js-client-sdk-3.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/launchdarkly-js-client-sdk/-/launchdarkly-js-client-sdk-3.5.0.tgz#cb0e3d6fc21e56750aa86fcaf75733d7f510946f"
integrity sha512-3dgxC9S8K2ix6qjdArjZGOJPtAytgfQTuE+vWgjWJK7725rpYbuqbHghIFr5B0+WyWyVBYANldjWd1JdtYLwsw==
dependencies:
escape-string-regexp "^4.0.0"
@@ -8118,7 +8284,7 @@ launchdarkly-js-client-sdk@^3.5.0:
launchdarkly-js-sdk-common@5.4.0:
version "5.4.0"
- resolved "https://registry.npmjs.org/launchdarkly-js-sdk-common/-/launchdarkly-js-sdk-common-5.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/launchdarkly-js-sdk-common/-/launchdarkly-js-sdk-common-5.4.0.tgz#c9787daebe0b583b01d2334218524ea142c85001"
integrity sha512-Kb3SDcB6S0HUpFNBZgtEt0YUV/fVkyg+gODfaOCJQ0Y0ApxLKNmmJBZOrPE2qIdzw536u4BqEjtaJdqJWCEElg==
dependencies:
base64-js "^1.3.0"
@@ -8127,7 +8293,7 @@ launchdarkly-js-sdk-common@5.4.0:
launchdarkly-react-client-sdk@^3.6.0:
version "3.6.0"
- resolved "https://registry.npmjs.org/launchdarkly-react-client-sdk/-/launchdarkly-react-client-sdk-3.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/launchdarkly-react-client-sdk/-/launchdarkly-react-client-sdk-3.6.0.tgz#be825d2423ee6a80bd37a29bc9b523ec2e0d190f"
integrity sha512-tGXc7CNngfwElsoLmvpt81NO+v5gH9xuCdIjYSi9BHlL4wk6mpJpuEJn0Kx8Q3D1mnNzAhX3YdJNXc1pk3fXbg==
dependencies:
hoist-non-react-statics "^3.3.2"
@@ -8136,40 +8302,35 @@ launchdarkly-react-client-sdk@^3.6.0:
leven@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
levn@^0.4.1:
version "0.4.1"
- resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
dependencies:
prelude-ls "^1.2.1"
type-check "~0.4.0"
-lilconfig@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz"
- integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
-
-lilconfig@^3.0.0:
- version "3.1.2"
- resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz"
- integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==
+lilconfig@^3.0.0, lilconfig@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4"
+ integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==
lines-and-columns@^1.1.6:
version "1.2.4"
- resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
loader-runner@^4.2.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1"
integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==
loader-utils@^2.0.0, loader-utils@^2.0.4:
version "2.0.4"
- resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c"
integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==
dependencies:
big.js "^5.2.2"
@@ -8178,87 +8339,87 @@ loader-utils@^2.0.0, loader-utils@^2.0.4:
loader-utils@^3.2.1:
version "3.3.1"
- resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-3.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.3.1.tgz#735b9a19fd63648ca7adbd31c2327dfe281304e5"
integrity sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==
locate-path@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
dependencies:
p-locate "^4.1.0"
locate-path@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
dependencies:
p-locate "^5.0.0"
locate-path@^7.1.0:
version "7.2.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a"
integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==
dependencies:
p-locate "^6.0.0"
lodash.camelcase@^4.3.0:
version "4.3.0"
- resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
lodash.debounce@^4.0.8:
version "4.0.8"
- resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
lodash.flattendeep@^4.4.0:
version "4.4.0"
- resolved "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==
lodash.merge@^4.6.2:
version "4.6.2"
- resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
lodash@^4.17.20, lodash@^4.17.21:
version "4.17.21"
- resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
longest-streak@^3.0.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4"
integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
-loupe@^3.1.0, loupe@^3.1.1:
+loupe@^3.1.0, loupe@^3.1.1, loupe@^3.1.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.1.2.tgz#c86e0696804a02218f2206124c45d8b15291a240"
integrity sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==
lower-case@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28"
integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==
dependencies:
tslib "^2.0.3"
lru-cache@^10.2.0:
version "10.4.3"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119"
integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==
lru-cache@^5.1.1:
version "5.1.1"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
dependencies:
yallist "^3.0.2"
@@ -8270,52 +8431,57 @@ lucide-react@^0.468.0:
lz-string@^1.5.0:
version "1.5.0"
- resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941"
integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==
magic-string@0.30.8:
version "0.30.8"
- resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz"
+ resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.8.tgz#14e8624246d2bedba70d5462aa99ac9681844613"
integrity sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.15"
magic-string@^0.30.3, magic-string@^0.30.5:
- version "0.30.11"
- resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz"
- integrity sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==
+ version "0.30.15"
+ resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.15.tgz#d5474a2c4c5f35f041349edaba8a5cb02733ed3c"
+ integrity sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==
dependencies:
"@jridgewell/sourcemap-codec" "^1.5.0"
-make-dir@^3.0.0, make-dir@^3.0.2:
+make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
dependencies:
semver "^6.0.0"
make-dir@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e"
integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==
dependencies:
semver "^7.5.3"
makeerror@1.0.12:
version "1.0.12"
- resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz"
+ resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a"
integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
dependencies:
tmpl "1.0.5"
map-or-similar@^1.5.0:
version "1.5.0"
- resolved "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08"
integrity sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==
+math-intrinsics@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.0.0.tgz#4e04bf87c85aa51e90d078dac2252b4eb5260817"
+ integrity sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==
+
md5.js@^1.3.4:
version "1.3.5"
- resolved "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz"
+ resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==
dependencies:
hash-base "^3.0.0"
@@ -8323,9 +8489,9 @@ md5.js@^1.3.4:
safe-buffer "^5.1.2"
mdast-util-from-markdown@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz"
- integrity sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz#4850390ca7cf17413a9b9a0fbefcd1bc0eb4160a"
+ integrity sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==
dependencies:
"@types/mdast" "^4.0.0"
"@types/unist" "^3.0.0"
@@ -8341,9 +8507,9 @@ mdast-util-from-markdown@^2.0.0:
unist-util-stringify-position "^4.0.0"
mdast-util-mdx-expression@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.0.tgz"
- integrity sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz#43f0abac9adc756e2086f63822a38c8d3c3a5096"
+ integrity sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==
dependencies:
"@types/estree-jsx" "^1.0.0"
"@types/hast" "^3.0.0"
@@ -8353,9 +8519,9 @@ mdast-util-mdx-expression@^2.0.0:
mdast-util-to-markdown "^2.0.0"
mdast-util-mdx-jsx@^3.0.0:
- version "3.1.2"
- resolved "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.2.tgz"
- integrity sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz#76b957b3da18ebcfd0de3a9b4451dcd6fdec2320"
+ integrity sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==
dependencies:
"@types/estree-jsx" "^1.0.0"
"@types/hast" "^3.0.0"
@@ -8367,13 +8533,12 @@ mdast-util-mdx-jsx@^3.0.0:
mdast-util-to-markdown "^2.0.0"
parse-entities "^4.0.0"
stringify-entities "^4.0.0"
- unist-util-remove-position "^5.0.0"
unist-util-stringify-position "^4.0.0"
vfile-message "^4.0.0"
mdast-util-mdxjs-esm@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz#019cfbe757ad62dd557db35a695e7314bcc9fa97"
integrity sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==
dependencies:
"@types/estree-jsx" "^1.0.0"
@@ -8385,7 +8550,7 @@ mdast-util-mdxjs-esm@^2.0.0:
mdast-util-phrasing@^4.0.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz#7cc0a8dec30eaf04b7b1a9661a92adb3382aa6e3"
integrity sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==
dependencies:
"@types/mdast" "^4.0.0"
@@ -8393,7 +8558,7 @@ mdast-util-phrasing@^4.0.0:
mdast-util-to-hast@^13.0.0:
version "13.2.0"
- resolved "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4"
integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==
dependencies:
"@types/hast" "^3.0.0"
@@ -8407,54 +8572,55 @@ mdast-util-to-hast@^13.0.0:
vfile "^6.0.0"
mdast-util-to-markdown@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz"
- integrity sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz#f910ffe60897f04bb4b7e7ee434486f76288361b"
+ integrity sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==
dependencies:
"@types/mdast" "^4.0.0"
"@types/unist" "^3.0.0"
longest-streak "^3.0.0"
mdast-util-phrasing "^4.0.0"
mdast-util-to-string "^4.0.0"
+ micromark-util-classify-character "^2.0.0"
micromark-util-decode-string "^2.0.0"
unist-util-visit "^5.0.0"
zwitch "^2.0.0"
mdast-util-to-string@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz#7a5121475556a04e7eddeb67b264aae79d312814"
integrity sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==
dependencies:
"@types/mdast" "^4.0.0"
memfs@^3.4.1, memfs@^3.4.12:
- version "3.5.3"
- resolved "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz"
- integrity sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6"
+ integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ==
dependencies:
fs-monkey "^1.0.4"
memoizerific@^1.11.3:
version "1.11.3"
- resolved "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz"
+ resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a"
integrity sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==
dependencies:
map-or-similar "^1.5.0"
merge-stream@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
merge2@^1.3.0:
version "1.4.1"
- resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
micromark-core-commonmark@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz"
- integrity sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-2.0.2.tgz#6a45bbb139e126b3f8b361a10711ccc7c6e15e93"
+ integrity sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==
dependencies:
decode-named-character-reference "^1.0.0"
devlop "^1.0.0"
@@ -8474,18 +8640,18 @@ micromark-core-commonmark@^2.0.0:
micromark-util-types "^2.0.0"
micromark-factory-destination@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz"
- integrity sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz#8fef8e0f7081f0474fbdd92deb50c990a0264639"
+ integrity sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==
dependencies:
micromark-util-character "^2.0.0"
micromark-util-symbol "^2.0.0"
micromark-util-types "^2.0.0"
micromark-factory-label@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz"
- integrity sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz#5267efa97f1e5254efc7f20b459a38cb21058ba1"
+ integrity sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==
dependencies:
devlop "^1.0.0"
micromark-util-character "^2.0.0"
@@ -8493,17 +8659,17 @@ micromark-factory-label@^2.0.0:
micromark-util-types "^2.0.0"
micromark-factory-space@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz"
- integrity sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz#36d0212e962b2b3121f8525fc7a3c7c029f334fc"
+ integrity sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==
dependencies:
micromark-util-character "^2.0.0"
micromark-util-types "^2.0.0"
micromark-factory-title@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz"
- integrity sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz#237e4aa5d58a95863f01032d9ee9b090f1de6e94"
+ integrity sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==
dependencies:
micromark-factory-space "^2.0.0"
micromark-util-character "^2.0.0"
@@ -8511,9 +8677,9 @@ micromark-factory-title@^2.0.0:
micromark-util-types "^2.0.0"
micromark-factory-whitespace@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz"
- integrity sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz#06b26b2983c4d27bfcc657b33e25134d4868b0b1"
+ integrity sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==
dependencies:
micromark-factory-space "^2.0.0"
micromark-util-character "^2.0.0"
@@ -8521,48 +8687,48 @@ micromark-factory-whitespace@^2.0.0:
micromark-util-types "^2.0.0"
micromark-util-character@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz"
- integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz#2f987831a40d4c510ac261e89852c4e9703ccda6"
+ integrity sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==
dependencies:
micromark-util-symbol "^2.0.0"
micromark-util-types "^2.0.0"
micromark-util-chunked@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz"
- integrity sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz#47fbcd93471a3fccab86cff03847fc3552db1051"
+ integrity sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==
dependencies:
micromark-util-symbol "^2.0.0"
micromark-util-classify-character@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz"
- integrity sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz#d399faf9c45ca14c8b4be98b1ea481bced87b629"
+ integrity sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==
dependencies:
micromark-util-character "^2.0.0"
micromark-util-symbol "^2.0.0"
micromark-util-types "^2.0.0"
micromark-util-combine-extensions@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz"
- integrity sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz#2a0f490ab08bff5cc2fd5eec6dd0ca04f89b30a9"
+ integrity sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==
dependencies:
micromark-util-chunked "^2.0.0"
micromark-util-types "^2.0.0"
micromark-util-decode-numeric-character-reference@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz"
- integrity sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz#fcf15b660979388e6f118cdb6bf7d79d73d26fe5"
+ integrity sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==
dependencies:
micromark-util-symbol "^2.0.0"
micromark-util-decode-string@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz"
- integrity sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz#6cb99582e5d271e84efca8e61a807994d7161eb2"
+ integrity sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==
dependencies:
decode-named-character-reference "^1.0.0"
micromark-util-character "^2.0.0"
@@ -8570,42 +8736,42 @@ micromark-util-decode-string@^2.0.0:
micromark-util-symbol "^2.0.0"
micromark-util-encode@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz"
- integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz#0d51d1c095551cfaac368326963cf55f15f540b8"
+ integrity sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==
micromark-util-html-tag-name@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz"
- integrity sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz#e40403096481986b41c106627f98f72d4d10b825"
+ integrity sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==
micromark-util-normalize-identifier@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz"
- integrity sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz#c30d77b2e832acf6526f8bf1aa47bc9c9438c16d"
+ integrity sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==
dependencies:
micromark-util-symbol "^2.0.0"
micromark-util-resolve-all@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz"
- integrity sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz#e1a2d62cdd237230a2ae11839027b19381e31e8b"
+ integrity sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==
dependencies:
micromark-util-types "^2.0.0"
micromark-util-sanitize-uri@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz"
- integrity sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz#ab89789b818a58752b73d6b55238621b7faa8fd7"
+ integrity sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==
dependencies:
micromark-util-character "^2.0.0"
micromark-util-encode "^2.0.0"
micromark-util-symbol "^2.0.0"
micromark-util-subtokenize@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.1.tgz"
- integrity sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.3.tgz#70ffb99a454bd8c913c8b709c3dc97baefb65f96"
+ integrity sha512-VXJJuNxYWSoYL6AJ6OQECCFGhIU2GGHMw8tahogePBrjkG8aCCas3ibkp7RnVOSTClg2is05/R7maAhF1XyQMg==
dependencies:
devlop "^1.0.0"
micromark-util-chunked "^2.0.0"
@@ -8613,19 +8779,19 @@ micromark-util-subtokenize@^2.0.0:
micromark-util-types "^2.0.0"
micromark-util-symbol@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz"
- integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz#e5da494e8eb2b071a0d08fb34f6cefec6c0a19b8"
+ integrity sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==
micromark-util-types@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz"
- integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.1.tgz#a3edfda3022c6c6b55bfb049ef5b75d70af50709"
+ integrity sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==
micromark@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz"
- integrity sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/micromark/-/micromark-4.0.1.tgz#294c2f12364759e5f9e925a767ae3dfde72223ff"
+ integrity sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==
dependencies:
"@types/debug" "^4.0.0"
debug "^4.0.0"
@@ -8647,7 +8813,7 @@ micromark@^4.0.0:
micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.8:
version "4.0.8"
- resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202"
integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
dependencies:
braces "^3.0.3"
@@ -8655,7 +8821,7 @@ micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.8:
miller-rabin@^4.0.0:
version "4.0.1"
- resolved "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==
dependencies:
bn.js "^4.0.0"
@@ -8663,95 +8829,146 @@ miller-rabin@^4.0.0:
mime-db@1.52.0:
version "1.52.0"
- resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31:
version "2.1.35"
- resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
dependencies:
mime-db "1.52.0"
mimic-fn@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
min-indent@^1.0.0, min-indent@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
minimalistic-crypto-utils@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==
minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
dependencies:
brace-expansion "^1.1.7"
minimatch@^8.0.2:
version "8.0.4"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-8.0.4.tgz#847c1b25c014d4e9a7f68aaf63dedd668a626229"
integrity sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==
dependencies:
brace-expansion "^2.0.1"
minimatch@^9.0.4:
version "9.0.5"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5"
integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==
dependencies:
brace-expansion "^2.0.1"
minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8:
version "1.2.8"
- resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
minipass@^4.2.4:
version "4.2.8"
- resolved "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.2.8.tgz#f0010f64393ecfc1d1ccb5f582bcaf45f48e1a3a"
integrity sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==
"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2:
version "7.1.2"
- resolved "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707"
integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==
mkdirp@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
module-details-from-path@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b"
integrity sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==
moment@^2.30.1:
version "2.30.1"
- resolved "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz"
+ resolved "https://registry.yarnpkg.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae"
integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==
+motion-dom@^11.14.3:
+ version "11.14.3"
+ resolved "https://registry.yarnpkg.com/motion-dom/-/motion-dom-11.14.3.tgz#725c72c0f1d0b632e42fdd8d13b69ecf9fe202c0"
+ integrity sha512-lW+D2wBy5vxLJi6aCP0xyxTxlTfiu+b+zcpVbGVFUxotwThqhdpPRSmX8xztAgtZMPMeU0WGVn/k1w4I+TbPqA==
+
+motion-utils@^11.14.3:
+ version "11.14.3"
+ resolved "https://registry.yarnpkg.com/motion-utils/-/motion-utils-11.14.3.tgz#cd4a413463739498411f82abb67b3dd58768b0f8"
+ integrity sha512-Xg+8xnqIJTpr0L/cidfTTBFkvRw26ZtGGuIhA94J9PQ2p4mEa06Xx7QVYZH0BP+EpMSaDlu+q0I0mmvwADPsaQ==
+
ms@^2.1.1, ms@^2.1.3:
version "2.1.3"
- resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
+msw-storybook-addon@^2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/msw-storybook-addon/-/msw-storybook-addon-2.0.4.tgz#ff1f583c95aef5f8c2014299f235e13cdd34dc1b"
+ integrity sha512-rstO8+r01sRMg6PPP7OxM8LG5/6r4+wmp2uapHeHvm9TQQRHvpPXOU/Y9/Somysz8Oi4Ea1aummXH3JlnP2LIA==
+ dependencies:
+ is-node-process "^1.0.1"
+
+msw@^2.5.2:
+ version "2.6.8"
+ resolved "https://registry.yarnpkg.com/msw/-/msw-2.6.8.tgz#0cc4d92526444f958829f3fb263ab55ca7437b1d"
+ integrity sha512-nxXxnH6WALZ9a7rsQp4HU2AaD4iGAiouMmE/MY4al7pXTibgA6OZOuKhmN2WBIM6w9qMKwRtX8p2iOb45B2M/Q==
+ dependencies:
+ "@bundled-es-modules/cookie" "^2.0.1"
+ "@bundled-es-modules/statuses" "^1.0.1"
+ "@bundled-es-modules/tough-cookie" "^0.1.6"
+ "@inquirer/confirm" "^5.0.0"
+ "@mswjs/interceptors" "^0.37.0"
+ "@open-draft/deferred-promise" "^2.2.0"
+ "@open-draft/until" "^2.1.0"
+ "@types/cookie" "^0.6.0"
+ "@types/statuses" "^2.0.4"
+ chalk "^4.1.2"
+ graphql "^16.8.1"
+ headers-polyfill "^4.0.2"
+ is-node-process "^1.2.0"
+ outvariant "^1.4.3"
+ path-to-regexp "^6.3.0"
+ strict-event-emitter "^0.5.1"
+ type-fest "^4.26.1"
+ yargs "^17.7.2"
+
+mustache@^4.0.1:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64"
+ integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==
+
+mute-stream@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-2.0.0.tgz#a5446fc0c512b71c83c44d908d5c7b7b4c493b2b"
+ integrity sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==
+
mz@^2.7.0:
version "2.7.0"
- resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
dependencies:
any-promise "^1.0.0"
@@ -8759,18 +8976,18 @@ mz@^2.7.0:
thenify-all "^1.0.0"
nanoid@^3.3.6, nanoid@^3.3.7:
- version "3.3.7"
- resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz"
- integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
+ version "3.3.8"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.8.tgz#b1be3030bee36aaff18bacb375e5cce521684baf"
+ integrity sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==
natural-compare@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
neo-async@^2.6.2:
version "2.6.2"
- resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
next-themes@^0.4.4:
@@ -8779,11 +8996,11 @@ next-themes@^0.4.4:
integrity sha512-LDQ2qIOJF0VnuVrrMSMLrWGjRMkq+0mpgl6e0juCLqdJ+oo8Q84JRWT6Wh11VDQKkMMe+dVzDKLWs5n87T+PkQ==
next@^14.2.13:
- version "14.2.16"
- resolved "https://registry.npmjs.org/next/-/next-14.2.16.tgz"
- integrity sha512-LcO7WnFu6lYSvCzZoo1dB+IO0xXz5uEv52HF1IUN0IqVTUIZGHuuR10I5efiLadGt+4oZqTcNZyVVEem/TM5nA==
+ version "14.2.20"
+ resolved "https://registry.yarnpkg.com/next/-/next-14.2.20.tgz#99b551d87ca6505ce63074904cb31a35e21dac9b"
+ integrity sha512-yPvIiWsiyVYqJlSQxwmzMIReXn5HxFNq4+tlVQ812N1FbvhmE+fDpIAD7bcS2mGYQwPJ5vAsQouyme2eKsxaug==
dependencies:
- "@next/env" "14.2.16"
+ "@next/env" "14.2.20"
"@swc/helpers" "0.5.5"
busboy "1.6.0"
caniuse-lite "^1.0.30001579"
@@ -8791,19 +9008,19 @@ next@^14.2.13:
postcss "8.4.31"
styled-jsx "5.1.1"
optionalDependencies:
- "@next/swc-darwin-arm64" "14.2.16"
- "@next/swc-darwin-x64" "14.2.16"
- "@next/swc-linux-arm64-gnu" "14.2.16"
- "@next/swc-linux-arm64-musl" "14.2.16"
- "@next/swc-linux-x64-gnu" "14.2.16"
- "@next/swc-linux-x64-musl" "14.2.16"
- "@next/swc-win32-arm64-msvc" "14.2.16"
- "@next/swc-win32-ia32-msvc" "14.2.16"
- "@next/swc-win32-x64-msvc" "14.2.16"
+ "@next/swc-darwin-arm64" "14.2.20"
+ "@next/swc-darwin-x64" "14.2.20"
+ "@next/swc-linux-arm64-gnu" "14.2.20"
+ "@next/swc-linux-arm64-musl" "14.2.20"
+ "@next/swc-linux-x64-gnu" "14.2.20"
+ "@next/swc-linux-x64-musl" "14.2.20"
+ "@next/swc-win32-arm64-msvc" "14.2.20"
+ "@next/swc-win32-ia32-msvc" "14.2.20"
+ "@next/swc-win32-x64-msvc" "14.2.20"
no-case@^3.0.4:
version "3.0.4"
- resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d"
integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==
dependencies:
lower-case "^2.0.2"
@@ -8811,24 +9028,24 @@ no-case@^3.0.4:
node-abort-controller@^3.0.1:
version "3.1.1"
- resolved "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548"
integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==
node-fetch@^2.6.7:
version "2.7.0"
- resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d"
integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==
dependencies:
whatwg-url "^5.0.0"
node-int64@^0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
node-polyfill-webpack-plugin@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.1.tgz#141d86f177103a8517c71d99b7c6a46edbb1bb58"
integrity sha512-ZUMiCnZkP1LF0Th2caY6J/eKKoA0TefpoVa68m/LQU1I/mE8rGt4fNYGgNuCcK+aG8P8P43nbeJ2RqJMOL/Y1A==
dependencies:
assert "^2.0.0"
@@ -8859,38 +9076,38 @@ node-polyfill-webpack-plugin@^2.0.1:
node-preload@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/node-preload/-/node-preload-0.2.1.tgz#c03043bb327f417a18fee7ab7ee57b408a144301"
integrity sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==
dependencies:
process-on-spawn "^1.0.0"
node-releases@^2.0.18:
- version "2.0.18"
- resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz"
- integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==
+ version "2.0.19"
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314"
+ integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==
normalize-path@^3.0.0, normalize-path@~3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
npm-run-path@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
dependencies:
path-key "^3.0.0"
nth-check@^2.0.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d"
integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
dependencies:
boolbase "^1.0.0"
nyc@^15.1.0:
version "15.1.0"
- resolved "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/nyc/-/nyc-15.1.0.tgz#1335dae12ddc87b6e249d5a1994ca4bdaea75f02"
integrity sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==
dependencies:
"@istanbuljs/load-nyc-config" "^1.0.0"
@@ -8923,22 +9140,22 @@ nyc@^15.1.0:
object-assign@^4.0.1, object-assign@^4.1.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
object-hash@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9"
integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==
-object-inspect@^1.13.1:
- version "1.13.2"
- resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz"
- integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==
+object-inspect@^1.13.3:
+ version "1.13.3"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.3.tgz#f14c183de51130243d6d18ae149375ff50ea488a"
+ integrity sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==
object-is@^1.1.5:
version "1.1.6"
- resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07"
integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==
dependencies:
call-bind "^1.0.7"
@@ -8946,12 +9163,12 @@ object-is@^1.1.5:
object-keys@^1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
object.assign@^4.1.4, object.assign@^4.1.5:
version "4.1.5"
- resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0"
integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==
dependencies:
call-bind "^1.0.5"
@@ -8961,7 +9178,7 @@ object.assign@^4.1.4, object.assign@^4.1.5:
object.entries@^1.1.8:
version "1.1.8"
- resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz"
+ resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.8.tgz#bffe6f282e01f4d17807204a24f8edd823599c41"
integrity sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==
dependencies:
call-bind "^1.0.7"
@@ -8970,7 +9187,7 @@ object.entries@^1.1.8:
object.fromentries@^2.0.8:
version "2.0.8"
- resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65"
integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==
dependencies:
call-bind "^1.0.7"
@@ -8980,7 +9197,7 @@ object.fromentries@^2.0.8:
object.groupby@^1.0.3:
version "1.0.3"
- resolved "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e"
integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==
dependencies:
call-bind "^1.0.7"
@@ -8989,7 +9206,7 @@ object.groupby@^1.0.3:
object.values@^1.1.6, object.values@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b"
integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==
dependencies:
call-bind "^1.0.7"
@@ -8998,26 +9215,31 @@ object.values@^1.1.6, object.values@^1.2.0:
objectorarray@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/objectorarray/-/objectorarray-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5"
integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==
+obuf@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
+ integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==
+
once@^1.3.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
dependencies:
wrappy "1"
onetime@^5.1.2:
version "5.1.2"
- resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
dependencies:
mimic-fn "^2.1.0"
open@^8.0.4:
version "8.4.2"
- resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9"
integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==
dependencies:
define-lazy-prop "^2.0.0"
@@ -9026,7 +9248,7 @@ open@^8.0.4:
optionator@^0.9.3:
version "0.9.4"
- resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz"
+ resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734"
integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==
dependencies:
deep-is "^0.1.3"
@@ -9038,71 +9260,76 @@ optionator@^0.9.3:
os-browserify@^0.3.0:
version "0.3.0"
- resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==
os-homedir@^1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==
+outvariant@^1.4.0, outvariant@^1.4.3:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/outvariant/-/outvariant-1.4.3.tgz#221c1bfc093e8fec7075497e7799fdbf43d14873"
+ integrity sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==
+
p-limit@^2.2.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
dependencies:
p-try "^2.0.0"
p-limit@^3.0.2, p-limit@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
dependencies:
yocto-queue "^0.1.0"
p-limit@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644"
integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==
dependencies:
yocto-queue "^1.0.0"
p-locate@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
dependencies:
p-limit "^2.2.0"
p-locate@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
dependencies:
p-limit "^3.0.2"
p-locate@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f"
integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==
dependencies:
p-limit "^4.0.0"
p-map@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d"
integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==
dependencies:
aggregate-error "^3.0.0"
p-try@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
package-hash@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/package-hash/-/package-hash-4.0.0.tgz#3537f654665ec3cc38827387fc904c163c54f506"
integrity sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==
dependencies:
graceful-fs "^4.1.15"
@@ -9111,18 +9338,18 @@ package-hash@^4.0.0:
release-zalgo "^1.0.0"
package-json-from-dist@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz"
- integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505"
+ integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==
pako@~1.0.5:
version "1.0.11"
- resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz"
+ resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
param-case@^3.0.4:
version "3.0.4"
- resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5"
integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==
dependencies:
dot-case "^3.0.4"
@@ -9130,14 +9357,14 @@ param-case@^3.0.4:
parent-module@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
dependencies:
callsites "^3.0.0"
parse-asn1@^5.0.0, parse-asn1@^5.1.7:
version "5.1.7"
- resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz"
+ resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06"
integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==
dependencies:
asn1.js "^4.10.1"
@@ -9148,12 +9375,11 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.7:
safe-buffer "^5.2.1"
parse-entities@^4.0.0:
- version "4.0.1"
- resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz"
- integrity sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.2.tgz#61d46f5ed28e4ee62e9ddc43d6b010188443f159"
+ integrity sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==
dependencies:
"@types/unist" "^2.0.0"
- character-entities "^2.0.0"
character-entities-legacy "^3.0.0"
character-reference-invalid "^2.0.0"
decode-named-character-reference "^1.0.0"
@@ -9163,7 +9389,7 @@ parse-entities@^4.0.0:
parse-json@^5.0.0, parse-json@^5.2.0:
version "5.2.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
dependencies:
"@babel/code-frame" "^7.0.0"
@@ -9173,12 +9399,12 @@ parse-json@^5.0.0, parse-json@^5.2.0:
parse-passwd@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==
pascal-case@^3.1.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb"
integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==
dependencies:
no-case "^3.0.4"
@@ -9186,55 +9412,60 @@ pascal-case@^3.1.2:
path-browserify@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd"
integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==
path-exists@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
path-exists@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7"
integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==
path-is-absolute@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
path-key@^3.0.0, path-key@^3.1.0:
version "3.1.1"
- resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
path-parse@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
path-scurry@^1.11.1, path-scurry@^1.6.1:
version "1.11.1"
- resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz"
+ resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2"
integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==
dependencies:
lru-cache "^10.2.0"
minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
+path-to-regexp@^6.3.0:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4"
+ integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==
+
path-type@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
pathval@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pathval/-/pathval-2.0.0.tgz#7e2550b422601d4f6b8e26f1301bc8f15a741a25"
integrity sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==
pbkdf2@^3.1.2:
version "3.1.2"
- resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==
dependencies:
create-hash "^1.1.2"
@@ -9245,17 +9476,22 @@ pbkdf2@^3.1.2:
pg-int8@1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c"
integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==
+pg-numeric@1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/pg-numeric/-/pg-numeric-1.0.2.tgz#816d9a44026086ae8ae74839acd6a09b0636aa3a"
+ integrity sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==
+
pg-protocol@*:
version "1.7.0"
- resolved "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.7.0.tgz#ec037c87c20515372692edac8b63cf4405448a93"
integrity sha512-hTK/mE36i8fDDhgDFjy6xNOG+LCorxLG3WO17tku+ij6sVHXh1jQUJ8hYAnRhNla4QVD2H8er/FOjc/+EgC6yQ==
pg-types@^2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3"
integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==
dependencies:
pg-int8 "1.0.1"
@@ -9264,81 +9500,94 @@ pg-types@^2.2.0:
postgres-date "~1.0.4"
postgres-interval "^1.1.0"
-picocolors@^1.0.0, picocolors@^1.0.1, picocolors@^1.1.1:
+pg-types@^4.0.1:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-4.0.2.tgz#399209a57c326f162461faa870145bb0f918b76d"
+ integrity sha512-cRL3JpS3lKMGsKaWndugWQoLOCoP+Cic8oseVcbr0qhPzYD5DWXK+RZ9LY9wxRf7RQia4SCwQlXk0q6FCPrVng==
+ dependencies:
+ pg-int8 "1.0.1"
+ pg-numeric "1.0.2"
+ postgres-array "~3.0.1"
+ postgres-bytea "~3.0.0"
+ postgres-date "~2.1.0"
+ postgres-interval "^3.0.0"
+ postgres-range "^1.1.1"
+
+picocolors@^1.0.0, picocolors@^1.1.0, picocolors@^1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1:
version "2.3.1"
- resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
picomatch@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab"
integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==
pify@^2.3.0:
version "2.3.0"
- resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
pirates@^4.0.1, pirates@^4.0.4:
version "4.0.6"
- resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9"
integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==
pkg-dir@^4.1.0, pkg-dir@^4.2.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
dependencies:
find-up "^4.0.0"
pkg-dir@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-7.0.0.tgz#8f0c08d6df4476756c5ff29b3282d0bab7517d11"
integrity sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==
dependencies:
find-up "^6.3.0"
-playwright-core@1.49.0, playwright-core@>=1.2.0:
- version "1.49.0"
- resolved "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.0.tgz"
- integrity sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==
+playwright-core@1.49.1, playwright-core@>=1.2.0:
+ version "1.49.1"
+ resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.49.1.tgz#32c62f046e950f586ff9e35ed490a424f2248015"
+ integrity sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==
-playwright@1.49.0, playwright@^1.14.0:
- version "1.49.0"
- resolved "https://registry.npmjs.org/playwright/-/playwright-1.49.0.tgz"
- integrity sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==
+playwright@1.49.1, playwright@^1.14.0:
+ version "1.49.1"
+ resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.49.1.tgz#830266dbca3008022afa7b4783565db9944ded7c"
+ integrity sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==
dependencies:
- playwright-core "1.49.0"
+ playwright-core "1.49.1"
optionalDependencies:
fsevents "2.3.2"
pnp-webpack-plugin@^1.7.0:
version "1.7.0"
- resolved "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz#65741384f6d8056f36e2255a8d67ffc20866f5c9"
integrity sha512-2Rb3vm+EXble/sMXNSu6eoBx8e79gKqhNq9F5ZWW6ERNCTE/Q0wQNne5541tE5vKjfM8hpNCYL+LGc1YTfI0dg==
dependencies:
ts-pnp "^1.1.6"
polished@^4.2.2:
version "4.3.1"
- resolved "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/polished/-/polished-4.3.1.tgz#5a00ae32715609f83d89f6f31d0f0261c6170548"
integrity sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==
dependencies:
"@babel/runtime" "^7.17.8"
possible-typed-array-names@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f"
integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==
postcss-import@^15.1.0:
version "15.1.0"
- resolved "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70"
integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==
dependencies:
postcss-value-parser "^4.0.0"
@@ -9347,14 +9596,14 @@ postcss-import@^15.1.0:
postcss-js@^4.0.1:
version "4.0.1"
- resolved "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2"
integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==
dependencies:
camelcase-css "^2.0.1"
postcss-load-config@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz#7159dcf626118d33e299f485d6afe4aff7c4a3e3"
integrity sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==
dependencies:
lilconfig "^3.0.0"
@@ -9362,7 +9611,7 @@ postcss-load-config@^4.0.2:
postcss-loader@^8.1.1:
version "8.1.1"
- resolved "https://registry.npmjs.org/postcss-loader/-/postcss-loader-8.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-8.1.1.tgz#2822589e7522927344954acb55bbf26e8b195dfe"
integrity sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==
dependencies:
cosmiconfig "^9.0.0"
@@ -9371,13 +9620,13 @@ postcss-loader@^8.1.1:
postcss-modules-extract-imports@^3.1.0:
version "3.1.0"
- resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002"
integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==
postcss-modules-local-by-default@^4.0.5:
- version "4.1.0"
- resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.1.0.tgz"
- integrity sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368"
+ integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==
dependencies:
icss-utils "^5.0.0"
postcss-selector-parser "^7.0.0"
@@ -9385,28 +9634,28 @@ postcss-modules-local-by-default@^4.0.5:
postcss-modules-scope@^3.2.0:
version "3.2.1"
- resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c"
integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==
dependencies:
postcss-selector-parser "^7.0.0"
postcss-modules-values@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c"
integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==
dependencies:
icss-utils "^5.0.0"
postcss-nested@^6.2.0:
version "6.2.0"
- resolved "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.2.0.tgz#4c2d22ab5f20b9cb61e2c5c5915950784d068131"
integrity sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==
dependencies:
postcss-selector-parser "^6.1.1"
postcss-selector-parser@^6.1.1, postcss-selector-parser@^6.1.2:
version "6.1.2"
- resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de"
integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==
dependencies:
cssesc "^3.0.0"
@@ -9414,7 +9663,7 @@ postcss-selector-parser@^6.1.1, postcss-selector-parser@^6.1.2:
postcss-selector-parser@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.0.0.tgz#41bd8b56f177c093ca49435f65731befe25d6b9c"
integrity sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==
dependencies:
cssesc "^3.0.0"
@@ -9422,12 +9671,12 @@ postcss-selector-parser@^7.0.0:
postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
postcss@8.4.31:
version "8.4.31"
- resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d"
integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==
dependencies:
nanoid "^3.3.6"
@@ -9436,7 +9685,7 @@ postcss@8.4.31:
postcss@^8, postcss@^8.2.14, postcss@^8.4.33, postcss@^8.4.38, postcss@^8.4.47:
version "8.4.49"
- resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.49.tgz#4ea479048ab059ab3ae61d082190fabfd994fe19"
integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==
dependencies:
nanoid "^3.3.7"
@@ -9445,44 +9694,71 @@ postcss@^8, postcss@^8.2.14, postcss@^8.4.33, postcss@^8.4.38, postcss@^8.4.47:
postgres-array@~2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e"
integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==
+postgres-array@~3.0.1:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-3.0.2.tgz#68d6182cb0f7f152a7e60dc6a6889ed74b0a5f98"
+ integrity sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==
+
postgres-bytea@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35"
integrity sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==
+postgres-bytea@~3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-3.0.0.tgz#9048dc461ac7ba70a6a42d109221619ecd1cb089"
+ integrity sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==
+ dependencies:
+ obuf "~1.1.2"
+
postgres-date@~1.0.4:
version "1.0.7"
- resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8"
integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==
+postgres-date@~2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-2.1.0.tgz#b85d3c1fb6fb3c6c8db1e9942a13a3bf625189d0"
+ integrity sha512-K7Juri8gtgXVcDfZttFKVmhglp7epKb1K4pgrkLxehjqkrgPhfG6OO8LHLkfaqkbpjNRnra018XwAr1yQFWGcA==
+
postgres-interval@^1.1.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695"
integrity sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==
dependencies:
xtend "^4.0.0"
+postgres-interval@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-3.0.0.tgz#baf7a8b3ebab19b7f38f07566c7aab0962f0c86a"
+ integrity sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==
+
+postgres-range@^1.1.1:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/postgres-range/-/postgres-range-1.1.4.tgz#a59c5f9520909bcec5e63e8cf913a92e4c952863"
+ integrity sha512-i/hbxIE9803Alj/6ytL7UHQxRvZkI9O4Sy+J3HGc4F4oo/2eQAjTSNJ0bfxyse3bH0nuVesCk+3IRLaMtG3H6w==
+
prelude-ls@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
prettier-plugin-tailwindcss@^0.6.9:
version "0.6.9"
- resolved "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.6.9.tgz"
+ resolved "https://registry.yarnpkg.com/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.6.9.tgz#db84c32918eae9b44e5a5f0aa4d1249cc39fa739"
integrity sha512-r0i3uhaZAXYP0At5xGfJH876W3HHGHDp+LCRUJrs57PBeQ6mYHMwr25KH8NPX44F2yGTvdnH7OqCshlQx183Eg==
prettier@^3.3.3:
- version "3.3.3"
- resolved "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz"
- integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.4.2.tgz#a5ce1fb522a588bf2b78ca44c6e6fe5aa5a2b13f"
+ integrity sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==
pretty-error@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6"
integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==
dependencies:
lodash "^4.17.20"
@@ -9490,7 +9766,7 @@ pretty-error@^4.0.0:
pretty-format@^27.0.2:
version "27.5.1"
- resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e"
integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==
dependencies:
ansi-regex "^5.0.1"
@@ -9499,7 +9775,7 @@ pretty-format@^27.0.2:
pretty-format@^29.7.0:
version "29.7.0"
- resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812"
integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==
dependencies:
"@jest/schemas" "^29.6.3"
@@ -9508,29 +9784,29 @@ pretty-format@^29.7.0:
process-nextick-args@~2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
process-on-spawn@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz"
- integrity sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/process-on-spawn/-/process-on-spawn-1.1.0.tgz#9d5999ba87b3bf0a8acb05322d69f2f5aa4fb763"
+ integrity sha512-JOnOPQ/8TZgjs1JIH/m9ni7FfimjNa/PRx7y/Wb5qdItsnhO0jE4AT7fC0HjC28DUQWDr50dwSYZLdRMlqDq3Q==
dependencies:
fromentries "^1.2.0"
process@^0.11.10:
version "0.11.10"
- resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz"
+ resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
progress@^2.0.3:
version "2.0.3"
- resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
prompts@^2.0.1, prompts@^2.4.1:
version "2.4.2"
- resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
dependencies:
kleur "^3.0.3"
@@ -9538,7 +9814,7 @@ prompts@^2.0.1, prompts@^2.4.1:
prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
version "15.8.1"
- resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
dependencies:
loose-envify "^1.4.0"
@@ -9547,17 +9823,24 @@ prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
property-information@^6.0.0:
version "6.5.0"
- resolved "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec"
integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==
proxy-from-env@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
+psl@^1.1.33:
+ version "1.15.0"
+ resolved "https://registry.yarnpkg.com/psl/-/psl-1.15.0.tgz#bdace31896f1d97cec6a79e8224898ce93d974c6"
+ integrity sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==
+ dependencies:
+ punycode "^2.3.1"
+
public-encrypt@^4.0.3:
version "4.0.3"
- resolved "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"
integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==
dependencies:
bn.js "^4.1.0"
@@ -9569,53 +9852,58 @@ public-encrypt@^4.0.3:
punycode@^1.4.1:
version "1.4.1"
- resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==
-punycode@^2.1.0, punycode@^2.1.1:
+punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1:
version "2.3.1"
- resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
pure-rand@^6.0.0:
version "6.1.0"
- resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2"
integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==
qs@^6.12.3:
- version "6.13.0"
- resolved "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz"
- integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==
+ version "6.13.1"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.1.tgz#3ce5fc72bd3a8171b85c99b93c65dd20b7d1b16e"
+ integrity sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==
dependencies:
side-channel "^1.0.6"
querystring-es3@^0.2.1:
version "0.2.1"
- resolved "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==
+querystringify@^2.1.1:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6"
+ integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==
+
queue-microtask@^1.2.2:
version "1.2.3"
- resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
queue@6.0.2:
version "6.0.2"
- resolved "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.2.tgz#b91525283e2315c7553d2efa18d83e76432fed65"
integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==
dependencies:
inherits "~2.0.3"
randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
dependencies:
safe-buffer "^5.1.0"
randomfill@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"
integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==
dependencies:
randombytes "^2.0.5"
@@ -9623,32 +9911,32 @@ randomfill@^1.0.4:
range-parser@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
react-confetti@^6.1.0:
version "6.1.0"
- resolved "https://registry.npmjs.org/react-confetti/-/react-confetti-6.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/react-confetti/-/react-confetti-6.1.0.tgz#03dc4340d955acd10b174dbf301f374a06e29ce6"
integrity sha512-7Ypx4vz0+g8ECVxr88W9zhcQpbeujJAVqL14ZnXJ3I23mOI9/oBVTQ3dkJhUmB0D6XOtCZEM6N0Gm9PMngkORw==
dependencies:
tween-functions "^1.2.0"
react-day-picker@^9.4.2:
- version "9.4.2"
- resolved "https://registry.yarnpkg.com/react-day-picker/-/react-day-picker-9.4.2.tgz#235f2ce45c0ad0662393879ca00baea6fb93bc5c"
- integrity sha512-qKunVfJ+QWJqdHylZ9TsXSSJzzK9vDLsZ+c80/r+ZwOWqGW8mADwPy1iOBrNcZiAokQ4xrSsPLnWzTRHS4mSsQ==
+ version "9.4.3"
+ resolved "https://registry.yarnpkg.com/react-day-picker/-/react-day-picker-9.4.3.tgz#1b79df40b61e3790dc6633c7a66c9945fc1f350b"
+ integrity sha512-kQmn7lBR6fHCjaDhW6ByzTMeZUgsBSvIKJLaUKq5xTuJcg2UqHiFAjrPLk/owQS/NzsnSgyGL/bhoi0Z7g+r3w==
dependencies:
"@date-fns/tz" "^1.2.0"
date-fns "^4.1.0"
react-docgen-typescript@^2.2.2:
version "2.2.2"
- resolved "https://registry.npmjs.org/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz#4611055e569edc071204aadb20e1c93e1ab1659c"
integrity sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==
react-docgen@^7.0.0:
version "7.1.0"
- resolved "https://registry.npmjs.org/react-docgen/-/react-docgen-7.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-7.1.0.tgz#4b41e557dab939a5157be09ee532fd09c07d99fc"
integrity sha512-APPU8HB2uZnpl6Vt/+0AFoVYgSRtfiP6FLrZgPPTDmqSb2R4qZRbgd0A3VzIFxDt5e+Fozjx79WjLWnF69DK8g==
dependencies:
"@babel/core" "^7.18.9"
@@ -9664,59 +9952,45 @@ react-docgen@^7.0.0:
"react-dom@^16.8.0 || ^17.0.0 || ^18.0.0", react-dom@^18:
version "18.3.1"
- resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4"
integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==
dependencies:
loose-envify "^1.1.0"
scheduler "^0.23.2"
-react-element-to-jsx-string@^15.0.0:
- version "15.0.0"
- resolved "https://registry.npmjs.org/react-element-to-jsx-string/-/react-element-to-jsx-string-15.0.0.tgz"
- integrity sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==
- dependencies:
- "@base2/pretty-print-object" "1.0.1"
- is-plain-object "5.0.0"
- react-is "18.1.0"
-
react-hook-form@^7.54.0:
- version "7.54.0"
- resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.54.0.tgz#46bd9142d65fd16ac064a2bbf4dc0333e2d6840d"
- integrity sha512-PS05+UQy/IdSbJNojBypxAo9wllhHgGmyr8/dyGQcPoiMf3e7Dfb9PWYVRco55bLbxH9S+1yDDJeTdlYCSxO3A==
+ version "7.54.1"
+ resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.54.1.tgz#e99c2a55a5e4859fb47a8f55adf66b34d6ac331d"
+ integrity sha512-PUNzFwQeQ5oHiiTUO7GO/EJXGEtuun2Y1A59rLnZBBj+vNEOWt/3ERTiG1/zt7dVeJEM+4vDX/7XQ/qanuvPMg==
react-icons@^5.4.0:
version "5.4.0"
resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-5.4.0.tgz#443000f6e5123ee1b21ea8c0a716f6e7797f7416"
integrity sha512-7eltJxgVt7X64oHh6wSWNwwbKTCtMfK35hcjvJS0yxEAhPM8oUKdS3+kqaW1vicIltw+kR2unHaa12S9pPALoQ==
-react-is@18.1.0:
- version "18.1.0"
- resolved "https://registry.npmjs.org/react-is/-/react-is-18.1.0.tgz"
- integrity sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==
-
react-is@^16.13.1, react-is@^16.7.0:
version "16.13.1"
- resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
react-is@^17.0.1:
version "17.0.2"
- resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
react-is@^18.0.0, react-is@^18.3.1:
version "18.3.1"
- resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e"
integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==
react-lifecycles-compat@^3.0.0:
version "3.0.4"
- resolved "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
react-markdown@^9.0.1:
version "9.0.1"
- resolved "https://registry.npmjs.org/react-markdown/-/react-markdown-9.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-9.0.1.tgz#c05ddbff67fd3b3f839f8c648e6fb35d022397d1"
integrity sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==
dependencies:
"@types/hast" "^3.0.0"
@@ -9732,7 +10006,7 @@ react-markdown@^9.0.1:
react-modal@^3.16.1:
version "3.16.1"
- resolved "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.16.1.tgz#34018528fc206561b1a5467fc3beeaddafb39b2b"
integrity sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==
dependencies:
exenv "^1.2.0"
@@ -9742,12 +10016,12 @@ react-modal@^3.16.1:
react-refresh@^0.14.0:
version "0.14.2"
- resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz"
+ resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9"
integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==
react-remove-scroll-bar@^2.3.6:
version "2.3.6"
- resolved "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz#3e585e9d163be84a010180b18721e851ac81a29c"
integrity sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==
dependencies:
react-style-singleton "^2.2.1"
@@ -9755,7 +10029,7 @@ react-remove-scroll-bar@^2.3.6:
react-remove-scroll@2.6.0:
version "2.6.0"
- resolved "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.6.0.tgz#fb03a0845d7768a4f1519a99fdb84983b793dc07"
integrity sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ==
dependencies:
react-remove-scroll-bar "^2.3.6"
@@ -9766,15 +10040,15 @@ react-remove-scroll@2.6.0:
react-shepherd@^6.1.6:
version "6.1.6"
- resolved "https://registry.npmjs.org/react-shepherd/-/react-shepherd-6.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/react-shepherd/-/react-shepherd-6.1.6.tgz#2b1c491e2658d57f7ecbc21875f72f0f5ff43a5e"
integrity sha512-tAlrgFh7mTZ9zDXdE7gpIZZjFpimk4ad++g7BeoBSAS9x+nN5g1XQMH2fRZuGcFHAR9cQDCRgO6sbwJ1jmOLJA==
dependencies:
shepherd.js "14.3.0"
react-smooth@^4.0.0:
- version "4.0.1"
- resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.1.tgz"
- integrity sha512-OE4hm7XqR0jNOq3Qmk9mFLyd6p2+j6bvbPJ7qlB7+oo0eNcL2l7WQzG6MBnT3EXY6xzkLMUBec3AfewJdA0J8w==
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/react-smooth/-/react-smooth-4.0.3.tgz#add5c7f607445766bcd871b10b2170318a444454"
+ integrity sha512-PyxIrra8WZWrMRFcCiJsZ+JqFaxEINAt+v/w++wQKQlmO99Eh3+JTLeKApdTsLX2roBdWYXqPsaS8sO4UmdzIg==
dependencies:
fast-equals "^5.0.1"
prop-types "^15.8.1"
@@ -9782,7 +10056,7 @@ react-smooth@^4.0.0:
react-style-singleton@^2.2.1:
version "2.2.1"
- resolved "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.1.tgz#f99e420492b2d8f34d38308ff660b60d0b1205b4"
integrity sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==
dependencies:
get-nonce "^1.0.0"
@@ -9791,7 +10065,7 @@ react-style-singleton@^2.2.1:
react-transition-group@^4.4.5:
version "4.4.5"
- resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz"
+ resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1"
integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==
dependencies:
"@babel/runtime" "^7.5.5"
@@ -9801,21 +10075,21 @@ react-transition-group@^4.4.5:
"react@^16.8.0 || ^17.0.0 || ^18.0.0", react@^18:
version "18.3.1"
- resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891"
integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==
dependencies:
loose-envify "^1.1.0"
read-cache@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==
dependencies:
pify "^2.3.0"
readable-stream@^2.3.8:
version "2.3.8"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
dependencies:
core-util-is "~1.0.0"
@@ -9828,7 +10102,7 @@ readable-stream@^2.3.8:
readable-stream@^3.1.1, readable-stream@^3.5.0, readable-stream@^3.6.0:
version "3.6.2"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
dependencies:
inherits "^2.0.3"
@@ -9837,7 +10111,7 @@ readable-stream@^3.1.1, readable-stream@^3.5.0, readable-stream@^3.6.0:
readable-stream@^4.0.0:
version "4.5.2"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.5.2.tgz#9e7fc4c45099baeed934bff6eb97ba6cf2729e09"
integrity sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==
dependencies:
abort-controller "^3.0.0"
@@ -9848,14 +10122,14 @@ readable-stream@^4.0.0:
readdirp@~3.6.0:
version "3.6.0"
- resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
dependencies:
picomatch "^2.2.1"
recast@^0.23.5:
version "0.23.9"
- resolved "https://registry.npmjs.org/recast/-/recast-0.23.9.tgz"
+ resolved "https://registry.yarnpkg.com/recast/-/recast-0.23.9.tgz#587c5d3a77c2cfcb0c18ccce6da4361528c2587b"
integrity sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==
dependencies:
ast-types "^0.16.1"
@@ -9866,15 +10140,15 @@ recast@^0.23.5:
recharts-scale@^0.4.4:
version "0.4.5"
- resolved "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz"
+ resolved "https://registry.yarnpkg.com/recharts-scale/-/recharts-scale-0.4.5.tgz#0969271f14e732e642fcc5bd4ab270d6e87dd1d9"
integrity sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==
dependencies:
decimal.js-light "^2.4.1"
recharts@^2.14.1:
- version "2.14.1"
- resolved "https://registry.yarnpkg.com/recharts/-/recharts-2.14.1.tgz#8b91bd1e53915b9bc03a262a3d8969663d3195b5"
- integrity sha512-xtWulflkA+/xu4/QClBdtZYN30dbvTHjxjkh5XTMrH/CQ3WGDDPHHa/LLKCbgoqz0z3UaSH2/blV1i6VNMeh1g==
+ version "2.15.0"
+ resolved "https://registry.yarnpkg.com/recharts/-/recharts-2.15.0.tgz#0b77bff57a43885df9769ae649a14cb1a7fe19aa"
+ integrity sha512-cIvMxDfpAmqAmVgc4yb7pgm/O1tmmkl/CjrvXuW+62/+7jj/iF9Ykm+hb/UJt42TREHMyd3gb+pkgoa2MxgDIw==
dependencies:
clsx "^2.0.0"
eventemitter3 "^4.0.1"
@@ -9887,103 +10161,104 @@ recharts@^2.14.1:
redent@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f"
integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
dependencies:
indent-string "^4.0.0"
strip-indent "^3.0.0"
-reflect.getprototypeof@^1.0.4:
- version "1.0.6"
- resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz"
- integrity sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==
+reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.8.tgz#c58afb17a4007b4d1118c07b92c23fca422c5d82"
+ integrity sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==
dependencies:
- call-bind "^1.0.7"
+ call-bind "^1.0.8"
define-properties "^1.2.1"
- es-abstract "^1.23.1"
+ dunder-proto "^1.0.0"
+ es-abstract "^1.23.5"
es-errors "^1.3.0"
get-intrinsic "^1.2.4"
- globalthis "^1.0.3"
- which-builtin-type "^1.1.3"
+ gopd "^1.2.0"
+ which-builtin-type "^1.2.0"
regenerate-unicode-properties@^10.2.0:
version "10.2.0"
- resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0"
integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==
dependencies:
regenerate "^1.4.2"
regenerate@^1.4.2:
version "1.4.2"
- resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
regenerator-runtime@^0.14.0:
version "0.14.1"
- resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
regenerator-transform@^0.15.2:
version "0.15.2"
- resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz"
+ resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4"
integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==
dependencies:
"@babel/runtime" "^7.8.4"
regex-parser@^2.2.11:
version "2.3.0"
- resolved "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.3.0.tgz#4bb61461b1a19b8b913f3960364bb57887f920ee"
integrity sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==
-regexp.prototype.flags@^1.5.2:
- version "1.5.2"
- resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz"
- integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==
+regexp.prototype.flags@^1.5.2, regexp.prototype.flags@^1.5.3:
+ version "1.5.3"
+ resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42"
+ integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==
dependencies:
- call-bind "^1.0.6"
+ call-bind "^1.0.7"
define-properties "^1.2.1"
es-errors "^1.3.0"
- set-function-name "^2.0.1"
+ set-function-name "^2.0.2"
-regexpu-core@^6.1.1:
- version "6.1.1"
- resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.1.1.tgz"
- integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==
+regexpu-core@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.2.0.tgz#0e5190d79e542bf294955dccabae04d3c7d53826"
+ integrity sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==
dependencies:
regenerate "^1.4.2"
regenerate-unicode-properties "^10.2.0"
regjsgen "^0.8.0"
- regjsparser "^0.11.0"
+ regjsparser "^0.12.0"
unicode-match-property-ecmascript "^2.0.0"
unicode-match-property-value-ecmascript "^2.1.0"
regjsgen@^0.8.0:
version "0.8.0"
- resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz"
+ resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab"
integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==
-regjsparser@^0.11.0:
- version "0.11.1"
- resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.11.1.tgz"
- integrity sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==
+regjsparser@^0.12.0:
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc"
+ integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==
dependencies:
jsesc "~3.0.2"
relateurl@^0.2.7:
version "0.2.7"
- resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz"
+ resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==
release-zalgo@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/release-zalgo/-/release-zalgo-1.0.0.tgz#09700b7e5074329739330e535c5a90fb67851730"
integrity sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==
dependencies:
es6-error "^4.0.1"
remark-parse@^11.0.0:
version "11.0.0"
- resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-11.0.0.tgz#aa60743fcb37ebf6b069204eb4da304e40db45a1"
integrity sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==
dependencies:
"@types/mdast" "^4.0.0"
@@ -9992,9 +10267,9 @@ remark-parse@^11.0.0:
unified "^11.0.0"
remark-rehype@^11.0.0:
- version "11.1.0"
- resolved "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz"
- integrity sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==
+ version "11.1.1"
+ resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-11.1.1.tgz#f864dd2947889a11997c0a2667cd6b38f685bca7"
+ integrity sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==
dependencies:
"@types/hast" "^3.0.0"
"@types/mdast" "^4.0.0"
@@ -10004,7 +10279,7 @@ remark-rehype@^11.0.0:
renderkid@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a"
integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==
dependencies:
css-select "^4.1.3"
@@ -10015,17 +10290,17 @@ renderkid@^3.0.0:
require-directory@^2.1.1:
version "2.1.1"
- resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
require-from-string@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
require-in-the-middle@^7.1.1:
version "7.4.0"
- resolved "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/require-in-the-middle/-/require-in-the-middle-7.4.0.tgz#606977820d4b5f9be75e5a108ce34cfed25b3bb4"
integrity sha512-X34iHADNbNDfr6OTStIAHWSAvvKQRYgLO6duASaVf7J2VA3lvmNYboAHOuLC2huav1IwgZJtyEcJCKVzFxOSMQ==
dependencies:
debug "^4.3.5"
@@ -10034,19 +10309,24 @@ require-in-the-middle@^7.1.1:
require-main-filename@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
+requires-port@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
+ integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
+
resolve-cwd@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
dependencies:
resolve-from "^5.0.0"
resolve-dir@^0.1.0:
version "0.1.1"
- resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e"
integrity sha512-QxMPqI6le2u0dCLyiGzgy92kjkkL6zO0XyvHzjdTNH3zM6e5Hz3BwG6+aEyNgiQ5Xz6PwTwgQEj3U50dByPKIA==
dependencies:
expand-tilde "^1.2.2"
@@ -10054,22 +10334,22 @@ resolve-dir@^0.1.0:
resolve-from@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
resolve-from@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
resolve-pkg-maps@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
resolve-url-loader@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz#ee3142fb1f1e0d9db9524d539cfa166e9314f795"
integrity sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==
dependencies:
adjust-sourcemap-loader "^4.0.0"
@@ -10079,13 +10359,13 @@ resolve-url-loader@^5.0.0:
source-map "0.6.1"
resolve.exports@^2.0.0:
- version "2.0.2"
- resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz"
- integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.3.tgz#41955e6f1b4013b7586f873749a635dea07ebe3f"
+ integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==
resolve@1.22.8, resolve@^1.1.7, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.1, resolve@^1.22.4, resolve@^1.22.8:
version "1.22.8"
- resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
dependencies:
is-core-module "^2.13.0"
@@ -10094,7 +10374,7 @@ resolve@1.22.8, resolve@^1.1.7, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.
resolve@^2.0.0-next.5:
version "2.0.0-next.5"
- resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.5.tgz#6b0ec3107e671e52b68cd068ef327173b90dc03c"
integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==
dependencies:
is-core-module "^2.13.0"
@@ -10103,19 +10383,19 @@ resolve@^2.0.0-next.5:
reusify@^1.0.4:
version "1.0.4"
- resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
rimraf@^3.0.0, rimraf@^3.0.2:
version "3.0.2"
- resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
dependencies:
glob "^7.1.3"
ripemd160@^2.0.0, ripemd160@^2.0.1:
version "2.0.2"
- resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
dependencies:
hash-base "^3.0.0"
@@ -10123,81 +10403,82 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
rollup@3.29.5:
version "3.29.5"
- resolved "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz"
+ resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.29.5.tgz#8a2e477a758b520fb78daf04bca4c522c1da8a54"
integrity sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==
optionalDependencies:
fsevents "~2.3.2"
run-parallel@^1.1.9:
version "1.2.0"
- resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
dependencies:
queue-microtask "^1.2.2"
rxjs@^7.8.1:
version "7.8.1"
- resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543"
integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==
dependencies:
tslib "^2.1.0"
safe-array-concat@^1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz"
- integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3"
+ integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==
dependencies:
- call-bind "^1.0.7"
- get-intrinsic "^1.2.4"
- has-symbols "^1.0.3"
+ call-bind "^1.0.8"
+ call-bound "^1.0.2"
+ get-intrinsic "^1.2.6"
+ has-symbols "^1.1.0"
isarray "^2.0.5"
-safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0:
+safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0:
version "5.2.1"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-safe-regex-test@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz"
- integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==
+safe-regex-test@^1.0.3, safe-regex-test@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1"
+ integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==
dependencies:
- call-bind "^1.0.6"
+ call-bound "^1.0.2"
es-errors "^1.3.0"
- is-regex "^1.1.4"
+ is-regex "^1.2.1"
sass-loader@^13.2.0:
version "13.3.3"
- resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-13.3.3.tgz#60df5e858788cffb1a3215e5b92e9cba61e7e133"
integrity sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==
dependencies:
neo-async "^2.6.2"
scheduler@^0.23.2:
version "0.23.2"
- resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz"
+ resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3"
integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==
dependencies:
loose-envify "^1.1.0"
schema-utils@^3.1.1, schema-utils@^3.2.0:
version "3.3.0"
- resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe"
integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==
dependencies:
"@types/json-schema" "^7.0.8"
ajv "^6.12.5"
ajv-keywords "^3.5.2"
-schema-utils@^4.0.0, schema-utils@^4.2.0:
- version "4.2.0"
- resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz"
- integrity sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==
+schema-utils@^4.0.0, schema-utils@^4.2.0, schema-utils@^4.3.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.0.tgz#3b669f04f71ff2dfb5aba7ce2d5a9d79b35622c0"
+ integrity sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==
dependencies:
"@types/json-schema" "^7.0.9"
ajv "^8.9.0"
@@ -10206,29 +10487,29 @@ schema-utils@^4.0.0, schema-utils@^4.2.0:
semver@^6.0.0, semver@^6.3.0, semver@^6.3.1:
version "6.3.1"
- resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
semver@^7.3.5, semver@^7.3.7, semver@^7.5.2, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2, semver@^7.6.3:
version "7.6.3"
- resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143"
integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==
-serialize-javascript@^6.0.1:
+serialize-javascript@^6.0.2:
version "6.0.2"
- resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2"
integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==
dependencies:
randombytes "^2.1.0"
set-blocking@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
-set-function-length@^1.2.1:
+set-function-length@^1.2.2:
version "1.2.2"
- resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449"
integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
dependencies:
define-data-property "^1.1.4"
@@ -10238,9 +10519,9 @@ set-function-length@^1.2.1:
gopd "^1.0.1"
has-property-descriptors "^1.0.2"
-set-function-name@^2.0.1, set-function-name@^2.0.2:
+set-function-name@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985"
integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==
dependencies:
define-data-property "^1.1.4"
@@ -10250,12 +10531,12 @@ set-function-name@^2.0.1, set-function-name@^2.0.2:
setimmediate@^1.0.4:
version "1.0.5"
- resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==
sha.js@^2.4.0, sha.js@^2.4.8:
version "2.4.11"
- resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz"
+ resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
dependencies:
inherits "^2.0.1"
@@ -10263,7 +10544,7 @@ sha.js@^2.4.0, sha.js@^2.4.8:
sharp@^0.33.3:
version "0.33.5"
- resolved "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz"
+ resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.5.tgz#13e0e4130cc309d6a9497596715240b2ec0c594e"
integrity sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==
dependencies:
color "^4.2.3"
@@ -10292,24 +10573,24 @@ sharp@^0.33.3:
shebang-command@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
dependencies:
shebang-regex "^3.0.0"
shebang-regex@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
shell-quote@^1.8.1:
- version "1.8.1"
- resolved "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz"
- integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==
+ version "1.8.2"
+ resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.2.tgz#d2d83e057959d53ec261311e9e9b8f51dcb2934a"
+ integrity sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==
shepherd.js@14.3.0:
version "14.3.0"
- resolved "https://registry.npmjs.org/shepherd.js/-/shepherd.js-14.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/shepherd.js/-/shepherd.js-14.3.0.tgz#32acd1b59efcd6bc42da155bda9a4e36b7cfc97b"
integrity sha512-m73/+dkcPotaGfCnzLJtWJtY7TYSiyeXQ5uRIFs+Ed5HD7kw9tX8vlFbgF6yJ7H5N3z27/i5H3hBWlTw64PeXA==
dependencies:
"@floating-ui/dom" "^1.6.5"
@@ -10318,59 +10599,89 @@ shepherd.js@14.3.0:
shimmer@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337"
integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==
-side-channel@^1.0.4, side-channel@^1.0.6:
- version "1.0.6"
- resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz"
- integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==
+side-channel-list@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad"
+ integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==
dependencies:
- call-bind "^1.0.7"
es-errors "^1.3.0"
- get-intrinsic "^1.2.4"
- object-inspect "^1.13.1"
+ object-inspect "^1.13.3"
+
+side-channel-map@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42"
+ integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==
+ dependencies:
+ call-bound "^1.0.2"
+ es-errors "^1.3.0"
+ get-intrinsic "^1.2.5"
+ object-inspect "^1.13.3"
+
+side-channel-weakmap@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea"
+ integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==
+ dependencies:
+ call-bound "^1.0.2"
+ es-errors "^1.3.0"
+ get-intrinsic "^1.2.5"
+ object-inspect "^1.13.3"
+ side-channel-map "^1.0.1"
+
+side-channel@^1.0.4, side-channel@^1.0.6:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9"
+ integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
+ dependencies:
+ es-errors "^1.3.0"
+ object-inspect "^1.13.3"
+ side-channel-list "^1.0.0"
+ side-channel-map "^1.0.1"
+ side-channel-weakmap "^1.0.2"
signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
version "3.0.7"
- resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
-signal-exit@^4.0.1:
+signal-exit@^4.0.1, signal-exit@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
simple-swizzle@^0.2.2:
version "0.2.2"
- resolved "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a"
integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==
dependencies:
is-arrayish "^0.3.1"
sisteransi@^1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
slash@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
slash@^5.0.0:
version "5.1.0"
- resolved "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-5.1.0.tgz#be3adddcdf09ac38eebe8dcdc7b1a57a75b095ce"
integrity sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==
source-map-js@^1.0.2, source-map-js@^1.2.1:
version "1.2.1"
- resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46"
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
source-map-support@0.5.13:
version "0.5.13"
- resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932"
integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==
dependencies:
buffer-from "^1.0.0"
@@ -10378,7 +10689,7 @@ source-map-support@0.5.13:
source-map-support@~0.5.20:
version "0.5.21"
- resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
dependencies:
buffer-from "^1.0.0"
@@ -10386,22 +10697,22 @@ source-map-support@~0.5.20:
source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1:
version "0.6.1"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
source-map@^0.7.3:
version "0.7.4"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656"
integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==
space-separated-tokens@^2.0.0:
version "2.0.2"
- resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f"
integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==
spawn-wrap@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-2.0.0.tgz#103685b8b8f9b79771318827aa78650a610d457e"
integrity sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==
dependencies:
foreground-child "^2.0.0"
@@ -10413,7 +10724,7 @@ spawn-wrap@^2.0.0:
spawnd@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/spawnd/-/spawnd-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/spawnd/-/spawnd-5.0.0.tgz#ea72200bdc468998e84e1c3e7b914ce85fc1c32c"
integrity sha512-28+AJr82moMVWolQvlAIv3JcYDkjkFTEmfDc503wxrF5l2rQ3dFz6DpbXp3kD4zmgGGldfM4xM4v1sFj/ZaIOA==
dependencies:
exit "^0.1.2"
@@ -10423,38 +10734,48 @@ spawnd@^5.0.0:
sprintf-js@~1.0.2:
version "1.0.3"
- resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
+stable-hash@^0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/stable-hash/-/stable-hash-0.0.4.tgz#55ae7dadc13e4b3faed13601587cec41859b42f7"
+ integrity sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==
+
stack-utils@^2.0.3:
version "2.0.6"
- resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f"
integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==
dependencies:
escape-string-regexp "^2.0.0"
stackframe@^1.3.4:
version "1.3.4"
- resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310"
integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==
stacktrace-parser@^0.1.10:
version "0.1.10"
- resolved "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz"
+ resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz#29fb0cae4e0d0b85155879402857a1639eb6051a"
integrity sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==
dependencies:
type-fest "^0.7.1"
+statuses@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
+ integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
+
storybook@^8.4.5:
- version "8.4.6"
- resolved "https://registry.npmjs.org/storybook/-/storybook-8.4.6.tgz"
- integrity sha512-J6juZSZT2u3PUW0QZYZZYxBq6zU5O0OrkSgkMXGMg/QrS9to9IHmt4FjEMEyACRbXo8POcB/fSXa3VpGe7bv3g==
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/storybook/-/storybook-8.4.7.tgz#a3068787a58074cec1b4197eed1c4427ec644b3f"
+ integrity sha512-RP/nMJxiWyFc8EVMH5gp20ID032Wvk+Yr3lmKidoegto5Iy+2dVQnUoElZb2zpbVXNHWakGuAkfI0dY1Hfp/vw==
dependencies:
- "@storybook/core" "8.4.6"
+ "@storybook/core" "8.4.7"
stream-browserify@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f"
integrity sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==
dependencies:
inherits "~2.0.4"
@@ -10462,7 +10783,7 @@ stream-browserify@^3.0.0:
stream-http@^3.2.0:
version "3.2.0"
- resolved "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-3.2.0.tgz#1872dfcf24cb15752677e40e5c3f9cc1926028b5"
integrity sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==
dependencies:
builtin-status-codes "^3.0.0"
@@ -10472,12 +10793,17 @@ stream-http@^3.2.0:
streamsearch@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
+strict-event-emitter@^0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/strict-event-emitter/-/strict-event-emitter-0.5.1.tgz#1602ece81c51574ca39c6815e09f1a3e8550bd93"
+ integrity sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==
+
string-length@^4.0.1:
version "4.0.2"
- resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a"
integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
dependencies:
char-regex "^1.0.2"
@@ -10485,7 +10811,7 @@ string-length@^4.0.1:
string-length@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-5.0.1.tgz#3d647f497b6e8e8d41e422f7e0b23bc536c8381e"
integrity sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==
dependencies:
char-regex "^2.0.0"
@@ -10493,7 +10819,7 @@ string-length@^5.0.1:
"string-width-cjs@npm:string-width@^4.2.0":
version "4.2.3"
- resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
@@ -10502,7 +10828,7 @@ string-length@^5.0.1:
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
- resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
@@ -10511,7 +10837,7 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
string-width@^5.0.1, string-width@^5.1.2:
version "5.1.2"
- resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
dependencies:
eastasianwidth "^0.2.0"
@@ -10520,7 +10846,7 @@ string-width@^5.0.1, string-width@^5.1.2:
string.prototype.includes@^2.0.1:
version "2.0.1"
- resolved "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz#eceef21283640761a81dbe16d6c7171a4edf7d92"
integrity sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==
dependencies:
call-bind "^1.0.7"
@@ -10529,7 +10855,7 @@ string.prototype.includes@^2.0.1:
string.prototype.matchall@^4.0.11:
version "4.0.11"
- resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz"
+ resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz#1092a72c59268d2abaad76582dccc687c0297e0a"
integrity sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==
dependencies:
call-bind "^1.0.7"
@@ -10547,34 +10873,38 @@ string.prototype.matchall@^4.0.11:
string.prototype.repeat@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz#e90872ee0308b29435aa26275f6e1b762daee01a"
integrity sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
string.prototype.trim@^1.2.9:
- version "1.2.9"
- resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz"
- integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==
+ version "1.2.10"
+ resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81"
+ integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==
dependencies:
- call-bind "^1.0.7"
+ call-bind "^1.0.8"
+ call-bound "^1.0.2"
+ define-data-property "^1.1.4"
define-properties "^1.2.1"
- es-abstract "^1.23.0"
+ es-abstract "^1.23.5"
es-object-atoms "^1.0.0"
+ has-property-descriptors "^1.0.2"
string.prototype.trimend@^1.0.8:
- version "1.0.8"
- resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz"
- integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==
+ version "1.0.9"
+ resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942"
+ integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==
dependencies:
- call-bind "^1.0.7"
+ call-bind "^1.0.8"
+ call-bound "^1.0.2"
define-properties "^1.2.1"
es-object-atoms "^1.0.0"
string.prototype.trimstart@^1.0.8:
version "1.0.8"
- resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde"
integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==
dependencies:
call-bind "^1.0.7"
@@ -10583,21 +10913,21 @@ string.prototype.trimstart@^1.0.8:
string_decoder@^1.1.1, string_decoder@^1.3.0:
version "1.3.0"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
dependencies:
safe-buffer "~5.2.0"
string_decoder@~1.1.1:
version "1.1.1"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
dependencies:
safe-buffer "~5.1.0"
stringify-entities@^4.0.0:
version "4.0.4"
- resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3"
integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==
dependencies:
character-entities-html4 "^2.0.0"
@@ -10605,88 +10935,88 @@ stringify-entities@^4.0.0:
"strip-ansi-cjs@npm:strip-ansi@^6.0.1":
version "6.0.1"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-ansi@^7.0.1, strip-ansi@^7.1.0:
version "7.1.0"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
dependencies:
ansi-regex "^6.0.1"
strip-bom@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
strip-bom@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
strip-final-newline@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
strip-indent@^3.0.0:
version "3.0.0"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
dependencies:
min-indent "^1.0.0"
strip-indent@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-4.0.0.tgz#b41379433dd06f5eae805e21d631e07ee670d853"
integrity sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==
dependencies:
min-indent "^1.0.1"
strip-json-comments@^3.1.1:
version "3.1.1"
- resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
style-loader@^3.3.1:
version "3.3.4"
- resolved "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz"
+ resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.4.tgz#f30f786c36db03a45cbd55b6a70d930c479090e7"
integrity sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==
style-to-object@^1.0.0:
- version "1.0.6"
- resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.6.tgz"
- integrity sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.8.tgz#67a29bca47eaa587db18118d68f9d95955e81292"
+ integrity sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==
dependencies:
- inline-style-parser "0.2.3"
+ inline-style-parser "0.2.4"
styled-jsx@5.1.1:
version "5.1.1"
- resolved "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f"
integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==
dependencies:
client-only "0.0.1"
styled-jsx@^5.1.6:
version "5.1.6"
- resolved "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz"
+ resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.6.tgz#83b90c077e6c6a80f7f5e8781d0f311b2fe41499"
integrity sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==
dependencies:
client-only "0.0.1"
sucrase@^3.35.0:
version "3.35.0"
- resolved "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz"
+ resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263"
integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==
dependencies:
"@jridgewell/gen-mapping" "^0.3.2"
@@ -10699,44 +11029,44 @@ sucrase@^3.35.0:
supports-color@^5.3.0:
version "5.5.0"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
dependencies:
has-flag "^3.0.0"
supports-color@^7.1.0:
version "7.2.0"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
dependencies:
has-flag "^4.0.0"
supports-color@^8.0.0, supports-color@^8.1.1:
version "8.1.1"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
dependencies:
has-flag "^4.0.0"
supports-preserve-symlinks-flag@^1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
tailwind-merge@^2.5.5:
version "2.5.5"
- resolved "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.5.5.tgz"
+ resolved "https://registry.yarnpkg.com/tailwind-merge/-/tailwind-merge-2.5.5.tgz#98167859b856a2a6b8d2baf038ee171b9d814e39"
integrity sha512-0LXunzzAZzo0tEPxV3I297ffKZPlKDrjj7NXphC8V5ak9yHC5zRmxnOe2m/Rd/7ivsOMJe3JZ2JVocoDdQTRBA==
tailwindcss-animate@^1.0.7:
version "1.0.7"
- resolved "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz"
+ resolved "https://registry.yarnpkg.com/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz#318b692c4c42676cc9e67b19b78775742388bef4"
integrity sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==
tailwindcss@^3.4.15:
- version "3.4.15"
- resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.15.tgz"
- integrity sha512-r4MeXnfBmSOuKUWmXe6h2CcyfzJCEk4F0pptO5jlnYSIViUkVmsawj80N5h2lO3gwcmSb4n3PuN+e+GC1Guylw==
+ version "3.4.16"
+ resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.4.16.tgz#35a7c3030844d6000fc271878db4096b6a8d2ec9"
+ integrity sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==
dependencies:
"@alloc/quick-lru" "^5.2.0"
arg "^5.0.2"
@@ -10747,7 +11077,7 @@ tailwindcss@^3.4.15:
glob-parent "^6.0.2"
is-glob "^4.0.3"
jiti "^1.21.6"
- lilconfig "^2.1.0"
+ lilconfig "^3.1.3"
micromatch "^4.0.8"
normalize-path "^3.0.0"
object-hash "^3.0.0"
@@ -10763,24 +11093,24 @@ tailwindcss@^3.4.15:
tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1:
version "2.2.1"
- resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
terser-webpack-plugin@^5.3.1, terser-webpack-plugin@^5.3.10:
- version "5.3.10"
- resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz"
- integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==
+ version "5.3.11"
+ resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz#93c21f44ca86634257cac176f884f942b7ba3832"
+ integrity sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==
dependencies:
- "@jridgewell/trace-mapping" "^0.3.20"
+ "@jridgewell/trace-mapping" "^0.3.25"
jest-worker "^27.4.5"
- schema-utils "^3.1.1"
- serialize-javascript "^6.0.1"
- terser "^5.26.0"
+ schema-utils "^4.3.0"
+ serialize-javascript "^6.0.2"
+ terser "^5.31.1"
-terser@^5.10.0, terser@^5.26.0:
- version "5.33.0"
- resolved "https://registry.npmjs.org/terser/-/terser-5.33.0.tgz"
- integrity sha512-JuPVaB7s1gdFKPKTelwUyRq5Sid2A3Gko2S0PncwdBq7kN9Ti9HPWDQ06MPsEDGsZeVESjKEnyGy68quBk1w6g==
+terser@^5.10.0, terser@^5.31.1:
+ version "5.37.0"
+ resolved "https://registry.yarnpkg.com/terser/-/terser-5.37.0.tgz#38aa66d1cfc43d0638fab54e43ff8a4f72a21ba3"
+ integrity sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==
dependencies:
"@jridgewell/source-map" "^0.3.3"
acorn "^8.8.2"
@@ -10789,7 +11119,7 @@ terser@^5.10.0, terser@^5.26.0:
test-exclude@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
dependencies:
"@istanbuljs/schema" "^0.1.2"
@@ -10798,114 +11128,125 @@ test-exclude@^6.0.0:
text-table@^0.2.0:
version "0.2.0"
- resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
thenify-all@^1.0.0:
version "1.6.0"
- resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz"
+ resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==
dependencies:
thenify ">= 3.1.0 < 4"
"thenify@>= 3.1.0 < 4":
version "3.3.1"
- resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
dependencies:
any-promise "^1.0.0"
third-party-capital@1.0.20:
version "1.0.20"
- resolved "https://registry.npmjs.org/third-party-capital/-/third-party-capital-1.0.20.tgz"
+ resolved "https://registry.yarnpkg.com/third-party-capital/-/third-party-capital-1.0.20.tgz#e218a929a35bf4d2245da9addb8ab978d2f41685"
integrity sha512-oB7yIimd8SuGptespDAZnNkzIz+NWaJCu2RMsbs4Wmp9zSDUM8Nhi3s2OOcqYuv3mN4hitXc8DVx+LyUmbUDiA==
timers-browserify@^2.0.12:
version "2.0.12"
- resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz"
+ resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee"
integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==
dependencies:
setimmediate "^1.0.4"
tiny-invariant@^1.3.1, tiny-invariant@^1.3.3:
version "1.3.3"
- resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127"
integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==
tinyrainbow@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5"
integrity sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==
tinyspy@^3.0.0:
version "3.0.2"
- resolved "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.2.tgz#86dd3cf3d737b15adcf17d7887c84a75201df20a"
integrity sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==
tmpl@1.0.5:
version "1.0.5"
- resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
to-regex-range@^5.0.1:
version "5.0.1"
- resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
dependencies:
is-number "^7.0.0"
+tough-cookie@^4.1.4:
+ version "4.1.4"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36"
+ integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==
+ dependencies:
+ psl "^1.1.33"
+ punycode "^2.1.1"
+ universalify "^0.2.0"
+ url-parse "^1.5.3"
+
tr46@~0.0.3:
version "0.0.3"
- resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
tree-kill@^1.2.2:
version "1.2.2"
- resolved "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc"
integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==
trim-lines@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338"
integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==
trough@^2.0.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f"
integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==
ts-api-utils@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz"
- integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.4.3.tgz#bfc2215fe6528fecab2b0fba570a2e8a4263b064"
+ integrity sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==
ts-dedent@^2.0.0, ts-dedent@^2.2.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.2.0.tgz#39e4bd297cd036292ae2394eb3412be63f563bb5"
integrity sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==
ts-interface-checker@^0.1.9:
version "0.1.13"
- resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz"
+ resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699"
integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==
ts-pnp@^1.1.6:
version "1.2.0"
- resolved "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92"
integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==
tsconfig-paths-webpack-plugin@^4.0.1:
- version "4.1.0"
- resolved "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz"
- integrity sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz#f7459a8ed1dd4cf66ad787aefc3d37fff3cf07fc"
+ integrity sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==
dependencies:
chalk "^4.1.0"
enhanced-resolve "^5.7.0"
+ tapable "^2.2.1"
tsconfig-paths "^4.1.2"
tsconfig-paths@^3.15.0:
version "3.15.0"
- resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4"
integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==
dependencies:
"@types/json5" "^0.0.29"
@@ -10915,7 +11256,7 @@ tsconfig-paths@^3.15.0:
tsconfig-paths@^4.0.0, tsconfig-paths@^4.1.2, tsconfig-paths@^4.2.0:
version "4.2.0"
- resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c"
integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==
dependencies:
json5 "^2.2.2"
@@ -10923,60 +11264,65 @@ tsconfig-paths@^4.0.0, tsconfig-paths@^4.1.2, tsconfig-paths@^4.2.0:
strip-bom "^3.0.0"
tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0:
- version "2.6.3"
- resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz"
- integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==
+ version "2.8.1"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
+ integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
tty-browserify@^0.0.1:
version "0.0.1"
- resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.1.tgz#3f05251ee17904dfd0677546670db9651682b811"
integrity sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==
tween-functions@^1.2.0:
version "1.2.0"
- resolved "https://registry.npmjs.org/tween-functions/-/tween-functions-1.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/tween-functions/-/tween-functions-1.2.0.tgz#1ae3a50e7c60bb3def774eac707acbca73bbc3ff"
integrity sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==
type-check@^0.4.0, type-check@~0.4.0:
version "0.4.0"
- resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
dependencies:
prelude-ls "^1.2.1"
type-detect@4.0.8:
version "4.0.8"
- resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
type-fest@^0.20.2:
version "0.20.2"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
type-fest@^0.21.3:
version "0.21.3"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
type-fest@^0.7.1:
version "0.7.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48"
integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==
type-fest@^0.8.0:
version "0.8.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
-type-fest@^2.14.0, type-fest@^2.19.0, type-fest@~2.19:
+type-fest@^2.14.0, type-fest@^2.19.0:
version "2.19.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b"
integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==
+type-fest@^4.26.1:
+ version "4.30.1"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.30.1.tgz#120b9e15177310ec4e9d5d6f187d86c0f4b55e0e"
+ integrity sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==
+
typed-array-buffer@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3"
integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==
dependencies:
call-bind "^1.0.7"
@@ -10985,7 +11331,7 @@ typed-array-buffer@^1.0.2:
typed-array-byte-length@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67"
integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==
dependencies:
call-bind "^1.0.7"
@@ -10995,9 +11341,9 @@ typed-array-byte-length@^1.0.1:
is-typed-array "^1.1.13"
typed-array-byte-offset@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz"
- integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.3.tgz#3fa9f22567700cc86aaf86a1e7176f74b59600f2"
+ integrity sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==
dependencies:
available-typed-arrays "^1.0.7"
call-bind "^1.0.7"
@@ -11005,34 +11351,35 @@ typed-array-byte-offset@^1.0.2:
gopd "^1.0.1"
has-proto "^1.0.3"
is-typed-array "^1.1.13"
+ reflect.getprototypeof "^1.0.6"
typed-array-length@^1.0.6:
- version "1.0.6"
- resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz"
- integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d"
+ integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==
dependencies:
call-bind "^1.0.7"
for-each "^0.3.3"
gopd "^1.0.1"
- has-proto "^1.0.3"
is-typed-array "^1.1.13"
possible-typed-array-names "^1.0.0"
+ reflect.getprototypeof "^1.0.6"
typedarray-to-buffer@^3.1.5:
version "3.1.5"
- resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz"
+ resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
dependencies:
is-typedarray "^1.0.0"
typescript@^5:
- version "5.5.4"
- resolved "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz"
- integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==
+ version "5.7.2"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.7.2.tgz#3169cf8c4c8a828cde53ba9ecb3d2b1d5dd67be6"
+ integrity sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==
unbox-primitive@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==
dependencies:
call-bind "^1.0.2"
@@ -11042,17 +11389,17 @@ unbox-primitive@^1.0.2:
undici-types@~6.20.0:
version "6.20.0"
- resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz"
+ resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.20.0.tgz#8171bf22c1f588d1554d55bf204bc624af388433"
integrity sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==
unicode-canonical-property-names-ecmascript@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2"
integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==
unicode-match-property-ecmascript@^2.0.0:
version "2.0.0"
- resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3"
integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==
dependencies:
unicode-canonical-property-names-ecmascript "^2.0.0"
@@ -11060,17 +11407,17 @@ unicode-match-property-ecmascript@^2.0.0:
unicode-match-property-value-ecmascript@^2.1.0:
version "2.2.0"
- resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz#a0401aee72714598f739b68b104e4fe3a0cb3c71"
integrity sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==
unicode-property-aliases-ecmascript@^2.0.0:
version "2.1.0"
- resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd"
integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==
unified@^11.0.0:
version "11.0.5"
- resolved "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz"
+ resolved "https://registry.yarnpkg.com/unified/-/unified-11.0.5.tgz#f66677610a5c0a9ee90cab2b8d4d66037026d9e1"
integrity sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==
dependencies:
"@types/unist" "^3.0.0"
@@ -11083,36 +11430,28 @@ unified@^11.0.0:
unist-util-is@^6.0.0:
version "6.0.0"
- resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424"
integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==
dependencies:
"@types/unist" "^3.0.0"
unist-util-position@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4"
integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==
dependencies:
"@types/unist" "^3.0.0"
-unist-util-remove-position@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz"
- integrity sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==
- dependencies:
- "@types/unist" "^3.0.0"
- unist-util-visit "^5.0.0"
-
unist-util-stringify-position@^4.0.0:
version "4.0.0"
- resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2"
integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==
dependencies:
"@types/unist" "^3.0.0"
unist-util-visit-parents@^6.0.0:
version "6.0.1"
- resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815"
integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==
dependencies:
"@types/unist" "^3.0.0"
@@ -11120,21 +11459,26 @@ unist-util-visit-parents@^6.0.0:
unist-util-visit@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6"
integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==
dependencies:
"@types/unist" "^3.0.0"
unist-util-is "^6.0.0"
unist-util-visit-parents "^6.0.0"
+universalify@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0"
+ integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==
+
universalify@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d"
integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==
unplugin@1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/unplugin/-/unplugin-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/unplugin/-/unplugin-1.0.1.tgz#83b528b981cdcea1cad422a12cd02e695195ef3f"
integrity sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==
dependencies:
acorn "^8.8.1"
@@ -11144,30 +11488,38 @@ unplugin@1.0.1:
unplugin@^1.3.1:
version "1.16.0"
- resolved "https://registry.npmjs.org/unplugin/-/unplugin-1.16.0.tgz"
+ resolved "https://registry.yarnpkg.com/unplugin/-/unplugin-1.16.0.tgz#ca0f248bf8798cd752dd02e5b381223b737cef72"
integrity sha512-5liCNPuJW8dqh3+DM6uNM2EI3MLLpCKp/KY+9pB5M2S2SR2qvvDHhKgBOaTWEbZTAws3CXfB0rKTIolWKL05VQ==
dependencies:
acorn "^8.14.0"
webpack-virtual-modules "^0.6.2"
-update-browserslist-db@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz"
- integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==
+update-browserslist-db@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5"
+ integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==
dependencies:
- escalade "^3.1.2"
- picocolors "^1.0.1"
+ escalade "^3.2.0"
+ picocolors "^1.1.0"
uri-js@^4.2.2:
version "4.4.1"
- resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
dependencies:
punycode "^2.1.0"
+url-parse@^1.5.3:
+ version "1.5.10"
+ resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1"
+ integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==
+ dependencies:
+ querystringify "^2.1.1"
+ requires-port "^1.0.0"
+
url@^0.11.0:
version "0.11.4"
- resolved "https://registry.npmjs.org/url/-/url-0.11.4.tgz"
+ resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c"
integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==
dependencies:
punycode "^1.4.1"
@@ -11175,32 +11527,37 @@ url@^0.11.0:
use-callback-ref@^1.3.0:
version "1.3.2"
- resolved "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.2.tgz#6134c7f6ff76e2be0b56c809b17a650c942b1693"
integrity sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==
dependencies:
tslib "^2.0.0"
use-sidecar@^1.1.2:
version "1.1.2"
- resolved "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.1.2.tgz#2f43126ba2d7d7e117aa5855e5d8f0276dfe73c2"
integrity sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==
dependencies:
detect-node-es "^1.1.0"
tslib "^2.0.0"
-use-sync-external-store@1.2.2, use-sync-external-store@^1.2.2:
+use-sync-external-store@1.2.2:
version "1.2.2"
- resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz"
+ resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz#c3b6390f3a30eba13200d2302dcdf1e7b57b2ef9"
integrity sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==
+use-sync-external-store@^1.2.2:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz#adbc795d8eeb47029963016cefdf89dc799fcebc"
+ integrity sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==
+
util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
version "1.0.2"
- resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
util@^0.12.4, util@^0.12.5:
version "0.12.5"
- resolved "https://registry.npmjs.org/util/-/util-0.12.5.tgz"
+ resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc"
integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==
dependencies:
inherits "^2.0.3"
@@ -11211,27 +11568,27 @@ util@^0.12.4, util@^0.12.5:
utila@~0.4:
version "0.4.0"
- resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==
uuid@^11.0.3:
version "11.0.3"
- resolved "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-11.0.3.tgz#248451cac9d1a4a4128033e765d137e2b2c49a3d"
integrity sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==
uuid@^8.0.0, uuid@^8.3.2:
version "8.3.2"
- resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
uuid@^9.0.0:
version "9.0.1"
- resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30"
integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==
v8-to-istanbul@^9.0.1:
version "9.3.0"
- resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175"
integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==
dependencies:
"@jridgewell/trace-mapping" "^0.3.12"
@@ -11240,24 +11597,23 @@ v8-to-istanbul@^9.0.1:
vfile-message@^4.0.0:
version "4.0.2"
- resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.2.tgz#c883c9f677c72c166362fd635f21fc165a7d1181"
integrity sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==
dependencies:
"@types/unist" "^3.0.0"
unist-util-stringify-position "^4.0.0"
vfile@^6.0.0:
- version "6.0.2"
- resolved "https://registry.npmjs.org/vfile/-/vfile-6.0.2.tgz"
- integrity sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab"
+ integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==
dependencies:
"@types/unist" "^3.0.0"
- unist-util-stringify-position "^4.0.0"
vfile-message "^4.0.0"
victory-vendor@^36.6.8:
version "36.9.2"
- resolved "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz"
+ resolved "https://registry.yarnpkg.com/victory-vendor/-/victory-vendor-36.9.2.tgz#668b02a448fa4ea0f788dbf4228b7e64669ff801"
integrity sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==
dependencies:
"@types/d3-array" "^3.0.3"
@@ -11277,12 +11633,12 @@ victory-vendor@^36.6.8:
vm-browserify@^1.1.2:
version "1.1.2"
- resolved "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz"
+ resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
wait-on@^7.0.0:
version "7.2.0"
- resolved "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-7.2.0.tgz#d76b20ed3fc1e2bebc051fae5c1ff93be7892928"
integrity sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==
dependencies:
axios "^1.6.1"
@@ -11293,7 +11649,7 @@ wait-on@^7.0.0:
wait-port@^0.2.9:
version "0.2.14"
- resolved "https://registry.npmjs.org/wait-port/-/wait-port-0.2.14.tgz"
+ resolved "https://registry.yarnpkg.com/wait-port/-/wait-port-0.2.14.tgz#6df40629be2c95aa4073ceb895abef7d872b28c6"
integrity sha512-kIzjWcr6ykl7WFbZd0TMae8xovwqcqbx6FM9l+7agOgUByhzdjfzZBPK2CPufldTOMxbUivss//Sh9MFawmPRQ==
dependencies:
chalk "^2.4.2"
@@ -11302,21 +11658,21 @@ wait-port@^0.2.9:
walker@^1.0.8:
version "1.0.8"
- resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
dependencies:
makeerror "1.0.12"
warning@^4.0.3:
version "4.0.3"
- resolved "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==
dependencies:
loose-envify "^1.0.0"
watchpack@^2.4.1:
version "2.4.2"
- resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz"
+ resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.2.tgz#2feeaed67412e7c33184e5a79ca738fbd38564da"
integrity sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==
dependencies:
glob-to-regexp "^0.4.1"
@@ -11324,12 +11680,12 @@ watchpack@^2.4.1:
webidl-conversions@^3.0.0:
version "3.0.1"
- resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==
webpack-dev-middleware@^6.1.2:
version "6.1.3"
- resolved "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-6.1.3.tgz#79f4103f8c898564c9e96c3a9c2422de50f249bc"
integrity sha512-A4ChP0Qj8oGociTs6UdlRUGANIGrCDL3y+pmQMc+dSsraXHCatFpmMey4mYELA+juqwUqwQsUgJJISXl1KWmiw==
dependencies:
colorette "^2.0.10"
@@ -11340,7 +11696,7 @@ webpack-dev-middleware@^6.1.2:
webpack-hot-middleware@^2.25.1:
version "2.26.1"
- resolved "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.26.1.tgz"
+ resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.26.1.tgz#87214f1e3f9f3acab9271fef9e6ed7b637d719c0"
integrity sha512-khZGfAeJx6I8K9zKohEWWYN6KDlVw2DHownoe+6Vtwj1LP9WFgegXnVMSkZ/dBEBtXFwrkkydsaPFlB7f8wU2A==
dependencies:
ansi-html-community "0.0.8"
@@ -11349,31 +11705,31 @@ webpack-hot-middleware@^2.25.1:
webpack-sources@^3.2.3:
version "3.2.3"
- resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde"
integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
webpack-virtual-modules@^0.5.0:
version "0.5.0"
- resolved "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz"
+ resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz#362f14738a56dae107937ab98ea7062e8bdd3b6c"
integrity sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==
webpack-virtual-modules@^0.6.0, webpack-virtual-modules@^0.6.2:
version "0.6.2"
- resolved "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz"
+ resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz#057faa9065c8acf48f24cb57ac0e77739ab9a7e8"
integrity sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==
webpack@5:
- version "5.94.0"
- resolved "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz"
- integrity sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==
+ version "5.97.1"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.97.1.tgz#972a8320a438b56ff0f1d94ade9e82eac155fa58"
+ integrity sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==
dependencies:
- "@types/estree" "^1.0.5"
- "@webassemblyjs/ast" "^1.12.1"
- "@webassemblyjs/wasm-edit" "^1.12.1"
- "@webassemblyjs/wasm-parser" "^1.12.1"
- acorn "^8.7.1"
- acorn-import-attributes "^1.9.5"
- browserslist "^4.21.10"
+ "@types/eslint-scope" "^3.7.7"
+ "@types/estree" "^1.0.6"
+ "@webassemblyjs/ast" "^1.14.1"
+ "@webassemblyjs/wasm-edit" "^1.14.1"
+ "@webassemblyjs/wasm-parser" "^1.14.1"
+ acorn "^8.14.0"
+ browserslist "^4.24.0"
chrome-trace-event "^1.0.2"
enhanced-resolve "^5.17.1"
es-module-lexer "^1.2.1"
@@ -11393,44 +11749,45 @@ webpack@5:
whatwg-url@^5.0.0:
version "5.0.0"
- resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==
dependencies:
tr46 "~0.0.3"
webidl-conversions "^3.0.0"
-which-boxed-primitive@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz"
- integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==
+which-boxed-primitive@^1.0.2, which-boxed-primitive@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.0.tgz#2d850d6c4ac37b95441a67890e19f3fda8b6c6d9"
+ integrity sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==
dependencies:
- is-bigint "^1.0.1"
- is-boolean-object "^1.1.0"
- is-number-object "^1.0.4"
- is-string "^1.0.5"
- is-symbol "^1.0.3"
+ is-bigint "^1.1.0"
+ is-boolean-object "^1.2.0"
+ is-number-object "^1.1.0"
+ is-string "^1.1.0"
+ is-symbol "^1.1.0"
-which-builtin-type@^1.1.3:
- version "1.1.4"
- resolved "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz"
- integrity sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==
+which-builtin-type@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e"
+ integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==
dependencies:
+ call-bound "^1.0.2"
function.prototype.name "^1.1.6"
has-tostringtag "^1.0.2"
is-async-function "^2.0.0"
- is-date-object "^1.0.5"
- is-finalizationregistry "^1.0.2"
+ is-date-object "^1.1.0"
+ is-finalizationregistry "^1.1.0"
is-generator-function "^1.0.10"
- is-regex "^1.1.4"
+ is-regex "^1.2.1"
is-weakref "^1.0.2"
isarray "^2.0.5"
- which-boxed-primitive "^1.0.2"
+ which-boxed-primitive "^1.1.0"
which-collection "^1.0.2"
- which-typed-array "^1.1.15"
+ which-typed-array "^1.1.16"
which-collection@^1.0.2:
version "1.0.2"
- resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0"
integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==
dependencies:
is-map "^2.0.3"
@@ -11440,13 +11797,13 @@ which-collection@^1.0.2:
which-module@^2.0.0:
version "2.0.1"
- resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409"
integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==
-which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.2:
- version "1.1.15"
- resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz"
- integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==
+which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.16, which-typed-array@^1.1.2:
+ version "1.1.16"
+ resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.16.tgz#db4db429c4706feca2f01677a144278e4a8c216b"
+ integrity sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==
dependencies:
available-typed-arrays "^1.0.7"
call-bind "^1.0.7"
@@ -11456,26 +11813,26 @@ which-typed-array@^1.1.14, which-typed-array@^1.1.15, which-typed-array@^1.1.2:
which@^1.2.12:
version "1.3.1"
- resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz"
+ resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
dependencies:
isexe "^2.0.0"
which@^2.0.1, which@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
dependencies:
isexe "^2.0.0"
word-wrap@^1.2.5:
version "1.2.5"
- resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz"
+ resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34"
integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==
"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0":
version "7.0.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
dependencies:
ansi-styles "^4.0.0"
@@ -11484,7 +11841,7 @@ word-wrap@^1.2.5:
wrap-ansi@^6.2.0:
version "6.2.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
dependencies:
ansi-styles "^4.0.0"
@@ -11493,7 +11850,7 @@ wrap-ansi@^6.2.0:
wrap-ansi@^7.0.0:
version "7.0.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
dependencies:
ansi-styles "^4.0.0"
@@ -11502,7 +11859,7 @@ wrap-ansi@^7.0.0:
wrap-ansi@^8.1.0:
version "8.1.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
dependencies:
ansi-styles "^6.1.0"
@@ -11511,12 +11868,12 @@ wrap-ansi@^8.1.0:
wrappy@1:
version "1.0.2"
- resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
write-file-atomic@^3.0.0:
version "3.0.3"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
dependencies:
imurmurhash "^0.1.4"
@@ -11526,7 +11883,7 @@ write-file-atomic@^3.0.0:
write-file-atomic@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd"
integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==
dependencies:
imurmurhash "^0.1.4"
@@ -11534,47 +11891,52 @@ write-file-atomic@^4.0.2:
ws@^8.18.0, ws@^8.2.3:
version "8.18.0"
- resolved "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc"
integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==
xml@^1.0.1:
version "1.0.1"
- resolved "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5"
integrity sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==
+xmlbuilder@^15.1.1:
+ version "15.1.1"
+ resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5"
+ integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==
+
xtend@^4.0.0, xtend@^4.0.2:
version "4.0.2"
- resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
y18n@^4.0.0:
version "4.0.3"
- resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf"
integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==
y18n@^5.0.5:
version "5.0.8"
- resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
yallist@^3.0.2:
version "3.1.1"
- resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
yaml@^1.10.0:
version "1.10.2"
- resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
yaml@^2.3.4:
- version "2.5.0"
- resolved "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz"
- integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==
+ version "2.6.1"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.6.1.tgz#42f2b1ba89203f374609572d5349fb8686500773"
+ integrity sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==
yargs-parser@^18.1.2:
version "18.1.3"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0"
integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==
dependencies:
camelcase "^5.0.0"
@@ -11582,12 +11944,12 @@ yargs-parser@^18.1.2:
yargs-parser@^21.1.1:
version "21.1.1"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
yargs@^15.0.2:
version "15.4.1"
- resolved "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8"
integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==
dependencies:
cliui "^6.0.0"
@@ -11604,7 +11966,7 @@ yargs@^15.0.2:
yargs@^17.3.1, yargs@^17.7.2:
version "17.7.2"
- resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"
integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
dependencies:
cliui "^8.0.1"
@@ -11617,27 +11979,32 @@ yargs@^17.3.1, yargs@^17.7.2:
yocto-queue@^0.1.0:
version "0.1.0"
- resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
yocto-queue@^1.0.0:
version "1.1.1"
- resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.1.1.tgz#fef65ce3ac9f8a32ceac5a634f74e17e5b232110"
integrity sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==
+yoctocolors-cjs@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz#f4b905a840a37506813a7acaa28febe97767a242"
+ integrity sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==
+
zod@^3.23.8:
- version "3.23.8"
- resolved "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz"
- integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==
+ version "3.24.1"
+ resolved "https://registry.yarnpkg.com/zod/-/zod-3.24.1.tgz#27445c912738c8ad1e9de1bea0359fa44d9d35ee"
+ integrity sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==
zustand@^4.4.0:
version "4.5.5"
- resolved "https://registry.npmjs.org/zustand/-/zustand-4.5.5.tgz"
+ resolved "https://registry.yarnpkg.com/zustand/-/zustand-4.5.5.tgz#f8c713041543715ec81a2adda0610e1dc82d4ad1"
integrity sha512-+0PALYNJNgK6hldkgDq2vLrw5f6g/jCInz52n9RTpropGgeAf/ioFUCdtsjCqu4gNhW9D01rUQBROoRjdzyn2Q==
dependencies:
use-sync-external-store "1.2.2"
zwitch@^2.0.0:
version "2.0.4"
- resolved "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz"
+ resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7"
integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==
diff --git a/autogpt_platform/market/Dockerfile b/autogpt_platform/market/Dockerfile
index 2ea9c17dd2..dbd12565db 100644
--- a/autogpt_platform/market/Dockerfile
+++ b/autogpt_platform/market/Dockerfile
@@ -6,17 +6,21 @@ ENV PYTHONUNBUFFERED 1
WORKDIR /app
+RUN echo 'Acquire::http::Pipeline-Depth 0;\nAcquire::http::No-Cache true;\nAcquire::BrokenProxy true;\n' > /etc/apt/apt.conf.d/99fixbadproxy
+
+RUN apt-get update --allow-releaseinfo-change --fix-missing
+
# Install build dependencies
-RUN apt-get update \
- && apt-get install -y build-essential curl ffmpeg wget libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev postgresql-client git \
- && apt-get clean \
- && rm -rf /var/lib/apt/lists/*
+RUN apt-get install -y build-essential
+RUN apt-get install -y libpq5
+RUN apt-get install -y libz-dev
+RUN apt-get install -y libssl-dev
ENV POETRY_VERSION=1.8.3 \
POETRY_HOME="/opt/poetry" \
POETRY_NO_INTERACTION=1 \
- POETRY_VIRTUALENVS_CREATE=false \
- PATH="$POETRY_HOME/bin:$PATH"
+ POETRY_VIRTUALENVS_CREATE=false
+ENV PATH="$POETRY_HOME/bin:$PATH"
# Upgrade pip and setuptools to fix security vulnerabilities
RUN pip3 install --upgrade pip setuptools