From 63723f7b2cb01e91a6dace483ac8071772944110 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 7 May 2024 11:57:03 +0100 Subject: [PATCH 01/44] [BugFix] Remove `Literal[None,...]` (#6371) * remove Literal[None,...] * pylint: disable=unused-argument * change to Filesystem 1K-blocks Used Available Use% Mounted on tmpfs 3257224 3044 3254180 1% /run /dev/nvme0n1p5 491732848 290872352 175808336 63% / tmpfs 16286112 81500 16204612 1% /dev/shm tmpfs 5120 8 5112 1% /run/lock efivarfs 246 66 176 28% /sys/firmware/efi/efivars tmpfs 16286112 0 16286112 0% /run/qemu /dev/nvme0n1p1 262144 60008 202136 23% /boot/efi tmpfs 3257220 15056 3242164 1% /run/user/1000 to avoid misleading linting attr errors --- .../openbb_cboe/models/index_snapshots.py | 24 +++++----- .../fred/openbb_fred/models/search.py | 4 +- .../fred/openbb_fred/models/series.py | 45 ++++++++++--------- .../models/treasury_prices.py | 2 +- .../openbb_polygon/models/cash_flow.py | 8 ++-- .../tmx/openbb_tmx/models/index_snapshots.py | 2 +- 6 files changed, 44 insertions(+), 41 deletions(-) diff --git a/openbb_platform/providers/cboe/openbb_cboe/models/index_snapshots.py b/openbb_platform/providers/cboe/openbb_cboe/models/index_snapshots.py index cd0c703ea624..77313159449c 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/models/index_snapshots.py +++ b/openbb_platform/providers/cboe/openbb_cboe/models/index_snapshots.py @@ -21,7 +21,7 @@ class CboeIndexSnapshotsQueryParams(IndexSnapshotsQueryParams): Source: https://www.cboe.com/ """ - region: Literal[None, "us", "eu"] = Field( + region: Optional[Literal["us", "eu"]] = Field( default="us", ) @@ -89,7 +89,7 @@ def transform_query(params: Dict[str, Any]) -> CboeIndexSnapshotsQueryParams: @staticmethod async def aextract_data( query: CboeIndexSnapshotsQueryParams, - credentials: Optional[Dict[str, str]], + credentials: Optional[Dict[str, str]], # pylint: disable=unused-argument **kwargs: Any, ) -> List[Dict]: """Return the raw data from the Cboe endpoint""" @@ -104,12 +104,14 @@ async def aextract_data( @staticmethod def transform_data( - query: CboeIndexSnapshotsQueryParams, data: dict, **kwargs: Any + query: CboeIndexSnapshotsQueryParams, # pylint: disable=unused-argument + data: dict, + **kwargs: Any, # pylint: disable=unused-argument ) -> List[CboeIndexSnapshotsData]: """Transform the data to the standard format""" if not data: raise EmptyDataError() - data = DataFrame(data) + df = DataFrame(data) percent_cols = [ "price_change_percent", "iv30", @@ -117,10 +119,10 @@ def transform_data( "iv30_change_percent", ] for col in percent_cols: - if col in data.columns: - data[col] = round(data[col] / 100, 6) - data = ( - data.replace(0, None) + if col in df.columns: + df[col] = round(df[col] / 100, 6) + df = ( + df.replace(0, None) .replace("", None) .dropna(how="all", axis=1) .fillna("N/A") @@ -135,9 +137,9 @@ def transform_data( "bid_size", ] for col in drop_cols: - if col in data.columns: - data = data.drop(columns=col) + if col in df.columns: + df = df.drop(columns=col) return [ CboeIndexSnapshotsData.model_validate(d) - for d in data.to_dict(orient="records") + for d in df.to_dict(orient="records") ] diff --git a/openbb_platform/providers/fred/openbb_fred/models/search.py b/openbb_platform/providers/fred/openbb_fred/models/search.py index 99bf76c71836..0681472256a9 100644 --- a/openbb_platform/providers/fred/openbb_fred/models/search.py +++ b/openbb_platform/providers/fred/openbb_fred/models/search.py @@ -41,8 +41,8 @@ class FredSearchQueryParams(SearchQueryParams): default=0, description="Offset the results in conjunction with limit.", ) - filter_variable: Literal[None, "frequency", "units", "seasonal_adjustment"] = Field( - default=None, description="Filter by an attribute." + filter_variable: Optional[Literal["frequency", "units", "seasonal_adjustment"]] = ( + Field(default=None, description="Filter by an attribute.") ) filter_value: Optional[str] = Field( default=None, diff --git a/openbb_platform/providers/fred/openbb_fred/models/series.py b/openbb_platform/providers/fred/openbb_fred/models/series.py index 7c1108e73f3c..36e5f911c579 100644 --- a/openbb_platform/providers/fred/openbb_fred/models/series.py +++ b/openbb_platform/providers/fred/openbb_fred/models/series.py @@ -30,22 +30,23 @@ class FredSeriesQueryParams(SeriesQueryParams): } __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} - frequency: Literal[ - None, - "a", - "q", - "m", - "w", - "d", - "wef", - "weth", - "wew", - "wetu", - "wem", - "wesu", - "wesa", - "bwew", - "bwem", + frequency: Optional[ + Literal[ + "a", + "q", + "m", + "w", + "d", + "wef", + "weth", + "wew", + "wetu", + "wem", + "wesu", + "wesa", + "bwew", + "bwem", + ] ] = Field( default=None, description=""" @@ -67,7 +68,7 @@ class FredSeriesQueryParams(SeriesQueryParams): bwem = Biweekly, Ending Monday """, ) - aggregation_method: Literal[None, "avg", "sum", "eop"] = Field( + aggregation_method: Optional[Literal["avg", "sum", "eop"]] = Field( default="eop", description=""" A key that indicates the aggregation method used for frequency aggregation. @@ -77,10 +78,11 @@ class FredSeriesQueryParams(SeriesQueryParams): eop = End of Period """, ) - transform: Literal[None, "chg", "ch1", "pch", "pc1", "pca", "cch", "cca", "log"] = ( - Field( - default=None, - description=""" + transform: Optional[ + Literal["chg", "ch1", "pch", "pc1", "pca", "cch", "cca", "log"] + ] = Field( + default=None, + description=""" Transformation type None = No transformation chg = Change @@ -92,7 +94,6 @@ class FredSeriesQueryParams(SeriesQueryParams): cca = Continuously Compounded Annual Rate of Change log = Natural Log """, - ) ) limit: int = Field(description=QUERY_DESCRIPTIONS.get("limit", ""), default=100000) diff --git a/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py b/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py index a4fcc6efcca9..8892cfd770be 100644 --- a/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py +++ b/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py @@ -22,7 +22,7 @@ class GovernmentUSTreasuryPricesQueryParams(TreasuryPricesQueryParams): """US Government Treasury Prices Query.""" cusip: Optional[str] = Field(description="Filter by CUSIP.", default=None) - security_type: Literal[None, "bill", "note", "bond", "tips", "frn"] = Field( + security_type: Optional[Literal["bill", "note", "bond", "tips", "frn"]] = Field( description="Filter by security type.", default=None, ) diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/cash_flow.py b/openbb_platform/providers/polygon/openbb_polygon/models/cash_flow.py index c0d6b366f85e..51d7f432a6f1 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/cash_flow.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/cash_flow.py @@ -64,10 +64,10 @@ class PolygonCashFlowStatementQueryParams(CashFlowStatementQueryParams): default=False, description="Whether to include the sources of the financial statement.", ) - order: Literal[None, "asc", "desc"] = Field( + order: Optional[Literal["asc", "desc"]] = Field( default=None, description="Order of the financial statement." ) - sort: Literal[None, "filing_date", "period_of_report_date"] = Field( + sort: Optional[Literal["filing_date", "period_of_report_date"]] = Field( default=None, description="Sort of the financial statement." ) @@ -160,9 +160,9 @@ async def aextract_data( @staticmethod def transform_data( - query: PolygonCashFlowStatementQueryParams, + query: PolygonCashFlowStatementQueryParams, # pylint: disable=unused-argument data: dict, - **kwargs: Any, + **kwargs: Any, # pylint: disable=unused-argument ) -> List[PolygonCashFlowStatementData]: """Return the transformed data.""" transformed_data = [] diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py b/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py index 2052991fff7d..e3f81710561f 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py @@ -24,7 +24,7 @@ class TmxIndexSnapshotsQueryParams(IndexSnapshotsQueryParams): """TMX Index Snapshots Query Params.""" - region: Literal[None, "ca", "us"] = Field(default="ca") # type: ignore + region: Optional[Literal["ca", "us"]] = Field(default="ca") # type: ignore use_cache: bool = Field( default=True, description="Whether to use a cached request." From d3b9ce6d37ddcc4a5867d71ccfce15622c2d5615 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 7 May 2024 05:04:46 -0700 Subject: [PATCH 02/44] [BugFix] Set Chart Style Before Output (#6367) * set chart style before output * docstring * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../charting/openbb_charting/__init__.py | 47 ++++++++++++++++--- 1 file changed, 40 insertions(+), 7 deletions(-) diff --git a/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py b/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py index c79dc2707842..bc1f07409bb4 100644 --- a/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py +++ b/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py @@ -61,6 +61,8 @@ class Charting: Create a line chart from external data. create_bar_chart Create a bar chart, on a single x-axis with one or more values for the y-axis, from external data. + toggle_chart_style + Toggle the chart style, of an existing chart, between light and dark mode. """ def __init__(self, obbject): @@ -234,6 +236,7 @@ def create_line_chart( same_axis=same_axis, **kwargs, ) + fig = self._set_chart_style(fig) if render: return fig.show(**kwargs) @@ -298,7 +301,6 @@ def create_bar_chart( OpenBBFigure The OpenBBFigure object. """ - fig = bar_chart( data=data, x=x, @@ -313,7 +315,7 @@ def create_bar_chart( bar_kwargs=bar_kwargs, layout_kwargs=layout_kwargs, ) - + fig = self._set_chart_style(fig) if render: return fig.show(**kwargs) @@ -322,7 +324,6 @@ def create_bar_chart( # pylint: disable=inconsistent-return-statements def show(self, render: bool = True, **kwargs): """Display chart and save it to the OBBject.""" - try: charting_function = self._get_chart_function( self._obbject._route # pylint: disable=protected-access @@ -345,14 +346,17 @@ def show(self, render: bool = True, **kwargs): _kwargs = kwargs.pop("kwargs") kwargs.update(_kwargs.get("chart_params", {})) fig, content = charting_function(**kwargs) + fig = self._set_chart_style(fig) + content = fig.show(external=True, **kwargs).to_plotly_json() self._obbject.chart = Chart( fig=fig, content=content, format=charting_router.CHART_FORMAT ) if render: fig.show(**kwargs) - except Exception: + except Exception: # pylint: disable=W0718 try: fig = self.create_line_chart(data=self._obbject.results, render=False, **kwargs) # type: ignore + fig = self._set_chart_style(fig) content = fig.show(external=True, **kwargs).to_plotly_json() # type: ignore self._obbject.chart = Chart( fig=fig, content=content, format=charting_router.CHART_FORMAT @@ -467,20 +471,49 @@ def to_chart( self.show(data=data_as_df, render=render, **kwargs) else: self.show(**kwargs, render=render) - except Exception: + except Exception: # pylint: disable=W0718 try: fig = self.create_line_chart(data=data_as_df, render=False, **kwargs) + fig = self._set_chart_style(fig) content = fig.show(external=True, **kwargs).to_plotly_json() # type: ignore self._obbject.chart = Chart( fig=fig, content=content, format=charting_router.CHART_FORMAT ) if render: return fig.show(**kwargs) # type: ignore - except Exception as e: + except Exception as e: # pylint: disable=W0718 raise RuntimeError( "Failed to automatically create a generic chart with the data provided." ) from e + def _set_chart_style(self, figure: Figure): + """Set the user preference for light or dark mode.""" + style = self._charting_settings.chart_style # pylint: disable=protected-access + font_color = "black" if style == "light" else "white" + paper_bgcolor = "white" if style == "light" else "black" + figure = figure.update_layout( + dict( # pylint: disable=R1735 + font_color=font_color, paper_bgcolor=paper_bgcolor + ) + ) + return figure + + def toggle_chart_style(self): # pylint: disable=protected-access + """Toggle the chart style between light and dark mode.""" + if not hasattr(self._obbject.chart, "fig"): + raise ValueError( + "Error: No chart has been created. Please create a chart first." + ) + current = self._charting_settings.chart_style + new = "light" if current == "dark" else "dark" + self._charting_settings.chart_style = new + figure = self._obbject.chart.fig + updated_figure = self._set_chart_style(figure) + self._obbject.chart.fig = updated_figure + self._obbject.chart.content = updated_figure.show( + external=True + ).to_plotly_json() + def table( self, data: Optional[Union[pd.DataFrame, pd.Series]] = None, @@ -510,7 +543,7 @@ def table( or self._obbject._route, # pylint: disable=protected-access theme=self._charting_settings.table_style, ) - except Exception as e: + except Exception as e: # pylint: disable=W0718 warn(f"Failed to show figure with backend. {e}") else: From 5c0b36cddbbafb9a201b401df5d2272b236d9020 Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Tue, 7 May 2024 14:22:44 +0200 Subject: [PATCH 03/44] [BugFix] - Fix lowercase symbols (#6342) * Fix lowercase symbols * fix decorator for to_upper * add annotated results with underlying symbol info * ? * Improvements --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim --- .../standard_models/options_chains.py | 2 +- .../cboe/openbb_cboe/models/options_chains.py | 69 +++++++++++++++---- 2 files changed, 55 insertions(+), 16 deletions(-) diff --git a/openbb_platform/core/openbb_core/provider/standard_models/options_chains.py b/openbb_platform/core/openbb_core/provider/standard_models/options_chains.py index 231945419ed3..6a23f687f5dc 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/options_chains.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/options_chains.py @@ -21,8 +21,8 @@ class OptionsChainsQueryParams(QueryParams): symbol: str = Field(description=QUERY_DESCRIPTIONS.get("symbol", "")) - @classmethod @field_validator("symbol", mode="before", check_fields=False) + @classmethod def to_upper(cls, v: str) -> str: """Return the symbol in uppercase.""" return v.upper() diff --git a/openbb_platform/providers/cboe/openbb_cboe/models/options_chains.py b/openbb_platform/providers/cboe/openbb_cboe/models/options_chains.py index 1f83a7cb99af..c1c0602d3ccd 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/models/options_chains.py +++ b/openbb_platform/providers/cboe/openbb_cboe/models/options_chains.py @@ -10,6 +10,7 @@ get_company_directory, get_index_directory, ) +from openbb_core.provider.abstract.annotated_result import AnnotatedResult from openbb_core.provider.abstract.fetcher import Fetcher from openbb_core.provider.standard_models.options_chains import ( OptionsChainsData, @@ -62,10 +63,9 @@ async def aextract_data( query: CboeOptionsChainsQueryParams, credentials: Optional[Dict[str, str]], **kwargs: Any, - ) -> List[Dict]: - """Return the raw data from the Cboe endpoint""" - - symbol = query.symbol.replace("^", "").split(",")[0] + ) -> Dict: + """Return the raw data from the Cboe endpoint.""" + symbol = query.symbol.replace("^", "").split(",")[0].upper() INDEXES = await get_index_directory(use_cache=query.use_cache) SYMBOLS = await get_company_directory(use_cache=query.use_cache) INDEXES = INDEXES.set_index("index_symbol") @@ -78,21 +78,57 @@ async def aextract_data( if symbol in TICKER_EXCEPTIONS or symbol in INDEXES.index else f"https://cdn.cboe.com/api/global/delayed_quotes/options/{symbol}.json" ) - - return await amake_request(quotes_url) + results = await amake_request(quotes_url) + return results # type: ignore @staticmethod def transform_data( query: CboeOptionsChainsQueryParams, - data: List[Dict], + data: Dict, **kwargs: Any, - ) -> List[CboeOptionsChainsData]: - """Transform the data to the standard format""" - + ) -> AnnotatedResult[List[CboeOptionsChainsData]]: + """Transform the data to the standard format.""" if not data: raise EmptyDataError() + results_metadata = {} + options = data.get("data", {}).pop("options", []) + change_percent = data["data"].get("percent_change", None) + iv30_percent = data["data"].get("iv30_change_percent", None) + if change_percent: + change_percent = change_percent / 100 + if iv30_percent: + iv30_percent = iv30_percent / 100 + last_timestamp = data["data"].get("last_trade_time", None) + if last_timestamp: + last_timestamp = to_datetime( + last_timestamp, format="%Y-%m-%dT%H:%M:%S" + ).strftime("%Y-%m-%d %H:%M:%S") + results_metadata.update( + { + "symbol": data["data"].get("symbol"), + "security_type": data["data"].get("security_type", None), + "bid": data["data"].get("bid", None), + "bid_size": data["data"].get("bid_size", None), + "ask": data["data"].get("ask", None), + "ask_size": data["data"].get("ask_size", None), + "open": data["data"].get("open", None), + "high": data["data"].get("high", None), + "low": data["data"].get("low", None), + "close": data["data"].get("close", None), + "volume": data["data"].get("volume", None), + "current_price": data["data"].get("current_price", None), + "prev_close": data["data"].get("prev_day_close", None), + "change": data["data"].get("price_change", None), + "change_percent": change_percent, + "iv30": data["data"].get("iv30", None), + "iv30_change": data["data"].get("iv30_change", None), + "iv30_change_percent": iv30_percent, + "last_tick": data["data"].get("tick", None), + "last_trade_timestamp": last_timestamp, + } + ) - options_df = DataFrame.from_records(data["data"]["options"]) + options_df = DataFrame.from_records(options) options_df = options_df.rename( columns={ @@ -152,7 +188,10 @@ def transform_data( quotes["prev_close"] = round(quotes["prev_close"], 2) quotes["change_percent"] = round(quotes["change_percent"] / 100, 4) - return [ - CboeOptionsChainsData.model_validate(d) - for d in quotes.reset_index().to_dict("records") - ] + return AnnotatedResult( + result=[ + CboeOptionsChainsData.model_validate(d) + for d in quotes.reset_index().to_dict("records") + ], + metadata=results_metadata, + ) From 756eebdf07c3a57664f526c4371302011bbb70d8 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 7 May 2024 14:57:35 +0100 Subject: [PATCH 04/44] [Feature] Handle repeated non standard arguments (#6366) * remove about message * handle repeated arguments * accomodate all the choices from different providers --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../argparse_translator.py | 105 +++++++++++++++--- cli/openbb_cli/controllers/base_controller.py | 5 - 2 files changed, 90 insertions(+), 20 deletions(-) diff --git a/cli/openbb_cli/argparse_translator/argparse_translator.py b/cli/openbb_cli/argparse_translator/argparse_translator.py index 45fa4ce5d6b7..bf5917207d50 100644 --- a/cli/openbb_cli/argparse_translator/argparse_translator.py +++ b/cli/openbb_cli/argparse_translator/argparse_translator.py @@ -1,5 +1,6 @@ import argparse import inspect +import re from copy import deepcopy from enum import Enum from typing import ( @@ -21,6 +22,8 @@ from pydantic import BaseModel, model_validator from typing_extensions import Annotated +# pylint: disable=protected-access + SEP = "__" @@ -200,7 +203,7 @@ def __init__( self.func = func self.signature = inspect.signature(func) self.type_hints = get_type_hints(func) - self.provider_parameters = [] + self.provider_parameters: List[str] = [] self._parser = argparse.ArgumentParser( prog=func.__name__, @@ -217,23 +220,95 @@ def __init__( for group in custom_argument_groups: argparse_group = self._parser.add_argument_group(group.name) for argument in group.arguments: - kwargs = argument.model_dump(exclude={"name"}, exclude_none=True) - - # If the argument is already in use, we can't repeat it - if f"--{argument.name}" not in self._parser_arguments(): - argparse_group.add_argument(f"--{argument.name}", **kwargs) - self.provider_parameters.append(argument.name) + self._handle_argument_in_groups(argument, argparse_group) + + def _handle_argument_in_groups(self, argument, group): + """Handle the argument and add it to the parser.""" + + def _in_optional_arguments(arg): + for action_group in self._parser._action_groups: + if action_group.title == "optional arguments": + for action in action_group._group_actions: + opts = action.option_strings + if (opts and opts[0] == arg) or action.dest == arg: + return True + return False + + def _remove_argument(arg) -> List[Optional[str]]: + groups_w_arg = [] + + # remove the argument from the parser + for action in self._parser._actions: + opts = action.option_strings + if (opts and opts[0] == arg) or action.dest == arg: + self._parser._remove_action(action) + break - def _parser_arguments(self) -> List[str]: - """Get all the arguments from all groups currently defined on the parser.""" - arguments_in_use: List[str] = [] + # remove from all groups + for action_group in self._parser._action_groups: + for action in action_group._group_actions: + opts = action.option_strings + if (opts and opts[0] == arg) or action.dest == arg: + action_group._group_actions.remove(action) + groups_w_arg.append(action_group.title) + + # remove from _action_groups dict + self._parser._option_string_actions.pop(f"--{arg}", None) + + return groups_w_arg + + def _get_arg_choices(arg) -> Tuple: + for action in self._parser._actions: + opts = action.option_strings + if (opts and opts[0] == arg) or action.dest == arg: + return tuple(action.choices or ()) + return () + + def _update_providers( + input_string: str, new_provider: List[Optional[str]] + ) -> str: + pattern = r"\(provider:\s*(.*?)\)" + providers = re.findall(pattern, input_string) + providers.extend(new_provider) + # remove pattern from help and add with new providers + input_string = re.sub(pattern, "", input_string).strip() + return f"{input_string} (provider: {', '.join(providers)})" + + # check if the argument is already in use, if not, add it + if f"--{argument.name}" not in self._parser._option_string_actions: + kwargs = argument.model_dump(exclude={"name"}, exclude_none=True) + group.add_argument(f"--{argument.name}", **kwargs) + self.provider_parameters.append(argument.name) + + else: + kwargs = argument.model_dump(exclude={"name"}, exclude_none=True) + model_choices = kwargs.get("choices", ()) or () + # extend choices + choices = tuple(set(_get_arg_choices(argument.name) + model_choices)) + + # check if the argument is in the optional arguments + if _in_optional_arguments(argument.name): + for action in self._parser._actions: + if action.dest == argument.name: + # update choices + action.choices = choices + # update help + action.help = _update_providers( + action.help or "", [group.title] + ) + return - # pylint: disable=protected-access - for action_group in self._parser._action_groups: - for action in action_group._group_actions: - arguments_in_use.extend(action.option_strings) + # if the argument is in use, remove it from all groups + # and return the groups that had the argument + groups_w_arg = _remove_argument(argument.name) + groups_w_arg.append(group.title) # add current group - return arguments_in_use + # add it to the optional arguments group instead + if choices: + kwargs["choices"] = choices # update choices + # add provider info to the help + kwargs["help"] = _update_providers(argument.help or "", groups_w_arg) + self._parser.add_argument(f"--{argument.name}", **kwargs) @property def parser(self) -> argparse.ArgumentParser: diff --git a/cli/openbb_cli/controllers/base_controller.py b/cli/openbb_cli/controllers/base_controller.py index 987f0cd413b5..c5f083079ac9 100644 --- a/cli/openbb_cli/controllers/base_controller.py +++ b/cli/openbb_cli/controllers/base_controller.py @@ -908,11 +908,6 @@ def parse_known_args_and_warn( if "--help" in other_args or "-h" in other_args: txt_help = parser.format_help() + "\n" - if parser.prog != "about": - txt_help += ( - f"For more information and examples, use 'about {parser.prog}' " - f"to access the related guide.\n" - ) session.console.print(f"[help]{txt_help}[/help]") return None From 101990dffa40f45625aee3b3f7eb3d83381bf7e1 Mon Sep 17 00:00:00 2001 From: Theodore Aptekarev Date: Tue, 7 May 2024 16:17:59 +0200 Subject: [PATCH 05/44] Sync main and develop (#6373) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> --- .../content/platform/development/standardization.md | 10 +++++----- .../pro/data-connectors/native-integrations.md | 11 +++++++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/website/content/platform/development/standardization.md b/website/content/platform/development/standardization.md index 78618bcd1f76..d25d93f0c88a 100644 --- a/website/content/platform/development/standardization.md +++ b/website/content/platform/development/standardization.md @@ -27,7 +27,7 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; The Standardization Framework is a set of tools and guidelines that enable the user to query and obtain data in a consistent way across multiple providers. -Each provider data model should inherit from an already defined [standard](/platform/data_models) model. All standard models are created and maintained by the OpenBB team. If a standard model needs to be created, please open a pull request and detail its use. +Each provider data model should inherit from an already defined [standard](https://docs.openbb.co/platform/data_models) model. All standard models are created and maintained by the OpenBB team. If a standard model needs to be created, please open a pull request and detail its use. Standardizing provider query parameters and response data enhances the user experience by overcoming things like: @@ -37,14 +37,14 @@ Standardizing provider query parameters and response data enhances the user expe - Transparently defined schemas for the data and query parameters. - Outputs from multiple sources are comparable with each other and easily interchanged. -The standard models are all defined in the `/OpenBBTerminal/openbb_platform/platform/core/provider/standard_models/` [directory](https://github.com/OpenBB-finance/OpenBBTerminal/tree/develop/openbb_platform/core/openbb_core/provider/standard_models). +The standard models are all defined in the `/OpenBBTerminal/openbb_platform/core/openbb_core/provider/standard_models/` [directory](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_platform/core/openbb_core/provider/standard_models). ### What Is A Standard Model? Every standard model consists of two classes, with each being a Pydantic model. -- [`QueryParams`](https://github.com/OpenBB-finance/OpenBBTerminal/tree/develop/openbb_platform/core/openbb_core/provider/abstract/query_params.py) -- [`Data`](https://github.com/OpenBB-finance/OpenBBTerminal/tree/develop/openbb_platform/core/openbb_core/provider/abstract/data.py) +- [`QueryParams`](https://raw.githubusercontent.com/OpenBB-finance/OpenBBTerminal/main/openbb_platform/core/openbb_core/provider/abstract/query_params.py) +- [`Data`](https://raw.githubusercontent.com/OpenBB-finance/OpenBBTerminal/main/openbb_platform/core/openbb_core/provider/abstract/data.py) Any parameter or field can be assigned a custom `field_validator`, or the entire model can be passed through a `model_validator` on creation. @@ -61,7 +61,7 @@ The standardization framework is a very powerful tool, but it has some caveats t ### QueryParams -The `QueryParams` is an abstract class that defines what parameters will be needed to make a query to a data source. Below is the [EquityHistorical](data_models/EquityHistorical) standard model. +The `QueryParams` is an abstract class that defines what parameters will be needed to make a query to a data source. Below is the [EquityHistorical](https://docs.openbb.co/platform/data_models/EquityHistorical) standard model. ```python """Equity Historical Price Standard Model.""" diff --git a/website/content/pro/data-connectors/native-integrations.md b/website/content/pro/data-connectors/native-integrations.md index 0c3db786da7a..7f5e9a0c8aaa 100644 --- a/website/content/pro/data-connectors/native-integrations.md +++ b/website/content/pro/data-connectors/native-integrations.md @@ -19,12 +19,19 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; +import TutorialVideo from '@site/src/components/General/TutorialVideo.tsx'; + + + ## Using OpenBB Native Integrations -The OpenBB native integrations allows you to connect to Snowflake, MySQL, or SQLite databases directly. You can run any query against your database directly from our Pro Terminal. +The OpenBB native integrations allows you to connect to Snowflake, MySQL, or SQLite databases directly. You can run any query against your database directly from the Terminal Pro. 1. **Install our Client**: Download our free client for [Mac](https://openbb-installers.s3.amazonaws.com/data_connector_0.0.2.dmg) or [Windows](https://openbb-installers.s3.amazonaws.com/OpenBB+Data+Connector_0.0.2_x64_en-US.msi) to get started. -2. **Run the Client**: Once installed, Simply open our app and type in the port you would like to use. If you are unsure of a good port, feel free to select `Recommend Port`. +2. **Run the Client**: Once installed, Simply open the app and type in the port you would like to use. If you are unsure of a good port, feel free to select `Recommend Port`. 3. **Connect inside the Terminal Pro**: Once your client is up and running, click [here](https://pro.openbb.co/app/data-connectors) to enable the connectors - it will ask you for the URL the port is running on - you can find that on the Data Connector Application at the top. Now feel free to enter login credentials for any Snowflake, MySQL, or SQLite database and begin to analyze your data inside of our terminal. From e12aac157eb69573641aadcd93b1f244dd7dd6fe Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Tue, 7 May 2024 16:57:12 +0200 Subject: [PATCH 06/44] [BugFix] - Fix tests for release (#6372) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix user service * fix module import * proper Chart(...) mock * Fix SEC rss * improve test on to_chart() method * Fix form 13F example filing * remove broken example * Add lxml dep to SEC * fix default * fix: treasury_prices default date, last business day´ * fix: linting * fix: rebuild * ^ --------- Co-authored-by: hjoaquim Co-authored-by: Diogo Sousa --- .pre-commit-config.yaml | 2 +- .../core/openbb_core/app/model/preferences.py | 2 +- .../standard_models/treasury_prices.py | 2 +- .../tests/app/service/test_user_service.py | 3 +- .../openbb_technical/technical_router.py | 5 - .../charting/tests/test_charting.py | 32 +- openbb_platform/openbb/assets/reference.json | 334 +++++++++++- openbb_platform/openbb/package/__init__.py | 1 - .../openbb/package/derivatives_options.py | 4 +- openbb_platform/openbb/package/economy.py | 8 +- .../openbb/package/equity_fundamental.py | 20 +- .../openbb/package/equity_ownership.py | 2 +- .../openbb/package/equity_price.py | 6 +- openbb_platform/openbb/package/etf.py | 12 +- openbb_platform/openbb/package/news.py | 89 +++- .../openbb/package/regulators_sec.py | 489 ------------------ .../models/treasury_prices.py | 20 +- .../openbb_polygon/models/currency_pairs.py | 7 +- .../sec/openbb_sec/models/form_13FHR.py | 1 + .../sec/openbb_sec/models/rss_litigation.py | 2 +- openbb_platform/providers/sec/pyproject.toml | 1 + .../tmx/openbb_tmx/models/treasury_prices.py | 19 +- 22 files changed, 460 insertions(+), 601 deletions(-) delete mode 100644 openbb_platform/openbb/package/__init__.py delete mode 100644 openbb_platform/openbb/package/regulators_sec.py diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e16417a185ee..5f507829eedd 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -28,7 +28,7 @@ repos: types: [python] files: '^openbb_platform/.*\.py$' exclude: 'tests/.*\.py|openbb_platform/test_.*\.py' - args: ["--config=pyproject.toml"] + args: ["--config=ruff.toml"] - repo: https://github.com/codespell-project/codespell rev: v2.2.5 hooks: diff --git a/openbb_platform/core/openbb_core/app/model/preferences.py b/openbb_platform/core/openbb_core/app/model/preferences.py index 19c2d7f745df..44d44efd0d92 100644 --- a/openbb_platform/core/openbb_core/app/model/preferences.py +++ b/openbb_platform/core/openbb_core/app/model/preferences.py @@ -27,7 +27,7 @@ class Preferences(BaseModel): ) plot_pywry_height: PositiveInt = 762 plot_pywry_width: PositiveInt = 1400 - request_timeout: PositiveInt = 15 + request_timeout: PositiveInt = 60 show_warnings: bool = True table_style: Literal["dark", "light"] = "dark" user_styles_directory: str = str(Path.home() / "OpenBBUserData" / "styles" / "user") diff --git a/openbb_platform/core/openbb_core/provider/standard_models/treasury_prices.py b/openbb_platform/core/openbb_core/provider/standard_models/treasury_prices.py index 5f42f7d4de41..c803987b92a6 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/treasury_prices.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/treasury_prices.py @@ -15,7 +15,7 @@ class TreasuryPricesQueryParams(QueryParams): date: Optional[dateType] = Field( description=QUERY_DESCRIPTIONS.get("date", "") - + " No date will return the current posted data.", + + " Defaults to the last business day.", default=None, ) diff --git a/openbb_platform/core/tests/app/service/test_user_service.py b/openbb_platform/core/tests/app/service/test_user_service.py index aefe199382f2..e65f0a56aca9 100644 --- a/openbb_platform/core/tests/app/service/test_user_service.py +++ b/openbb_platform/core/tests/app/service/test_user_service.py @@ -57,7 +57,8 @@ def test_update_default(): # Update the default settings updated_settings = UserService.update_default(other_settings) - assert updated_settings.defaults.model_dump() == defaults_test.model_dump() + assert "test" in updated_settings.defaults.model_dump()["routes"] + assert updated_settings.defaults.model_dump()["routes"]["test"] == {"test": "test"} def test_merge_dicts(): diff --git a/openbb_platform/extensions/technical/openbb_technical/technical_router.py b/openbb_platform/extensions/technical/openbb_technical/technical_router.py index 47aa24d2700f..3dbf2e3df848 100644 --- a/openbb_platform/extensions/technical/openbb_technical/technical_router.py +++ b/openbb_platform/extensions/technical/openbb_technical/technical_router.py @@ -57,11 +57,6 @@ + " long_period=365, short_period=30, window=30, trading_periods=365)", ], ), - APIEx( - description="Note that the mock data displayed here is insufficient." - + " It must contain multiple symbols, with the benchmark, and be daily data at least 1 year in length.", - parameters={"benchmark": "SPY", "data": APIEx.mock_data("timeseries")}, - ), ], ) async def relative_rotation( diff --git a/openbb_platform/obbject_extensions/charting/tests/test_charting.py b/openbb_platform/obbject_extensions/charting/tests/test_charting.py index 3f270c53a25e..498b046fdb09 100644 --- a/openbb_platform/obbject_extensions/charting/tests/test_charting.py +++ b/openbb_platform/obbject_extensions/charting/tests/test_charting.py @@ -48,6 +48,7 @@ def __init__(self): self.provider = "mock_provider" self.extra = "mock_extra" self.warnings = "mock_warnings" + self.chart = MagicMock() def to_dataframe(self): """Mock to_dataframe.""" @@ -108,8 +109,8 @@ def test_functions(mock_get_charting_functions): mock_get_charting_functions.assert_called_once() -@patch("openbb_charting.core.backend.get_backend") -@patch("openbb_charting.core.backend.create_backend") +@patch("openbb_charting.get_backend") +@patch("openbb_charting.create_backend") def test_handle_backend(mock_create_backend, mock_get_backend, obbject): """Test _handle_backend method.""" # Act -> _handle backend is called in the constructor @@ -136,7 +137,8 @@ def test_get_chart_function(mock_charting_router): @patch("openbb_charting.Charting._get_chart_function") -def test_show(mock_get_chart_function, obbject): +@patch("openbb_charting.Chart") +def test_show(_, mock_get_chart_function, obbject): """Test show method.""" # Arrange mock_function = MagicMock() @@ -151,28 +153,24 @@ def test_show(mock_get_chart_function, obbject): # Assert mock_get_chart_function.assert_called_once() mock_function.assert_called_once() - mock_fig.show.assert_called_once() -@patch("openbb_charting.to_chart") -def test_to_chart(mock_to_chart, obbject): +@patch("openbb_charting.Charting._prepare_data_as_df") +@patch("openbb_charting.Charting._get_chart_function") +@patch("openbb_charting.Chart") +def test_to_chart(_, mock_get_chart_function, mock_prepare_data_as_df, obbject): """Test to_chart method.""" # Arrange + mock_prepare_data_as_df.return_value = (mock_dataframe, True) + mock_function = MagicMock() + mock_get_chart_function.return_value = mock_function mock_fig = MagicMock() - mock_to_chart.return_value = (mock_fig, {"content": "mock_content"}) + mock_function.return_value = (mock_fig, {"content": "mock_content"}) obj = Charting(obbject) # Act obj.to_chart() # Assert - assert obj._obbject.chart.fig == mock_fig - mock_to_chart.assert_called_once_with( - mock_dataframe, - indicators=None, - symbol="", - candles=True, - volume=True, - prepost=False, - volume_ticks_x=7, - ) + mock_get_chart_function.assert_called_once() + mock_function.assert_called_once() diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 3d8781d622cc..94947e5c4ebe 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -629,7 +629,7 @@ "name": "sort", "type": "Literal['ticker', 'name', 'market', 'locale', 'currency_symbol', 'currency_name', 'base_currency_symbol', 'base_currency_name', 'last_updated_utc', 'delisted_utc']", "description": "Sort field used for ordering.", - "default": "", + "default": null, "optional": true }, { @@ -2681,7 +2681,7 @@ }, { "name": "filter_variable", - "type": "Literal[None, 'frequency', 'units', 'seasonal_adjustment']", + "type": "Literal['frequency', 'units', 'seasonal_adjustment']", "description": "Filter by an attribute.", "default": null, "optional": true @@ -2941,21 +2941,21 @@ "fred": [ { "name": "frequency", - "type": "Literal[None, 'a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']", + "type": "Literal['a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']", "description": "Frequency aggregation to convert high frequency data to lower frequency. None = No change a = Annual q = Quarterly m = Monthly w = Weekly d = Daily wef = Weekly, Ending Friday weth = Weekly, Ending Thursday wew = Weekly, Ending Wednesday wetu = Weekly, Ending Tuesday wem = Weekly, Ending Monday wesu = Weekly, Ending Sunday wesa = Weekly, Ending Saturday bwew = Biweekly, Ending Wednesday bwem = Biweekly, Ending Monday", "default": null, "optional": true }, { "name": "aggregation_method", - "type": "Literal[None, 'avg', 'sum', 'eop']", + "type": "Literal['avg', 'sum', 'eop']", "description": "A key that indicates the aggregation method used for frequency aggregation. This parameter has no affect if the frequency parameter is not set. avg = Average sum = Sum eop = End of Period", "default": "eop", "optional": true }, { "name": "transform", - "type": "Literal[None, 'chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']", + "type": "Literal['chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']", "description": "Transformation type None = No transformation chg = Change ch1 = Change from Year Ago pch = Percent Change pc1 = Percent Change from Year Ago pca = Compounded Annual Rate of Change cch = Continuously Compounded Rate of Change cca = Continuously Compounded Annual Rate of Change log = Natural Log", "default": null, "optional": true @@ -10092,14 +10092,14 @@ }, { "name": "order", - "type": "Literal[None, 'asc', 'desc']", + "type": "Literal['asc', 'desc']", "description": "Order of the financial statement.", "default": null, "optional": true }, { "name": "sort", - "type": "Literal[None, 'filing_date', 'period_of_report_date']", + "type": "Literal['filing_date', 'period_of_report_date']", "description": "Sort of the financial statement.", "default": null, "optional": true @@ -16024,7 +16024,7 @@ "sec": [ { "name": "cik", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "Lookup filings by Central Index Key (CIK) instead of by symbol.", "default": null, "optional": true @@ -16174,7 +16174,7 @@ }, { "name": "act", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The SEC Act number.", "default": null, "optional": true @@ -16202,42 +16202,42 @@ }, { "name": "accession_number", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The accession number.", "default": null, "optional": true }, { "name": "file_number", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The file number.", "default": null, "optional": true }, { "name": "film_number", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The film number.", "default": null, "optional": true }, { "name": "is_inline_xbrl", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "Whether the filing is an inline XBRL filing.", "default": null, "optional": true }, { "name": "is_xbrl", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "Whether the filing is an XBRL filing.", "default": null, "optional": true }, { "name": "size", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The size of the filing.", "default": null, "optional": true @@ -23630,7 +23630,7 @@ }, { "name": "rate_tenor_unit_rec", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The rate tenor unit for receivable portion of the swap.", "default": null, "optional": true @@ -23644,7 +23644,7 @@ }, { "name": "reset_date_unit_rec", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The reset date unit for receivable portion of the swap.", "default": null, "optional": true @@ -23693,7 +23693,7 @@ }, { "name": "rate_tenor_unit_pmnt", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The rate tenor unit for payment portion of the swap.", "default": null, "optional": true @@ -23707,7 +23707,7 @@ }, { "name": "reset_date_unit_pmnt", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "The reset date unit for payment portion of the swap.", "default": null, "optional": true @@ -26788,7 +26788,71 @@ } ], "fmp": [], - "intrinio": [], + "intrinio": [ + { + "name": "source", + "type": "Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases']", + "description": "The source of the news article.", + "default": null, + "optional": true + }, + { + "name": "sentiment", + "type": "Literal['positive', 'neutral', 'negative']", + "description": "Return news only from this source.", + "default": null, + "optional": true + }, + { + "name": "language", + "type": "str", + "description": "Filter by language. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "topic", + "type": "str", + "description": "Filter by topic. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "word_count_greater_than", + "type": "int", + "description": "News stories will have a word count greater than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "word_count_less_than", + "type": "int", + "description": "News stories will have a word count less than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "is_spam", + "type": "bool", + "description": "Filter whether it is marked as spam or not. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "business_relevance_greater_than", + "type": "float", + "description": "News stories will have a business relevance score more than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "business_relevance_less_than", + "type": "float", + "description": "News stories will have a business relevance score less than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + } + ], "tiingo": [ { "name": "offset", @@ -26934,6 +26998,76 @@ } ], "intrinio": [ + { + "name": "source", + "type": "str", + "description": "The source of the news article.", + "default": null, + "optional": true + }, + { + "name": "summary", + "type": "str", + "description": "The summary of the news article.", + "default": null, + "optional": true + }, + { + "name": "topics", + "type": "str", + "description": "The topics related to the news article.", + "default": null, + "optional": true + }, + { + "name": "word_count", + "type": "int", + "description": "The word count of the news article.", + "default": null, + "optional": true + }, + { + "name": "business_relevance", + "type": "float", + "description": "How strongly correlated the news article is to the business", + "default": null, + "optional": true + }, + { + "name": "sentiment", + "type": "str", + "description": "The sentiment of the news article - i.e, negative, positive.", + "default": null, + "optional": true + }, + { + "name": "sentiment_confidence", + "type": "float", + "description": "The confidence score of the sentiment rating.", + "default": null, + "optional": true + }, + { + "name": "language", + "type": "str", + "description": "The language of the news article.", + "default": null, + "optional": true + }, + { + "name": "spam", + "type": "bool", + "description": "Whether the news article is spam.", + "default": null, + "optional": true + }, + { + "name": "copyright", + "type": "str", + "description": "The copyright notice of the news article.", + "default": null, + "optional": true + }, { "name": "id", "type": "str", @@ -26943,10 +27077,17 @@ }, { "name": "company", - "type": "Dict[str, Any]", - "description": "Company details related to the news article.", - "default": "", - "optional": false + "type": "IntrinioCompany", + "description": "The Intrinio Company object. Contains details company reference data.", + "default": null, + "optional": true + }, + { + "name": "security", + "type": "IntrinioSecurity", + "description": "The Intrinio Security object. Contains the security details related to the news article.", + "default": null, + "optional": true } ], "tiingo": [ @@ -27129,7 +27270,71 @@ "optional": true } ], - "intrinio": [], + "intrinio": [ + { + "name": "source", + "type": "Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases']", + "description": "The source of the news article.", + "default": null, + "optional": true + }, + { + "name": "sentiment", + "type": "Literal['positive', 'neutral', 'negative']", + "description": "Return news only from this source.", + "default": null, + "optional": true + }, + { + "name": "language", + "type": "str", + "description": "Filter by language. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "topic", + "type": "str", + "description": "Filter by topic. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "word_count_greater_than", + "type": "int", + "description": "News stories will have a word count greater than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "word_count_less_than", + "type": "int", + "description": "News stories will have a word count less than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "is_spam", + "type": "bool", + "description": "Filter whether it is marked as spam or not. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "business_relevance_greater_than", + "type": "float", + "description": "News stories will have a business relevance score more than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + }, + { + "name": "business_relevance_less_than", + "type": "float", + "description": "News stories will have a business relevance score less than this value. Unsupported for yahoo source.", + "default": null, + "optional": true + } + ], "polygon": [ { "name": "order", @@ -27292,12 +27497,89 @@ } ], "intrinio": [ + { + "name": "source", + "type": "str", + "description": "The source of the news article.", + "default": null, + "optional": true + }, + { + "name": "summary", + "type": "str", + "description": "The summary of the news article.", + "default": null, + "optional": true + }, + { + "name": "topics", + "type": "str", + "description": "The topics related to the news article.", + "default": null, + "optional": true + }, + { + "name": "word_count", + "type": "int", + "description": "The word count of the news article.", + "default": null, + "optional": true + }, + { + "name": "business_relevance", + "type": "float", + "description": "How strongly correlated the news article is to the business", + "default": null, + "optional": true + }, + { + "name": "sentiment", + "type": "str", + "description": "The sentiment of the news article - i.e, negative, positive.", + "default": null, + "optional": true + }, + { + "name": "sentiment_confidence", + "type": "float", + "description": "The confidence score of the sentiment rating.", + "default": null, + "optional": true + }, + { + "name": "language", + "type": "str", + "description": "The language of the news article.", + "default": null, + "optional": true + }, + { + "name": "spam", + "type": "bool", + "description": "Whether the news article is spam.", + "default": null, + "optional": true + }, + { + "name": "copyright", + "type": "str", + "description": "The copyright notice of the news article.", + "default": null, + "optional": true + }, { "name": "id", "type": "str", "description": "Article ID.", "default": "", "optional": false + }, + { + "name": "security", + "type": "IntrinioSecurity", + "description": "The Intrinio Security object. Contains the security details related to the news article.", + "default": null, + "optional": true } ], "polygon": [ @@ -27530,7 +27812,7 @@ }, { "name": "cik", - "type": "Union[str, int]", + "type": "Union[int, str]", "description": "Central Index Key (CIK)", "default": null, "optional": true diff --git a/openbb_platform/openbb/package/__init__.py b/openbb_platform/openbb/package/__init__.py deleted file mode 100644 index 3d627c7ba620..000000000000 --- a/openbb_platform/openbb/package/__init__.py +++ /dev/null @@ -1 +0,0 @@ -### THIS FILE IS AUTO-GENERATED. DO NOT EDIT. ### diff --git a/openbb_platform/openbb/package/derivatives_options.py b/openbb_platform/openbb/package/derivatives_options.py index 4e95763ec5f9..4490181503de 100644 --- a/openbb_platform/openbb/package/derivatives_options.py +++ b/openbb_platform/openbb/package/derivatives_options.py @@ -209,9 +209,9 @@ def unusual( The type of unusual activity to query for. (provider: intrinio) sentiment : Optional[Literal['bullish', 'bearish', 'neutral']] The sentiment type to query for. (provider: intrinio) - min_value : Optional[Union[float, int]] + min_value : Optional[Union[int, float]] The inclusive minimum total value for the unusual activity. (provider: intrinio) - max_value : Optional[Union[float, int]] + max_value : Optional[Union[int, float]] The inclusive maximum total value for the unusual activity. (provider: intrinio) limit : int The number of data entries to return. A typical day for all symbols will yield 50-80K records. The API will paginate at 1000 records. The high default limit (100K) is to be able to reliably capture the most days. The high absolute limit (1.25M) is to allow for outlier days. Queries at the absolute limit will take a long time, and might be unreliable. Apply filters to improve performance. (provider: intrinio) diff --git a/openbb_platform/openbb/package/economy.py b/openbb_platform/openbb/package/economy.py index dd5c0cfb118f..0422146ba39b 100644 --- a/openbb_platform/openbb/package/economy.py +++ b/openbb_platform/openbb/package/economy.py @@ -794,7 +794,7 @@ def fred_search( The number of data entries to return. (1-1000) (provider: fred) offset : Optional[Annotated[int, Ge(ge=0)]] Offset the results in conjunction with limit. (provider: fred) - filter_variable : Literal[None, 'frequency', 'units', 'seasonal_adjustment'] + filter_variable : Optional[Literal['frequency', 'units', 'seasonal_adjustment']] Filter by an attribute. (provider: fred) filter_value : Optional[str] String value to filter the variable by. Used in conjunction with filter_variable. (provider: fred) @@ -931,7 +931,7 @@ def fred_series( The provider to use for the query, by default None. If None, the provider specified in defaults is selected or 'fred' if there is no default. - frequency : Literal[None, 'a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem'] + frequency : Optional[Literal['a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']] Frequency aggregation to convert high frequency data to lower frequency. None = No change @@ -950,7 +950,7 @@ def fred_series( bwew = Biweekly, Ending Wednesday bwem = Biweekly, Ending Monday (provider: fred) - aggregation_method : Literal[None, 'avg', 'sum', 'eop'] + aggregation_method : Optional[Literal['avg', 'sum', 'eop']] A key that indicates the aggregation method used for frequency aggregation. This parameter has no affect if the frequency parameter is not set. @@ -958,7 +958,7 @@ def fred_series( sum = Sum eop = End of Period (provider: fred) - transform : Literal[None, 'chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log'] + transform : Optional[Literal['chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']] Transformation type None = No transformation diff --git a/openbb_platform/openbb/package/equity_fundamental.py b/openbb_platform/openbb/package/equity_fundamental.py index 0ed3fc957b8f..4606e106d1ea 100644 --- a/openbb_platform/openbb/package/equity_fundamental.py +++ b/openbb_platform/openbb/package/equity_fundamental.py @@ -619,9 +619,9 @@ def cash( Period of report date greater than or equal to the given date. (provider: polygon) include_sources : bool Whether to include the sources of the financial statement. (provider: polygon) - order : Literal[None, 'asc', 'desc'] + order : Optional[Literal['asc', 'desc']] Order of the financial statement. (provider: polygon) - sort : Literal[None, 'filing_date', 'period_of_report_date'] + sort : Optional[Literal['filing_date', 'period_of_report_date']] Sort of the financial statement. (provider: polygon) Returns @@ -1197,7 +1197,7 @@ def filings( End date of the data, in YYYY-MM-DD format. (provider: intrinio) thea_enabled : Optional[bool] Return filings that have been read by Intrinio's Thea NLP. (provider: intrinio) - cik : Optional[Union[str, int]] + cik : Optional[Union[int, str]] Lookup filings by Central Index Key (CIK) instead of by symbol. (provider: sec) use_cache : bool Whether or not to use cache. If True, cache will store for one day. (provider: sec) @@ -1246,7 +1246,7 @@ def filings( Industry category of the company. (provider: intrinio) report_date : Optional[date] The date of the filing. (provider: sec) - act : Optional[Union[str, int]] + act : Optional[Union[int, str]] The SEC Act number. (provider: sec) items : Optional[Union[str, float]] The SEC Item numbers. (provider: sec) @@ -1254,17 +1254,17 @@ def filings( The description of the primary document. (provider: sec) primary_doc : Optional[str] The filename of the primary document. (provider: sec) - accession_number : Optional[Union[str, int]] + accession_number : Optional[Union[int, str]] The accession number. (provider: sec) - file_number : Optional[Union[str, int]] + file_number : Optional[Union[int, str]] The file number. (provider: sec) - film_number : Optional[Union[str, int]] + film_number : Optional[Union[int, str]] The film number. (provider: sec) - is_inline_xbrl : Optional[Union[str, int]] + is_inline_xbrl : Optional[Union[int, str]] Whether the filing is an inline XBRL filing. (provider: sec) - is_xbrl : Optional[Union[str, int]] + is_xbrl : Optional[Union[int, str]] Whether the filing is an XBRL filing. (provider: sec) - size : Optional[Union[str, int]] + size : Optional[Union[int, str]] The size of the filing. (provider: sec) complete_submission_url : Optional[str] The URL to the complete filing submission. (provider: sec) diff --git a/openbb_platform/openbb/package/equity_ownership.py b/openbb_platform/openbb/package/equity_ownership.py index 7311c9aa7ebc..45fd01edb5f4 100644 --- a/openbb_platform/openbb/package/equity_ownership.py +++ b/openbb_platform/openbb/package/equity_ownership.py @@ -245,7 +245,7 @@ def insider_trading( Expiration date of the derivative. (provider: intrinio) underlying_security_title : Optional[str] Name of the underlying non-derivative security related to this derivative transaction. (provider: intrinio) - underlying_shares : Optional[Union[float, int]] + underlying_shares : Optional[Union[int, float]] Number of underlying shares related to this derivative transaction. (provider: intrinio) nature_of_ownership : Optional[str] Nature of ownership of the insider trading. (provider: intrinio) diff --git a/openbb_platform/openbb/package/equity_price.py b/openbb_platform/openbb/package/equity_price.py index 369b2c14646d..a174d0b9e4bc 100644 --- a/openbb_platform/openbb/package/equity_price.py +++ b/openbb_platform/openbb/package/equity_price.py @@ -117,7 +117,7 @@ def historical( The low price. close : float The close price. - volume : Optional[Union[float, int]] + volume : Optional[Union[int, float]] The trading volume. vwap : Optional[float] Volume Weighted Average Price over the period. @@ -508,9 +508,9 @@ def quote( The low price. close : Optional[float] The close price. - volume : Optional[Union[float, int]] + volume : Optional[Union[int, float]] The trading volume. - exchange_volume : Optional[Union[float, int]] + exchange_volume : Optional[Union[int, float]] Volume of shares exchanged during the trading day on the specific exchange. prev_close : Optional[float] The previous close price. diff --git a/openbb_platform/openbb/package/etf.py b/openbb_platform/openbb/package/etf.py index fba228608680..0c30a66ca2bb 100644 --- a/openbb_platform/openbb/package/etf.py +++ b/openbb_platform/openbb/package/etf.py @@ -155,7 +155,7 @@ def equity_exposure( The number of shares held in the ETF. weight : Optional[float] The weight of the equity in the ETF, as a normalized percent. - market_value : Optional[Union[float, int]] + market_value : Optional[Union[int, float]] The market value of the equity position in the ETF. Examples @@ -279,7 +279,7 @@ def historical( The low price. close : float The close price. - volume : Optional[Union[float, int]] + volume : Optional[Union[int, float]] The trading volume. vwap : Optional[float] Volume Weighted Average Price over the period. @@ -538,11 +538,11 @@ def holdings( The floating rate spread for reveivable portion of the swap. (provider: sec) rate_tenor_rec : Optional[str] The rate tenor for receivable portion of the swap. (provider: sec) - rate_tenor_unit_rec : Optional[Union[str, int]] + rate_tenor_unit_rec : Optional[Union[int, str]] The rate tenor unit for receivable portion of the swap. (provider: sec) reset_date_rec : Optional[str] The reset date for receivable portion of the swap. (provider: sec) - reset_date_unit_rec : Optional[Union[str, int]] + reset_date_unit_rec : Optional[Union[int, str]] The reset date unit for receivable portion of the swap. (provider: sec) rate_type_pmnt : Optional[str] The type of rate for payment portion of the swap. (provider: sec) @@ -556,11 +556,11 @@ def holdings( The floating rate spread for payment portion of the swap. (provider: sec) rate_tenor_pmnt : Optional[str] The rate tenor for payment portion of the swap. (provider: sec) - rate_tenor_unit_pmnt : Optional[Union[str, int]] + rate_tenor_unit_pmnt : Optional[Union[int, str]] The rate tenor unit for payment portion of the swap. (provider: sec) reset_date_pmnt : Optional[str] The reset date for payment portion of the swap. (provider: sec) - reset_date_unit_pmnt : Optional[Union[str, int]] + reset_date_unit_pmnt : Optional[Union[int, str]] The reset date unit for payment portion of the swap. (provider: sec) repo_type : Optional[str] The type of repo. (provider: sec) diff --git a/openbb_platform/openbb/package/news.py b/openbb_platform/openbb/package/news.py index d137098644da..d951f6be51b6 100644 --- a/openbb_platform/openbb/package/news.py +++ b/openbb_platform/openbb/package/news.py @@ -96,10 +96,27 @@ def company( Content types of the news to retrieve. (provider: benzinga) page : Optional[int] Page number of the results. Use in combination with limit. (provider: fmp) + source : Optional[Union[Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases'], str]] + The source of the news article. (provider: intrinio); + A comma-separated list of the domains requested. (provider: tiingo) + sentiment : Optional[Literal['positive', 'neutral', 'negative']] + Return news only from this source. (provider: intrinio) + language : Optional[str] + Filter by language. Unsupported for yahoo source. (provider: intrinio) + topic : Optional[str] + Filter by topic. Unsupported for yahoo source. (provider: intrinio) + word_count_greater_than : Optional[int] + News stories will have a word count greater than this value. Unsupported for yahoo source. (provider: intrinio) + word_count_less_than : Optional[int] + News stories will have a word count less than this value. Unsupported for yahoo source. (provider: intrinio) + is_spam : Optional[bool] + Filter whether it is marked as spam or not. Unsupported for yahoo source. (provider: intrinio) + business_relevance_greater_than : Optional[float] + News stories will have a business relevance score more than this value. Unsupported for yahoo source. (provider: intrinio) + business_relevance_less_than : Optional[float] + News stories will have a business relevance score less than this value. Unsupported for yahoo source. (provider: intrinio) offset : Optional[int] Page offset, used in conjunction with limit. (provider: tiingo) - source : Optional[str] - A comma-separated list of the domains requested. (provider: tiingo) Returns ------- @@ -145,9 +162,30 @@ def company( Updated date of the news. (provider: benzinga) source : Optional[str] Name of the news source. (provider: fmp); + The source of the news article. (provider: intrinio); Source of the article. (provider: polygon); News source. (provider: tiingo); Source of the news article (provider: yfinance) + summary : Optional[str] + The summary of the news article. (provider: intrinio) + topics : Optional[str] + The topics related to the news article. (provider: intrinio) + word_count : Optional[int] + The word count of the news article. (provider: intrinio) + business_relevance : Optional[float] + How strongly correlated the news article is to the business (provider: intrinio) + sentiment : Optional[str] + The sentiment of the news article - i.e, negative, positive. (provider: intrinio) + sentiment_confidence : Optional[float] + The confidence score of the sentiment rating. (provider: intrinio) + language : Optional[str] + The language of the news article. (provider: intrinio) + spam : Optional[bool] + Whether the news article is spam. (provider: intrinio) + copyright : Optional[str] + The copyright notice of the news article. (provider: intrinio) + security : Optional[IntrinioSecurity] + The Intrinio Security object. Contains the security details related to the news article. (provider: intrinio) amp_url : Optional[str] AMP URL. (provider: polygon) publisher : Optional[PolygonPublisher] @@ -275,10 +313,27 @@ def world( Authors of the news to retrieve. (provider: benzinga) content_types : Optional[str] Content types of the news to retrieve. (provider: benzinga) + source : Optional[Union[Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases'], str]] + The source of the news article. (provider: intrinio); + A comma-separated list of the domains requested. (provider: tiingo) + sentiment : Optional[Literal['positive', 'neutral', 'negative']] + Return news only from this source. (provider: intrinio) + language : Optional[str] + Filter by language. Unsupported for yahoo source. (provider: intrinio) + topic : Optional[str] + Filter by topic. Unsupported for yahoo source. (provider: intrinio) + word_count_greater_than : Optional[int] + News stories will have a word count greater than this value. Unsupported for yahoo source. (provider: intrinio) + word_count_less_than : Optional[int] + News stories will have a word count less than this value. Unsupported for yahoo source. (provider: intrinio) + is_spam : Optional[bool] + Filter whether it is marked as spam or not. Unsupported for yahoo source. (provider: intrinio) + business_relevance_greater_than : Optional[float] + News stories will have a business relevance score more than this value. Unsupported for yahoo source. (provider: intrinio) + business_relevance_less_than : Optional[float] + News stories will have a business relevance score less than this value. Unsupported for yahoo source. (provider: intrinio) offset : Optional[int] Page offset, used in conjunction with limit. (provider: tiingo) - source : Optional[str] - A comma-separated list of the domains requested. (provider: tiingo) Returns ------- @@ -322,8 +377,30 @@ def world( Updated date of the news. (provider: benzinga) site : Optional[str] News source. (provider: fmp, tiingo) - company : Optional[Dict[str, Any]] - Company details related to the news article. (provider: intrinio) + source : Optional[str] + The source of the news article. (provider: intrinio) + summary : Optional[str] + The summary of the news article. (provider: intrinio) + topics : Optional[str] + The topics related to the news article. (provider: intrinio) + word_count : Optional[int] + The word count of the news article. (provider: intrinio) + business_relevance : Optional[float] + How strongly correlated the news article is to the business (provider: intrinio) + sentiment : Optional[str] + The sentiment of the news article - i.e, negative, positive. (provider: intrinio) + sentiment_confidence : Optional[float] + The confidence score of the sentiment rating. (provider: intrinio) + language : Optional[str] + The language of the news article. (provider: intrinio) + spam : Optional[bool] + Whether the news article is spam. (provider: intrinio) + copyright : Optional[str] + The copyright notice of the news article. (provider: intrinio) + company : Optional[IntrinioCompany] + The Intrinio Company object. Contains details company reference data. (provider: intrinio) + security : Optional[IntrinioSecurity] + The Intrinio Security object. Contains the security details related to the news article. (provider: intrinio) symbols : Optional[str] Ticker tagged in the fetched news. (provider: tiingo) article_id : Optional[int] diff --git a/openbb_platform/openbb/package/regulators_sec.py b/openbb_platform/openbb/package/regulators_sec.py deleted file mode 100644 index b0d674356e83..000000000000 --- a/openbb_platform/openbb/package/regulators_sec.py +++ /dev/null @@ -1,489 +0,0 @@ -### THIS FILE IS AUTO-GENERATED. DO NOT EDIT. ### - -from typing import Literal, Optional - -from openbb_core.app.model.field import OpenBBField -from openbb_core.app.model.obbject import OBBject -from openbb_core.app.static.container import Container -from openbb_core.app.static.utils.decorators import exception_handler, validate -from openbb_core.app.static.utils.filters import filter_inputs -from typing_extensions import Annotated - - -class ROUTER_regulators_sec(Container): - """/regulators/sec - cik_map - institutions_search - rss_litigation - schema_files - sic_search - symbol_map - """ - - def __repr__(self) -> str: - return self.__doc__ or "" - - @exception_handler - @validate - def cik_map( - self, - symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")], - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Map a ticker symbol to a CIK number. - - Parameters - ---------- - symbol : str - Symbol to get data for. - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - use_cache : Optional[bool] - Whether or not to use cache for the request, default is True. (provider: sec) - - Returns - ------- - OBBject - results : CikMap - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - CikMap - ------ - cik : Optional[Union[int, str]] - Central Index Key (CIK) for the requested entity. - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.cik_map(symbol='MSFT', provider='sec') - """ # noqa: E501 - - return self._run( - "/regulators/sec/cik_map", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/cik_map", - ("sec",), - ) - }, - standard_params={ - "symbol": symbol, - }, - extra_params=kwargs, - ) - ) - - @exception_handler - @validate - def institutions_search( - self, - query: Annotated[str, OpenBBField(description="Search query.")] = "", - use_cache: Annotated[ - Optional[bool], - OpenBBField( - description="Whether or not to use cache. If True, cache will store for seven days." - ), - ] = True, - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Search SEC-regulated institutions by name and return a list of results with CIK numbers. - - Parameters - ---------- - query : str - Search query. - use_cache : Optional[bool] - Whether or not to use cache. - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - - Returns - ------- - OBBject - results : List[InstitutionsSearch] - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - InstitutionsSearch - ------------------ - name : Optional[str] - The name of the institution. (provider: sec) - cik : Optional[Union[str, int]] - Central Index Key (CIK) (provider: sec) - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.institutions_search(provider='sec') - >>> obb.regulators.sec.institutions_search(query='blackstone real estate', provider='sec') - """ # noqa: E501 - - return self._run( - "/regulators/sec/institutions_search", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/institutions_search", - ("sec",), - ) - }, - standard_params={ - "query": query, - "use_cache": use_cache, - }, - extra_params=kwargs, - ) - ) - - @exception_handler - @validate - def rss_litigation( - self, - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Get the RSS feed that provides links to litigation releases concerning civil lawsuits brought by the Commission in federal court. - - Parameters - ---------- - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - - Returns - ------- - OBBject - results : List[RssLitigation] - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - RssLitigation - ------------- - published : Optional[datetime] - The date of publication. (provider: sec) - title : Optional[str] - The title of the release. (provider: sec) - summary : Optional[str] - Short summary of the release. (provider: sec) - id : Optional[str] - The identifier associated with the release. (provider: sec) - link : Optional[str] - URL to the release. (provider: sec) - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.rss_litigation(provider='sec') - """ # noqa: E501 - - return self._run( - "/regulators/sec/rss_litigation", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/rss_litigation", - ("sec",), - ) - }, - standard_params={}, - extra_params=kwargs, - ) - ) - - @exception_handler - @validate - def schema_files( - self, - query: Annotated[str, OpenBBField(description="Search query.")] = "", - use_cache: Annotated[ - Optional[bool], - OpenBBField( - description="Whether or not to use cache. If True, cache will store for seven days." - ), - ] = True, - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Use tool for navigating the directory of SEC XML schema files by year. - - Parameters - ---------- - query : str - Search query. - use_cache : Optional[bool] - Whether or not to use cache. - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - url : Optional[str] - Enter an optional URL path to fetch the next level. (provider: sec) - - Returns - ------- - OBBject - results : SchemaFiles - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - SchemaFiles - ----------- - files : Optional[List[str]] - Dictionary of URLs to SEC Schema Files (provider: sec) - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.schema_files(provider='sec') - >>> # Get a list of schema files. - >>> data = obb.regulators.sec.schema_files().results - >>> data.files[0] - >>> 'https://xbrl.fasb.org/us-gaap/' - >>> # The directory structure can be navigated by constructing a URL from the 'results' list. - >>> url = data.files[0]+data.files[-1] - >>> # The URL base will always be the 0 position in the list, feed the URL back in as a parameter. - >>> obb.regulators.sec.schema_files(url=url).results.files - >>> ['https://xbrl.fasb.org/us-gaap/2024/' - >>> 'USGAAP2024FileList.xml' - >>> 'dis/' - >>> 'dqcrules/' - >>> 'ebp/' - >>> 'elts/' - >>> 'entire/' - >>> 'meta/' - >>> 'stm/' - >>> 'us-gaap-2024.zip'] - """ # noqa: E501 - - return self._run( - "/regulators/sec/schema_files", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/schema_files", - ("sec",), - ) - }, - standard_params={ - "query": query, - "use_cache": use_cache, - }, - extra_params=kwargs, - ) - ) - - @exception_handler - @validate - def sic_search( - self, - query: Annotated[str, OpenBBField(description="Search query.")] = "", - use_cache: Annotated[ - Optional[bool], - OpenBBField( - description="Whether or not to use cache. If True, cache will store for seven days." - ), - ] = True, - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Search for Industry Titles, Reporting Office, and SIC Codes. An empty query string returns all results. - - Parameters - ---------- - query : str - Search query. - use_cache : Optional[bool] - Whether or not to use cache. - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - - Returns - ------- - OBBject - results : List[SicSearch] - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - SicSearch - --------- - sic : Optional[int] - Sector Industrial Code (SIC) (provider: sec) - industry : Optional[str] - Industry title. (provider: sec) - office : Optional[str] - Reporting office within the Corporate Finance Office (provider: sec) - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.sic_search(provider='sec') - >>> obb.regulators.sec.sic_search(query='real estate investment trusts', provider='sec') - """ # noqa: E501 - - return self._run( - "/regulators/sec/sic_search", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/sic_search", - ("sec",), - ) - }, - standard_params={ - "query": query, - "use_cache": use_cache, - }, - extra_params=kwargs, - ) - ) - - @exception_handler - @validate - def symbol_map( - self, - query: Annotated[str, OpenBBField(description="Search query.")], - use_cache: Annotated[ - Optional[bool], - OpenBBField( - description="Whether or not to use cache. If True, cache will store for seven days." - ), - ] = True, - provider: Annotated[ - Optional[Literal["sec"]], - OpenBBField( - description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'sec' if there is\n no default." - ), - ] = None, - **kwargs - ) -> OBBject: - """Map a CIK number to a ticker symbol, leading 0s can be omitted or included. - - Parameters - ---------- - query : str - Search query. - use_cache : Optional[bool] - Whether or not to use cache. If True, cache will store for seven days. - provider : Optional[Literal['sec']] - The provider to use for the query, by default None. - If None, the provider specified in defaults is selected or 'sec' if there is - no default. - - Returns - ------- - OBBject - results : SymbolMap - Serializable results. - provider : Optional[Literal['sec']] - Provider name. - warnings : Optional[List[Warning_]] - List of warnings. - chart : Optional[Chart] - Chart object. - extra : Dict[str, Any] - Extra info. - - SymbolMap - --------- - symbol : Optional[str] - Symbol representing the entity requested in the data. (provider: sec) - - Examples - -------- - >>> from openbb import obb - >>> obb.regulators.sec.symbol_map(query='0000789019', provider='sec') - """ # noqa: E501 - - return self._run( - "/regulators/sec/symbol_map", - **filter_inputs( - provider_choices={ - "provider": self._get_provider( - provider, - "/regulators/sec/symbol_map", - ("sec",), - ) - }, - standard_params={ - "query": query, - "use_cache": use_cache, - }, - extra_params=kwargs, - ) - ) diff --git a/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py b/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py index 8892cfd770be..3fb167bf1e9b 100644 --- a/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py +++ b/openbb_platform/providers/government_us/openbb_government_us/models/treasury_prices.py @@ -2,7 +2,7 @@ # pylint: disable=unused-argument import asyncio -from datetime import datetime, timedelta +from datetime import date, timedelta from io import StringIO from typing import Any, Dict, List, Literal, Optional @@ -45,18 +45,14 @@ def transform_query( params: Dict[str, Any] ) -> GovernmentUSTreasuryPricesQueryParams: """Transform query params.""" + yesterday = date.today() - timedelta(days=1) + last_bd = ( + yesterday - timedelta(yesterday.weekday() - 4) + if yesterday.weekday() > 4 + else yesterday + ) if params.get("date") is None: - _date = datetime.now().date() - else: - _date = ( - datetime.strptime(params["date"], "%Y-%m-%d").date() - if isinstance(params["date"], str) - else params["date"] - ) - if _date.weekday() > 4: - _date = _date - timedelta(days=_date.weekday() - 4) - params["date"] = _date - + params["date"] = last_bd return GovernmentUSTreasuryPricesQueryParams(**params) # pylint: disable=unused-argument diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py index 965878c06c3b..6662b4026556 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py @@ -52,7 +52,7 @@ class PolygonCurrencyPairsQueryParams(CurrencyPairsQueryParams): "last_updated_utc", "delisted_utc", ] - ] = Field(default="", description="Sort field used for ordering.") + ] = Field(default=None, description="Sort field used for ordering.") limit: Optional[PositiveInt] = Field( default=1000, description=QUERY_DESCRIPTIONS.get("limit", "") ) @@ -106,9 +106,8 @@ def transform_query(params: Dict[str, Any]) -> PolygonCurrencyPairsQueryParams: """Transform the query parameters. Ticker is set if symbol is provided.""" transform_params = params now = datetime.now().date().isoformat() - transform_params["symbol"] = ( - f"ticker=C:{params.get('symbol').upper()}" if params.get("symbol") else "" - ) + symbol = params.get("symbol") + transform_params["symbol"] = f"ticker=C:{symbol.upper()}" if symbol else "" if params.get("date") is None: transform_params["date"] = now diff --git a/openbb_platform/providers/sec/openbb_sec/models/form_13FHR.py b/openbb_platform/providers/sec/openbb_sec/models/form_13FHR.py index 2fe075650b2c..cc9428ef2e48 100644 --- a/openbb_platform/providers/sec/openbb_sec/models/form_13FHR.py +++ b/openbb_platform/providers/sec/openbb_sec/models/form_13FHR.py @@ -64,6 +64,7 @@ async def aextract_data( urls = filings.iloc[: query.limit].to_list() if query.date is not None: date = parse_13f.date_to_quarter_end(query.date.strftime("%Y-%m-%d")) + filings.index = filings.index.astype(str) urls = [filings.loc[date]] results = [] diff --git a/openbb_platform/providers/sec/openbb_sec/models/rss_litigation.py b/openbb_platform/providers/sec/openbb_sec/models/rss_litigation.py index a83dd9fcb237..67444f79ac25 100644 --- a/openbb_platform/providers/sec/openbb_sec/models/rss_litigation.py +++ b/openbb_platform/providers/sec/openbb_sec/models/rss_litigation.py @@ -60,7 +60,7 @@ def extract_data( ["title", "link", "description", "pubDate", "dc:creator"] ] feed.columns = cols - feed["date"] = pd.to_datetime(feed["date"]) + feed["date"] = pd.to_datetime(feed["date"], format="mixed") feed = feed.set_index("date") # Remove special characters for column in ["title", "summary"]: diff --git a/openbb_platform/providers/sec/pyproject.toml b/openbb_platform/providers/sec/pyproject.toml index 4609f97fa5a7..545475ea31f0 100644 --- a/openbb_platform/providers/sec/pyproject.toml +++ b/openbb_platform/providers/sec/pyproject.toml @@ -11,6 +11,7 @@ python = ">=3.8,<3.12" openbb-core = "^1.1.6" requests-cache = "^1.1.0" xmltodict = "^0.13.0" +lxml = "^5.2.1" [build-system] requires = ["poetry-core"] diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/treasury_prices.py b/openbb_platform/providers/tmx/openbb_tmx/models/treasury_prices.py index 76375fed8463..2f0543aa968e 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/treasury_prices.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/treasury_prices.py @@ -1,9 +1,8 @@ -"""TMX Treasury Prices Fetcher""" +"""TMX Treasury Prices Fetcher.""" # pylint: disable=unused-argument from datetime import ( date as dateType, - datetime, timedelta, ) from typing import Any, Dict, List, Literal, Optional @@ -19,8 +18,7 @@ class TmxTreasuryPricesQueryParams(TreasuryPricesQueryParams): - """ - TMX Treasury Prices Query Params. + """TMX Treasury Prices Query Params. Data will be made available by 5:00 EST on T+1 @@ -99,13 +97,14 @@ class TmxTreasuryPricesFetcher( def transform_query(params: Dict[str, Any]) -> TmxTreasuryPricesQueryParams: """Transform query params.""" transformed_params = params.copy() - now = datetime.now() - if now.date().weekday() > 4: - now = now - timedelta(now.date().weekday() - 4) + yesterday = dateType.today() - timedelta(days=1) + last_bd = ( + yesterday - timedelta(yesterday.weekday() - 4) + if yesterday.weekday() > 4 + else yesterday + ) if "maturity_date_min" not in transformed_params: - transformed_params["maturity_date_min"] = ( - now - timedelta(days=1) - ).strftime("%Y-%m-%d") + transformed_params["maturity_date_min"] = last_bd return TmxTreasuryPricesQueryParams(**transformed_params) @staticmethod From 99b0bb5287621d040f863090d5c7861f08809472 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 7 May 2024 13:03:13 -0700 Subject: [PATCH 07/44] [Feature] EconDB Main Indicators (#6365) * add main indicators to economy.indicators * static assets * ruff * Adapt and add unit test * record test cassette * polygon test cassette * currency pairs * recapture test * mypy --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../standard_models/economic_indicators.py | 8 +- .../economy/integration/test_economy_api.py | 13 + .../integration/test_economy_python.py | 13 + .../economy/openbb_economy/economy_router.py | 4 + openbb_platform/openbb/assets/reference.json | 13 +- openbb_platform/openbb/package/economy.py | 22 +- .../models/economic_indicators.py | 67 +- .../openbb_econdb/utils/main_indicators.py | 227 +++++ ...ondb_economic_indicators_main_fetcher.yaml | 725 ++++++++++++++++ .../econdb/tests/test_econdb_fetchers.py | 18 + .../openbb_polygon/models/currency_pairs.py | 7 +- .../test_polygon_currency_pairs_fetcher.yaml | 787 +++++++++--------- 12 files changed, 1476 insertions(+), 428 deletions(-) create mode 100644 openbb_platform/providers/econdb/openbb_econdb/utils/main_indicators.py create mode 100644 openbb_platform/providers/econdb/tests/record/http/test_econdb_fetchers/test_econdb_economic_indicators_main_fetcher.yaml diff --git a/openbb_platform/core/openbb_core/provider/standard_models/economic_indicators.py b/openbb_platform/core/openbb_core/provider/standard_models/economic_indicators.py index 3abbfc861ea8..013c962440ae 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/economic_indicators.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/economic_indicators.py @@ -3,7 +3,7 @@ from datetime import date as dateType from typing import Optional, Union -from pydantic import Field, field_validator +from pydantic import Field from openbb_core.provider.abstract.data import Data from openbb_core.provider.abstract.query_params import QueryParams @@ -32,12 +32,6 @@ class EconomicIndicatorsQueryParams(QueryParams): description=QUERY_DESCRIPTIONS.get("end_date", ""), default=None ) - @field_validator("symbol", mode="before", check_fields=False) - @classmethod - def to_upper(cls, v: str) -> str: - """Convert field to uppercase.""" - return v.upper() - class EconomicIndicatorsData(Data): """Economic Indicators Data.""" diff --git a/openbb_platform/extensions/economy/integration/test_economy_api.py b/openbb_platform/extensions/economy/integration/test_economy_api.py index 839065cecef2..54ea5f6148f4 100644 --- a/openbb_platform/extensions/economy/integration/test_economy_api.py +++ b/openbb_platform/extensions/economy/integration/test_economy_api.py @@ -576,6 +576,19 @@ def test_economy_fred_regional(params, headers): "start_date": "2022-01-01", "end_date": "2024-01-01", "use_cache": False, + "frequency": None, + } + ), + ( + { + "provider": "econdb", + "country": None, + "symbol": "MAIN", + "transform": None, + "start_date": "2022-01-01", + "end_date": "2024-01-01", + "use_cache": False, + "frequency": "quarter", } ), ], diff --git a/openbb_platform/extensions/economy/integration/test_economy_python.py b/openbb_platform/extensions/economy/integration/test_economy_python.py index a838c71a2727..9a9eb1e35bd4 100644 --- a/openbb_platform/extensions/economy/integration/test_economy_python.py +++ b/openbb_platform/extensions/economy/integration/test_economy_python.py @@ -565,6 +565,19 @@ def test_economy_available_indicators(params, obb): "start_date": "2022-01-01", "end_date": "2024-01-01", "use_cache": False, + "frequency": None, + } + ), + ( + { + "provider": "econdb", + "country": None, + "symbol": "MAIN", + "transform": None, + "start_date": "2022-01-01", + "end_date": "2024-01-01", + "use_cache": False, + "frequency": "quarter", } ), ], diff --git a/openbb_platform/extensions/economy/openbb_economy/economy_router.py b/openbb_platform/extensions/economy/openbb_economy/economy_router.py index 7ccb4a723d15..19eb403cea1f 100644 --- a/openbb_platform/extensions/economy/openbb_economy/economy_router.py +++ b/openbb_platform/extensions/economy/openbb_economy/economy_router.py @@ -362,6 +362,10 @@ async def available_indicators( "provider": "econdb", }, ), + APIEx( + description="Use the `main` symbol to get the group of main indicators for a country.", + parameters={"provider": "econdb", "symbol": "main", "country": "eu"}, + ), ], ) async def indicators( diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 94947e5c4ebe..004e047344c5 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -4108,7 +4108,7 @@ "message": null }, "description": "Get economic indicators by country and indicator.", - "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.economy.indicators(provider='econdb', symbol='PCOCO')\n# Enter the country as the full name, or iso code. Use `available_indicators()` to get a list of supported indicators from EconDB.\nobb.economy.indicators(symbol='CPI', country='united_states,jp', provider='econdb')\n```\n\n", + "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.economy.indicators(provider='econdb', symbol='PCOCO')\n# Enter the country as the full name, or iso code. Use `available_indicators()` to get a list of supported indicators from EconDB.\nobb.economy.indicators(symbol='CPI', country='united_states,jp', provider='econdb')\n# Use the `main` symbol to get the group of main indicators for a country.\nobb.economy.indicators(provider='econdb', symbol='main', country='eu')\n```\n\n", "parameters": { "standard": [ { @@ -4151,14 +4151,21 @@ { "name": "transform", "type": "Literal['toya', 'tpop', 'tusd', 'tpgp']", - "description": "The transformation to apply to the data, default is None. tpop: Change from previous period toya: Change from one year ago tusd: Values as US dollars tpgp: Values as a percent of GDP Only 'tpop' and 'toya' are applicable to all indicators. Applying transformations across multiple indicators/countries may produce unexpected results. This is because not all indicators are compatible with all transformations, and the original units and scale differ between entities. `tusd` should only be used where values are currencies.", + "description": "The transformation to apply to the data, default is None. tpop: Change from previous period toya: Change from one year ago tusd: Values as US dollars tpgp: Values as a percent of GDP Only 'tpop' and 'toya' are applicable to all indicators. Applying transformations across multiple indicators/countries may produce unexpected results. This is because not all indicators are compatible with all transformations, and the original units and scale differ between entities. `tusd` should only be used where values are currencies.", "default": null, "optional": true }, + { + "name": "frequency", + "type": "Literal['annual', 'quarter', 'month']", + "description": "The frequency of the data, default is 'quarter'. Only valid when 'symbol' is 'main'.", + "default": "quarter", + "optional": true + }, { "name": "use_cache", "type": "bool", - "description": "If True, the request will be cached for one day.Using cache is recommended to avoid needlessly requesting the same data.", + "description": "If True, the request will be cached for one day. Using cache is recommended to avoid needlessly requesting the same data.", "default": true, "optional": true } diff --git a/openbb_platform/openbb/package/economy.py b/openbb_platform/openbb/package/economy.py index 0422146ba39b..56deffca0aa4 100644 --- a/openbb_platform/openbb/package/economy.py +++ b/openbb_platform/openbb/package/economy.py @@ -1083,19 +1083,21 @@ def indicators( The provider to use for the query, by default None. If None, the provider specified in defaults is selected or 'econdb' if there is no default. - transform : Literal['toya', 'tpop', 'tusd', 'tpgp'] + transform : Optional[Literal['toya', 'tpop', 'tusd', 'tpgp']] The transformation to apply to the data, default is None. - tpop: Change from previous period - toya: Change from one year ago - tusd: Values as US dollars - tpgp: Values as a percent of GDP + tpop: Change from previous period + toya: Change from one year ago + tusd: Values as US dollars + tpgp: Values as a percent of GDP - Only 'tpop' and 'toya' are applicable to all indicators. Applying transformations across multiple indicators/countries may produce unexpected results. - This is because not all indicators are compatible with all transformations, and the original units and scale differ between entities. - `tusd` should only be used where values are currencies. (provider: econdb) + Only 'tpop' and 'toya' are applicable to all indicators. Applying transformations across multiple indicators/countries may produce unexpected results. + This is because not all indicators are compatible with all transformations, and the original units and scale differ between entities. + `tusd` should only be used where values are currencies. (provider: econdb) + frequency : Literal['annual', 'quarter', 'month'] + The frequency of the data, default is 'quarter'. Only valid when 'symbol' is 'main'. (provider: econdb) use_cache : bool - If True, the request will be cached for one day.Using cache is recommended to avoid needlessly requesting the same data. (provider: econdb) + If True, the request will be cached for one day. Using cache is recommended to avoid needlessly requesting the same data. (provider: econdb) Returns ------- @@ -1130,6 +1132,8 @@ def indicators( >>> obb.economy.indicators(provider='econdb', symbol='PCOCO') >>> # Enter the country as the full name, or iso code. Use `available_indicators()` to get a list of supported indicators from EconDB. >>> obb.economy.indicators(symbol='CPI', country='united_states,jp', provider='econdb') + >>> # Use the `main` symbol to get the group of main indicators for a country. + >>> obb.economy.indicators(provider='econdb', symbol='main', country='eu') """ # noqa: E501 return self._run( diff --git a/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py b/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py index ffbadbc0a674..3bea1e58cc68 100644 --- a/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py +++ b/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py @@ -3,7 +3,7 @@ # pylint: disable=unused-argument from datetime import datetime, timedelta -from typing import Any, Dict, List, Literal, Optional +from typing import Any, Dict, List, Literal, Optional, Union from warnings import warn from openbb_core.provider.abstract.annotated_result import AnnotatedResult @@ -14,6 +14,7 @@ ) from openbb_core.provider.utils.errors import EmptyDataError from openbb_econdb.utils import helpers +from openbb_econdb.utils.main_indicators import get_main_indicators from pandas import DataFrame, concat from pydantic import Field, field_validator @@ -28,27 +29,32 @@ class EconDbEconomicIndicatorsQueryParams(EconomicIndicatorsQueryParams): "country": ["multiple_items_allowed"], } - transform: Literal["toya", "tpop", "tusd", "tpgp"] = Field( + transform: Union[None, Literal["toya", "tpop", "tusd", "tpgp"]] = Field( default=None, description="The transformation to apply to the data, default is None." + "\n" - + "\n tpop: Change from previous period" - + "\n toya: Change from one year ago" - + "\n tusd: Values as US dollars" - + "\n tpgp: Values as a percent of GDP" + + "\n tpop: Change from previous period" + + "\n toya: Change from one year ago" + + "\n tusd: Values as US dollars" + + "\n tpgp: Values as a percent of GDP" + "\n" + "\n" - + " Only 'tpop' and 'toya' are applicable to all indicators." - + " Applying transformations across multiple indicators/countries" - + " may produce unexpected results." - + "\n This is because not all indicators are compatible with all transformations," - + " and the original units and scale differ between entities." - + "\n `tusd` should only be used where values are currencies.", + + " Only 'tpop' and 'toya' are applicable to all indicators." + + " Applying transformations across multiple indicators/countries" + + " may produce unexpected results." + + "\n This is because not all indicators are compatible with all transformations," + + " and the original units and scale differ between entities." + + "\n `tusd` should only be used where values are currencies.", + ) + frequency: Literal["annual", "quarter", "month"] = Field( + default="quarter", + description="The frequency of the data, default is 'quarter'." + + " Only valid when 'symbol' is 'main'.", ) use_cache: bool = Field( default=True, description="If True, the request will be cached for one day." - + "Using cache is recommended to avoid needlessly requesting the same data.", + + " Using cache is recommended to avoid needlessly requesting the same data.", ) @field_validator("country", mode="before", check_fields=False) @@ -89,12 +95,20 @@ def validate_countries(cls, v): @classmethod def validate_symbols(cls, v): """Validate each symbol to check if it is a valid indicator.""" + if not v: + v = "main" symbols = v if isinstance(v, list) else v.split(",") new_symbols: List[str] = [] for symbol in symbols: if "_" in symbol: new_symbols.append(symbol) continue + if symbol.upper() == "MAIN": + if len(symbols) > 1: + raise ValueError( + "The 'main' indicator cannot be combined with other indicators." + ) + return symbol if not any( ( symbol.upper().startswith(indicator) @@ -135,6 +149,15 @@ def transform_query(params: Dict[str, Any]) -> EconDbEconomicIndicatorsQueryPara ).date() if new_params.get("end_date") is None: new_params["end_date"] = datetime.today().date() + countries = new_params.get("country") + if ( + countries is not None + and len(countries.split(",")) > 1 + and new_params.get("symbol", "").upper() == "MAIN" + ): + raise ValueError( + "The 'main' indicator cannot be combined with multiple countries." + ) return EconDbEconomicIndicatorsQueryParams(**new_params) @staticmethod @@ -144,6 +167,16 @@ async def aextract_data( # pylint: disable=R0914.R0912,R0915 **kwargs: Any, ) -> List[Dict]: """Extract the data.""" + if query.symbol.upper() == "MAIN": + country = query.country.upper() if query.country else "US" + return await get_main_indicators( + country, + query.start_date.strftime("%Y-%m-%d"), # type: ignore + query.end_date.strftime("%Y-%m-%d"), # type: ignore + query.frequency, + query.transform, + query.use_cache, + ) token = credentials.get("econdb_api_key", "") # type: ignore # Attempt to create a temporary token if one is not supplied. if not token: @@ -299,6 +332,14 @@ def transform_data( # pylint: disable=R0914,R0915 **kwargs: Any, ) -> AnnotatedResult[List[EconDbEconomicIndicatorsData]]: """Transform the data.""" + if query.symbol.upper() == "MAIN": + return AnnotatedResult( + result=[ + EconDbEconomicIndicatorsData.model_validate(r) + for r in data[0].get("records", []) + ], + metadata={query.country: data[0].get("metadata", [])}, + ) output = DataFrame() metadata = {} for d in data: diff --git a/openbb_platform/providers/econdb/openbb_econdb/utils/main_indicators.py b/openbb_platform/providers/econdb/openbb_econdb/utils/main_indicators.py new file mode 100644 index 000000000000..152fa8767137 --- /dev/null +++ b/openbb_platform/providers/econdb/openbb_econdb/utils/main_indicators.py @@ -0,0 +1,227 @@ +"""Main Indicators""" + +from datetime import datetime, timedelta +from typing import Dict, List, Literal + +from aiohttp_client_cache import SQLiteBackend +from aiohttp_client_cache.session import CachedSession +from numpy import arange +from openbb_core.app.utils import get_user_cache_directory +from openbb_core.provider.utils.helpers import amake_request +from openbb_econdb.utils.helpers import COUNTRY_MAP, THREE_LETTER_ISO_MAP +from pandas import Categorical, DataFrame, Series, concat, to_datetime + +trends_transform_labels_dict = { + 1: "Change from previous period.", + 2: "Change from one year ago.", + 3: "Level", + 9: "Level (USD)", +} +trends_freq_dict = { + "annual": "Y", + "quarter": "Q", + "month": "M", +} +trends_transform_dict = { + "tpop": 1, + "toya": 2, + "level": 3, + "tusd": 9, + None: 3, +} + +main_indicators_order = [ + "RGDP", + "RPRC", + "RPUC", + "RGFCF", + "REXP", + "RIMP", + "GDP", + "PRC", + "PUC", + "GFCF", + "EXP", + "IMP", + "CPI", + "PPI", + "CORE", + "URATE", + "EMP", + "ACPOP", + "RETA", + "CONF", + "IP", + "CP", + "GBAL", + "GREV", + "GSPE", + "GDEBT", + "CA", + "TB", + "NIIP", + "IIPA", + "IIPL", + "Y10YD", + "M3YD", + "HOU", + "OILPROD", + "POP", +] + + +async def fetch_data(url, use_cache: bool = True): + """Fetch the data with or without the cached session object.""" + if use_cache is True: + cache_dir = f"{get_user_cache_directory()}/http/econdb_main_indicators" + async with CachedSession( + cache=SQLiteBackend(cache_dir, expire_after=3600 * 24) + ) as session: + try: + response = await amake_request(url, session=session) + finally: + await session.close() + else: + response = await amake_request(url) + + return response + + +async def get_main_indicators( # pylint: disable=R0913,R0914,R0915 + country: str = "US", + start_date: str = (datetime.now() - timedelta(weeks=52 * 3)).strftime("%Y-%m-%d"), + end_date: str = datetime.now().strftime("%Y-%m-%d"), + frequency: Literal["annual", "quarter", "month"] = "quarter", + transform: Literal["tpop", "toya", "level", "tusd", None] = "toya", + use_cache: bool = True, +) -> List[Dict]: + """Get the main indicators for a given country.""" + freq = trends_freq_dict.get(frequency) + transform = trends_transform_dict.get(transform) # type: ignore + if len(country) == 3: + country = THREE_LETTER_ISO_MAP.get(country.upper()) + if not country: + raise ValueError(f"Error: Invalid country code -> {country}") + if country in COUNTRY_MAP: + country = COUNTRY_MAP.get(country) + if len(country) != 2: + raise ValueError( + f"Error: Please supply a 2-Letter ISO Country Code -> {country}" + ) + if country not in COUNTRY_MAP.values(): + raise ValueError(f"Error: Invalid country code -> {country}") + parents_url = ( + "https://www.econdb.com/trends/country_forecast/" + + f"?country={country}&freq={freq}&transform={transform}" + + f"&dateStart={start_date}&dateEnd={end_date}" + ) + r = await fetch_data(parents_url, use_cache) + row_names = r.get("row_names") + row_symbols = [] + row_is_parent = [] + row_symbols = [d["code"] for d in row_names] + row_is_parent = [d["is_parent"] for d in row_names] + parent_map = {d["code"]: d["is_parent"] for d in row_names} + units_col = r.get("units_col") + metadata = r.get("footnote") + row_names = r.get("row_names") + row_name_map = {d["code"]: d["verbose"].title() for d in row_names} + row_units_dict = dict(zip(row_symbols, units_col)) + units_df = concat([Series(units_col), Series(row_is_parent)], axis=1) + units_df.columns = ["units", "is_parent"] + df = DataFrame(r["data"]).set_index("indicator") + df = df.pivot(columns="obs_time", values="obs_value").filter( + items=row_symbols, axis=0 + ) + df["units"] = df.index.map(row_units_dict.get) + df["is_parent"] = df.index.map(parent_map.get) + df = df.set_index("is_parent", append=True) + + async def get_children( # pylint: disable=R0913 + parent, country, freq, transform, start_date, end_date, use_cache + ) -> DataFrame: + """Get the child elements for the main indicator symbols.""" + children_url = ( + "https://www.econdb.com/trends/get_topic_children/" + + f"?country={country}&agency=3&freq={freq}&transform={transform}" + + f"&parent_id={parent}&dateStart={start_date}&dateEnd={end_date}" + ) + child_r = await fetch_data(children_url, use_cache) + row_names = child_r.get("row_names") + row_symbols = [] + row_symbols = [d["code"] for d in row_names] + units_col = child_r.get("units_col") + metadata.extend(child_r.get("footnote")) + row_names = child_r.get("row_names") + row_name_map.update({d["code"]: d["verbose"].title() for d in row_names}) + row_units_dict = dict(zip(row_symbols, units_col)) + child_df = DataFrame(child_r["data"]).set_index("indicator") + child_df = child_df.pivot(columns="obs_time", values="obs_value").filter( + items=row_symbols, axis=0 + ) + child_df["units"] = child_df.index.map(row_units_dict.get) + # Set 'units' to 'Index' when the index is 'CONF' + if "CONF" in child_df.index and child_df.loc["CONF", "units"] == "..": + child_df.loc["CONF", "units"] = "Index" + child_df["is_parent"] = parent + child_df = child_df.reset_index() + child_df["name"] = child_df["indicator"].map(row_name_map) + return child_df + + new_df = df.reset_index() + has_children = new_df[ + new_df["is_parent"] == True # noqa pylint: disable=C0121 + ].indicator.to_list() + + async def append_children( # pylint: disable=R0913 + df, parent, country, freq, transform, start_date, end_date, use_cache + ): + """Get the child element and insert it below the parent row.""" + temp = DataFrame() + try: + children = await get_children( + parent, country, freq, transform, start_date, end_date, use_cache + ) + except Exception as _: # pylint: disable=W0718 + return df + idx = df[df["indicator"] == parent].index[0] + df1 = df[df.index <= idx] + df2 = df[df.index > idx] + temp = concat([df1, children, df2]) + return temp + + # Get the child elements for each parent. + for parent in has_children: + new_df = await append_children( + new_df, parent, country, freq, transform, start_date, end_date, use_cache + ) + + # Cast the shape, specify the order and flatten for output. + new_df["name"] = new_df["indicator"].map(row_name_map) + new_df.set_index(["indicator", "is_parent", "name", "units"], inplace=True) + new_df.columns = new_df.columns + new_df.columns = [to_datetime(d).strftime("%Y-%m-%d") for d in new_df.columns] + for col in new_df.columns: + new_df[col] = new_df[col].astype(str).str.replace(" ", "").astype(float) + new_df = new_df.apply(lambda row: row / 100 if "%" in row.name[3] else row, axis=1) + new_df = new_df.iloc[:, ::-1] + new_df = new_df.fillna("N/A").replace("N/A", None) + output = new_df + output.columns.name = "date" + output = output.reset_index() + filtered_df = output[output["indicator"].isin(main_indicators_order)].copy() + filtered_df["indicator"] = Categorical( + filtered_df["indicator"], categories=main_indicators_order, ordered=True + ) + filtered_df.sort_values("indicator", inplace=True) + output = filtered_df + output.set_index(["indicator", "is_parent", "name", "units"], inplace=True) + output["index_order"] = arange(len(output)) + output = output.reset_index().melt( + id_vars=["index_order", "indicator", "is_parent", "name", "units"], + var_name="date", + value_name="value", + ) + output = output.rename(columns={"indicator": "symbol_root"}) + results = {"records": output.to_dict(orient="records"), "metadata": metadata} + return [results] diff --git a/openbb_platform/providers/econdb/tests/record/http/test_econdb_fetchers/test_econdb_economic_indicators_main_fetcher.yaml b/openbb_platform/providers/econdb/tests/record/http/test_econdb_fetchers/test_econdb_economic_indicators_main_fetcher.yaml new file mode 100644 index 000000000000..b153e357abd9 --- /dev/null +++ b/openbb_platform/providers/econdb/tests/record/http/test_econdb_fetchers/test_econdb_economic_indicators_main_fetcher.yaml @@ -0,0 +1,725 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/country_forecast/?country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&transform=3 + response: + body: + string: !!binary | + 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 + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880295ffe814842b-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:55 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=rYisCxY6XmAY4ydM4%2BTrfLXjH3mrJKT%2Fa%2F27o738u7EnsK0%2BsAt3Y4Wu17D1Z3CeVihZR3BiuuzA0YjzD5qlZri14SE25tdyvR7JMJCl5Owu7tVzmoDUO%2Fa4VQC7jWRdMzObulrheGXl79Lb"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=RGDP&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+2aYW+jNhjHv4rF63DFNhC4l7vtTos0rdeu0raoilxwIjaCM+z0Up363Wc/Cb0o + zc3enBDphhRZxJinP9y//zz4yeegZIoFb9H0cyAe5ExVS66/BSQiJIyw/vwSRW/h83swQjDmkdVr + GDQmKM2J6a7kbC5aXjCp9Ik5qyU3vU1ZFUyJ1gy+ub55Z4YWYt2o9sl0Ta5NB1vwpniaVaXposHz + CB1DiS0oFBFC+0EZW1BiFJFxLyg4sqAkKMdpDyjUrpUY5XHWD4pdKzTraVZsWqEoy3AvKA5aSWjc + zwqyaIXkKB3nzih3Z/QVjZIl7hbnhWLRikahaT8oNq1olDx118p/R7H7Co0QjvvQit1XNEqUJ/2g + 2LWSJlEvKC5ayd3d1msF2bSS6n+Qc5Lw4f279+c1ltRZt54sFrVQgsbEWS1+LDa5UPpvrMWHxcFb + xoi4JwqeLHZzSdyXkSeLXS+Ze7Ltx2LVS6zfQfpa07a8JUXUPfP/4dfrM9pLikjqLBc/FNuzKNWZ + v/OK9kKxPosynVg6v4R4oNi9Rc9Kljhn/n4oNq1om6POiaUfik0rYzTGfWjFKW9J3c3fbwXZtZLk + zrL98afz+kqSOee4fih2rWTusvVCcfCVJHE2fg8UB18ZozTqCcWuFeyeyvmh2J9BcdIPilUrWrbZ + yVHut1fyzYy1LTMDp9PoTTRC2DTENNQ0sWkS06SmGZsmxF2ro0wz8yWHS7cB4CyGEBhiYAiCk9fX + YgiKISqGQBgiEYhEtiwQidDXVxOISyAugUgEIhGIRCAShUgUv76abm8S4lKIRCEShUgUIlGIRPOD + q83kNfzT7MtWeMHrWgbDrviwKz7sig+74mfYFZ8aywLjacWnWcMASfuOKPl+pEfePgi57eKsRqu2 + emSKo0I0cr1cqUo0ZtiKlWXVLMwwTFYb0yVXrAmLmkljY8HuBlas5c0LvsYI1k2lYMR3zRs0uf7N + DFRV8SdvgUfxjep4treybmvTcSV5W3F5tT1x9Qczf67ViOEOMdxDvAqeYfZ9XHWoCQw1AVdXHWoC + /9OagNVV74676vqhrooLmOrd10z17tBUgfDUnjrUQ4Z6yFAPGeohJ/HWLtShuS5aISWaVxteooKt + KqX7NNeS9eezBu240W7P7Dst4IaAG+5wwxfckySyQ5FoKBINRSKfRPbbLxLZzHYX6dBr+WYlWiWR + mKOFEKVErCmR9rrHquCyH6/VZMetFk7sO+0ONhTzEGBDDRt2sCdy2qFsdmz1DGWzY7MylM2OoXzb + ZTO70+4iHTpttby402qy404LJ/addgf7dafdv/2d2/a9E937Ls1FX10u+Si/nLjvO3XPCmEkO92X + uPPh/ct66MKcsE4xOuH+3Ohc76Cj8yRco/O4yz0Ycf3FXIKPGBHIQD6S7oB2B3F3oMfQbgztxtBu + DO3GxN2YGIQxF0I1QvGtLGr2wIH+5/m8Kiot7VulJ1Fq+YC6J+YuQL1i3RZ891y4nZgu82MAydWB + Hd5OZjcfvoeJkfUaVkAD/xY9EayA540M/1qzVvG2fgoX5QpEoVijjOLM+nm+hylZVo35wcE/prNL + ttkfE7/KHZ7/Bj+e8h/ANwAA + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880296010d9d1372-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:55 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=NhwvBeyxSjZDAdaOcuN3Ro6vLGWZC5ANLu9fHKL4%2BaYHNQ5Gar67iucoLa9rzhknanhDAyLhMI0K0KQ9LToR7kRNxAohY2S11Mg9gYdvhdirO5K2VJRiOz2HstCFirVfMbiEe39dojGwSlVO"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=GDP&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+2ZXY+bOBSG/4rFdehgm/DRy3bbUSOtdrqzI7WNRpEHnIiW4Cwm04yq+e9rH2Aa + NdnauySeiyJFFnEOJy/m5fHB/ublrGHeSzT/5ok7uWiKNVffPBIQ4gdYff4Kgpfw+eRNEMTcs3IL + QXGI0hTr7kIulqLmGZON+mHJSsl1b5UXGWtErYOv/nytIzOxrZr6QffMrnQHW/Eqe1gUue6i3uME + HVMSGpREKIlCJ0pig5IYxeHUhRIc/FxJglEYkfMroWafpCiOHfiEmn2SIurCJ9TokyRAAXVyd4w+ + oYiE1MmzY/AJSVAYJ7ZKbs7IE4rRNHCjxOATNSZ4as2TIUpMPqFEkS04vxIzT0iKoiR1osTkE6IY + GzlRYvZJjB041swTSlGAHYyJmSf0v4zJ5dvXb88IFIIiYjvxDJRicAqNEA5sZ55hUoxWiVES2yJl + iBQzU0KMqHWNMlCKySshotjRqJi8EiNMXdjWAisK+oGjJ8g0/6hRSW2lvPlwdT6sqJmQprYz4TAl + JqdgRX1bqgxSYlGnpNZz8gAlVnVKEtnOP8OUmJASoNS6YhqmxOQTVTFR27eNQUqMPpkq4ttidtiz + Y6pTAkRD27nn3e9n5ImaekJq65NhSkw+SRCxrt0GKTH6JFGlm61PBigx80TdndT6DWyYEpNPVI0f + 2DJ2mBKTTyiKpg6eHQueRIgSW7LZKrltT+S7BatrpgPn8+BFMEFYN0Q3VDehbqa6iXQT68bHfauy + zBP9JYVT2wTwK4YUGHJgSIKnh+diSIohK4ZEGDIRyERaLZCJ0MOzCeQlkJdAJgKZCGQikIlCJooP + z6btRUJeCpkoZKKQiUImCplo+sPZevAq/nXxfYk742UpvXG1+1SUHle7x9XucbVbKZlrVAFwavF1 + UTFQpHgjcr6X6J7Xd0K2PXVxzxqOMlHJ7XrTFKLSERuW50W10hGYbHa6S25Y5WclkxpcXqd8w2pe + PelWArxtVTQQ8ap6gWZXH3VgU2RfeA1KGr5rOiXtNWzrUn+/kLwuuLyA/ovPTP/ZptXm72m78B5h + vIcAdFzeH5f3x+X9cXn/fwH05gCg27uyyNzz8+Zf+Hmzx0+Qdmp8jrsZ426GLULH3YxfdDfDgNE+ + 0x5HL2shJVoWO56jjG2KhpVICVozZ0jVoo4ytf2hg+pK6/RBp9/p9J90nqQ8HXd1jhXK467OuKsz + 7uoYuNol2sPqm91G1I1EYolWQuQSsSpHimv3RcalE6wqTUepCv0dVHmr0hdLH1T6SqXfqzxJ0Tpu + bR0r5MetrXFr61ff2jJCtUu0B9V36+eGqtJ0FKrQ30G1WBugun/FHVjdLRQ7XFN5pveO55mWn8O3 + t71xF5nQdpzvu9f68PbJ6n2aU2wXTE6xaDY5+Wvi5MQV0uTEcLgFdJbf2eC9x4jAK9h70h/Q/iDs + D1QM7WNoH0P7GNrHhH1MCHd9KURTiYa397xkdxx0/7FcFlmhnsfrRg2bVN4A6870BYA1xbbOeEfy + 65nu0lvskjc/0Ox6trj8DUZElltwdwX3Qd0TlsEEIf2/t6xueF0++Kt8o64fRmBdVHrX/qd15prt + 9mPCg5n98R8JHCMx3TYAAA== + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 88029601ee771372-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=JbCTDTq01Js0dRoNsb3acl3RA9GIUTTNDQtnt0U6P3zSOb22MPIonj08mOZyCOaPFUDdAKbi%2FNrcduejpyQ4yfazbAVxb9R%2B%2FyaHDjjN7weV6oHpt%2FRfHhJjTU%2BBhTL8dQVsBKyqYbCWP%2FQn"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=CPI&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+2XbW/aMBDHv0qU103J09bRl0V7Ud5Ax6RJQygyjqFeg41spw+q+t1nX2KgHcNI + tNYmRYqQczk7P87n/12ewxIpFF4G0+eQz2Wh6IrouzCN0zSKE319j+NLuH6GZwH43KOqNk5JEp/H + 2kZlseCCYCSVti5QJYmxspJipLgwy43H12Y25jVT4slYhmNjQEvC8FNBS2PKwpezYB9G7sDI/GBc + ODA+ecFIYgfGFw8YmTs3+n4wXLnhCcOVG34wXLmR+jiwuTM3vGA45Svs98/T8DiOwejb148TsPjo + eJzI4cjSOPHD4UrTOPXB4daw+OjCciKHKz9yTxyu/Di6wp3G4cyPzz443Dr2ARyzZiZ5LJAQyDhO + p6AOcDThXEBSQkbAdgDDhfmBwh9pR73IFApO06AlMDeByU2vlMD0pmFJYIHkYjPZIDDyUGwbQ0yq + SnY9Ytcjdj1i1yP+xz3iFLRN8IeCIUDR0sZLsrPIPRFzLhuL4GWNiQjWgmISgCgblzUqS8qWxiVJ + 12CSa8QiXCFpRDJsW8o1EoRtoPXbw5pRBR7Xdi1F8R0RAKLIo2pBGvxaVOa+J4mgRPbA3vuFzKvW + LVoEaBGg9cIXCPQJWt01xF1D3DXEXUP8TzXEB1XbrrIj2wP94gBzJuuVd+02OHvFu3nQqjfWhJEl + fCvhu3+1lXGPJcp7ZGc2tAXmJmLTbXybwWwTaevxLqXy7F13bQaJXG03LbxJghRK6U1qB5kd5Hag + fTLrk1mfzPpk1ie3PjlEY8G5YlyRJhYVmhOAvkLsLuCLYGhoIfy8Fpi0B+lqNDQ280kniXqTWPph + oWM2+AH5JasatnFf5KJa6k2O8C2iLHogdHmrSNk+0id+VVdIRwOiuwEbLRYUU1QFE4UUlXoz5d85 + JwcwJ8NiMH6FuG87Ii1UcTTX8w2JCdiKMvMte7ANWqHHXZ/8jwr08hv6q7BBKRkAAA== + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 88029602cfc28417-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=RL9UtWwi44apWxWFTI503UlnzMyig8otJ9JhrSvemJ8Ri3Lxed12erUPeMPT9wLxQUsx7YzbbDN6G%2FzHeQHZD9V976dgTozJkHaMfUvg34lc2bBGPqTkSH7uE8noFlwOL5TZ9GMsFIuJLtdy"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=URATE&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+1YUW+bMBD+Kwipb4FgQ0nSt2rqpEWr2i55WhQhlzgdK8ERNmmiKv999gUS1qXF + EgnTJqTIIsfd8WF/fD7fqzkjgphXxuTVZI88ENGCyn8mdjC2HCR/Y8e5gt93s2OAz4rEGTj5hu+7 + yhrxYM5SGhIupH1OYk6VNZlFIREsVb43t/fKM2RZItKNsgzBQJ5oEm6CaKZMrrntGMeAeFVAeu6g + ESC9SiCXvSaAIKd6RvD5gbg6HOlfNgKkmiNNLI2rw5FeI0A0OOL3zw/E0+BIDzejI5VA+p6nCeT6 + 0/3dWSVtgHVZUhdKJWEHri5PakKppmx/oCv0taDoCFvf11XYulCqueI1BaWaKz5qBko1Vwau7s5T + C4qOwPUHDX1BlVAcW78u+HY9/nJ3Ro1Dti5X6mOpIi6y9begmlgqmYtspxksGjLn2PrFSl0s1Xxp + aI00hA7Z+mVtTSwafGkIi4bUneebnu6C6TogaUqU42Ti2E7HQGrAanDV4KnhUg2+Gnpq6KvBko4y + yWQAQbtQiEUQjCAaQTiCeAQJUK8cjCAVghwYcuDd8yEHhhwYcmDIgf19tHqBhL4Eh+N2SOOYm+3J + uz15tyfv9uT9P528J6B2KXsJEgJgpNixGS0lWdH0kXGwjJkgsUEXy5htFjQR6vaSzGZR8qRuI7xc + KxNfksQKY8KVZJo55CVJVUQOWD7ZzJJIgAdyDPGDZbZxT1POEq4iRBQ+0xTwCLoWOZ7dW2RprP53 + OU0jyrtg7/4k6qlCIbQOCLvmFma7noC3nYa209B2GtpOw6kF/Tydhg8kfZ+mJOrXoYhW1FiyZRYT + EbGkWVUHSEd1Pb+TKzsBmNYB5kmkve2wtB2WtsPSdlj+rQ5LRdm+T1RS+Zt9SWwIZryw9FnKuyET + n174L96t3wHYOzV8fi9X+0MFL0t6K4drSbhvNoDyLOSbQEPHlyY31b+8uNNidYOQqVWbHN3bj9ku + zOmeC0Vw7QNd50TVQ+e83JzClxwfqGk+IANDufGAiwu3uPCKC+njFj5u4eMWPm7h4xU+HkzxnDGR + MEF3ExyTRwqvcDefR2EkST8SEhaXC8ENNjeG6j1g9VmWhjQXltFQmVTTk1Px5mMaDYOvn0cQEmdA + IPkMGWxJWQupxbN0RTfmb1SVIXIhA8e5LYeVvr7tFOZoESWq0/ph0bYg67KP98fmuP0FkXwN3B0l + AAA= + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 88029603bb7f61f5-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=F2NiUiSBDxer2NXTV2rlr4JMHRTRFXxX%2B0ML7eZYnJOx2DiQAmhpbu5TA9Pouxg5pLTHvMdZJowoayVtl%2FeBxcJs%2BZKb9pjfjcZsxNmEQHU1Je1RXpAQvYgMUqePwiR9iO%2ByDZXT0SgqB%2Fh5"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=RETA&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+2VUW+bMBSF/wriORAwJOn6WnVS+7Cu256GEHLMpfJG7Mg2aaIq/32+BjfRVo2X + iocqEroilxPnO+bm+CWsqaHhdVC8hHKtK8M3YD+FJCEkSlJ7/UiSa3f9DGeB0+xo2zlRlsefsMl1 + 1UgFjGpj2w1tNWBX1JxRIxVKbx6+fEYpk50w6oCt+6/YoE8g2KHitVswPM6Ct0DyERASZ9OArEZA + 0jidBCRNRkCSeDkBSDY+I2SSHcnGZ2QRr6YBGZuRZUwmARmdkWW8mAAkH5+Rq/fPkbL/JuwrqhRF + YVEkcTILUiwES4Ylx7LAssSywnKFJbLCElcR8FydQpJB2+pLXl7y8pKXl7z8QHk5CwqXdko+V4I6 + GBt2sobzVXag1lL3LSl0twEVMCkaXtvFIHB5i7otrWsunlCXkq1r6S0VEWupxvAMB/otVSBe2S1D + 2AlunOLOr2U4+w3K4RjYG4/Tu+hUi425BsVBz/sH81/U/dhAGJ0II0c4D4/Hc6tDnE9stvRuKybR + RDFYLl89+wfvabx0s9CefIePaUDc/+uR+JvM3+T+xmoyr8m8JvOazGtyr8mdjUZKI6SB3kRL1+Cg + b+iaCzDBQ9NwZif2HqndtslOMRhm8vb7tzts4tGrwfz1kvBp5d+Ubju3/W8Z153awcEad9Y3XOBZ + /t8je0P355r8n6Q8/gE/xhz5NQ0AAA== + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 88029604bfcd8408-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=HnuskuSxTYxwXBXzFfi%2Fu9IuvezucsgojW27E8YZansSxaBc3xLBFaDiFvZnLLfwEeclQ1WE5nmGb3w9CfxWGHpog5pPRPDcDzsiaKhJmMEQuUqW19aepG7oAkU1W6QthGr5MY3HFOv3GyOX"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=IP&transform=3 + response: + body: + string: ' + + + + + + + + Server Error (500) + + + + + +

Server Error (500)

+ + + + + + ' + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 88029605ad6c61e9-YVR + Connection: + - keep-alive + Content-Type: + - text/html + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=tbZNDDWNn5bIHiHFeKZ3AftDShASmYQ0pkeP6FygtdFm5tBpvVz%2FBcidVUHEM5JBK8BDy4rCNnc032xLAcEjw1GdePN3gHujCMDi%2F1WoT57r8tFIAJ60Qe6pfd9aqr3UYHI7%2F%2FqG88qw5Kbg"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 500 + message: Internal Server Error +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=GBAL&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+2WXW/aMBSG/0oUaXck5GvQ9noVEjctY9rFEIpMcoK8BTuzHQqq+t/n4+CBOtYw + VQRNQgpHzslr8+R82Hl2c6KIe+fMnl2+kKmiK9B3bhREkReE+voSBHfm+ub2HKNZk7I2onjgJ+ik + Mi24gIxIpd0FKSWgl+U0I4oLlI4+339FacZrpsQWXeNHdJAlsGyb0tws6L70nGMgydsgSeBH3YAM + WyJy0xFIGLSA3PrDDkDi9hoZ+kE3qWkBSWI/PhVk+nh/xmKNT0/N+0BaijUJOwJpK1YNMugApL1Y + NcjJ7XsqyLyZCZuUCEFQOJsFftBzQjQRmhhNgsYL/271QrOPeDNAM0Rzg+a2dSIiMHhK91t9BmUp + r7v+ddf/r3b92fz1Dytb8KeUEQOnC5vncLjqGsSCy8YFDAQpnSXXTrYCphzFlXYIWAPT3FpekTyn + bInyMKo26JIVYV5WEon94u5eqiJCz7evpNHcmlFlFB+c0SfDr2j2A4ShUrBRlqp5uVqU6OhLEBRk + v3nQ/07wz5YNqLcH9QyotwPtuy8mK+9p4utpeD0NL3Ea/lsT71Y9pYlhU4EmUrXopJE12fFGNg/a + GvkAFpv5MAC7hr7UPnbJ4M9t9NOMY1Bn+xQ0g/nvZFjFGbbW3rnSPDf9Ue6z7E5CJzIdNonsILaD + xA60Jraa2Gpiq4mtJrGaxISp4FwxrqAJUkkWYPgfioJmVGdsqoiiUgdTOrxwxvgeJk28Fhns2nU6 + Rhd+NEpQr+pyOk5Ho4c0CCdmWlmbbB+JBK+0R1HOpPezJkKBKLc6FiYaK8rwm/TNU2tFNoea5I8D + 5eUXWUVINMMQAAA= + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880296068a6b8411-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=YDXaPhFgIE8qJ7oUWccsemPqF1A%2Fqsj05J0UHky4svYrFdbhUr0Nz6MP4CPNFLITmGZj0HJ28UiFzH8uiuFE%2FIhqujRBb8It0cVKzFZmzuJuivN2nyHfVLjsSPgCxc9Jb68M%2B2MaJImEIw6Q"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=CA&transform=3 + response: + body: + string: ' + + + + + + + + Server Error (500) + + + + + +

Server Error (500)

+ + + + + + ' + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880296078ffb2d60-YVR + Connection: + - keep-alive + Content-Type: + - text/html + Date: + - Tue, 07 May 2024 16:28:56 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=EGzi7znoso3j81jhTFCENaUzCzU5JWkfN8lU56DvShZDR9H3wYQHNj5hzapoYeRptwg9WgVwWIiAsZNqFY%2F100e%2BJEDu9MJ%2FU7NnHFf5oJP57VE79LgnspnJy5R%2BT0hkq1fZBzjDRH4wNowm"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 500 + message: Internal Server Error +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=NIIP&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+1X32/aMBD+V6JIeyMjTgJ0vLWaNBUhrZX2NIQikxjk1djINpSq4n+f71IP9ouU + MbI9RIqi5HI+f777/PnyHJbU0nAYTJ5DNTO55Uvm3sIkTpIoJu76FMdDvD6HnQB9NlSswSlJ+29j + Z+MmnyvNCmqss86pMAyssuQFtUpDuNvbu2sYXqi1tPoJTKM7MNAFk8VTzkswpeGuE/wKR3YcR/au + IRyD4zj6pBkcJD6OI2mkLmk9P64awlHDj16vIRx1/EibwVHHj6wRHLX6QXqn7NvxxfSD9E/ZL+fg + OM4PMmgIRw0/yEn75Y9x1OoH6ScN4ajhxyBrCEcNP65OOV/OwFHHj/7fz8e0Gsm2OdWaguNkEsMs + uGTkAYoWzoz0xL0ygFtE/N1FmeCZg8JCqgD4lWAIgjEIBiG9H8YCBMke831DVDAhTNsbtb1R2xu1 + vdE5OCYgTCgwWj3mkiIepy+qZIeRNkzPlKlM0jItqeVKUhFwuWHGLpm0wUoZDtZhcG0MswbGrWhZ + crmAcSRZbcFkVlRGhaAG9CsMqxWtqHYh/HocrnAtuUWPN8GH9wje8uKBaYRn2dZ6eNXK1lqAoWuY + 5sx0qw/dLxQm44eIoz3iyCOOKALuhjuszBni2jaObePYNo5t4/hacR2fLq5jTmdcuBfWkMKOf6ew + 4xMUVuxRg8we5uRFav/5kfN/FGbqK5MXChI+2Zeneph+K5T3uOB52Lk4Faa4lcSeCeE9cb0wTHOf + +IfUP2T+wfmk3if1Pqn3Sb1P5n0yzNtcKSuVZVXWBJ0xXMgNlQ+BmgcjWAEWSq11wV628s3HEdjg + 5ws59h1b3cfcrR8HiTVW+xXplWW00MqYyKUWfEVUstmBg5pHmE2XHkzQkkv4+Tvahizp9tAn++kI + 2H0FPK3XVlIXAAA= + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880296086b9f2d9f-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:57 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=4%2FCT%2BqN5OAQmR0Gl%2F9V3YzX31hC0h2K%2FN9ndJiB1sz0I6jZFrMAjp9xutVzHUXB9wGMkjNQYSEIdhg%2BOjlLszg2%2FrEWBWN%2BTHExP1SWIb%2BjAnfZuI7Ty3bKin3rtpi0qXBX6P0hNrEVqBqkO"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://www.econdb.com/trends/get_topic_children/?agency=3&country=JP&dateEnd=2024-04-01&dateStart=2022-01-01&freq=Q&parent_id=Y10YD&transform=3 + response: + body: + string: !!binary | + H4sIAAAAAAAAA+1V0WrbMBT9FSHYW9zYlreWvhWyl8BYu+5lC8Yo8k2nVZGMJLcJxf8+XSVqwzZG + YZCZETAH+ejIOle+HD3RlntOL8niiZqla7xcQ3ijZV6WWV6E53OeX8bnK52QqHngqo+iLD8rkJSu + WRkLgjsf6BVXDpDVrRTcG4vSD+zLDKXC9NrbLVLzayT4HWixbWSLFKPDhPzOSDUWI+cjMVLkozDC + xtIj7DU9Uh7HyDh6hL2mR45xItU/6ZF6txI2DbeWo3CxyM/yCSkQSgSGUCG8RXiHcI5wgZAFYY1f + 0fDYvISkAKXcKS9PeXnKy1Ne/kd5OSGLmHbWPDaaRzMh7EwLh195ALs0LlKMrI3238hWgmpxruNt + K/UdzhVlt0HKdVxnQnGHgUn3jjtuQT/7DfvSXksfFW9Q4qW4Bxu397Dxafud694qJKYOrAQ33U1M + v3PciGXRURYdTekwHJazj+wjFFSnihph0OwilFU/15XIvy2ujv9UvdRGbwpSxva8KdOApUGVBkHD + koYlDUsaljRV0lTR+soYr42HnXHFlxCNztEZuQXRW+mDYzIDrsA6cuWcEZJ7aXQ8NdNbAftWm9/O + rpDEG9WB/+m/4Gzz6f31x7hO9fH0vbnfmsxCF4AHF0Mdy19LjffyH6/fNd8caqpfUm/4AQ2kfl0B + DQAA + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 880296096a50841d-YVR + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 07 May 2024 16:28:57 GMT + NEL: + - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}' + Referrer-Policy: + - same-origin + Report-To: + - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=BNX3JJAMLdOl%2FkX9f72Lltr6WkFkP%2FfTRETi7wrLufB5mI73uEJozK3Rwf33l4umU%2FGhvk43CI2Fzyaf6TD025CXxhjfjwPuM9BDd3MKeEC2LfFyNExeeXyxzMvPJHNE%2FaEOL9fdLr9KAq7d"}],"group":"cf-nel","max_age":604800}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + - Origin + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - DENY + status: + code: 200 + message: OK +version: 1 diff --git a/openbb_platform/providers/econdb/tests/test_econdb_fetchers.py b/openbb_platform/providers/econdb/tests/test_econdb_fetchers.py index fb5ed90aff3d..069e0ceadb46 100644 --- a/openbb_platform/providers/econdb/tests/test_econdb_fetchers.py +++ b/openbb_platform/providers/econdb/tests/test_econdb_fetchers.py @@ -58,3 +58,21 @@ def test_econdb_economic_indicators_fetcher(credentials=test_credentials): fetcher = EconDbEconomicIndicatorsFetcher() result = fetcher.test(params, credentials) assert result is None + + +@pytest.mark.record_http +def test_econdb_economic_indicators_main_fetcher(credentials=test_credentials): + """Test EconDB Economic Indicators Fetcher with main.""" + params = { + "symbol": "main", + "country": "jp", + "start_date": datetime.date(2022, 1, 1), + "end_date": datetime.date(2024, 4, 1), + "transform": None, + "frequency": "quarter", + "use_cache": False, + } + + fetcher = EconDbEconomicIndicatorsFetcher() + result = fetcher.test(params, credentials) + assert result is None diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py index 6662b4026556..28ee909d7015 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py @@ -126,12 +126,13 @@ async def aextract_data( f"https://api.polygon.io/v3/reference/" f"tickers?{query.symbol}&market=fx&date={query.date}&" f"search={query.search}&active={query.active}&order={query.order}&" - f"limit={query.limit}&sort={query.sort}&apiKey={api_key}" + f"limit={query.limit}" ) - + if query.sort: + request_url += f"&sort={query.sort}" + request_url = f"{request_url}&apiKey={api_key}" data = {"next_url": request_url} all_data: List[Dict] = [] - while "next_url" in data: data = await get_data(request_url, **kwargs) diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml index f11dc5085e30..6cd40bde933a 100644 --- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml +++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml @@ -3,7 +3,7 @@ interactions: body: null headers: Accept: - - '*/*' + - application/json Accept-Encoding: - gzip, deflate Connection: @@ -13,278 +13,279 @@ interactions: response: body: string: !!binary | - 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 + AP//68nYAu8yBAA= headers: Connection: - keep-alive @@ -293,9 +294,9 @@ interactions: Content-Type: - application/json Date: - - Tue, 26 Sep 2023 19:08:20 GMT + - Tue, 07 May 2024 16:14:03 GMT Link: - - ; + - ; rel="next" Server: - nginx/1.19.2 @@ -308,7 +309,7 @@ interactions: X-Item-Count: - '1000' X-Request-Id: - - 08392cfd46eff8e24714a1befbb77157 + - b6491d6a58833e8f17bf0ea48c2fb8d3 status: code: 200 message: OK @@ -316,129 +317,129 @@ interactions: body: null headers: Accept: - - '*/*' + - application/json Accept-Encoding: - gzip, deflate Connection: - keep-alive method: GET - uri: https://api.polygon.io/v3/reference/tickers?apiKey=MOCK_API_KEY&cursor=YWN0aXZlPXRydWUmYXA9QyUzQVNFS1pBUiU3QzMzMTc2YTg2ZjlhZGY2YThhMjE1MWY2M2Y5MjJkMjBkZTU0YzMwYTVjN2RhMGM5ZjgxYWJiNjQ3ZmU5ZWU3M2UmYXM9JmRhdGU9MjAyMy0wMS0wMSZsaW1pdD0xMDAwJm1hcmtldD1meCZvcmRlcj1hc2M + uri: https://api.polygon.io/v3/reference/tickers?apiKey=MOCK_API_KEY&cursor=YWN0aXZlPXRydWUmYXA9QyUzQVNFS1pBUiU3QzMzMTc2YTg2ZjlhZGY2YThhMjE1MWY2M2Y5MjJkMjBkZTU0YzMwYTVjN2RhMGM5ZjgxYWJiNjQ3ZmU5ZWU3M2UmYXM9JmRhdGU9MjAyMy0wMS0wMSZsaW1pdD0xMDAwJm1hcmtldD1meCZvcmRlcj1hc2Mmc29ydD10aWNrZXI response: body: string: !!binary | - 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 - Ynk8HS95zrLG1V9/+P7v/x8AAP//GMpKtayFAQA= + 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 + h8Alz1nWuPrxz+/+8f8BAAD//07s25ishQEA headers: Connection: - keep-alive @@ -447,7 +448,7 @@ interactions: Content-Type: - application/json Date: - - Tue, 26 Sep 2023 19:08:21 GMT + - Tue, 07 May 2024 16:14:03 GMT Server: - nginx/1.19.2 Strict-Transport-Security: @@ -459,7 +460,7 @@ interactions: X-Item-Count: - '351' X-Request-Id: - - 88d525f2e68b02389c99a89224f9dbce + - 3e66ea32a52f1eab3957b9ea2177678c status: code: 200 message: OK From 9c0ef12fa61adbbe3718ac4f92ee82e943284600 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Wed, 8 May 2024 04:30:39 -0700 Subject: [PATCH 08/44] [BugFix] Ad 'x-' to json_schema_extra in Fields with unit_measurement (#6376) * add 'x-' to json_schema_extra - unit_measurement * mypy * more mypy --- .../standard_models/treasury_rates.py | 26 +++++----- .../openbb_benzinga/models/analyst_search.py | 50 +++++++++---------- .../openbb_finviz/models/compare_groups.py | 24 ++++----- .../openbb_finviz/models/equity_profile.py | 15 +++--- .../openbb_finviz/models/key_metrics.py | 20 ++++---- .../fmp/openbb_fmp/models/etf_holdings.py | 2 +- .../fmp/openbb_fmp/models/etf_info.py | 4 +- .../fmp/openbb_fmp/models/key_metrics.py | 4 +- .../models/equity_historical.py | 14 +++--- .../tmx/openbb_tmx/models/bond_prices.py | 2 +- .../openbb_tmx/models/calendar_earnings.py | 2 +- .../openbb_tmx/models/equity_historical.py | 2 +- .../tmx/openbb_tmx/models/equity_quote.py | 12 ++--- .../tmx/openbb_tmx/models/etf_holdings.py | 4 +- .../tmx/openbb_tmx/models/etf_info.py | 24 ++++----- .../tmx/openbb_tmx/models/etf_search.py | 30 +++++------ .../tmx/openbb_tmx/models/index_snapshots.py | 10 ++-- .../models/price_target_consensus.py | 2 +- .../openbb_yfinance/models/equity_profile.py | 2 +- .../openbb_yfinance/models/etf_info.py | 10 ++-- .../openbb_yfinance/models/key_metrics.py | 22 ++++---- .../models/share_statistics.py | 8 +-- 22 files changed, 144 insertions(+), 145 deletions(-) diff --git a/openbb_platform/core/openbb_core/provider/standard_models/treasury_rates.py b/openbb_platform/core/openbb_core/provider/standard_models/treasury_rates.py index 743ec65a746c..93149d1c3776 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/treasury_rates.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/treasury_rates.py @@ -33,65 +33,65 @@ class TreasuryRatesData(Data): week_4: Optional[float] = Field( default=None, description="4 week Treasury bills rate (secondary market).", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) month_1: Optional[float] = Field( description="1 month Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) month_2: Optional[float] = Field( description="2 month Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) month_3: Optional[float] = Field( description="3 month Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) month_6: Optional[float] = Field( description="6 month Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_1: Optional[float] = Field( description="1 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_2: Optional[float] = Field( description="2 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_3: Optional[float] = Field( description="3 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_5: Optional[float] = Field( description="5 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_7: Optional[float] = Field( description="7 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_10: Optional[float] = Field( description="10 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_20: Optional[float] = Field( description="20 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_30: Optional[float] = Field( description="30 year Treasury rate.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py b/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py index f5cf40a2a5a8..c4aeba334165 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py @@ -90,19 +90,19 @@ class BenzingaAnalystSearchData(AnalystSearchData): overall_success_rate: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain overall.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) overall_avg_return_percentile: Optional[float] = Field( default=None, description="The percentile (normalized) of this analyst's overall average" + " return per rating in comparison to other analysts' overall average returns per rating.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) total_ratings_percentile: Optional[float] = Field( default=None, description="The percentile (normalized) of this analyst's total number of ratings" + " in comparison to the total number of ratings published by all other analysts", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) total_ratings: Optional[int] = Field( default=None, @@ -119,13 +119,13 @@ class BenzingaAnalystSearchData(AnalystSearchData): overall_average_return: Optional[float] = Field( default=None, description="The average percent (normalized) price difference per rating since the date of recommendation", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) overall_std_dev: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings since the date of recommendation", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="overall_stdev", ) gain_count_1m: Optional[int] = Field( @@ -141,14 +141,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): average_return_1m: Optional[float] = Field( default=None, description="The average percent (normalized) price difference per rating over the last month", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1m_average_return", ) std_dev_1m: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last month", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1m_stdev", ) smart_score_1m: Optional[float] = Field( @@ -159,7 +159,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_1m: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last month", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1m_success_rate", ) gain_count_3m: Optional[int] = Field( @@ -176,14 +176,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 3 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3m_average_return", ) std_dev_3m: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 3 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3m_stdev", ) smart_score_3m: Optional[float] = Field( @@ -194,7 +194,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_3m: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 3 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3m_success_rate", ) gain_count_6m: Optional[int] = Field( @@ -211,14 +211,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 6 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="6m_average_return", ) std_dev_6m: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 6 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="6m_stdev", ) gain_count_9m: Optional[int] = Field( @@ -235,14 +235,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 9 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="9m_average_return", ) std_dev_9m: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 9 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="9m_stdev", ) smart_score_9m: Optional[float] = Field( @@ -253,7 +253,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_9m: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 9 months", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="9m_success_rate", ) gain_count_1y: Optional[int] = Field( @@ -270,14 +270,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 1 year", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1y_average_return", ) std_dev_1y: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 1 year", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1y_stdev", ) smart_score_1y: Optional[float] = Field( @@ -288,7 +288,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_1y: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 1 year", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="1y_success_rate", ) gain_count_2y: Optional[int] = Field( @@ -305,14 +305,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 2 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="2y_average_return", ) std_dev_2y: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 2 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="2y_stdev", ) smart_score_2y: Optional[float] = Field( @@ -323,7 +323,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_2y: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 2 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="2y_success_rate", ) gain_count_3y: Optional[int] = Field( @@ -340,14 +340,14 @@ class BenzingaAnalystSearchData(AnalystSearchData): default=None, description="The average percent (normalized) price difference per rating over" + " the last 3 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3y_average_return", ) std_dev_3y: Optional[float] = Field( default=None, description="The standard deviation in percent (normalized) price difference in the" + " analyst's ratings over the last 3 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3y_stdev", ) smart_score_3y: Optional[float] = Field( @@ -358,7 +358,7 @@ class BenzingaAnalystSearchData(AnalystSearchData): success_rate_3y: Optional[float] = Field( default=None, description="The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 3 years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="3y_success_rate", ) diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/compare_groups.py b/openbb_platform/providers/finviz/openbb_finviz/models/compare_groups.py index 4c53fde9cf29..5a1c76c07a1d 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/compare_groups.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/compare_groups.py @@ -79,42 +79,42 @@ class FinvizCompareGroupsData(CompareGroupsData): performance_1D: Optional[float] = Field( default=None, description="The performance in the last day, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_1W: Optional[float] = Field( default=None, description="The performance in the last week, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_1M: Optional[float] = Field( default=None, description="The performance in the last month, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_3M: Optional[float] = Field( default=None, description="The performance in the last quarter, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_6M: Optional[float] = Field( default=None, description="The performance in the last half year, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_1Y: Optional[float] = Field( default=None, description="The performance in the last year, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) performance_YTD: Optional[float] = Field( default=None, description="The performance in the year to date, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) dividend_yield: Optional[float] = Field( default=None, description="The dividend yield of the group, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) pe: Optional[float] = Field( default=None, @@ -132,23 +132,23 @@ class FinvizCompareGroupsData(CompareGroupsData): eps_growth_past_5_years: Optional[float] = Field( default=None, description="The EPS growth of the group for the past 5 years, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) eps_growth_next_5_years: Optional[float] = Field( default=None, description="The estimated EPS growth of the groupo for the next 5 years," + " as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) sales_growth_past_5_years: Optional[float] = Field( default=None, description="The sales growth of the group for the past 5 years, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) float_short: Optional[float] = Field( default=None, description="The percent of the float shorted for the group, as a normalized value.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) analyst_recommendation: Optional[float] = Field( default=None, diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py b/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py index f6f29c1791a3..a81fe6c5085e 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py @@ -1,8 +1,9 @@ """Finviz Equity Profile Model.""" # pylint: disable=unused-argument -import warnings + from typing import Any, Dict, List, Optional +from warnings import warn from finvizfinance.quote import finvizfinance from openbb_core.provider.abstract.fetcher import Fetcher @@ -12,8 +13,6 @@ ) from pydantic import Field -_warn = warnings.warn - class FinvizEquityProfileQueryParams(EquityInfoQueryParams): """ @@ -59,7 +58,7 @@ class FinvizEquityProfileData(EquityInfoData): institutional_ownership: Optional[float] = Field( default=None, description="The institutional ownership of the stock, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) market_cap: Optional[str] = Field( default=None, @@ -68,7 +67,7 @@ class FinvizEquityProfileData(EquityInfoData): dividend_yield: Optional[float] = Field( default=None, description="The dividend yield of the stock, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) earnings_date: Optional[str] = Field( default=None, @@ -99,17 +98,17 @@ def extract_data( ) -> List[Dict]: """Extract the raw data from Finviz.""" - results = [] + results: List = [] def get_one(symbol) -> Dict: """Get the data for one symbol.""" - result = {} + result: Dict = {} try: data = finvizfinance(symbol) fundament = data.ticker_fundament() description = data.ticker_description() except Exception as e: # pylint: disable=W0718 - _warn(f"Failed to get data for {symbol} -> {e}") + warn(f"Failed to get data for {symbol} -> {e}") return result div_yield = ( float(str(fundament.get("Dividend %", None)).replace("%", "")) / 100 diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py b/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py index ec7096dc6a17..9ff3a002ed33 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py @@ -61,42 +61,42 @@ class FinvizKeyMetricsData(KeyMetricsData): gross_margin: Optional[float] = Field( default=None, description="Gross margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) profit_margin: Optional[float] = Field( default=None, description="Profit margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) operating_margin: Optional[float] = Field( default=None, description="Operating margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_on_assets: Optional[float] = Field( default=None, description="Return on assets (ROA), as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_on_investment: Optional[float] = Field( default=None, description="Return on investment (ROI), as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_on_equity: Optional[float] = Field( default=None, description="Return on equity (ROE), as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) payout_ratio: Optional[float] = Field( default=None, description="Payout ratio, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) dividend_yield: Optional[float] = Field( default=None, description="Dividend yield, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) @@ -118,11 +118,11 @@ def extract_data( ) -> List[Dict]: """Extract the raw data from Finviz.""" - results = [] + results: List = [] def get_one(symbol) -> Dict: """Get the data for one symbol.""" - result = {} + result: Dict = {} try: data = finvizfinance(symbol) fundament = data.ticker_fundament() diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_holdings.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_holdings.py index 6c6566828dee..385a24039262 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_holdings.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_holdings.py @@ -73,7 +73,7 @@ class FMPEtfHoldingsData(EtfHoldingsData): description="The weight of the holding, as a normalized percent.", alias="pctVal", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) payoff_profile: Optional[str] = Field( description="The payoff profile of the holding.", diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py index 21cfab00a8aa..af21d5e8f27f 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py @@ -43,7 +43,7 @@ class FMPEtfInfoData(EtfInfoData): expense_ratio: Optional[float] = Field( default=None, description="The expense ratio, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) holdings_count: Optional[int] = Field( default=None, description="Number of holdings." @@ -76,7 +76,7 @@ async def aextract_data( """Return the raw data from the FMP endpoint.""" api_key = credentials.get("fmp_api_key") if credentials else "" symbols = query.symbol.split(",") - results = [] + results: List = [] async def get_one(symbol): """Get one symbol.""" diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py b/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py index 3f7f7b0ce3f9..7c8241aca9d0 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py @@ -122,7 +122,7 @@ class FMPKeyMetricsData(KeyMetricsData): dividend_yield: Optional[float] = Field( default=None, description="Dividend yield, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) payout_ratio: Optional[float] = Field(default=None, description="Payout ratio") sales_general_and_administrative_to_revenue: Optional[float] = Field( @@ -229,7 +229,7 @@ async def aextract_data( symbols = query.symbol.split(",") - results = [] + results: List = [] async def get_one(symbol): """Get data for one symbol.""" diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py index 809bef703379..f1c9e5ba57d4 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py @@ -97,7 +97,7 @@ class IntrinioEquityHistoricalData(EquityHistoricalData): default=None, description="Percent change in the price of the symbol from the previous day.", alias="percent_change", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) adj_open: Optional[float] = Field( default=None, @@ -213,24 +213,24 @@ async def callback(response: ClientResponse, session: ClientSession) -> list: init_response = await response.json() if "error" in init_response: raise RuntimeError( - f"Intrinio Error Message -> {init_response['error']}: {init_response.get('message')}" + f"Intrinio Error Message -> {init_response['error']}: {init_response.get('message')}" # type: ignore ) - all_data: list = init_response.get(data_key, []) + all_data: list = init_response.get(data_key, []) # type: ignore - next_page = init_response.get("next_page", None) + next_page = init_response.get("next_page", None) # type: ignore while next_page: url = response.url.update_query(next_page=next_page).human_repr() response_data = await session.get_json(url) - all_data.extend(response_data.get(data_key, [])) - next_page = response_data.get("next_page", None) + all_data.extend(response_data.get(data_key, [])) # type: ignore + next_page = response_data.get("next_page", None) # type: ignore return all_data url = f"{base_url}&{query_str}&api_key={api_key}" - return await amake_request(url, response_callback=callback, **kwargs) + return await amake_request(url, response_callback=callback, **kwargs) # type: ignore @staticmethod def transform_data( diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/bond_prices.py b/openbb_platform/providers/tmx/openbb_tmx/models/bond_prices.py index 2e730316ce71..7bc9c06b5bd0 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/bond_prices.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/bond_prices.py @@ -65,7 +65,7 @@ class TmxBondPricesData(BondReferenceData): + " coupons are reinvested at the same rate." + " Values are returned as a normalized percent.", alias="lastYield", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) price: Optional[float] = Field( default=None, diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/calendar_earnings.py b/openbb_platform/providers/tmx/openbb_tmx/models/calendar_earnings.py index 87082ce61300..4647210f7ab0 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/calendar_earnings.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/calendar_earnings.py @@ -45,7 +45,7 @@ class TmxCalendarEarningsData(CalendarEarningsData): surprise_percent: Optional[float] = Field( default=None, description="The EPS surprise as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) reporting_time: Optional[str] = Field( default=None, diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py b/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py index f81c10e06f93..1e13cb46e2dc 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py @@ -100,7 +100,7 @@ class TmxEquityHistoricalData(EquityHistoricalData): change_percent: Optional[float] = Field( description="Change in price, as a normalized percentage.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) transactions: Optional[int] = Field( description="Total number of transactions recorded.", default=None diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py b/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py index a97659e5f7a6..17392971948a 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py @@ -99,7 +99,7 @@ class TmxEquityQuoteData(EquityQuoteData): change_percent: Optional[float] = Field( default=None, description="The change in price as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) year_high: Optional[float] = Field( description="Fifty-two week high.", default=None, alias="weeks52high" @@ -151,7 +151,7 @@ class TmxEquityQuoteData(EquityQuoteData): description="The dividend yield as a normalized percentage.", default=None, alias="dividendYield", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) div_freq: Optional[str] = Field( description="The frequency of dividend payments.", @@ -170,13 +170,13 @@ class TmxEquityQuoteData(EquityQuoteData): description="The three year dividend growth as a normalized percentage.", default=None, alias="dividend3Years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) div_growth_5y: Optional[Union[float, str]] = Field( description="The five year dividend growth as a normalized percentage.", default=None, alias="dividend5Years", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) pe: Optional[Union[float, str]] = Field( description="The price to earnings ratio.", default=None, alias="peRatio" @@ -199,13 +199,13 @@ class TmxEquityQuoteData(EquityQuoteData): description="The return on equity, as a normalized percentage.", default=None, alias="returnOnEquity", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_on_assets: Optional[Union[float, str]] = Field( description="The return on assets, as a normalized percentage.", default=None, alias="returnOnAssets", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) beta: Optional[Union[float, str]] = Field( description="The beta relative to the TSX Composite.", default=None diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/etf_holdings.py b/openbb_platform/providers/tmx/openbb_tmx/models/etf_holdings.py index cdd334d6ef28..3476d6982ba4 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/etf_holdings.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/etf_holdings.py @@ -36,7 +36,7 @@ class TmxEtfHoldingsData(EtfHoldingsData): weight: Optional[float] = Field( description="The weight of the asset in the portfolio, as a normalized percentage.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) shares: Optional[Union[int, str]] = Field( description="The value of the assets under management.", @@ -50,7 +50,7 @@ class TmxEtfHoldingsData(EtfHoldingsData): share_percentage: Optional[float] = Field( description="The share percentage of the holding, as a normalized percentage.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) share_change: Optional[Union[float, str]] = Field( description="The change in shares of the holding.", default=None diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py b/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py index da1b720c9091..ea5963ecb780 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py @@ -48,47 +48,47 @@ class TmxEtfInfoData(EtfInfoData): return_1m: Optional[float] = Field( description="The one-month return of the ETF, as a normalized percent", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_3m: Optional[float] = Field( description="The three-month return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_6m: Optional[float] = Field( description="The six-month return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_ytd: Optional[float] = Field( description="The year-to-date return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_1y: Optional[float] = Field( description="The one-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_3y: Optional[float] = Field( description="The three-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_5y: Optional[float] = Field( description="The five-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_10y: Optional[float] = Field( description="The ten-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_from_inception: Optional[float] = Field( description="The return from inception of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) avg_volume: Optional[int] = Field( description="The average daily volume of the ETF.", @@ -110,17 +110,17 @@ class TmxEtfInfoData(EtfInfoData): management_fee: Optional[float] = Field( description="The management fee of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) mer: Optional[float] = Field( description="The management expense ratio of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) distribution_yield: Optional[float] = Field( description="The distribution yield of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) dividend_frequency: Optional[str] = Field( description="The dividend payment frequency of the ETF.", default=None diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/etf_search.py b/openbb_platform/providers/tmx/openbb_tmx/models/etf_search.py index b4a1e9833ead..260ac2ab3da7 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/etf_search.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/etf_search.py @@ -77,57 +77,57 @@ class TmxEtfSearchData(EtfSearchData): return_1m: Optional[float] = Field( description="The one-month return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_3m: Optional[float] = Field( description="The three-month return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_6m: Optional[float] = Field( description="The six-month return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_ytd: Optional[float] = Field( description="The year-to-date return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_1y: Optional[float] = Field( description="The one-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) beta_1y: Optional[float] = Field( description="The one-year beta of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_3y: Optional[float] = Field( description="The three-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) beta_3y: Optional[float] = Field( description="The three-year beta of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_5y: Optional[float] = Field( description="The five-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) beta_5y: Optional[float] = Field( description="The five-year beta of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_10y: Optional[float] = Field( description="The ten-year return of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) beta_10y: Optional[float] = Field( description="The ten-year beta of the ETF.", default=None @@ -138,7 +138,7 @@ class TmxEtfSearchData(EtfSearchData): return_from_inception: Optional[float] = Field( description="The return from inception of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) avg_volume: Optional[int] = Field( description="The average daily volume of the ETF.", @@ -160,17 +160,17 @@ class TmxEtfSearchData(EtfSearchData): management_fee: Optional[float] = Field( description="The management fee of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) mer: Optional[float] = Field( description="The management expense ratio of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) distribution_yield: Optional[float] = Field( description="The distribution yield of the ETF, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) dividend_frequency: Optional[str] = Field( description="The dividend payment frequency of the ETF.", default=None diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py b/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py index e3f81710561f..42a9114ce648 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/index_snapshots.py @@ -64,17 +64,17 @@ class TmxIndexSnapshotsData(IndexSnapshotsData): return_mtd: Optional[float] = Field( default=None, description="The month-to-date return of the index, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_qtd: Optional[float] = Field( default=None, description="The quarter-to-date return of the index, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) return_ytd: Optional[float] = Field( default=None, description="The year-to-date return of the index, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) total_market_value: Optional[float] = Field( default=None, @@ -103,7 +103,7 @@ class TmxIndexSnapshotsData(IndexSnapshotsData): constituent_largest_weight: Optional[float] = Field( default=None, description="The largest weight of the index constituents, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) constituent_smallest_market_value: Optional[float] = Field( default=None, @@ -112,7 +112,7 @@ class TmxIndexSnapshotsData(IndexSnapshotsData): constituent_smallest_weight: Optional[float] = Field( default=None, description="The smallest weight of the index constituents, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) @field_validator( diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py b/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py index 1ee9a9f71353..4d304d6fbb0f 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py @@ -42,7 +42,7 @@ class TmxPriceTargetConsensusData(PriceTargetConsensusData): target_upside: Optional[float] = Field( default=None, description="Percent of upside, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) total_analysts: Optional[int] = Field( default=None, description="Total number of analyst." diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py index 7150bc7be502..d74ffc2e352d 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py @@ -91,7 +91,7 @@ class YFinanceEquityProfileData(EquityInfoData): dividend_yield: Optional[float] = Field( description="The dividend yield of the asset, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="yield", ) beta: Optional[float] = Field( diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py index 915fb44bf4f5..639b01e6aaa4 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py @@ -78,7 +78,7 @@ class YFinanceEtfInfoData(EtfInfoData): dividend_yield: Optional[float] = Field( default=None, description="The dividend yield of the fund, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="yield", ) dividend_rate_ttm: Optional[float] = Field( @@ -89,7 +89,7 @@ class YFinanceEtfInfoData(EtfInfoData): dividend_yield_ttm: Optional[float] = Field( default=None, description="The trailing twelve month annual dividend yield of the fund, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="trailingAnnualDividendYield", ) year_high: Optional[float] = Field( @@ -115,19 +115,19 @@ class YFinanceEtfInfoData(EtfInfoData): return_ytd: Optional[float] = Field( default=None, description="The year-to-date return of the fund, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="ytdReturn", ) return_3y_avg: Optional[float] = Field( default=None, description="The three year average return of the fund, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="threeYearAverageReturn", ) return_5y_avg: Optional[float] = Field( default=None, description="The five year average return of the fund, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="fiveYearAverageReturn", ) beta_3y_avg: Optional[float] = Field( diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py index ae176d2d7631..3dbff8487aa6 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py @@ -67,7 +67,7 @@ class YFinanceKeyMetricsData(KeyMetricsData): earnings_growth_quarterly: Optional[float] = Field( default=None, description="Quarterly earnings growth (Year Over Year), as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="earningsQuarterlyGrowth", ) revenue_per_share: Optional[float] = Field( @@ -78,7 +78,7 @@ class YFinanceKeyMetricsData(KeyMetricsData): revenue_growth: Optional[float] = Field( default=None, description="Revenue growth (Year Over Year), as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="revenueGrowth", ) enterprise_to_revenue: Optional[float] = Field( @@ -109,49 +109,49 @@ class YFinanceKeyMetricsData(KeyMetricsData): gross_margin: Optional[float] = Field( default=None, description="Gross margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="grossMargins", ) operating_margin: Optional[float] = Field( default=None, description="Operating margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="operatingMargins", ) ebitda_margin: Optional[float] = Field( default=None, description="EBITDA margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="ebitdaMargins", ) profit_margin: Optional[float] = Field( default=None, description="Profit margin, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="profitMargins", ) return_on_assets: Optional[float] = Field( default=None, description="Return on assets, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="returnOnAssets", ) return_on_equity: Optional[float] = Field( default=None, description="Return on equity, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="returnOnEquity", ) dividend_yield: Optional[float] = Field( default=None, description="Dividend yield, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="dividendYield", ) dividend_yield_5y_avg: Optional[float] = Field( default=None, description="5-year average dividend yield, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="fiveYearAvgDividendYield", ) payout_ratio: Optional[float] = Field( @@ -205,7 +205,7 @@ class YFinanceKeyMetricsData(KeyMetricsData): price_return_1y: Optional[float] = Field( default=None, description="One-year price return, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="52WeekChange", ) currency: Optional[str] = Field( diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py index d7dba5e4589e..11a789596daf 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py @@ -49,7 +49,7 @@ class YFinanceShareStatisticsData(ShareStatisticsData): short_percent_of_float: Optional[float] = Field( default=None, description="Percentage of shares that are reported short, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="shortPercentOfFloat", ) days_to_cover: Optional[float] = Field( @@ -70,19 +70,19 @@ class YFinanceShareStatisticsData(ShareStatisticsData): insider_ownership: Optional[float] = Field( default=None, description="Percentage of shares held by insiders, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="heldPercentInsiders", ) institution_ownership: Optional[float] = Field( default=None, description="Percentage of shares held by institutions, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="heldPercentInstitutions", ) institution_float_ownership: Optional[float] = Field( default=None, description="Percentage of float held by institutions, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, alias="institutionsFloatPercentHeld", ) institutions_count: Optional[int] = Field( From 1a49dfdd9e34ce05810774a5a543c4c97b5b614a Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Wed, 8 May 2024 04:31:12 -0700 Subject: [PATCH 09/44] fix pandas warnings (#6375) --- .../openbb_federal_reserve/models/treasury_rates.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/models/treasury_rates.py b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/models/treasury_rates.py index 3434f88ca8bd..cf740183518a 100644 --- a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/models/treasury_rates.py +++ b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/models/treasury_rates.py @@ -97,7 +97,7 @@ def transform_data( ) -> List[FederalReserveTreasuryRatesData]: """Return the transformed data.""" - df = data + df = data.copy() df = df[ (to_datetime(df.date) >= to_datetime(query.start_date)) # type: ignore & (to_datetime(df.date) <= to_datetime(query.end_date)) # type: ignore From 4d6074de2df9b7dd29fd9a7bb415de73d6b0200a Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Thu, 9 May 2024 02:38:59 -0700 Subject: [PATCH 10/44] [BugFix] Fix Currency Search (#6380) * fix currency search * test artifact * static files --- .../standard_models/currency_pairs.py | 10 +- .../currency/integration/test_currency_api.py | 10 +- .../integration/test_currency_python.py | 10 +- .../openbb_currency/currency_router.py | 12 +- openbb_platform/openbb/assets/reference.json | 133 +-- openbb_platform/openbb/package/currency.py | 60 +- .../fmp/openbb_fmp/models/currency_pairs.py | 23 +- .../openbb_intrinio/models/currency_pairs.py | 25 +- .../openbb_polygon/models/currency_pairs.py | 130 ++- .../test_polygon_currency_pairs_fetcher.yaml | 778 +++++++++--------- .../polygon/tests/test_polygon_fetchers.py | 2 +- 11 files changed, 562 insertions(+), 631 deletions(-) diff --git a/openbb_platform/core/openbb_core/provider/standard_models/currency_pairs.py b/openbb_platform/core/openbb_core/provider/standard_models/currency_pairs.py index 23326ebbc948..c910236c0d6f 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/currency_pairs.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/currency_pairs.py @@ -1,16 +1,24 @@ """Currency Available Pairs Standard Model.""" +from typing import Optional + from pydantic import Field from openbb_core.provider.abstract.data import Data from openbb_core.provider.abstract.query_params import QueryParams +from openbb_core.provider.utils.descriptions import DATA_DESCRIPTIONS class CurrencyPairsQueryParams(QueryParams): """Currency Available Pairs Query.""" + query: Optional[str] = Field( + default=None, description="Query to search for currency pairs." + ) + class CurrencyPairsData(Data): """Currency Available Pairs Data.""" - name: str = Field(description="Name of the currency pair.") + symbol: str = Field(description=DATA_DESCRIPTIONS.get("symbol", "")) + name: Optional[str] = Field(default=None, description="Name of the currency pair.") diff --git a/openbb_platform/extensions/currency/integration/test_currency_api.py b/openbb_platform/extensions/currency/integration/test_currency_api.py index e85f2e931e9a..58c47d3af72d 100644 --- a/openbb_platform/extensions/currency/integration/test_currency_api.py +++ b/openbb_platform/extensions/currency/integration/test_currency_api.py @@ -27,23 +27,19 @@ def headers(): ( { "provider": "polygon", - "symbol": "USDJPY", - "date": "2023-10-12", - "search": "", - "active": True, - "order": "asc", - "sort": "currency_name", - "limit": 100, + "query": "eur", } ), ( { "provider": "fmp", + "query": "eur", } ), ( { "provider": "intrinio", + "query": "eur", } ), ], diff --git a/openbb_platform/extensions/currency/integration/test_currency_python.py b/openbb_platform/extensions/currency/integration/test_currency_python.py index 2c81518ab41c..62069b8796cd 100644 --- a/openbb_platform/extensions/currency/integration/test_currency_python.py +++ b/openbb_platform/extensions/currency/integration/test_currency_python.py @@ -24,23 +24,19 @@ def obb(pytestconfig): ( { "provider": "polygon", - "symbol": "USDJPY", - "date": "2023-10-12", - "search": "", - "active": True, - "order": "asc", - "sort": "currency_name", - "limit": 100, + "query": "eur", } ), ( { "provider": "fmp", + "query": "eur", } ), ( { "provider": "intrinio", + "query": "eur", } ), ], diff --git a/openbb_platform/extensions/currency/openbb_currency/currency_router.py b/openbb_platform/extensions/currency/openbb_currency/currency_router.py index 111acd3b5e22..8999e507f42d 100644 --- a/openbb_platform/extensions/currency/openbb_currency/currency_router.py +++ b/openbb_platform/extensions/currency/openbb_currency/currency_router.py @@ -21,18 +21,14 @@ @router.command( model="CurrencyPairs", examples=[ - APIEx(parameters={"provider": "intrinio"}), - APIEx( - description="Search for 'EURUSD' currency pair using 'intrinio' as provider.", - parameters={"provider": "intrinio", "symbol": "EURUSD"}, - ), + APIEx(parameters={"provider": "fmp"}), APIEx( - description="Search for actively traded currency pairs on the queried date using 'polygon' as provider.", - parameters={"provider": "polygon", "date": "2024-01-02", "active": True}, + description="Search for 'EUR' currency pair using 'intrinio' as provider.", + parameters={"provider": "intrinio", "query": "EUR"}, ), APIEx( description="Search for terms using 'polygon' as provider.", - parameters={"provider": "polygon", "search": "Euro zone"}, + parameters={"provider": "polygon", "query": "Euro zone"}, ), ], ) diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 004e047344c5..495c4e0b5ca5 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -576,9 +576,16 @@ "message": null }, "description": "Currency Search.\n\nSearch available currency pairs.\nCurrency pairs are the national currencies from two countries coupled for trading on\nthe foreign exchange (FX) marketplace.\nBoth currencies will have exchange rates on which the trade will have its position basis.\nAll trading within the forex market, whether selling, buying, or trading, will take place through currency pairs.\n(ref: Investopedia)\nMajor currency pairs include pairs such as EUR/USD, USD/JPY, GBP/USD, etc.", - "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.currency.search(provider='intrinio')\n# Search for 'EURUSD' currency pair using 'intrinio' as provider.\nobb.currency.search(provider='intrinio', symbol=EURUSD)\n# Search for actively traded currency pairs on the queried date using 'polygon' as provider.\nobb.currency.search(provider='polygon', date=2024-01-02, active=True)\n# Search for terms using 'polygon' as provider.\nobb.currency.search(provider='polygon', search=Euro zone)\n```\n\n", + "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.currency.search(provider='fmp')\n# Search for 'EUR' currency pair using 'intrinio' as provider.\nobb.currency.search(provider='intrinio', query='EUR')\n# Search for terms using 'polygon' as provider.\nobb.currency.search(provider='polygon', query='Euro zone')\n```\n\n", "parameters": { "standard": [ + { + "name": "query", + "type": "str", + "description": "Query to search for currency pairs.", + "default": null, + "optional": true + }, { "name": "provider", "type": "Literal['fmp', 'intrinio', 'polygon']", @@ -589,57 +596,7 @@ ], "fmp": [], "intrinio": [], - "polygon": [ - { - "name": "symbol", - "type": "str", - "description": "Symbol of the pair to search.", - "default": null, - "optional": true - }, - { - "name": "date", - "type": "Union[date, str]", - "description": "A specific date to get data for.", - "default": null, - "optional": true - }, - { - "name": "search", - "type": "str", - "description": "Search for terms within the ticker and/or company name.", - "default": "", - "optional": true - }, - { - "name": "active", - "type": "bool", - "description": "Specify if the tickers returned should be actively traded on the queried date.", - "default": true, - "optional": true - }, - { - "name": "order", - "type": "Literal['asc', 'desc']", - "description": "Order data by ascending or descending.", - "default": "asc", - "optional": true - }, - { - "name": "sort", - "type": "Literal['ticker', 'name', 'market', 'locale', 'currency_symbol', 'currency_name', 'base_currency_symbol', 'base_currency_name', 'last_updated_utc', 'delisted_utc']", - "description": "Sort field used for ordering.", - "default": null, - "optional": true - }, - { - "name": "limit", - "type": "Annotated[int, Gt(gt=0)]", - "description": "The number of data entries to return.", - "default": 1000, - "optional": true - } - ] + "polygon": [] }, "returns": { "OBBject": [ @@ -673,21 +630,21 @@ "data": { "standard": [ { - "name": "name", + "name": "symbol", "type": "str", - "description": "Name of the currency pair.", + "description": "Symbol representing the entity requested in the data.", "default": "", "optional": false + }, + { + "name": "name", + "type": "str", + "description": "Name of the currency pair.", + "default": null, + "optional": true } ], "fmp": [ - { - "name": "symbol", - "type": "str", - "description": "Symbol of the currency pair.", - "default": "", - "optional": false - }, { "name": "currency", "type": "str", @@ -711,13 +668,6 @@ } ], "intrinio": [ - { - "name": "code", - "type": "str", - "description": "Code of the currency pair.", - "default": "", - "optional": false - }, { "name": "base_currency", "type": "str", @@ -734,20 +684,6 @@ } ], "polygon": [ - { - "name": "market", - "type": "str", - "description": "Name of the trading market. Always 'fx'.", - "default": "", - "optional": false - }, - { - "name": "locale", - "type": "str", - "description": "Locale of the currency pair.", - "default": "", - "optional": false - }, { "name": "currency_symbol", "type": "str", @@ -755,13 +691,6 @@ "default": null, "optional": true }, - { - "name": "currency_name", - "type": "str", - "description": "Name of the quote currency.", - "default": null, - "optional": true - }, { "name": "base_currency_symbol", "type": "str", @@ -777,16 +706,30 @@ "optional": true }, { - "name": "last_updated_utc", - "type": "datetime", - "description": "The last updated timestamp in UTC.", + "name": "market", + "type": "str", + "description": "Name of the trading market. Always 'fx'.", "default": "", "optional": false }, { - "name": "delisted_utc", - "type": "datetime", - "description": "The delisted timestamp in UTC.", + "name": "locale", + "type": "str", + "description": "Locale of the currency pair.", + "default": "", + "optional": false + }, + { + "name": "last_updated", + "type": "date", + "description": "The date the reference data was last updated.", + "default": null, + "optional": true + }, + { + "name": "delisted", + "type": "date", + "description": "The date the item was delisted.", "default": null, "optional": true } diff --git a/openbb_platform/openbb/package/currency.py b/openbb_platform/openbb/package/currency.py index b2a90cfa9bc5..05c7b823969c 100644 --- a/openbb_platform/openbb/package/currency.py +++ b/openbb_platform/openbb/package/currency.py @@ -31,6 +31,10 @@ def price(self): @validate def search( self, + query: Annotated[ + Optional[str], + OpenBBField(description="Query to search for currency pairs."), + ] = None, provider: Annotated[ Optional[Literal["fmp", "intrinio", "polygon"]], OpenBBField( @@ -52,24 +56,12 @@ def search( Parameters ---------- + query : Optional[str] + Query to search for currency pairs. provider : Optional[Literal['fmp', 'intrinio', 'polygon']] The provider to use for the query, by default None. If None, the provider specified in defaults is selected or 'fmp' if there is no default. - symbol : Optional[str] - Symbol of the pair to search. (provider: polygon) - date : Optional[datetime.date] - A specific date to get data for. (provider: polygon) - search : Optional[str] - Search for terms within the ticker and/or company name. (provider: polygon) - active : Optional[bool] - Specify if the tickers returned should be actively traded on the queried date. (provider: polygon) - order : Optional[Literal['asc', 'desc']] - Order data by ascending or descending. (provider: polygon) - sort : Optional[Literal['ticker', 'name', 'market', 'locale', 'currency_symbol', 'currency_name', 'base_currency_symbol', 'base_currency_name', 'last_updated_utc', 'delisted_utc']] - Sort field used for ordering. (provider: polygon) - limit : Optional[Annotated[int, Gt(gt=0)]] - The number of data entries to return. (provider: polygon) Returns ------- @@ -87,49 +79,43 @@ def search( CurrencyPairs ------------- - name : str + symbol : str + Symbol representing the entity requested in the data. + name : Optional[str] Name of the currency pair. - symbol : Optional[str] - Symbol of the currency pair. (provider: fmp) currency : Optional[str] Base currency of the currency pair. (provider: fmp) stock_exchange : Optional[str] Stock exchange of the currency pair. (provider: fmp) exchange_short_name : Optional[str] Short name of the stock exchange of the currency pair. (provider: fmp) - code : Optional[str] - Code of the currency pair. (provider: intrinio) base_currency : Optional[str] ISO 4217 currency code of the base currency. (provider: intrinio) quote_currency : Optional[str] ISO 4217 currency code of the quote currency. (provider: intrinio) - market : Optional[str] - Name of the trading market. Always 'fx'. (provider: polygon) - locale : Optional[str] - Locale of the currency pair. (provider: polygon) currency_symbol : Optional[str] The symbol of the quote currency. (provider: polygon) - currency_name : Optional[str] - Name of the quote currency. (provider: polygon) base_currency_symbol : Optional[str] The symbol of the base currency. (provider: polygon) base_currency_name : Optional[str] Name of the base currency. (provider: polygon) - last_updated_utc : Optional[datetime] - The last updated timestamp in UTC. (provider: polygon) - delisted_utc : Optional[datetime] - The delisted timestamp in UTC. (provider: polygon) + market : Optional[str] + Name of the trading market. Always 'fx'. (provider: polygon) + locale : Optional[str] + Locale of the currency pair. (provider: polygon) + last_updated : Optional[date] + The date the reference data was last updated. (provider: polygon) + delisted : Optional[date] + The date the item was delisted. (provider: polygon) Examples -------- >>> from openbb import obb - >>> obb.currency.search(provider='intrinio') - >>> # Search for 'EURUSD' currency pair using 'intrinio' as provider. - >>> obb.currency.search(provider='intrinio', symbol='EURUSD') - >>> # Search for actively traded currency pairs on the queried date using 'polygon' as provider. - >>> obb.currency.search(provider='polygon', date='2024-01-02', active=True) + >>> obb.currency.search(provider='fmp') + >>> # Search for 'EUR' currency pair using 'intrinio' as provider. + >>> obb.currency.search(provider='intrinio', query='EUR') >>> # Search for terms using 'polygon' as provider. - >>> obb.currency.search(provider='polygon', search='Euro zone') + >>> obb.currency.search(provider='polygon', query='Euro zone') """ # noqa: E501 return self._run( @@ -142,7 +128,9 @@ def search( ("fmp", "intrinio", "polygon"), ) }, - standard_params={}, + standard_params={ + "query": query, + }, extra_params=kwargs, ) ) diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/currency_pairs.py b/openbb_platform/providers/fmp/openbb_fmp/models/currency_pairs.py index b5c3f2cd5611..23c2d9b37a5f 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/currency_pairs.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/currency_pairs.py @@ -1,5 +1,7 @@ """FMP Currency Available Pairs Model.""" +# pylint: disable=unused-argument + from typing import Any, Dict, List, Optional from openbb_core.provider.abstract.fetcher import Fetcher @@ -7,7 +9,9 @@ CurrencyPairsData, CurrencyPairsQueryParams, ) +from openbb_core.provider.utils.errors import EmptyDataError from openbb_fmp.utils.helpers import get_data_many +from pandas import DataFrame from pydantic import Field @@ -53,7 +57,6 @@ async def aextract_data( ) -> List[Dict]: """Return the raw data from the FMP endpoint.""" api_key = credentials.get("fmp_api_key") if credentials else "" - base_url = "https://financialmodelingprep.com/api/v3" url = f"{base_url}/symbol/available-forex-currency-pairs?apikey={api_key}" @@ -64,4 +67,20 @@ def transform_data( query: FMPCurrencyPairsQueryParams, data: List[Dict], **kwargs: Any ) -> List[FMPCurrencyPairsData]: """Return the transformed data.""" - return [FMPCurrencyPairsData.model_validate(d) for d in data] + if not data: + raise EmptyDataError("The request was returned empty.") + df = DataFrame(data) + if query.query: + df = df[ + df["name"].str.contains(query.query, case=False) + | df["symbol"].str.contains(query.query, case=False) + | df["currency"].str.contains(query.query, case=False) + | df["stockExchange"].str.contains(query.query, case=False) + | df["exchangeShortName"].str.contains(query.query, case=False) + ] + if len(df) == 0: + raise EmptyDataError( + f"No results were found with the query supplied. -> {query.query}" + + " Hint: Names and descriptions are not searchable from FMP, try 3-letter symbols." + ) + return [FMPCurrencyPairsData.model_validate(d) for d in df.to_dict("records")] diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/currency_pairs.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/currency_pairs.py index fb99b5e5af27..9c418c166ddd 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/currency_pairs.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/currency_pairs.py @@ -7,7 +7,9 @@ CurrencyPairsData, CurrencyPairsQueryParams, ) +from openbb_core.provider.utils.errors import EmptyDataError from openbb_intrinio.utils.helpers import get_data_many +from pandas import DataFrame from pydantic import Field @@ -21,9 +23,8 @@ class IntrinioCurrencyPairsQueryParams(CurrencyPairsQueryParams): class IntrinioCurrencyPairsData(CurrencyPairsData): """Intrinio Currency Available Pairs Data.""" - __alias_dict__ = {"name": "code"} + __alias_dict__ = {"symbol": "code"} - code: str = Field(description="Code of the currency pair.", alias="name") base_currency: str = Field( description="ISO 4217 currency code of the base currency." ) @@ -56,7 +57,6 @@ async def aextract_data( base_url = "https://api-v2.intrinio.com" url = f"{base_url}/forex/pairs?api_key={api_key}" - return await get_data_many(url, "pairs", **kwargs) @staticmethod @@ -64,4 +64,21 @@ def transform_data( query: IntrinioCurrencyPairsQueryParams, data: List[Dict], **kwargs: Any ) -> List[IntrinioCurrencyPairsData]: """Return the transformed data.""" - return [IntrinioCurrencyPairsData.model_validate(d) for d in data] + if not data: + raise EmptyDataError("The request was returned empty.") + df = DataFrame(data) + if query.query: + df = df[ + df["code"].str.contains(query.query, case=False) + | df["base_currency"].str.contains(query.query, case=False) + | df["quote_currency"].str.contains(query.query, case=False) + ] + if len(df) == 0: + raise EmptyDataError( + f"No results were found with the query supplied. -> {query.query}" + + " Hint: Names and descriptions are not searchable from Intrinio, try 3-letter symbols." + ) + return [ + IntrinioCurrencyPairsData.model_validate(d) + for d in df.to_dict(orient="records") + ] diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py index 28ee909d7015..83cb753b64c7 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_pairs.py @@ -1,19 +1,22 @@ """Polygon Currency Available Pairs Model.""" +# pylint: disable=unused-argument + from datetime import ( date as dateType, datetime, ) -from typing import Any, Dict, List, Literal, Optional +from typing import Any, Dict, List, Optional from openbb_core.provider.abstract.fetcher import Fetcher from openbb_core.provider.standard_models.currency_pairs import ( CurrencyPairsData, CurrencyPairsQueryParams, ) -from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS +from openbb_core.provider.utils.errors import EmptyDataError from openbb_polygon.utils.helpers import get_data -from pydantic import Field, PositiveInt, field_validator +from pandas import DataFrame +from pydantic import Field, field_validator class PolygonCurrencyPairsQueryParams(CurrencyPairsQueryParams): @@ -22,75 +25,39 @@ class PolygonCurrencyPairsQueryParams(CurrencyPairsQueryParams): Source: https://polygon.io/docs/forex/get_v3_reference_tickers """ - symbol: Optional[str] = Field( - default=None, description="Symbol of the pair to search." - ) - date: Optional[dateType] = Field( - default=None, description=QUERY_DESCRIPTIONS.get("date", "") - ) - search: Optional[str] = Field( - default="", - description="Search for terms within the ticker and/or company name.", - ) - active: Optional[bool] = Field( - default=True, - description="Specify if the tickers returned should be actively traded on the queried date.", - ) - order: Optional[Literal["asc", "desc"]] = Field( - default="asc", description="Order data by ascending or descending." - ) - sort: Optional[ - Literal[ - "ticker", - "name", - "market", - "locale", - "currency_symbol", - "currency_name", - "base_currency_symbol", - "base_currency_name", - "last_updated_utc", - "delisted_utc", - ] - ] = Field(default=None, description="Sort field used for ordering.") - limit: Optional[PositiveInt] = Field( - default=1000, description=QUERY_DESCRIPTIONS.get("limit", "") - ) - class PolygonCurrencyPairsData(CurrencyPairsData): """Polygon Currency Available Pairs Data.""" - market: str = Field(description="Name of the trading market. Always 'fx'.") - locale: str = Field(description="Locale of the currency pair.") + __alias_dict__ = { + "last_updated": "last_updated_utc", + "delisted": "delisted_utc", + "name": "currency_name", + "symbol": "ticker", + } currency_symbol: Optional[str] = Field( default=None, description="The symbol of the quote currency." ) - currency_name: Optional[str] = Field( - default=None, description="Name of the quote currency." - ) base_currency_symbol: Optional[str] = Field( default=None, description="The symbol of the base currency." ) base_currency_name: Optional[str] = Field( default=None, description="Name of the base currency." ) - last_updated_utc: datetime = Field(description="The last updated timestamp in UTC.") - delisted_utc: Optional[datetime] = Field( - default=None, description="The delisted timestamp in UTC." + market: str = Field(description="Name of the trading market. Always 'fx'.") + locale: str = Field(description="Locale of the currency pair.") + last_updated: Optional[dateType] = Field( + default=None, description="The date the reference data was last updated." + ) + delisted: Optional[dateType] = Field( + default=None, description="The date the item was delisted." ) - @field_validator("last_updated_utc", mode="before", check_fields=False) + @field_validator("last_updated", "delisted", mode="before", check_fields=False) @classmethod def last_updated_utc_validate(cls, v): # pylint: disable=E0213 """Return the parsed last updated timestamp in UTC.""" - return datetime.strptime(v, "%Y-%m-%dT%H:%M:%SZ") - - @field_validator("delisted_utc", mode="before", check_fields=False) - @classmethod - def delisted_utc_validate(cls, v): # pylint: disable=E0213 - """Return the parsed delisted timestamp in UTC.""" - return datetime.strptime(v, "%Y-%m-%dT%H:%M:%SZ") + return datetime.strptime(v, "%Y-%m-%dT%H:%M:%SZ").date() if v else None class PolygonCurrencyPairsFetcher( @@ -99,51 +66,36 @@ class PolygonCurrencyPairsFetcher( List[PolygonCurrencyPairsData], ] ): - """Transform the query, extract and transform the data from the Polygon endpoints.""" + """Polygon Currency Pairs Fetcher.""" @staticmethod def transform_query(params: Dict[str, Any]) -> PolygonCurrencyPairsQueryParams: - """Transform the query parameters. Ticker is set if symbol is provided.""" - transform_params = params - now = datetime.now().date().isoformat() - symbol = params.get("symbol") - transform_params["symbol"] = f"ticker=C:{symbol.upper()}" if symbol else "" - if params.get("date") is None: - transform_params["date"] = now - - return PolygonCurrencyPairsQueryParams(**transform_params) + """Transform the query parameters.""" + return PolygonCurrencyPairsQueryParams(**params) @staticmethod async def aextract_data( query: PolygonCurrencyPairsQueryParams, credentials: Optional[Dict[str, str]], **kwargs: Any, - ) -> List[dict]: + ) -> List[Dict]: """Extract the data from the Polygon API.""" api_key = credentials.get("polygon_api_key") if credentials else "" - request_url = ( f"https://api.polygon.io/v3/reference/" - f"tickers?{query.symbol}&market=fx&date={query.date}&" - f"search={query.search}&active={query.active}&order={query.order}&" - f"limit={query.limit}" + f"tickers?&market=fx&limit=1000" + f"&apiKey={api_key}" ) - if query.sort: - request_url += f"&sort={query.sort}" - request_url = f"{request_url}&apiKey={api_key}" data = {"next_url": request_url} all_data: List[Dict] = [] while "next_url" in data: data = await get_data(request_url, **kwargs) - if isinstance(data, list): raise ValueError("Expected a dict, got a list") - if len(data["results"]) == 0: raise RuntimeError( "No results found. Please change your query parameters." ) - if data["status"] == "OK": results = data.get("results") if not isinstance(results, list): @@ -153,18 +105,34 @@ async def aextract_data( all_data.extend(results) elif data["status"] == "ERROR": raise UserWarning(data["error"]) - if "next_url" in data: request_url = f"{data['next_url']}&apiKey={api_key}" - return all_data - # pylint: disable=unused-argument @staticmethod def transform_data( query: PolygonCurrencyPairsQueryParams, - data: List[dict], + data: List[Dict], **kwargs: Any, ) -> List[PolygonCurrencyPairsData]: - """Transform the data into a list of PolygonCurrencyPairsData.""" - return [PolygonCurrencyPairsData.model_validate(d) for d in data] + """Filter data by search query and validate the model.""" + if not data: + raise EmptyDataError("The request was returned empty.") + df = DataFrame(data) + df["ticker"] = df["ticker"].str.replace("C:", "") + if query.query: + df = df[ + df["name"].str.contains(query.query, case=False) + | df["base_currency_name"].str.contains(query.query, case=False) + | df["currency_name"].str.contains(query.query, case=False) + | df["base_currency_symbol"].str.contains(query.query, case=False) + | df["currency_symbol"].str.contains(query.query, case=False) + | df["ticker"].str.contains(query.query, case=False) + ] + if len(df) == 0: + raise EmptyDataError( + f"No results were found with the query supplied. -> {query.query}" + ) + return [ + PolygonCurrencyPairsData.model_validate(d) for d in df.to_dict("records") + ] diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml index 6cd40bde933a..2f63edb41308 100644 --- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml +++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_pairs_fetcher.yaml @@ -9,283 +9,283 @@ interactions: Connection: - keep-alive method: GET - uri: https://api.polygon.io/v3/reference/tickers?active=True&apiKey=MOCK_API_KEY&date=2023-01-01&limit=1000&market=fx&order=asc + uri: https://api.polygon.io/v3/reference/tickers?apiKey=MOCK_API_KEY&limit=1000&market=fx response: body: string: !!binary | - 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 - AP//68nYAu8yBAA= + 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 + 686P79TtMFt8vD77j/8XAAD//zVlYESiMwQA headers: Connection: - keep-alive @@ -294,9 +294,9 @@ interactions: Content-Type: - application/json Date: - - Tue, 07 May 2024 16:14:03 GMT + - Thu, 09 May 2024 05:16:50 GMT Link: - - ; + - ; rel="next" Server: - nginx/1.19.2 @@ -309,7 +309,7 @@ interactions: X-Item-Count: - '1000' X-Request-Id: - - b6491d6a58833e8f17bf0ea48c2fb8d3 + - 2557e9c6a8d55bf0bf57cfb244abe400 status: code: 200 message: OK @@ -323,123 +323,123 @@ interactions: Connection: - keep-alive method: GET - uri: https://api.polygon.io/v3/reference/tickers?apiKey=MOCK_API_KEY&cursor=YWN0aXZlPXRydWUmYXA9QyUzQVNFS1pBUiU3QzMzMTc2YTg2ZjlhZGY2YThhMjE1MWY2M2Y5MjJkMjBkZTU0YzMwYTVjN2RhMGM5ZjgxYWJiNjQ3ZmU5ZWU3M2UmYXM9JmRhdGU9MjAyMy0wMS0wMSZsaW1pdD0xMDAwJm1hcmtldD1meCZvcmRlcj1hc2Mmc29ydD10aWNrZXI + uri: https://api.polygon.io/v3/reference/tickers?apiKey=MOCK_API_KEY&cursor=YWN0aXZlPXRydWUmYXA9QyUzQVNFS1pBUiU3QzMzMTc2YTg2ZjlhZGY2YThhMjE1MWY2M2Y5MjJkMjBkZTU0YzMwYTVjN2RhMGM5ZjgxYWJiNjQ3ZmU5ZWU3M2UmYXM9JmRhdGU9MjAyNC0wNS0wOSZsaW1pdD0xMDAwJm1hcmtldD1meCZvcmRlcj1hc2Mmc29ydD10aWNrZXI response: body: string: !!binary | - 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 - h8Alz1nWuPrxz+/+8f8BAAD//07s25ishQEA + 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 headers: Connection: - keep-alive @@ -448,7 +448,7 @@ interactions: Content-Type: - application/json Date: - - Tue, 07 May 2024 16:14:03 GMT + - Thu, 09 May 2024 05:16:50 GMT Server: - nginx/1.19.2 Strict-Transport-Security: @@ -460,7 +460,7 @@ interactions: X-Item-Count: - '351' X-Request-Id: - - 3e66ea32a52f1eab3957b9ea2177678c + - 304d360bcfd5e560d5b2a0fe2bbbb357 status: code: 200 message: OK diff --git a/openbb_platform/providers/polygon/tests/test_polygon_fetchers.py b/openbb_platform/providers/polygon/tests/test_polygon_fetchers.py index 9d6ee5b4440f..a0c108e573b6 100644 --- a/openbb_platform/providers/polygon/tests/test_polygon_fetchers.py +++ b/openbb_platform/providers/polygon/tests/test_polygon_fetchers.py @@ -152,7 +152,7 @@ def test_polygon_currency_historical_fetcher(credentials=test_credentials): @pytest.mark.record_http def test_polygon_currency_pairs_fetcher(credentials=test_credentials): """Test the Polygon Currency Pairs fetcher.""" - params = {"date": date(2023, 1, 1)} + params = {} fetcher = PolygonCurrencyPairsFetcher() result = fetcher.test(params, credentials) From f191d163bafce144637a95b667cbf26c7ec984bf Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Thu, 9 May 2024 02:39:31 -0700 Subject: [PATCH 11/44] [BugFix] Update SEC pyproject.toml (#6379) * update sec toml * dash not underscore --- openbb_platform/providers/sec/poetry.lock | 462 ++++++++++++------- openbb_platform/providers/sec/pyproject.toml | 3 +- 2 files changed, 309 insertions(+), 156 deletions(-) diff --git a/openbb_platform/providers/sec/poetry.lock b/openbb_platform/providers/sec/poetry.lock index 7dd1d904393c..d29a97748571 100644 --- a/openbb_platform/providers/sec/poetry.lock +++ b/openbb_platform/providers/sec/poetry.lock @@ -96,6 +96,32 @@ yarl = ">=1.0,<2.0" [package.extras] speedups = ["Brotli", "aiodns", "brotlicffi"] +[[package]] +name = "aiohttp-client-cache" +version = "0.10.0" +description = "Persistent cache for aiohttp requests" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, + {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, +] + +[package.dependencies] +aiohttp = ">=3.8,<4.0" +attrs = ">=21.2" +itsdangerous = ">=2.0" +url-normalize = ">=1.4,<2.0" + +[package.extras] +all = ["aioboto3 (>=9.0)", "aiobotocore (>=2.0)", "aiofiles (>=0.6.0)", "aiosqlite (>=0.16)", "motor (>=3.1)", "redis (>=4.2)"] +docs = ["furo (>=2023.8,<2024.0)", "linkify-it-py (>=2.0)", "markdown-it-py (>=2.2)", "myst-parser (>=2.0)", "python-forge (>=18.6,<19.0)", "sphinx (==7.1.2)", "sphinx-autodoc-typehints (>=1.23,<2.0)", "sphinx-automodapi (>=0.15)", "sphinx-copybutton (>=0.3,<0.4)", "sphinx-inline-tabs (>=2023.4)", "sphinxcontrib-apidoc (>=0.3)"] +dynamodb = ["aioboto3 (>=9.0)", "aiobotocore (>=2.0)"] +filesystem = ["aiofiles (>=0.6.0)", "aiosqlite (>=0.16)"] +mongodb = ["motor (>=3.1)"] +redis = ["redis (>=4.2)"] +sqlite = ["aiosqlite (>=0.16)"] + [[package]] name = "aiosignal" version = "1.3.1" @@ -110,6 +136,21 @@ files = [ [package.dependencies] frozenlist = ">=1.1.0" +[[package]] +name = "aiosqlite" +version = "0.19.0" +description = "asyncio bridge to the standard sqlite3 module" +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, + {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, +] + +[package.extras] +dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] +docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] + [[package]] name = "annotated-types" version = "0.6.0" @@ -186,31 +227,6 @@ files = [ {file = "backoff-2.2.1.tar.gz", hash = "sha256:03f829f5bb1923180821643f8753b0502c3b682293992485b0eef2807afa5cba"}, ] -[[package]] -name = "cattrs" -version = "23.2.3" -description = "Composable complex class support for attrs and dataclasses." -optional = false -python-versions = ">=3.8" -files = [ - {file = "cattrs-23.2.3-py3-none-any.whl", hash = "sha256:0341994d94971052e9ee70662542699a3162ea1e0c62f7ce1b4a57f563685108"}, - {file = "cattrs-23.2.3.tar.gz", hash = "sha256:a934090d95abaa9e911dac357e3a8699e0b4b14f8529bcc7d2b1ad9d51672b9f"}, -] - -[package.dependencies] -attrs = ">=23.1.0" -exceptiongroup = {version = ">=1.1.1", markers = "python_version < \"3.11\""} -typing-extensions = {version = ">=4.1.0,<4.6.3 || >4.6.3", markers = "python_version < \"3.11\""} - -[package.extras] -bson = ["pymongo (>=4.4.0)"] -cbor2 = ["cbor2 (>=5.4.6)"] -msgpack = ["msgpack (>=1.0.5)"] -orjson = ["orjson (>=3.9.2)"] -pyyaml = ["pyyaml (>=6.0)"] -tomlkit = ["tomlkit (>=0.11.8)"] -ujson = ["ujson (>=5.7.0)"] - [[package]] name = "certifi" version = "2024.2.2" @@ -546,6 +562,187 @@ docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.link perf = ["ipython"] testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] +[[package]] +name = "itsdangerous" +version = "2.2.0" +description = "Safely pass data to untrusted environments and back." +optional = false +python-versions = ">=3.8" +files = [ + {file = "itsdangerous-2.2.0-py3-none-any.whl", hash = "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef"}, + {file = "itsdangerous-2.2.0.tar.gz", hash = "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173"}, +] + +[[package]] +name = "lxml" +version = "5.2.1" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +optional = false +python-versions = ">=3.6" +files = [ + {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1f7785f4f789fdb522729ae465adcaa099e2a3441519df750ebdccc481d961a1"}, + {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6cc6ee342fb7fa2471bd9b6d6fdfc78925a697bf5c2bcd0a302e98b0d35bfad3"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:794f04eec78f1d0e35d9e0c36cbbb22e42d370dda1609fb03bcd7aeb458c6377"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817d420c60a5183953c783b0547d9eb43b7b344a2c46f69513d5952a78cddf3"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2213afee476546a7f37c7a9b4ad4d74b1e112a6fafffc9185d6d21f043128c81"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b070bbe8d3f0f6147689bed981d19bbb33070225373338df755a46893528104a"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e02c5175f63effbd7c5e590399c118d5db6183bbfe8e0d118bdb5c2d1b48d937"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:3dc773b2861b37b41a6136e0b72a1a44689a9c4c101e0cddb6b854016acc0aa8"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:d7520db34088c96cc0e0a3ad51a4fd5b401f279ee112aa2b7f8f976d8582606d"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:bcbf4af004f98793a95355980764b3d80d47117678118a44a80b721c9913436a"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2b44bec7adf3e9305ce6cbfa47a4395667e744097faed97abb4728748ba7d47"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1c5bb205e9212d0ebddf946bc07e73fa245c864a5f90f341d11ce7b0b854475d"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2c9d147f754b1b0e723e6afb7ba1566ecb162fe4ea657f53d2139bbf894d050a"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:3545039fa4779be2df51d6395e91a810f57122290864918b172d5dc7ca5bb433"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a91481dbcddf1736c98a80b122afa0f7296eeb80b72344d7f45dc9f781551f56"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:2ddfe41ddc81f29a4c44c8ce239eda5ade4e7fc305fb7311759dd6229a080052"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:a7baf9ffc238e4bf401299f50e971a45bfcc10a785522541a6e3179c83eabf0a"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:31e9a882013c2f6bd2f2c974241bf4ba68c85eba943648ce88936d23209a2e01"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0a15438253b34e6362b2dc41475e7f80de76320f335e70c5528b7148cac253a1"}, + {file = "lxml-5.2.1-cp310-cp310-win32.whl", hash = "sha256:6992030d43b916407c9aa52e9673612ff39a575523c5f4cf72cdef75365709a5"}, + {file = "lxml-5.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:da052e7962ea2d5e5ef5bc0355d55007407087392cf465b7ad84ce5f3e25fe0f"}, + {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:70ac664a48aa64e5e635ae5566f5227f2ab7f66a3990d67566d9907edcbbf867"}, + {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1ae67b4e737cddc96c99461d2f75d218bdf7a0c3d3ad5604d1f5e7464a2f9ffe"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f18a5a84e16886898e51ab4b1d43acb3083c39b14c8caeb3589aabff0ee0b270"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6f2c8372b98208ce609c9e1d707f6918cc118fea4e2c754c9f0812c04ca116d"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:394ed3924d7a01b5bd9a0d9d946136e1c2f7b3dc337196d99e61740ed4bc6fe1"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d077bc40a1fe984e1a9931e801e42959a1e6598edc8a3223b061d30fbd26bbc"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:764b521b75701f60683500d8621841bec41a65eb739b8466000c6fdbc256c240"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:3a6b45da02336895da82b9d472cd274b22dc27a5cea1d4b793874eead23dd14f"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:5ea7b6766ac2dfe4bcac8b8595107665a18ef01f8c8343f00710b85096d1b53a"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:e196a4ff48310ba62e53a8e0f97ca2bca83cdd2fe2934d8b5cb0df0a841b193a"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:200e63525948e325d6a13a76ba2911f927ad399ef64f57898cf7c74e69b71095"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:dae0ed02f6b075426accbf6b2863c3d0a7eacc1b41fb40f2251d931e50188dad"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:ab31a88a651039a07a3ae327d68ebdd8bc589b16938c09ef3f32a4b809dc96ef"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:df2e6f546c4df14bc81f9498bbc007fbb87669f1bb707c6138878c46b06f6510"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5dd1537e7cc06efd81371f5d1a992bd5ab156b2b4f88834ca852de4a8ea523fa"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9b9ec9c9978b708d488bec36b9e4c94d88fd12ccac3e62134a9d17ddba910ea9"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:8e77c69d5892cb5ba71703c4057091e31ccf534bd7f129307a4d084d90d014b8"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:a8d5c70e04aac1eda5c829a26d1f75c6e5286c74743133d9f742cda8e53b9c2f"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c94e75445b00319c1fad60f3c98b09cd63fe1134a8a953dcd48989ef42318534"}, + {file = "lxml-5.2.1-cp311-cp311-win32.whl", hash = "sha256:4951e4f7a5680a2db62f7f4ab2f84617674d36d2d76a729b9a8be4b59b3659be"}, + {file = "lxml-5.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:5c670c0406bdc845b474b680b9a5456c561c65cf366f8db5a60154088c92d102"}, + {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:abc25c3cab9ec7fcd299b9bcb3b8d4a1231877e425c650fa1c7576c5107ab851"}, + {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6935bbf153f9a965f1e07c2649c0849d29832487c52bb4a5c5066031d8b44fd5"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d793bebb202a6000390a5390078e945bbb49855c29c7e4d56a85901326c3b5d9"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afd5562927cdef7c4f5550374acbc117fd4ecc05b5007bdfa57cc5355864e0a4"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0e7259016bc4345a31af861fdce942b77c99049d6c2107ca07dc2bba2435c1d9"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:530e7c04f72002d2f334d5257c8a51bf409db0316feee7c87e4385043be136af"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59689a75ba8d7ffca577aefd017d08d659d86ad4585ccc73e43edbfc7476781a"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:f9737bf36262046213a28e789cc82d82c6ef19c85a0cf05e75c670a33342ac2c"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:3a74c4f27167cb95c1d4af1c0b59e88b7f3e0182138db2501c353555f7ec57f4"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:68a2610dbe138fa8c5826b3f6d98a7cfc29707b850ddcc3e21910a6fe51f6ca0"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:f0a1bc63a465b6d72569a9bba9f2ef0334c4e03958e043da1920299100bc7c08"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c2d35a1d047efd68027817b32ab1586c1169e60ca02c65d428ae815b593e65d4"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:79bd05260359170f78b181b59ce871673ed01ba048deef4bf49a36ab3e72e80b"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:865bad62df277c04beed9478fe665b9ef63eb28fe026d5dedcb89b537d2e2ea6"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:44f6c7caff88d988db017b9b0e4ab04934f11e3e72d478031efc7edcac6c622f"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:71e97313406ccf55d32cc98a533ee05c61e15d11b99215b237346171c179c0b0"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:057cdc6b86ab732cf361f8b4d8af87cf195a1f6dc5b0ff3de2dced242c2015e0"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:f3bbbc998d42f8e561f347e798b85513ba4da324c2b3f9b7969e9c45b10f6169"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:491755202eb21a5e350dae00c6d9a17247769c64dcf62d8c788b5c135e179dc4"}, + {file = "lxml-5.2.1-cp312-cp312-win32.whl", hash = "sha256:8de8f9d6caa7f25b204fc861718815d41cbcf27ee8f028c89c882a0cf4ae4134"}, + {file = "lxml-5.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:f2a9efc53d5b714b8df2b4b3e992accf8ce5bbdfe544d74d5c6766c9e1146a3a"}, + {file = "lxml-5.2.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:70a9768e1b9d79edca17890175ba915654ee1725975d69ab64813dd785a2bd5c"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c38d7b9a690b090de999835f0443d8aa93ce5f2064035dfc48f27f02b4afc3d0"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5670fb70a828663cc37552a2a85bf2ac38475572b0e9b91283dc09efb52c41d1"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:958244ad566c3ffc385f47dddde4145088a0ab893504b54b52c041987a8c1863"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b6241d4eee5f89453307c2f2bfa03b50362052ca0af1efecf9fef9a41a22bb4f"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2a66bf12fbd4666dd023b6f51223aed3d9f3b40fef06ce404cb75bafd3d89536"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:9123716666e25b7b71c4e1789ec829ed18663152008b58544d95b008ed9e21e9"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:0c3f67e2aeda739d1cc0b1102c9a9129f7dc83901226cc24dd72ba275ced4218"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5d5792e9b3fb8d16a19f46aa8208987cfeafe082363ee2745ea8b643d9cc5b45"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_aarch64.whl", hash = "sha256:88e22fc0a6684337d25c994381ed8a1580a6f5ebebd5ad41f89f663ff4ec2885"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_ppc64le.whl", hash = "sha256:21c2e6b09565ba5b45ae161b438e033a86ad1736b8c838c766146eff8ceffff9"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_s390x.whl", hash = "sha256:afbbdb120d1e78d2ba8064a68058001b871154cc57787031b645c9142b937a62"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:627402ad8dea044dde2eccde4370560a2b750ef894c9578e1d4f8ffd54000461"}, + {file = "lxml-5.2.1-cp36-cp36m-win32.whl", hash = "sha256:e89580a581bf478d8dcb97d9cd011d567768e8bc4095f8557b21c4d4c5fea7d0"}, + {file = "lxml-5.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:59565f10607c244bc4c05c0c5fa0c190c990996e0c719d05deec7030c2aa8289"}, + {file = "lxml-5.2.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:857500f88b17a6479202ff5fe5f580fc3404922cd02ab3716197adf1ef628029"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56c22432809085b3f3ae04e6e7bdd36883d7258fcd90e53ba7b2e463efc7a6af"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a55ee573116ba208932e2d1a037cc4b10d2c1cb264ced2184d00b18ce585b2c0"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:6cf58416653c5901e12624e4013708b6e11142956e7f35e7a83f1ab02f3fe456"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:64c2baa7774bc22dd4474248ba16fe1a7f611c13ac6123408694d4cc93d66dbd"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:74b28c6334cca4dd704e8004cba1955af0b778cf449142e581e404bd211fb619"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:7221d49259aa1e5a8f00d3d28b1e0b76031655ca74bb287123ef56c3db92f213"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3dbe858ee582cbb2c6294dc85f55b5f19c918c2597855e950f34b660f1a5ede6"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:04ab5415bf6c86e0518d57240a96c4d1fcfc3cb370bb2ac2a732b67f579e5a04"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:6ab833e4735a7e5533711a6ea2df26459b96f9eec36d23f74cafe03631647c41"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f443cdef978430887ed55112b491f670bba6462cea7a7742ff8f14b7abb98d75"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"}, + {file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"}, + {file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"}, + {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3d30321949861404323c50aebeb1943461a67cd51d4200ab02babc58bd06a86"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:b560e3aa4b1d49e0e6c847d72665384db35b2f5d45f8e6a5c0072e0283430533"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:058a1308914f20784c9f4674036527e7c04f7be6fb60f5d61353545aa7fcb739"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:adfb84ca6b87e06bc6b146dc7da7623395db1e31621c4785ad0658c5028b37d7"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:417d14450f06d51f363e41cace6488519038f940676ce9664b34ebf5653433a5"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a2dfe7e2473f9b59496247aad6e23b405ddf2e12ef0765677b0081c02d6c2c0b"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bf2e2458345d9bffb0d9ec16557d8858c9c88d2d11fed53998512504cd9df49b"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:58278b29cb89f3e43ff3e0c756abbd1518f3ee6adad9e35b51fb101c1c1daaec"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:64641a6068a16201366476731301441ce93457eb8452056f570133a6ceb15fca"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:78bfa756eab503673991bdcf464917ef7845a964903d3302c5f68417ecdc948c"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:11a04306fcba10cd9637e669fd73aa274c1c09ca64af79c041aa820ea992b637"}, + {file = "lxml-5.2.1-cp38-cp38-win32.whl", hash = "sha256:66bc5eb8a323ed9894f8fa0ee6cb3e3fb2403d99aee635078fd19a8bc7a5a5da"}, + {file = "lxml-5.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:9676bfc686fa6a3fa10cd4ae6b76cae8be26eb5ec6811d2a325636c460da1806"}, + {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cf22b41fdae514ee2f1691b6c3cdeae666d8b7fa9434de445f12bbeee0cf48dd"}, + {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ec42088248c596dbd61d4ae8a5b004f97a4d91a9fd286f632e42e60b706718d7"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd53553ddad4a9c2f1f022756ae64abe16da1feb497edf4d9f87f99ec7cf86bd"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feaa45c0eae424d3e90d78823f3828e7dc42a42f21ed420db98da2c4ecf0a2cb"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddc678fb4c7e30cf830a2b5a8d869538bc55b28d6c68544d09c7d0d8f17694dc"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:853e074d4931dbcba7480d4dcab23d5c56bd9607f92825ab80ee2bd916edea53"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc4691d60512798304acb9207987e7b2b7c44627ea88b9d77489bbe3e6cc3bd4"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:beb72935a941965c52990f3a32d7f07ce869fe21c6af8b34bf6a277b33a345d3"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_ppc64le.whl", hash = "sha256:6588c459c5627fefa30139be4d2e28a2c2a1d0d1c265aad2ba1935a7863a4913"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_s390x.whl", hash = "sha256:588008b8497667f1ddca7c99f2f85ce8511f8f7871b4a06ceede68ab62dff64b"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6787b643356111dfd4032b5bffe26d2f8331556ecb79e15dacb9275da02866e"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7c17b64b0a6ef4e5affae6a3724010a7a66bda48a62cfe0674dabd46642e8b54"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:27aa20d45c2e0b8cd05da6d4759649170e8dfc4f4e5ef33a34d06f2d79075d57"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d4f2cc7060dc3646632d7f15fe68e2fa98f58e35dd5666cd525f3b35d3fed7f8"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff46d772d5f6f73564979cd77a4fffe55c916a05f3cb70e7c9c0590059fb29ef"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:96323338e6c14e958d775700ec8a88346014a85e5de73ac7967db0367582049b"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:52421b41ac99e9d91934e4d0d0fe7da9f02bfa7536bb4431b4c05c906c8c6919"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:7a7efd5b6d3e30d81ec68ab8a88252d7c7c6f13aaa875009fe3097eb4e30b84c"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0ed777c1e8c99b63037b91f9d73a6aad20fd035d77ac84afcc205225f8f41188"}, + {file = "lxml-5.2.1-cp39-cp39-win32.whl", hash = "sha256:644df54d729ef810dcd0f7732e50e5ad1bd0a135278ed8d6bcb06f33b6b6f708"}, + {file = "lxml-5.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:9ca66b8e90daca431b7ca1408cae085d025326570e57749695d6a01454790e95"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9b0ff53900566bc6325ecde9181d89afadc59c5ffa39bddf084aaedfe3b06a11"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fd6037392f2d57793ab98d9e26798f44b8b4da2f2464388588f48ac52c489ea1"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b9c07e7a45bb64e21df4b6aa623cb8ba214dfb47d2027d90eac197329bb5e94"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3249cc2989d9090eeac5467e50e9ec2d40704fea9ab72f36b034ea34ee65ca98"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f42038016852ae51b4088b2862126535cc4fc85802bfe30dea3500fdfaf1864e"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:533658f8fbf056b70e434dff7e7aa611bcacb33e01f75de7f821810e48d1bb66"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:622020d4521e22fb371e15f580d153134bfb68d6a429d1342a25f051ec72df1c"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:efa7b51824aa0ee957ccd5a741c73e6851de55f40d807f08069eb4c5a26b2baa"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c6ad0fbf105f6bcc9300c00010a2ffa44ea6f555df1a2ad95c88f5656104817"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e233db59c8f76630c512ab4a4daf5a5986da5c3d5b44b8e9fc742f2a24dbd460"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6a014510830df1475176466b6087fc0c08b47a36714823e58d8b8d7709132a96"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:d38c8f50ecf57f0463399569aa388b232cf1a2ffb8f0a9a5412d0db57e054860"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5aea8212fb823e006b995c4dda533edcf98a893d941f173f6c9506126188860d"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff097ae562e637409b429a7ac958a20aab237a0378c42dabaa1e3abf2f896e5f"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f5d65c39f16717a47c36c756af0fb36144069c4718824b7533f803ecdf91138"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3d0c3dd24bb4605439bf91068598d00c6370684f8de4a67c2992683f6c309d6b"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e32be23d538753a8adb6c85bd539f5fd3b15cb987404327c569dfc5fd8366e85"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:cc518cea79fd1e2f6c90baafa28906d4309d24f3a63e801d855e7424c5b34144"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a0af35bd8ebf84888373630f73f24e86bf016642fb8576fba49d3d6b560b7cbc"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8aca2e3a72f37bfc7b14ba96d4056244001ddcc18382bd0daa087fd2e68a354"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ca1e8188b26a819387b29c3895c47a5e618708fe6f787f3b1a471de2c4a94d9"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c8ba129e6d3b0136a0f50345b2cb3db53f6bda5dd8c7f5d83fbccba97fb5dcb5"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e998e304036198b4f6914e6a1e2b6f925208a20e2042563d9734881150c6c246"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d3be9b2076112e51b323bdf6d5a7f8a798de55fb8d95fcb64bd179460cdc0704"}, + {file = "lxml-5.2.1.tar.gz", hash = "sha256:3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306"}, +] + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html-clean = ["lxml-html-clean"] +html5 = ["html5lib"] +htmlsoup = ["BeautifulSoup4"] +source = ["Cython (>=3.0.10)"] + [[package]] name = "monotonic" version = "1.6" @@ -833,21 +1030,6 @@ sql-other = ["SQLAlchemy (>=1.4.16)"] test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] xml = ["lxml (>=4.6.3)"] -[[package]] -name = "platformdirs" -version = "4.2.0" -description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -optional = false -python-versions = ">=3.8" -files = [ - {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, - {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, -] - -[package.extras] -docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] -test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"] - [[package]] name = "posthog" version = "3.5.0" @@ -884,18 +1066,18 @@ files = [ [[package]] name = "pydantic" -version = "2.7.0" +version = "2.7.1" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.7.0-py3-none-any.whl", hash = "sha256:9dee74a271705f14f9a1567671d144a851c675b072736f0a7b2608fd9e495352"}, - {file = "pydantic-2.7.0.tar.gz", hash = "sha256:b5ecdd42262ca2462e2624793551e80911a1e989f462910bb81aef974b4bb383"}, + {file = "pydantic-2.7.1-py3-none-any.whl", hash = "sha256:e029badca45266732a9a79898a15ae2e8b14840b1eabbb25844be28f0b33f3d5"}, + {file = "pydantic-2.7.1.tar.gz", hash = "sha256:e9dbb5eada8abe4d9ae5f46b9939aead650cd2b68f249bb3a8139dbe125803cc"}, ] [package.dependencies] annotated-types = ">=0.4.0" -pydantic-core = "2.18.1" +pydantic-core = "2.18.2" typing-extensions = ">=4.6.1" [package.extras] @@ -903,90 +1085,90 @@ email = ["email-validator (>=2.0.0)"] [[package]] name = "pydantic-core" -version = "2.18.1" +version = "2.18.2" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.18.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ee9cf33e7fe14243f5ca6977658eb7d1042caaa66847daacbd2117adb258b226"}, - {file = "pydantic_core-2.18.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b7bbb97d82659ac8b37450c60ff2e9f97e4eb0f8a8a3645a5568b9334b08b50"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df4249b579e75094f7e9bb4bd28231acf55e308bf686b952f43100a5a0be394c"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d0491006a6ad20507aec2be72e7831a42efc93193d2402018007ff827dc62926"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ae80f72bb7a3e397ab37b53a2b49c62cc5496412e71bc4f1277620a7ce3f52b"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:58aca931bef83217fca7a390e0486ae327c4af9c3e941adb75f8772f8eeb03a1"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1be91ad664fc9245404a789d60cba1e91c26b1454ba136d2a1bf0c2ac0c0505a"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:667880321e916a8920ef49f5d50e7983792cf59f3b6079f3c9dac2b88a311d17"}, - {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f7054fdc556f5421f01e39cbb767d5ec5c1139ea98c3e5b350e02e62201740c7"}, - {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:030e4f9516f9947f38179249778709a460a3adb516bf39b5eb9066fcfe43d0e6"}, - {file = "pydantic_core-2.18.1-cp310-none-win32.whl", hash = "sha256:2e91711e36e229978d92642bfc3546333a9127ecebb3f2761372e096395fc649"}, - {file = "pydantic_core-2.18.1-cp310-none-win_amd64.whl", hash = "sha256:9a29726f91c6cb390b3c2338f0df5cd3e216ad7a938762d11c994bb37552edb0"}, - {file = "pydantic_core-2.18.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:9ece8a49696669d483d206b4474c367852c44815fca23ac4e48b72b339807f80"}, - {file = "pydantic_core-2.18.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7a5d83efc109ceddb99abd2c1316298ced2adb4570410defe766851a804fcd5b"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7973c381283783cd1043a8c8f61ea5ce7a3a58b0369f0ee0ee975eaf2f2a1b"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:54c7375c62190a7845091f521add19b0f026bcf6ae674bdb89f296972272e86d"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd63cec4e26e790b70544ae5cc48d11b515b09e05fdd5eff12e3195f54b8a586"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:561cf62c8a3498406495cfc49eee086ed2bb186d08bcc65812b75fda42c38294"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68717c38a68e37af87c4da20e08f3e27d7e4212e99e96c3d875fbf3f4812abfc"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d5728e93d28a3c63ee513d9ffbac9c5989de8c76e049dbcb5bfe4b923a9739d"}, - {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f0f17814c505f07806e22b28856c59ac80cee7dd0fbb152aed273e116378f519"}, - {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d816f44a51ba5175394bc6c7879ca0bd2be560b2c9e9f3411ef3a4cbe644c2e9"}, - {file = "pydantic_core-2.18.1-cp311-none-win32.whl", hash = "sha256:09f03dfc0ef8c22622eaa8608caa4a1e189cfb83ce847045eca34f690895eccb"}, - {file = "pydantic_core-2.18.1-cp311-none-win_amd64.whl", hash = "sha256:27f1009dc292f3b7ca77feb3571c537276b9aad5dd4efb471ac88a8bd09024e9"}, - {file = "pydantic_core-2.18.1-cp311-none-win_arm64.whl", hash = "sha256:48dd883db92e92519201f2b01cafa881e5f7125666141a49ffba8b9facc072b0"}, - {file = "pydantic_core-2.18.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:b6b0e4912030c6f28bcb72b9ebe4989d6dc2eebcd2a9cdc35fefc38052dd4fe8"}, - {file = "pydantic_core-2.18.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f3202a429fe825b699c57892d4371c74cc3456d8d71b7f35d6028c96dfecad31"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3982b0a32d0a88b3907e4b0dc36809fda477f0757c59a505d4e9b455f384b8b"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25595ac311f20e5324d1941909b0d12933f1fd2171075fcff763e90f43e92a0d"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:14fe73881cf8e4cbdaded8ca0aa671635b597e42447fec7060d0868b52d074e6"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca976884ce34070799e4dfc6fbd68cb1d181db1eefe4a3a94798ddfb34b8867f"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:684d840d2c9ec5de9cb397fcb3f36d5ebb6fa0d94734f9886032dd796c1ead06"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:54764c083bbe0264f0f746cefcded6cb08fbbaaf1ad1d78fb8a4c30cff999a90"}, - {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:201713f2f462e5c015b343e86e68bd8a530a4f76609b33d8f0ec65d2b921712a"}, - {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fd1a9edb9dd9d79fbeac1ea1f9a8dd527a6113b18d2e9bcc0d541d308dae639b"}, - {file = "pydantic_core-2.18.1-cp312-none-win32.whl", hash = "sha256:d5e6b7155b8197b329dc787356cfd2684c9d6a6b1a197f6bbf45f5555a98d411"}, - {file = "pydantic_core-2.18.1-cp312-none-win_amd64.whl", hash = "sha256:9376d83d686ec62e8b19c0ac3bf8d28d8a5981d0df290196fb6ef24d8a26f0d6"}, - {file = "pydantic_core-2.18.1-cp312-none-win_arm64.whl", hash = "sha256:c562b49c96906b4029b5685075fe1ebd3b5cc2601dfa0b9e16c2c09d6cbce048"}, - {file = "pydantic_core-2.18.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:3e352f0191d99fe617371096845070dee295444979efb8f27ad941227de6ad09"}, - {file = "pydantic_core-2.18.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0295d52b012cbe0d3059b1dba99159c3be55e632aae1999ab74ae2bd86a33d7"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56823a92075780582d1ffd4489a2e61d56fd3ebb4b40b713d63f96dd92d28144"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd3f79e17b56741b5177bcc36307750d50ea0698df6aa82f69c7db32d968c1c2"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38a5024de321d672a132b1834a66eeb7931959c59964b777e8f32dbe9523f6b1"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ce426ee691319d4767748c8e0895cfc56593d725594e415f274059bcf3cb76"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2adaeea59849ec0939af5c5d476935f2bab4b7f0335b0110f0f069a41024278e"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9b6431559676a1079eac0f52d6d0721fb8e3c5ba43c37bc537c8c83724031feb"}, - {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:85233abb44bc18d16e72dc05bf13848a36f363f83757541f1a97db2f8d58cfd9"}, - {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:641a018af4fe48be57a2b3d7a1f0f5dbca07c1d00951d3d7463f0ac9dac66622"}, - {file = "pydantic_core-2.18.1-cp38-none-win32.whl", hash = "sha256:63d7523cd95d2fde0d28dc42968ac731b5bb1e516cc56b93a50ab293f4daeaad"}, - {file = "pydantic_core-2.18.1-cp38-none-win_amd64.whl", hash = "sha256:907a4d7720abfcb1c81619863efd47c8a85d26a257a2dbebdb87c3b847df0278"}, - {file = "pydantic_core-2.18.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:aad17e462f42ddbef5984d70c40bfc4146c322a2da79715932cd8976317054de"}, - {file = "pydantic_core-2.18.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:94b9769ba435b598b547c762184bcfc4783d0d4c7771b04a3b45775c3589ca44"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80e0e57cc704a52fb1b48f16d5b2c8818da087dbee6f98d9bf19546930dc64b5"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:76b86e24039c35280ceee6dce7e62945eb93a5175d43689ba98360ab31eebc4a"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12a05db5013ec0ca4a32cc6433f53faa2a014ec364031408540ba858c2172bb0"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:250ae39445cb5475e483a36b1061af1bc233de3e9ad0f4f76a71b66231b07f88"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a32204489259786a923e02990249c65b0f17235073149d0033efcebe80095570"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6395a4435fa26519fd96fdccb77e9d00ddae9dd6c742309bd0b5610609ad7fb2"}, - {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2533ad2883f001efa72f3d0e733fb846710c3af6dcdd544fe5bf14fa5fe2d7db"}, - {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b560b72ed4816aee52783c66854d96157fd8175631f01ef58e894cc57c84f0f6"}, - {file = "pydantic_core-2.18.1-cp39-none-win32.whl", hash = "sha256:582cf2cead97c9e382a7f4d3b744cf0ef1a6e815e44d3aa81af3ad98762f5a9b"}, - {file = "pydantic_core-2.18.1-cp39-none-win_amd64.whl", hash = "sha256:ca71d501629d1fa50ea7fa3b08ba884fe10cefc559f5c6c8dfe9036c16e8ae89"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e178e5b66a06ec5bf51668ec0d4ac8cfb2bdcb553b2c207d58148340efd00143"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:72722ce529a76a4637a60be18bd789d8fb871e84472490ed7ddff62d5fed620d"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fe0c1ce5b129455e43f941f7a46f61f3d3861e571f2905d55cdbb8b5c6f5e2c"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4284c621f06a72ce2cb55f74ea3150113d926a6eb78ab38340c08f770eb9b4d"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a0c3e718f4e064efde68092d9d974e39572c14e56726ecfaeebbe6544521f47"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2027493cc44c23b598cfaf200936110433d9caa84e2c6cf487a83999638a96ac"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:76909849d1a6bffa5a07742294f3fa1d357dc917cb1fe7b470afbc3a7579d539"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ee7ccc7fb7e921d767f853b47814c3048c7de536663e82fbc37f5eb0d532224b"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ee2794111c188548a4547eccc73a6a8527fe2af6cf25e1a4ebda2fd01cdd2e60"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:a139fe9f298dc097349fb4f28c8b81cc7a202dbfba66af0e14be5cfca4ef7ce5"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d074b07a10c391fc5bbdcb37b2f16f20fcd9e51e10d01652ab298c0d07908ee2"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c69567ddbac186e8c0aadc1f324a60a564cfe25e43ef2ce81bcc4b8c3abffbae"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:baf1c7b78cddb5af00971ad5294a4583188bda1495b13760d9f03c9483bb6203"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2684a94fdfd1b146ff10689c6e4e815f6a01141781c493b97342cdc5b06f4d5d"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:73c1bc8a86a5c9e8721a088df234265317692d0b5cd9e86e975ce3bc3db62a59"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e60defc3c15defb70bb38dd605ff7e0fae5f6c9c7cbfe0ad7868582cb7e844a6"}, - {file = "pydantic_core-2.18.1.tar.gz", hash = "sha256:de9d3e8717560eb05e28739d1b35e4eac2e458553a52a301e51352a7ffc86a35"}, + {file = "pydantic_core-2.18.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:9e08e867b306f525802df7cd16c44ff5ebbe747ff0ca6cf3fde7f36c05a59a81"}, + {file = "pydantic_core-2.18.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f0a21cbaa69900cbe1a2e7cad2aa74ac3cf21b10c3efb0fa0b80305274c0e8a2"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0680b1f1f11fda801397de52c36ce38ef1c1dc841a0927a94f226dea29c3ae3d"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:95b9d5e72481d3780ba3442eac863eae92ae43a5f3adb5b4d0a1de89d42bb250"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fcf5cd9c4b655ad666ca332b9a081112cd7a58a8b5a6ca7a3104bc950f2038"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b5155ff768083cb1d62f3e143b49a8a3432e6789a3abee8acd005c3c7af1c74"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:553ef617b6836fc7e4df130bb851e32fe357ce36336d897fd6646d6058d980af"}, + {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b89ed9eb7d616ef5714e5590e6cf7f23b02d0d539767d33561e3675d6f9e3857"}, + {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:75f7e9488238e920ab6204399ded280dc4c307d034f3924cd7f90a38b1829563"}, + {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ef26c9e94a8c04a1b2924149a9cb081836913818e55681722d7f29af88fe7b38"}, + {file = "pydantic_core-2.18.2-cp310-none-win32.whl", hash = "sha256:182245ff6b0039e82b6bb585ed55a64d7c81c560715d1bad0cbad6dfa07b4027"}, + {file = "pydantic_core-2.18.2-cp310-none-win_amd64.whl", hash = "sha256:e23ec367a948b6d812301afc1b13f8094ab7b2c280af66ef450efc357d2ae543"}, + {file = "pydantic_core-2.18.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:219da3f096d50a157f33645a1cf31c0ad1fe829a92181dd1311022f986e5fbe3"}, + {file = "pydantic_core-2.18.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:cc1cfd88a64e012b74e94cd00bbe0f9c6df57049c97f02bb07d39e9c852e19a4"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05b7133a6e6aeb8df37d6f413f7705a37ab4031597f64ab56384c94d98fa0e90"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:224c421235f6102e8737032483f43c1a8cfb1d2f45740c44166219599358c2cd"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b14d82cdb934e99dda6d9d60dc84a24379820176cc4a0d123f88df319ae9c150"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2728b01246a3bba6de144f9e3115b532ee44bd6cf39795194fb75491824a1413"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:470b94480bb5ee929f5acba6995251ada5e059a5ef3e0dfc63cca287283ebfa6"}, + {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:997abc4df705d1295a42f95b4eec4950a37ad8ae46d913caeee117b6b198811c"}, + {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75250dbc5290e3f1a0f4618db35e51a165186f9034eff158f3d490b3fed9f8a0"}, + {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4456f2dca97c425231d7315737d45239b2b51a50dc2b6f0c2bb181fce6207664"}, + {file = "pydantic_core-2.18.2-cp311-none-win32.whl", hash = "sha256:269322dcc3d8bdb69f054681edff86276b2ff972447863cf34c8b860f5188e2e"}, + {file = "pydantic_core-2.18.2-cp311-none-win_amd64.whl", hash = "sha256:800d60565aec896f25bc3cfa56d2277d52d5182af08162f7954f938c06dc4ee3"}, + {file = "pydantic_core-2.18.2-cp311-none-win_arm64.whl", hash = "sha256:1404c69d6a676245199767ba4f633cce5f4ad4181f9d0ccb0577e1f66cf4c46d"}, + {file = "pydantic_core-2.18.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:fb2bd7be70c0fe4dfd32c951bc813d9fe6ebcbfdd15a07527796c8204bd36242"}, + {file = "pydantic_core-2.18.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6132dd3bd52838acddca05a72aafb6eab6536aa145e923bb50f45e78b7251043"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7d904828195733c183d20a54230c0df0eb46ec746ea1a666730787353e87182"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c9bd70772c720142be1020eac55f8143a34ec9f82d75a8e7a07852023e46617f"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b8ed04b3582771764538f7ee7001b02e1170223cf9b75dff0bc698fadb00cf3"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e6dac87ddb34aaec85f873d737e9d06a3555a1cc1a8e0c44b7f8d5daeb89d86f"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ca4ae5a27ad7a4ee5170aebce1574b375de390bc01284f87b18d43a3984df72"}, + {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:886eec03591b7cf058467a70a87733b35f44707bd86cf64a615584fd72488b7c"}, + {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ca7b0c1f1c983e064caa85f3792dd2fe3526b3505378874afa84baf662e12241"}, + {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4b4356d3538c3649337df4074e81b85f0616b79731fe22dd11b99499b2ebbdf3"}, + {file = "pydantic_core-2.18.2-cp312-none-win32.whl", hash = "sha256:8b172601454f2d7701121bbec3425dd71efcb787a027edf49724c9cefc14c038"}, + {file = "pydantic_core-2.18.2-cp312-none-win_amd64.whl", hash = "sha256:b1bd7e47b1558ea872bd16c8502c414f9e90dcf12f1395129d7bb42a09a95438"}, + {file = "pydantic_core-2.18.2-cp312-none-win_arm64.whl", hash = "sha256:98758d627ff397e752bc339272c14c98199c613f922d4a384ddc07526c86a2ec"}, + {file = "pydantic_core-2.18.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:9fdad8e35f278b2c3eb77cbdc5c0a49dada440657bf738d6905ce106dc1de439"}, + {file = "pydantic_core-2.18.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1d90c3265ae107f91a4f279f4d6f6f1d4907ac76c6868b27dc7fb33688cfb347"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:390193c770399861d8df9670fb0d1874f330c79caaca4642332df7c682bf6b91"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:82d5d4d78e4448683cb467897fe24e2b74bb7b973a541ea1dcfec1d3cbce39fb"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4774f3184d2ef3e14e8693194f661dea5a4d6ca4e3dc8e39786d33a94865cefd"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d4d938ec0adf5167cb335acb25a4ee69a8107e4984f8fbd2e897021d9e4ca21b"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0e8b1be28239fc64a88a8189d1df7fad8be8c1ae47fcc33e43d4be15f99cc70"}, + {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:868649da93e5a3d5eacc2b5b3b9235c98ccdbfd443832f31e075f54419e1b96b"}, + {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:78363590ef93d5d226ba21a90a03ea89a20738ee5b7da83d771d283fd8a56761"}, + {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:852e966fbd035a6468fc0a3496589b45e2208ec7ca95c26470a54daed82a0788"}, + {file = "pydantic_core-2.18.2-cp38-none-win32.whl", hash = "sha256:6a46e22a707e7ad4484ac9ee9f290f9d501df45954184e23fc29408dfad61350"}, + {file = "pydantic_core-2.18.2-cp38-none-win_amd64.whl", hash = "sha256:d91cb5ea8b11607cc757675051f61b3d93f15eca3cefb3e6c704a5d6e8440f4e"}, + {file = "pydantic_core-2.18.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:ae0a8a797a5e56c053610fa7be147993fe50960fa43609ff2a9552b0e07013e8"}, + {file = "pydantic_core-2.18.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:042473b6280246b1dbf530559246f6842b56119c2926d1e52b631bdc46075f2a"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a388a77e629b9ec814c1b1e6b3b595fe521d2cdc625fcca26fbc2d44c816804"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25add29b8f3b233ae90ccef2d902d0ae0432eb0d45370fe315d1a5cf231004b"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f459a5ce8434614dfd39bbebf1041952ae01da6bed9855008cb33b875cb024c0"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eff2de745698eb46eeb51193a9f41d67d834d50e424aef27df2fcdee1b153845"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8309f67285bdfe65c372ea3722b7a5642680f3dba538566340a9d36e920b5f0"}, + {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f93a8a2e3938ff656a7c1bc57193b1319960ac015b6e87d76c76bf14fe0244b4"}, + {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:22057013c8c1e272eb8d0eebc796701167d8377441ec894a8fed1af64a0bf399"}, + {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cfeecd1ac6cc1fb2692c3d5110781c965aabd4ec5d32799773ca7b1456ac636b"}, + {file = "pydantic_core-2.18.2-cp39-none-win32.whl", hash = "sha256:0d69b4c2f6bb3e130dba60d34c0845ba31b69babdd3f78f7c0c8fae5021a253e"}, + {file = "pydantic_core-2.18.2-cp39-none-win_amd64.whl", hash = "sha256:d9319e499827271b09b4e411905b24a426b8fb69464dfa1696258f53a3334641"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a1874c6dd4113308bd0eb568418e6114b252afe44319ead2b4081e9b9521fe75"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:ccdd111c03bfd3666bd2472b674c6899550e09e9f298954cfc896ab92b5b0e6d"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e18609ceaa6eed63753037fc06ebb16041d17d28199ae5aba0052c51449650a9"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e5c584d357c4e2baf0ff7baf44f4994be121e16a2c88918a5817331fc7599d7"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43f0f463cf89ace478de71a318b1b4f05ebc456a9b9300d027b4b57c1a2064fb"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e1b395e58b10b73b07b7cf740d728dd4ff9365ac46c18751bf8b3d8cca8f625a"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0098300eebb1c837271d3d1a2cd2911e7c11b396eac9661655ee524a7f10587b"}, + {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:36789b70d613fbac0a25bb07ab3d9dba4d2e38af609c020cf4d888d165ee0bf3"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3f9a801e7c8f1ef8718da265bba008fa121243dfe37c1cea17840b0944dfd72c"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:3a6515ebc6e69d85502b4951d89131ca4e036078ea35533bb76327f8424531ce"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20aca1e2298c56ececfd8ed159ae4dde2df0781988c97ef77d5c16ff4bd5b400"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:223ee893d77a310a0391dca6df00f70bbc2f36a71a895cecd9a0e762dc37b349"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2334ce8c673ee93a1d6a65bd90327588387ba073c17e61bf19b4fd97d688d63c"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:cbca948f2d14b09d20268cda7b0367723d79063f26c4ffc523af9042cad95592"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:b3ef08e20ec49e02d5c6717a91bb5af9b20f1805583cb0adfe9ba2c6b505b5ae"}, + {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6fdc8627910eed0c01aed6a390a252fe3ea6d472ee70fdde56273f198938374"}, + {file = "pydantic_core-2.18.2.tar.gz", hash = "sha256:2e29d20810dfc3043ee13ac7d9e25105799817683348823f305ab3f349b9386e"}, ] [package.dependencies] @@ -1087,36 +1269,6 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] -[[package]] -name = "requests-cache" -version = "1.2.0" -description = "A persistent cache for python requests" -optional = false -python-versions = ">=3.8" -files = [ - {file = "requests_cache-1.2.0-py3-none-any.whl", hash = "sha256:490324301bf0cb924ff4e6324bd2613453e7e1f847353928b08adb0fdfb7f722"}, - {file = "requests_cache-1.2.0.tar.gz", hash = "sha256:db1c709ca343cc1cd5b6c8b1a5387298eceed02306a6040760db538c885e3838"}, -] - -[package.dependencies] -attrs = ">=21.2" -cattrs = ">=22.2" -platformdirs = ">=2.5" -requests = ">=2.22" -url-normalize = ">=1.4" -urllib3 = ">=1.25.5" - -[package.extras] -all = ["boto3 (>=1.15)", "botocore (>=1.18)", "itsdangerous (>=2.0)", "pymongo (>=3)", "pyyaml (>=6.0.1)", "redis (>=3)", "ujson (>=5.4)"] -bson = ["bson (>=0.5)"] -docs = ["furo (>=2023.3,<2024.0)", "linkify-it-py (>=2.0,<3.0)", "myst-parser (>=1.0,<2.0)", "sphinx (>=5.0.2,<6.0.0)", "sphinx-autodoc-typehints (>=1.19)", "sphinx-automodapi (>=0.14)", "sphinx-copybutton (>=0.5)", "sphinx-design (>=0.2)", "sphinx-notfound-page (>=0.8)", "sphinxcontrib-apidoc (>=0.3)", "sphinxext-opengraph (>=0.9)"] -dynamodb = ["boto3 (>=1.15)", "botocore (>=1.18)"] -json = ["ujson (>=5.4)"] -mongodb = ["pymongo (>=3)"] -redis = ["redis (>=3)"] -security = ["itsdangerous (>=2.0)"] -yaml = ["pyyaml (>=6.0.1)"] - [[package]] name = "rsa" version = "4.9" @@ -1504,4 +1656,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "5af028ef4a8d49e475156eb7b0fe7abb71f2808efb6d21c6c867f37fc248d5eb" +content-hash = "5243653b144ae25375a442e85632a338c070bc6a92f33eea0a888a8d81359d5c" diff --git a/openbb_platform/providers/sec/pyproject.toml b/openbb_platform/providers/sec/pyproject.toml index 545475ea31f0..e3ad4ff62cf9 100644 --- a/openbb_platform/providers/sec/pyproject.toml +++ b/openbb_platform/providers/sec/pyproject.toml @@ -9,7 +9,8 @@ packages = [{ include = "openbb_sec" }] [tool.poetry.dependencies] python = ">=3.8,<3.12" openbb-core = "^1.1.6" -requests-cache = "^1.1.0" +aiohttp-client-cache = "^0.10.0" +aiosqlite = "^0.19.0" xmltodict = "^0.13.0" lxml = "^5.2.1" From 0b9b12d19846595f4616af990733e70b4b5fc94d Mon Sep 17 00:00:00 2001 From: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Date: Thu, 9 May 2024 18:50:24 +0100 Subject: [PATCH 12/44] [Feature] - Redefined standard fields & multiple_items_allowed property changes (#6377) * feat: add field annotation and replace multiple items by dict * comments & details * fix: fix api & update docs website * ^ * remove empty info * descriptions * descriptions * fix reference.json * remove debug code * remove debug code * docstring * docstring * fix: standard fields propagate to providers * comment * better * better * better * better * better * mypy fixes * mypy fixes * reference * cli fix: if the argument is required (aka standard) it means we don't want to touch it, unless choices need to be added * cli fix: touch the help message (with the available providers) only if it's not on the signature (aka standard field) --------- Co-authored-by: hjoaquim Co-authored-by: hjoaquim --- .../argparse_translator.py | 26 +- .../openbb_core/app/provider_interface.py | 29 +- .../openbb_core/app/static/package_builder.py | 32 +- .../openbb_core/app/static/utils/filters.py | 54 ++- .../provider/abstract/query_params.py | 16 +- .../core/openbb_core/provider/registry_map.py | 81 ++-- openbb_platform/openbb/assets/reference.json | 400 +++++++++++++++++- .../openbb/package/crypto_price.py | 10 +- openbb_platform/openbb/package/currency.py | 7 +- .../openbb/package/currency_price.py | 10 +- openbb_platform/openbb/package/economy.py | 14 +- openbb_platform/openbb/package/equity.py | 4 +- .../openbb/package/equity_estimates.py | 32 +- .../openbb/package/equity_fundamental.py | 16 +- .../openbb/package/equity_ownership.py | 2 +- .../openbb/package/equity_price.py | 16 +- openbb_platform/openbb/package/etf.py | 27 +- .../openbb/package/fixedincome_corporate.py | 4 +- openbb_platform/openbb/package/index.py | 10 +- openbb_platform/openbb/package/news.py | 14 +- .../models/equity_historical.py | 2 +- .../models/historical_eps.py | 2 +- .../openbb_benzinga/models/analyst_search.py | 10 +- .../openbb_benzinga/models/company_news.py | 9 +- .../openbb_benzinga/models/price_target.py | 2 +- .../openbb_cboe/models/equity_historical.py | 6 +- .../cboe/openbb_cboe/models/equity_quote.py | 2 +- .../openbb_cboe/models/index_historical.py | 8 +- .../openbb_econdb/models/country_profile.py | 2 +- .../models/economic_indicators.py | 4 +- .../openbb_finviz/models/equity_profile.py | 2 +- .../openbb_finviz/models/key_metrics.py | 2 +- .../openbb_finviz/models/price_performance.py | 2 +- .../openbb_finviz/models/price_target.py | 8 +- .../openbb_fmp/models/analyst_estimates.py | 4 +- .../fmp/openbb_fmp/models/company_news.py | 2 +- .../openbb_fmp/models/crypto_historical.py | 2 +- .../openbb_fmp/models/currency_historical.py | 2 +- .../openbb_fmp/models/currency_snapshots.py | 2 +- .../openbb_fmp/models/equity_historical.py | 2 +- .../fmp/openbb_fmp/models/equity_profile.py | 4 +- .../fmp/openbb_fmp/models/equity_quote.py | 2 +- .../models/equity_valuation_multiples.py | 2 +- .../fmp/openbb_fmp/models/etf_countries.py | 2 +- .../openbb_fmp/models/etf_equity_exposure.py | 4 +- .../fmp/openbb_fmp/models/etf_info.py | 2 +- .../models/executive_compensation.py | 4 +- .../models/forward_eps_estimates.py | 2 +- .../fmp/openbb_fmp/models/index_historical.py | 2 +- .../fmp/openbb_fmp/models/key_metrics.py | 2 +- .../openbb_fmp/models/price_performance.py | 2 +- .../fmp/openbb_fmp/models/price_target.py | 4 +- .../models/price_target_consensus.py | 2 +- .../providers/fred/openbb_fred/models/cpi.py | 7 +- .../fred/openbb_fred/models/series.py | 2 +- .../providers/fred/openbb_fred/models/spot.py | 4 +- .../openbb_intrinio/models/company_news.py | 8 +- .../openbb_intrinio/models/equity_info.py | 2 +- .../openbb_intrinio/models/equity_quote.py | 2 +- .../openbb_intrinio/models/etf_info.py | 2 +- .../models/etf_price_performance.py | 2 +- .../models/forward_eps_estimates.py | 2 +- .../models/forward_sales_estimates.py | 2 +- .../models/historical_attributes.py | 4 +- .../models/index_historical.py | 2 +- .../openbb_intrinio/models/key_metrics.py | 2 +- .../models/latest_attributes.py | 4 +- .../models/price_target_consensus.py | 2 +- .../openbb_nasdaq/models/economic_calendar.py | 2 +- .../models/historical_dividends.py | 2 +- .../openbb_polygon/models/company_news.py | 2 +- .../models/crypto_historical.py | 2 +- .../models/currency_historical.py | 2 +- .../models/currency_snapshots.py | 10 +- .../models/equity_historical.py | 2 +- .../openbb_polygon/models/index_historical.py | 2 +- .../openbb_tiingo/models/company_news.py | 2 +- .../openbb_tiingo/models/crypto_historical.py | 4 +- .../models/currency_historical.py | 4 +- .../openbb_tiingo/models/equity_historical.py | 4 +- .../tmx/openbb_tmx/models/company_news.py | 2 +- .../openbb_tmx/models/equity_historical.py | 2 +- .../tmx/openbb_tmx/models/equity_profile.py | 2 +- .../tmx/openbb_tmx/models/equity_quote.py | 2 +- .../tmx/openbb_tmx/models/etf_countries.py | 2 +- .../tmx/openbb_tmx/models/etf_info.py | 2 +- .../models/price_target_consensus.py | 2 +- .../models/equity_historical.py | 2 +- .../openbb_tradier/models/equity_quote.py | 2 +- .../models/economic_calendar.py | 2 +- .../openbb_yfinance/models/company_news.py | 2 +- .../models/crypto_historical.py | 2 +- .../models/currency_historical.py | 2 +- .../models/equity_historical.py | 2 +- .../openbb_yfinance/models/equity_profile.py | 2 +- .../openbb_yfinance/models/equity_quote.py | 2 +- .../openbb_yfinance/models/etf_info.py | 2 +- .../models/futures_historical.py | 2 +- .../models/index_historical.py | 2 +- .../openbb_yfinance/models/key_metrics.py | 2 +- .../openbb_yfinance/models/market_indices.py | 6 +- .../models/price_target_consensus.py | 2 +- .../models/share_statistics.py | 2 +- website/generate_platform_v4_markdown.py | 44 +- 104 files changed, 760 insertions(+), 332 deletions(-) diff --git a/cli/openbb_cli/argparse_translator/argparse_translator.py b/cli/openbb_cli/argparse_translator/argparse_translator.py index bf5917207d50..001e7afce04d 100644 --- a/cli/openbb_cli/argparse_translator/argparse_translator.py +++ b/cli/openbb_cli/argparse_translator/argparse_translator.py @@ -225,9 +225,9 @@ def __init__( def _handle_argument_in_groups(self, argument, group): """Handle the argument and add it to the parser.""" - def _in_optional_arguments(arg): + def _in_group(arg, group_title): for action_group in self._parser._action_groups: - if action_group.title == "optional arguments": + if action_group.title == group_title: for action in action_group._group_actions: opts = action.option_strings if (opts and opts[0] == arg) or action.dest == arg: @@ -286,16 +286,26 @@ def _update_providers( # extend choices choices = tuple(set(_get_arg_choices(argument.name) + model_choices)) + # check if the argument is in the required arguments + if _in_group(argument.name, group_title="required arguments"): + for action in self._required._group_actions: + if action.dest == argument.name and choices: + # update choices + action.choices = choices + return + # check if the argument is in the optional arguments - if _in_optional_arguments(argument.name): + if _in_group(argument.name, group_title="optional arguments"): for action in self._parser._actions: if action.dest == argument.name: # update choices - action.choices = choices - # update help - action.help = _update_providers( - action.help or "", [group.title] - ) + if choices: + action.choices = choices + if argument.name not in self.signature.parameters: + # update help + action.help = _update_providers( + action.help or "", [group.title] + ) return # if the argument is in use, remove it from all groups diff --git a/openbb_platform/core/openbb_core/app/provider_interface.py b/openbb_platform/core/openbb_core/app/provider_interface.py index 0932704cb960..11bb21d5f776 100644 --- a/openbb_platform/core/openbb_core/app/provider_interface.py +++ b/openbb_platform/core/openbb_core/app/provider_interface.py @@ -253,17 +253,24 @@ def _create_field( annotation = field.annotation additional_description = "" - if (extra := field.json_schema_extra) and ( - multiple := extra.get("multiple_items_allowed") # type: ignore - ): - if provider_name: - additional_description += " Multiple comma separated items allowed." - else: - additional_description += ( - " Multiple comma separated items allowed for provider(s): " - + ", ".join(multiple) # type: ignore[arg-type] - + "." - ) + if extra := field.json_schema_extra: + providers = [] + for p, v in extra.items(): # type: ignore[union-attr] + if isinstance(v, dict) and v.get("multiple_items_allowed"): + providers.append(p) + elif isinstance(v, list) and "multiple_items_allowed" in v: + # For backwards compatibility, before this was a list + providers.append(p) + + if providers: + if provider_name: + additional_description += " Multiple comma separated items allowed." + else: + additional_description += ( + " Multiple comma separated items allowed for provider(s): " + + ", ".join(providers) # type: ignore[arg-type] + + "." + ) provider_field = ( f"(provider: {provider_name})" if provider_name != "openbb" else "" diff --git a/openbb_platform/core/openbb_core/app/static/package_builder.py b/openbb_platform/core/openbb_core/app/static/package_builder.py index 8a2a86a66190..5db17483a191 100644 --- a/openbb_platform/core/openbb_core/app/static/package_builder.py +++ b/openbb_platform/core/openbb_core/app/static/package_builder.py @@ -864,7 +864,15 @@ def get_expanded_type( original_type: Optional[type] = None, ) -> object: """Expand the original field type.""" - if extra and "multiple_items_allowed" in extra: + if extra and any( + ( + v.get("multiple_items_allowed") + if isinstance(v, dict) + # For backwards compatibility, before this was a list + else "multiple_items_allowed" in v + ) + for v in extra.values() + ): if original_type is None: raise ValueError( "multiple_items_allowed requires the original type to be specified." @@ -1450,6 +1458,10 @@ def _get_provider_field_params( expanded_types = MethodDefinition.TYPE_EXPANSION model_map = cls.pi.map[model] + # TODO: Change this to read the package data instead of pi.map directly + # We change some items (types, descriptions), so the reference.json + # does not reflect entirely the package code. + for field, field_info in model_map[provider][params_type]["fields"].items(): # Determine the field type, expanding it if necessary and if params_type is "Parameters" field_type = field_info.annotation @@ -1470,12 +1482,18 @@ def _get_provider_field_params( ) # fmt: skip # Add information for the providers supporting multiple symbols - if params_type == "QueryParams" and field_info.json_schema_extra: - multiple_items_list = field_info.json_schema_extra.get( - "multiple_items_allowed", None - ) - if multiple_items_list: - multiple_items = ", ".join(multiple_items_list) + if params_type == "QueryParams" and (extra := field_info.json_schema_extra): + + providers = [] + for p, v in extra.items(): # type: ignore[union-attr] + if isinstance(v, dict) and v.get("multiple_items_allowed"): + providers.append(p) + elif isinstance(v, list) and "multiple_items_allowed" in v: + # For backwards compatibility, before this was a list + providers.append(p) + + if providers: + multiple_items = ", ".join(providers) cleaned_description += ( f" Multiple items allowed for provider(s): {multiple_items}." ) diff --git a/openbb_platform/core/openbb_core/app/static/utils/filters.py b/openbb_platform/core/openbb_core/app/static/utils/filters.py index b2262a1e8c88..3f2c02708428 100644 --- a/openbb_platform/core/openbb_core/app/static/utils/filters.py +++ b/openbb_platform/core/openbb_core/app/static/utils/filters.py @@ -1,13 +1,13 @@ """OpenBB filters.""" -from typing import Dict, List, Optional +from typing import Any, Dict, Optional from openbb_core.app.utils import check_single_item, convert_to_basemodel def filter_inputs( data_processing: bool = False, - info: Optional[Dict[str, Dict[str, List[str]]]] = None, + info: Optional[Dict[str, Dict[str, Any]]] = None, **kwargs, ) -> dict: """Filter command inputs.""" @@ -16,32 +16,42 @@ def filter_inputs( kwargs[key] = convert_to_basemodel(value) if info: - PROPERTY = "multiple_items_allowed" - # Here we check if list items are passed and multiple items allowed for # the given provider/input combination. In that case we transform the list # into a comma-separated string - for field, props in info.items(): - if PROPERTY in props and ( - provider := kwargs.get("provider_choices", {}).get("provider") - ): - for p in ("standard_params", "extra_params"): - if field in kwargs.get(p, {}): - current = kwargs[p][field] - new = ( - ",".join(map(str, current)) - if isinstance(current, list) - else current + provider = kwargs.get("provider_choices", {}).get("provider") + for field, properties in info.items(): + + for p in ("standard_params", "extra_params"): + if field in kwargs.get(p, {}): + current = kwargs[p][field] + new = ( + ",".join(map(str, current)) + if isinstance(current, list) + else current + ) + + provider_properties = properties.get(provider, {}) + if isinstance(provider_properties, dict): + multiple_items_allowed = provider_properties.get( + "multiple_items_allowed" + ) + elif isinstance(provider_properties, list): + # For backwards compatibility, before this was a list + multiple_items_allowed = ( + "multiple_items_allowed" in provider_properties ) + else: + multiple_items_allowed = True - if provider and provider not in props[PROPERTY]: - check_single_item( - new, - f"{field} -> multiple items not allowed for '{provider}'", - ) + if not multiple_items_allowed: + check_single_item( + new, + f"{field} -> multiple items not allowed for '{provider}'", + ) - kwargs[p][field] = new - break + kwargs[p][field] = new + break else: provider = kwargs.get("provider_choices", {}).get("provider") for param_category in ("standard_params", "extra_params"): diff --git a/openbb_platform/core/openbb_core/provider/abstract/query_params.py b/openbb_platform/core/openbb_core/provider/abstract/query_params.py index acca98737678..be10b82f2f37 100644 --- a/openbb_platform/core/openbb_core/provider/abstract/query_params.py +++ b/openbb_platform/core/openbb_core/provider/abstract/query_params.py @@ -19,22 +19,24 @@ class QueryParams(BaseModel): Merge different json schema extra, identified by provider. Example: FMP fetcher: - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} Intrinio fetcher - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": False}} - Creates a new field in the `symbol` schema with: + Creates new fields in the `symbol` schema: { - ..., - "multiple_items_allowed": ["fmp", "intrinio"], + "type": "string", + "description": "Symbol to get data for.", + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": False} ..., } Multiple fields can be tagged with the same or multiple properties. Example: __json_schema_extra__ = { - "": ["some_prop", "another_prop"], - "": ["yet_another_prop"] + "": {"foo": 123, "bar": 456}, + "": {"foo": 789} } Attributes: diff --git a/openbb_platform/core/openbb_core/provider/registry_map.py b/openbb_platform/core/openbb_core/provider/registry_map.py index 05dff9ef4f6c..a3a7fcc32d43 100644 --- a/openbb_platform/core/openbb_core/provider/registry_map.py +++ b/openbb_platform/core/openbb_core/provider/registry_map.py @@ -104,11 +104,11 @@ def _get_maps(self, registry: Registry) -> Tuple[MapType, Dict[str, Dict]]: } ) - self._merge_json_schema_extra(p, fetcher, standard_extra[model_name]) + self._update_json_schema_extra(p, fetcher, standard_extra[model_name]) return standard_extra, original_models - def _merge_json_schema_extra( + def _update_json_schema_extra( self, provider: str, fetcher: Fetcher, @@ -116,26 +116,22 @@ def _merge_json_schema_extra( ): """Merge json schema extra for different providers.""" model: BaseModel = RegistryMap._get_model(fetcher, "query_params") - std_fields = model_map["openbb"]["QueryParams"]["fields"] + standard_fields = model_map["openbb"]["QueryParams"]["fields"] extra_fields = model_map[provider]["QueryParams"]["fields"] - for f, props in getattr(model, "__json_schema_extra__", {}).items(): - for p in props: - if f in std_fields: - model_field = std_fields[f] - elif f in extra_fields: - model_field = extra_fields[f] + + for field, properties in getattr(model, "__json_schema_extra__", {}).items(): + if properties: + if field in standard_fields: + model_field = standard_fields[field] + elif field in extra_fields: + model_field = extra_fields[field] else: continue if model_field.json_schema_extra is None: model_field.json_schema_extra = {} - if p not in model_field.json_schema_extra: - model_field.json_schema_extra[p] = [] - - providers = model_field.json_schema_extra[p] - if provider not in providers: - providers.append(provider) + model_field.json_schema_extra[provider] = properties def _get_models(self, map_: MapType) -> List[str]: """Get available models.""" @@ -152,33 +148,38 @@ def _extract_info( ) -> tuple: """Extract info (fields and docstring) from fetcher query params or data.""" model: BaseModel = RegistryMap._get_model(fetcher, type_) - all_fields = {} standard_info: Dict[str, Any] = {"fields": {}, "docstring": None} - found_top_level = False + extra_info: Dict[str, Any] = {"fields": {}, "docstring": model.__doc__} + found_first_standard = False - for c in RegistryMap._class_hierarchy(model): - if c.__name__ in SKIP: + family = RegistryMap._get_class_family(model) + for i, child in enumerate(family): + if child.__name__ in SKIP: continue - if (Path(getfile(c)).parent == STANDARD_MODELS_FOLDER) or found_top_level: - if not found_top_level: - # We might update the standard_info more than once to account for - # nested standard models, but we only want to update the docstring - # once with the __doc__ of the top-level standard model. - standard_info["docstring"] = c.__doc__ - found_top_level = True - standard_info["fields"].update(c.model_fields) - else: - all_fields.update(c.model_fields) - extra_info: Dict[str, Any] = { - "fields": {}, - "docstring": model.__doc__, - } - - # We ignore fields that are already in the standard model - for name, field in all_fields.items(): - if name not in standard_info["fields"]: - extra_info["fields"][name] = field + parent = family[i + 1] if family[i + 1] not in SKIP else BaseModel + + fields = { + name: field + for name, field in child.model_fields.items() + # This ensures fields inherited by c are discarded. + # We need to compare child and parent __annotations__ + # because this attribute is redirected to the parent class + # when the child simply inherits the parent and does not + # define any attributes. + # TLDR: Only fields defined in c are included + if name in child.__annotations__ + and child.__annotations__ is not parent.__annotations__ + } + + if Path(getfile(child)).parent == STANDARD_MODELS_FOLDER: + if not found_first_standard: + # If standard uses inheritance we just use the first docstring + standard_info["docstring"] = child.__doc__ + found_first_standard = True + standard_info["fields"].update(fields) + else: + extra_info["fields"].update(fields) return standard_info, extra_info @@ -204,6 +205,6 @@ def _validate(model: Any, type_: Literal["query_params", "data"]) -> None: ) @staticmethod - def _class_hierarchy(class_) -> tuple: - """Return the class hierarchy starting with the class itself until `object`.""" + def _get_class_family(class_) -> tuple: + """Return the class family starting with the class itself until `object`.""" return getattr(class_, "__mro__", ()) diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 495c4e0b5ca5..5ff26093f056 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -645,6 +645,13 @@ } ], "fmp": [ + { + "name": "symbol", + "type": "str", + "description": "Symbol of the currency pair.", + "default": "", + "optional": false + }, { "name": "currency", "type": "str", @@ -2882,6 +2889,13 @@ } ], "fred": [ + { + "name": "limit", + "type": "int", + "description": "The number of data entries to return.", + "default": 100000, + "optional": true + }, { "name": "frequency", "type": "Literal['a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']", @@ -3585,6 +3599,13 @@ } ], "fred": [ + { + "name": "symbol", + "type": "str", + "description": "For this function, it is the series_group ID or series ID. If the symbol provided is for a series_group, set the `is_series_group` parameter to True. Not all series that are in FRED have geographical data.", + "default": "", + "optional": false + }, { "name": "is_series_group", "type": "bool", @@ -5156,6 +5177,13 @@ } ], "benzinga": [ + { + "name": "action", + "type": "Literal['Downgrades', 'Maintains', 'Reinstates', 'Reiterates', 'Upgrades', 'Assumes', 'Initiates Coverage On', 'Terminates Coverage On', 'Removes', 'Suspends', 'Firm Dissolved']", + "description": "Description of the change in rating from firm's last rating.Note that all of these terms are precisely defined.", + "default": null, + "optional": true + }, { "name": "action_change", "type": "Literal['Announces', 'Maintains', 'Lowers', 'Raises', 'Removes', 'Adjusts']", @@ -8200,8 +8228,23 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ], "intrinio": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "fiscal_year", "type": "int", @@ -8211,6 +8254,13 @@ } ], "polygon": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "filing_date", "type": "date", @@ -8303,7 +8353,15 @@ "optional": true } ], - "yfinance": [] + "yfinance": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -9952,8 +10010,23 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ], "intrinio": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "fiscal_year", "type": "int", @@ -9963,6 +10036,13 @@ } ], "polygon": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "filing_date", "type": "date", @@ -10055,7 +10135,15 @@ "optional": true } ], - "yfinance": [] + "yfinance": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -10111,6 +10199,13 @@ } ], "fmp": [ + { + "name": "fiscal_year", + "type": "int", + "description": "The fiscal year of the fiscal period.", + "default": null, + "optional": true + }, { "name": "filing_date", "type": "date", @@ -10817,6 +10912,20 @@ } ], "intrinio": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + }, + { + "name": "statement_type", + "type": "Literal['balance', 'income', 'cash']", + "description": "Cash flow statements are reported as YTD, Q4 is the same as FY.", + "default": "income", + "optional": true + }, { "name": "fiscal_year", "type": "int", @@ -12022,8 +12131,23 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ], "intrinio": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "fiscal_year", "type": "int", @@ -12033,6 +12157,13 @@ } ], "polygon": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm']", + "description": "None", + "default": "annual", + "optional": true + }, { "name": "filing_date", "type": "date", @@ -12125,7 +12256,15 @@ "optional": true } ], - "yfinance": [] + "yfinance": [ + { + "name": "period", + "type": "Literal['annual', 'quarter']", + "description": "None", + "default": "annual", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -15225,8 +15364,23 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm']", + "description": "Time period of the data to return.", + "default": "annual", + "optional": true + } + ], "intrinio": [ + { + "name": "period", + "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", + "description": "Time period of the data to return.", + "default": "annual", + "optional": true + }, { "name": "fiscal_year", "type": "int", @@ -15972,6 +16126,20 @@ } ], "sec": [ + { + "name": "symbol", + "type": "str", + "description": "Symbol to get data for.", + "default": null, + "optional": true + }, + { + "name": "form_type", + "type": "Literal['1', '1-A', '1-A POS', '1-A-W', '1-E', '1-E AD', '1-K', '1-SA', '1-U', '1-Z', '1-Z-W', '10-12B', '10-12G', '10-D', '10-K', '10-KT', '10-Q', '10-QT', '11-K', '11-KT', '13F-HR', '13F-NT', '13FCONP', '144', '15-12B', '15-12G', '15-15D', '15F-12B', '15F-12G', '15F-15D', '18-12B', '18-K', '19B-4E', '2-A', '2-AF', '2-E', '20-F', '20FR12B', '20FR12G', '24F-2NT', '25', '25-NSE', '253G1', '253G2', '253G3', '253G4', '3', '305B2', '34-12H', '4', '40-17F1', '40-17F2', '40-17G', '40-17GCS', '40-202A', '40-203A', '40-206A', '40-24B2', '40-33', '40-6B', '40-8B25', '40-8F-2', '40-APP', '40-F', '40-OIP', '40FR12B', '40FR12G', '424A', '424B1', '424B2', '424B3', '424B4', '424B5', '424B7', '424B8', '424H', '425', '485APOS', '485BPOS', '485BXT', '486APOS', '486BPOS', '486BXT', '487', '497', '497AD', '497H2', '497J', '497K', '497VPI', '497VPU', '5', '6-K', '6B NTC', '6B ORDR', '8-A12B', '8-A12G', '8-K', '8-K12B', '8-K12G3', '8-K15D5', '8-M', '8F-2 NTC', '8F-2 ORDR', '9-M', 'ABS-15G', 'ABS-EE', 'ADN-MTL', 'ADV-E', 'ADV-H-C', 'ADV-H-T', 'ADV-NR', 'ANNLRPT', 'APP NTC', 'APP ORDR', 'APP WD', 'APP WDG', 'ARS', 'ATS-N', 'ATS-N-C', 'ATS-N/UA', 'AW', 'AW WD', 'C', 'C-AR', 'C-AR-W', 'C-TR', 'C-TR-W', 'C-U', 'C-U-W', 'C-W', 'CB', 'CERT', 'CERTARCA', 'CERTBATS', 'CERTCBO', 'CERTNAS', 'CERTNYS', 'CERTPAC', 'CFPORTAL', 'CFPORTAL-W', 'CORRESP', 'CT ORDER', 'D', 'DEF 14A', 'DEF 14C', 'DEFA14A', 'DEFA14C', 'DEFC14A', 'DEFC14C', 'DEFM14A', 'DEFM14C', 'DEFN14A', 'DEFR14A', 'DEFR14C', 'DEL AM', 'DFAN14A', 'DFRN14A', 'DOS', 'DOSLTR', 'DRS', 'DRSLTR', 'DSTRBRPT', 'EFFECT', 'F-1', 'F-10', 'F-10EF', 'F-10POS', 'F-1MEF', 'F-3', 'F-3ASR', 'F-3D', 'F-3DPOS', 'F-3MEF', 'F-4', 'F-4 POS', 'F-4MEF', 'F-6', 'F-6 POS', 'F-6EF', 'F-7', 'F-7 POS', 'F-8', 'F-8 POS', 'F-80', 'F-80POS', 'F-9', 'F-9 POS', 'F-N', 'F-X', 'FOCUSN', 'FWP', 'G-405', 'G-405N', 'G-FIN', 'G-FINW', 'IRANNOTICE', 'MA', 'MA-A', 'MA-I', 'MA-W', 'MSD', 'MSDCO', 'MSDW', 'N-1', 'N-14', 'N-14 8C', 'N-14MEF', 'N-18F1', 'N-1A', 'N-2', 'N-2 POSASR', 'N-23C-2', 'N-23C3A', 'N-23C3B', 'N-23C3C', 'N-2ASR', 'N-2MEF', 'N-30B-2', 'N-30D', 'N-4', 'N-5', 'N-54A', 'N-54C', 'N-6', 'N-6F', 'N-8A', 'N-8B-2', 'N-8F', 'N-8F NTC', 'N-8F ORDR', 'N-CEN', 'N-CR', 'N-CSR', 'N-CSRS', 'N-MFP', 'N-MFP1', 'N-MFP2', 'N-PX', 'N-Q', 'N-VP', 'N-VPFS', 'NO ACT', 'NPORT-EX', 'NPORT-NP', 'NPORT-P', 'NRSRO-CE', 'NRSRO-UPD', 'NSAR-A', 'NSAR-AT', 'NSAR-B', 'NSAR-BT', 'NSAR-U', 'NT 10-D', 'NT 10-K', 'NT 10-Q', 'NT 11-K', 'NT 20-F', 'NT N-CEN', 'NT N-MFP', 'NT N-MFP1', 'NT N-MFP2', 'NT NPORT-EX', 'NT NPORT-P', 'NT-NCEN', 'NT-NCSR', 'NT-NSAR', 'NTFNCEN', 'NTFNCSR', 'NTFNSAR', 'NTN 10D', 'NTN 10K', 'NTN 10Q', 'NTN 20F', 'OIP NTC', 'OIP ORDR', 'POS 8C', 'POS AM', 'POS AMI', 'POS EX', 'POS462B', 'POS462C', 'POSASR', 'PRE 14A', 'PRE 14C', 'PREC14A', 'PREC14C', 'PREM14A', 'PREM14C', 'PREN14A', 'PRER14A', 'PRER14C', 'PRRN14A', 'PX14A6G', 'PX14A6N', 'QRTLYRPT', 'QUALIF', 'REG-NR', 'REVOKED', 'RW', 'RW WD', 'S-1', 'S-11', 'S-11MEF', 'S-1MEF', 'S-20', 'S-3', 'S-3ASR', 'S-3D', 'S-3DPOS', 'S-3MEF', 'S-4', 'S-4 POS', 'S-4EF', 'S-4MEF', 'S-6', 'S-8', 'S-8 POS', 'S-B', 'S-BMEF', 'SBSE', 'SBSE-A', 'SBSE-BD', 'SBSE-C', 'SBSE-W', 'SC 13D', 'SC 13E1', 'SC 13E3', 'SC 13G', 'SC 14D9', 'SC 14F1', 'SC 14N', 'SC TO-C', 'SC TO-I', 'SC TO-T', 'SC13E4F', 'SC14D1F', 'SC14D9C', 'SC14D9F', 'SD', 'SDR', 'SE', 'SEC ACTION', 'SEC STAFF ACTION', 'SEC STAFF LETTER', 'SF-1', 'SF-3', 'SL', 'SP 15D2', 'STOP ORDER', 'SUPPL', 'T-3', 'TA-1', 'TA-2', 'TA-W', 'TACO', 'TH', 'TTW', 'UNDER', 'UPLOAD', 'WDL-REQ', 'X-17A-5']", + "description": "Type of the SEC filing form.", + "default": null, + "optional": true + }, { "name": "cik", "type": "Union[int, str]", @@ -17377,6 +17545,13 @@ } ], "intrinio": [ + { + "name": "filing_url", + "type": "str", + "description": "URL of the filing.", + "default": null, + "optional": true + }, { "name": "company_name", "type": "str", @@ -17860,6 +18035,13 @@ ], "fmp": [], "intrinio": [ + { + "name": "symbol", + "type": "str", + "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", + "default": "", + "optional": false + }, { "name": "source", "type": "Literal['iex', 'bats', 'bats_delayed', 'utp_delayed', 'cta_a_delayed', 'cta_b_delayed', 'intrinio_mx', 'intrinio_mx_plus', 'delayed_sip']", @@ -18503,8 +18685,30 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "interval", + "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "intrinio": [ + { + "name": "symbol", + "type": "str", + "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", + "default": "", + "optional": false + }, + { + "name": "interval", + "type": "Literal['1m', '5m', '10m', '15m', '30m', '60m', '1h', '1d', '1W', '1M', '1Q', '1Y']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + }, { "name": "start_time", "type": "datetime.time", @@ -18535,6 +18739,13 @@ } ], "polygon": [ + { + "name": "interval", + "type": "str", + "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", + "default": "1d", + "optional": true + }, { "name": "adjustment", "type": "Literal['splits_only', 'unadjusted']", @@ -18564,8 +18775,23 @@ "optional": true } ], - "tiingo": [], + "tiingo": [ + { + "name": "interval", + "type": "Literal['1d', '1W', '1M', '1Y']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "yfinance": [ + { + "name": "interval", + "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + }, { "name": "extended_hours", "type": "bool", @@ -19084,7 +19310,15 @@ "optional": true } ], - "fmp": [] + "fmp": [ + { + "name": "symbol", + "type": "str", + "description": "The ticker symbol.", + "default": "", + "optional": false + } + ] }, "model": "PricePerformance" }, @@ -20838,8 +21072,30 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "interval", + "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "intrinio": [ + { + "name": "symbol", + "type": "str", + "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", + "default": "", + "optional": false + }, + { + "name": "interval", + "type": "Literal['1m', '5m', '10m', '15m', '30m', '60m', '1h', '1d', '1W', '1M', '1Q', '1Y']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + }, { "name": "start_time", "type": "datetime.time", @@ -20870,6 +21126,13 @@ } ], "polygon": [ + { + "name": "interval", + "type": "str", + "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", + "default": "1d", + "optional": true + }, { "name": "adjustment", "type": "Literal['splits_only', 'unadjusted']", @@ -20899,8 +21162,23 @@ "optional": true } ], - "tiingo": [], + "tiingo": [ + { + "name": "interval", + "type": "Literal['1d', '1W', '1M', '1Y']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "yfinance": [ + { + "name": "interval", + "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + }, { "name": "extended_hours", "type": "bool", @@ -22776,7 +23054,15 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "symbol", + "type": "str", + "description": "The ticker symbol.", + "default": "", + "optional": false + } + ], "intrinio": [ { "name": "max_annualized", @@ -23149,6 +23435,13 @@ } ], "intrinio": [ + { + "name": "name", + "type": "str", + "description": "The common name for the holding.", + "default": null, + "optional": true + }, { "name": "security_type", "type": "str", @@ -24039,7 +24332,15 @@ "optional": true } ], - "fmp": [] + "fmp": [ + { + "name": "symbol", + "type": "str", + "description": "The ticker symbol.", + "default": "", + "optional": false + } + ] }, "model": "EtfHoldingsPerformance" }, @@ -26070,7 +26371,15 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "interval", + "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "intrinio": [ { "name": "limit", @@ -26081,6 +26390,13 @@ } ], "polygon": [ + { + "name": "interval", + "type": "str", + "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", + "default": "1d", + "optional": true + }, { "name": "sort", "type": "Literal['asc', 'desc']", @@ -26096,7 +26412,15 @@ "optional": true } ], - "yfinance": [] + "yfinance": [ + { + "name": "interval", + "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -26254,7 +26578,15 @@ "optional": true } ], - "fmp": [], + "fmp": [ + { + "name": "interval", + "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ], "intrinio": [ { "name": "limit", @@ -26265,6 +26597,13 @@ } ], "polygon": [ + { + "name": "interval", + "type": "str", + "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", + "default": "1d", + "optional": true + }, { "name": "sort", "type": "Literal['asc', 'desc']", @@ -26280,7 +26619,15 @@ "optional": true } ], - "yfinance": [] + "yfinance": [ + { + "name": "interval", + "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", + "description": "Time interval of the data to return.", + "default": "1d", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -26417,7 +26764,15 @@ "optional": true } ], - "fmp": [] + "fmp": [ + { + "name": "symbol", + "type": "Literal['dowjones', 'sp500', 'nasdaq']", + "description": "None", + "default": "dowjones", + "optional": true + } + ] }, "returns": { "OBBject": [ @@ -27387,6 +27742,13 @@ } ], "benzinga": [ + { + "name": "images", + "type": "List[Dict[str, str]]", + "description": "URL to the images of the news.", + "default": null, + "optional": true + }, { "name": "id", "type": "str", diff --git a/openbb_platform/openbb/package/crypto_price.py b/openbb_platform/openbb/package/crypto_price.py index 7c3bedbb3622..bbd332f8d18b 100644 --- a/openbb_platform/openbb/package/crypto_price.py +++ b/openbb_platform/openbb/package/crypto_price.py @@ -137,12 +137,10 @@ def historical( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "fmp", - "polygon", - "tiingo", - "yfinance", - ] + "fmp": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "tiingo": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/openbb/package/currency.py b/openbb_platform/openbb/package/currency.py index 05c7b823969c..ba7d31d21cb9 100644 --- a/openbb_platform/openbb/package/currency.py +++ b/openbb_platform/openbb/package/currency.py @@ -290,6 +290,11 @@ def snapshots( "counter_currencies": counter_currencies, }, extra_params=kwargs, - info={"base": {"multiple_items_allowed": ["fmp", "polygon"]}}, + info={ + "base": { + "fmp": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + } + }, ) ) diff --git a/openbb_platform/openbb/package/currency_price.py b/openbb_platform/openbb/package/currency_price.py index 396977d04434..251e422f05d8 100644 --- a/openbb_platform/openbb/package/currency_price.py +++ b/openbb_platform/openbb/package/currency_price.py @@ -140,12 +140,10 @@ def historical( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "fmp", - "polygon", - "tiingo", - "yfinance", - ] + "fmp": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "tiingo": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/openbb/package/economy.py b/openbb_platform/openbb/package/economy.py index 56deffca0aa4..dca7a2a489c4 100644 --- a/openbb_platform/openbb/package/economy.py +++ b/openbb_platform/openbb/package/economy.py @@ -237,7 +237,9 @@ def calendar( "end_date": end_date, }, extra_params=kwargs, - info={"country": {"multiple_items_allowed": ["tradingeconomics"]}}, + info={ + "country": {"tradingeconomics": {"multiple_items_allowed": True}} + }, ) ) @@ -430,7 +432,7 @@ def country_profile( "country": country, }, extra_params=kwargs, - info={"country": {"multiple_items_allowed": ["econdb"]}}, + info={"country": {"econdb": {"multiple_items_allowed": True}}}, ) ) @@ -603,7 +605,7 @@ def cpi( "end_date": end_date, }, extra_params=kwargs, - info={"country": {"multiple_items_allowed": ["fred"]}}, + info={"country": {"fred": {"multiple_items_allowed": True}}}, ) ) @@ -1024,7 +1026,7 @@ def fred_series( "limit": limit, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fred"]}}, + info={"symbol": {"fred": {"multiple_items_allowed": True}}}, ) ) @@ -1154,8 +1156,8 @@ def indicators( }, extra_params=kwargs, info={ - "symbol": {"multiple_items_allowed": ["econdb"]}, - "country": {"multiple_items_allowed": ["econdb"]}, + "symbol": {"econdb": {"multiple_items_allowed": True}}, + "country": {"econdb": {"multiple_items_allowed": True}}, }, ) ) diff --git a/openbb_platform/openbb/package/equity.py b/openbb_platform/openbb/package/equity.py index 07564859dbb7..c67112ac8a1c 100644 --- a/openbb_platform/openbb/package/equity.py +++ b/openbb_platform/openbb/package/equity.py @@ -436,7 +436,9 @@ def profile( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": ["fmp", "intrinio", "yfinance"] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/openbb/package/equity_estimates.py b/openbb_platform/openbb/package/equity_estimates.py index 36212035e8bc..01b95add7a5d 100644 --- a/openbb_platform/openbb/package/equity_estimates.py +++ b/openbb_platform/openbb/package/equity_estimates.py @@ -222,11 +222,11 @@ def analyst_search( }, extra_params=kwargs, info={ - "analyst_name": {"multiple_items_allowed": ["benzinga"]}, - "firm_name": {"multiple_items_allowed": ["benzinga"]}, - "analyst_ids": {"multiple_items_allowed": ["benzinga"]}, - "firm_ids": {"multiple_items_allowed": ["benzinga"]}, - "fields": {"multiple_items_allowed": ["benzinga"]}, + "analyst_name": {"benzinga": {"multiple_items_allowed": True}}, + "firm_name": {"benzinga": {"multiple_items_allowed": True}}, + "analyst_ids": {"benzinga": {"multiple_items_allowed": True}}, + "firm_ids": {"benzinga": {"multiple_items_allowed": True}}, + "fields": {"benzinga": {"multiple_items_allowed": True}}, }, ) ) @@ -336,7 +336,9 @@ def consensus( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": ["fmp", "intrinio", "yfinance"] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) @@ -457,7 +459,12 @@ def forward_eps( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp", "intrinio"]}}, + info={ + "symbol": { + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + } + }, ) ) @@ -580,7 +587,7 @@ def forward_sales( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["intrinio"]}}, + info={"symbol": {"intrinio": {"multiple_items_allowed": True}}}, ) ) @@ -698,7 +705,7 @@ def historical( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -854,6 +861,11 @@ def price_target( "limit": limit, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["benzinga", "fmp"]}}, + info={ + "symbol": { + "benzinga": {"multiple_items_allowed": True}, + "fmp": {"multiple_items_allowed": True}, + } + }, ) ) diff --git a/openbb_platform/openbb/package/equity_fundamental.py b/openbb_platform/openbb/package/equity_fundamental.py index 4606e106d1ea..cc734d0f02ac 100644 --- a/openbb_platform/openbb/package/equity_fundamental.py +++ b/openbb_platform/openbb/package/equity_fundamental.py @@ -1421,8 +1421,8 @@ def historical_attributes( }, extra_params=kwargs, info={ - "symbol": {"multiple_items_allowed": ["intrinio"]}, - "tag": {"multiple_items_allowed": ["intrinio"]}, + "symbol": {"intrinio": {"multiple_items_allowed": True}}, + "tag": {"intrinio": {"multiple_items_allowed": True}}, }, ) ) @@ -2165,8 +2165,8 @@ def latest_attributes( }, extra_params=kwargs, info={ - "symbol": {"multiple_items_allowed": ["intrinio"]}, - "tag": {"multiple_items_allowed": ["intrinio"]}, + "symbol": {"intrinio": {"multiple_items_allowed": True}}, + "tag": {"intrinio": {"multiple_items_allowed": True}}, }, ) ) @@ -2351,7 +2351,7 @@ def management_compensation( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -2670,7 +2670,9 @@ def metrics( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": ["fmp", "intrinio", "yfinance"] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) @@ -2864,7 +2866,7 @@ def multiples( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) diff --git a/openbb_platform/openbb/package/equity_ownership.py b/openbb_platform/openbb/package/equity_ownership.py index 45fd01edb5f4..c9806627f8e5 100644 --- a/openbb_platform/openbb/package/equity_ownership.py +++ b/openbb_platform/openbb/package/equity_ownership.py @@ -685,6 +685,6 @@ def share_statistics( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["yfinance"]}}, + info={"symbol": {"yfinance": {"multiple_items_allowed": True}}}, ) ) diff --git a/openbb_platform/openbb/package/equity_price.py b/openbb_platform/openbb/package/equity_price.py index a174d0b9e4bc..a4327717d3d1 100644 --- a/openbb_platform/openbb/package/equity_price.py +++ b/openbb_platform/openbb/package/equity_price.py @@ -186,12 +186,10 @@ def historical( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "fmp", - "polygon", - "tiingo", - "yfinance", - ] + "fmp": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "tiingo": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, }, "adjusted": {"deprecated": True}, "prepost": {"deprecated": True}, @@ -405,7 +403,7 @@ def performance( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -579,7 +577,9 @@ def quote( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": ["fmp", "intrinio", "yfinance"] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/openbb/package/etf.py b/openbb_platform/openbb/package/etf.py index 0c30a66ca2bb..5609ba550160 100644 --- a/openbb_platform/openbb/package/etf.py +++ b/openbb_platform/openbb/package/etf.py @@ -98,7 +98,7 @@ def countries( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -180,7 +180,7 @@ def equity_exposure( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -350,12 +350,10 @@ def historical( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "fmp", - "polygon", - "tiingo", - "yfinance", - ] + "fmp": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "tiingo": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, }, "adjusted": {"deprecated": True}, "prepost": {"deprecated": True}, @@ -805,7 +803,7 @@ def holdings_performance( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp"]}}, + info={"symbol": {"fmp": {"multiple_items_allowed": True}}}, ) ) @@ -1195,7 +1193,9 @@ def info( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": ["fmp", "intrinio", "yfinance"] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) @@ -1336,7 +1336,12 @@ def price_performance( "symbol": symbol, }, extra_params=kwargs, - info={"symbol": {"multiple_items_allowed": ["fmp", "intrinio"]}}, + info={ + "symbol": { + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + } + }, ) ) diff --git a/openbb_platform/openbb/package/fixedincome_corporate.py b/openbb_platform/openbb/package/fixedincome_corporate.py index 7f3a1e19957c..47da6e18862e 100644 --- a/openbb_platform/openbb/package/fixedincome_corporate.py +++ b/openbb_platform/openbb/package/fixedincome_corporate.py @@ -514,8 +514,8 @@ def spot_rates( }, extra_params=kwargs, info={ - "maturity": {"multiple_items_allowed": ["fred"]}, - "category": {"multiple_items_allowed": ["fred"]}, + "maturity": {"fred": {"multiple_items_allowed": True}}, + "category": {"fred": {"multiple_items_allowed": True}}, }, ) ) diff --git a/openbb_platform/openbb/package/index.py b/openbb_platform/openbb/package/index.py index babec4f8c964..46f5881f8b4c 100644 --- a/openbb_platform/openbb/package/index.py +++ b/openbb_platform/openbb/package/index.py @@ -300,12 +300,10 @@ def market( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "fmp", - "intrinio", - "polygon", - "yfinance", - ] + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/openbb/package/news.py b/openbb_platform/openbb/package/news.py index d951f6be51b6..b0e65cd2ab25 100644 --- a/openbb_platform/openbb/package/news.py +++ b/openbb_platform/openbb/package/news.py @@ -236,14 +236,12 @@ def company( extra_params=kwargs, info={ "symbol": { - "multiple_items_allowed": [ - "benzinga", - "fmp", - "intrinio", - "polygon", - "tiingo", - "yfinance", - ] + "benzinga": {"multiple_items_allowed": True}, + "fmp": {"multiple_items_allowed": True}, + "intrinio": {"multiple_items_allowed": True}, + "polygon": {"multiple_items_allowed": True}, + "tiingo": {"multiple_items_allowed": True}, + "yfinance": {"multiple_items_allowed": True}, } }, ) diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py index 91e20c2d7268..e7b663d64bde 100644 --- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py +++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py @@ -43,7 +43,7 @@ class AVEquityHistoricalQueryParams(EquityHistoricalQueryParams): Source: https://www.alphavantage.co/documentation/#time-series-data """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "60m", "1d", "1W", "1M"] = Field( default="1d", diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py index ccb38ec5f6f1..dc1a7d23c075 100644 --- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py +++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py @@ -30,7 +30,7 @@ class AlphaVantageHistoricalEpsQueryParams(HistoricalEpsQueryParams): Source: https://www.alphavantage.co/documentation/#earnings """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} period: Literal["annual", "quarter"] = Field( default="quarter", description=QUERY_DESCRIPTIONS.get("period", "") diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py b/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py index c4aeba334165..f95f5345bf3c 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/models/analyst_search.py @@ -34,11 +34,11 @@ class BenzingaAnalystSearchQueryParams(AnalystSearchQueryParams): "limit": "pageSize", } __json_schema_extra__ = { - "analyst_name": ["multiple_items_allowed"], - "firm_name": ["multiple_items_allowed"], - "analyst_ids": ["multiple_items_allowed"], - "firm_ids": ["multiple_items_allowed"], - "fields": ["multiple_items_allowed"], + "analyst_name": {"multiple_items_allowed": True}, + "firm_name": {"multiple_items_allowed": True}, + "analyst_ids": {"multiple_items_allowed": True}, + "firm_ids": {"multiple_items_allowed": True}, + "fields": {"multiple_items_allowed": True}, } analyst_ids: Optional[str] = Field( diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py b/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py index eb7723da3ddf..ddeda7696571 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py @@ -32,7 +32,7 @@ class BenzingaCompanyNewsQueryParams(CompanyNewsQueryParams): "updated_since": "updatedSince", "published_since": "publishedSince", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} date: Optional[dateType] = Field( default=None, description=QUERY_DESCRIPTIONS.get("date", "") @@ -152,10 +152,11 @@ async def aextract_data( base_url = "https://api.benzinga.com/api/v2/news" - query.sort = f"{query.sort}:{query.order}" if query.sort and query.order else "" - querystring = get_querystring( - query.model_dump(by_alias=True), ["order", "pageSize"] + model = query.model_dump(by_alias=True) + model["sort"] = ( + f"{query.sort}:{query.order}" if query.sort and query.order else "" ) + querystring = get_querystring(model, ["order", "pageSize"]) pages = math.ceil(query.limit / 100) if query.limit else 1 page_size = 100 if query.limit and query.limit > 100 else query.limit diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/models/price_target.py b/openbb_platform/providers/benzinga/openbb_benzinga/models/price_target.py index d799e3410d88..49666ac18c50 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/models/price_target.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/models/price_target.py @@ -49,7 +49,7 @@ class BenzingaPriceTargetQueryParams(PriceTargetQueryParams): "limit": "pagesize", "symbol": "parameters[tickers]", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} page: Optional[int] = Field( default=0, diff --git a/openbb_platform/providers/cboe/openbb_cboe/models/equity_historical.py b/openbb_platform/providers/cboe/openbb_cboe/models/equity_historical.py index c74afc3430a1..67a7423211ef 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/models/equity_historical.py +++ b/openbb_platform/providers/cboe/openbb_cboe/models/equity_historical.py @@ -30,7 +30,7 @@ class CboeEquityHistoricalQueryParams(EquityHistoricalQueryParams): Source: https://www.cboe.com/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "1d"] = Field( default="1d", @@ -141,7 +141,7 @@ def _generate_historical_prices_url( return url urls = [ - _generate_historical_prices_url(symbol, INTERVAL_DICT[query.interval]) + _generate_historical_prices_url(symbol, INTERVAL_DICT[query.interval]) # type: ignore[arg-type] for symbol in symbols ] return await amake_requests(urls, **kwargs) @@ -199,7 +199,7 @@ def transform_data( (to_datetime(output["date"]) >= to_datetime(query.start_date)) & ( to_datetime(output["date"]) - <= to_datetime(query.end_date + timedelta(days=1)) + <= to_datetime(query.end_date + timedelta(days=1)) # type: ignore[operator] ) ] return [ diff --git a/openbb_platform/providers/cboe/openbb_cboe/models/equity_quote.py b/openbb_platform/providers/cboe/openbb_cboe/models/equity_quote.py index bd311c5d2d4d..b62ae9f4a957 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/models/equity_quote.py +++ b/openbb_platform/providers/cboe/openbb_cboe/models/equity_quote.py @@ -25,7 +25,7 @@ class CboeEquityQuoteQueryParams(EquityQuoteQueryParams): Source: https://www.cboe.com/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} use_cache: bool = Field( default=True, diff --git a/openbb_platform/providers/cboe/openbb_cboe/models/index_historical.py b/openbb_platform/providers/cboe/openbb_cboe/models/index_historical.py index ce468e2eafc4..01340b4076eb 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/models/index_historical.py +++ b/openbb_platform/providers/cboe/openbb_cboe/models/index_historical.py @@ -28,7 +28,7 @@ class CboeIndexHistoricalQueryParams(IndexHistoricalQueryParams): Source: https://www.cboe.com/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "1d"] = Field( default="1d", @@ -139,7 +139,7 @@ def _generate_historical_prices_url( ) url += f"{symbol.replace('^', '')}.json" else: - base_url: str = ( + base_url: str = ( # type: ignore[no-redef] f"https://cdn.cboe.com/api/global/delayed_quotes/charts/{interval_type}" ) url = ( @@ -152,7 +152,7 @@ def _generate_historical_prices_url( return url urls = [ - _generate_historical_prices_url(symbol, INTERVAL_DICT[query.interval]) + _generate_historical_prices_url(symbol, INTERVAL_DICT[query.interval]) # type: ignore[arg-type] for symbol in symbols ] @@ -205,7 +205,7 @@ def transform_data( (to_datetime(output["date"]) >= to_datetime(query.start_date)) & ( to_datetime(output["date"]) - <= to_datetime(query.end_date + timedelta(days=1)) + <= to_datetime(query.end_date + timedelta(days=1)) # type: ignore[operator] ) ] return [ diff --git a/openbb_platform/providers/econdb/openbb_econdb/models/country_profile.py b/openbb_platform/providers/econdb/openbb_econdb/models/country_profile.py index 20d156000385..00267d8e3de6 100644 --- a/openbb_platform/providers/econdb/openbb_econdb/models/country_profile.py +++ b/openbb_platform/providers/econdb/openbb_econdb/models/country_profile.py @@ -27,7 +27,7 @@ class EconDbCountryProfileQueryParams(CountryProfileQueryParams): """Country Profile Query.""" - __json_schema_extra__ = {"country": ["multiple_items_allowed"]} + __json_schema_extra__ = {"country": {"multiple_items_allowed": True}} latest: bool = Field( default=True, diff --git a/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py b/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py index 3bea1e58cc68..d2b48bd7f99d 100644 --- a/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py +++ b/openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py @@ -25,8 +25,8 @@ class EconDbEconomicIndicatorsQueryParams(EconomicIndicatorsQueryParams): """EconDB Economic Indicators Query.""" __json_schema_extra__ = { - "symbol": ["multiple_items_allowed"], - "country": ["multiple_items_allowed"], + "symbol": {"multiple_items_allowed": True}, + "country": {"multiple_items_allowed": True}, } transform: Union[None, Literal["toya", "tpop", "tusd", "tpgp"]] = Field( diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py b/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py index a81fe6c5085e..8715c9078a3d 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/equity_profile.py @@ -21,7 +21,7 @@ class FinvizEquityProfileQueryParams(EquityInfoQueryParams): Source: https://finviz.com/screener.ashx """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FinvizEquityProfileData(EquityInfoData): diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py b/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py index 9ff3a002ed33..7957c68d1ece 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/key_metrics.py @@ -22,7 +22,7 @@ class FinvizKeyMetricsQueryParams(KeyMetricsQueryParams): Source: https://finviz.com/screener.ashx """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FinvizKeyMetricsData(KeyMetricsData): diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py b/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py index 020c43f88524..8a9cea94b0c3 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py @@ -21,7 +21,7 @@ class FinvizPricePerformanceQueryParams(RecentPerformanceQueryParams): Source: https://finviz.com/screener.ashx """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FinvizPricePerformanceData(RecentPerformanceData): diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/price_target.py b/openbb_platform/providers/finviz/openbb_finviz/models/price_target.py index e33c04037dd1..74792b039511 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/price_target.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/price_target.py @@ -23,7 +23,7 @@ class FinvizPriceTargetQueryParams(PriceTargetQueryParams): Source: https://finviz.com/quote.ashx? """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FinvizPriceTargetData(PriceTargetData): @@ -67,12 +67,12 @@ def extract_data( ) -> List[Dict]: """Return the raw data from the Finviz endpoint.""" - results = [] + results: List[dict] = [] def get_one(symbol) -> List[Dict]: """Get the data for one symbol.""" price_targets = DataFrame() - result = [] + result: List[dict] = [] try: data = finvizfinance(symbol) price_targets = data.ticker_outer_ratings() @@ -100,7 +100,7 @@ def get_one(symbol) -> List[Dict]: result = price_targets.to_dict(orient="records") return result - symbols = query.symbol.split(",") + symbols = query.symbol.split(",") if query.symbol else [] for symbol in symbols: result = get_one(symbol) if result is not None and result != []: diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/analyst_estimates.py b/openbb_platform/providers/fmp/openbb_fmp/models/analyst_estimates.py index 6d1e5c9e335e..391a4080e566 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/analyst_estimates.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/analyst_estimates.py @@ -22,7 +22,7 @@ class FMPAnalystEstimatesQueryParams(AnalystEstimatesQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/analyst-estimates-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} period: Literal["quarter", "annual"] = Field( default="annual", description=QUERY_DESCRIPTIONS.get("period", "") @@ -60,7 +60,7 @@ async def aextract_data( symbols = query.symbol.split(",") # type: ignore - results = [] + results: List[dict] = [] async def get_one(symbol): """Get data for one symbol.""" diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/company_news.py b/openbb_platform/providers/fmp/openbb_fmp/models/company_news.py index b773a0177d80..13d62a26904f 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/company_news.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/company_news.py @@ -19,7 +19,7 @@ class FMPCompanyNewsQueryParams(CompanyNewsQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/stock-news-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} page: Optional[int] = Field( default=0, diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py index 8486d46f69a3..ad528255c0df 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py @@ -35,7 +35,7 @@ class FMPCryptoHistoricalQueryParams(CryptoHistoricalQueryParams): """ __alias_dict__ = {"start_date": "from", "end_date": "to"} - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py index 02fceedc5ee2..697c3d0395db 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py @@ -33,7 +33,7 @@ class FMPCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams): """ __alias_dict__ = {"start_date": "from", "end_date": "to"} - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/currency_snapshots.py b/openbb_platform/providers/fmp/openbb_fmp/models/currency_snapshots.py index 6276e23ed737..dcc34f6beb43 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/currency_snapshots.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/currency_snapshots.py @@ -25,7 +25,7 @@ class FMPCurrencySnapshotsQueryParams(CurrencySnapshotsQueryParams): Source: https://site.financialmodelingprep.com/developer/docs#exchange-prices-quote """ - __json_schema_extra__ = {"base": ["multiple_items_allowed"]} + __json_schema_extra__ = {"base": {"multiple_items_allowed": True}} class FMPCurrencySnapshotsData(CurrencySnapshotsData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py index 5225a0daa183..fa4660c25ff6 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py @@ -33,7 +33,7 @@ class FMPEquityHistoricalQueryParams(EquityHistoricalQueryParams): """ __alias_dict__ = {"start_date": "from", "end_date": "to"} - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/equity_profile.py b/openbb_platform/providers/fmp/openbb_fmp/models/equity_profile.py index 95a460fff792..015e3ad24977 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/equity_profile.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/equity_profile.py @@ -27,7 +27,7 @@ class FMPEquityProfileQueryParams(EquityInfoQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/companies-key-stats-free-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEquityProfileData(EquityInfoData): @@ -48,7 +48,7 @@ class FMPEquityProfileData(EquityInfoData): "long_description": "description", "first_stock_price_date": "ipoDate", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} is_etf: bool = Field(description="If the symbol is an ETF.") is_actively_trading: bool = Field(description="If the company is actively trading.") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py b/openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py index 3830466770ad..824c9a31eafb 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py @@ -29,7 +29,7 @@ class FMPEquityQuoteQueryParams(EquityQuoteQueryParams): Source: https://financialmodelingprep.com/developer/docs/#Stock-Historical-Price """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEquityQuoteData(EquityQuoteData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/equity_valuation_multiples.py b/openbb_platform/providers/fmp/openbb_fmp/models/equity_valuation_multiples.py index ea48b84b9db6..5a1b05ba503f 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/equity_valuation_multiples.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/equity_valuation_multiples.py @@ -22,7 +22,7 @@ class FMPEquityValuationMultiplesQueryParams(EquityValuationMultiplesQueryParams Source: https://site.financialmodelingprep.com/developer/docs/#Company-Key-Metrics """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEquityValuationMultiplesData(EquityValuationMultiplesData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_countries.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_countries.py index 13803e791d22..5eea88402933 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_countries.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_countries.py @@ -18,7 +18,7 @@ class FMPEtfCountriesQueryParams(EtfCountriesQueryParams): """FMP ETF Countries Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEtfCountriesData(EtfCountriesData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_equity_exposure.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_equity_exposure.py index f204d2fa5e11..65109aef1575 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_equity_exposure.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_equity_exposure.py @@ -24,7 +24,7 @@ class FMPEtfEquityExposureQueryParams(EtfEquityExposureQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/etf-stock-exposure-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEtfEquityExposureData(EtfEquityExposureData): @@ -64,7 +64,7 @@ async def aextract_data( """Return the raw data from the FMP endpoint.""" api_key = credentials.get("fmp_api_key") if credentials else "" symbols = query.symbol.split(",") - results = [] + results: List[dict] = [] async def get_one(symbol): """Get one symbol.""" diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py index af21d5e8f27f..4475635a77fd 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_info.py @@ -18,7 +18,7 @@ class FMPEtfInfoQueryParams(EtfInfoQueryParams): """FMP ETF Info Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPEtfInfoData(EtfInfoData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/executive_compensation.py b/openbb_platform/providers/fmp/openbb_fmp/models/executive_compensation.py index 5914828ed024..d95e305e8299 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/executive_compensation.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/executive_compensation.py @@ -25,7 +25,7 @@ class FMPExecutiveCompensationQueryParams(ExecutiveCompensationQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/executive-compensation-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} year: Optional[int] = Field(default=None, description="Year of the compensation.") @@ -86,7 +86,7 @@ async def aextract_data( symbols = query.symbol.split(",") - results = [] + results: List[dict] = [] async def get_one(symbol): """Get data for one symbol.""" diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/forward_eps_estimates.py b/openbb_platform/providers/fmp/openbb_fmp/models/forward_eps_estimates.py index f0e2c5cdf60e..8a3a714e33c8 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/forward_eps_estimates.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/forward_eps_estimates.py @@ -25,7 +25,7 @@ class FMPForwardEpsEstimatesQueryParams(ForwardEpsEstimatesQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/analyst-estimates-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} __alias_dict__ = {"fiscal_period": "period"} diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py index 33eabd6f5b3f..20a5523a1e21 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py @@ -33,7 +33,7 @@ class FMPIndexHistoricalQueryParams(IndexHistoricalQueryParams): """ __alias_dict__ = {"start_date": "from", "end_date": "to"} - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py b/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py index 7c8241aca9d0..c47a214a786a 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/key_metrics.py @@ -27,7 +27,7 @@ class FMPKeyMetricsQueryParams(KeyMetricsQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/company-key-metrics-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} with_ttm: Optional[bool] = Field( default=False, description="Include trailing twelve months (TTM) data." diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/price_performance.py b/openbb_platform/providers/fmp/openbb_fmp/models/price_performance.py index aee89b084fb4..adc184131515 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/price_performance.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/price_performance.py @@ -19,7 +19,7 @@ class FMPPricePerformanceQueryParams(RecentPerformanceQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/stock-split-calendar-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class FMPPricePerformanceData(RecentPerformanceData): diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/price_target.py b/openbb_platform/providers/fmp/openbb_fmp/models/price_target.py index 92589fc6c002..3b6e8481c4d3 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/price_target.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/price_target.py @@ -24,7 +24,7 @@ class FMPPriceTargetQueryParams(PriceTargetQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/#Price-Target """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} with_grade: bool = Field( False, @@ -89,7 +89,7 @@ async def aextract_data( symbols = query.symbol.split(",") # type: ignore - results = [] + results: List[dict] = [] async def get_one(symbol): """Get data for one symbol.""" diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/price_target_consensus.py b/openbb_platform/providers/fmp/openbb_fmp/models/price_target_consensus.py index c087bed700f6..0cf0f8d3c54f 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/price_target_consensus.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/price_target_consensus.py @@ -23,7 +23,7 @@ class FMPPriceTargetConsensusQueryParams(PriceTargetConsensusQueryParams): Source: https://site.financialmodelingprep.com/developer/docs/price-target-consensus-api/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} @field_validator("symbol", mode="before", check_fields=False) @classmethod diff --git a/openbb_platform/providers/fred/openbb_fred/models/cpi.py b/openbb_platform/providers/fred/openbb_fred/models/cpi.py index 4a86e44869f0..a7c55bb9b787 100644 --- a/openbb_platform/providers/fred/openbb_fred/models/cpi.py +++ b/openbb_platform/providers/fred/openbb_fred/models/cpi.py @@ -14,7 +14,7 @@ class FREDConsumerPriceIndexQueryParams(ConsumerPriceIndexQueryParams): """FRED Consumer Price Index Query.""" - __json_schema_extra__ = {"country": ["multiple_items_allowed"]} + __json_schema_extra__ = {"country": {"multiple_items_allowed": True}} class FREDConsumerPriceIndexData(ConsumerPriceIndexData): @@ -75,8 +75,7 @@ def transform_data( transformed_data[item["date"]].update({country: item["value"]}) # Convert the dictionary to a list of dictionaries - transformed_data = list(transformed_data.values()) - return [ - FREDConsumerPriceIndexData.model_validate(item) for item in transformed_data + FREDConsumerPriceIndexData.model_validate(item) + for item in list(transformed_data.values()) ] diff --git a/openbb_platform/providers/fred/openbb_fred/models/series.py b/openbb_platform/providers/fred/openbb_fred/models/series.py index 36e5f911c579..bdac347325b2 100644 --- a/openbb_platform/providers/fred/openbb_fred/models/series.py +++ b/openbb_platform/providers/fred/openbb_fred/models/series.py @@ -28,7 +28,7 @@ class FredSeriesQueryParams(SeriesQueryParams): "end_date": "observation_end", "transform": "units", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} frequency: Optional[ Literal[ diff --git a/openbb_platform/providers/fred/openbb_fred/models/spot.py b/openbb_platform/providers/fred/openbb_fred/models/spot.py index 4db9cebe4e07..31747a67abb3 100644 --- a/openbb_platform/providers/fred/openbb_fred/models/spot.py +++ b/openbb_platform/providers/fred/openbb_fred/models/spot.py @@ -16,8 +16,8 @@ class FREDSpotRateQueryParams(SpotRateQueryParams): """FRED Spot Rate Query.""" __json_schema_extra__ = { - "maturity": ["multiple_items_allowed"], - "category": ["multiple_items_allowed"], + "maturity": {"multiple_items_allowed": True}, + "category": {"multiple_items_allowed": True}, } diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/company_news.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/company_news.py index d728cd3384dd..d70a7734f75d 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/company_news.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/company_news.py @@ -29,7 +29,7 @@ class IntrinioCompanyNewsQueryParams(CompanyNewsQueryParams): "limit": "page_size", "source": "specific_source", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} source: Optional[ Literal["yahoo", "moody", "moody_us_news", "moody_us_press_releases"] @@ -182,7 +182,7 @@ async def aextract_data( else ["symbol", "page_size"] ) query_str = get_querystring(query.model_dump(by_alias=True), ignore) - symbols = query.symbol.split(",") + symbols = query.symbol.split(",") if query.symbol else [] news: List = [] async def callback(response, session): @@ -196,7 +196,9 @@ async def callback(response, session): data.extend([{"symbol": symbol, **d} for d in _data]) articles = len(data) next_page = result.get("next_page") - while next_page and query.limit > articles: + # query.limit can be None... + limit = query.limit or 2500 + while next_page and limit > articles: url = f"{base_url}/{symbol}/news?{query_str}&api_key={api_key}&next_page={next_page}" result = await get_data(url, session=session, **kwargs) _data = result.get("news", []) diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_info.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_info.py index 21c8d7d44aff..97e1f7d351c1 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_info.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_info.py @@ -20,7 +20,7 @@ class IntrinioEquityInfoQueryParams(EquityInfoQueryParams): Source: https://docs.intrinio.com/documentation/web_api/get_company_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class IntrinioEquityInfoData(EquityInfoData): diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_quote.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_quote.py index fe8320bae103..4571a87e1f5c 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_quote.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_quote.py @@ -27,7 +27,7 @@ class IntrinioEquityQuoteQueryParams(EquityQuoteQueryParams): Source: https://docs.intrinio.com/documentation/web_api/get_security_realtime_price_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} symbol: str = Field( description="A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID)." diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_info.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_info.py index f5c275a571fe..cd6fc9608167 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_info.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_info.py @@ -23,7 +23,7 @@ class IntrinioEtfInfoQueryParams(EtfInfoQueryParams): Source: https://docs.intrinio.com/documentation/web_api/get_etf_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class IntrinioEtfInfoData(EtfInfoData): diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_price_performance.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_price_performance.py index 8ea7e5c27c0f..927259102172 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_price_performance.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/etf_price_performance.py @@ -27,7 +27,7 @@ class IntrinioEtfPricePerformanceQueryParams(RecentPerformanceQueryParams): Source: https://docs.intrinio.com/documentation/web_api/get_etf_analytics_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} return_type: Literal["trailing", "calendar"] = Field( default="trailing", diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_eps_estimates.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_eps_estimates.py index 294428c3055f..3fab49a6684e 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_eps_estimates.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_eps_estimates.py @@ -27,7 +27,7 @@ class IntrinioForwardEpsEstimatesQueryParams(ForwardEpsEstimatesQueryParams): https://docs.intrinio.com/documentation/web_api/get_zacks_sales_estimates_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} fiscal_year: Optional[int] = Field( default=None, diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_sales_estimates.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_sales_estimates.py index c57ad52cfcb5..b50259f00255 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_sales_estimates.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_sales_estimates.py @@ -27,7 +27,7 @@ class IntrinioForwardSalesEstimatesQueryParams(ForwardSalesEstimatesQueryParams) https://docs.intrinio.com/documentation/web_api/get_zacks_sales_estimates_v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} fiscal_year: Optional[int] = Field( default=None, diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/historical_attributes.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/historical_attributes.py index 7c83c3b8d999..b9558ea19c41 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/historical_attributes.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/historical_attributes.py @@ -29,8 +29,8 @@ class IntrinioHistoricalAttributesQueryParams(HistoricalAttributesQueryParams): __alias_dict__ = {"sort": "sort_order", "limit": "page_size", "tag_type": "type"} __json_schema_extra__ = { - "tag": ["multiple_items_allowed"], - "symbol": ["multiple_items_allowed"], + "tag": {"multiple_items_allowed": True}, + "symbol": {"multiple_items_allowed": True}, } diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py index fc32a1aee41d..33831a175687 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py @@ -23,7 +23,7 @@ class IntrinioIndexHistoricalQueryParams(IndexHistoricalQueryParams): """ __alias_dict__ = {"limit": "page_size", "sort": "sort_order"} - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} limit: Optional[int] = Field( default=10000, diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/key_metrics.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/key_metrics.py index 2dbecc4a0e30..37820cd35936 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/key_metrics.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/key_metrics.py @@ -27,7 +27,7 @@ class IntrinioKeyMetricsQueryParams(KeyMetricsQueryParams): Source: https://data.intrinio.com/data-tags/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class IntrinioKeyMetricsData(KeyMetricsData): diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/latest_attributes.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/latest_attributes.py index 55cf7bc685db..3b0296d7de74 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/latest_attributes.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/latest_attributes.py @@ -23,8 +23,8 @@ class IntrinioLatestAttributesQueryParams(LatestAttributesQueryParams): """ __json_schema_extra__ = { - "tag": ["multiple_items_allowed"], - "symbol": ["multiple_items_allowed"], + "tag": {"multiple_items_allowed": True}, + "symbol": {"multiple_items_allowed": True}, } diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/price_target_consensus.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/price_target_consensus.py index fcf1a99c4a47..fce965c4c7fc 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/price_target_consensus.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/price_target_consensus.py @@ -27,7 +27,7 @@ class IntrinioPriceTargetConsensusQueryParams(PriceTargetConsensusQueryParams): https://docs.intrinio.com/documentation/web_api/get_zacks_sales__v2 """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} industry_group_number: Optional[int] = Field( default=None, diff --git a/openbb_platform/providers/nasdaq/openbb_nasdaq/models/economic_calendar.py b/openbb_platform/providers/nasdaq/openbb_nasdaq/models/economic_calendar.py index 34ca03ef7a51..f3422bed1067 100644 --- a/openbb_platform/providers/nasdaq/openbb_nasdaq/models/economic_calendar.py +++ b/openbb_platform/providers/nasdaq/openbb_nasdaq/models/economic_calendar.py @@ -22,7 +22,7 @@ class NasdaqEconomicCalendarQueryParams(EconomicCalendarQueryParams): Source: https://www.nasdaq.com/market-activity/economic-calendar """ - __json_schema_extra__ = {"country": ["multiple_items_allowed"]} + __json_schema_extra__ = {"country": {"multiple_items_allowed": True}} country: Optional[str] = Field( default=None, diff --git a/openbb_platform/providers/nasdaq/openbb_nasdaq/models/historical_dividends.py b/openbb_platform/providers/nasdaq/openbb_nasdaq/models/historical_dividends.py index 41dfde661d9b..e2efd476be06 100644 --- a/openbb_platform/providers/nasdaq/openbb_nasdaq/models/historical_dividends.py +++ b/openbb_platform/providers/nasdaq/openbb_nasdaq/models/historical_dividends.py @@ -24,7 +24,7 @@ class NasdaqHistoricalDividendsQueryParams(HistoricalDividendsQueryParams): """Nasdaq Historical Dividends Query Params.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class NasdaqHistoricalDividendsData(HistoricalDividendsData): diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/company_news.py b/openbb_platform/providers/polygon/openbb_polygon/models/company_news.py index b91e7f122391..d83207bc2a07 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/company_news.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/company_news.py @@ -20,7 +20,7 @@ class PolygonCompanyNewsQueryParams(CompanyNewsQueryParams): Source: https://polygon.io/docs/stocks/get_v2_reference_news """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} __alias_dict__ = { "symbol": "ticker", "start_date": "published_utc.gte", diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py index dc9bb95fe2b0..18ea66a3f61c 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py @@ -39,7 +39,7 @@ class PolygonCryptoHistoricalQueryParams(CryptoHistoricalQueryParams): Source: https://polygon.io/docs/crypto/get_v2_aggs_ticker__cryptoticker__range__multiplier___timespan___from___to """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: str = Field( default="1d", diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py index 9a4edcb98b46..9ccac0616fff 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py @@ -39,7 +39,7 @@ class PolygonCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams): Source: https://polygon.io/docs/forex/get_v2_aggs_ticker__forexticker__range__multiplier___timespan___from___to """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: str = Field( default="1d", diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_snapshots.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_snapshots.py index 2ac7c3280e54..0815d097ccc8 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_snapshots.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_snapshots.py @@ -23,7 +23,7 @@ class PolygonCurrencySnapshotsQueryParams(CurrencySnapshotsQueryParams): Source: https://polygon.io/docs/forex/get_v2_snapshot_locale_global_markets_forex_tickers """ - __json_schema_extra__ = {"base": ["multiple_items_allowed"]} + __json_schema_extra__ = {"base": {"multiple_items_allowed": True}} class PolygonCurrencySnapshotsData(CurrencySnapshotsData): @@ -115,9 +115,9 @@ async def aextract_data( api_key = credentials.get("polygon_api_key") if credentials else "" url = f"https://api.polygon.io/v2/snapshot/locale/global/markets/forex/tickers?apiKey={api_key}" results = await amake_request(url, **kwargs) - if results.get("status") != "OK": - raise RuntimeError(f"Error: {results.get('status')}") - return results.get("tickers", []) + if results.get("status") != "OK": # type: ignore[union-attr] + raise RuntimeError(f"Error: {results.get('status')}") # type: ignore[union-attr] + return results.get("tickers", []) # type: ignore[union-attr] @staticmethod def transform_data( # pylint: disable=too-many-locals, too-many-statements @@ -129,7 +129,7 @@ def transform_data( # pylint: disable=too-many-locals, too-many-statements if not data: raise EmptyDataError("No data returned.") counter_currencies = ( - query.counter_currencies.upper().split(",") + query.counter_currencies.upper().split(",") # type: ignore[union-attr] if query.counter_currencies else [] ) diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py index de818d61bfe7..ee30969dfb93 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py @@ -40,7 +40,7 @@ class PolygonEquityHistoricalQueryParams(EquityHistoricalQueryParams): Source: https://polygon.io/docs/stocks/getting-started """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: str = Field( default="1d", diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py index 74fa010e8416..77bdf95a4770 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py +++ b/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py @@ -37,7 +37,7 @@ class PolygonIndexHistoricalQueryParams(IndexHistoricalQueryParams): Source: https://polygon.io/docs/indices/getting-started """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: str = Field( default="1d", diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/company_news.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/company_news.py index c11e12f424da..a9aa3545f2c6 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/models/company_news.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/company_news.py @@ -27,7 +27,7 @@ class TiingoCompanyNewsQueryParams(CompanyNewsQueryParams): "start_date": "startDate", "end_date": "endDate", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} offset: Optional[int] = Field( default=0, description="Page offset, used in conjunction with limit." diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py index bd70bab32cd6..0df0e092c2f3 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py @@ -35,7 +35,7 @@ class TiingoCryptoHistoricalQueryParams(CryptoHistoricalQueryParams): "end_date": "endDate", "interval": "resampleFreq", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") @@ -125,7 +125,7 @@ async def aextract_data( query_str = get_querystring( query.model_dump(by_alias=False), ["tickers", "resampleFreq"] ) - results = [] + results: List[dict] = [] async def callback(response: ClientResponse, _: Any) -> List[Dict]: result = await response.json() diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py index aa0387cfd70d..537db364cd4f 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py @@ -35,7 +35,7 @@ class TiingoCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams): "end_date": "endDate", "interval": "resampleFreq", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") @@ -106,7 +106,7 @@ async def aextract_data( query_str = get_querystring( query.model_dump(by_alias=False), ["tickers", "resampleFreq"] ) - results = [] + results: List[dict] = [] async def callback(response: ClientResponse, _: Any) -> List[Dict]: result = await response.json() diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py index 401f1f14c011..0af3a97606df 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py @@ -36,7 +36,7 @@ class TiingoEquityHistoricalQueryParams(EquityHistoricalQueryParams): "start_date": "startDate", "end_date": "endDate", } - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1d", "1W", "1M", "1Y"] = Field( default="1d", description=QUERY_DESCRIPTIONS.get("interval", "") @@ -142,7 +142,7 @@ async def aextract_data( async def callback(response: ClientResponse, _: Any) -> List[Dict]: data = await response.json() symbol = response.url.parts[-2] - results = [] + results: List[dict] = [] if not data: _warn(f"No data found the the symbol: {symbol}") return results diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/company_news.py b/openbb_platform/providers/tmx/openbb_tmx/models/company_news.py index cc8fd504cdc4..b8d8664477f8 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/company_news.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/company_news.py @@ -20,7 +20,7 @@ class TmxCompanyNewsQueryParams(CompanyNewsQueryParams): """TMX Stock News query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} page: Optional[int] = Field( default=1, description="The page number to start from. Use with limit." diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py b/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py index 1e13cb46e2dc..ca20de58589a 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/equity_historical.py @@ -44,7 +44,7 @@ class TmxEquityHistoricalQueryParams(EquityHistoricalQueryParams): source: https://money.tmx.com """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Union[ Literal["1m", "2m", "5m", "15m", "30m", "60m", "1h", "1d", "1W", "1M"], str, int diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/equity_profile.py b/openbb_platform/providers/tmx/openbb_tmx/models/equity_profile.py index ddce1445ef71..de58b0daeb21 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/equity_profile.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/equity_profile.py @@ -18,7 +18,7 @@ class TmxEquityProfileQueryParams(EquityInfoQueryParams): """TMX Equity Profile query params.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class TmxEquityProfileData(EquityInfoData): diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py b/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py index 17392971948a..cc6034e97348 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/equity_quote.py @@ -28,7 +28,7 @@ class TmxEquityQuoteQueryParams(EquityQuoteQueryParams): """TMX Equity Profile query params.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class TmxEquityQuoteData(EquityQuoteData): diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/etf_countries.py b/openbb_platform/providers/tmx/openbb_tmx/models/etf_countries.py index 008b0d47103f..c135d804732f 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/etf_countries.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/etf_countries.py @@ -20,7 +20,7 @@ class TmxEtfCountriesQueryParams(EtfCountriesQueryParams): """TMX ETF Countries Query Params""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} use_cache: bool = Field( default=True, diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py b/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py index ea5963ecb780..05bcee5f8988 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/etf_info.py @@ -16,7 +16,7 @@ class TmxEtfInfoQueryParams(EtfInfoQueryParams): """TMX ETF Info Query Params""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} use_cache: bool = Field( default=True, diff --git a/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py b/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py index 4d304d6fbb0f..bfc2ed32b262 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py +++ b/openbb_platform/providers/tmx/openbb_tmx/models/price_target_consensus.py @@ -18,7 +18,7 @@ class TmxPriceTargetConsensusQueryParams(PriceTargetConsensusQueryParams): """TMX Price Target Consensus Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} @field_validator("symbol", mode="before", check_fields=False) @classmethod diff --git a/openbb_platform/providers/tradier/openbb_tradier/models/equity_historical.py b/openbb_platform/providers/tradier/openbb_tradier/models/equity_historical.py index eed0d09d93a1..32b5bc1c7a6b 100644 --- a/openbb_platform/providers/tradier/openbb_tradier/models/equity_historical.py +++ b/openbb_platform/providers/tradier/openbb_tradier/models/equity_historical.py @@ -26,7 +26,7 @@ class TradierEquityHistoricalQueryParams(EquityHistoricalQueryParams): """Tradier Equity Historical Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal["1m", "5m", "15m", "1d", "1W", "1M"] = Field( description=QUERY_DESCRIPTIONS.get("interval", ""), diff --git a/openbb_platform/providers/tradier/openbb_tradier/models/equity_quote.py b/openbb_platform/providers/tradier/openbb_tradier/models/equity_quote.py index d3a2abef9fa6..88829f5faaa2 100644 --- a/openbb_platform/providers/tradier/openbb_tradier/models/equity_quote.py +++ b/openbb_platform/providers/tradier/openbb_tradier/models/equity_quote.py @@ -24,7 +24,7 @@ class TradierEquityQuoteQueryParams(EquityQuoteQueryParams): """Tradier Equity Quote Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class TradierEquityQuoteData(EquityQuoteData): diff --git a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py index ec3d2ffac08d..25a2a0457986 100644 --- a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py +++ b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py @@ -41,7 +41,7 @@ class TEEconomicCalendarQueryParams(EconomicCalendarQueryParams): Source: https://docs.tradingeconomics.com/economic_calendar/ """ - __json_schema_extra__ = {"country": ["multiple_items_allowed"]} + __json_schema_extra__ = {"country": {"multiple_items_allowed": True}} # TODO: Probably want to figure out the list we can use. country: Optional[str] = Field(default=None, description="Country of the event.") diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/company_news.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/company_news.py index 29209ebd5b43..a313f63ff319 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/company_news.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/company_news.py @@ -21,7 +21,7 @@ class YFinanceCompanyNewsQueryParams(CompanyNewsQueryParams): Source: https://finance.yahoo.com/news/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceCompanyNewsData(CompanyNewsData): diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py index e6958bcf5cbf..00ca5fd7b0ee 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py @@ -26,7 +26,7 @@ class YFinanceCryptoHistoricalQueryParams(CryptoHistoricalQueryParams): Source: https://finance.yahoo.com/crypto/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal[ "1m", diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py index 1c93f165b1e7..af4d32791504 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py @@ -25,7 +25,7 @@ class YFinanceCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams): Source: https://finance.yahoo.com/currencies/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal[ "1m", diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py index bf9dceecdb50..c7e5a2239db6 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py @@ -27,7 +27,7 @@ class YFinanceEquityHistoricalQueryParams(EquityHistoricalQueryParams): Source: https://finance.yahoo.com/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal[ "1m", diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py index d74ffc2e352d..9f5aab829e74 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_profile.py @@ -24,7 +24,7 @@ class YFinanceEquityProfileQueryParams(EquityInfoQueryParams): """YFinance Equity Profile Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceEquityProfileData(EquityInfoData): diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_quote.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_quote.py index a8a88b96e6c4..0e704cb2b5ec 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_quote.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_quote.py @@ -19,7 +19,7 @@ class YFinanceEquityQuoteQueryParams(EquityQuoteQueryParams): """YFinance Equity Quote Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceEquityQuoteData(EquityQuoteData): diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py index 639b01e6aaa4..02eabd1304ca 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/etf_info.py @@ -21,7 +21,7 @@ class YFinanceEtfInfoQueryParams(EtfInfoQueryParams): """YFinance ETF Info Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceEtfInfoData(EtfInfoData): diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py index 55637fde0b72..f7715d2dcd66 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py @@ -26,7 +26,7 @@ class YFinanceFuturesHistoricalQueryParams(FuturesHistoricalQueryParams): Source: https://finance.yahoo.com/crypto/ """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal[ "1m", diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py index ea1ea0d9fbb6..187ec915f7ba 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py @@ -29,7 +29,7 @@ class YFinanceIndexHistoricalQueryParams(IndexHistoricalQueryParams): Source: https://finance.yahoo.com/world-indices """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Literal[ "1m", diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py index 3dbff8487aa6..a1617c3ece46 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/key_metrics.py @@ -19,7 +19,7 @@ class YFinanceKeyMetricsQueryParams(KeyMetricsQueryParams): """YFinance Key Metrics Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceKeyMetricsData(KeyMetricsData): diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/market_indices.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/market_indices.py index 163856a5cd3e..461977499827 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/market_indices.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/market_indices.py @@ -27,7 +27,7 @@ class YFinanceMarketIndicesQueryParams(MarketIndicesQueryParams): Source: https://finance.yahoo.com/world-indices """ - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} interval: Optional[INTERVALS] = Field(default="1d", description="Data granularity.") period: Optional[PERIODS] = Field( @@ -61,7 +61,7 @@ def transform_query(params: Dict[str, Any]) -> YFinanceMarketIndicesQueryParams: if params.get("end_date") is None: transformed_params["end_date"] = now - tickers = params.get("symbol").lower().split(",") + tickers = params.get("symbol", "").lower().split(",") new_tickers = [] for ticker in tickers: @@ -123,7 +123,7 @@ def extract_data( data = data[ (data.index >= to_datetime(query.start_date)) - & (data.index <= to_datetime(query.end_date + timedelta(days=days))) + & (data.index <= to_datetime(query.end_date + timedelta(days=days))) # type: ignore[operator] ] data.reset_index(inplace=True) diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/price_target_consensus.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/price_target_consensus.py index 15d628580fd9..3ee2e7d8f37c 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/price_target_consensus.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/price_target_consensus.py @@ -19,7 +19,7 @@ class YFinancePriceTargetConsensusQueryParams(PriceTargetConsensusQueryParams): """YFinance Price Target Consensus Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} @field_validator("symbol", mode="before", check_fields=False) @classmethod diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py index 11a789596daf..7261f4808167 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/share_statistics.py @@ -23,7 +23,7 @@ class YFinanceShareStatisticsQueryParams(ShareStatisticsQueryParams): """YFinance Share Statistics Query.""" - __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]} + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} class YFinanceShareStatisticsData(ShareStatisticsData): diff --git a/website/generate_platform_v4_markdown.py b/website/generate_platform_v4_markdown.py index 083d14e0a3ee..4f6111140fc0 100644 --- a/website/generate_platform_v4_markdown.py +++ b/website/generate_platform_v4_markdown.py @@ -5,7 +5,7 @@ import shutil import subprocess from pathlib import Path -from typing import Dict, List +from typing import Dict, List, Optional from openbb_core.provider import standard_models from poetry.core.constraints.version import Version, VersionConstraint, parse_constraint @@ -141,7 +141,7 @@ def create_reference_markdown_intro( def create_reference_markdown_tabular_section( - parameters: Dict[str, List[Dict[str, str]]], heading: str + parameters: Dict[str, List[Dict[str, Optional[str]]]], heading: str ) -> str: """Create the tabular section for the markdown file. @@ -158,45 +158,41 @@ def create_reference_markdown_tabular_section( Tabular section for the markdown file """ - standard_params_list = [] tables_list = [] # params_list is a list of dictionaries containing the # information for all the parameters of the provider. for provider, params_list in parameters.items(): - # Exclude the standard parameters from the table - filtered_params = [ - {k: v for k, v in params.items() if k != "standard"} - for params in params_list - ] + + if provider != "standard": + result = {v.get("name"): v for v in parameters["standard"]} + provider_params = {v.get("name"): v for v in params_list} + result.update(provider_params) + params = [{**{"name": k}, **v} for k, v in result.items()] + else: + params = params_list # Exclude default and optional columns in the Data section - if heading == "Data": - filtered_params = [ - {k: v for k, v in params.items() if k not in ["default", "optional"]} - for params in filtered_params + filtered = ( + [ + {k: v for k, v in p.items() if k not in ["default", "optional"]} + for p in params ] - - if provider == "standard": - standard_params_list = filtered_params - else: - filtered_params = standard_params_list + filtered_params + if heading == "Data" + else params + ) # Parameter information for every provider is extracted from the dictionary # and joined to form a row of the table. # A `|` is added at the start and end of the row to create the table cell. - params_table_rows = [ - f"| {' | '.join(map(str, params.values()))} |" for params in filtered_params - ] - # All rows are joined to form the table. - params_table_rows_str = "\n".join(params_table_rows) + rows = "\n".join([f"| {' | '.join(map(str, p.values()))} |" for p in filtered]) if heading == "Parameters": tables_list.append( f"\n\n\n" "| Name | Type | Description | Default | Optional |\n" "| ---- | ---- | ----------- | ------- | -------- |\n" - f"{params_table_rows_str}\n" + f"{rows}\n" "\n" ) elif heading == "Data": @@ -204,7 +200,7 @@ def create_reference_markdown_tabular_section( f"\n\n\n" "| Name | Type | Description |\n" "| ---- | ---- | ----------- |\n" - f"{params_table_rows_str}\n" + f"{rows}\n" "\n" ) From 9bdc0f140744a6c58ae0695b60abcc332028c219 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Thu, 9 May 2024 12:57:06 -0700 Subject: [PATCH 13/44] fix fmp (#6383) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../openbb_fmp/models/crypto_historical.py | 2 +- .../openbb_fmp/models/currency_historical.py | 5 +-- .../test_fmp_crypto_historical_fetcher.yaml | 4 +-- .../test_fmp_currency_historical_fetcher.yaml | 31 ++++++++++--------- 4 files changed, 20 insertions(+), 22 deletions(-) diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py index ad528255c0df..9b94a92727bf 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py @@ -100,7 +100,7 @@ def get_url_params(symbol: str) -> str: url_params = f"{symbol}?{query_str}&apikey={api_key}" url = f"{base_url}/historical-chart/{interval}/{url_params}" if interval == "1day": - url = f"{base_url}/historical-price-full/crypto/{url_params}" + url = f"{base_url}/historical-price-full/{url_params}" return url symbols = query.symbol.split(",") diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py index 697c3d0395db..58565d1edeb4 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py @@ -98,7 +98,7 @@ def get_url_params(symbol: str) -> str: url_params = f"{symbol}?{query_str}&apikey={api_key}" url = f"{base_url}/historical-chart/{interval}/{url_params}" if interval == "1day": - url = f"{base_url}/historical-price-full/forex/{url_params}" + url = f"{base_url}/historical-price-full/{url_params}" return url symbols = query.symbol.split(",") @@ -108,11 +108,8 @@ def get_url_params(symbol: str) -> str: async def get_one(symbol): """Get data for one symbol.""" - url = get_url_params(symbol) - data = [] - response = await amake_request(url, **kwargs) if isinstance(response, dict) and response.get("Error Message"): diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml index 7d0757a15903..bb4feb0994a8 100644 --- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml +++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml @@ -9,7 +9,7 @@ interactions: Connection: - keep-alive method: GET - uri: https://financialmodelingprep.com/api/v3/historical-price-full/crypto/BTCUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10 + uri: https://financialmodelingprep.com/api/v3/historical-price-full/BTCUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10 response: body: string: !!binary | @@ -48,7 +48,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Date: - - Thu, 29 Feb 2024 04:42:50 GMT + - Thu, 09 May 2024 15:33:03 GMT Etag: - W/"ee3-iGBRI0WlQUT/ED3Q3GcS73lQbMw" Server: diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml index 756dd1d34608..4b14b56c092d 100644 --- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml +++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml @@ -9,22 +9,23 @@ interactions: Connection: - keep-alive method: GET - uri: https://financialmodelingprep.com/api/v3/historical-price-full/forex/EURUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10 + uri: https://financialmodelingprep.com/api/v3/historical-price-full/EURUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10 response: body: string: !!binary | - H4sIAAAAAAAAA5WWPW/bMBCG9/wKwbNt3PFbWdsuXVq0TZeig2ILsQvbCvwVBEH+eynWFY/KSWY8 - eLj3fBQfv3rJl5uimByet/fNZnJbTD7dfbv7/nEybaur9eHY7NeLqlV++UpRvIRvry2rY932CxBy - BjhDCL8JWvNY77yGc7DSia68Wj+sLmVrZFfeNE+XqlBdcbFpDvWlbLTu6tXyzwciSYmu087N5rQN - igOHcYHTzv/qdDjWy58DHYtVtXto6zAHELYvfK33i3p3DLrQSkT9/FQ9Xh4l7qe6rwPKz9XuVO2f - C4RpIeSkN/TLud7/WG+7Vdu5oeN1Ok4aSp60iJQIaV1ypJEFLV3sTUEbbWT8IzvQon3suCwDuteR - gAbtegIFDVqBQmXexxrKDNb/R+fhdhxuY4hZCW4TyXa0Ddk/pS2GbU0kAlsLG7fOwk46EtgWsCdQ - 2EZb8i/lkXYZpMPcPMyGxaw4yh4+Q1mx6UF7U8pa+A+DeZQwDxfHjIymxMg+j63JYBvm5rHVHFst - /MuSCVc5EXsTunFnvcQAI+MOiYmtAxg3cdJBOaMaMTHOJZfLMT/eUtbXKaPMDGXF2hd0XJ8glgxi - jZK4iNoUhxhrZRwXFOiV0eOv19ExnrW+cm/yOkL2DbY0louKMdDqCuiwbhicB1uyflY6bonC1swJ - qAfSAoYy2VhLTs3IWpSqjKM41mlHkhu67Kc1DQ7t3673WlpetzSEuXmgBetqS040AtoxZ59G3tRq - 8OyDkty/ImdpaJ5wnNOOxNMoccTTOGdvdGOYRYahMfc+h+x9zt9DGciWu1/QF5Y61kTb9c1MpI6x - 9XeiUcRpQ5oawvTzJEkNobTlII8dgpgBGcLgf5z99++b178DE4NG0AwAAA== + H4sIAAAAAAAAA42WTW/bMAyG7/0VRs5JIerL0q7bLrts2NZdhh3cxGgyJHGRjxZF0f8+WUtNSmEc + 5ZADSVPWw1ev9XpTVZP9y+a+W08+VJPPd9/vfnyaTPvocrU/dLvVvOkzv0Okql7jf8gtmkPb10sh + 1UzADER8Jua6x3YbcnAraiX9EF6uHpancG3VEF53z6eoNHqIztfdvj3Fja2HeLP4+/FC6qlbHzd9 + QjpwHuPHbXjouD+0i18XKubLZvvQx8WtCPtxWeJbu5u320PMSwm1wSWfm8fTm+gaH1s3922k+aXZ + HpvdSwViWkk1yfp+fWp3P1ebYeG+dax4m47DFp6FLckrENjGI1aEDYCTobDpxDLYNDXAVtpasGOw + s4oEtjAwAlvo2mgh8PUJb0UUlOMWvgD3e/My4o4jbpWXHHErcLsDcassCocSp2PLiNMUEjdGezFK + PK1IiDuXj4ISd0rW5EQNuK3HOZ3jdgW4Y+cy1pZlrVEGiNpaHACS1qyP0NqUs5Hhdw4aQ5yF8Hhh + zDwgYESORMwjbG0B29i3jK3h2BoJLFxNLO0drna8cSRnIcWbpIhx+HAkRmWcVlDOAPVl0HAbzI0M + G0GbWpKTecbaXGcNsXUZa83qWAD3SbQKGJc2oFnYycByLZMUgV0Lj8RY2EnFAHsWD68wWQZph4Lw + iUE3JrRtTfZ0RltfoR1X7luX0VassjW5IFDa5LuDtLXAbVBp05Fl0qYppO2MIK042mlFYiHG5N5C + PcRIpciSCNuNObS6rmwRO5exlqyyrWZZO8WxBs+adDKwTNmau+z1JAHVeYE15Po96QtG/HoWfCR4 + IHfbs0Jh+Jy2LFA2xN5luIHF7T1r2p677lnt2ctHMrNM2jQ14A4o/aiy04LURhTpyNiIklpxrm1r + N3bZgwLaIvb+Tzv8/7l5+wf35VDF+AwAAA== headers: Access-Control-Allow-Credentials: - 'true' @@ -44,9 +45,9 @@ interactions: Content-Type: - application/json; charset=utf-8 Date: - - Thu, 29 Feb 2024 04:42:50 GMT + - Thu, 09 May 2024 15:33:04 GMT Etag: - - W/"cd0-Rv/ywzhqPUdb7KJ/ZDpUXIC8K1A" + - W/"cf8-QiT4ARSPwS2WpuJ8xk9gvh9vqrg" Server: - nginx/1.18.0 (Ubuntu) Transfer-Encoding: From 83476ada465dbb3fd249922859ef11621a3e313e Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Thu, 9 May 2024 23:55:54 +0100 Subject: [PATCH 14/44] [Feature] Update chart creation so it doesn't break the command execution (#6382) * chart execution to not break the whole call * pylint: disable=broad-exception-caught --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> --- .../core/openbb_core/app/command_runner.py | 58 +++++++++++-------- 1 file changed, 33 insertions(+), 25 deletions(-) diff --git a/openbb_platform/core/openbb_core/app/command_runner.py b/openbb_platform/core/openbb_core/app/command_runner.py index 4d9985a2172c..cf74f75c87ac 100644 --- a/openbb_platform/core/openbb_core/app/command_runner.py +++ b/openbb_platform/core/openbb_core/app/command_runner.py @@ -304,31 +304,38 @@ def _chart( **kwargs, ) -> None: """Create a chart from the command output.""" - if "charting" not in obbject.accessors: - raise OpenBBError( - "Charting is not installed. Please install `openbb-charting`." - ) - chart_params = {} - extra_params = kwargs.get("extra_params", {}) - - if hasattr(extra_params, "__dict__") and hasattr(extra_params, "chart_params"): - chart_params = kwargs["extra_params"].__dict__.get("chart_params", {}) - elif isinstance(extra_params, dict) and "chart_params" in extra_params: - chart_params = kwargs["extra_params"].get("chart_params", {}) - - if "chart_params" in kwargs and kwargs["chart_params"] is not None: - chart_params.update(kwargs.pop("chart_params", {})) - - if ( - "kwargs" in kwargs - and "chart_params" in kwargs["kwargs"] - and kwargs["kwargs"].get("chart_params") is not None - ): - chart_params.update(kwargs.pop("kwargs", {}).get("chart_params", {})) - - if chart_params: - kwargs.update(chart_params) - obbject.charting.show(render=False, **kwargs) + try: + if "charting" not in obbject.accessors: + raise OpenBBError( + "Charting is not installed. Please install `openbb-charting`." + ) + chart_params = {} + extra_params = kwargs.get("extra_params", {}) + + if hasattr(extra_params, "__dict__") and hasattr( + extra_params, "chart_params" + ): + chart_params = kwargs["extra_params"].__dict__.get("chart_params", {}) + elif isinstance(extra_params, dict) and "chart_params" in extra_params: + chart_params = kwargs["extra_params"].get("chart_params", {}) + + if "chart_params" in kwargs and kwargs["chart_params"] is not None: + chart_params.update(kwargs.pop("chart_params", {})) + + if ( + "kwargs" in kwargs + and "chart_params" in kwargs["kwargs"] + and kwargs["kwargs"].get("chart_params") is not None + ): + chart_params.update(kwargs.pop("kwargs", {}).get("chart_params", {})) + + if chart_params: + kwargs.update(chart_params) + obbject.charting.show(render=False, **kwargs) + except Exception as e: # pylint: disable=broad-exception-caught + if Env().DEBUG_MODE: + raise OpenBBError(e) from e + warn(str(e), OpenBBWarning) # pylint: disable=R0913, R0914 @classmethod @@ -449,6 +456,7 @@ async def run( except Exception as e: if Env().DEBUG_MODE: raise OpenBBError(e) from e + warn(str(e), OpenBBWarning) return obbject From 5bd4ae0856a228df1af47f87cc1d15c799e53e72 Mon Sep 17 00:00:00 2001 From: Disorder AA Date: Fri, 10 May 2024 13:17:15 +0200 Subject: [PATCH 15/44] [Docs] Upgrade Docusaurus to v3 (#6386) * da3: minor updates * da3: upgrade react 18 * da3: fix md content * da3: upgrade docusaurus 3, fix math in tables * da3: fix DocSearch * put search back * da3: fix details / summary --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: andrewkenreich Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> --- website/{babel.config.js => babel.config.cjs} | 0 website/content/bot/faqs.md | 68 +- website/content/bot/usage/telegram.md | 47 +- website/content/excel/data-connectors.md | 15 +- .../content/excel/getting-started/basics.md | 30 +- website/content/excel/help.md | 43 +- .../how-to/add_data_provider_extension.md | 70 +- .../add_endpoint_to_existing_provider.md | 155 +- website/content/platform/development/tests.md | 39 +- .../content/platform/faqs/data_providers.md | 37 +- .../sdk/data-available/crypto/discovery.md | 139 +- .../sdk/data-available/crypto/index.md | 29 +- website/content/sdk/data-available/etf.md | 122 +- .../content/sdk/faqs/bugs_support_feedback.md | 33 +- website/content/sdk/faqs/data_sources.md | 37 +- website/content/sdk/faqs/developer_issues.md | 48 +- website/content/sdk/faqs/general_operation.md | 58 +- website/content/sdk/faqs/import_errors.md | 40 +- .../content/sdk/faqs/installation_updates.md | 44 +- website/content/sdk/reference/alt/oss/ross.md | 49 +- .../content/sdk/reference/alt/oss/search.md | 35 +- website/content/sdk/reference/alt/oss/top.md | 65 +- .../binance_available_quotes_for_each_coin.md | 26 +- .../sdk/reference/crypto/dd/trading_pairs.md | 70 +- .../sdk/reference/crypto/defi/anchor_data.md | 54 +- .../sdk/reference/crypto/defi/aterra.md | 48 +- .../sdk/reference/crypto/disc/gainers.md | 52 +- .../sdk/reference/crypto/disc/losers.md | 46 +- website/content/sdk/reference/crypto/ov/cr.md | 48 +- .../sdk/reference/crypto/ov/crypto_hacks.md | 46 +- .../reference/portfolio/po/blacklitterman.md | 70 +- .../content/sdk/reference/portfolio/po/hcp.md | 75 - .../sdk/reference/portfolio/po/hcp.mdx | 76 + .../sdk/reference/portfolio/po/herc.md | 95 - .../sdk/reference/portfolio/po/herc.mdx | 97 + .../content/sdk/reference/portfolio/po/hrp.md | 96 - .../sdk/reference/portfolio/po/hrp.mdx | 98 + .../content/sdk/reference/portfolio/po/nco.md | 97 - .../sdk/reference/portfolio/po/nco.mdx | 99 + website/content/sdk/usage/api-keys.md | 85 +- .../terminal/faqs/bugs_support_feedback.md | 31 +- website/content/terminal/faqs/data_sources.md | 35 +- .../content/terminal/faqs/developer_issues.md | 56 +- .../terminal/faqs/general_operation.md | 57 +- .../terminal/faqs/installation_updates.md | 42 +- website/content/terminal/faqs/launching.md | 45 +- .../content/terminal/installation/macos.md | 43 +- .../content/terminal/installation/source.md | 75 +- .../content/terminal/installation/windows.md | 18 +- .../terminal/reference/alt/oss/rossidx.md | 45 +- .../content/terminal/reference/alt/oss/tr.md | 29 +- .../terminal/reference/crypto/disc/dapps.md | 43 +- .../terminal/reference/crypto/disc/dex.md | 31 +- .../terminal/reference/crypto/disc/gainers.md | 33 +- .../terminal/reference/crypto/disc/games.md | 39 +- .../terminal/reference/crypto/disc/losers.md | 41 +- .../terminal/reference/crypto/disc/nft.md | 29 +- .../terminal/reference/crypto/ov/ch.md | 43 +- .../terminal/reference/crypto/ov/cr.md | 31 +- .../content/terminal/usage/data/api-keys.md | 87 +- .../usage/outputs/interactive-charts.md | 31 +- .../usage/outputs/interactive-tables.md | 33 +- website/docusaurus.config.js | 129 - website/docusaurus.config.ts | 105 + website/package-lock.json | 12109 ++++++++++------ website/package.json | 56 +- website/pnpm-lock.yaml | 9371 ------------ website/sidebars.js | 7 +- website/src/pages/index.tsx | 20 +- website/src/theme/CodeBlock/Content/String.js | 37 +- website/src/theme/ColorModeToggle/index.js | 20 +- .../theme/DocSidebarItem/Category/index.js | 28 +- website/src/theme/DocSidebarItem/index.js | 10 +- website/src/theme/Footer/index.js | 16 +- website/src/theme/Navbar/Content/index.js | 14 +- website/src/theme/Navbar/Layout/index.js | 40 +- website/src/theme/NotFound.js | 4 +- website/src/theme/SearchBar/index.js | 52 +- ...{tailwind.config.js => tailwind.config.ts} | 12 +- website/tsconfig.json | 2 +- website/yarn.lock | 8432 ----------- 81 files changed, 9385 insertions(+), 24477 deletions(-) rename website/{babel.config.js => babel.config.cjs} (100%) delete mode 100644 website/content/sdk/reference/portfolio/po/hcp.md create mode 100644 website/content/sdk/reference/portfolio/po/hcp.mdx delete mode 100644 website/content/sdk/reference/portfolio/po/herc.md create mode 100644 website/content/sdk/reference/portfolio/po/herc.mdx delete mode 100644 website/content/sdk/reference/portfolio/po/hrp.md create mode 100644 website/content/sdk/reference/portfolio/po/hrp.mdx delete mode 100644 website/content/sdk/reference/portfolio/po/nco.md create mode 100644 website/content/sdk/reference/portfolio/po/nco.mdx delete mode 100644 website/docusaurus.config.js create mode 100644 website/docusaurus.config.ts delete mode 100644 website/pnpm-lock.yaml rename website/{tailwind.config.js => tailwind.config.ts} (91%) delete mode 100644 website/yarn.lock diff --git a/website/babel.config.js b/website/babel.config.cjs similarity index 100% rename from website/babel.config.js rename to website/babel.config.cjs diff --git a/website/content/bot/faqs.md b/website/content/bot/faqs.md index ce75ebafd833..b4fb0ef4d0a5 100644 --- a/website/content/bot/faqs.md +++ b/website/content/bot/faqs.md @@ -1,79 +1,86 @@ --- title: FAQs sidebar_position: 5 -description: This page offers information about OpenBB Bot, covering topics such as +description: + This page offers information about OpenBB Bot, covering topics such as linking your OpenBB Bot account, trying an OpenBB Bot plan, automatic plan renewals, refunds, access on different platforms, individual and server plans, and troubleshooting issues with slash commands. keywords: -- OpenBB Bot -- OpenBB Bot account -- OpenBB plan -- billing cycle -- OpenBB Discord -- server settings -- integrations -- refunds -- subscription -- individual plan -- server plan -- slash commands + - OpenBB Bot + - OpenBB Bot account + - OpenBB plan + - billing cycle + - OpenBB Discord + - server settings + - integrations + - refunds + - subscription + - individual plan + - server plan + - slash commands --- -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; -
How Do I Link My OpenBB Bot Account? +
+How Do I Link My OpenBB Bot Account? After you signup for an OpenBB Bot plan you can link your accounts from here
-
Can I try an OpenBB Bot plan? +
+Can I try an OpenBB Bot plan? You can try a preview of any plan by just running commands on a server that has OpenBB Bot, like OpenBB Discord. We offer a limited amount of daily commands.
- -
Will my OpenBB Bot plan renew at the end of the billing cycle? +
+Will my OpenBB Bot plan renew at the end of the billing cycle? Yes, plans renew automatically at the end of the monthly and yearly billing cycles. You can cancel your plan at any time, before the end of the billing cycle, and it will not auto-renew anymore.
- -
Can I get a refund on my OpenBB Bot? +
+Can I get a refund on my OpenBB Bot? Since we offer a free command tier to try commands we don't offer refunds as you have had ample time to try the service and make a decision.
- -
If I sign up for OpenBB Bot do I get access on all platforms? +
+If I sign up for OpenBB Bot do I get access on all platforms? Yes! You will have access on Discord, and other platforms as we add support.
-
If I cancel OpenBB Bot subscription do I still have access? +
+If I cancel OpenBB Bot subscription do I still have access? No, you will lose your access but you get a credit on your account of the prorated amount until the end of your current billing cycle.
- -
What's the difference between an individual plan and server plan on OpenBB Bot? +
+What's the difference between an individual plan and server plan on OpenBB Bot? An individual plan gives your account access to OpenBB Bot while a server plan gives the whole server access. An individual plan carries more perks with it than a server plan, which you can find by clicking on the plan.
+
+I added the bot but still don't see slash commands, what do I do? -
I added the bot but still don't see slash commands, what do I do? - - + Just head to Server Settings → Integrations and then click ‘Manage’ next to an app, where you will behold a new, shiny, and dare we say dazzling, new surface. @@ -83,8 +90,11 @@ Just head to Server Settings → Integrations and then click ‘Manage There’s also a command-specific list, where you can make customized permissions for each command. +
    -
  • By default, these are all synced to the command permission at the top.
  • +
  • + By default, these are all synced to the command permission at the top. +
  • You can unsync an individual command to make further customizations.
diff --git a/website/content/bot/usage/telegram.md b/website/content/bot/usage/telegram.md index c36c5ccaf2e4..4b8a32f27e80 100644 --- a/website/content/bot/usage/telegram.md +++ b/website/content/bot/usage/telegram.md @@ -1,21 +1,22 @@ --- title: Telegram sidebar_position: 2 -description: A complete guide on how to use the OpenBB Telegram Bot for stock and +description: + A complete guide on how to use the OpenBB Telegram Bot for stock and crypto market exploration. Learn how to use slash commands, including /cd, /c3m, /flow, and /c for market insights. keywords: -- Telegram -- /cd command -- /c3m command -- /flow command -- /c command -- OpenBB Telegram Bot -- stock ticker -- crypto symbol -- market exploration -- using bots -- Telegram commands + - Telegram + - /cd command + - /c3m command + - /flow command + - /c command + - OpenBB Telegram Bot + - stock ticker + - crypto symbol + - market exploration + - using bots + - Telegram commands --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -24,7 +25,7 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; Now that you have added the bot to your Telegram server you can get started with running commands. -To use it, you need to type slash commands in the chat. A slash command starts with a / followed by a keyword and an optional argument. For example, ```/cd AAPL``` will show you the daily chart for Apple stock. +To use it, you need to type slash commands in the chat. A slash command starts with a / followed by a keyword and an optional argument. For example, `/cd AAPL` will show you the daily chart for Apple stock.
-
How do I select commands instead of typing? +
+How do I select commands instead of typing? + If you are On mobile press and hold to select the command. -On desktop press ```tab``` to select the command. -
+On desktop press `tab` to select the command. +
-To see all the available commands, you can type ```/help``` in the chat. This will show you a list of commands and their descriptions. You can also tap on any command to use it directly. Some of the most popular commands are: +To see all the available commands, you can type `/help` in the chat. This will show you a list of commands and their descriptions. You can also tap on any command to use it directly. Some of the most popular commands are: -- ```/cd AMD``` Shows the daily chart for a given stock ticker. -- ```/c3m AMD``` Shows the 3-month chart for a given stock ticker. -- ```/flow AMD``` Shows the recent options flow for the given stock ticker. -- ```/c DOGE``` Shows a chart for the crypto symbol provided. +- `/cd AMD` Shows the daily chart for a given stock ticker. +- `/c3m AMD` Shows the 3-month chart for a given stock ticker. +- `/flow AMD` Shows the recent options flow for the given stock ticker. +- `/c DOGE` Shows a chart for the crypto symbol provided. That's it! You're ready to use OpenBB Telegram Bot and explore the markets. Have fun! -Check out the Reference section for more commands or type ```/help``` in your chat to see what else we can do! +Check out the Reference section for more commands or type `/help` in your chat to see what else we can do! diff --git a/website/content/excel/data-connectors.md b/website/content/excel/data-connectors.md index 0ddb5197bfab..376c8aa47b0f 100644 --- a/website/content/excel/data-connectors.md +++ b/website/content/excel/data-connectors.md @@ -3,15 +3,16 @@ title: Data connectors sidebar_position: 3 description: Access your data connectors from OpenBB Terminal Pro inside OpenBB Add-in for Excel. keywords: -- Microsoft Excel -- Add-in -- Advanced -- Data connectors -- BYOD -- Bring your own data + - Microsoft Excel + - Add-in + - Advanced + - Data connectors + - BYOD + - Bring your own data --- + import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -48,7 +49,7 @@ The easiest way to pass optional parameters is to write them into cells and refe :::info -- Make sure your backend's CORS settings allow requests coming from . +- Make sure your backend's CORS settings allow requests coming from [https://excel.openbb.co](https://excel.openbb.co). - Requests via HTTP will be blocked by Excel. So if you are using the Add-in for Excel on Mac or Office on the web with Safari browser you need to run your backend via HTTPS. ::: diff --git a/website/content/excel/getting-started/basics.md b/website/content/excel/getting-started/basics.md index 64f8da4dc3f5..2a8a559f9a66 100644 --- a/website/content/excel/getting-started/basics.md +++ b/website/content/excel/getting-started/basics.md @@ -3,11 +3,11 @@ title: Basics sidebar_position: 2 description: This page provides an overview of the basics of the OpenBB add-in for Microsoft Excel. It covers the basic usage of the add-in and the available functions. keywords: -- Microsoft Excel -- Add-in -- Basics -- Examples -- Functions + - Microsoft Excel + - Add-in + - Basics + - Examples + - Functions --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -19,28 +19,28 @@ The OpenBB Add-in for Excel provides direct access to the OpenBB platform, where - `OBB.[MENU].[SUB_MENU].[COMMAND]` :::tip -Use the key to autocomplete the function name after typing `=OBB.` +Use the <TAB> key to autocomplete the function name after typing `=OBB.` ::: Examples: 1. Getting balance sheet data for a stock: - ```excel - =OBB.EQUITY.FUNDAMENTAL.BALANCE("AAPL") - ``` + ```excel + =OBB.EQUITY.FUNDAMENTAL.BALANCE("AAPL") + ``` 2. Getting the latest news for a stock: - ```excel - =OBB.NEWS.COMPANY("AAPL") - ``` + ```excel + =OBB.NEWS.COMPANY("AAPL") + ``` 3. Getting the earnings calendar: - ```excel - =OBB.EQUITY.CALENDAR.IPO(,"2023-11-20") - ``` + ```excel + =OBB.EQUITY.CALENDAR.IPO(,"2023-11-20") + ``` :::tip If you want to skip a parameter use comma (or semi-colon depending on your number separator) without any value. In example iii. we are skipping the first parameter (symbol). diff --git a/website/content/excel/help.md b/website/content/excel/help.md index 46171a7f168b..3d65bceefe5f 100644 --- a/website/content/excel/help.md +++ b/website/content/excel/help.md @@ -3,57 +3,56 @@ title: Help sidebar_position: 5 description: Help for OpenBB Add-in for Excel. keywords: -- Microsoft Excel -- Add-in -- Help + - Microsoft Excel + - Add-in + - Help --- - -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; -If you face specific issues while using the add-in and the solutions provided here don't resolve them, don't hesitate to reach out to us for further assistance. You can contact us through . +If you face specific issues while using the add-in and the solutions provided here don't resolve them, don't hesitate to reach out to us for further assistance. You can contact us through [support@openbb.finance](mailto:support@openbb.finance).
-Running an OBB. function returns '#VALUE!' +Running an OBB. function returns '#VALUE!' -* Make sure you are using the correct syntax for the function. You can find the correct syntax for each function [here](https://docs.openbb.co/excel/reference) -* If you have just opened your workbook and the OBB. function returns '#VALUE!', try recalculating the cell again - this is an ongoing issue with Excel add-ins +- Make sure you are using the correct syntax for the function. You can find the correct syntax for each function [here](https://docs.openbb.co/excel/reference) +- If you have just opened your workbook and the OBB. function returns '#VALUE!', try recalculating the cell again - this is an ongoing issue with Excel add-ins
-OBB. functions are not available after installing the add-in +OBB. functions are not available after installing the add-in -* Make sure OpenBB Add-in for Excel shows in the ribbon -* Go to **Insert** > **Get Add-ins** > **My Add-ins** > Click '...' when hovering OpenBB add-in > remove the add-in and install it again -* Restart your computer or manually [clear the Office cache](https://learn.microsoft.com/en-us/office/dev/add-ins/testing/clear-cache) +- Make sure OpenBB Add-in for Excel shows in the ribbon +- Go to **Insert** > **Get Add-ins** > **My Add-ins** > Click '...' when hovering OpenBB add-in > remove the add-in and install it again +- Restart your computer or manually [clear the Office cache](https://learn.microsoft.com/en-us/office/dev/add-ins/testing/clear-cache)
-Task pane displays "You don’t have permission to use this add-in. Contact your system administrator to request access." +Task pane displays "You don’t have permission to use this add-in. Contact your system administrator to request access." -* Make sure your account has the necessary permissions to use add-in -* Restart your computer or manually [clear the Office cache](https://learn.microsoft.com/en-us/office/dev/add-ins/testing/clear-cache) +- Make sure your account has the necessary permissions to use add-in +- Restart your computer or manually [clear the Office cache](https://learn.microsoft.com/en-us/office/dev/add-ins/testing/clear-cache)
-Editing a workbook in the browser and then on desktop app duplicates the 'OpenBB' tab in the ribbon +Editing a workbook in the browser and then on desktop app duplicates the 'OpenBB' tab in the ribbon This is a known Excel issue. Currently, there is no definitive fix for the problem, but there are workarounds you can apply to fix the file depending on your operating system: -* **Windows**: File > Info > Inspect Workbook > Check ‘Task Pane Add-ins’ > Click ‘OK’. This will scan your workbook and remove the stale add-in reference created by Excel in the browser -* **Mac**: rename your file from .xlsx to .zip > unzip it using WinZip for Mac (don’t use the default unzip tool, otherwise it won’t work) > look for webextensions folder and delete webextension1.xml > rename the file back to .xlsx +- **Windows**: File > Info > Inspect Workbook > Check ‘Task Pane Add-ins’ > Click ‘OK’. This will scan your workbook and remove the stale add-in reference created by Excel in the browser +- **Mac**: rename your file from .xlsx to .zip > unzip it using WinZip for Mac (don’t use the default unzip tool, otherwise it won’t work) > look for webextensions folder and delete webextension1.xml > rename the file back to .xlsx
-Cannot retrieve the data added to Terminal Pro through custom backend using OBB.BYOD +Cannot retrieve the data added to Terminal Pro through custom backend using OBB.BYOD -* Make sure your backend is running and accessible -* If you are using Mac or Safari make sure your backend is using HTTPS and has a valid SSL certificate +- Make sure your backend is running and accessible +- If you are using Mac or Safari make sure your backend is using HTTPS and has a valid SSL certificate
diff --git a/website/content/platform/development/how-to/add_data_provider_extension.md b/website/content/platform/development/how-to/add_data_provider_extension.md index f8d99af03322..a9ae9233ad07 100644 --- a/website/content/platform/development/how-to/add_data_provider_extension.md +++ b/website/content/platform/development/how-to/add_data_provider_extension.md @@ -3,25 +3,25 @@ title: How To Add Data Provider Extensions sidebar_position: 3 description: This guide outlines the process for adding a new data provider extension to the OpenBB Platform. keywords: -- OpenBB Platform -- Open source -- Python interface -- REST API -- contribution -- contributing -- documentation -- code -- provider -- data -- endpoint -- existing -- OpenBB extensions -- OpenBB provider -- standard model -- provider model -- how to -- new -- template + - OpenBB Platform + - Open source + - Python interface + - REST API + - contribution + - contributing + - documentation + - code + - provider + - data + - endpoint + - existing + - OpenBB extensions + - OpenBB provider + - standard model + - provider model + - how to + - new + - template --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -46,18 +46,18 @@ The structure of the folder will look something like this: ```md template/ ├── openbb_template/ -│ ├── models/ -│ │ ├── __init__.py -│ │ └── some_model.py -│ ├── utils/ -│ │ ├── __init__.py -│ │ └── helpers.py -│ ├── tests/ -│ │ ├── record/ -│ │ ├── __init__.py -│ │ └── test_template_fetchers.py -│ ├── __init__.py -├── __init__.py +│ ├── models/ +│ │ ├── **init**.py +│ │ └── some_model.py +│ ├── utils/ +│ │ ├── **init**.py +│ │ └── helpers.py +│ ├── tests/ +│ │ ├── record/ +│ │ ├── **init**.py +│ │ └── test_template_fetchers.py +│ ├── **init**.py +├── **init**.py ├── pyproject.toml └── README.md ``` @@ -99,9 +99,10 @@ The cookiecutter tool will get you most of the way there, but it still requires The `pyproject.toml` file defines the package itself. :::tip + - Before adding any dependency, ensure it aligns with the Platform's existing dependencies. - If possible, use loose versioning. -::: + ::: ``` [tool.poetry] @@ -124,7 +125,7 @@ build-backend = "poetry.core.masonry.api" template = "openbb_template:template_provider" ``` -The last line (poetry.plugins) maps to the provider defined in the __init__.py file. +The last line (poetry.plugins) maps to the provider defined in the **init**.py file. Additionally, for local extensions, you can add this line in the `LOCAL_DEPS` variable in the `dev_install.py` file, located in `~/OpenBBTerminal/openbb_platform/`: @@ -226,14 +227,13 @@ The new extension can be self-published on PyPI and hosted in an independent Git If not contributing directly to the OpenBB GitHub, we still want to know about your creation. Share it with us on social media, and add `openbb` as a topic tag in your GitHub repo. - ## Publish Extension To PyPI To publish your extension to PyPI, you'll need to have a PyPI account and a PyPI API token. ### Setup -Create an account and get an API token from +Create an account and get an API token from [https://pypi.org/manage/account/token/](https://pypi.org/manage/account/token/) Store the token with: diff --git a/website/content/platform/development/how-to/add_endpoint_to_existing_provider.md b/website/content/platform/development/how-to/add_endpoint_to_existing_provider.md index d4bd678b046b..37edf14843fd 100644 --- a/website/content/platform/development/how-to/add_endpoint_to_existing_provider.md +++ b/website/content/platform/development/how-to/add_endpoint_to_existing_provider.md @@ -3,25 +3,25 @@ title: How To Add A New Data Endpoint With An Existing Provider sidebar_position: 2 description: This guide outlines the process for adding a new endpoint to an existing data provider, that does not yet have a standard model. keywords: -- OpenBB Platform -- Open source -- Python interface -- REST API -- contribution -- contributing -- documentation -- code -- provider -- new endpoint -- fmp -- OpenBB extensions -- OpenBB provider -- standard model -- data model -- currency -- snapshot -- router -- how to + - OpenBB Platform + - Open source + - Python interface + - REST API + - contribution + - contributing + - documentation + - code + - provider + - new endpoint + - fmp + - OpenBB extensions + - OpenBB provider + - standard model + - data model + - currency + - snapshot + - router + - how to --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -53,8 +53,8 @@ Before getting started, get a few housekeeping items in order: - Clone the GitHub repo and navigate into the project's folder. - If you have already done this, update your local branch: - - `git fetch` - - `git pull origin develop` + - `git fetch` + - `git pull origin develop` - Install the OpenBB Platform in "editable" mode. - `cd openbb_platform` - `python dev_install.py -e` @@ -219,11 +219,11 @@ This can be a consideration for the data provider models to handle, and country ### Data Like `QueryParams`, we don't want to attempt to define every potential future field. We want a core foundation for others to build on. -We will define three fields as mandatory, "base_currency", "counter_currency", and "last_rate". This is enough to communicate our +We will define three fields as mandatory, "base_currency", "counter_currency", and "last_rate". This is enough to communicate our data parsing requirements for this endpoint: - Split the six-letter symbol as two symbols. -- If the provider only returns {"symbol": "price"}, it will need to coerced accordingly within the `transform_data` static method of the `Fetcher` class. +- If the provider only returns `{"symbol": "price"}`, it will need to coerced accordingly within the `transform_data` static method of the `Fetcher` class. ```python class CurrencySnapshotsData(Data): @@ -266,8 +266,8 @@ class CurrencySnapshotsData(Data): Combine the three code blocks above to make a complete standard model file, and then we have completed the first two tasks. - - [X] With clear objectives, define the requirements for inputs and outputs of this function. - - [X] Create a standard model that will be suitable for any provider to inherit from. +- [x] With clear objectives, define the requirements for inputs and outputs of this function. +- [x] Create a standard model that will be suitable for any provider to inherit from. ## Build Provider Models @@ -277,30 +277,30 @@ Sample output data from the source is pasted below, and we can see that there ar ```json [ - { - "symbol": "AEDAUD", - "name": "AED/AUD", - "price": 0.40401, - "changesPercentage": 0.3901, - "change": 0.0016, - "dayLow": 0.40211, - "dayHigh": 0.40535, - "yearHigh": 0.440948, - "yearLow": 0.356628, - "marketCap": null, - "priceAvg50": 0.39494148, - "priceAvg200": 0.40097216, - "volume": 0, - "avgVolume": 0, - "exchange": "FOREX", - "open": 0.40223, - "previousClose": 0.40244, - "eps": null, - "pe": null, - "earningsAnnouncement": null, - "sharesOutstanding": null, - "timestamp": 1677792573 - } + { + "symbol": "AEDAUD", + "name": "AED/AUD", + "price": 0.40401, + "changesPercentage": 0.3901, + "change": 0.0016, + "dayLow": 0.40211, + "dayHigh": 0.40535, + "yearHigh": 0.440948, + "yearLow": 0.356628, + "marketCap": null, + "priceAvg50": 0.39494148, + "priceAvg200": 0.40097216, + "volume": 0, + "avgVolume": 0, + "exchange": "FOREX", + "open": 0.40223, + "previousClose": 0.40244, + "eps": null, + "pe": null, + "earningsAnnouncement": null, + "sharesOutstanding": null, + "timestamp": 1677792573 + } ] ``` @@ -500,7 +500,7 @@ Next, open `~/OpenBBTerminal/openbb_platform/providers/fmp/openbb_fmp/__init__.p Step 3 is now done. -- [X] Catalogue parameters and returned fields from the specific source of data, then build the models and fetcher. +- [x] Catalogue parameters and returned fields from the specific source of data, then build the models and fetcher. ## Create Router Endpoint @@ -551,9 +551,8 @@ exit() Steps 4 and 5 are done! -- [X] Create a new router endpoint in the `openbb-currency` module. -- [X] Rebuild the Python interface and static assets. - +- [x] Create a new router endpoint in the `openbb-currency` module. +- [x] Rebuild the Python interface and static assets. ```python from openbb import obb @@ -561,16 +560,16 @@ from openbb import obb obb.currency.snapshots(base="xau,xag", counter_currencies=["usd", "gbp", "eur", "hkd"],quote_type="indirect").to_df() ``` -| base_currency | counter_currency | last_rate | open | high | low | volume | prev_close | change | change_percent | ma50 | ma200 | year_high | year_low | last_rate_timestamp | -|:----------------|:-------------------|------------:|-----------:|-----------:|-----------:|---------:|-------------:|---------:|-----------------:|-----------:|-----------:|------------:|-----------:|:----------------------| -| XAU | USD | 2092.76 | 2083.17 | 2092.8 | 2079.4 | 2246 | 2083 | 9.76 | 0.0046855 | 2030.83 | 1976.63 | 2084.35 | 1813.82 | 2024-03-04 06:16:12 | -| XAU | GBP | 1645.45 | 1644.1 | 1645.6 | 1640 | 643 | 1644 | 1.45 | 0.000881995 | 1603.92 | 1573.46 | 1652.15 | 1482.2 | 2024-03-04 05:45:11 | -| XAU | EUR | 1924 | 1921.5 | 1924 | 1917.15 | 1517 | 1921 | 3 | 0.0015617 | 1874.69 | 1826.4 | 1921.6 | 1719.35 | 2024-03-04 05:51:11 | -| XAU | HKD | 16341.8 | 16310 | 16341.9 | 16276.4 | 1665 | 16307 | 34.75 | 0.002131 | 15891.1 | 15452.8 | 16306.3 | 14238 | 2024-03-04 05:57:11 | -| XAG | USD | 23.299 | 23.1091 | 23.3062 | 23.0172 | 2074 | 23 | 0.299 | 0.013 | 22.7862 | 23.4349 | 26.035 | 20.005 | 2024-03-04 05:56:41 | -| XAG | GBP | 18.26 | 18.21 | 18.26 | 18.14 | 413 | 18 | 0.26 | 0.0144444 | 17.9988 | 18.5021 | 20.67 | 16.81 | 2024-03-04 05:24:10 | -| XAG | EUR | 21.36 | 21.32 | 21.37 | 21.2087 | 1079 | 21 | 0.36 | 0.0171429 | 21.0393 | 21.4906 | 23.64 | 18.97 | 2024-03-04 05:30:10 | -| XAG | HKD | 181.237 | 180.881 | 181.399 | 180.124 | 1596 | 180 | 1.237 | 0.0068722 | 178.342 | 181.815 | 204.411 | 157.209 | 2024-03-04 05:30:10 | +| base_currency | counter_currency | last_rate | open | high | low | volume | prev_close | change | change_percent | ma50 | ma200 | year_high | year_low | last_rate_timestamp | +| :------------ | :--------------- | --------: | ------: | ------: | ------: | -----: | ---------: | -----: | -------------: | ------: | ------: | --------: | -------: | :------------------ | +| XAU | USD | 2092.76 | 2083.17 | 2092.8 | 2079.4 | 2246 | 2083 | 9.76 | 0.0046855 | 2030.83 | 1976.63 | 2084.35 | 1813.82 | 2024-03-04 06:16:12 | +| XAU | GBP | 1645.45 | 1644.1 | 1645.6 | 1640 | 643 | 1644 | 1.45 | 0.000881995 | 1603.92 | 1573.46 | 1652.15 | 1482.2 | 2024-03-04 05:45:11 | +| XAU | EUR | 1924 | 1921.5 | 1924 | 1917.15 | 1517 | 1921 | 3 | 0.0015617 | 1874.69 | 1826.4 | 1921.6 | 1719.35 | 2024-03-04 05:51:11 | +| XAU | HKD | 16341.8 | 16310 | 16341.9 | 16276.4 | 1665 | 16307 | 34.75 | 0.002131 | 15891.1 | 15452.8 | 16306.3 | 14238 | 2024-03-04 05:57:11 | +| XAG | USD | 23.299 | 23.1091 | 23.3062 | 23.0172 | 2074 | 23 | 0.299 | 0.013 | 22.7862 | 23.4349 | 26.035 | 20.005 | 2024-03-04 05:56:41 | +| XAG | GBP | 18.26 | 18.21 | 18.26 | 18.14 | 413 | 18 | 0.26 | 0.0144444 | 17.9988 | 18.5021 | 20.67 | 16.81 | 2024-03-04 05:24:10 | +| XAG | EUR | 21.36 | 21.32 | 21.37 | 21.2087 | 1079 | 21 | 0.36 | 0.0171429 | 21.0393 | 21.4906 | 23.64 | 18.97 | 2024-03-04 05:30:10 | +| XAG | HKD | 181.237 | 180.881 | 181.399 | 180.124 | 1596 | 180 | 1.237 | 0.0068722 | 178.342 | 181.815 | 204.411 | 157.209 | 2024-03-04 05:30:10 | ## Write Tests @@ -700,10 +699,10 @@ def test_currency_snapshots(params, obb): Now run `pytest` for both of these files. - Step 6 & 7 are done. - - [X] Add unit test. - - [X] Add integration tests. + +- [x] Add unit test. +- [x] Add integration tests. ## Submit A Pull Request @@ -767,31 +766,31 @@ A pull request, in general, should have details on why the PR was created, what 1. **Why**?: - - This PR is the result of creating a piece of contributor documentation (not included in this PR) for creating a new router endpoint and standard model. - - Endpoint was requested by @minhhoang1023. + - This PR is the result of creating a piece of contributor documentation (not included in this PR) for creating a new router endpoint and standard model. + - Endpoint was requested by @minhhoang1023. 2. **What**?: - - `obb.currency.snapshots()` + - `obb.currency.snapshots()` - - This endpoint provides a similar data set to `obb.equity.market_snapshots()` or `obb.index.snapshots()`, with minor twists: - - Set one, or multiple, 'base' currencies. - - Filter results for a list of supplied counter currencies. - - A `quote_type` parameter for the perspective on the exchange rate, "direct" or "indirect". + - This endpoint provides a similar data set to `obb.equity.market_snapshots()` or `obb.index.snapshots()`, with minor twists: + - Set one, or multiple, 'base' currencies. + - Filter results for a list of supplied counter currencies. + - A `quote_type` parameter for the perspective on the exchange rate, "direct" or "indirect". 3. **Impact**: - - Not a breaking change. + - Not a breaking change. - - Future providers to this endpoint will require parsing symbols and filtering as part of the `transform_data` stage, as well as ensure the `quote_type` is correctly applied. + - Future providers to this endpoint will require parsing symbols and filtering as part of the `transform_data` stage, as well as ensure the `quote_type` is correctly applied. 4. **Testing Done**: - - A variety of `base` and `counter_currencies`, checking both `quote_type` settings. + - A variety of `base` and `counter_currencies`, checking both `quote_type` settings. - - `obb.currency.snapshots(base="usd,xau,xag", counter_currencies="usd,eur,gbp,chf,aud,jpy,cny,cad", quote_type="indirect"` + - `obb.currency.snapshots(base="usd,xau,xag", counter_currencies="usd,eur,gbp,chf,aud,jpy,cny,cad", quote_type="indirect"` -6. **Any other information**: +5. **Any other information**: ![Screenshot 2024-03-04 at 10 05 00 AM](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/7943d2ef-05b9-4a25-9d17-32618e2c57cf) diff --git a/website/content/platform/development/tests.md b/website/content/platform/development/tests.md index 89a7c56fabf6..74a3c7f0fbf7 100644 --- a/website/content/platform/development/tests.md +++ b/website/content/platform/development/tests.md @@ -3,11 +3,11 @@ title: Tests sidebar_position: 6 description: This section provides an in-depth look at the Quality Assurance (QA) process in the OpenBB Platform. It covers the use of QA tools for testing extensions, creation of unit and integration tests, and the importance of maintaining a short import time for the package. keywords: -- OpenBB QA process -- Unit and integration tests -- QA tools -- Extension testing -- Import time optimization + - OpenBB QA process + - Unit and integration tests + - QA tools + - Extension testing + - Import time optimization --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -44,7 +44,6 @@ pytest --record=all Sometimes manual intervention is needed. For example, adjusting out-of-top level imports or adding specific arguments for a given fetcher. ::: - ## Integration tests The integration tests are a bit more complex than the unit tests, as we want to test both the Python interface and the API interface. For this, we have two scripts that will help you generate the integration tests. @@ -93,7 +92,7 @@ pytest openbb_platform We aim to have a short import time for the package. To measure that we use `tuna`. -- +- [https://pypi.org/project/tuna/](https://pypi.org/project/tuna/) To visualize the import time breakdown by module and find potential bottlenecks, run the following commands from `openbb_platform` directory: @@ -111,27 +110,27 @@ When using the OpenBB QA Framework it is important to be aware of the following - The tests are semi-automated and might require manual intervention. For example, adjusting out-of-top level imports or changing specific arguments for a given payload. - The integration tests are more complex and if your newly added provider integration is already covered by the -integration tests from previous commands or providers, you will need to manually inject the payload for the new -provider. + integration tests from previous commands or providers, you will need to manually inject the payload for the new + provider. - In the integration test parametrized payload, the first item is always the set of standard parameters. Every -consecutive item is a set of parameters for a specific provider with the standard parameters included. + consecutive item is a set of parameters for a specific provider with the standard parameters included. - The integration tests require you to be explicit, by using all of the standard parameters and provider-specific -parameters in the payload. If you want to exclude a parameter, you can use `None` as its value. + parameters in the payload. If you want to exclude a parameter, you can use `None` as its value. - The integration tests require you to be explicit by specifying the `provider` parameter in provider-specific -payloads. + payloads. - When recording unit tests, you might run into issues with the cache that is tied to your specific provider and present -on your local machine. You will know that this is the case if your tests pass locally, but fail on the CI. To fix this, -you can delete the cache file from your local machine and re-record the tests. + on your local machine. You will know that this is the case if your tests pass locally, but fail on the CI. To fix this, + you can delete the cache file from your local machine and re-record the tests. - > Note that the cache is likely located here: - > Windows: `C:\Users\user\AppData\Local\` - > Linux: `/home/user/.cache/` - > Mac: `/Users/user/Library/Caches` + > Note that the cache is likely located here: + > Windows: `C:\Users\user\AppData\Local\` + > Linux: `/home/user/.cache/` + > Mac: `/Users/user/Library/Caches` - Some providers (we are aware only of YFinance so far) do an additional request when used from the US region. As our CI -is running from the US region, this might cause the tests to fail. A workaround for this is to use a VPN to record the -tests from a different region. + is running from the US region, this might cause the tests to fail. A workaround for this is to use a VPN to record the + tests from a different region. diff --git a/website/content/platform/faqs/data_providers.md b/website/content/platform/faqs/data_providers.md index 889733a51fb3..f890d123418a 100644 --- a/website/content/platform/faqs/data_providers.md +++ b/website/content/platform/faqs/data_providers.md @@ -4,20 +4,21 @@ sidebar_position: 2 description: This page contains some frequently asked questions about OpenBB data and providers. keywords: -- provider -- data -- source -- live -- platform -- api -- FastAPI + - provider + - data + - source + - live + - platform + - api + - FastAPI --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -
Does OpenBB have coverage for [insert type of data]? +
+Does OpenBB have coverage for [insert type of data]? Equity market coverage will vary by provider and subscription status with them. It is common for free tiers to be US-listings only. @@ -25,7 +26,8 @@ You can find all data models [here](/platform/data_models), or the [Reference](/
-
The router appears to be missing functions. +
+The router appears to be missing functions. The router populates itself from the installed extensions. For example, if the Technical Analysis extension is not installed, the `obb.technical` router path will not be present. @@ -62,7 +64,8 @@ pip install openbb-nightly
-
Why is the returned data not matching the start/end date I requested? +
+Why is the returned data not matching the start/end date I requested? The provider may not have data from the requested period, in which case the data will be what they return. For example, `provider='yfinance'` at one-minute intervals will not return beyond one week ago. @@ -70,7 +73,8 @@ Another reason could be the data entitlements of your API key. Check the provide
-
How do I load a ticker symbol from India? +
+How do I load a ticker symbol from India? Ticker symbols listed on exchanges outside of the US will have a suffix attached, for example, Rico Auto Industries Limited: @@ -83,19 +87,22 @@ The precise naming convention will differ by source, it's best to reference each
-
How can I request a data provider or function? +
+How can I request a data provider or function? -Please [request a feature](https://openbb.co/request-a-feature), tell us about your use case. +Please [request a feature](https://openbb.co/request-a-feature), tell us about your use case.
-
Can I contribute my own data provider extension? +
+Can I contribute my own data provider extension? Yes! Please take a look at our [Development](/platform/development) pages for more information.
-
Can my company become a data partner? +
+Can my company become a data partner? Yes! Please visit our website [here](https://openbb.co/use-cases/data-vendors) and fill out the form. diff --git a/website/content/sdk/data-available/crypto/discovery.md b/website/content/sdk/data-available/crypto/discovery.md index ffad6ef7d437..c77b5951b019 100644 --- a/website/content/sdk/data-available/crypto/discovery.md +++ b/website/content/sdk/data-available/crypto/discovery.md @@ -1,27 +1,28 @@ --- title: Discovery sidebar_position: 2 -description: This page provides detailed instructions on how to use the Discovery +description: + This page provides detailed instructions on how to use the Discovery sub-module within the ''openbb.crypto.disc'' to find new trends in Crypto markets. The module enables users to search coins on CoinGecko by category, access a list of coins available on CoinGecko, search CoinPaprika, view top coins, DeFi applications, NFTs, and games by daily volume and users, and more. It also provides examples in Python for better understanding. keywords: -- openbb.crypto.disc -- Crypto markets -- CoinGecko -- Coins search -- DeFi applications -- Python Examples -- NFTs -- Crypto trends -- Market insights -- Crypto trading pairs -- market_cap -- trending coins -- Top DeFi games -- CoinPaprika search + - openbb.crypto.disc + - Crypto markets + - CoinGecko + - Coins search + - DeFi applications + - Python Examples + - NFTs + - Crypto trends + - Market insights + - Crypto trading pairs + - market_cap + - trending coins + - Top DeFi games + - CoinPaprika search --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -32,21 +33,21 @@ The Discovery sub-module contains the tools for finding new trends in Crpyto mar ## How to Use -|Path |Description | -|:----|-----------:| -|openbb.crypto.disc.categories_keys |A List of Categories for Searching Coins | -|openbb.crypto.disc.coin_list |A List of Coins Available on CoinGecko | -|openbb.crypto.disc.coins |Search Coins on CoinGecko by Category | -|openbb.crypto.disc.coins_for_given_exchange |A Dictionary of all Trading Pairs on Binance | -|openbb.crypto.disc.cpsearch |Search CoinPaprika | -|openbb.crypto.disc.gainers |Top Gainers Over Different Periods | -|openbb.crypto.disc.losers |Top Losers Over Different Periods | -|openbb.crypto.disc.top_coins |The Top Movers | -|openbb.crypto.disc.top_dapps |The Top DeFi Applications by Daily Volume and Users | -|openbb.crypto.disc.top_dexes |The Top DeFi Exchanges | -|openbb.crypto.disc.top_games |The Top DeFi Games | -|openbb.crypto.disc.top_nfts |The Top NFTs | -|openbb.crypto.disc.trending |Trending Coins on CoinGecko | +| Path | Description | +| :------------------------------------------ | --------------------------------------------------: | +| openbb.crypto.disc.categories_keys | A List of Categories for Searching Coins | +| openbb.crypto.disc.coin_list | A List of Coins Available on CoinGecko | +| openbb.crypto.disc.coins | Search Coins on CoinGecko by Category | +| openbb.crypto.disc.coins_for_given_exchange | A Dictionary of all Trading Pairs on Binance | +| openbb.crypto.disc.cpsearch | Search CoinPaprika | +| openbb.crypto.disc.gainers | Top Gainers Over Different Periods | +| openbb.crypto.disc.losers | Top Losers Over Different Periods | +| openbb.crypto.disc.top_coins | The Top Movers | +| openbb.crypto.disc.top_dapps | The Top DeFi Applications by Daily Volume and Users | +| openbb.crypto.disc.top_dexes | The Top DeFi Exchanges | +| openbb.crypto.disc.top_games | The Top DeFi Games | +| openbb.crypto.disc.top_nfts | The Top NFTs | +| openbb.crypto.disc.trending | Trending Coins on CoinGecko | ## Examples @@ -64,13 +65,13 @@ Search coins on CoinGecko, or compare them all. openbb.crypto.disc.coins().head(5) ``` -| | id | symbol | name | image | current_price | market_cap | market_cap_rank | fully_diluted_valuation | total_volume | high_24h | low_24h | price_change_24h | price_change_percentage_24h | market_cap_change_24h | market_cap_change_percentage_24h | circulating_supply | total_supply | max_supply | ath | ath_change_percentage | ath_date | atl | atl_change_percentage | atl_date | roi | last_updated | price_change_percentage_14d_in_currency | price_change_percentage_1h_in_currency | price_change_percentage_1y_in_currency | price_change_percentage_200d_in_currency | price_change_percentage_24h_in_currency | price_change_percentage_30d_in_currency | price_change_percentage_7d_in_currency | -|----:|:--------------|:---------|:--------------|:--------------------------------------------------------------------------------------|----------------:|-------------:|------------------:|--------------------------:|---------------:|-------------:|-------------:|-------------------:|------------------------------:|------------------------:|-----------------------------------:|---------------------:|---------------:|-------------:|-------------:|------------------------:|:-------------------------|------------:|------------------------:|:-------------------------|:----------------------------------------------------------------------------------|:-------------------------|------------------------------------------:|-----------------------------------------:|-----------------------------------------:|-------------------------------------------:|------------------------------------------:|------------------------------------------:|-----------------------------------------:| -| 170 | 0x | zrx | 0x | https://assets.coingecko.com/coins/images/863/large/0x.png?1547034672 | 0.192066 | 162596592 | 171 | 1.91855e+08 | 7.92999e+06 | 0.198545 | 0.190939 | -0.00511834 | -2.59572 | -4.64766e+06 | -2.77897 | 8.47496e+08 | 1e+09 | 1e+09 | 2.5 | -92.3016 | 2018-01-13T00:00:00.000Z | 0.120667 | 59.3019 | 2020-03-13T02:27:49.563Z | {'times': 3.00137262387235, 'currency': 'usd', 'percentage': 300.137262387235} | 2022-12-05T22:57:31.604Z | 6.39773 | 0.236744 | -78.329 | -48.4052 | -2.59572 | -31.7183 | -0.08195 | -| 97 | zilliqa | zil | Zilliqa | https://assets.coingecko.com/coins/images/2687/large/Zilliqa-logo.png?1547036894 | 0.0227407 | 344299494 | 98 | 4.77046e+08 | 1.92004e+07 | 0.0235163 | 0.0226905 | -0.000172456 | -0.75265 | -2.93894e+06 | -0.84638 | 1.51564e+10 | 2.1e+10 | 2.1e+10 | 0.255376 | -91.0876 | 2021-05-06T17:33:45.940Z | 0.00239616 | 849.86 | 2020-03-13T02:22:55.161Z | {'times': 1.131460045428967, 'currency': 'eth', 'percentage': 113.14600454289669} | 2022-12-05T22:57:22.010Z | 7.01544 | -0.119826 | -67.7389 | -52.7247 | -0.752652 | -30.9379 | -0.991144 | -| 189 | zencash | zen | Horizen | https://assets.coingecko.com/coins/images/691/large/horizen.png?1555052241 | 10.64 | 139250373 | 190 | 2.22972e+08 | 5.44128e+06 | 11.07 | 10.62 | -0.264045 | -2.42165 | -3.61206e+06 | -2.52835 | 1.31149e+07 | 2.1e+07 | 2.1e+07 | 165.92 | -93.5817 | 2021-05-08T06:00:30.087Z | 3.26 | 226.208 | 2019-10-17T00:00:00.000Z | | 2022-12-05T22:57:34.376Z | 21.2037 | -0.57332 | -86.651 | -44.0292 | -2.42165 | -25.8735 | 11.1271 | -| 63 | zcash | zec | Zcash | https://assets.coingecko.com/coins/images/486/large/circle-zcash-color.png?1547034197 | 46.24 | 602735976 | 64 | 9.69752e+08 | 3.57518e+07 | 47.32 | 45.31 | 0.479718 | 1.04838 | 5.91658e+06 | 0.99135 | 1.30523e+07 | 2.1e+07 | 2.1e+07 | 3191.93 | -98.5521 | 2016-10-29T00:00:00.000Z | 19.75 | 133.959 | 2020-03-13T02:20:55.002Z | | 2022-12-05T22:57:30.607Z | 21.4551 | 0.502131 | -75.4374 | -53.9461 | 1.04838 | -14.1037 | 13.3262 | -| 141 | yearn-finance | yfi | yearn.finance | https://assets.coingecko.com/coins/images/11849/large/yfi-192x192.png?1598325330 | 7082.34 | 220754373 | 142 | 2.59099e+08 | 4.54938e+07 | 7472.6 | 7052.76 | -157.22 | -2.17168 | -5.96275e+06 | -2.63004 | 31239.8 | 36666 | 36666 | 90787 | -92.1948 | 2021-05-12T00:29:37.713Z | 31.65 | 22292.3 | 2020-07-18T12:26:27.150Z | | 2022-12-05T22:57:24.815Z | 15.7094 | -0.124164 | -71.239 | -22.0297 | -2.17168 | -15.4178 | 13.2592 | +| | id | symbol | name | image | current_price | market_cap | market_cap_rank | fully_diluted_valuation | total_volume | high_24h | low_24h | price_change_24h | price_change_percentage_24h | market_cap_change_24h | market_cap_change_percentage_24h | circulating_supply | total_supply | max_supply | ath | ath_change_percentage | ath_date | atl | atl_change_percentage | atl_date | roi | last_updated | price_change_percentage_14d_in_currency | price_change_percentage_1h_in_currency | price_change_percentage_1y_in_currency | price_change_percentage_200d_in_currency | price_change_percentage_24h_in_currency | price_change_percentage_30d_in_currency | price_change_percentage_7d_in_currency | +| --: | :------------ | :----- | :------------ | :------------------------------------------------------------------------------------ | ------------: | ---------: | --------------: | ----------------------: | -----------: | --------: | --------: | ---------------: | --------------------------: | --------------------: | -------------------------------: | -----------------: | -----------: | ---------: | -------: | --------------------: | :----------------------- | ---------: | --------------------: | :----------------------- | :---------------------------------------------------------------------------------- | :----------------------- | --------------------------------------: | -------------------------------------: | -------------------------------------: | ---------------------------------------: | --------------------------------------: | --------------------------------------: | -------------------------------------: | +| 170 | 0x | zrx | 0x | https://assets.coingecko.com/coins/images/863/large/0x.png?1547034672 | 0.192066 | 162596592 | 171 | 1.91855e+08 | 7.92999e+06 | 0.198545 | 0.190939 | -0.00511834 | -2.59572 | -4.64766e+06 | -2.77897 | 8.47496e+08 | 1e+09 | 1e+09 | 2.5 | -92.3016 | 2018-01-13T00:00:00.000Z | 0.120667 | 59.3019 | 2020-03-13T02:27:49.563Z | \{'times': 3.00137262387235, 'currency': 'usd', 'percentage': 300.137262387235\} | 2022-12-05T22:57:31.604Z | 6.39773 | 0.236744 | -78.329 | -48.4052 | -2.59572 | -31.7183 | -0.08195 | +| 97 | zilliqa | zil | Zilliqa | https://assets.coingecko.com/coins/images/2687/large/Zilliqa-logo.png?1547036894 | 0.0227407 | 344299494 | 98 | 4.77046e+08 | 1.92004e+07 | 0.0235163 | 0.0226905 | -0.000172456 | -0.75265 | -2.93894e+06 | -0.84638 | 1.51564e+10 | 2.1e+10 | 2.1e+10 | 0.255376 | -91.0876 | 2021-05-06T17:33:45.940Z | 0.00239616 | 849.86 | 2020-03-13T02:22:55.161Z | \{'times': 1.131460045428967, 'currency': 'eth', 'percentage': 113.14600454289669\} | 2022-12-05T22:57:22.010Z | 7.01544 | -0.119826 | -67.7389 | -52.7247 | -0.752652 | -30.9379 | -0.991144 | +| 189 | zencash | zen | Horizen | https://assets.coingecko.com/coins/images/691/large/horizen.png?1555052241 | 10.64 | 139250373 | 190 | 2.22972e+08 | 5.44128e+06 | 11.07 | 10.62 | -0.264045 | -2.42165 | -3.61206e+06 | -2.52835 | 1.31149e+07 | 2.1e+07 | 2.1e+07 | 165.92 | -93.5817 | 2021-05-08T06:00:30.087Z | 3.26 | 226.208 | 2019-10-17T00:00:00.000Z | | 2022-12-05T22:57:34.376Z | 21.2037 | -0.57332 | -86.651 | -44.0292 | -2.42165 | -25.8735 | 11.1271 | +| 63 | zcash | zec | Zcash | https://assets.coingecko.com/coins/images/486/large/circle-zcash-color.png?1547034197 | 46.24 | 602735976 | 64 | 9.69752e+08 | 3.57518e+07 | 47.32 | 45.31 | 0.479718 | 1.04838 | 5.91658e+06 | 0.99135 | 1.30523e+07 | 2.1e+07 | 2.1e+07 | 3191.93 | -98.5521 | 2016-10-29T00:00:00.000Z | 19.75 | 133.959 | 2020-03-13T02:20:55.002Z | | 2022-12-05T22:57:30.607Z | 21.4551 | 0.502131 | -75.4374 | -53.9461 | 1.04838 | -14.1037 | 13.3262 | +| 141 | yearn-finance | yfi | yearn.finance | https://assets.coingecko.com/coins/images/11849/large/yfi-192x192.png?1598325330 | 7082.34 | 220754373 | 142 | 2.59099e+08 | 4.54938e+07 | 7472.6 | 7052.76 | -157.22 | -2.17168 | -5.96275e+06 | -2.63004 | 31239.8 | 36666 | 36666 | 90787 | -92.1948 | 2021-05-12T00:29:37.713Z | 31.65 | 22292.3 | 2020-07-18T12:26:27.150Z | | 2022-12-05T22:57:24.815Z | 15.7094 | -0.124164 | -71.239 | -22.0297 | -2.17168 | -15.4178 | 13.2592 | Coins can be filtered by category. For a list of defined categories enter: @@ -84,13 +85,13 @@ The category chosen below is called, `big-data`. openbb.crypto.disc.coins(category = categories[10], sortby = 'market_cap').head(5) ``` -| | id | symbol | name | image | current_price | market_cap | market_cap_rank | fully_diluted_valuation | total_volume | high_24h | low_24h | price_change_24h | price_change_percentage_24h | market_cap_change_24h | market_cap_change_percentage_24h | circulating_supply | total_supply | max_supply | ath | ath_change_percentage | ath_date | atl | atl_change_percentage | atl_date | roi | last_updated | price_change_percentage_14d_in_currency | price_change_percentage_1h_in_currency | price_change_percentage_1y_in_currency | price_change_percentage_200d_in_currency | price_change_percentage_24h_in_currency | price_change_percentage_30d_in_currency | price_change_percentage_7d_in_currency | -|---:|:-----------------|:---------|:---------|:-----------------------------------------------------------------------------------------|----------------:|-------------:|------------------:|--------------------------:|-----------------:|-----------:|----------:|-------------------:|------------------------------:|------------------------:|-----------------------------------:|---------------------:|---------------:|-------------:|----------:|------------------------:|:-------------------------|-----------:|------------------------:|:-------------------------|:------------------------------------------------------------------------------------|:-------------------------|------------------------------------------:|-----------------------------------------:|-----------------------------------------:|-------------------------------------------:|------------------------------------------:|------------------------------------------:|-----------------------------------------:| -| 0 | dock | dock | Dock | https://assets.coingecko.com/coins/images/3978/large/dock-icon-dark-large.png?1623764407 | 0.0163913 | 7.04484e+07 | 295 | nan | 567668 | 0.0170636 | 0.0163263 | -0.00031004 | -1.85637 | -2.34457e+06 | -3.22088 | 0 | 1e+09 | nan | 0.241848 | -93.2225 | 2018-05-04T05:29:09.155Z | 0.00259319 | 532.083 | 2020-03-13T02:24:35.312Z | {'times': -0.8420344706449371, 'currency': 'eth', 'percentage': -84.20344706449372} | 2022-12-05T23:04:48.481Z | 11.105 | 0.113349 | -79.607 | -17.3245 | -1.85637 | -19.6563 | 0.481131 | -| 1 | covalent | cqt | Covalent | https://assets.coingecko.com/coins/images/14168/large/covalent-cqt.png?1624545218 | 0.099484 | 4.18854e+07 | 431 | 9.95348e+07 | 997478 | 0.112201 | 0.095826 | -0.0110446 | -9.99251 | -4.62241e+06 | -9.93901 | 4.20811e+08 | 1e+09 | 1e+09 | 2.08 | -95.2091 | 2021-08-14T05:30:40.858Z | 0.051932 | 91.5619 | 2022-08-01T23:38:54.301Z | | 2022-12-05T23:04:47.896Z | 16.5464 | 1.49149 | -87.4469 | -34.8706 | -9.99251 | -21.1618 | -16.3863 | -| 2 | gxchain | gxc | GXChain | https://assets.coingecko.com/coins/images/1089/large/26296223.png?1571192241 | 0.46468 | 3.48511e+07 | 476 | nan | 114097 | 0.797016 | 0.359858 | -0.331496 | -41.636 | -2.48954e+07 | -41.6683 | 7.5e+07 | 1e+08 | nan | 10.61 | -95.62 | 2018-01-13T00:00:00.000Z | 0.189778 | 144.839 | 2020-03-13T02:24:02.919Z | | 2022-12-05T23:04:01.358Z | 25.3322 | 3.68092 | -83.5683 | 13.1713 | -41.636 | -0.22209 | 31.9026 | -| 3 | insights-network | instar | INSTAR | https://assets.coingecko.com/coins/images/3504/large/2558.png?1547038269 | 0.0362529 | 2.85208e+07 | 534 | nan | 19.93 | 0.0370935 | 0.0359575 | -0.000214289 | -0.58762 | -5.51571e+06 | -16.2053 | 0 | 3e+08 | nan | 0.27882 | -86.9978 | 2022-10-02T09:16:16.012Z | 0.00467988 | 674.655 | 2020-03-13T02:22:38.395Z | {'times': -0.7583139455766651, 'currency': 'usd', 'percentage': -75.83139455766651} | 2022-12-05T18:39:15.686Z | -1.2191 | nan | 27.2158 | 113.695 | -0.587622 | -44.2698 | 3.3329 | -| 4 | bonfida | fida | Bonfida | https://assets.coingecko.com/coins/images/13395/large/bonfida.png?1658327819 | 0.392327 | 2.36672e+07 | 585 | 3.92307e+08 | 6.01989e+06 | 0.401193 | 0.386429 | -0.00802685 | -2.00494 | -441335 | -1.83062 | 6.03284e+07 | 1e+09 | 1e+09 | 18.77 | -97.9102 | 2021-11-03T20:34:33.492Z | 0.113165 | 246.695 | 2020-12-22T10:58:52.143Z | | 2022-12-05T23:04:56.497Z | -31.5948 | -0.13385 | -94.9581 | -30.7982 | -2.00494 | -5.84654 | -12.1443 | +| | id | symbol | name | image | current_price | market_cap | market_cap_rank | fully_diluted_valuation | total_volume | high_24h | low_24h | price_change_24h | price_change_percentage_24h | market_cap_change_24h | market_cap_change_percentage_24h | circulating_supply | total_supply | max_supply | ath | ath_change_percentage | ath_date | atl | atl_change_percentage | atl_date | roi | last_updated | price_change_percentage_14d_in_currency | price_change_percentage_1h_in_currency | price_change_percentage_1y_in_currency | price_change_percentage_200d_in_currency | price_change_percentage_24h_in_currency | price_change_percentage_30d_in_currency | price_change_percentage_7d_in_currency | +| --: | :--------------- | :----- | :------- | :--------------------------------------------------------------------------------------- | ------------: | ----------: | --------------: | ----------------------: | -----------: | --------: | --------: | ---------------: | --------------------------: | --------------------: | -------------------------------: | -----------------: | -----------: | ---------: | -------: | --------------------: | :----------------------- | ---------: | --------------------: | :----------------------- | :------------------------------------------------------------------------------------ | :----------------------- | --------------------------------------: | -------------------------------------: | -------------------------------------: | ---------------------------------------: | --------------------------------------: | --------------------------------------: | -------------------------------------: | +| 0 | dock | dock | Dock | https://assets.coingecko.com/coins/images/3978/large/dock-icon-dark-large.png?1623764407 | 0.0163913 | 7.04484e+07 | 295 | nan | 567668 | 0.0170636 | 0.0163263 | -0.00031004 | -1.85637 | -2.34457e+06 | -3.22088 | 0 | 1e+09 | nan | 0.241848 | -93.2225 | 2018-05-04T05:29:09.155Z | 0.00259319 | 532.083 | 2020-03-13T02:24:35.312Z | \{'times': -0.8420344706449371, 'currency': 'eth', 'percentage': -84.20344706449372\} | 2022-12-05T23:04:48.481Z | 11.105 | 0.113349 | -79.607 | -17.3245 | -1.85637 | -19.6563 | 0.481131 | +| 1 | covalent | cqt | Covalent | https://assets.coingecko.com/coins/images/14168/large/covalent-cqt.png?1624545218 | 0.099484 | 4.18854e+07 | 431 | 9.95348e+07 | 997478 | 0.112201 | 0.095826 | -0.0110446 | -9.99251 | -4.62241e+06 | -9.93901 | 4.20811e+08 | 1e+09 | 1e+09 | 2.08 | -95.2091 | 2021-08-14T05:30:40.858Z | 0.051932 | 91.5619 | 2022-08-01T23:38:54.301Z | | 2022-12-05T23:04:47.896Z | 16.5464 | 1.49149 | -87.4469 | -34.8706 | -9.99251 | -21.1618 | -16.3863 | +| 2 | gxchain | gxc | GXChain | https://assets.coingecko.com/coins/images/1089/large/26296223.png?1571192241 | 0.46468 | 3.48511e+07 | 476 | nan | 114097 | 0.797016 | 0.359858 | -0.331496 | -41.636 | -2.48954e+07 | -41.6683 | 7.5e+07 | 1e+08 | nan | 10.61 | -95.62 | 2018-01-13T00:00:00.000Z | 0.189778 | 144.839 | 2020-03-13T02:24:02.919Z | | 2022-12-05T23:04:01.358Z | 25.3322 | 3.68092 | -83.5683 | 13.1713 | -41.636 | -0.22209 | 31.9026 | +| 3 | insights-network | instar | INSTAR | https://assets.coingecko.com/coins/images/3504/large/2558.png?1547038269 | 0.0362529 | 2.85208e+07 | 534 | nan | 19.93 | 0.0370935 | 0.0359575 | -0.000214289 | -0.58762 | -5.51571e+06 | -16.2053 | 0 | 3e+08 | nan | 0.27882 | -86.9978 | 2022-10-02T09:16:16.012Z | 0.00467988 | 674.655 | 2020-03-13T02:22:38.395Z | \{'times': -0.7583139455766651, 'currency': 'usd', 'percentage': -75.83139455766651\} | 2022-12-05T18:39:15.686Z | -1.2191 | nan | 27.2158 | 113.695 | -0.587622 | -44.2698 | 3.3329 | +| 4 | bonfida | fida | Bonfida | https://assets.coingecko.com/coins/images/13395/large/bonfida.png?1658327819 | 0.392327 | 2.36672e+07 | 585 | 3.92307e+08 | 6.01989e+06 | 0.401193 | 0.386429 | -0.00802685 | -2.00494 | -441335 | -1.83062 | 6.03284e+07 | 1e+09 | 1e+09 | 18.77 | -97.9102 | 2021-11-03T20:34:33.492Z | 0.113165 | 246.695 | 2020-12-22T10:58:52.143Z | | 2022-12-05T23:04:56.497Z | -31.5948 | -0.13385 | -94.9581 | -30.7982 | -2.00494 | -5.84654 | -12.1443 | ### Trending @@ -100,16 +101,16 @@ Print the trending coins on CoinGecko: openbb.crypto.disc.trending() ``` -| | Symbol | Name | market_cap Cap Rank | -|---:|:--------------|:--------------|----------------------:| -| 0 | chainlink | Chainlink | 21 | -| 1 | magiccraft | MagicCraft | 806 | -| 2 | apollo | Apollo | 858 | -| 3 | gmx | GMX | 86 | -| 4 | dawn-protocol | Dawn Protocol | 406 | -| 5 | evmos | Evmos | 149 | -| 6 | maple | Maple | 443 | -| 7 | aptos | Aptos | 59 | +| | Symbol | Name | market_cap Cap Rank | +| --: | :------------ | :------------ | ------------------: | +| 0 | chainlink | Chainlink | 21 | +| 1 | magiccraft | MagicCraft | 806 | +| 2 | apollo | Apollo | 858 | +| 3 | gmx | GMX | 86 | +| 4 | dawn-protocol | Dawn Protocol | 406 | +| 5 | evmos | Evmos | 149 | +| 6 | maple | Maple | 443 | +| 7 | aptos | Aptos | 59 | ### Losers @@ -119,11 +120,11 @@ Filter coins by the changes over various windows of time, from an hour to a year openbb.crypto.disc.losers().head(3) ``` -| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 1h [%] | -|---:|:---------|:--------------------|---------------:|-------------:|------------------:|-------------:|----------------:| -| 34 | ape | ApeCoin | 3.95 | 1430668301 | 35 | 225914151 | -0.613265 | -| 48 | theta | Theta Network | 0.879573 | 880099193 | 49 | 19024380 | -0.159237 | -| 12 | ltc | Litecoin | 80.28 | 5764526837 | 13 | 1079151325 | -0.147648 | +| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 1h [%] | +| --: | :----- | :------------ | --------: | ---------: | --------------: | ---------: | ------------: | +| 34 | ape | ApeCoin | 3.95 | 1430668301 | 35 | 225914151 | -0.613265 | +| 48 | theta | Theta Network | 0.879573 | 880099193 | 49 | 19024380 | -0.159237 | +| 12 | ltc | Litecoin | 80.28 | 5764526837 | 13 | 1079151325 | -0.147648 | Compared to the last fourteen days: @@ -131,11 +132,11 @@ Compared to the last fourteen days: openbb.crypto.disc.losers(interval = '14d').head(3) ``` -| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 14d [%] | -|---:|:---------|:----------|------------:|-------------:|------------------:|-------------:|-----------------:| -| 31 | algo | Algorand | 0.237655 | 1691877131 | 32 | 79911891 | -3.84964 | -| 22 | leo | LEO Token | 3.79 | 3541787576 | 23 | 2082712 | -2.70556 | -| 38 | flow | Flow | 1.11 | 1150005942 | 39 | 44608861 | -2.16063 | +| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 14d [%] | +| --: | :----- | :-------- | --------: | ---------: | --------------: | ---------: | -------------: | +| 31 | algo | Algorand | 0.237655 | 1691877131 | 32 | 79911891 | -3.84964 | +| 22 | leo | LEO Token | 3.79 | 3541787576 | 23 | 2082712 | -2.70556 | +| 38 | flow | Flow | 1.11 | 1150005942 | 39 | 44608861 | -2.16063 | Over one-year: @@ -143,8 +144,8 @@ Over one-year: openbb.crypto.disc.losers(interval = '1y').head(3) ``` -| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 1y [%] | -|---:|:---------|:-------------------|------------:|-------------:|------------------:|-------------:|----------------:| -| 39 | lunc | Terra Luna Classic | 0.00017433 | 1042097683 | 40 | 75780496 | -99.9997 | -| 16 | sol | Solana | 13.87 | 5045641411 | 17 | 382220595 | -92.9463 | -| 43 | axs | Axie Infinity | 8.92 | 1004779023 | 44 | 707998935 | -91.6799 | +| | Symbol | Name | Price [$] | Market Cap | Market Cap Rank | Volume [$] | Change 1y [%] | +| --: | :----- | :----------------- | ---------: | ---------: | --------------: | ---------: | ------------: | +| 39 | lunc | Terra Luna Classic | 0.00017433 | 1042097683 | 40 | 75780496 | -99.9997 | +| 16 | sol | Solana | 13.87 | 5045641411 | 17 | 382220595 | -92.9463 | +| 43 | axs | Axie Infinity | 8.92 | 1004779023 | 44 | 707998935 | -91.6799 | diff --git a/website/content/sdk/data-available/crypto/index.md b/website/content/sdk/data-available/crypto/index.md index 3b63edc0b2e9..ac3cad040fed 100644 --- a/website/content/sdk/data-available/crypto/index.md +++ b/website/content/sdk/data-available/crypto/index.md @@ -1,7 +1,8 @@ --- title: Crypto sidebar_position: 0 -description: This Docusaurus page is dedicated to providing a detailed guide on how +description: + This Docusaurus page is dedicated to providing a detailed guide on how Cryptocurrency applications and dashboards can be built quickly using the OpenBB Terminal's Crypto Module. It provides an outline on how to use SDK functions at the 'openbb.crypto' level, rundown of functions and modules, along with sample Python @@ -9,18 +10,18 @@ description: This Docusaurus page is dedicated to providing a detailed guide on coins and more. This page can be useful for those working on Cryptocurrency applications, particularly those relying on Python or OpenBB Terminal. keywords: -- Docusaurus -- Cryptocurrency -- Web Application -- Crypto Module -- SDK Functions -- Digital Assets -- Onchain Metrics -- Data visualisation -- CCXT -- Trending Coins -- Liquidity Measurement -- Coin Ranking + - Docusaurus + - Cryptocurrency + - Web Application + - Crypto Module + - SDK Functions + - Digital Assets + - Onchain Metrics + - Data visualisation + - CCXT + - Trending Coins + - Liquidity Measurement + - Coin Ranking --- The Crypto module wraps the functions of the OpenBB Terminal menu. This allows web applications and dashboards to be built quickly on top of the existing infrastructure. Navigating the functions is similar to operating the OpenBB Terminal. @@ -95,7 +96,7 @@ Help on Operation in module openbb_terminal.core.library.operation: ```
- CCXT Exchange List (expand to see list of exchanges supported by CCXT) + CCXT Exchange List (expand to see list of exchanges supported by CCXT) | | Exchange | | --- | -----------------: | diff --git a/website/content/sdk/data-available/etf.md b/website/content/sdk/data-available/etf.md index 3902ecda5597..9f72ed2e69ae 100644 --- a/website/content/sdk/data-available/etf.md +++ b/website/content/sdk/data-available/etf.md @@ -1,6 +1,7 @@ --- title: ETF -description: This documentation page provides a comprehensive guide on how to use +description: + This documentation page provides a comprehensive guide on how to use the ETF module of the OpenBB Terminal SDK for programmatic access. It covers a list of functions within the ETF module, how to import the SDK, how to print contents of the SDK, how to use the ETF module in various situations such as getting list @@ -8,15 +9,15 @@ description: This documentation page provides a comprehensive guide on how to us holdings of a specific ETF, performing ETF screening, and retrieving current top gainers, losers, and volume for ETFs. keywords: -- OpenBB Terminal SDK -- ETF module -- programmatic access -- import SDK -- perform ETF screening -- get ETF holdings -- compare performance metrics -- retrieve top gainers and losers -- retrieve top volume for ETFs + - OpenBB Terminal SDK + - ETF module + - programmatic access + - import SDK + - perform ETF screening + - get ETF holdings + - compare performance metrics + - retrieve top gainers and losers + - retrieve top volume for ETFs --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -38,22 +39,22 @@ import pandas as pd ​Below is a brief description of each function within the ETF module: -|Path |Type |Description | -|:---------|:---------:|------------------------------:| -|openbb.etf.candle |Function |Chart OHLC + Volume + Moving Averages | -|openbb.etf.disc |Sub-Module |Best/Worst/Highest Volume ETFs Today | -|openbb.etf.etf_by_category |Function |Lookup by Category | -|openbb.etf.etf_by_name |Function |Lookup by Name | -|openbb.etf.holdings |Function |Holdings and Weights | -|openbb.etf.ld |Function |Lookup by Description | -|openbb.etf.load |Function |Get Historical Price Data | -|openbb.etf.ln |Function |Lookup by Name (More Details Than `by_name`) | -|openbb.etf.news |Function |News Headlines for a Ticker | -|openbb.etf.overview |Function |Basic Statistics for an ETF | -|openbb.etf.scr |Sub-Module |ETF Screener | -|openbb.etf.summary |Function |Text Description and Summary of an ETF | -|openbb.etf.symbols |Dictionary |Dictionary of {Ticker:Name} | -|openbb.etf.weights |Function |Table or Pie Graph of Sector Weightings | +| Path | Type | Description | +| :------------------------- | :--------: | -------------------------------------------: | +| openbb.etf.candle | Function | Chart OHLC + Volume + Moving Averages | +| openbb.etf.disc | Sub-Module | Best/Worst/Highest Volume ETFs Today | +| openbb.etf.etf_by_category | Function | Lookup by Category | +| openbb.etf.etf_by_name | Function | Lookup by Name | +| openbb.etf.holdings | Function | Holdings and Weights | +| openbb.etf.ld | Function | Lookup by Description | +| openbb.etf.load | Function | Get Historical Price Data | +| openbb.etf.ln | Function | Lookup by Name (More Details Than `by_name`) | +| openbb.etf.news | Function | News Headlines for a Ticker | +| openbb.etf.overview | Function | Basic Statistics for an ETF | +| openbb.etf.scr | Sub-Module | ETF Screener | +| openbb.etf.summary | Function | Text Description and Summary of an ETF | +| openbb.etf.symbols | Dictionary | Dictionary of `{Ticker:Name}` | +| openbb.etf.weights | Function | Table or Pie Graph of Sector Weightings | Alternatively you can print the contents of the ETF SDK with: ​ @@ -78,14 +79,14 @@ categories = pd.DataFrame(categories[1::], columns = ['Type']) categories.head(6) ``` -| Type | -|:-----------------:| -| Financials | +| Type | +| :--------------: | +| Financials | | Emerging Markets | -| Industrials | -| Factors | -| Utilities | -| Bonds | +| Industrials | +| Factors | +| Utilities | +| Bonds | ​Replacing the empty category in the syntax above will return the ETFs within that category: ​ @@ -95,14 +96,13 @@ etf_category = pd.DataFrame.from_dict(openbb.etf.etf_by_category('Emerging Marke etf_category.head(2) ``` -| symbol | name | currency | summary | category_group | category | family | exchange | market | -|:---------|:----------------------------------------------|:-----------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------|:-----------------|:---------------------------|:-----------|:----------| -| AAXJ | iShares MSCI All Country Asia ex Japan ETF | USD | The investment seeks to track the investment results of the MSCI AC Asia ex Japan Index. | Equities | Emerging Markets | BlackRock Asset Management | NMS | us_market | -| | | | The fund will invest at least 90% of its assets in the component securities of the index and in investments that have economic characteristics that are substantially identical to the component securities of the index. The index is a free float-adjusted market capitalization index designed to measure equity market performance of securities from the following 11 developed and emerging market countries or regions: China, Hong Kong, India, Indonesia, Malaysia, Pakistan, the Philippines, Singapore, South Korea, Taiwan and Thailand. | | | | | | -| JHEM | John Hancock Multifactor Emerging Markets ETF | USD | The investment seeks to provide investment results that closely correspond, before fees and expenses, to the performance of the John Hancock Dimensional Emerging Markets Index (the index). | Equities | Emerging Markets | John Hancock | PCX | us_market | -| | | | The fund normally invests at least 80% of its net assets (plus any borrowings for investment purposes) in securities included in the index, in depositary receipts representing securities included in the index, and in underlying stocks in respect of depositary receipts included in the index. The index is designed to comprise a subset of securities associated with emerging markets, which may include frontier markets (emerging markets in an earlier stage of development). | | | | | | +| symbol | name | currency | summary | category_group | category | family | exchange | market | +| :----- | :-------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------- | :--------------- | :------------------------- | :------- | :-------- | +| AAXJ | iShares MSCI All Country Asia ex Japan ETF | USD | The investment seeks to track the investment results of the MSCI AC Asia ex Japan Index. | Equities | Emerging Markets | BlackRock Asset Management | NMS | us_market | +| | | | The fund will invest at least 90% of its assets in the component securities of the index and in investments that have economic characteristics that are substantially identical to the component securities of the index. The index is a free float-adjusted market capitalization index designed to measure equity market performance of securities from the following 11 developed and emerging market countries or regions: China, Hong Kong, India, Indonesia, Malaysia, Pakistan, the Philippines, Singapore, South Korea, Taiwan and Thailand. | | | | | | +| JHEM | John Hancock Multifactor Emerging Markets ETF | USD | The investment seeks to provide investment results that closely correspond, before fees and expenses, to the performance of the John Hancock Dimensional Emerging Markets Index (the index). | Equities | Emerging Markets | John Hancock | PCX | us_market | +| | | | The fund normally invests at least 80% of its net assets (plus any borrowings for investment purposes) in securities included in the index, in depositary receipts representing securities included in the index, and in underlying stocks in respect of depositary receipts included in the index. The index is designed to comprise a subset of securities associated with emerging markets, which may include frontier markets (emerging markets in an earlier stage of development). | | | | | | -​ ### ETF Tickers A list of all tickers in the specific category can be generated from the index of the above DataFrame, `etf_category`: @@ -121,13 +121,13 @@ performance = performance.sort_values(by=['3M'], ascending=False) performance.head(5) ``` -| Ticker | 1W | 1M | 3M | 6M | 1Y | YTD | 1W Volatility | 1M Volatility | Recom | Avg Volume | Rel Volume | Price | Change | Volume | -|:---------|-------:|--------:|-------:|-------:|--------:|--------:|----------------:|----------------:|:--------|-------------:|-------------:|--------:|---------:|-----------------:| -| CHB | 0.0301 | -0.015 | 0.1123 | 0.0086 | -0.132 | -0.1277 | 0.0105 | 0.0048 | | 1130 | 0.04 | 8.22 | 0.0123 | 21 | -| INCO | 0.0193 | 0.0716 | 0.1092 | 0.1543 | 0.2706 | 0.3171 | 0.0066 | 0.0049 | | 17810 | 1.62 | 59.77 | 0.0073 | 14060 | -| GLIN | 0.0251 | 0.0733 | 0.1083 | 0.221 | 0.2704 | 0.3319 | 0.0105 | 0.0079 | | 20360 | 0.89 | 43.5 | 0.0133 | 8833 | -| ILF | 0.0497 | 0.0631 | 0.1032 | 0.062 | 0.3082 | 0.2768 | 0.0141 | 0.0135 | | 1.18e+06 | 2.16 | 29.23 | 0.0215 | 1237337 | -| SMIN | 0.0174 | 0.0573 | 0.0914 | 0.2128 | 0.2848 | 0.3447 | 0.0078 | 0.0074 | | 99980 | 5.61 | 69.6 | 0.0053 | 272774 | +| Ticker | 1W | 1M | 3M | 6M | 1Y | YTD | 1W Volatility | 1M Volatility | Recom | Avg Volume | Rel Volume | Price | Change | Volume | +| :----- | -----: | -----: | -----: | -----: | -----: | ------: | ------------: | ------------: | :---- | ---------: | ---------: | ----: | -----: | ------: | +| CHB | 0.0301 | -0.015 | 0.1123 | 0.0086 | -0.132 | -0.1277 | 0.0105 | 0.0048 | | 1130 | 0.04 | 8.22 | 0.0123 | 21 | +| INCO | 0.0193 | 0.0716 | 0.1092 | 0.1543 | 0.2706 | 0.3171 | 0.0066 | 0.0049 | | 17810 | 1.62 | 59.77 | 0.0073 | 14060 | +| GLIN | 0.0251 | 0.0733 | 0.1083 | 0.221 | 0.2704 | 0.3319 | 0.0105 | 0.0079 | | 20360 | 0.89 | 43.5 | 0.0133 | 8833 | +| ILF | 0.0497 | 0.0631 | 0.1032 | 0.062 | 0.3082 | 0.2768 | 0.0141 | 0.0135 | | 1.18e+06 | 2.16 | 29.23 | 0.0215 | 1237337 | +| SMIN | 0.0174 | 0.0573 | 0.0914 | 0.2128 | 0.2848 | 0.3447 | 0.0078 | 0.0074 | | 99980 | 5.61 | 69.6 | 0.0053 | 272774 | ### Holdings @@ -138,13 +138,13 @@ holdings = openbb.etf.holdings('DIA').reset_index() holdings.head(5) ``` -| | Symbol | Name | % Of Etf | Shares | -|---:|:---------|:--------------------------------|:-----------|---------:| -| 0 | UNH | UnitedHealth Group Incorporated | 10.09% | 5985297 | -| 1 | GS | The Goldman Sachs Group, Inc. | 7.51% | 5985297 | -| 2 | HD | The Home Depot, Inc. | 6.03% | 5985297 | -| 3 | AMGN | Amgen Inc. | 5.61% | 5985297 | -| 4 | MCD | McDonald's Corporation | 5.35% | 5985297 | +| | Symbol | Name | % Of Etf | Shares | +| --: | :----- | :------------------------------ | :------- | ------: | +| 0 | UNH | UnitedHealth Group Incorporated | 10.09% | 5985297 | +| 1 | GS | The Goldman Sachs Group, Inc. | 7.51% | 5985297 | +| 2 | HD | The Home Depot, Inc. | 6.03% | 5985297 | +| 3 | AMGN | Amgen Inc. | 5.61% | 5985297 | +| 4 | MCD | McDonald's Corporation | 5.35% | 5985297 | ### Disc @@ -165,10 +165,10 @@ movers = openbb.etf.disc.mover() movers.head(5) ``` -| | | Price | Chg | %Chg | Vol | -|---:|:---------------------------------------------------------|--------:|-------:|-------:|:-------| -| 0 | Direxion Daily Semiconductor Bear 3X Shares | 35.3101 | 3.3101 | 10.34 | 24.5M | -| 1 | ProShares UltraShort Bloomberg Natural Gas | 18.09 | 1.19 | 7.04 | 4.4M | -| 2 | MicroSectors FANG & Innovation -3x Inverse Leveraged ETN | 28.98 | 1.83 | 6.74 | 160.1K | -| 3 | Direxion Daily Dow Jones Internet Bear 3X Shares | 32.14 | 1.91 | 6.32 | 554.2K | -| 4 | Direxion Daily S&P 500 High Beta Bear 3X Shares | 6.4652 | 0.3752 | 6.16 | 1.2M | +| | | Price | Chg | %Chg | Vol | +| --: | :------------------------------------------------------- | ------: | -----: | ----: | :----- | +| 0 | Direxion Daily Semiconductor Bear 3X Shares | 35.3101 | 3.3101 | 10.34 | 24.5M | +| 1 | ProShares UltraShort Bloomberg Natural Gas | 18.09 | 1.19 | 7.04 | 4.4M | +| 2 | MicroSectors FANG & Innovation -3x Inverse Leveraged ETN | 28.98 | 1.83 | 6.74 | 160.1K | +| 3 | Direxion Daily Dow Jones Internet Bear 3X Shares | 32.14 | 1.91 | 6.32 | 554.2K | +| 4 | Direxion Daily S&P 500 High Beta Bear 3X Shares | 6.4652 | 0.3752 | 6.16 | 1.2M | diff --git a/website/content/sdk/faqs/bugs_support_feedback.md b/website/content/sdk/faqs/bugs_support_feedback.md index f078e484eee6..70e508e47577 100644 --- a/website/content/sdk/faqs/bugs_support_feedback.md +++ b/website/content/sdk/faqs/bugs_support_feedback.md @@ -1,20 +1,21 @@ --- title: Bugs, Support, and Feedback sidebar_position: 6 -description: This page provides information on how to deal with bugs, get support, +description: + This page provides information on how to deal with bugs, get support, and provide feedback for the OpenBB Terminal. It includes details on the release process for patches, how to report a bug, and ways to request new features or provide suggestions for improvements. keywords: -- bug reporting -- support -- feedback -- patches -- GitHub -- open source platform -- investors -- feature request -- machine learning + - bug reporting + - support + - feedback + - patches + - GitHub + - open source platform + - investors + - feature request + - machine learning --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -23,7 +24,8 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; When an error is encountered, it is always a good idea to check the open issues on [GitHub](https://github.com/OpenBB-finance/OpenBBTerminal/issues). There may be a workaround solution for the specific problem until a patch is released. -
How often are patches for bugs released? +
+How often are patches for bugs released? The installer versions are packaged approximately every two-weeks. Those working with a cloned GitHub version can checkout the Develop branch to get the latest fixes and releases before they are pushed to the main branch. @@ -33,19 +35,22 @@ git checkout develop
-
How do I report a bug? +
+How do I report a bug? First, search the open issues for another report. If one already exists, attach any relevant information and screenshots as a comment. If one does not exist, start one with this [link](https://github.com/OpenBB-finance/OpenBBTerminal/issues/new?assignees=&labels=type%3Abug&template=bug_report.md&title=%5BBug%5D)
-
How can I get help with OpenBB Terminal? +
+How can I get help with OpenBB Terminal? You can get help with OpenBB Terminal by joining our [Discord server](https://openbb.co/discord) or contact us in our support form [here](https://openbb.co/support).
-
How can I give feedback about the OpenBB Terminal, or request specific functionality? +
+How can I give feedback about the OpenBB Terminal, or request specific functionality? Being an open source platform that wishes to tailor to the needs of any type of investor, we highly encourage anyone to share with us their experience and/or how we can further improve the OpenBB Terminal. This can be anything from a very small bug, a new feature, or the implementation of a highly advanced Machine Learning model. diff --git a/website/content/sdk/faqs/data_sources.md b/website/content/sdk/faqs/data_sources.md index 124eb1b09f11..217917956362 100644 --- a/website/content/sdk/faqs/data_sources.md +++ b/website/content/sdk/faqs/data_sources.md @@ -1,19 +1,20 @@ --- title: Data and Sources sidebar_position: 4 -description: OpenBB is a data aggregator that provides access to data from various +description: + OpenBB is a data aggregator that provides access to data from various sources. It is important to understand how to load ticker symbols, end-of-day daily data, and handle certain limitations like accessing the Binance API. Feature request options are available for specific data source endpoints. keywords: -- data aggregators -- data providers -- ticker symbols -- end-of-day daily data -- Binance API -- feature request -- live feeds -- load function + - data aggregators + - data providers + - ticker symbols + - end-of-day daily data + - Binance API + - feature request + - live feeds + - load function --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -22,13 +23,15 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; Please note that OpenBB does not provide any data, it is an aggregator which provides users access to data from a variety of sources. OpenBB does not maintain or have any control over the raw data supplied. If there is a specific problem with the output from a data provider, please consider contacting them first. -
Is there a list of all data providers? +
+Is there a list of all data providers? The complete list is found [here](/terminal/usage/data/api-keys)
-
How do I load a ticker symbol from India? +
+How do I load a ticker symbol from India? Ticker symbols listed on exchanges outside of the US will have a suffix attached, for example, Rico Auto Industries Limited: @@ -40,7 +43,8 @@ The precise naming convention will differ by source, reference each source's own
-
Data from today is missing. +
+Data from today is missing. By default, the load function requests end-of-day daily data and is not included until the EOD summary has been published. The current day's data is considered intraday and is loaded when the `interval` argument is present. @@ -50,13 +54,15 @@ df = openbb.stocks.load(SPY, interval = 60)
-
Can I stream live prices and news feeds? +
+Can I stream live prices and news feeds? It is not currently possible to stream live feeds with the OpenBB SDK.
-
"Pair BTC/USDT not found in binance" +
+"Pair BTC/USDT not found in binance" US-based users are currently unable to access the Binance API. Please try loading the pair from a different source, for example: @@ -64,7 +70,8 @@ US-based users are currently unable to access the Binance API. Please try loadin
-
How can I request adding endpoints from a specific data source? +
+How can I request adding endpoints from a specific data source? Please [request a feature](https://openbb.co/request-a-feature) by submitting a new request. diff --git a/website/content/sdk/faqs/developer_issues.md b/website/content/sdk/faqs/developer_issues.md index 6a7510edbac1..72bac3d858c8 100644 --- a/website/content/sdk/faqs/developer_issues.md +++ b/website/content/sdk/faqs/developer_issues.md @@ -1,29 +1,31 @@ --- title: Developer Issues sidebar_position: 7 -description: A comprehensive troubleshooting guide for developers regarding common +description: + A comprehensive troubleshooting guide for developers regarding common issues such as launching in debug mode, dealing with GitHub pull requests, git pull errors, missing 'wheel', non-existent .whl files, handling JSONDecodeError, correcting CRLF errors, running OpenBB via VS Code integrated terminal, and more. keywords: -- Developer Issues -- Debug mode -- GitHub pull requests -- git pull error -- wheel missing -- whl files -- JSONDecodeError -- CRLF error -- VS Code integrated terminal + - Developer Issues + - Debug mode + - GitHub pull requests + - git pull error + - wheel missing + - whl files + - JSONDecodeError + - CRLF error + - VS Code integrated terminal --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -
How do I launch in debug mode? +
+How do I launch in debug mode? -The PyWry window can be run in debug mode for identifying specific issues. Use the code block below - with the `obb` Python environment active - to import the OpenBB SDK in debug mode. +The PyWry window can be run in debug mode for identifying specific issues. Use the code block below - with the `obb` Python environment active - to import the OpenBB SDK in debug mode. ```python import os @@ -39,7 +41,8 @@ The charts and tables will now include a developer tools button, located at the
-
What branch on GitHub should pull requests be submitted to? +
+What branch on GitHub should pull requests be submitted to? Pull requests submitted to the Main branch will not be merged, please create branches from the `develop` branch. @@ -58,7 +61,8 @@ Branches must also follow the naming convention:
-
Error: "git pull" fails because of a hot fix: cannot lock ref +
+Error: "git pull" fails because of a hot fix: cannot lock ref If the error message looks something like: @@ -75,7 +79,8 @@ git pull
-
What does it mean if it says wheel is missing? +
+What does it mean if it says wheel is missing? If you receive any notifications regarding `wheel` missing, this could be due to this dependency missing. @@ -83,7 +88,8 @@ If you receive any notifications regarding `wheel` missing, this could be due to
-
Why do these .whl files not exist? +
+Why do these .whl files not exist? If you get errors about .whl files not existing (usually on Windows) you have to reinitialize the following folder. Just removing the 'artifacts' folder could also be enough: @@ -114,12 +120,14 @@ If you run into trouble with Poetry, and the advice above did not help, your bes - `conda env remove -n obb` - `conda clean -a` - Make a new environment and install dependencies again. + - Reboot your computer and try again - Submit a ticket on GitHub
-
What does the JSONDecodeError mean during poetry install? +
+What does the JSONDecodeError mean during poetry install? Sometimes poetry can throw a `JSONDecodeError` on random packages while running `poetry install`. This can be observed on macOS 10.14+ running python 3.8+. This is because of the use of an experimental installer that can be switched off to avoid the mentioned error. Run the code below as advised [here](https://github.com/python-poetry/poetry/issues/4210) and it should fix the installation process. @@ -135,7 +143,8 @@ _Commands that may help you in case of an error:_
-
How do I deal with errors regarding CRLF? +
+How do I deal with errors regarding CRLF? When trying to commit code changes, pylint will prevent you from doing so if your line break settings are set to CRLF (default for Windows). @@ -158,7 +167,8 @@ git reset --hard
-
Why can't I run OpenBB via the VS Code integrated terminal? +
+Why can't I run OpenBB via the VS Code integrated terminal? This occurs when VS Code terminal python version/path is different from the terminal version. diff --git a/website/content/sdk/faqs/general_operation.md b/website/content/sdk/faqs/general_operation.md index 38d88c316a14..6cb87e785c60 100644 --- a/website/content/sdk/faqs/general_operation.md +++ b/website/content/sdk/faqs/general_operation.md @@ -1,27 +1,28 @@ --- title: General Operation sidebar_position: 3 -description: A page providing comprehensive tutorial and help information on enabling +description: + A page providing comprehensive tutorial and help information on enabling developer mode and resolving system-related issues on both Windows and MacOS for OpenBB's software. keywords: -- OpenBB software -- Developer mode -- System-related issues -- Windows -- MacOS -- Security policy -- Software troubleshooting -- Firewall & Network Protection -- OpenBB's tutorials -- Software installation -- Coding tools -- Terminal.app -- Visual Studio Code -- User manuals -- FAQs -- Instructions -- How-to guide + - OpenBB software + - Developer mode + - System-related issues + - Windows + - MacOS + - Security policy + - Software troubleshooting + - Firewall & Network Protection + - OpenBB's tutorials + - Software installation + - Coding tools + - Terminal.app + - Visual Studio Code + - User manuals + - FAQs + - Instructions + - How-to guide --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -41,13 +42,15 @@ From the Windows Security menu, click on the Firewall & Network Protection tab, - VcXsrv - Windows Terminal -
An example code block does not work. +
+An example code block does not work. We try to keep example code up-to-date, but sometimes a specific example is left behind. Please submit a bug report and so that we are aware of the issue. Submit a bug report [here](https://openbb.co/support)
-
Why does a specific menu or command not exist? +
+Why does a specific menu or command not exist? It could be that you are running an outdated version in which the menu or command is not yet available. Please check the [installation guide](https://my.openbb.co/app/sdk/installation) to download the most recent release. @@ -55,19 +58,22 @@ Do note that it is also possible that the menu or command has been deprecated. I
-
What is the correct format for entering dates to function variables? +
+What is the correct format for entering dates to function variables? Dates should be entered as a string variable, inside of quotation marks, formatted as `%Y-%m-%d` - YYYY-MM-DD.
-
Does the portfolio menu allow for dividends, interest, or other distributions? +
+Does the portfolio menu allow for dividends, interest, or other distributions? Currently, this is only possible by manually updating the portfolio file.
-
Why does my Portfolio file fail to load? +
+Why does my Portfolio file fail to load? This can be the result of a formatting error, check the file in a simple text editor to observe any abnormalities in the formatting; or, it could be a bug - check the [GitHub issues page](https://github.com/OpenBB-finance/OpenBBTerminal/issues) for similar errors. @@ -87,7 +93,8 @@ See the guide [here](/sdk/data-available/portfolio/introduction) for more inform
-
How do I change the chart styles? +
+How do I change the chart styles? Place style sheets in this folder: `OpenBBUserData/styles/user` @@ -107,7 +114,8 @@ theme = TerminalStyle("dark", "dark", "dark")
-
Where are the included stock screener presets located? +
+Where are the included stock screener presets located? The files are located in the folder with the code, under: diff --git a/website/content/sdk/faqs/import_errors.md b/website/content/sdk/faqs/import_errors.md index 9b1688b0c97a..e692b75d080b 100644 --- a/website/content/sdk/faqs/import_errors.md +++ b/website/content/sdk/faqs/import_errors.md @@ -1,23 +1,24 @@ --- title: Import Errors sidebar_position: 2 -description: This page provides solutions for common import errors when installing +description: + This page provides solutions for common import errors when installing the OpenBB SDK, including guidance on managing virtual environments, handling ModuleNotFoundError, dealing with SSL certificate authorization, and configuring proxy connections. keywords: -- Import Errors -- SciPy -- ModuleNotFoundError -- virtual environment -- poetry install -- conda activate -- Jupyter -- GitHub -- SSL certificates -- firewall -- pip-system-certs -- proxy connection -- .env file + - Import Errors + - SciPy + - ModuleNotFoundError + - virtual environment + - poetry install + - conda activate + - Jupyter + - GitHub + - SSL certificates + - firewall + - pip-system-certs + - proxy connection + - .env file --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -26,7 +27,8 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; When packages not included in the OpenBB installation are installed to the same environment as the SDK, it is possible that an incompatible build of a specific library (like SciPy) has overwritten the existing and creating a conflict. In this event, try creating a new environment containing only the OpenBB dependencies. -
ModuleNotFoundError: No module named '______' +
+ModuleNotFoundError: No module named '______' Before troubleshooting please verify that the recommended installation instructions were followed. These errors often can occur when the virtual environment has not been activated, or the `poetry install` command was skipped. Activate the OpenBB virtual environment created during the installation process prior to launching or importing the SDK. @@ -61,13 +63,14 @@ poetry install -E all
-
SSL certificates fail to authorize +
+SSL certificates fail to authorize ```console SSL: CERTIFICATE_VERIFY_FAILED ``` -An error message, similar to above, is usually encountered while attempting to use the OpenBB Platform from behind a firewall. A workplace environment is typically the most common occurrence. Try connecting to the internet directly through a home network to test the connection. If using a work computer and/or network, we recommend speaking with the company's IT department prior to installing or running any software. +An error message, similar to above, is usually encountered while attempting to use the OpenBB Platform from behind a firewall. A workplace environment is typically the most common occurrence. Try connecting to the internet directly through a home network to test the connection. If using a work computer and/or network, we recommend speaking with the company's IT department prior to installing or running any software. A potential solution is to try: @@ -77,7 +80,8 @@ pip install pip-system-certs
-
Cannot connect due to proxy connection. +
+Cannot connect due to proxy connection. Find the `.env` file (located at the root of the user account folder: (`~/.openbb_terminal/.env`), and add a line at the bottom of the file with: diff --git a/website/content/sdk/faqs/installation_updates.md b/website/content/sdk/faqs/installation_updates.md index 7482dbb28e54..f611c9b14d2d 100644 --- a/website/content/sdk/faqs/installation_updates.md +++ b/website/content/sdk/faqs/installation_updates.md @@ -1,29 +1,31 @@ --- title: Installation and Updates sidebar_position: 1 -description: This page provides detailed instructions for the installation and updating +description: + This page provides detailed instructions for the installation and updating processes for software, addressing frequently encountered installation issues. These instructions include resolving Microsoft Visual C++ 14.0 dependencies, benefits of using Miniconda for package management, methods to update installations, and solutions for other common installation errors. keywords: -- Installation -- Updates -- Microsoft Visual C++ 14.0 -- Miniconda -- pip install -- PyPi Nightly -- C++ Build Tools -- Homebrew -- bt wheel build failure -- ARM/Linux Raspberry Pi machines + - Installation + - Updates + - Microsoft Visual C++ 14.0 + - Miniconda + - pip install + - PyPi Nightly + - C++ Build Tools + - Homebrew + - bt wheel build failure + - ARM/Linux Raspberry Pi machines --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -
"Microsoft Visual C++ 14.0 or greater is required" +
+"Microsoft Visual C++ 14.0 or greater is required" Download and install [C++ Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/), restart the machine, then try again. @@ -33,13 +35,15 @@ Download and install [C++ Build Tools](https://visualstudio.microsoft.com/visual
-
Do I have to use Miniconda? +
+Do I have to use Miniconda? There are certain dependencies which are sourced exclusively from the `conda-forge` directory. Other virtual environment managers, such a `venv`, may not solve the environment properly, resulting in failed package installations or incorrect builds. We highly recommend using Miniconda as the Python virtual environment manager for installing the OpenBB SDK.
-
How do I update my installation to the latest version? +
+How do I update my installation to the latest version? The code is constantly being updated with new features and bug fixes. The process for updating will vary by the installation type: @@ -66,13 +70,15 @@ pip install openbb-terminal-nightly[all] **Note**: This version may not be stable and should not be used in a production setting. -
"Microsoft Visual C++ 14.0 or greater is required" +
+"Microsoft Visual C++ 14.0 or greater is required" Download and install [C++ Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/), restart the machine, then try again.
-
Error: failed building wheel for bt +
+Error: failed building wheel for bt There may be an additional message that is printed from this error, stating: "Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools". @@ -99,13 +105,15 @@ softwareupdate --install-rosetta
-
Miniconda3 will not install on ARM/Linux Raspberry Pi machines. +
+Miniconda3 will not install on ARM/Linux Raspberry Pi machines. Refer to this issue on the Conda [GitHub](https://github.com/conda/conda/issues/10723) page.
-
Error: Library not loaded: '/usr/local/opt/libomp/lib/libomp.dylib' +
+Error: Library not loaded: '/usr/local/opt/libomp/lib/libomp.dylib' This error is resolved by installing libomp from Homebrew: diff --git a/website/content/sdk/reference/alt/oss/ross.md b/website/content/sdk/reference/alt/oss/ross.md index 24270b138b18..fc7335e282c9 100644 --- a/website/content/sdk/reference/alt/oss/ross.md +++ b/website/content/sdk/reference/alt/oss/ross.md @@ -1,19 +1,20 @@ --- title: ross -description: This documentation page provides detailed information about the 'ross' +description: + This documentation page provides detailed information about the 'ross' functions of the OpenBB Terminal. These functions help to retrieve and visualize data about startups from the ROSS index. keywords: -- ross function -- data retrieval -- startups data -- ROSS index -- visualization -- dataframe -- chart -- data sort -- growth line chart -- data export + - ross function + - data retrieval + - startups data + - ROSS index + - visualization + - dataframe + - chart + - data sort + - growth line chart + - data export --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -44,9 +45,10 @@ This function does not take any parameters. ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------ | ---------------- | | pd.DataFrame | list of startups | + --- @@ -64,17 +66,16 @@ openbb.alt.oss.ross_chart(limit: int = 10, sortby: str = "Stars AGR [%]", ascend ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| limit | int | Number of startups to search | 10 | True | -| sortby | str | Key by which to sort data. Default: Stars AGR [%] | Stars AGR [%] | True | -| ascend | bool | Flag to sort data descending | False | True | -| show_chart | bool | Flag to show chart with startups | False | True | -| show_growth | bool | Flag to show growth line chart | True | True | -| chart_type | str | Chart type {stars,forks} | stars | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | -| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | - +| Name | Type | Description | Default | Optional | +| ------------- | ------------------------ | --------------------------------------------------------------- | ------------- | -------- | +| limit | int | Number of startups to search | 10 | True | +| sortby | str | Key by which to sort data. Default: Stars AGR [%] | Stars AGR [%] | True | +| ascend | bool | Flag to sort data descending | False | True | +| show_chart | bool | Flag to show chart with startups | False | True | +| show_growth | bool | Flag to show growth line chart | True | True | +| chart_type | str | Chart type \{stars,forks\} | stars | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | +| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | --- diff --git a/website/content/sdk/reference/alt/oss/search.md b/website/content/sdk/reference/alt/oss/search.md index 8a2ff8ec7b3b..b746f799ae86 100644 --- a/website/content/sdk/reference/alt/oss/search.md +++ b/website/content/sdk/reference/alt/oss/search.md @@ -1,17 +1,18 @@ --- title: search -description: Discover OpenBB's robust functionality to sort repos by stars or forks, +description: + Discover OpenBB's robust functionality to sort repos by stars or forks, with an additional category filter feature. The result is straightforwardly produced as a DataFrame. Source code available. keywords: -- OpenBB finance -- Repo sorter -- Star ranking -- Fork ranking -- Category filter -- Python API -- Financial data extraction -- Dataframe results + - OpenBB finance + - Repo sorter + - Star ranking + - Fork ranking + - Category filter + - Python API + - Financial data extraction + - Dataframe results --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -30,18 +31,18 @@ openbb.alt.oss.search(sortby: str = "stars", page: int = 1, categories: str = "" ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| sortby | str | Sort repos by {stars, forks} | stars | True | -| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | -| page | int | Page number to get repos | 1 | True | - +| Name | Type | Description | Default | Optional | +| ---------- | ---- | ---------------------------------------------------------------------------------------------------------- | ------- | -------- | +| sortby | str | Sort repos by \{stars, forks\} | stars | True | +| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | +| page | int | Page number to get repos | 1 | True | --- ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------ | -------------------- | | pd.DataFrame | Dataframe with repos | + --- diff --git a/website/content/sdk/reference/alt/oss/top.md b/website/content/sdk/reference/alt/oss/top.md index e77cdcff042d..592a019e95d5 100644 --- a/website/content/sdk/reference/alt/oss/top.md +++ b/website/content/sdk/reference/alt/oss/top.md @@ -1,23 +1,23 @@ --- title: top -description: 'This content describes two features: ''Model'' and ''Chart''. ''Model'' - gets repositories sorted by stars or forks with possible category filtering. ''Chart'' - plots a repo summary. Both procedures involve parameters like ''sortby'', ''categories'', - ''limit'', ''export'', and ''external_axes''.' +description: "This content describes two features: 'Model' and 'Chart'. 'Model' + gets repositories sorted by stars or forks with possible category filtering. 'Chart' + plots a repo summary. Both procedures involve parameters like 'sortby', 'categories', + 'limit', 'export', and 'external_axes'." keywords: -- Documentation -- Model -- Chart -- Repositories -- Stars -- Forks -- Filtering -- Parameters -- Sortby -- Categories -- Limit -- Export -- External_axes + - Documentation + - Model + - Chart + - Repositories + - Stars + - Forks + - Filtering + - Parameters + - Sortby + - Categories + - Limit + - Export + - External_axes --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -42,20 +42,20 @@ openbb.alt.oss.top(sortby: str, limit: int = 50, categories: str = "") ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| sortby | str | Sort repos by {stars, forks} | None | False | -| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | -| limit | int | Number of repos to search for | 50 | True | - +| Name | Type | Description | Default | Optional | +| ---------- | ---- | ---------------------------------------------------------------------------------------------------------- | ------- | -------- | +| sortby | str | Sort repos by \{stars, forks\} | None | False | +| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | +| limit | int | Number of repos to search for | 50 | True | --- ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------ | -------------------- | | pd.DataFrame | Dataframe with repos | + --- @@ -73,14 +73,13 @@ openbb.alt.oss.top_chart(sortby: str, categories: str = "", limit: int = 10, exp ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| sortby | str | Sort repos by {stars, forks} | None | False | -| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | -| limit | int | Number of repos to look at | 10 | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | -| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | - +| Name | Type | Description | Default | Optional | +| ------------- | ------------------------ | ---------------------------------------------------------------------------------------------------------- | ------- | -------- | +| sortby | str | Sort repos by \{stars, forks\} | None | False | +| categories | str | Check for repo categories. If more than one separate with a comma: e.g., finance,investment. Default: None | | True | +| limit | int | Number of repos to look at | 10 | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | +| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | --- diff --git a/website/content/sdk/reference/crypto/dd/binance_available_quotes_for_each_coin.md b/website/content/sdk/reference/crypto/dd/binance_available_quotes_for_each_coin.md index 05398caf76fd..caeacc8d3643 100644 --- a/website/content/sdk/reference/crypto/dd/binance_available_quotes_for_each_coin.md +++ b/website/content/sdk/reference/crypto/dd/binance_available_quotes_for_each_coin.md @@ -1,17 +1,18 @@ --- title: binance_available_quotes_for_each_coin -description: This page provides a detailed guide to the helper methods in OpenBB Terminal +description: + This page provides a detailed guide to the helper methods in OpenBB Terminal that, for every coin available on Binance, add all quote assets. It includes how to use the function and what it will return. keywords: -- Binance -- cryptocurrency -- quote assets -- helper methods -- coin -- function -- parameters -- returns + - Binance + - cryptocurrency + - quote assets + - helper methods + - coin + - function + - parameters + - returns --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -36,7 +37,8 @@ This function does not take any parameters. ## Returns -| Type | Description | -| ---- | ----------- | -| dict | All quote assets for given coin
{'ETH' : ['BTC', 'USDT' ...], 'UNI' : ['ETH', 'BTC','BUSD', ...] | +| Type | Description | +| ---- | ------------------------------------------------------------------------------------------------------- | +| dict | All quote assets for given coin
\{'ETH' : ['BTC', 'USDT' ...], 'UNI' : ['ETH', 'BTC','BUSD', ...]\} | + --- diff --git a/website/content/sdk/reference/crypto/dd/trading_pairs.md b/website/content/sdk/reference/crypto/dd/trading_pairs.md index 5a0c65433fac..26a962d54051 100644 --- a/website/content/sdk/reference/crypto/dd/trading_pairs.md +++ b/website/content/sdk/reference/crypto/dd/trading_pairs.md @@ -1,21 +1,22 @@ --- title: trading_pairs -description: Information and code snippet on how to get all trading pairs on binance +description: + Information and code snippet on how to get all trading pairs on binance using openbb.crypto.dd.trading_pairs(). Details parameters and returns. keywords: -- trading pairs -- binance -- openbb.crypto.dd -- cryptocurrency -- due diligence -- openbb terminal -- trading parameters -- API -- ETHBTC symbol -- trading functionality + - trading pairs + - binance + - openbb.crypto.dd + - cryptocurrency + - due diligence + - openbb terminal + - trading parameters + - API + - ETHBTC symbol + - trading functionality --- -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; @@ -37,7 +38,46 @@ This function does not take any parameters. ## Returns -| Type | Description | -| ---- | ----------- | -| List[dict] | list of dictionaries in format:
[
{'symbol': 'ETHBTC', 'status': 'TRADING', 'baseAsset': 'ETH', 'baseAssetPrecision': 8,
'quoteAsset': 'BTC', 'quotePrecision': 8, 'quoteAssetPrecision': 8,
'baseCommissionPrecision': 8, 'quoteCommissionPrecision': 8,
'orderTypes': ['LIMIT', 'LIMIT_MAKER', 'MARKET', 'STOP_LOSS_LIMIT', 'TAKE_PROFIT_LIMIT'],
'icebergAllowed': True,
'ocoAllowed': True,
'quoteOrderQtyMarketAllowed': True,
'isSpotTradingAllowed': True,
'isMarginTradingAllowed': True,
'filters': [{'filterType': 'PRICE_FILTER', 'minPrice': '0.00000100',
'maxPrice': '922327.00000000', 'tickSize': '0.00000100'},
{'filterType': 'PERCENT_PRICE', 'multiplierUp': '5', 'multiplierDown': '0.2', 'avgPriceMins': 5},
{'filterType': 'LOT_SIZE', 'minQty': '0.00100000', 'maxQty': '100000.00000000', 'stepSize': '0.00100000'},
{'filterType': 'MIN_NOTIONAL', 'minNotional': '0.00010000', 'applyToMarket': True, 'avgPriceMins': 5},
{'filterType': 'ICEBERG_PARTS', 'limit': 10}, {'filterType': 'MARKET_LOT_SIZE', 'minQty': '0.00000000',
'maxQty': '930.49505347', 'stepSize': '0.00000000'}, {'filterType': 'MAX_NUM_ORDERS', 'maxNumOrders': 200},
{'filterType': 'MAX_NUM_ALGO_ORDERS', 'maxNumAlgoOrders': 5}], 'permissions': ['SPOT', 'MARGIN']},
...
] | + + + + + + + + + +
TypeDescription
List[dict] +list of dictionaries in format: + +```python +[ + { + 'symbol': 'ETHBTC', 'status': 'TRADING', 'baseAsset': 'ETH', 'baseAssetPrecision': 8, + 'quoteAsset': 'BTC', 'quotePrecision': 8, 'quoteAssetPrecision': 8, + 'baseCommissionPrecision': 8, 'quoteCommissionPrecision': 8, + 'orderTypes': ['LIMIT', 'LIMIT_MAKER', 'MARKET', 'STOP_LOSS_LIMIT', 'TAKE_PROFIT_LIMIT'], + 'icebergAllowed': True, + 'ocoAllowed': True, + 'quoteOrderQtyMarketAllowed': True, + 'isSpotTradingAllowed': True, + 'isMarginTradingAllowed': True, + 'filters': [ + {'filterType': 'PRICE_FILTER', 'minPrice': '0.00000100', 'maxPrice': '922327.00000000', 'tickSize': '0.00000100'}, + {'filterType': 'PERCENT_PRICE', 'multiplierUp': '5', 'multiplierDown': '0.2', 'avgPriceMins': 5}, + {'filterType': 'LOT_SIZE', 'minQty': '0.00100000', 'maxQty': '100000.00000000', 'stepSize': '0.00100000'}, + {'filterType': 'MIN_NOTIONAL', 'minNotional': '0.00010000', 'applyToMarket': True, 'avgPriceMins': 5}, + {'filterType': 'ICEBERG_PARTS', 'limit': 10}, + {'filterType': 'MARKET_LOT_SIZE', 'minQty': '0.00000000', 'maxQty': '930.49505347', 'stepSize': '0.00000000'}, + {'filterType': 'MAX_NUM_ORDERS', 'maxNumOrders': 200}, + {'filterType': 'MAX_NUM_ALGO_ORDERS', 'maxNumAlgoOrders': 5} + ], + 'permissions': ['SPOT', 'MARGIN'] + } +] + +``` + +
+ --- diff --git a/website/content/sdk/reference/crypto/defi/anchor_data.md b/website/content/sdk/reference/crypto/defi/anchor_data.md index 696658718cd8..46a7543bcd2b 100644 --- a/website/content/sdk/reference/crypto/defi/anchor_data.md +++ b/website/content/sdk/reference/crypto/defi/anchor_data.md @@ -1,21 +1,22 @@ --- title: anchor_data -description: Improve your understanding of the Anchor protocol with the help of our +description: + Improve your understanding of the Anchor protocol with the help of our documentation providing detailed instructions on how to retrieve and plot earnings data for a specific Terra address. Skim through the parameters, the types, the given descriptions, and the functionality. keywords: -- docusaurus -- anchor protocol -- earnings data -- terra address -- parameters -- returns -- model -- view chart -- plot -- transactions history -- export + - docusaurus + - anchor protocol + - earnings data + - terra address + - parameters + - returns + - model + - view chart + - plot + - transactions history + - export --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -40,18 +41,18 @@ openbb.crypto.defi.anchor_data(address: str = "") ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| address | str | Terra address. Valid terra addresses start with 'terra' | | True | - +| Name | Type | Description | Default | Optional | +| ------- | ---- | ------------------------------------------------------- | ------- | -------- | +| address | str | Terra address. Valid terra addresses start with 'terra' | | True | --- ## Returns -| Type | Description | -| ---- | ----------- | -| Tuple[pd.DataFrame, pd.DataFrame, str] | - pd.DataFrame: Earnings over time in UST
- pd.DataFrame: History of transactions
- str: Overall statistics | +| Type | Description | +| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | +| Tuple[pd.DataFrame, pd.DataFrame, str] | - pd.DataFrame: Earnings over time in UST
- pd.DataFrame: History of transactions
- str: Overall statistics | + --- @@ -69,14 +70,13 @@ openbb.crypto.defi.anchor_data_chart(address: str = "", export: str = "", show_t ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| asset | str | Terra asset {ust,luna,sdt} | None | True | -| address | str | Terra address. Valid terra addresses start with 'terra' | | True | -| show_transactions | bool | Flag to show history of transactions in Anchor protocol for address. Default False | False | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | -| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | - +| Name | Type | Description | Default | Optional | +| ----------------- | ------------------------ | ---------------------------------------------------------------------------------- | ------- | -------- | +| asset | str | Terra asset \{ust,luna,sdt\} | None | True | +| address | str | Terra address. Valid terra addresses start with 'terra' | | True | +| show_transactions | bool | Flag to show history of transactions in Anchor protocol for address. Default False | False | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | +| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | --- diff --git a/website/content/sdk/reference/crypto/defi/aterra.md b/website/content/sdk/reference/crypto/defi/aterra.md index 58de67c57cd5..45f7569193a0 100644 --- a/website/content/sdk/reference/crypto/defi/aterra.md +++ b/website/content/sdk/reference/crypto/defi/aterra.md @@ -1,18 +1,19 @@ --- title: aterra -description: This document provides information about how to fetch historical data +description: + This document provides information about how to fetch historical data for a specific Terra asset, plot the 30-day history of that asset and explains the usage of each function. Also includes source code links. keywords: -- Terra assets -- historical data -- address -- GET request -- Draw chart -- aterra -- meta data -- parameters -- returns + - Terra assets + - historical data + - address + - GET request + - Draw chart + - aterra + - meta data + - parameters + - returns --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -37,19 +38,19 @@ openbb.crypto.defi.aterra(asset: str = "ust", address: str = "terra1tmnqgvg567yp ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| asset | str | Terra asset {ust,luna,sdt} | ust | True | -| address | str | Terra address. Valid terra addresses start with 'terra' | terra1tmnqgvg567ypvsvk6rwsga3srp7e3lg6u0elp8 | True | - +| Name | Type | Description | Default | Optional | +| ------- | ---- | ------------------------------------------------------- | -------------------------------------------- | -------- | +| asset | str | Terra asset \{ust,luna,sdt\} | ust | True | +| address | str | Terra address. Valid terra addresses start with 'terra' | terra1tmnqgvg567ypvsvk6rwsga3srp7e3lg6u0elp8 | True | --- ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------ | --------------- | | pd.DataFrame | historical data | + --- @@ -67,13 +68,12 @@ openbb.crypto.defi.aterra_chart(asset: str = "", address: str = "", export: str ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| asset | str | Terra asset {ust,luna,sdt} | | True | -| address | str | Terra address. Valid terra addresses start with 'terra' | | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | -| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | - +| Name | Type | Description | Default | Optional | +| ------------- | ------------------------ | --------------------------------------------------------------- | ------- | -------- | +| asset | str | Terra asset \{ust,luna,sdt\} | | True | +| address | str | Terra address. Valid terra addresses start with 'terra' | | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | +| external_axes | Optional[List[plt.Axes]] | External axes (1 axis is expected in the list), by default None | None | True | --- diff --git a/website/content/sdk/reference/crypto/disc/gainers.md b/website/content/sdk/reference/crypto/disc/gainers.md index abb1315bb1bf..1f9854d0027a 100644 --- a/website/content/sdk/reference/crypto/disc/gainers.md +++ b/website/content/sdk/reference/crypto/disc/gainers.md @@ -1,19 +1,20 @@ --- title: gainers -description: The page provides functionalities regarding Largest Gainers in cryptocurrency, +description: + The page provides functionalities regarding Largest Gainers in cryptocurrency, powered by CoinGecko's API. It contains Python models and charts to display the coins which gain the most in a given period. Additionally, it provides details on how to sort and display data, and export data to different file formats. keywords: -- gainers -- crypto -- coingecko -- model -- chart -- dataframe -- price -- volume -- export + - gainers + - crypto + - coingecko + - model + - chart + - dataframe + - price + - volume + - export --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -38,20 +39,20 @@ openbb.crypto.disc.gainers(interval: str = "1h", limit: int = 50, sortby: str = ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| interval | str | Time interval by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | -| limit | int | Number of records to display | 50 | True | -| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | - +| Name | Type | Description | Default | Optional | +| -------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- | -------- | +| interval | str | Time interval by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | +| limit | int | Number of records to display | 50 | True | +| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | --- ## Returns -| Type | Description | -| ---- | ----------- | -| pd.DataFrame | Top Gainers - coins which gain most in price in given period of time.
Columns: Symbol, Name, Volume, Price, %Change_{interval}, Url | +| Type | Description | +| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | +| pd.DataFrame | Top Gainers - coins which gain most in price in given period of time.
Columns: Symbol, Name, Volume, Price, %Change\_\{interval\}, Url | + --- @@ -69,13 +70,12 @@ openbb.crypto.disc.gainers_chart(interval: str = "1h", limit: int = 20, sortby: ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| interval | str | Time period by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | -| limit | int | Number of records to display | 20 | True | -| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | - +| Name | Type | Description | Default | Optional | +| -------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- | -------- | +| interval | str | Time period by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | +| limit | int | Number of records to display | 20 | True | +| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | --- diff --git a/website/content/sdk/reference/crypto/disc/losers.md b/website/content/sdk/reference/crypto/disc/losers.md index 184bef0c90d6..9d2faef29912 100644 --- a/website/content/sdk/reference/crypto/disc/losers.md +++ b/website/content/sdk/reference/crypto/disc/losers.md @@ -1,16 +1,17 @@ --- title: losers -description: The 'Losers' page on OpenBBTerminal provides functions that allow users +description: + The 'Losers' page on OpenBBTerminal provides functions that allow users to find out which cryptocurrencies suffered the largest losses during a given time period. Documentation includes information on parameters, return types, and source code. keywords: -- Cryptocurrency -- Losers -- Price changes -- CoinGecko -- API -- Crypto analysis + - Cryptocurrency + - Losers + - Price changes + - CoinGecko + - API + - Crypto analysis --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -35,20 +36,20 @@ openbb.crypto.disc.losers(interval: str = "1h", limit: int = 50, sortby: str = " ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| interval | str | Time interval by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | -| limit | int | Number of records to display | 50 | True | -| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | - +| Name | Type | Description | Default | Optional | +| -------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- | -------- | +| interval | str | Time interval by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | +| limit | int | Number of records to display | 50 | True | +| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | market_cap_rank | True | --- ## Returns -| Type | Description | -| ---- | ----------- | -| pd.DataFrame | Top Losers - coins which lost most in price in given period of time.
Columns: Symbol, Name, Volume, Price, %Change_{interval}, Url | +| Type | Description | +| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | +| pd.DataFrame | Top Losers - coins which lost most in price in given period of time.
Columns: Symbol, Name, Volume, Price, %Change\_\{interval\}, Url | + --- @@ -66,13 +67,12 @@ openbb.crypto.disc.losers_chart(interval: str = "1h", limit: int = 20, export: s ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| interval | str | Time period by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | -| limit | int | Number of records to display | 20 | True | -| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | Market Cap Rank | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | - +| Name | Type | Description | Default | Optional | +| -------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- | -------- | +| interval | str | Time period by which data is displayed. One from [1h, 24h, 7d, 14d, 30d, 60d, 1y] | 1h | True | +| limit | int | Number of records to display | 20 | True | +| sortby | str | Key to sort data. The table can be sorted by every of its columns. Refer to
API documentation (see /coins/markets in https://www.coingecko.com/en/api/documentation) | Market Cap Rank | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | --- diff --git a/website/content/sdk/reference/crypto/ov/cr.md b/website/content/sdk/reference/crypto/ov/cr.md index 33807cb76dd3..14c6a79708a7 100644 --- a/website/content/sdk/reference/crypto/ov/cr.md +++ b/website/content/sdk/reference/crypto/ov/cr.md @@ -1,16 +1,17 @@ --- title: cr -description: Documentation for two functions providing cryptocurrency interest rates +description: + Documentation for two functions providing cryptocurrency interest rates for both borrowing and supplying.You can use the functions to export data or generate charts. Several platforms are covered including BlockFi, Ledn, SwissBorg, and Youhodler. keywords: -- Cryptocurrency -- Crypto Interest Rates -- Crypto Borrowing -- Crypto Supplying -- Interest Rate Platforms -- Crypto Charts -- Crypto Data Export + - Cryptocurrency + - Crypto Interest Rates + - Crypto Borrowing + - Crypto Supplying + - Interest Rate Platforms + - Crypto Charts + - Crypto Data Export --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -23,7 +24,7 @@ import TabItem from '@theme/TabItem'; -Returns crypto {borrow,supply} interest rates for cryptocurrencies across several platforms +Returns crypto \{borrow,supply\} interest rates for cryptocurrencies across several platforms Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/cryptocurrency/overview/loanscan_model.py#L267)] @@ -35,24 +36,24 @@ openbb.crypto.ov.cr(rate_type: str = "borrow") ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| rate_type | str | Interest rate type: {borrow, supply}. Default: supply | borrow | True | - +| Name | Type | Description | Default | Optional | +| --------- | ---- | ------------------------------------------------------- | ------- | -------- | +| rate_type | str | Interest rate type: \{borrow, supply\}. Default: supply | borrow | True | --- ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------ | ---------------------------------- | | pd.DataFrame | crypto interest rates per platform | + --- -Displays crypto {borrow,supply} interest rates for cryptocurrencies across several platforms +Displays crypto \{borrow, supply\} interest rates for cryptocurrencies across several platforms Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/cryptocurrency/overview/loanscan_view.py#L24)] @@ -64,14 +65,13 @@ openbb.crypto.ov.cr_chart(symbols: str, platforms: str, rate_type: str = "borrow ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| rate_type | str | Interest rate type: {borrow, supply}. Default: supply | borrow | True | -| symbols | str | Crypto separated by commas. Default: BTC,ETH,USDT,USDC | None | False | -| platforms | str | Platforms separated by commas. Default: BlockFi,Ledn,SwissBorg,Youhodler | None | False | -| limit | int | Number of records to show | 10 | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | - +| Name | Type | Description | Default | Optional | +| --------- | ---- | ------------------------------------------------------------------------ | ------- | -------- | +| rate_type | str | Interest rate type: \{borrow, supply\}. Default: supply | borrow | True | +| symbols | str | Crypto separated by commas. Default: BTC,ETH,USDT,USDC | None | False | +| platforms | str | Platforms separated by commas. Default: BlockFi,Ledn,SwissBorg,Youhodler | None | False | +| limit | int | Number of records to show | 10 | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | --- diff --git a/website/content/sdk/reference/crypto/ov/crypto_hacks.md b/website/content/sdk/reference/crypto/ov/crypto_hacks.md index 33fce677a15a..29e1ca20fc52 100644 --- a/website/content/sdk/reference/crypto/ov/crypto_hacks.md +++ b/website/content/sdk/reference/crypto/ov/crypto_hacks.md @@ -1,15 +1,16 @@ --- title: crypto_hacks -description: Deep dive into major cryptocurrency-related hacks with OpenBB's crypto +description: + Deep dive into major cryptocurrency-related hacks with OpenBB's crypto hacks models. Evaluate, sort by key parameters and view intricate details about each crypto hack. keywords: -- Crypto hacks -- Crypto security -- Cryptocurrency -- OpenBB crypto -- Crypto hack data -- Crypto data sorting + - Crypto hacks + - Crypto security + - Cryptocurrency + - OpenBB crypto + - Crypto hack data + - Crypto data sorting --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -34,19 +35,19 @@ openbb.crypto.ov.crypto_hacks(sortby: str = "Platform", ascend: bool = False) ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| sortby | str | Key by which to sort data {Platform,Date,Amount [$],Audit,Slug,URL} | Platform | True | -| ascend | bool | Flag to sort data ascending | False | True | - +| Name | Type | Description | Default | Optional | +| ------ | ---- | --------------------------------------------------------------------- | -------- | -------- | +| sortby | str | Key by which to sort data \{Platform,Date,Amount [$],Audit,Slug,URL\} | Platform | True | +| ascend | bool | Flag to sort data ascending | False | True | --- ## Returns -| Type | Description | -| ---- | ----------- | -| pd.DataFrame | Hacks with columns {Platform,Date,Amount [$],Audited,Slug,URL} | +| Type | Description | +| ------------ | ---------------------------------------------------------------- | +| pd.DataFrame | Hacks with columns \{Platform,Date,Amount [$],Audited,Slug,URL\} | + --- @@ -64,14 +65,13 @@ openbb.crypto.ov.crypto_hacks_chart(limit: int = 15, sortby: str = "Platform", a ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| slug | str | Crypto hack slug to check (e.g., polynetwork-rekt) | polyntwork-rekt | True | -| limit | int | Number of hacks to search | 15 | True | -| sortby | str | Key by which to sort data {Platform,Date,Amount [$],Audit,Slug,URL} | Platform | True | -| ascend | bool | Flag to sort data ascending | False | True | -| export | str | Export dataframe data to csv,json,xlsx file | | True | - +| Name | Type | Description | Default | Optional | +| ------ | ---- | --------------------------------------------------------------------- | --------------- | -------- | +| slug | str | Crypto hack slug to check (e.g., polynetwork-rekt) | polyntwork-rekt | True | +| limit | int | Number of hacks to search | 15 | True | +| sortby | str | Key by which to sort data \{Platform,Date,Amount [$],Audit,Slug,URL\} | Platform | True | +| ascend | bool | Flag to sort data ascending | False | True | +| export | str | Export dataframe data to csv,json,xlsx file | | True | --- diff --git a/website/content/sdk/reference/portfolio/po/blacklitterman.md b/website/content/sdk/reference/portfolio/po/blacklitterman.md index 60aed8e9237e..e57755c630c4 100644 --- a/website/content/sdk/reference/portfolio/po/blacklitterman.md +++ b/website/content/sdk/reference/portfolio/po/blacklitterman.md @@ -1,18 +1,19 @@ --- title: blacklitterman -description: The page describes the Python method for the Black Litterman model implemented +description: + The page describes the Python method for the Black Litterman model implemented in the OpenBB library for optimizing portfolio weights. This method provides an advanced approach in risk management and return estimation by taking into account various parameters like risk-free rate, risk aversion factor, and objectives like maximizing Sharpe ratio or minimizing risk. keywords: -- Black Litterman model -- Portfolio optimization -- Portfolio weights -- Risk management -- Return estimates -- Sharpe ratio -- Equilibrium portfolio + - Black Litterman model + - Portfolio optimization + - Portfolio weights + - Risk management + - Return estimates + - Sharpe ratio + - Equilibrium portfolio --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -31,38 +32,38 @@ openbb.portfolio.po.blacklitterman(portfolio_engine: portfolio_optimization.po_e ## Parameters -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | -| symbols | List[str] | List of symbols, by default None | None | True | -| interval | str | Interval to get data, by default '3y' | None | True | -| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | -| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | -| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | -| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | -| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | -| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | -| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `__. | None | True | -| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | -| value_short | float | Amount to allocate to portfolio in short positions, by default 0.0 | None | True | -| benchmark | Dict | Dict of portfolio weights, by default None | None | True | -| p_views | List | Matrix P of views that shows relationships among assets and returns, by default None | None | True | -| q_views | List | Matrix Q of expected returns of views, by default None | None | True | -| objective | str | Objective function of the optimization model, by default 'Sharpe'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | -| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | -| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | -| delta | float | Risk aversion factor of Black Litterman model, by default None | None | True | -| equilibrium | bool | If True excess returns are based on equilibrium market portfolio, if False
excess returns are calculated as historical returns minus risk free rate, by default True | None | True | -| optimize | bool | If True Black Litterman estimates are used as inputs of mean variance model,
if False returns equilibrium weights from Black Litterman model, by default True | None | True | - +| Name | Type | Description | Default | Optional | +| ---------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | +| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | +| symbols | List[str] | List of symbols, by default None | None | True | +| interval | str | Interval to get data, by default '3y' | None | True | +| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | +| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | +| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | +| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | +| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | +| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | +| method | str | Method used to fill nan values, by default 'time'
For more information see [`interpolate`](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.interpolate.html). | None | True | +| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | +| value_short | float | Amount to allocate to portfolio in short positions, by default 0.0 | None | True | +| benchmark | Dict | Dict of portfolio weights, by default None | None | True | +| p_views | List | Matrix P of views that shows relationships among assets and returns, by default None | None | True | +| q_views | List | Matrix Q of expected returns of views, by default None | None | True | +| objective | str | Objective function of the optimization model, by default 'Sharpe'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | +| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | +| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | +| delta | float | Risk aversion factor of Black Litterman model, by default None | None | True | +| equilibrium | bool | If True excess returns are based on equilibrium market portfolio, if False
excess returns are calculated as historical returns minus risk free rate, by default True | None | True | +| optimize | bool | If True Black Litterman estimates are used as inputs of mean variance model,
if False returns equilibrium weights from Black Litterman model, by default True | None | True | --- ## Returns -| Type | Description | -| ---- | ----------- | +| Type | Description | +| ------------------------- | --------------------------------------------- | | Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | + --- ## Examples @@ -81,6 +82,7 @@ openbb.portfolio.po.blacklitterman(symbols=["AAPL", "MSFT", "AMZN"]) 'Volatility': 0.33132073874339424, 'Sharpe ratio': 0.7736615325784322}) ``` + ```python from openbb_terminal.sdk import openbb p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") diff --git a/website/content/sdk/reference/portfolio/po/hcp.md b/website/content/sdk/reference/portfolio/po/hcp.md deleted file mode 100644 index 822ba7eca283..000000000000 --- a/website/content/sdk/reference/portfolio/po/hcp.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: hcp -description: The page provides details on hierarchical clustering based portfolios - (HCP) in the OpenBBTerminal, a python tool for advanced investment strategies. It - describes parameters for portfolio optimization including risk measures, covariance - estimations, and clustering techniques. The return outcomes include portfolio weights - and stock returns. -keywords: -- portfolio optimization -- hierarchical clustering -- stock returns -- Hierarchical Risk Parity -- Nested Clustered Optimization -- covariance matrix -- risk measures -- stocks -- portfolio management ---- - -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; - - - -Builds hierarchical clustering based portfolios - -Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py#L1903)] - -```python -openbb.portfolio.po.hcp(symbols: List[str], kwargs: Any) -``` - ---- - -## Parameters - -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| symbols | List[str] | List of portfolio stocks | None | False | -| interval | str | interval to get stock data, by default "3mo" | None | True | -| start_date | str | If not using interval, start date string (YYYY-MM-DD) | None | True | -| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last
weekday. | None | True | -| log_returns | bool | If True calculate log returns, else arithmetic returns. Default value
is False | None | True | -| freq | str | The frequency used to calculate returns. Default value is 'D'. Possible
values are:

- 'D' for daily returns.
- 'W' for weekly returns.
- 'M' for monthly returns. | None | True | -| maxnan | float | Max percentage of nan values accepted per asset to be included in
returns. | None | True | -| threshold | float | Value used to replace outliers that are higher to threshold. | None | True | -| method | str | Method used to fill nan values. Default value is 'time'. For more information see `interpolate `__. | None | True | -| model | str | The hierarchical cluster portfolio model used for optimize the
portfolio. The default is 'HRP'. Possible values are:

- 'HRP': Hierarchical Risk Parity.
- 'HERC': Hierarchical Equal Risk Contribution.
- 'NCO': Nested Clustered Optimization. | None | True | -| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}
- 'abs_pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{pearson}_{i,j}|)}
- 'abs_spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{spearman}_{i,j}|)}
- 'distance': distance correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}
- 'mutual_info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: D_{i,j} = -\log{\lambda_{i,j}}. | None | True | -| covariance | str | The method used to estimate the covariance matrix:
The default is 'hist'. Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `__.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `__.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `c-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `c-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `c-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `c-MLforAM`. | None | True | -| objective | str | Objective function used by the NCO model.
The default is 'MinRisk'. Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'ERC': Equally risk contribution portfolio of the selected risk measure. | None | True | -| risk_measure | str | The risk measure used to optimize the portfolio. If model is 'NCO',
the risk measures available depends on the objective function.
The default is 'MV'. Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | -| risk_free_rate | float | Risk free rate, must be in annual frequency.
Used for 'FLPM' and 'SLPM'. The default is 0. | None | True | -| risk_aversion | float | Risk aversion factor of the 'Utility' objective function.
The default is 1. | None | True | -| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses.
The default is 0.05. | None | True | -| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses. The default is 100. | None | True | -| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value.
The default is None. | None | True | -| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value.
The default is None. | None | True | -| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`__.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | -| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic.
The default is None. | None | True | -| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters. The default is 10. | None | True | -| bins_info | str | Number of bins used to calculate variation of information. The default
value is 'KN'. Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `__.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `__.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `__.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | -| alpha_tail | float | Significance level for lower tail dependence index. The default is 0.05. | None | True | -| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal. The default is True. | None | True | -| d_ewma | float | The smoothing factor of ewma methods.
The default is 0.94. | None | True | -| value | float | Amount of money to allocate. The default is 1. | None | True | - - ---- - -## Returns - -| Type | Description | -| ---- | ----------- | -| Tuple[Optional[dict], pd.DataFrame] | Dictionary of portfolio weights,
DataFrame of stock returns. | ---- diff --git a/website/content/sdk/reference/portfolio/po/hcp.mdx b/website/content/sdk/reference/portfolio/po/hcp.mdx new file mode 100644 index 000000000000..d2f372f85d43 --- /dev/null +++ b/website/content/sdk/reference/portfolio/po/hcp.mdx @@ -0,0 +1,76 @@ +--- +title: hcp +description: + The page provides details on hierarchical clustering based portfolios + (HCP) in the OpenBBTerminal, a python tool for advanced investment strategies. It + describes parameters for portfolio optimization including risk measures, covariance + estimations, and clustering techniques. The return outcomes include portfolio weights + and stock returns. +keywords: + - portfolio optimization + - hierarchical clustering + - stock returns + - Hierarchical Risk Parity + - Nested Clustered Optimization + - covariance matrix + - risk measures + - stocks + - portfolio management +--- + +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +Builds hierarchical clustering based portfolios + +Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py#L1903)] + +```python +openbb.portfolio.po.hcp(symbols: List[str], kwargs: Any) +``` + +--- + +## Parameters + +| Name | Type | Description | Default | Optional | +| -------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | +| symbols | List[str] | List of portfolio stocks | None | False | +| interval | str | interval to get stock data, by default "3mo" | None | True | +| start_date | str | If not using interval, start date string (YYYY-MM-DD) | None | True | +| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last
weekday. | None | True | +| log_returns | bool | If True calculate log returns, else arithmetic returns. Default value
is False | None | True | +| freq | str | The frequency used to calculate returns. Default value is 'D'. Possible
values are:

- 'D' for daily returns.
- 'W' for weekly returns.
- 'M' for monthly returns. | None | True | +| maxnan | float | Max percentage of nan values accepted per asset to be included in
returns. | None | True | +| threshold | float | Value used to replace outliers that are higher to threshold. | None | True | +| method | str | Method used to fill nan values. Default value is 'time'. For more information see `interpolate `\_\_. | None | True | +| model | str | The hierarchical cluster portfolio model used for optimize the
portfolio. The default is 'HRP'. Possible values are:

- 'HRP': Hierarchical Risk Parity.
- 'HERC': Hierarchical Equal Risk Contribution.
- 'NCO': Nested Clustered Optimization. | None | True | +| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{0.5(1-\rho^{pearson}*{i,j})}$
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{0.5(1-\rho^{spearman}*{i,j})}$
- 'abs*pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{pearson}\_{i,j}\|)}$
- 'abs*spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{spearman}\_{i,j}\|)}$
- 'distance': distance correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\rho^{distance}*{i,j})}$
- 'mutual*info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: $D*{i,j} = -\log{\lambda\_{i,j}}$. | None | True | +| covariance | str | The method used to estimate the covariance matrix:
The default is 'hist'. Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `**.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `**.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `c-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `c-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `c-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `c-MLforAM`. | None | True | +| objective | str | Objective function used by the NCO model.
The default is 'MinRisk'. Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'ERC': Equally risk contribution portfolio of the selected risk measure. | None | True | +| risk_measure | str | The risk measure used to optimize the portfolio. If model is 'NCO',
the risk measures available depends on the objective function.
The default is 'MV'. Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | +| risk_free_rate | float | Risk free rate, must be in annual frequency.
Used for 'FLPM' and 'SLPM'. The default is 0. | None | True | +| risk_aversion | float | Risk aversion factor of the 'Utility' objective function.
The default is 1. | None | True | +| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses.
The default is 0.05. | None | True | +| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses. The default is 100. | None | True | +| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value.
The default is None. | None | True | +| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value.
The default is None. | None | True | +| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`\_\_.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | +| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic.
The default is None. | None | True | +| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters. The default is 10. | None | True | +| bins_info | str | Number of bins used to calculate variation of information. The default
value is 'KN'. Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `**.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `**.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `\_\_.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | +| alpha_tail | float | Significance level for lower tail dependence index. The default is 0.05. | None | True | +| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal. The default is True. | None | True | +| d_ewma | float | The smoothing factor of ewma methods.
The default is 0.94. | None | True | +| value | float | Amount of money to allocate. The default is 1. | None | True | + +--- + +## Returns + +| Type | Description | +| ----------------------------------- | ---------------------------------------------------------------- | +| Tuple[Optional[dict], pd.DataFrame] | Dictionary of portfolio weights,
DataFrame of stock returns. | + +--- diff --git a/website/content/sdk/reference/portfolio/po/herc.md b/website/content/sdk/reference/portfolio/po/herc.md deleted file mode 100644 index f854460ccd5e..000000000000 --- a/website/content/sdk/reference/portfolio/po/herc.md +++ /dev/null @@ -1,95 +0,0 @@ ---- -title: herc -description: The page provides detailed documentation for the Hierarchical Equal Risk - Contribution (HERC) method in the OpenBB Terminal's portfolio optimization module. - The method is used for the optimized allocation of resources in a portfolio to minimize - risk. The page includes a detailed explanation of input parameters, return types, - and code examples. -keywords: -- HERC Method -- Portfolio Optimization -- Risk Management -- Hierarchical Equal Risk Contribution -- Financial Modelling ---- - -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; - - - -Optimize with Hierarchical Equal Risk Contribution (HERC) method. - -Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1679)] - -```python -openbb.portfolio.po.herc(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) -``` - ---- - -## Parameters - -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | -| symbols | List[str] | List of symbols, by default None | None | True | -| interval | str | Interval to get data, by default '3y' | None | True | -| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | -| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | -| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | -| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | -| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | -| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | -| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `__. | None | True | -| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | -| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | -| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | -| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | -| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | -| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | -| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | -| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | -| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | -| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `__.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `__.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | -| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | -| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}
- 'abs_pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{pearson}_{i,j}|)}
- 'abs_spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{spearman}_{i,j}|)}
- 'distance': distance correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}
- 'mutual_info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: D_{i,j} = -\log{\lambda_{i,j}} | None | True | -| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`__.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | -| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | -| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | -| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `__.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `__.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `__.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | -| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | -| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | - - ---- - -## Returns - -| Type | Description | -| ---- | ----------- | -| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | ---- - -## Examples - -```python -from openbb_terminal.sdk import openbb -openbb.portfolio.po.herc(symbols=["AAPL", "MSFT", "AMZN"]) -``` - -``` -( value - AAPL 0.17521 - MSFT 0.19846 - AMZN 0.62633, - {'Return': 0.16899696275924703, - 'Volatility': 0.34337400112782096, - 'Sharpe ratio': 0.49216586638525933}) -``` -```python -from openbb_terminal.sdk import openbb -p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") -weights, performance = openbb.portfolio.po.herc(portfolio_engine=p) -``` - ---- diff --git a/website/content/sdk/reference/portfolio/po/herc.mdx b/website/content/sdk/reference/portfolio/po/herc.mdx new file mode 100644 index 000000000000..a6d00ae5938c --- /dev/null +++ b/website/content/sdk/reference/portfolio/po/herc.mdx @@ -0,0 +1,97 @@ +--- +title: herc +description: + The page provides detailed documentation for the Hierarchical Equal Risk + Contribution (HERC) method in the OpenBB Terminal's portfolio optimization module. + The method is used for the optimized allocation of resources in a portfolio to minimize + risk. The page includes a detailed explanation of input parameters, return types, + and code examples. +keywords: + - HERC Method + - Portfolio Optimization + - Risk Management + - Hierarchical Equal Risk Contribution + - Financial Modelling +--- + +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +Optimize with Hierarchical Equal Risk Contribution (HERC) method. + +Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1679)] + +```python +openbb.portfolio.po.herc(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) +``` + +--- + +## Parameters + +| Name | Type | Description | Default | Optional | +| ---------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | +| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | +| symbols | List[str] | List of symbols, by default None | None | True | +| interval | str | Interval to get data, by default '3y' | None | True | +| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | +| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | +| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | +| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | +| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | +| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | +| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `\_\_. | None | True | +| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | +| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | +| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | +| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | +| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | +| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | +| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | +| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | +| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | +| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `**.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `**.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | +| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | +| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}$
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}$
- 'abs*pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{pearson}\_{i,j}\|)}$
- 'abs*spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{spearman}\_{i,j}\|)}$
- 'distance': distance correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}$
- 'mutual*info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: $D*{i,j} = -\log{\lambda\_{i,j}}$ | None | True | +| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`\_\_.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | +| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | +| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | +| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `**.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `**.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `\_\_.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | +| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | +| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | + +--- + +## Returns + +| Type | Description | +| ------------------------- | --------------------------------------------- | +| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | + +--- + +## Examples + +```python +from openbb_terminal.sdk import openbb +openbb.portfolio.po.herc(symbols=["AAPL", "MSFT", "AMZN"]) +``` + +``` +( value + AAPL 0.17521 + MSFT 0.19846 + AMZN 0.62633, + {'Return': 0.16899696275924703, + 'Volatility': 0.34337400112782096, + 'Sharpe ratio': 0.49216586638525933}) +``` + +```python +from openbb_terminal.sdk import openbb +p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") +weights, performance = openbb.portfolio.po.herc(portfolio_engine=p) +``` + +--- diff --git a/website/content/sdk/reference/portfolio/po/hrp.md b/website/content/sdk/reference/portfolio/po/hrp.md deleted file mode 100644 index 9930993ad2e7..000000000000 --- a/website/content/sdk/reference/portfolio/po/hrp.md +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: hrp -description: This page provides information about the Hierarchical Risk Parity (HRP) - function in the openbb.portfolio.po module. This function allows for portfolio optimization - using HRP. Detailed parameter explanations, return values, and usage examples are - provided. -keywords: -- portfolio optimization -- Hierarchical Risk Parity -- openbb.portfolio.po -- risk management -- asset allocation -- portfolio management -- financial modeling ---- - -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; - - - -Optimize with Hierarchical Risk Parity - -Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1487)] - -```python -openbb.portfolio.po.hrp(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) -``` - ---- - -## Parameters - -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | -| symbols | List[str] | List of symbols, by default None | None | True | -| interval | str | Interval to get data, by default '3y' | None | True | -| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | -| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | -| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | -| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | -| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | -| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | -| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `__. | None | True | -| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | -| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | -| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | -| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | -| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | -| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | -| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | -| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | -| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | -| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `__.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `__.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | -| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | -| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}
- 'abs_pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{pearson}_{i,j}|)}
- 'abs_spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{spearman}_{i,j}|)}
- 'distance': distance correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}
- 'mutual_info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: D_{i,j} = -\log{\lambda_{i,j}} | None | True | -| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`__.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | -| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | -| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | -| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `__.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `__.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `__.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | -| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | -| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | - - ---- - -## Returns - -| Type | Description | -| ---- | ----------- | -| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | ---- - -## Examples - -```python -from openbb_terminal.sdk import openbb -openbb.portfolio.po.hrp(symbols=["AAPL", "MSFT", "AMZN"]) -``` - -``` -( value - AAPL 0.26729 - MSFT 0.30277 - AMZN 0.42994, - {'Return': 0.20463517260107467, - 'Volatility': 0.3313935169747041, - 'Sharpe ratio': 0.6174990219156727}) -``` -```python -from openbb_terminal.sdk import openbb -p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") -weights, performance = openbb.portfolio.po.hrp(portfolio_engine=p) -``` - ---- diff --git a/website/content/sdk/reference/portfolio/po/hrp.mdx b/website/content/sdk/reference/portfolio/po/hrp.mdx new file mode 100644 index 000000000000..afb15d15f9e6 --- /dev/null +++ b/website/content/sdk/reference/portfolio/po/hrp.mdx @@ -0,0 +1,98 @@ +--- +title: hrp +description: + This page provides information about the Hierarchical Risk Parity (HRP) + function in the openbb.portfolio.po module. This function allows for portfolio optimization + using HRP. Detailed parameter explanations, return values, and usage examples are + provided. +keywords: + - portfolio optimization + - Hierarchical Risk Parity + - openbb.portfolio.po + - risk management + - asset allocation + - portfolio management + - financial modeling +--- + +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +Optimize with Hierarchical Risk Parity + +Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1487)] + +```python +openbb.portfolio.po.hrp(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) +``` + +--- + +## Parameters + +| Name | Type | Description | Default | Optional | +| ---------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | +| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | +| symbols | List[str] | List of symbols, by default None | None | True | +| interval | str | Interval to get data, by default '3y' | None | True | +| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | +| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | +| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | +| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | +| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | +| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | +| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `\_\_. | None | True | +| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | +| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | +| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | +| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | +| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | +| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | +| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | +| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | +| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | +| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `**.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `**.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | +| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | +| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}$
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}$
- 'abs*pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{pearson}\_{i,j}\|)}$
- 'abs*spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{spearman}\_{i,j}\|)}$
- 'distance': distance correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}$
- 'mutual*info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: $D*{i,j} = -\log{\lambda\_{i,j}}$ | None | True | +| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`\_\_.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | +| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | +| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | +| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `**.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `**.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `\_\_.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | +| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | +| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | + +--- + +## Returns + +| Type | Description | +| ------------------------- | --------------------------------------------- | +| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | + +--- + +## Examples + +```python +from openbb_terminal.sdk import openbb +openbb.portfolio.po.hrp(symbols=["AAPL", "MSFT", "AMZN"]) +``` + +``` +( value + AAPL 0.26729 + MSFT 0.30277 + AMZN 0.42994, + {'Return': 0.20463517260107467, + 'Volatility': 0.3313935169747041, + 'Sharpe ratio': 0.6174990219156727}) +``` + +```python +from openbb_terminal.sdk import openbb +p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") +weights, performance = openbb.portfolio.po.hrp(portfolio_engine=p) +``` + +--- diff --git a/website/content/sdk/reference/portfolio/po/nco.md b/website/content/sdk/reference/portfolio/po/nco.md deleted file mode 100644 index dbf6407ff61d..000000000000 --- a/website/content/sdk/reference/portfolio/po/nco.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: nco -description: This page is about the Non-Convex Optimization (NCO) model used for portfolio - optimization. It includes a detailed explanation of the function parameters, return - values, and examples of usage using the OpenBB financial software. -keywords: -- Non-Convex Optimization -- portfolio optimization -- financial software -- financial modeling -- risk measures -- portfolio performance measures -- Sharpe ratio -- Value at Risk -- Maximum Drawdown ---- - -import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; - - - -Optimize with Non-Convex Optimization (NCO) model. - -Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1871)] - -```python -openbb.portfolio.po.nco(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) -``` - ---- - -## Parameters - -| Name | Type | Description | Default | Optional | -| ---- | ---- | ----------- | ------- | -------- | -| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | -| symbols | List[str] | List of symbols, by default None | None | True | -| interval | str | Interval to get data, by default '3y' | None | True | -| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | -| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | -| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | -| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | -| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | -| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | -| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `__. | None | True | -| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | -| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | -| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | -| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | -| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | -| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | -| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | -| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | -| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | -| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `__.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `__.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | -| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | -| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{0.5(1-\rho^{spearman}_{i,j})}
- 'abs_pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{pearson}_{i,j}|)}
- 'abs_spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-|\rho^{spearman}_{i,j}|)}
- 'distance': distance correlation matrix. Distance formula:
.. math:: D_{i,j} = \sqrt{(1-\rho^{distance}_{i,j})}
- 'mutual_info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: D_{i,j} = -\log{\lambda_{i,j}} | None | True | -| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`__.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | -| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | -| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | -| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `__.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `__.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `__.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | -| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | -| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | - - ---- - -## Returns - -| Type | Description | -| ---- | ----------- | -| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | ---- - -## Examples - -```python -from openbb_terminal.sdk import openbb -openbb.portfolio.po.nco(symbols=["AAPL", "MSFT", "AMZN"]) -``` - -``` -( value - AAPL 0.25044 - MSFT 0.49509 - AMZN 0.25447, - {'Return': 0.2248615963428331, - 'Volatility': 0.32736590080425004, - 'Sharpe ratio': 0.6868815468880802}) -``` -```python -from openbb_terminal.sdk import openbb -p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") -weights, performance = openbb.portfolio.po.nco(portfolio_engine=p) -``` - ---- diff --git a/website/content/sdk/reference/portfolio/po/nco.mdx b/website/content/sdk/reference/portfolio/po/nco.mdx new file mode 100644 index 000000000000..81f188f22d1b --- /dev/null +++ b/website/content/sdk/reference/portfolio/po/nco.mdx @@ -0,0 +1,99 @@ +--- +title: nco +description: + This page is about the Non-Convex Optimization (NCO) model used for portfolio + optimization. It includes a detailed explanation of the function parameters, return + values, and examples of usage using the OpenBB financial software. +keywords: + - Non-Convex Optimization + - portfolio optimization + - financial software + - financial modeling + - risk measures + - portfolio performance measures + - Sharpe ratio + - Value at Risk + - Maximum Drawdown +--- + +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +Optimize with Non-Convex Optimization (NCO) model. + +Source Code: [[link](https://github.com/OpenBB-finance/OpenBBTerminal/tree/main/openbb_terminal/portfolio/portfolio_optimization/po_model.py#L1871)] + +```python +openbb.portfolio.po.nco(portfolio_engine: portfolio_optimization.po_engine.PoEngine = None, symbols: List[str] = None, kwargs: Any) +``` + +--- + +## Parameters + +| Name | Type | Description | Default | Optional | +| ---------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | +| portfolio_engine | PoEngine | Portfolio optimization engine, by default None
Use `portfolio.po.load` to load a portfolio engine | None | True | +| symbols | List[str] | List of symbols, by default None | None | True | +| interval | str | Interval to get data, by default '3y' | None | True | +| start_date | str | If not using interval, start date string (YYYY-MM-DD), by default "" | None | True | +| end_date | str | If not using interval, end date string (YYYY-MM-DD). If empty use last weekday, by default "" | None | True | +| log_returns | bool | If True use log returns, else arithmetic returns, by default False | None | True | +| freq | str | Frequency of returns, by default 'D'. Options: 'D' for daily, 'W' for weekly, 'M' for monthly | None | True | +| maxnan | float | Maximum percentage of NaNs allowed in the data, by default 0.05 | None | True | +| threshold | float | Value used to replace outliers that are higher than threshold, by default 0.0 | None | True | +| method | str | Method used to fill nan values, by default 'time'
For more information see `interpolate `\_\_. | None | True | +| value | float | Amount to allocate to portfolio in long positions, by default 1.0 | None | True | +| objective | str | Objective function of the optimization model, by default 'MinRisk'
Possible values are:

- 'MinRisk': Minimize the selected risk measure.
- 'Utility': Maximize the risk averse utility function.
- 'Sharpe': Maximize the risk adjusted return ratio based on the selected risk measure.
- 'MaxRet': Maximize the expected return of the portfolio. | None | True | +| risk_measure | str | The risk measure used to optimize the portfolio, by default 'MV'
If model is 'NCO', the risk measures available depends on the objective function.
Possible values are:

- 'MV': Variance.
- 'MAD': Mean Absolute Deviation.
- 'MSV': Semi Standard Deviation.
- 'FLPM': First Lower Partial Moment (Omega Ratio).
- 'SLPM': Second Lower Partial Moment (Sortino Ratio).
- 'VaR': Value at Risk.
- 'CVaR': Conditional Value at Risk.
- 'TG': Tail Gini.
- 'EVaR': Entropic Value at Risk.
- 'WR': Worst Realization (Minimax).
- 'RG': Range of returns.
- 'CVRG': CVaR range of returns.
- 'TGRG': Tail Gini range of returns.
- 'MDD': Maximum Drawdown of uncompounded cumulative returns (Calmar Ratio).
- 'ADD': Average Drawdown of uncompounded cumulative returns.
- 'DaR': Drawdown at Risk of uncompounded cumulative returns.
- 'CDaR': Conditional Drawdown at Risk of uncompounded cumulative returns.
- 'EDaR': Entropic Drawdown at Risk of uncompounded cumulative returns.
- 'UCI': Ulcer Index of uncompounded cumulative returns.
- 'MDD_Rel': Maximum Drawdown of compounded cumulative returns (Calmar Ratio).
- 'ADD_Rel': Average Drawdown of compounded cumulative returns.
- 'DaR_Rel': Drawdown at Risk of compounded cumulative returns.
- 'CDaR_Rel': Conditional Drawdown at Risk of compounded cumulative returns.
- 'EDaR_Rel': Entropic Drawdown at Risk of compounded cumulative returns.
- 'UCI_Rel': Ulcer Index of compounded cumulative returns. | None | True | +| risk_free_rate | float | Risk free rate, annualized. Used for 'FLPM' and 'SLPM' and Sharpe objective function, by default 0.0 | None | True | +| risk_aversion | float | Risk aversion factor of the 'Utility' objective function, by default 1.0 | None | True | +| alpha | float | Significance level of VaR, CVaR, EDaR, DaR, CDaR, EDaR, Tail Gini of losses, by default 0.05 | None | True | +| a_sim | float | Number of CVaRs used to approximate Tail Gini of losses, by default 100 | None | True | +| beta | float | Significance level of CVaR and Tail Gini of gains. If None it duplicates alpha value, by default None | None | True | +| b_sim | float | Number of CVaRs used to approximate Tail Gini of gains. If None it duplicates a_sim value, by default None | None | True | +| covariance | str | The method used to estimate the covariance matrix, by default 'hist'
Possible values are:

- 'hist': use historical estimates.
- 'ewma1': use ewma with adjust=True. For more information see `EWM `**.
- 'ewma2': use ewma with adjust=False. For more information see `EWM `**.
- 'ledoit': use the Ledoit and Wolf Shrinkage method.
- 'oas': use the Oracle Approximation Shrinkage method.
- 'shrunk': use the basic Shrunk Covariance method.
- 'gl': use the basic Graphical Lasso Covariance method.
- 'jlogo': use the j-LoGo Covariance method. For more information see: `a-jLogo`.
- 'fixed': denoise using fixed method. For more information see chapter 2 of `a-MLforAM`.
- 'spectral': denoise using spectral method. For more information see chapter 2 of `a-MLforAM`.
- 'shrink': denoise using shrink method. For more information see chapter 2 of `a-MLforAM`. | None | True | +| d_ewma | float | The smoothing factor of ewma methods, by default 0.94 | None | True | +| codependence | str | The codependence or similarity matrix used to build the distance
metric and clusters. The default is 'pearson'. Possible values are:

- 'pearson': pearson correlation matrix. Distance formula:
.. math:: $D_{i,j} = \sqrt{0.5(1-\rho^{pearson}_{i,j})}$
- 'spearman': spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{0.5(1-\rho^{spearman}*{i,j})}$
- 'abs*pearson': absolute value pearson correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{pearson}\_{i,j}\|)}$
- 'abs*spearman': absolute value spearman correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\|\rho^{spearman}\_{i,j}\|)}$
- 'distance': distance correlation matrix. Distance formula:
.. math:: $D*{i,j} = \sqrt{(1-\rho^{distance}*{i,j})}$
- 'mutual*info': mutual information matrix. Distance used is variation information matrix.
- 'tail': lower tail dependence index matrix. Dissimilarity formula:
.. math:: $D*{i,j} = -\log{\lambda\_{i,j}}$ | None | True | +| linkage | str | Linkage method of hierarchical clustering. For more information see `linkage cluster.hierarchy.linkage.html?highlight=linkage#scipy.cluster.hierarchy.linkage>`\_\_.
The default is 'single'. Possible values are:

- 'single'.
- 'complete'.
- 'average'.
- 'weighted'.
- 'centroid'.
- 'median'.
- 'ward'.
- 'dbht': Direct Bubble Hierarchical Tree. | None | True | +| k | int | Number of clusters. This value is took instead of the optimal number
of clusters calculated with the two difference gap statistic, by default None | None | True | +| max_k | int | Max number of clusters used by the two difference gap statistic
to find the optimal number of clusters, by default 10 | None | True | +| bins_info | str | Number of bins used to calculate variation of information, by default 'KN'.
Possible values are:

- 'KN': Knuth's choice method. For more information see `knuth_bin_width `**.
- 'FD': Freedman–Diaconis' choice method. For more information see `freedman_bin_width `**.
- 'SC': Scotts' choice method. For more information see `scott_bin_width `\_\_.
- 'HGR': Hacine-Gharbi and Ravier' choice method. | None | True | +| alpha_tail | float | Significance level for lower tail dependence index, by default 0.05 | None | True | +| leaf_order | bool | Indicates if the cluster are ordered so that the distance between
successive leaves is minimal, by default True | None | True | + +--- + +## Returns + +| Type | Description | +| ------------------------- | --------------------------------------------- | +| Tuple[pd.DataFrame, Dict] | Tuple with weights and performance dictionary | + +--- + +## Examples + +```python +from openbb_terminal.sdk import openbb +openbb.portfolio.po.nco(symbols=["AAPL", "MSFT", "AMZN"]) +``` + +``` +( value + AAPL 0.25044 + MSFT 0.49509 + AMZN 0.25447, + {'Return': 0.2248615963428331, + 'Volatility': 0.32736590080425004, + 'Sharpe ratio': 0.6868815468880802}) +``` + +```python +from openbb_terminal.sdk import openbb +p = openbb.portfolio.po.load(symbols_file_path="~/openbb_terminal/miscellaneous/portfolio_examples/allocation/60_40_Portfolio.xlsx") +weights, performance = openbb.portfolio.po.nco(portfolio_engine=p) +``` + +--- diff --git a/website/content/sdk/usage/api-keys.md b/website/content/sdk/usage/api-keys.md index 740c7d893e00..5a687a50decc 100644 --- a/website/content/sdk/usage/api-keys.md +++ b/website/content/sdk/usage/api-keys.md @@ -3,17 +3,16 @@ title: Setting API Keys sidebar_position: 2 description: This documentation page describes how you can set your own API keys from each data vendor on OpenBB to leverage their datasets. keywords: -- API keys -- datasets -- data vendors -- subscription + - API keys + - datasets + - data vendors + - subscription --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; - ## The Keys Module API (Application Programming Interface) keys are access credentials for obtaining data from a particular source. They are a string of random characters assigned, by the data provider, to an individual account. Most vendors offer a free tier requiring only a valid email address, some will require an account with proper KYC (Know Your Customer). Each source is entered into the SDK with the `openbb.keys` module, using the syntax described in the sections below. Wrapping the command with `help()` will print the docstrings to the screen. For example: @@ -86,7 +85,7 @@ This section covers all API keys listed above and include detailed instructions > Alpha Vantage provides enterprise-grade financial market data through a set of powerful and developer-friendly data APIs and spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds) to economic indicators, from foreign exchange rates to commodities, from fundamental data to technical indicators, Alpha Vantage is your one-stop-shop for real-time and historical global market data delivered through cloud-based APIs, Excel, and Google Sheets.
-Instructions +Instructions Go to: https://www.alphavantage.co/support/#api-key @@ -107,7 +106,7 @@ openbb.keys.av(key = 'REPLACE_WITH_KEY', persist = True) > Binance cryptocurrency exchange - We operate the worlds biggest bitcoin exchange and altcoin crypto exchange in the world by volume
-Instructions +Instructions Go to: https://www.binance.com/en/support/faq/how-to-create-api-360002502072 @@ -130,9 +129,9 @@ openbb.keys.binance( > Bitquery is an API-first product company dedicated to power and solve blockchain data problems using the ground truth of on-chain data.
-Instructions +Instructions -Go to: https://bitquery.io/< +Go to: [https://bitquery.io/](https://bitquery.io/) ![Bitquery](https://user-images.githubusercontent.com/46355364/207840322-5532a3f9-739f-4e28-9839-a58db932882e.png) @@ -157,17 +156,17 @@ openbb.keys.bitquery(key = 'REPLACE_WITH_KEY', persist = True) > BizToc is the one-stop business and finance news hub, encapsulating the top 200 US news providers in real time.
-Instructions +Instructions -The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc. +The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc. ![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda) -In the top right, select "Sign Up". After answering some questions, you will be prompted to select one of their plans. +In the top right, select "Sign Up". After answering some questions, you will be prompted to select one of their plans. ![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422) -After signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key. +After signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key. ![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f) @@ -184,7 +183,7 @@ openbb.keys.biztoc(key = "REPLACE_WITH_KEY", persist=True) > CoinMarketCap is the world's most-referenced price-tracking website for cryptoassets in the rapidly growing cryptocurrency space. Its mission is to make crypto discoverable and efficient globally by empowering retail users with unbiased, high quality and accurate information for drawing their own informed conclusions.
-Instructions +Instructions Go to: https://coinmarketcap.com/api @@ -211,7 +210,7 @@ openbb.keys.cmc(key = 'REPLACE_WITH_KEY', persist = True) > Coinbase is a secure online platform for buying, selling, transferring, and storing cryptocurrency.
-Instructions +Instructions Go to: https://help.coinbase.com/en/exchange/managing-my-account/how-to-create-an-api-key @@ -235,7 +234,7 @@ openbb.keys.coinbase( > Coinglass is a cryptocurrency futures trading & information platform,where you can find the Bitcoin Liquidations ,Bitcoin open interest, Grayscale Bitcoin Trust,Bitcoin longs vs shorts ratio and actively compare funding rates for crypto futures.Above all the quantities are shown as per their respective contract value.
-Instructions +Instructions Go to: https://www.coinglass.com/ @@ -255,20 +254,20 @@ openbb.keys.coinglass(key = 'REPLACE_WITH_KEY', persist = True) ### Companies House -> The Companies House API lets you retrieve information about limited companies (and other companies that fall within the Companies Act 2006). The data returned is live and real-time, and is simple to use and understand. +> The Companies House API lets you retrieve information about limited companies (and other companies that fall within the Companies Act 2006). The data returned is live and real-time, and is simple to use and understand.
-Instructions +Instructions Setup an account by following the instructions [here](https://developer-specs.company-information.service.gov.uk/guides/gettingStarted#set-up-a-companies-house-account). ![Companies House](https://user-images.githubusercontent.com/85772166/234980988-352e36f7-334b-4e4c-846f-2cea128f9464.png) -After creating the account and logging in, click on, [Create an Application](https://developer.company-information.service.gov.uk/manage-applications/add). Fill out the form and then click the `Create` button at the bottom of the page. +After creating the account and logging in, click on, [Create an Application](https://developer.company-information.service.gov.uk/manage-applications/add). Fill out the form and then click the `Create` button at the bottom of the page. ![Create an Application](https://user-images.githubusercontent.com/85772166/234981083-e78cf4f7-3be0-404e-b7cc-b452679bbb06.png) -Once the application is created, an API key can be generated by clicking on `View all Applications`, and then the `Create new key` button at the bottom. Copy the API key value to the clipboard and then enter it into the OpenBB SDK with: +Once the application is created, an API key can be generated by clicking on `View all Applications`, and then the `Create new key` button at the bottom. Copy the API key value to the clipboard and then enter it into the OpenBB SDK with: ```console openbb.keys.companieshouse('REPLACE_WITH_KEY', persist = True) @@ -281,7 +280,7 @@ openbb.keys.companieshouse('REPLACE_WITH_KEY', persist = True) > CryptoPanic is a news aggregator platform indicating impact on price and market for traders and cryptocurrency enthusiasts.
-Instructions +Instructions Go to: https://cryptopanic.com/developers/api/ @@ -304,7 +303,7 @@ openbb.keys.cpanic(key = 'REPLACE_WITH_KEY', persist = True) > Databento eliminates tens of thousands of dollars in upfront expenses per dataset without sacrificing data integrity. We give you the flexibility to pick up real-time full exchange feeds and terabytes of historical data, whenever you need it.
-Instructions +Instructions Go to: https://docs.databento.com/getting-started @@ -327,7 +326,7 @@ openbb.keys.databento(key = 'REPLACE_WITH_KEY') > DEGIRO is Europe's fastest growing online stock broker. DEGIRO distinguishes itself from its competitors by offering extremely low trading commissions.
-Instructions +Instructions Go to: https://www.degiro.com/ @@ -352,7 +351,7 @@ Instructions for setting up 2FA authorization are [here](https://github.com/Chav > Historical End of Day, Intraday, and Live prices API, with Fundamental Financial data API for more than 120000 stocks, ETFs and funds all over the world.
-Instructions +Instructions Go to: https://eodhistoricaldata.com/r/?ref=869U7F4J @@ -379,7 +378,7 @@ openbb.keys.eodhd(key = 'REPLACE_WITH_KEY', persist = True) > With the sole mission of democratizing financial data, we are proud to offer a FREE realtime API for stocks, forex and cryptocurrency.
-Instructions +Instructions Go to: https://finnhub.io/ @@ -406,7 +405,7 @@ openbb.keys.finnhub(key = 'REPLACE_WITH_KEY', persist = True) > Enhance your application with our data that goes up to 30 years back in history. Earnings calendar, financial statements, multiple exchanges and more!
-Instructions +Instructions Go to: https://site.financialmodelingprep.com/developer/docs @@ -435,7 +434,7 @@ openbb.keys.fmp(key = 'REPLACE_WITH_KEY', persist = True) > FRED is the trusted source for economic data since 1991. Download, graph, and track 819,000 US and international time series from 110 sources.
-Instructions +Instructions Go to: https://fred.stlouisfed.org @@ -466,7 +465,7 @@ openbb.keys.fred(key = 'REPLACE_WITH_KEY', persist = True) > GitHub is where over 100 million developers shape the future of software.
-Instructions +Instructions ![GitHub](https://user-images.githubusercontent.com/46355364/207846953-7feae777-3c3b-4f21-9dcf-84817c732618.png) @@ -491,7 +490,7 @@ openbb.keys.github(key = 'REPLACE_WITH_KEY', persist = True) > Glassnode makes blockchain data accessible for everyone. We source and carefully dissect on-chain data, to deliver contextualized and actionable insights.
-Instructions +Instructions Go to: https://studio.glassnode.com @@ -518,7 +517,7 @@ openbb.keys.glassnode(key = 'REPLACE_WITH_KEY', persist = True) > Intrinio is more than a financial data API provider – we're a real time data partner. That means we're your guide to every step of the financial data.
-Instructions +Instructions Go to: https://intrinio.com/starter-plan @@ -537,7 +536,7 @@ openbb.keys.intrinio(key = 'REPLACE_WITH_KEY', persist = True) > Gain an edge over the crypto market with professional grade data, tools, and research.
-Instructions +Instructions Go to: https://messari.io @@ -564,7 +563,7 @@ openbb.keys.messari(key = 'REPLACE_WITH_KEY', persist = True) > News API is a simple, easy-to-use REST API that returns JSON search results for current and historic news articles published by over 80,000 worldwide sources.
-Instructions +Instructions Go to: https://newsapi.org @@ -591,7 +590,7 @@ openbb.keys.news(key = 'REPLACE_WITH_KEY', persist = True) > OANDA's Currency Converter allows you to check the latest foreign exchange average bid/ask rates and convert all major world currencies.
-Instructions +Instructions Go to: https://developer.oanda.com @@ -619,7 +618,7 @@ openbb.keys.oanda( > Live & historical data for US stocks for all 19 exchanges. Instant access to real-time and historical stock market data.
-Instructions +Instructions Go to: https://polygon.io @@ -646,7 +645,7 @@ openbb.keys.polygon(key = 'REPLACE_WITH_KEY', persist = True) > The premier source for financial, economic, and alternative datasets, serving investment professionals. Quandl’s platform is used by over 400,000 people, including analysts from the world’s top hedge funds, asset managers and investment banks.
-Instructions +Instructions ![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png) @@ -671,7 +670,7 @@ openbb.keys.quandl(key = 'REPLACE_WITH_KEY', persist = True) > Reddit is a network of communities where people can dive into their interests, hobbies and passions.
-Instructions +Instructions Sign in to Reddit, and then go to: https://old.reddit.com/prefs/apps/ @@ -709,7 +708,7 @@ openbb.keys.reddit( > Robinhood has commission-free investing, and tools to help shape your financial future.
-Instructions +Instructions Go to: https://robinhood.com/us/en @@ -733,7 +732,7 @@ The first login will request 2FA authorization from the device connected to the > We provide tools to help you analyze crypto markets and find data-driven opportunities to optimize your investing.
-Instructions +Instructions Go to: https://app.santiment.net @@ -760,7 +759,7 @@ openbb.keys.santiment(key = 'REPLACE_WITH_KEY', persist = True) > Empowering investors to take advantage of alternative data. We track trending tickers on social media and provide alternative data for easy due-diligence & analysis.
-Instructions +Instructions Go to: https://stocksera.pythonanywhere.com @@ -787,7 +786,7 @@ openbb.keys.stocksera(key = 'REPLACE_WITH_KEY', persist = True) > Token Terminal is a platform that aggregates financial data on the leading blockchains and decentralized applications.
-Instructions +Instructions Go to: https://tokenterminal.com @@ -814,7 +813,7 @@ openbb.keys.tokenterminal(key = 'REPLACE_WITH_KEY', persist = True) > Tradier, the home of active traders. Our open collaboration platform allows investors to truly customize their trading experience like never before.
-Instructions +Instructions Go to: https://documentation.tradier.com @@ -833,7 +832,7 @@ openbb.keys.tradier(key = 'REPLACE_WITH_KEY', persist = True) > From breaking news and entertainment to sports and politics, get the full story with all the live commentary.
-Upcoming changes to the Twitter API will deprecate the current functionality, it is uncertain if the features will continue to work. +Upcoming changes to the Twitter API will deprecate the current functionality, it is uncertain if the features will continue to work. ![Twitter API](https://pbs.twimg.com/media/FooIJF3agAIU8SN?format=png&name=medium) @@ -844,7 +843,7 @@ openbb.keys.tradier(key = 'REPLACE_WITH_KEY', persist = True) > Whale Alert continuously collects and analyzes billions of blockchain transactions and related-off chain data from hundreds of reliable sources and converts it into an easy to use standardized format. Our world-class analytics and custom high speed database solutions process transactions the moment they are made, resulting in the largest and most up-to-date blockchain dataset in the world.
-Instructions +Instructions Go to: https://docs.whale-alert.io ![Whale Alert](https://user-images.githubusercontent.com/46355364/207842892-3f71ee7a-6cd3-48a2-82e4-fa5ec5b13807.png) diff --git a/website/content/terminal/faqs/bugs_support_feedback.md b/website/content/terminal/faqs/bugs_support_feedback.md index 856cb1c589b6..8929444a78e2 100644 --- a/website/content/terminal/faqs/bugs_support_feedback.md +++ b/website/content/terminal/faqs/bugs_support_feedback.md @@ -1,19 +1,20 @@ --- title: Bugs, Support, and Feedback sidebar_position: 5 -description: Familiarize yourself with common issues and bug reports within our OpenBB +description: + Familiarize yourself with common issues and bug reports within our OpenBB Terminal, explore our patch release process and learn how to report issues or get support for OpenBB Terminal. You'll also learn how to provide feedback and request specific features within the platform. keywords: -- GitHub -- bugs -- patches -- issue reporting -- support -- Discord -- feature requests -- machine learning + - GitHub + - bugs + - patches + - issue reporting + - support + - Discord + - feature requests + - machine learning --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -22,7 +23,8 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; When an error is encountered, it is always a good idea to check the open issues on [GitHub](https://github.com/OpenBB-finance/OpenBBTerminal/issues). There may be a workaround solution for the specific problem until a patch is released. -
How often are patches for bugs released? +
+How often are patches for bugs released? The installer versions are packaged approximately every two-weeks. Those working with a cloned GitHub version can checkout the Develop branch to get the latest fixes and releases before they are pushed to the main branch. @@ -32,19 +34,22 @@ git checkout develop
-
How do I report a bug? +
+How do I report a bug? First, search the open issues for another report. If one already exists, attach any relevant information and screenshots as a comment. If one does not exist, start one with this [link](https://github.com/OpenBB-finance/OpenBBTerminal/issues/new?assignees=&labels=type%3Abug&template=bug_report.md&title=%5BBug%5D)
-
How can I get help with OpenBB Terminal? +
+How can I get help with OpenBB Terminal? You can get help with OpenBB Terminal by joining our [Discord server](https://openbb.co/discord) or contact us in our support form [here](https://openbb.co/support).
-
How can I give feedback about the OpenBB Terminal, or request specific functionality? +
+How can I give feedback about the OpenBB Terminal, or request specific functionality? Being an open source platform that wishes to tailor to the needs of any type of investor, we highly encourage anyone to share with us their experience and/or how we can further improve the OpenBB Terminal. This can be anything from a very small bug, a new feature, or the implementation of a highly advanced Machine Learning model. diff --git a/website/content/terminal/faqs/data_sources.md b/website/content/terminal/faqs/data_sources.md index 945c74c56e5d..3ad3a5144f1d 100644 --- a/website/content/terminal/faqs/data_sources.md +++ b/website/content/terminal/faqs/data_sources.md @@ -1,17 +1,18 @@ --- title: Data and Sources sidebar_position: 4 -description: The page discusses the data sources and functionalities of OpenBB, an +description: + The page discusses the data sources and functionalities of OpenBB, an aggregator of data from various sources. It guides on troubleshooting, locating data, and requesting features. keywords: -- data aggregator -- troubleshooting guide -- data sources -- ticker symbols -- load function -- feature request -- data providers + - data aggregator + - troubleshooting guide + - data sources + - ticker symbols + - load function + - feature request + - data providers --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -22,13 +23,15 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; Please note that OpenBB does not provide any data, it is an aggregator which provides users access to data from a variety of sources. OpenBB does not maintain or have any control over the raw data supplied. If there is a specific problem with the output from a data provider, please consider contacting them first. -
Is there a list of all data providers? +
+Is there a list of all data providers? The complete list is found [here](/terminal/usage/data/api-keys)
-
How do I find and load a ticker symbol from India, or any other country? +
+How do I find and load a ticker symbol from India, or any other country? Use the [`/stocks/search`](/terminal/menus/stocks/introduction#search) command. @@ -46,7 +49,8 @@ The precise naming convention will differ by source, reference each source's own
-
Data from today is missing. +
+Data from today is missing. By default, the load function requests end-of-day daily data and is not included until the EOD summary has been published. The current day's data is considered intraday and is loaded when the `interval` argument is present. @@ -56,13 +60,15 @@ load SPY -i 60
-
Can I stream live prices and news feeds? +
+Can I stream live prices and news feeds? The OpenBB Terminal is not currently capable of streaming live feeds through websocket connections.
-
"Pair BTC/USDT not found in binance" +
+"Pair BTC/USDT not found in binance" US-based users are currently unable to access the Binance API. Please try loading the pair from a different source, for example: @@ -70,7 +76,8 @@ US-based users are currently unable to access the Binance API. Please try loadin
-
How can I request functionality for a specific data source? +
+How can I request functionality for a specific data source? Please [request a feature](https://openbb.co/request-a-feature) by submitting a new request. diff --git a/website/content/terminal/faqs/developer_issues.md b/website/content/terminal/faqs/developer_issues.md index d3a9d8cf79c5..5372837ca471 100644 --- a/website/content/terminal/faqs/developer_issues.md +++ b/website/content/terminal/faqs/developer_issues.md @@ -1,43 +1,46 @@ --- title: Developer Issues sidebar_position: 6 -description: This page helps with frequently asked questions regarding debugging, +description: + This page helps with frequently asked questions regarding debugging, GitHub pull requests, and common error resolutions. The guide includes steps on how to launch in debug mode, switching branches, handling missing dependencies like wheel, dealing with .whl files, understanding JSONDecodeError, correcting line break errors, and using VS Code terminal. keywords: -- debug mode -- GitHub pull requests -- error resolutions -- missing dependencies -- wheel -- .whl file errors -- JSONDecodeError -- line break errors -- VS Code terminal -- poetry -- conda -- pip + - debug mode + - GitHub pull requests + - error resolutions + - missing dependencies + - wheel + - .whl file errors + - JSONDecodeError + - line break errors + - VS Code terminal + - poetry + - conda + - pip --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -
How do I launch in debug mode? +
+How do I launch in debug mode? -When installed from source, the OpenBB Terminal can be launched in debug mode. Launch the Terminal using the syntax below. +When installed from source, the OpenBB Terminal can be launched in debug mode. Launch the Terminal using the syntax below. ```python python terminal.py --debug ``` -Operate the Terminal normally, and errors will trigger an interrupt which prints the traceback with the error. Charts and tables will also include a developer tools button, located at the top-left of the window, for identifying issues specific to the PyWry interactive window. +Operate the Terminal normally, and errors will trigger an interrupt which prints the traceback with the error. Charts and tables will also include a developer tools button, located at the top-left of the window, for identifying issues specific to the PyWry interactive window.
-
What branch on GitHub should pull requests be submitted to? +
+What branch on GitHub should pull requests be submitted to? Pull requests submitted to the Main branch will not be merged, please create branches from the `develop` branch. @@ -56,7 +59,8 @@ Branches must also follow the naming convention:
-
Error: "git pull" fails because of a hot fix: cannot lock ref +
+Error: "git pull" fails because of a hot fix: cannot lock ref If the error message looks something like: @@ -73,7 +77,8 @@ git pull
-
What does it mean if it says wheel is missing? +
+What does it mean if it says wheel is missing? If you receive any notifications regarding `wheel` missing, this could be due to this dependency missing. @@ -81,7 +86,8 @@ If you receive any notifications regarding `wheel` missing, this could be due to
-
Why do these .whl files not exist? +
+Why do these .whl files not exist? If you get errors about .whl files not existing (usually on Windows) you have to reinitialize the following folder. Just removing the 'artifacts' folder could also be enough: @@ -112,12 +118,14 @@ If you run into trouble with Poetry, and the advice above did not help, your bes - `conda env remove -n obb` - `conda clean -a` - Make a new environment and install dependencies again. + - Reboot your computer and try again - Submit a ticket on GitHub
-
What does the JSONDecodeError mean during poetry install? +
+What does the JSONDecodeError mean during poetry install? Sometimes poetry can throw a `JSONDecodeError` on random packages while running `poetry install`. This can be observed on macOS 10.14+ running python 3.8+. This is because of the use of an experimental installer that can be switched off to avoid the mentioned error. Run the code below as advised [here](https://github.com/python-poetry/poetry/issues/4210) and it should fix the installation process. @@ -133,7 +141,8 @@ _Commands that may help you in case of an error:_
-
How do I deal with errors regarding CRLF? +
+How do I deal with errors regarding CRLF? When trying to commit code changes, pylint will prevent you from doing so if your line break settings are set to CRLF (default for Windows). @@ -156,7 +165,8 @@ git reset --hard
-
Why can't I run OpenBB via the VS Code integrated terminal? +
+Why can't I run OpenBB via the VS Code integrated terminal? This occurs when VS Code terminal python version/path is different from the terminal version. diff --git a/website/content/terminal/faqs/general_operation.md b/website/content/terminal/faqs/general_operation.md index 0e2441b37dc6..5c7f2b38fa6c 100644 --- a/website/content/terminal/faqs/general_operation.md +++ b/website/content/terminal/faqs/general_operation.md @@ -1,21 +1,22 @@ --- title: General Operation sidebar_position: 3 -description: Learn how to overcome system-related issues by enabling the 'developer +description: + Learn how to overcome system-related issues by enabling the 'developer mode' on Windows and MacOS. Get answers for queries and potential issues. Here, you'll also get to know how to run applications that do not meet the system's security policy, allow apps through firewall and get tips on portfolio management. keywords: -- developer mode -- overcome system-related issues -- Windows -- MacOS -- run applications -- system's security policy -- allow apps through firewall -- Portfolio management -- Settings -- FAQ + - developer mode + - overcome system-related issues + - Windows + - MacOS + - run applications + - system's security policy + - allow apps through firewall + - Portfolio management + - Settings + - FAQ --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -35,7 +36,8 @@ From the Windows Security menu, click on the Firewall & Network Protection tab, - VcXsrv - Windows Terminal -
Why does a specific menu or command not exist? +
+Why does a specific menu or command not exist? It could be that you are running an outdated version in which the menu or command is not yet available. Please check the [installation guide](/terminal/installation) to download the most recent release. @@ -43,25 +45,29 @@ Do note that it is also possible that the menu or command has been deprecated. I
-
Charts do not display on Linux/WSL or Docker installation. +
+Charts do not display on Linux/WSL or Docker installation. Check that X-11, or similar, is installed, open, and configured. Follow the instructions pertaining to the system here: [/terminal/installation/docker](/terminal/installation/docker)
-
How do I retrieve more results than is returned by default? +
+How do I retrieve more results than is returned by default? Most functions will have either, `--start` and `--end` flags, or a `--limit` argument. Print the help dialogue for any command by attaching, `--help` or `-h`.
-
Does the portfolio menu allow for dividends, interest, or other distributions? +
+Does the portfolio menu allow for dividends, interest, or other distributions? Currently, this is only possible by manually updating the portfolio file.
-
Why does my Portfolio file fail to load? +
+Why does my Portfolio file fail to load? This can be the result of a formatting error, check the file in a simple text editor to observe any abnormalities in the formatting; or, it could be a bug - check the [GitHub issues page](https://github.com/OpenBB-finance/OpenBBTerminal/issues) for similar errors. @@ -81,19 +87,22 @@ See the guide [here](/sdk/data-available/portfolio/introduction) for more inform
-
How do I change the chart styles? +
+How do I change the chart styles? -See the guide [here](/terminal/usage/overview/customizing-the-terminal). The theme can be toggled between light and dark mode, directly on the individual chart. See the [Terminal Basics page](/terminal/usage/basics#charts) for more information on working with the charts. +See the guide [here](/terminal/usage/overview/customizing-the-terminal). The theme can be toggled between light and dark mode, directly on the individual chart. See the [Terminal Basics page](/terminal/usage/basics#charts) for more information on working with the charts.
-
Can I change the colors of the text in the Terminal? +
+Can I change the colors of the text in the Terminal? Yes, use the `colors` command under the `/settings` menu: [/terminal/usage/overview/customizing-the-terminal](/terminal/usage/overview/customizing-the-terminal)
-
After setting the preset in the stocks screener, nothing happens. +
+After setting the preset in the stocks screener, nothing happens. Print the current screen again with by entering, `?`. Does the name of the selected preset display? With a preset loaded, run the screener by entering one of the commands below: @@ -106,7 +115,8 @@ Print the current screen again with by entering, `?`. Does the name of the selec
-
Forecast functions say to enter a valid data set +
+Forecast functions say to enter a valid data set Because an unlimited number of data sets can be loaded into the Forecast menu, each function requires defining the specific data set to be used. Add the `-d` or `--dataset` argument to the command, along with the name of the desired data set. @@ -116,9 +126,10 @@ rnn -d SPY
-
How do I find stocks from India, or another country? +
+How do I find stocks from India, or another country? -Use the `search` command from the `/stocks` menu. Refer to the menu's introduction guide [here](/terminal/menus/stocks#search). +Use the `search` command from the `/stocks` menu. Refer to the menu's introduction guide [here](/terminal/menus/stocks#search). As an example, try this: diff --git a/website/content/terminal/faqs/installation_updates.md b/website/content/terminal/faqs/installation_updates.md index b063447cf159..fb6835234e17 100644 --- a/website/content/terminal/faqs/installation_updates.md +++ b/website/content/terminal/faqs/installation_updates.md @@ -1,20 +1,21 @@ --- title: Installation and Updates sidebar_position: 1 -description: This page provides comprehensive insights about installing and updating +description: + This page provides comprehensive insights about installing and updating the OpenBB Terminal. It discusses system requirements, installation process, common errors and their solutions. Information about updating the OpenBB Terminal through different methods is also covered. keywords: -- OpenBB Terminal installation -- Updating OpenBB Terminal -- System requirements for OpenBB Terminal -- Installation errors with OpenBB Terminal -- Python pip installation -- Microsoft Visual C++ -- Homebrew installation -- libomp -- Conda installation issue + - OpenBB Terminal installation + - Updating OpenBB Terminal + - System requirements for OpenBB Terminal + - Installation errors with OpenBB Terminal + - Python pip installation + - Microsoft Visual C++ + - Homebrew installation + - libomp + - Conda installation issue --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -23,13 +24,15 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; ## Installation and Updates -
How much hard drive space is required? +
+How much hard drive space is required? An installation will use approximately 4-5 GB of space, with additional storage required for optional machine learning models.
-
What is the minimum version of Windows or MacOS required to install the OpenBB Terminal? +
+What is the minimum version of Windows or MacOS required to install the OpenBB Terminal? The OpenBB Terminal installation packages are compatible with: @@ -40,7 +43,8 @@ The OpenBB Terminal installation packages are compatible with:
-
How do I update my installation to the latest version? +
+How do I update my installation to the latest version? The terminal is constantly being updated with new features and bug fixes. The process for updating will vary by the installation type: @@ -69,7 +73,8 @@ pip install openbb-terminal-nightly[all] **Note**: This version may not be stable and should not be used in a production setting. -
"Microsoft Visual C++ 14.0 or greater is required" +
+"Microsoft Visual C++ 14.0 or greater is required" Download and install [C++ Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/), restart the machine, then try again. @@ -79,7 +84,8 @@ Download and install [C++ Build Tools](https://visualstudio.microsoft.com/visual
-
Error: failed building wheel for bt +
+Error: failed building wheel for bt There may be an additional message that is printed from this error, stating: "Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools". @@ -100,13 +106,15 @@ brew install cmake
-
Miniconda3 will not install on ARM/Linux Raspberry Pi machines. +
+Miniconda3 will not install on ARM/Linux Raspberry Pi machines. Refer to this issue on the Conda [GitHub](https://github.com/conda/conda/issues/10723) page.
-
Error: Library not loaded: '/usr/local/opt/libomp/lib/libomp.dylib' +
+Error: Library not loaded: '/usr/local/opt/libomp/lib/libomp.dylib' This error is resolved by installing libomp from Homebrew: diff --git a/website/content/terminal/faqs/launching.md b/website/content/terminal/faqs/launching.md index 82970d5d8f2d..f9161cbb3e71 100644 --- a/website/content/terminal/faqs/launching.md +++ b/website/content/terminal/faqs/launching.md @@ -1,27 +1,29 @@ --- title: Launching sidebar_position: 2 -description: Comprehensive troubleshooting guide for various software and system compatibility +description: + Comprehensive troubleshooting guide for various software and system compatibility issues encountered while using the OpenBB Terminal. Covers topics such as Mac M1/M2 Rosetta installation, Terminal, and SDK launch issues, ModuleNotFoundError solutions, SSL certificates authorization failures, proxy connection issues, and Linux Ubuntu specific problems. keywords: -- Mac M1/M2 Rosetta installation -- Incompatible library version issue -- Terminal app launch failure -- ModuleNotFoundError OpenBB troubleshooting -- Fontconfig warning solution -- SSL certificates authorization failure -- Proxy connection issues -- Linux Ubuntu OpenBB launch issue + - Mac M1/M2 Rosetta installation + - Incompatible library version issue + - Terminal app launch failure + - ModuleNotFoundError OpenBB troubleshooting + - Fontconfig warning solution + - SSL certificates authorization failure + - Proxy connection issues + - Linux Ubuntu OpenBB launch issue --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -
Mac: Invalid CPU Type - Terminal fails to launch. +
+Mac: Invalid CPU Type - Terminal fails to launch. This error is usually the result of a Mac M1/M2 machine which does not have Rosetta installed. Install from the system Terminal command line: @@ -31,7 +33,8 @@ softwareupdate --install-rosetta
-
Incompatible library version: libtiff.6.dylib requires version 10.0.0 or later, but liblzma.5.dylib provides version 8.0.0 +
+Incompatible library version: libtiff.6.dylib requires version 10.0.0 or later, but liblzma.5.dylib provides version 8.0.0 This issue can be resolved by following the steps below. @@ -43,13 +46,15 @@ This issue can be resolved by following the steps below.
-
Terminal app does not launch: Failed to execute script 'terminal' due to unhandled exception! +
+Terminal app does not launch: Failed to execute script 'terminal' due to unhandled exception! When an installer-packaged version of the OpenBB Terminal fails to launch, because of this message, the machine may have an obsolete CPU-type or operating system. Please try installing via the source code, and if problems persist, reach out to us on [Discord](https://discord.gg/xPHTuHCmuV) or fill out a support request form on our [website](https://openbb.co/support).
-
ModuleNotFoundError: No module named '______' +
+ModuleNotFoundError: No module named '______' Before troubleshooting please verify that the recommended installation instructions were followed. These errors often can occur when the virtual environment has not been activated, or the `poetry install` command was skipped. Activate the OpenBB virtual environment created during the installation process prior to launching or importing the SDK. @@ -84,19 +89,21 @@ poetry install -E all
-
Fontconfig warning: ignoring UTF-8: not a valid region tag +
+Fontconfig warning: ignoring UTF-8: not a valid region tag In the OS default terminal shell profile, check for a variable similar to, “set locale environment variables at startup”, then also, set text encoding to UTF-8.
-
SSL certificates fail to authorize +
+SSL certificates fail to authorize ```console SSL: CERTIFICATE_VERIFY_FAILED ``` -An error message, similar to above, is usually encountered while attempting to use the OpenBB Platform from behind a firewall. A workplace environment is typically the most common occurrence. Try connecting to the internet directly through a home network to test the connection. If using a work computer and/or network, we recommend speaking with the company's IT department prior to installing or running any software. +An error message, similar to above, is usually encountered while attempting to use the OpenBB Platform from behind a firewall. A workplace environment is typically the most common occurrence. Try connecting to the internet directly through a home network to test the connection. If using a work computer and/or network, we recommend speaking with the company's IT department prior to installing or running any software. A potential solution is to try: @@ -106,7 +113,8 @@ pip install pip-system-certs
-
Cannot connect due to proxy connection. +
+Cannot connect due to proxy connection. Find the `.env` file (located at the root of the user account folder: (`~/.openbb_terminal/.env`), and add a line at the bottom of the file with: @@ -116,7 +124,8 @@ HTTP_PROXY="
" or HTTPS_PROXY="
-
Linux Ubuntu installation was successful but now hangs on launch. +
+ Linux Ubuntu installation was successful but now hangs on launch. Check that VcXsvr - or an equivalent X-host - is running and configured prior to launch. diff --git a/website/content/terminal/installation/macos.md b/website/content/terminal/installation/macos.md index 699debd8f71a..b44f615b533f 100644 --- a/website/content/terminal/installation/macos.md +++ b/website/content/terminal/installation/macos.md @@ -1,22 +1,23 @@ --- title: MacOS sidebar_position: 2 -description: Step-by-step instructions for installing the OpenBB Terminal on MacOS. +description: + Step-by-step instructions for installing the OpenBB Terminal on MacOS. This guide covers installation for both Intel-based computers and Apple Silicon (M1) devices, and includes instructions for preliminaries like installing Rosetta for M1 users. keywords: -- OpenBB Terminal Installation -- MacOS installation guide -- OpenBB on Mac Intel -- OpenBB on Mac M1 -- Rosetta installation -- PKG installer -- OpenBB Terminal application -- MacOS Big Sur installation -- MacOS Monterey installation -- Apple Silicon installation -- Unverified developer warning + - OpenBB Terminal Installation + - MacOS installation guide + - OpenBB on Mac Intel + - OpenBB on Mac M1 + - Rosetta installation + - PKG installer + - OpenBB Terminal application + - MacOS Big Sur installation + - MacOS Monterey installation + - Apple Silicon installation + - Unverified developer warning --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -33,7 +34,8 @@ Install the OpenBB Terminal on MacOS (Big Sur or later). There are two versions -
Minimum Requirements +
+Minimum Requirements - MacOS Monterey or newer - Modern CPU (Intel processor made in the last 5 years or Apple Silicon chip) @@ -46,14 +48,15 @@ Install the OpenBB Terminal on MacOS (Big Sur or later). There are two versions :::info Apple Silicon users will need to install Rosetta prior to installation To understand whether you are using an Apple Sillicon (M1) device or an Intel-based device click on the Apple Icon at the top left of your MacBook and select "About This Mac". Then under "Chip" if it says something like "Apple M1 Pro" or "Apple M1 Max", you know you have an Apple Silicon MacBook. If it says for example "2,3 GHz Quad-Core Intel Core i7" you know that you have an Intel-based MacBook and you can continue by clicking on the "Mac Intel Installer" button. -
Rosetta Installation Instructions (Apple Sillicon users only) +
+Rosetta Installation Instructions (Apple Sillicon users only) 1. Press ⌘ (Command) + SPACE to open spotlight search, and type "Terminal" and hit Return (⏎). 2. Copy and paste the following code in the Terminal and hit ENTER (⏎): - ```console - softwareupdate --install-rosetta - ``` +```console +softwareupdate --install-rosetta +``` 3. This will start up the Rosetta installation process and you will receive a message regarding the Licence Agreement. Type `A` and hit Return (⏎). 4. After the installation process has finished, you can proceed by clicking on the "Mac M1 Installer" button. @@ -66,13 +69,13 @@ Step by step instructions: 1. Download the PKG file from the links above. 2. Launch the PKG installer by double-clicking on it. -image + image 3. Follow the Installer prompt. You will be asked to enter your system password. -image + image 4. This process installs the application into the `/Application/OpenBB Terminal` folder. -image + image 5. Launch the application by double-clicking on the `OpenBB Terminal` application. If everything was successful you should see a screen like the one below: diff --git a/website/content/terminal/installation/source.md b/website/content/terminal/installation/source.md index dbf563d32a5d..df487282ebb0 100644 --- a/website/content/terminal/installation/source.md +++ b/website/content/terminal/installation/source.md @@ -1,30 +1,31 @@ --- title: Source sidebar_position: 3 -description: Comprehensive guide to install the OpenBB Terminal and SDK from source. +description: + Comprehensive guide to install the OpenBB Terminal and SDK from source. The guide covers the installation process for Windows, macOS, and Linux systems and covers various software installations including Miniconda, Git, Microsoft C++ Build Tools, Rosetta2, LibOMP, VcXsrv, and GTK toolchains. Instructions for environment setup and package management through Conda and Poetry are also included, along with troubleshooting tips and community support. keywords: -- Installation -- Miniconda -- Git -- Microsoft C++ Build Tools -- Rosetta2 -- LibOMP -- VcXsrv -- GTK toolchains -- Conda -- Poetry -- Environment setup -- Python package management -- Troubleshooting -- Community support -- Linux -- MacOS -- Windows + - Installation + - Miniconda + - Git + - Microsoft C++ Build Tools + - Rosetta2 + - LibOMP + - VcXsrv + - GTK toolchains + - Conda + - Poetry + - Environment setup + - Python package management + - Troubleshooting + - Community support + - Linux + - MacOS + - Windows --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -34,12 +35,13 @@ import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; :::warning -The instructons on this page are for installing the OpenBB Terminal from the source code, which uses a legacy version of the Python SDK. If you do not wish to install the OpenBB Terminal application, please refer to the installation instructions [here](/platform/installation) +The instructons on this page are for installing the OpenBB Terminal from the source code, which uses a legacy version of the Python SDK. If you do not wish to install the OpenBB Terminal application, please refer to the installation instructions [here](/platform/installation) ::: This section provides steps to install the OpenBB Terminal and SDK from source. This installation type supports Windows, macOS and Linux systems. **Before starting the installation process, make sure the following pieces of software are installed.** -
Miniconda +
+Miniconda Miniconda is a Python environment and package manager. It is required for installing certain dependencies. Go [here](https://docs.conda.io/en/latest/miniconda.html#latest-miniconda-installer-links) to find the download for your operating system or use the links below: @@ -70,7 +72,8 @@ conda update -n base -c conda-forge conda
-
Git +
+Git Check to verify if Git is installed by running the following command: @@ -94,7 +97,8 @@ Or follow the instructions [here](https://git-scm.com/book/en/v2/Getting-Started
-
Microsoft C++ Build Tools (Windows only) +
+Microsoft C++ Build Tools (Windows only) Use the instructions [here](https://visualstudio.microsoft.com/visual-cpp-build-tools/) to install or update Microsoft C++ Build Tools. @@ -102,19 +106,21 @@ Use the instructions [here](https://visualstudio.microsoft.com/visual-cpp-build- ![image](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/f8aef8fc-a080-4164-bd36-460714ec44f3) -
-
Rosetta2 (Apple Silicon only) +
+Rosetta2 (Apple Silicon only) Install Rosetta from the terminal with: + ```shell softwareupdate --install-rosetta ```
-
LibOMP (Apple Silicon only) +
+LibOMP (Apple Silicon only) Apple Silicon does not ship `libomp` by default. It will need to be installed manually for some features of the ML toolkit to work. The `libomp` library can be installed from [homebrew](https://brew.sh/). @@ -140,7 +146,8 @@ brew install libomp
-
VcXsrv (Windows Subsystem for Linux only) +
+VcXsrv (Windows Subsystem for Linux only) Since a WSL installation is headless by default (i.e., there is only access to a terminal running a Linux distribution) there are additional steps required to display visualizations. A more detailed tutorial is found, [here](https://medium.com/@shaoyenyu/make-matplotlib-works-correctly-with-x-server-in-wsl2-9d9928b4e36a). @@ -166,12 +173,13 @@ Alternatives to `VcXsrv` include:
-
GTK toolchains (Linux only) +
+GTK toolchains (Linux only) GTK is a window extension that is used to display interactive charts and tables. The library responsible for interactive charts and tables (`pywry`) requires certain dependencies, based on the Linux distribution, to be installed first.
-Debian-based / Ubuntu / Mint +Debian-based / Ubuntu / Mint ```shell sudo apt install libwebkit2gtk-4.0-dev @@ -180,7 +188,7 @@ sudo apt install libwebkit2gtk-4.0-dev
-Arch Linux / Manjaro +Arch Linux / Manjaro ```shell sudo pacman -S webkit2gtk @@ -189,7 +197,7 @@ sudo pacman -S webkit2gtk
-Fedora +Fedora ```shell sudo dnf install gtk3-devel webkit2gtk3-devel @@ -224,7 +232,7 @@ conda env create -n obb --file build/conda/conda-3-9-env.yaml ``` :::note -Additional `YAML` files provide support for Python versions 3.8 and 3.10. Substitute the `9`, in the command above, with the desired version. +Additional `YAML` files provide support for Python versions 3.8 and 3.10. Substitute the `9`, in the command above, with the desired version. ::: After the obb environment is created, activate it by entering: @@ -259,8 +267,11 @@ Install the remaining dependencies and the terminal through Poetry, a package ma ```shell poetry install -E all ``` + :::info -
Read about Conda, Poetry and Python package management + +
+Read about Conda, Poetry and Python package management For the best user experience we advise using `conda` and `poetry` for environment setup and dependency management. Conda ships binaries for packages like `numpy` so these dependencies are not built from source locally by `pip`. Poetry solves the dependency tree in a way that the dependencies of dependencies of dependencies use versions that are compatible with each other. diff --git a/website/content/terminal/installation/windows.md b/website/content/terminal/installation/windows.md index 0910c1748700..3d53f1a3671f 100644 --- a/website/content/terminal/installation/windows.md +++ b/website/content/terminal/installation/windows.md @@ -1,15 +1,16 @@ --- title: Windows sidebar_position: 1 -description: Learn how to install the OpenBB Terminal on Windows, understand its minimum +description: + Learn how to install the OpenBB Terminal on Windows, understand its minimum requirements, and follow the step-by-step instructions to ensure successful installation. keywords: -- OpenBB Terminal installation -- Windows installation guide -- Windows OpenBB Terminal -- Download OpenBB Terminal -- Install OpenBB Terminal -- OpenBB Terminal requirements + - OpenBB Terminal installation + - Windows installation guide + - Windows OpenBB Terminal + - Download OpenBB Terminal + - Install OpenBB Terminal + - OpenBB Terminal requirements --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -22,7 +23,8 @@ This section provides you with the installation file as well as the guide to ins -
Minimum Requirements +
+Minimum Requirements - Windows 10 or newer - Modern CPU (Intel or AMD processor made in the last 5 years) diff --git a/website/content/terminal/reference/alt/oss/rossidx.md b/website/content/terminal/reference/alt/oss/rossidx.md index 1847c8e61395..113cd2bafc77 100644 --- a/website/content/terminal/reference/alt/oss/rossidx.md +++ b/website/content/terminal/reference/alt/oss/rossidx.md @@ -1,30 +1,31 @@ --- title: rossidx -description: This page provides detailed instructions on how to use the rossidx command +description: + This page provides detailed instructions on how to use the rossidx command in Python to sort and display information about startups from the Ross Index. Users can sort by various criteria (e.g. GitHub Stars, Company, Country), display charts, and set the chart type to 'stars' or 'forks'. keywords: -- rossidx -- startups -- chart -- stars -- forks -- sorting -- growth chart -- GitHub -- company -- country -- city -- founded -- raised money + - rossidx + - startups + - chart + - stars + - forks + - sorting + - growth chart + - GitHub + - company + - country + - city + - founded + - raised money --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Display list of startups from ross index [Source: https://runacap.com/] Use --chart to display chart and -t {stars,forks} to set chart type +Display list of startups from ross index [Source: https://runacap.com/] Use --chart to display chart and -t \{stars,forks\} to set chart type ### Usage @@ -36,12 +37,12 @@ rossidx [-s SORTBY [SORTBY ...]] [-r] [-c] [-g] [-t {stars,forks}] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| sortby | Sort startups by column | Stars AGR [%] | True | GitHub, Company, Country, City, Founded, Raised [$M], Stars, Forks, Stars AGR [%], Forks AGR [%] | -| reverse | Data is sorted in descending order by default. Reverse flag will sort it in an ascending way. Only works when raw data is displayed. | False | True | None | -| show_chart | Flag to show chart | False | True | None | -| show_growth | Flag to show growth chart | False | True | None | -| chart_type | Chart type: {stars, forks} | stars | True | stars, forks | +| Name | Description | Default | Optional | Choices | +| ----------- | ------------------------------------------------------------------------------------------------------------------------------------ | ------------- | -------- | ------------------------------------------------------------------------------------------------ | +| sortby | Sort startups by column | Stars AGR [%] | True | GitHub, Company, Country, City, Founded, Raised [$M], Stars, Forks, Stars AGR [%], Forks AGR [%] | +| reverse | Data is sorted in descending order by default. Reverse flag will sort it in an ascending way. Only works when raw data is displayed. | False | True | None | +| show_chart | Flag to show chart | False | True | None | +| show_growth | Flag to show growth chart | False | True | None | +| chart_type | Chart type: \{stars, forks\} | stars | True | stars, forks | --- diff --git a/website/content/terminal/reference/alt/oss/tr.md b/website/content/terminal/reference/alt/oss/tr.md index e1e454fcb633..bea1ed5d3d42 100644 --- a/website/content/terminal/reference/alt/oss/tr.md +++ b/website/content/terminal/reference/alt/oss/tr.md @@ -1,18 +1,19 @@ --- title: tr -description: Documentation on how to display top repositories using the GitHub API. +description: + Documentation on how to display top repositories using the GitHub API. Instructions include usage, parameters details, and examples. The user can sort the repos by stars or forks, and can filter by repo categories. keywords: -- top repositories -- github api -- parameters -- stars -- forks -- repo categories -- filter -- sort -- usage + - top repositories + - github api + - parameters + - stars + - forks + - repo categories + - filter + - sort + - usage --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -31,10 +32,10 @@ tr [-s {stars,forks}] [-c CATEGORIES] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| sortby | Sort repos by {stars, forks}. Default: stars | stars | True | stars, forks | -| categories | Filter by repo categories. If more than one separate with a comma: e.g., finance,investment | | True | None | +| Name | Description | Default | Optional | Choices | +| ---------- | ------------------------------------------------------------------------------------------- | ------- | -------- | ------------ | +| sortby | Sort repos by \{stars, forks\}. Default: stars | stars | True | stars, forks | +| categories | Filter by repo categories. If more than one separate with a comma: e.g., finance,investment | | True | None | ![cases](https://user-images.githubusercontent.com/46355364/153897646-99e4f73f-be61-4ed7-a31d-58e8695e7c50.png) diff --git a/website/content/terminal/reference/crypto/disc/dapps.md b/website/content/terminal/reference/crypto/disc/dapps.md index f70a2af5ea67..fd146c61bf0e 100644 --- a/website/content/terminal/reference/crypto/disc/dapps.md +++ b/website/content/terminal/reference/crypto/disc/dapps.md @@ -1,30 +1,31 @@ --- title: dapps -description: A comprehensive guide to understanding and using 'dapps' command for +description: + A comprehensive guide to understanding and using 'dapps' command for listing and sorting the top Decentralized Applications (DApps) from various categories and protocols as per users' choice. keywords: -- DApp -- Decentralized Applications -- Crypto -- Blockchain -- PancakeSwap -- Splinterlands -- Alien Worlds -- Farmers World -- AtomicAssets -- Axie Infinity -- Upland -- OpenSea -- Katana -- Magic Eden + - DApp + - Decentralized Applications + - Crypto + - Blockchain + - PancakeSwap + - Splinterlands + - Alien Worlds + - Farmers World + - AtomicAssets + - Axie Infinity + - Upland + - OpenSea + - Katana + - Magic Eden --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows top decentralized applications [Source: https://dappradar.com/] Accepts --sort {Name,Category,Protocols,Daily Users,Daily Volume [$]} to sort by column +Shows top decentralized applications [Source: https://dappradar.com/] Accepts --sort \{Name,Category,Protocols,Daily Users,Daily Volume [$]\} to sort by column ### Usage @@ -36,11 +37,10 @@ dapps [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Protocols, Daily Users, Daily Volume [$] | - +| Name | Description | Default | Optional | Choices | +| ------ | ----------------------------------------------- | ---------------- | -------- | -------------------------------------------------------- | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Protocols, Daily Users, Daily Volume [$] | --- @@ -73,4 +73,5 @@ dapps [-l LIMIT] [-s SORTBY [SORTBY ...]] │ Magic Eden │ marketplaces │ solana │ 40.2K │ 18.5M │ └───────────────┴──────────────┴─────────────────────────┴─────────────┴──────────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/disc/dex.md b/website/content/terminal/reference/crypto/disc/dex.md index d642823ab69c..874997563609 100644 --- a/website/content/terminal/reference/crypto/disc/dex.md +++ b/website/content/terminal/reference/crypto/disc/dex.md @@ -1,23 +1,24 @@ --- title: dex -description: The dex page displays information about top decentralized exchanges. +description: + The dex page displays information about top decentralized exchanges. It provides usage, parameters, and examples of how to fetch and sort the data. keywords: -- Decentralized Exchanges -- Dex command -- Crypto Data Sorting -- Crypto Trading Volume -- Dex Parameters -- Dex Examples -- DappRadar -- Cryptocurrency + - Decentralized Exchanges + - Dex command + - Crypto Data Sorting + - Crypto Trading Volume + - Dex Parameters + - Dex Examples + - DappRadar + - Cryptocurrency --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows top decentralized exchanges [Source: https://dappradar.com/] Accepts --sort {Name,Daily Users,Daily Volume [$]} to sort by column +Shows top decentralized exchanges [Source: https://dappradar.com/] Accepts --sort \{Name,Daily Users,Daily Volume [$]\} to sort by column ### Usage @@ -29,11 +30,10 @@ dex [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Daily Users, Daily Volume [$] | - +| Name | Description | Default | Optional | Choices | +| ------ | ----------------------------------------------- | ---------------- | -------- | --------------------------------------------- | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Daily Users, Daily Volume [$] | --- @@ -66,4 +66,5 @@ dex [-l LIMIT] [-s SORTBY [SORTBY ...]] │ Magic Eden │ 40.2K │ 18.5M │ └───────────────┴─────────────┴──────────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/disc/gainers.md b/website/content/terminal/reference/crypto/disc/gainers.md index a9c41990b740..e808a2a2c608 100644 --- a/website/content/terminal/reference/crypto/disc/gainers.md +++ b/website/content/terminal/reference/crypto/disc/gainers.md @@ -1,24 +1,25 @@ --- title: gainers -description: This page provides details on the 'gainers' functionality, including +description: + This page provides details on the 'gainers' functionality, including descriptions, parameters, usage, and examples. The gainers functionality displays the coins that have gained the most in a selected time period. keywords: -- gainers -- crypto -- coins -- market cap -- volume -- time intervals -- parameters -- defaults + - gainers + - crypto + - coins + - market cap + - volume + - time intervals + - parameters + - defaults --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows Largest Gainers - coins which gain the most in given period. You can use parameter --interval to set which timeframe are you interested in: {14d,1h,1y,200d,24h,30d,7d} You can look on only N number of records with --limit, You can sort by {Symbol,Name,Price [$],Market Cap,Market Cap Rank,Volume [$]} with --sort. +Shows Largest Gainers - coins which gain the most in given period. You can use parameter --interval to set which timeframe are you interested in: \{14d,1h,1y,200d,24h,30d,7d\} You can look on only N number of records with --limit, You can sort by \{Symbol,Name,Price [$],Market Cap,Market Cap Rank,Volume [$]\} with --sort. ### Usage @@ -30,12 +31,11 @@ gainers [-i {14d,1h,1y,200d,24h,30d,7d}] [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| interval | time period, one from {14d,1h,1y,200d,24h,30d,7d} | 1h | True | 14d, 1h, 1y, 200d, 24h, 30d, 7d | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Market Cap Rank | market_cap | True | Symbol, Name, Price [$], Market Cap, Market Cap Rank, Volume [$] | - +| Name | Description | Default | Optional | Choices | +| -------- | --------------------------------------------------- | ---------- | -------- | ---------------------------------------------------------------- | +| interval | time period, one from \{14d,1h,1y,200d,24h,30d,7d\} | 1h | True | 14d, 1h, 1y, 200d, 24h, 30d, 7d | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Market Cap Rank | market_cap | True | Symbol, Name, Price [$], Market Cap, Market Cap Rank, Volume [$] | --- @@ -77,4 +77,5 @@ gainers [-i {14d,1h,1y,200d,24h,30d,7d}] [-l LIMIT] [-s SORTBY [SORTBY ...]] │ cro │ Crypto.com Coin │ 0.50 │ 12.5B │ 15 │ 200.8M │ -1.21 │ └────────┴─────────────────┴───────────┴────────────────┴─────────────────┴────────────┴───────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/disc/games.md b/website/content/terminal/reference/crypto/disc/games.md index 6ba3cfff9d03..c57eda00ad90 100644 --- a/website/content/terminal/reference/crypto/disc/games.md +++ b/website/content/terminal/reference/crypto/disc/games.md @@ -1,28 +1,29 @@ --- title: games -description: This page provides a list of top blockchain games with sorting options +description: + This page provides a list of top blockchain games with sorting options by Name, Daily Users, and Daily Volume. Use this command to discover the most popular and lucrative blockchain games. keywords: -- blockchain -- blockchain games -- crypto games -- daily volume -- daily users -- sorting -- top games -- Splinterlands -- PancakeSwap -- Alien Worlds -- Axie Infinity -- OpenSea + - blockchain + - blockchain games + - crypto games + - daily volume + - daily users + - sorting + - top games + - Splinterlands + - PancakeSwap + - Alien Worlds + - Axie Infinity + - OpenSea --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows top blockchain games [Source: https://dappradar.com/] Accepts --sort {Name,Daily Users,Daily Volume [$]} to sort by column +Shows top blockchain games [Source: https://dappradar.com/] Accepts --sort \{Name,Daily Users,Daily Volume [$]\} to sort by column ### Usage @@ -34,11 +35,10 @@ games [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Daily Users, Daily Volume [$] | - +| Name | Description | Default | Optional | Choices | +| ------ | ----------------------------------------------- | ---------------- | -------- | --------------------------------------------- | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Daily Volume [$] | Daily Volume [$] | True | Name, Category, Daily Users, Daily Volume [$] | --- @@ -71,4 +71,5 @@ games [-l LIMIT] [-s SORTBY [SORTBY ...]] │ Magic Eden │ 40.2K │ 18.5M │ └───────────────┴─────────────┴──────────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/disc/losers.md b/website/content/terminal/reference/crypto/disc/losers.md index 914b850b1229..8ab2fa3ede28 100644 --- a/website/content/terminal/reference/crypto/disc/losers.md +++ b/website/content/terminal/reference/crypto/disc/losers.md @@ -1,29 +1,30 @@ --- title: losers -description: The 'losers' documentation page provides a Python based solution for +description: + The 'losers' documentation page provides a Python based solution for identifying cryptocurrencies with the largest drop in value over a given time period. Control the analysis with options for the time interval, record limits, and sorting. This tool is essential for in-depth market analysis and monitoring market trends. keywords: -- Market Analysis -- Cryptocurrency -- Crypto Losers -- Market Trends -- Price Drop -- Time Interval -- Record Limit -- Sort Options -- Python Script -- Crypto Coin Symbol -- Market Cap Rank -- Volume + - Market Analysis + - Cryptocurrency + - Crypto Losers + - Market Trends + - Price Drop + - Time Interval + - Record Limit + - Sort Options + - Python Script + - Crypto Coin Symbol + - Market Cap Rank + - Volume --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows Largest Losers - coins which price dropped the most in given period You can use parameter --interval to set which timeframe are you interested in: {14d,1h,1y,200d,24h,30d,7d} You can look on only N number of records with --limit, You can sort by {Symbol,Name,Price [$],Market Cap,Market Cap Rank,Volume [$]} with --sort. +Shows Largest Losers - coins which price dropped the most in given period You can use parameter --interval to set which timeframe are you interested in: \{14d,1h,1y,200d,24h,30d,7d\} You can look on only N number of records with --limit, You can sort by \{Symbol,Name,Price [$],Market Cap,Market Cap Rank,Volume [$]\} with --sort. ### Usage @@ -35,12 +36,11 @@ losers [-i {14d,1h,1y,200d,24h,30d,7d}] [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| interval | time period, one from {14d,1h,1y,200d,24h,30d,7d} | 1h | True | 14d, 1h, 1y, 200d, 24h, 30d, 7d | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Market Cap Rank | Market Cap | True | Symbol, Name, Price [$], Market Cap, Market Cap Rank, Volume [$] | - +| Name | Description | Default | Optional | Choices | +| -------- | --------------------------------------------------- | ---------- | -------- | ---------------------------------------------------------------- | +| interval | time period, one from \{14d,1h,1y,200d,24h,30d,7d\} | 1h | True | 14d, 1h, 1y, 200d, 24h, 30d, 7d | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Market Cap Rank | Market Cap | True | Symbol, Name, Price [$], Market Cap, Market Cap Rank, Volume [$] | --- @@ -82,4 +82,5 @@ losers [-i {14d,1h,1y,200d,24h,30d,7d}] [-l LIMIT] [-s SORTBY [SORTBY ...]] │ xrp │ XRP │ 0.84 │ 39.9B │ 6 │ 3.2B │ 0.29 │ └────────┴─────────────────┴───────────┴────────────────┴─────────────────┴────────────┴───────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/disc/nft.md b/website/content/terminal/reference/crypto/disc/nft.md index cdc019196a49..4fc121f73c26 100644 --- a/website/content/terminal/reference/crypto/disc/nft.md +++ b/website/content/terminal/reference/crypto/disc/nft.md @@ -1,23 +1,24 @@ --- title: nft -description: Page covers usage and parameters of an NFT command for Dappradar. Allows +description: + Page covers usage and parameters of an NFT command for Dappradar. Allows sorting NFTs by name, protocols, floor price, average price, market cap, and volume. keywords: -- NFT -- Dappradar -- Sort -- Market Cap -- Volume -- Floor Price -- Avg Price -- Protocols + - NFT + - Dappradar + - Sort + - Market Cap + - Volume + - Floor Price + - Avg Price + - Protocols --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Shows top NFT collections [Source: https://dappradar.com/] Accepts --sort {Name,Protocols,Floor Price [$],Avg Price [$],Market Cap,Volume [$]} to sort by column +Shows top NFT collections [Source: https://dappradar.com/] Accepts --sort \{Name,Protocols,Floor Price [$],Avg Price [$],Market Cap,Volume [$]\} to sort by column ### Usage @@ -29,9 +30,9 @@ nft [-l LIMIT] [-s SORTBY [SORTBY ...]] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| limit | Number of records to display | 15 | True | None | -| sortby | Sort by given column. Default: Market Cap | Market Cap | True | Name, Protocols, Floor Price [$], Avg Price [$], Market Cap [$], Volume [$] | +| Name | Description | Default | Optional | Choices | +| ------ | ----------------------------------------- | ---------- | -------- | --------------------------------------------------------------------------- | +| limit | Number of records to display | 15 | True | None | +| sortby | Sort by given column. Default: Market Cap | Market Cap | True | Name, Protocols, Floor Price [$], Avg Price [$], Market Cap [$], Volume [$] | --- diff --git a/website/content/terminal/reference/crypto/ov/ch.md b/website/content/terminal/reference/crypto/ov/ch.md index 5c6b17fa26b4..b365a9b756cc 100644 --- a/website/content/terminal/reference/crypto/ov/ch.md +++ b/website/content/terminal/reference/crypto/ov/ch.md @@ -1,28 +1,29 @@ --- title: ch -description: This documentation outlines the usage of the 'ch' command to display +description: + This documentation outlines the usage of the 'ch' command to display a list of major crypto-related hacks. It details the different parameters available to sort and display the data. Included are specific examples, and the expected output. keywords: -- crypto-related hacks -- crypto hack -- hack display -- sort by parameters -- crypto platform -- hack amount -- hack date -- hack audit -- hack slug -- hack URL -- reverse display order -- individual crypto hack + - crypto-related hacks + - crypto hack + - hack display + - sort by parameters + - crypto platform + - hack amount + - hack date + - hack audit + - hack slug + - hack URL + - reverse display order + - individual crypto hack --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Display list of major crypto-related hacks [Source: https://rekt.news] Can be sorted by {Platform,Date,Amount [$],Audit,Slug,URL} with --sortby and reverse the display order with --reverse Show only N elements with --limit Accepts --slug or -s to check individual crypto hack (e.g., -s polynetwork-rekt) +Display list of major crypto-related hacks [Source: https://rekt.news] Can be sorted by \{Platform,Date,Amount [$],Audit,Slug,URL\} with --sortby and reverse the display order with --reverse Show only N elements with --limit Accepts --slug or -s to check individual crypto hack (e.g., -s polynetwork-rekt) ### Usage @@ -34,13 +35,12 @@ ch [-l LIMIT] [--sortby {Platform,Date,Amount [$],Audit,Slug,URL} [{Platform,Dat ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| limit | Display N items | 15 | True | None | -| sortby | Sort by given column. Default: Amount [$] | Amount [$] | True | Platform, Date, Amount [$], Audit, Slug, URL | -| reverse | Data is sorted in descending order by default. Reverse flag will sort it in an ascending way. Only works when raw data is displayed. | False | True | None | -| slug | Slug to check crypto hack (e.g., polynetwork-rekt) | | True | ronin-rekt, polynetwork-rekt, bnb-bridge-rekt, sbf-mask-off, wormhole-rekt, bitmart-rekt, nomad-rekt, beanstalk-rekt, wintermute-rekt-2, compound-rekt, vulcan-forged-rekt, cream-rekt-2, badger-rekt, mango-markets-rekt, harmony-rekt, mirror-rekt, fei-rari-rekt, qubit-rekt, ascendex-rekt, easyfi-rekt, uranium-rekt, bzx-rekt, cashio-rekt, pancakebunny-rekt, epic-hack-homie, alpha-finance-rekt, veefinance-rekt, cryptocom-rekt, meerkat-finance-bsc-rekt, monox-rekt, spartan-rekt, grim-finance-rekt, deribit-rekt, wintermute-rekt, stablemagnet-rekt, paid-rekt, harvest-finance-rekt, xtoken-rekt, elephant-money-rekt, venus-blizz-rekt, transit-swap-rekt, popsicle-rekt, pickle-finance-rekt, cream-rekt, snowdog-rekt, bearn-rekt, indexed-finance-rekt, teamfinance-rekt, inverse-finance-rekt, eminence-rekt-in-prod, furucombo-rekt, deus-dao-rekt-2, deathbed-confessions-c3pr, agave-hundred-rekt, saddle-finance-rekt2, value-rekt3, yearn-rekt, dego-finance-rekt, arbix-rekt, rari-capital-rekt, value-rekt2, cover-rekt, punkprotocol-rekt, crema-finance-rekt, superfluid-rekt, moola-markets-rekt, visor-finance-rekt, thorchain-rekt2, hack-epidemic, lcx-rekt, anyswap-rekt, warp-finance-rekt, meter-rekt, burgerswap-rekt, value-defi-rekt, alchemix-rekt, belt-rekt, audius-rekt, bondly-rekt, inverse-rekt2, roll-rekt, unsolved-mystery, thorchain-rekt, xtoken-rekt-x2, 11-rekt, chainswap-rekt, voltage-finance-rekt, daomaker-rekt, nirvana-rekt, skyward-rekt, jaypegs-automart-rekt, fortress-rekt, deus-dao-rekt, pancakebunny2-rekt, templedao-rekt, gymnet-rekt, revest-finance-rekt, madmeerkat-finance-rekt, au-dodo-rekt, akropolis-rekt, bent-finance, 8ight-finance-rekt, acala-network-rekt, levyathan-rekt, treasure-dao-rekt, the-big-combo, sovryn-rekt, autoshark-rekt, merlinlabs-rekt, curve-finance-rekt, merlin2-rekt, merlin3-rekt, saddle-finance-rekt, safedollar-rekt | - +| Name | Description | Default | Optional | Choices | +| ------- | ------------------------------------------------------------------------------------------------------------------------------------ | ---------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| limit | Display N items | 15 | True | None | +| sortby | Sort by given column. Default: Amount [$] | Amount [$] | True | Platform, Date, Amount [$], Audit, Slug, URL | +| reverse | Data is sorted in descending order by default. Reverse flag will sort it in an ascending way. Only works when raw data is displayed. | False | True | None | +| slug | Slug to check crypto hack (e.g., polynetwork-rekt) | | True | ronin-rekt, polynetwork-rekt, bnb-bridge-rekt, sbf-mask-off, wormhole-rekt, bitmart-rekt, nomad-rekt, beanstalk-rekt, wintermute-rekt-2, compound-rekt, vulcan-forged-rekt, cream-rekt-2, badger-rekt, mango-markets-rekt, harmony-rekt, mirror-rekt, fei-rari-rekt, qubit-rekt, ascendex-rekt, easyfi-rekt, uranium-rekt, bzx-rekt, cashio-rekt, pancakebunny-rekt, epic-hack-homie, alpha-finance-rekt, veefinance-rekt, cryptocom-rekt, meerkat-finance-bsc-rekt, monox-rekt, spartan-rekt, grim-finance-rekt, deribit-rekt, wintermute-rekt, stablemagnet-rekt, paid-rekt, harvest-finance-rekt, xtoken-rekt, elephant-money-rekt, venus-blizz-rekt, transit-swap-rekt, popsicle-rekt, pickle-finance-rekt, cream-rekt, snowdog-rekt, bearn-rekt, indexed-finance-rekt, teamfinance-rekt, inverse-finance-rekt, eminence-rekt-in-prod, furucombo-rekt, deus-dao-rekt-2, deathbed-confessions-c3pr, agave-hundred-rekt, saddle-finance-rekt2, value-rekt3, yearn-rekt, dego-finance-rekt, arbix-rekt, rari-capital-rekt, value-rekt2, cover-rekt, punkprotocol-rekt, crema-finance-rekt, superfluid-rekt, moola-markets-rekt, visor-finance-rekt, thorchain-rekt2, hack-epidemic, lcx-rekt, anyswap-rekt, warp-finance-rekt, meter-rekt, burgerswap-rekt, value-defi-rekt, alchemix-rekt, belt-rekt, audius-rekt, bondly-rekt, inverse-rekt2, roll-rekt, unsolved-mystery, thorchain-rekt, xtoken-rekt-x2, 11-rekt, chainswap-rekt, voltage-finance-rekt, daomaker-rekt, nirvana-rekt, skyward-rekt, jaypegs-automart-rekt, fortress-rekt, deus-dao-rekt, pancakebunny2-rekt, templedao-rekt, gymnet-rekt, revest-finance-rekt, madmeerkat-finance-rekt, au-dodo-rekt, akropolis-rekt, bent-finance, 8ight-finance-rekt, acala-network-rekt, levyathan-rekt, treasure-dao-rekt, the-big-combo, sovryn-rekt, autoshark-rekt, merlinlabs-rekt, curve-finance-rekt, merlin2-rekt, merlin3-rekt, saddle-finance-rekt, safedollar-rekt | --- @@ -83,4 +83,5 @@ ch [-l LIMIT] [--sortby {Platform,Date,Amount [$],Audit,Slug,URL} [{Platform,Dat │ Alpha Finance - REKT │ 2021-02-13 │ 37.500 M │ Quantstamp, Peckshield │ alpha-finance-rekt │ https://rekt.news/alpha-finance-rekt/ │ └────────────────────────┴────────────┴────────────┴────────────────────────┴────────────────────┴───────────────────────────────────────┘ ``` + --- diff --git a/website/content/terminal/reference/crypto/ov/cr.md b/website/content/terminal/reference/crypto/ov/cr.md index f4c6e6576a92..f9a64e18711b 100644 --- a/website/content/terminal/reference/crypto/ov/cr.md +++ b/website/content/terminal/reference/crypto/ov/cr.md @@ -1,25 +1,26 @@ --- title: cr -description: A content focused on the 'cr' command line tool usage and its parameters, +description: + A content focused on the 'cr' command line tool usage and its parameters, which provides crypto interest rates from numerous platforms, for various cryptocurrencies. Core parameters include selection of interest rate type, specific cryptocurrencies, and platforms. keywords: -- cryptocurrency -- crypto interest rates -- cryptocurrency platforms -- borrow interest rate -- supply interest rate -- crypto supply and borrow rates -- cr command line -- cryptocurrency parameters + - cryptocurrency + - crypto interest rates + - cryptocurrency platforms + - borrow interest rate + - supply interest rate + - crypto supply and borrow rates + - cr command line + - cryptocurrency parameters --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; -Displays crypto {borrow,supply} interest rates for cryptocurrencies across several platforms. You can select rate type with --type {borrow,supply} You can display only N number of platforms with --limit parameter. +Displays crypto \{borrow,supply\} interest rates for cryptocurrencies across several platforms. You can select rate type with --type \{borrow,supply\} You can display only N number of platforms with --limit parameter. ### Usage @@ -31,10 +32,10 @@ cr [-t {borrow,supply}] [-c CRYPTOS] [-p PLATFORMS] ## Parameters -| Name | Description | Default | Optional | Choices | -| ---- | ----------- | ------- | -------- | ------- | -| type | Select interest rate type | supply | True | borrow, supply | -| cryptos | Cryptocurrencies to search interest rates for separated by comma. Default: BTC,ETH,USDT,USDC. Options: ZRX,BAT,REP,ETH,SAI,BTC,XRP,LTC,EOS,BCH,XMR,DOGE,USDC,USDT,BSV,NEO,ETC,OMG,ZEC,BTG,SAN,DAI,UNI,WBTC,COMP,LUNA,UST,BUSD,KNC,LEND,LINK,MANA,MKR,SNX,SUSD,TUSD,eCRV-DAO,HEGIC,YFI,1INCH,CRV-IB,CRV-HBTC,BOOST,CRV-sBTC,CRV-renBTC,CRV-sAave,CRV-oBTC,CRV-pBTC,CRV-LUSD,CRV-BBTC,CRV-tBTC,CRV-FRAX,CRV-yBUSD,CRV-COMP,CRV-GUSD,yUSD,CRV-3pool,CRV-TUSD,CRV-BUSD,CRV-DUSD,CRV-UST,CRV-mUSD,sUSD,CRV-sUSD,CRV-LINK,CRV-USDN,CRV-USDP,CRV-alUSD,CRV-Aave,CRV-HUSD,CRV-EURS,RAI,CRV-triCrypto,CRV-Pax,CRV-USDT,CRV-USDK,CRV-RSV,CRV-3Crypto,GUSD,PAX,USD,ILK,BNB,PAXG,ADA,FTT,SOL,SRM,RAY,XLM,SUSHI,CRV,BAL,AAVE,MATIC,GRT,ENJ,USDP,IOST,AMP,PERP,SHIB,ALICE,ALPHA,ANKR,ATA,AVA,AXS,BAKE,BAND,BNT,BTCST,CELR,CFX,CHR,COS,COTI,CTSI,DUSK,EGLD,ELF,FET,FLOW,FTM,INJ,IOTX,MDX,NEAR,OCEAN,ONT,POLS,REEF,WRX,XEC,XTZ,XVS,ZIL,DOT,FIL,TRX,CAKE,ADX,FIRO,SXP,ATOM,IOTA,AKRO,AUDIO,BADGER,CVC,DENT,DYDX,FORTH,GNO,HOT,LPT,LRC,NKN,NMR,NU,OGN,OXT,POLY,QNT,RLC,RSR,SAND,SKL,STMX,STORJ,TRB,UMA,DPI,VSP,CHSB,EURT,GHST,3CRV,CRVRENWBTC,MIR-UST UNI LP,ALCX,ALUSD,USDP3CRV,RENBTC,YVECRV,CVX,USDTTRC20,AUD,HKD,GBP,EUR,HUSD,HT,DASH,EURS,AVAX,BTT,GALA,ILV,APE | BTC,ETH,USDT,USDC | True | ZRX, BAT, REP, ETH, SAI, BTC, XRP, LTC, EOS, BCH, XMR, DOGE, USDC, USDT, BSV, NEO, ETC, OMG, ZEC, BTG, SAN, DAI, UNI, WBTC, COMP, LUNA, UST, BUSD, KNC, LEND, LINK, MANA, MKR, SNX, SUSD, TUSD, eCRV-DAO, HEGIC, YFI, 1INCH, CRV-IB, CRV-HBTC, BOOST, CRV-sBTC, CRV-renBTC, CRV-sAave, CRV-oBTC, CRV-pBTC, CRV-LUSD, CRV-BBTC, CRV-tBTC, CRV-FRAX, CRV-yBUSD, CRV-COMP, CRV-GUSD, yUSD, CRV-3pool, CRV-TUSD, CRV-BUSD, CRV-DUSD, CRV-UST, CRV-mUSD, sUSD, CRV-sUSD, CRV-LINK, CRV-USDN, CRV-USDP, CRV-alUSD, CRV-Aave, CRV-HUSD, CRV-EURS, RAI, CRV-triCrypto, CRV-Pax, CRV-USDT, CRV-USDK, CRV-RSV, CRV-3Crypto, GUSD, PAX, USD, ILK, BNB, PAXG, ADA, FTT, SOL, SRM, RAY, XLM, SUSHI, CRV, BAL, AAVE, MATIC, GRT, ENJ, USDP, IOST, AMP, PERP, SHIB, ALICE, ALPHA, ANKR, ATA, AVA, AXS, BAKE, BAND, BNT, BTCST, CELR, CFX, CHR, COS, COTI, CTSI, DUSK, EGLD, ELF, FET, FLOW, FTM, INJ, IOTX, MDX, NEAR, OCEAN, ONT, POLS, REEF, WRX, XEC, XTZ, XVS, ZIL, DOT, FIL, TRX, CAKE, ADX, FIRO, SXP, ATOM, IOTA, AKRO, AUDIO, BADGER, CVC, DENT, DYDX, FORTH, GNO, HOT, LPT, LRC, NKN, NMR, NU, OGN, OXT, POLY, QNT, RLC, RSR, SAND, SKL, STMX, STORJ, TRB, UMA, DPI, VSP, CHSB, EURT, GHST, 3CRV, CRVRENWBTC, MIR-UST UNI LP, ALCX, ALUSD, USDP3CRV, RENBTC, YVECRV, CVX, USDTTRC20, AUD, HKD, GBP, EUR, HUSD, HT, DASH, EURS, AVAX, BTT, GALA, ILV, APE | -| platforms | Platforms to search interest rates in separated by comma. Default: BlockFi,Ledn,SwissBorg,Youhodler. Options: MakerDao,Compound,Poloniex,Bitfinex,dYdX,CompoundV2,Linen,Hodlonaut,InstaDapp,Zerion,Argent,DeFiSaver,MakerDaoV2,Ddex,AaveStable,AaveVariable,YearnFinance,BlockFi,Nexo,CryptoCom,Soda,Coinbase,SaltLending,Ledn,Bincentive,Inlock,Bitwala,Zipmex,Vauld,Delio,Yield,Vesper,Reflexer,SwissBorg,MushroomsFinance,ElementFi,Maple,CoinRabbit,WirexXAccounts,Youhodler,YieldApp,NotionalFinance,IconFi | BlockFi,Ledn,SwissBorg,Youhodler | True | MakerDao, Compound, Poloniex, Bitfinex, dYdX, CompoundV2, Linen, Hodlonaut, InstaDapp, Zerion, Argent, DeFiSaver, MakerDaoV2, Ddex, AaveStable, AaveVariable, YearnFinance, BlockFi, Nexo, CryptoCom, Soda, Coinbase, SaltLending, Ledn, Bincentive, Inlock, Bitwala, Zipmex, Vauld, Delio, Yield, Vesper, Reflexer, SwissBorg, MushroomsFinance, ElementFi, Maple, CoinRabbit, WirexXAccounts, Youhodler, YieldApp, NotionalFinance, IconFi | +| Name | Description | Default | Optional | Choices | +| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| type | Select interest rate type | supply | True | borrow, supply | +| cryptos | Cryptocurrencies to search interest rates for separated by comma. Default: BTC,ETH,USDT,USDC. Options: ZRX,BAT,REP,ETH,SAI,BTC,XRP,LTC,EOS,BCH,XMR,DOGE,USDC,USDT,BSV,NEO,ETC,OMG,ZEC,BTG,SAN,DAI,UNI,WBTC,COMP,LUNA,UST,BUSD,KNC,LEND,LINK,MANA,MKR,SNX,SUSD,TUSD,eCRV-DAO,HEGIC,YFI,1INCH,CRV-IB,CRV-HBTC,BOOST,CRV-sBTC,CRV-renBTC,CRV-sAave,CRV-oBTC,CRV-pBTC,CRV-LUSD,CRV-BBTC,CRV-tBTC,CRV-FRAX,CRV-yBUSD,CRV-COMP,CRV-GUSD,yUSD,CRV-3pool,CRV-TUSD,CRV-BUSD,CRV-DUSD,CRV-UST,CRV-mUSD,sUSD,CRV-sUSD,CRV-LINK,CRV-USDN,CRV-USDP,CRV-alUSD,CRV-Aave,CRV-HUSD,CRV-EURS,RAI,CRV-triCrypto,CRV-Pax,CRV-USDT,CRV-USDK,CRV-RSV,CRV-3Crypto,GUSD,PAX,USD,ILK,BNB,PAXG,ADA,FTT,SOL,SRM,RAY,XLM,SUSHI,CRV,BAL,AAVE,MATIC,GRT,ENJ,USDP,IOST,AMP,PERP,SHIB,ALICE,ALPHA,ANKR,ATA,AVA,AXS,BAKE,BAND,BNT,BTCST,CELR,CFX,CHR,COS,COTI,CTSI,DUSK,EGLD,ELF,FET,FLOW,FTM,INJ,IOTX,MDX,NEAR,OCEAN,ONT,POLS,REEF,WRX,XEC,XTZ,XVS,ZIL,DOT,FIL,TRX,CAKE,ADX,FIRO,SXP,ATOM,IOTA,AKRO,AUDIO,BADGER,CVC,DENT,DYDX,FORTH,GNO,HOT,LPT,LRC,NKN,NMR,NU,OGN,OXT,POLY,QNT,RLC,RSR,SAND,SKL,STMX,STORJ,TRB,UMA,DPI,VSP,CHSB,EURT,GHST,3CRV,CRVRENWBTC,MIR-UST UNI LP,ALCX,ALUSD,USDP3CRV,RENBTC,YVECRV,CVX,USDTTRC20,AUD,HKD,GBP,EUR,HUSD,HT,DASH,EURS,AVAX,BTT,GALA,ILV,APE | BTC,ETH,USDT,USDC | True | ZRX, BAT, REP, ETH, SAI, BTC, XRP, LTC, EOS, BCH, XMR, DOGE, USDC, USDT, BSV, NEO, ETC, OMG, ZEC, BTG, SAN, DAI, UNI, WBTC, COMP, LUNA, UST, BUSD, KNC, LEND, LINK, MANA, MKR, SNX, SUSD, TUSD, eCRV-DAO, HEGIC, YFI, 1INCH, CRV-IB, CRV-HBTC, BOOST, CRV-sBTC, CRV-renBTC, CRV-sAave, CRV-oBTC, CRV-pBTC, CRV-LUSD, CRV-BBTC, CRV-tBTC, CRV-FRAX, CRV-yBUSD, CRV-COMP, CRV-GUSD, yUSD, CRV-3pool, CRV-TUSD, CRV-BUSD, CRV-DUSD, CRV-UST, CRV-mUSD, sUSD, CRV-sUSD, CRV-LINK, CRV-USDN, CRV-USDP, CRV-alUSD, CRV-Aave, CRV-HUSD, CRV-EURS, RAI, CRV-triCrypto, CRV-Pax, CRV-USDT, CRV-USDK, CRV-RSV, CRV-3Crypto, GUSD, PAX, USD, ILK, BNB, PAXG, ADA, FTT, SOL, SRM, RAY, XLM, SUSHI, CRV, BAL, AAVE, MATIC, GRT, ENJ, USDP, IOST, AMP, PERP, SHIB, ALICE, ALPHA, ANKR, ATA, AVA, AXS, BAKE, BAND, BNT, BTCST, CELR, CFX, CHR, COS, COTI, CTSI, DUSK, EGLD, ELF, FET, FLOW, FTM, INJ, IOTX, MDX, NEAR, OCEAN, ONT, POLS, REEF, WRX, XEC, XTZ, XVS, ZIL, DOT, FIL, TRX, CAKE, ADX, FIRO, SXP, ATOM, IOTA, AKRO, AUDIO, BADGER, CVC, DENT, DYDX, FORTH, GNO, HOT, LPT, LRC, NKN, NMR, NU, OGN, OXT, POLY, QNT, RLC, RSR, SAND, SKL, STMX, STORJ, TRB, UMA, DPI, VSP, CHSB, EURT, GHST, 3CRV, CRVRENWBTC, MIR-UST UNI LP, ALCX, ALUSD, USDP3CRV, RENBTC, YVECRV, CVX, USDTTRC20, AUD, HKD, GBP, EUR, HUSD, HT, DASH, EURS, AVAX, BTT, GALA, ILV, APE | +| platforms | Platforms to search interest rates in separated by comma. Default: BlockFi,Ledn,SwissBorg,Youhodler. Options: MakerDao,Compound,Poloniex,Bitfinex,dYdX,CompoundV2,Linen,Hodlonaut,InstaDapp,Zerion,Argent,DeFiSaver,MakerDaoV2,Ddex,AaveStable,AaveVariable,YearnFinance,BlockFi,Nexo,CryptoCom,Soda,Coinbase,SaltLending,Ledn,Bincentive,Inlock,Bitwala,Zipmex,Vauld,Delio,Yield,Vesper,Reflexer,SwissBorg,MushroomsFinance,ElementFi,Maple,CoinRabbit,WirexXAccounts,Youhodler,YieldApp,NotionalFinance,IconFi | BlockFi,Ledn,SwissBorg,Youhodler | True | MakerDao, Compound, Poloniex, Bitfinex, dYdX, CompoundV2, Linen, Hodlonaut, InstaDapp, Zerion, Argent, DeFiSaver, MakerDaoV2, Ddex, AaveStable, AaveVariable, YearnFinance, BlockFi, Nexo, CryptoCom, Soda, Coinbase, SaltLending, Ledn, Bincentive, Inlock, Bitwala, Zipmex, Vauld, Delio, Yield, Vesper, Reflexer, SwissBorg, MushroomsFinance, ElementFi, Maple, CoinRabbit, WirexXAccounts, Youhodler, YieldApp, NotionalFinance, IconFi | --- diff --git a/website/content/terminal/usage/data/api-keys.md b/website/content/terminal/usage/data/api-keys.md index 600744d9846c..4df72fc20aa3 100644 --- a/website/content/terminal/usage/data/api-keys.md +++ b/website/content/terminal/usage/data/api-keys.md @@ -3,10 +3,10 @@ title: API Keys sidebar_position: 2 description: This documentation page describes how you can set your own API keys from each data vendor on OpenBB to leverage their datasets. keywords: -- API keys -- datasets -- data vendors -- subscription + - API keys + - datasets + - data vendors + - subscription --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -66,7 +66,6 @@ OpenBB recommends users to gradually obtaining API keys from data vendors based In addition by accessing our [data vendor affiliate program](https://my.openbb.co/app/hub/affiliate) you can get discounts upon sign-up. ::: - ## Supported data vendors This section covers all API keys listed above and include detailed instructions how to obtain each API key. By clicking on each name, the section will expand and instructions are provided. @@ -76,7 +75,7 @@ This section covers all API keys listed above and include detailed instructions > Alpha Vantage provides enterprise-grade financial market data through a set of powerful and developer-friendly data APIs and spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds) to economic indicators, from foreign exchange rates to commodities, from fundamental data to technical indicators, Alpha Vantage is your one-stop-shop for real-time and historical global market data delivered through cloud-based APIs, Excel, and Google Sheets.
-Instructions +Instructions Go to: https://www.alphavantage.co/support/#api-key @@ -95,7 +94,7 @@ Fill out the form, pass Captcha, and click on, "GET FREE API KEY". The issued ke > Binance cryptocurrency exchange - We operate the worlds biggest bitcoin exchange and altcoin crypto exchange in the world by volume
-Instructions +Instructions Go to: https://www.binance.com/en/support/faq/how-to-create-api-360002502072 @@ -114,9 +113,9 @@ These instructions should provide clear guidance for obtaining an API Key. Enter > Bitquery is an API-first product company dedicated to power and solve blockchain data problems using the ground truth of on-chain data.
-Instructions +Instructions -Go to: https://bitquery.io/< +Go to: [https://bitquery.io/](https://bitquery.io/) ![Bitquery](https://user-images.githubusercontent.com/46355364/207840322-5532a3f9-739f-4e28-9839-a58db932882e.png) @@ -141,17 +140,17 @@ Enter this API key into the OpenBB Terminal by typing: > BizToc is the one-stop business and finance news hub, encapsulating the top 200 US news providers in real time.
-Instructions +Instructions -The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc. +The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc. ![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda) -In the top right, select "Sign Up". After answering some questions, you will be prompted to select one of their plans. +In the top right, select "Sign Up". After answering some questions, you will be prompted to select one of their plans. ![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422) -After signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key. +After signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key. ![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f) @@ -168,7 +167,7 @@ Copy the key to the clipboard, and enter this key into the OpenBB Terminal with: > CoinMarketCap is the world's most-referenced price-tracking website for cryptoassets in the rapidly growing cryptocurrency space. Its mission is to make crypto discoverable and efficient globally by empowering retail users with unbiased, high quality and accurate information for drawing their own informed conclusions.
-Instructions +Instructions Go to: https://coinmarketcap.com/api @@ -195,7 +194,7 @@ Enter the API key into the OpenBB Terminal by typing: > Coinbase is a secure online platform for buying, selling, transferring, and storing cryptocurrency.
-Instructions +Instructions Go to: https://help.coinbase.com/en/exchange/managing-my-account/how-to-create-an-api-key @@ -214,7 +213,7 @@ Follow the instructions to obtain the credentials for the specific account. Ente > Coinglass is a cryptocurrency futures trading & information platform,where you can find the Bitcoin Liquidations ,Bitcoin open interest, Grayscale Bitcoin Trust,Bitcoin longs vs shorts ratio and actively compare funding rates for crypto futures.Above all the quantities are shown as per their respective contract value.
-Instructions +Instructions Go to: https://www.coinglass.com/ @@ -237,7 +236,7 @@ With the account created, find the assigned API key within the account profile p > CryptoPanic is a news aggregator platform indicating impact on price and market for traders and cryptocurrency enthusiasts.
-Instructions +Instructions Go to: https://cryptopanic.com/developers/api/ @@ -260,7 +259,7 @@ Enter that value in the OpenBB Terminal by typing: > Databento eliminates tens of thousands of dollars in upfront expenses per dataset without sacrificing data integrity. We give you the flexibility to pick up real-time full exchange feeds and terabytes of historical data, whenever you need it.
-Instructions +Instructions Go to: https://docs.databento.com/getting-started @@ -283,7 +282,7 @@ Enter this into the terminal with: > DEGIRO is Europe's fastest growing online stock broker. DEGIRO distinguishes itself from its competitors by offering extremely low trading commissions.
-Instructions +Instructions Go to: https://www.degiro.com/ @@ -304,7 +303,7 @@ Instructions for setting up 2FA authorization are [here](https://github.com/Chav > Historical End of Day, Intraday, and Live prices API, with Fundamental Financial data API for more than 120000 stocks, ETFs and funds all over the world.
-Instructions +Instructions Go to: https://eodhistoricaldata.com/r/?ref=869U7F4J @@ -331,7 +330,7 @@ Enter this string into the OpenBB Terminal by typing: > With the sole mission of democratizing financial data, we are proud to offer a FREE realtime API for stocks, forex and cryptocurrency.
-Instructions +Instructions Go to: https://finnhub.io/ @@ -358,7 +357,7 @@ Add this key to the OpenBB Terminal by entering: > Enhance your application with our data that goes up to 30 years back in history. Earnings calendar, financial statements, multiple exchanges and more!
-Instructions +Instructions Go to: https://site.financialmodelingprep.com/developer/docs @@ -385,7 +384,7 @@ Enter the key into the OpenBB Terminal with: > FRED is the trusted source for economic data since 1991. Download, graph, and track 819,000 US and international time series from 110 sources.
-Instructions +Instructions Go to: https://fred.stlouisfed.org @@ -416,7 +415,7 @@ Enter the API key into the OpenBB Terminal with: > GitHub is where over 100 million developers shape the future of software.
-Instructions +Instructions Go to: https://github.com @@ -443,7 +442,7 @@ After creating the app, the key will be issued. Enter this token into the OpenBB > Glassnode makes blockchain data accessible for everyone. We source and carefully dissect on-chain data, to deliver contextualized and actionable insights.
-Instructions +Instructions Go to: https://studio.glassnode.com @@ -470,7 +469,7 @@ Enter this key in the OpenBB terminal with: > Intrinio is more than a financial data API provider – we're a real time data partner. That means we're your guide to every step of the financial data.
-Instructions +Instructions Go to: https://intrinio.com/starter-plan @@ -489,7 +488,7 @@ An API key will be issued with a subscription. Find the token value within the a > Gain an edge over the crypto market with professional grade data, tools, and research.
-Instructions +Instructions Go to: https://messari.io @@ -516,7 +515,7 @@ Copy the API key and add it to the OpenBB Terminal by entering: > News API is a simple, easy-to-use REST API that returns JSON search results for current and historic news articles published by over 80,000 worldwide sources.
-Instructions +Instructions Go to: https://newsapi.org @@ -543,7 +542,7 @@ Add this API key into the OpenBB Terminal by entering: > OANDA's Currency Converter allows you to check the latest foreign exchange average bid/ask rates and convert all major world currencies.
-Instructions +Instructions Go to: https://developer.oanda.com @@ -561,13 +560,12 @@ Upon completion of the account setup, enter the credentials into the OpenBB Term
- ### OpenAI > An API for accessing new AI models developed by OpenAI.
-Instructions +Instructions Go to: https://openai.com/blog/openai-api @@ -576,11 +574,9 @@ Go to: https://openai.com/blog/openai-api Click sign up and create an account. Once done, you will be logged into the home page: ![OpenAI](https://github.com/OpenBB-finance/OpenBBTerminal/assets/105685594/34976dce-bdf0-48cd-a9db-9e41eacdbc04) - Click the top right "Personal" button to find the following drop down: ![OpenAI](https://github.com/OpenBB-finance/OpenBBTerminal/assets/105685594/95987173-3884-462e-a03b-dff040f0acb4) - Click `View API Keys`. This will take you to the api Keys menu. Then click `Create new secret key`: ![OpenAI](https://github.com/OpenBB-finance/OpenBBTerminal/assets/105685594/210fa55b-8a33-4647-bdd4-28a478b02ba8) @@ -592,15 +588,12 @@ Then enter the Secret key credentials into the OpenBB Terminal using the syntax:
- - - ### Polygon > Live & historical data for US stocks for all 19 exchanges. Instant access to real-time and historical stock market data.
-Instructions +Instructions Go to: https://polygon.io @@ -627,7 +620,7 @@ Enter the key into the OpenBB Terminal by typing: > The premier source for financial, economic, and alternative datasets, serving investment professionals. Quandl’s platform is used by over 400,000 people, including analysts from the world’s top hedge funds, asset managers and investment banks.
-Instructions +Instructions Go to: https://www.quandl.com @@ -654,7 +647,7 @@ Enter the key into the OpenBB Terminal with: > Reddit is a network of communities where people can dive into their interests, hobbies and passions.
-Instructions +Instructions Sign in to Reddit, and then go to: https://old.reddit.com/prefs/apps/ @@ -685,7 +678,7 @@ After submitting the form, check for a confirmation email. The credentials will > Robinhood has commission-free investing, and tools to help shape your financial future.
-Instructions +Instructions Go to: https://robinhood.com/us/en @@ -706,7 +699,7 @@ The first login will request 2FA authorization from the device connected to the > We provide tools to help you analyze crypto markets and find data-driven opportunities to optimize your investing.
-Instructions +Instructions Go to: https://app.santiment.net @@ -731,7 +724,7 @@ Add it to the OpenBB Terminal by entering: > Empowering investors to take advantage of alternative data. We track trending tickers on social media and provide alternative data for easy due-diligence & analysis.
-Instructions +Instructions Go to: https://stocksera.pythonanywhere.com @@ -758,7 +751,7 @@ Add the key to the OpenBB Terminal by entering: > Token Terminal is a platform that aggregates financial data on the leading blockchains and decentralized applications.
-Instructions +Instructions Go to: https://tokenterminal.com @@ -785,7 +778,7 @@ Add the key to the OpenBB Terminal by typing: > Tradier, the home of active traders. Our open collaboration platform allows investors to truly customize their trading experience like never before.
-Instructions +Instructions Go to: https://documentation.tradier.com @@ -804,7 +797,7 @@ Click on, "Open Account", to start the sign-up process. After the account has be > From breaking news and entertainment to sports and politics, get the full story with all the live commentary.
-Upcoming changes to the Twitter API will deprecate the current functionality, it is uncertain if the current features will continue to work. +Upcoming changes to the Twitter API will deprecate the current functionality, it is uncertain if the current features will continue to work. ![Twitter API](https://pbs.twimg.com/media/FooIJF3agAIU8SN?format=png&name=medium) @@ -815,7 +808,7 @@ Click on, "Open Account", to start the sign-up process. After the account has be > Ultima Insights offers tools such as the SEC Filing Analyst, Company news monitoring, Industry event watch, and Earnings Call Roundup for comprehensive investment monitoring. It incorporates daily Wall Street-level Qualitative analysis into OpenBB to keep users updated. The News curation system, powered by GPT + LLMs technology, presents relevant news to investors, often before it appears on platforms like Bloomberg. Ultima aims to provide timely and significant information for its users.
-Instructions +Instructions Go to: https://ultimainsights.ai/openbb @@ -834,7 +827,7 @@ Click on the "Get started" button for Ultima Pro or "Just Want the API Key" to g > Whale Alert continuously collects and analyzes billions of blockchain transactions and related-off chain data from hundreds of reliable sources and converts it into an easy to use standardized format. Our world-class analytics and custom high speed database solutions process transactions the moment they are made, resulting in the largest and most up-to-date blockchain dataset in the world.
-Instructions +Instructions Go to: https://docs.whale-alert.io diff --git a/website/content/terminal/usage/outputs/interactive-charts.md b/website/content/terminal/usage/outputs/interactive-charts.md index 4cb34f49aef8..fd394741db3d 100644 --- a/website/content/terminal/usage/outputs/interactive-charts.md +++ b/website/content/terminal/usage/outputs/interactive-charts.md @@ -1,21 +1,22 @@ --- title: Interactive Charts sidebar_position: 2 -description: Explore how to effectively utilize OpenBB's interactive charts backed +description: + Explore how to effectively utilize OpenBB's interactive charts backed by open source PyWry technology. Understand various capabilities including annotation, color modification, drawing tools, data export, and supplementary data overlay. keywords: -- interactive charts -- PyWry technology -- chart annotation -- drawing tools -- data export -- data overlay -- editing chart title -- Toolbar -- Text Tools -- Draw Tools -- Export Tools + - interactive charts + - PyWry technology + - chart annotation + - drawing tools + - data export + - data overlay + - editing chart title + - Toolbar + - Text Tools + - Draw Tools + - Export Tools --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -32,7 +33,7 @@ import TutorialVideo from '@site/src/components/General/TutorialVideo.tsx'; A common type of output in OpenBB are interactive charts which open in a separated window (due to our [open source PyWry](https://github.com/OpenBB-finance/pywry) technology). The OpenBB charting library provides interactive and highly customizable charts.
-Charting cheat sheet +Charting cheat sheet ![Group 653](https://user-images.githubusercontent.com/85772166/234313541-3d725e1c-ce48-4413-9267-b03571e0eccd.png) @@ -63,7 +64,7 @@ Annotate a chart by clicking on the `Add Text` button, or with the keyboard, `ct ![Annotate Charts](https://user-images.githubusercontent.com/85772166/233248056-d459d7a0-ba2d-4533-896a-79406ded859e.png) -Enter some text, make any adjustments to the options, then `submit`. Place the crosshairs over the desired data point and click to place the text. +Enter some text, make any adjustments to the options, then `submit`. Place the crosshairs over the desired data point and click to place the text. ![Place Text](https://user-images.githubusercontent.com/85772166/233728645-74734241-4da2-4cff-af17-b68a62e95113.png) @@ -98,7 +99,7 @@ The two buttons at the far-right of the toolbar are for saving the raw data or, ## Overlay -The button, `Overlay chart from CSV`, provides an easy import method for supplementing a chart with additional data. Clicking on the button opens a pop-up dialogue to select the file, column, and whether the overlay should be a bar, candlestick, or line chart. As a candlestick, the CSV file must contain OHLC data. The import window can also be opened with the keyboard, `ctrl-o`. +The button, `Overlay chart from CSV`, provides an easy import method for supplementing a chart with additional data. Clicking on the button opens a pop-up dialogue to select the file, column, and whether the overlay should be a bar, candlestick, or line chart. As a candlestick, the CSV file must contain OHLC data. The import window can also be opened with the keyboard, `ctrl-o`. ![Overlay CSV](https://user-images.githubusercontent.com/85772166/233248522-16b539f4-b0ae-4c30-8c72-dfa59d0c0cfb.png) diff --git a/website/content/terminal/usage/outputs/interactive-tables.md b/website/content/terminal/usage/outputs/interactive-tables.md index f1258c87ab11..a6c007c556f2 100644 --- a/website/content/terminal/usage/outputs/interactive-tables.md +++ b/website/content/terminal/usage/outputs/interactive-tables.md @@ -1,22 +1,23 @@ --- title: Interactive Tables sidebar_position: 1 -description: Learn how to navigate and utilize OpenBB's interactive tables using our +description: + Learn how to navigate and utilize OpenBB's interactive tables using our open source PyWry technology. Understand how to sort and filter columns, hide or remove columns, select number of rows per page, freeze index and column headers, and export the data. keywords: -- interactive tables -- PyWry technology -- sorting columns -- filtering columns -- hiding columns -- rows per page -- freeze index -- freeze column headers -- exporting data -- data visualization -- customizing tables + - interactive tables + - PyWry technology + - sorting columns + - filtering columns + - hiding columns + - rows per page + - freeze index + - freeze column headers + - exporting data + - data visualization + - customizing tables --- import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; @@ -33,7 +34,7 @@ import TutorialVideo from '@site/src/components/General/TutorialVideo.tsx'; A common type of output in OpenBB are interactive tables which open in a separated window (utilizing our [open source PyWry](https://github.com/OpenBB-finance/pywry) technology). These provide methods for searching, sorting, filtering, exporting and even adapting settings directly on the table.
-Table cheat sheet +Table cheat sheet ![Chart Intro (5)](https://user-images.githubusercontent.com/85772166/234315026-de098953-111b-4b69-9124-31530c01407a.png) @@ -41,7 +42,7 @@ A common type of output in OpenBB are interactive tables which open in a separat ## Sorting -Columns can be sorted ascending/descending/unsorted, by clicking the controls to the right of each header title. The status of the filtering is shown as a blue indicator. +Columns can be sorted ascending/descending/unsorted, by clicking the controls to the right of each header title. The status of the filtering is shown as a blue indicator. ![Sort Columns](https://user-images.githubusercontent.com/85772166/233248754-20c18390-a7af-490c-9571-876447b1b0ae.png) @@ -57,7 +58,7 @@ The columns can be filtered with min/max values or by letters, depending on the ## Hiding columns -The table will scroll to the right as far as there are columns. Columns can be removed from the table by clicking the icon to the right of the settings button and unchecking it from the list. +The table will scroll to the right as far as there are columns. Columns can be removed from the table by clicking the icon to the right of the settings button and unchecking it from the list. ![Select Columns](https://user-images.githubusercontent.com/85772166/233248976-849791a6-c126-437c-bb54-454ba6ea4fa2.png) @@ -75,6 +76,6 @@ Right-click on the index name to enable/disable freezing when scrolling to the r ## Exporting Data -At the bottom-right corner of the table window, there is a button for exporting the data. To the left, the drop down selection for `Type` can be defined as a CSV, XLSX, or PNG file. Exporting the table as a PNG file will create a screenshot of the table at its current view, and data that is not visible will not be captured. +At the bottom-right corner of the table window, there is a button for exporting the data. To the left, the drop down selection for `Type` can be defined as a CSV, XLSX, or PNG file. Exporting the table as a PNG file will create a screenshot of the table at its current view, and data that is not visible will not be captured. ![Export Data](https://user-images.githubusercontent.com/85772166/233249065-60728dd1-612e-4684-b196-892f3604c0f4.png) diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js deleted file mode 100644 index 066d214099de..000000000000 --- a/website/docusaurus.config.js +++ /dev/null @@ -1,129 +0,0 @@ -// @ts-check -// Note: type annotations allow type checking and IDEs autocompletion - -const lightCodeTheme = require("prism-react-renderer/themes/vsLight"); -const darkCodeTheme = require("prism-react-renderer/themes/vsDark"); -const math = require("remark-math"); -const katex = require("rehype-katex"); - -/** @type {import('@docusaurus/types').Config} */ -const config = { - title: "OpenBB Docs", - tagline: "OpenBB Docs", - url: "https://docs.openbb.co", // Your website URL - baseUrl: "/", - projectName: "OpenBBTerminal", - organizationName: "OpenBB-finance", - trailingSlash: false, - onBrokenLinks: "warn", - onBrokenMarkdownLinks: "warn", - favicon: "img/favicon.ico", - - // GitHub pages deployment config. - // If you aren't using GitHub pages, you don't need these. - - // Even if you don't use internalization, you can use this field to set useful - // metadata like html lang. For example, if your site is Chinese, you may want - // to replace "en" with "zh-Hans". - i18n: { - defaultLocale: "en", - locales: ["en"], - }, - plugins: [ - [ - "@docusaurus/plugin-client-redirects", - { - redirects: [ - { - from: "/terminal/menus/forecasting", - to: "/terminal/menus/forecast", - }, - ], - }, - ], - async function twPlugin(context, options) { - return { - name: "docusaurus-tailwindcss", - configurePostCss(postcssOptions) { - // Appends TailwindCSS and AutoPrefixer. - postcssOptions.plugins.push(require("tailwindcss")); - postcssOptions.plugins.push(require("autoprefixer")); - return postcssOptions; - }, - }; - }, - /*[ - "@docusaurus/plugin-content-docs", - { - id: "sdk", - path: "content/sdk", - routeBasePath: "sdk", - editUrl: - "https://github.com/OpenBB-finance/OpenBBTerminal/edit/main/website/", - sidebarPath: require.resolve("./sidebars.js"), - }, - ], - [ - "@docusaurus/plugin-content-docs", - { - id: "bot", - path: "content/bot", - routeBasePath: "bot", - editUrl: - "https://github.com/OpenBB-finance/OpenBBTerminal/edit/main/website/", - sidebarPath: require.resolve("./sidebars.js"), - }, - ],*/ - ], - presets: [ - [ - "classic", - /** @type {import('@docusaurus/preset-classic').Options} */ - ({ - docs: { - sidebarPath: require.resolve("./sidebars.js"), - editUrl: "https://github.com/OpenBB-finance/OpenBBTerminal/edit/main/website/", - showLastUpdateTime: true, - showLastUpdateAuthor: true, - routeBasePath: "/", - path: "content", - remarkPlugins: [math], - rehypePlugins: [katex], - }, - theme: { - customCss: require.resolve("./src/css/custom.css"), - }, - }), - ], - ], - - themeConfig: - /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ - ({ - image: "img/banner.png", - prism: { - theme: lightCodeTheme, - darkTheme: darkCodeTheme, - }, - // TODO - Jose can you make this so we get lighter color on main view - like bot docs - colorMode: { - defaultMode: "dark", - disableSwitch: false, - respectPrefersColorScheme: false, - }, - algolia: { - appId: "7D1HQ0IXAS", - apiKey: "a2e289977b4b663ed9cf3d4635a438fd", // pragma: allowlist secret - indexName: "openbbterminal", - contextualSearch: false, - }, - }), - stylesheets: [ - { - href: "/katex/katex.min.css", - type: "text/css", - }, - ], -}; - -module.exports = config; diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts new file mode 100644 index 000000000000..710387b45188 --- /dev/null +++ b/website/docusaurus.config.ts @@ -0,0 +1,105 @@ +// @ts-check +// Note: type annotations allow type checking and IDEs autocompletion + +import { Options, ThemeConfig } from "@docusaurus/preset-classic"; +import { Config } from "@docusaurus/types"; +import autoprefixer from "autoprefixer"; +import { themes } from "prism-react-renderer"; +import katex from "rehype-katex"; +import math from "remark-math"; +import tailwind from "tailwindcss"; + +export default { + title: "OpenBB Docs", + tagline: "OpenBB Docs", + url: "https://docs.openbb.co", // Your website URL + baseUrl: "/", + projectName: "OpenBBTerminal", + organizationName: "OpenBB-finance", + trailingSlash: false, + onBrokenLinks: "warn", + onBrokenMarkdownLinks: "warn", + favicon: "img/favicon.ico", + + // GitHub pages deployment config. + // If you aren't using GitHub pages, you don't need these. + + // Even if you don't use internalization, you can use this field to set useful + // metadata like html lang. For example, if your site is Chinese, you may want + // to replace "en" with "zh-Hans". + i18n: { + defaultLocale: "en", + locales: ["en"], + }, + plugins: [ + [ + "@docusaurus/plugin-client-redirects", + { + redirects: [ + { + from: "/terminal/menus/forecasting", + to: "/terminal/menus/forecast", + }, + ], + }, + ], + async function twPlugin(context, options) { + return { + name: "docusaurus-tailwindcss", + configurePostCss(postcssOptions) { + // Appends TailwindCSS and AutoPrefixer. + postcssOptions.plugins.push(tailwind); + postcssOptions.plugins.push(autoprefixer); + return postcssOptions; + }, + }; + }, + ], + presets: [ + [ + "classic", + { + docs: { + sidebarPath: "./sidebars.js", + editUrl: + "https://github.com/OpenBB-finance/OpenBBTerminal/edit/main/website/", + showLastUpdateTime: true, + showLastUpdateAuthor: true, + routeBasePath: "/", + path: "content", + remarkPlugins: [math], + rehypePlugins: [katex], + }, + theme: { + customCss: "./src/css/custom.css", + }, + } satisfies Options, + ], + ], + + themeConfig: { + image: "img/banner.png", + prism: { + theme: themes.vsLight, + darkTheme: themes.vsDark, + }, + // TODO - Jose can you make this so we get lighter color on main view - like bot docs + colorMode: { + defaultMode: "dark", + disableSwitch: false, + respectPrefersColorScheme: false, + }, + algolia: { + appId: "7D1HQ0IXAS", + apiKey: "a2e289977b4b663ed9cf3d4635a438fd", // pragma: allowlist secret + indexName: "openbbterminal", + contextualSearch: false, + }, + } satisfies ThemeConfig, + stylesheets: [ + { + href: "/katex/katex.min.css", + type: "text/css", + }, + ], +} satisfies Config; diff --git a/website/package-lock.json b/website/package-lock.json index 4c4d95bec466..ddcb2300e626 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -8,39 +8,41 @@ "name": "docs", "version": "1.0.0", "dependencies": { - "@docusaurus/core": "^2.4.3", - "@docusaurus/plugin-client-redirects": "^2.4.3", - "@docusaurus/plugin-content-docs": "^2.4.3", - "@docusaurus/preset-classic": "^2.4.3", - "@mdx-js/react": "^1.6.22", - "@radix-ui/react-dialog": "^1.0.2", - "@radix-ui/react-popover": "^1.0.3", - "@radix-ui/react-tooltip": "^1.0.5", - "axios": "^1.6.2", - "clsx": "^1.2.1", + "@docusaurus/core": "^3.3.2", + "@docusaurus/plugin-client-redirects": "^3.3.2", + "@docusaurus/plugin-content-docs": "^3.3.2", + "@docusaurus/preset-classic": "^3.3.2", + "@radix-ui/react-dialog": "^1.0.5", + "@radix-ui/react-popover": "^1.0.7", + "@radix-ui/react-tooltip": "^1.0.7", + "axios": "^1.6.8", + "clsx": "^2.1.1", "fuse.js": "^6.6.2", - "hast-util-is-element": "^1.1.0", - "posthog-js": "^1.53.4", - "prism-react-renderer": "^1.3.5", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "react-player": "^2.14.1", - "rehype-katex": "^5.0.0", - "remark-math": "^3.0.1", - "tailwindcss-radix": "^2.7.0", + "hast-util-is-element": "^3.0.0", + "posthog-js": "^1.131.3", + "prism-react-renderer": "^2.3.1", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-player": "^2.16.0", + "rehype-katex": "^7.0.0", + "remark-math": "^6.0.0", + "tailwindcss-radix": "^3.0.3", "typescript-toggle": "^1.1.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^2.4.3", - "@tailwindcss/typography": "^0.5.8", - "@tsconfig/docusaurus": "^1.0.5", - "autoprefixer": "^10.4.13", - "postcss": "^8.4.18", - "tailwindcss": "^3.2.3", - "typescript": "^4.7.4" + "@docusaurus/module-type-aliases": "^3.3.2", + "@docusaurus/tsconfig": "^3.3.2", + "@mdx-js/loader": "^3.0.1", + "@mdx-js/react": "^3.0.1", + "@tailwindcss/typography": "^0.5.13", + "autoprefixer": "^10.4.19", + "postcss": "^8.4.38", + "remark-gfm": "^4.0.0", + "tailwindcss": "^3.4.3", + "typescript": "^5.4.5" }, "engines": { - "node": ">=16.14" + "node": ">=18.17" } }, "node_modules/@algolia/autocomplete-core": { @@ -85,74 +87,74 @@ } }, "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.20.0.tgz", - "integrity": "sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.23.3.tgz", + "integrity": "sha512-vRHXYCpPlTDE7i6UOy2xE03zHF2C8MEFjPN2v7fRbqVpcOvAUQK81x3Kc21xyb5aSIpYCjWCZbYZuz8Glyzyyg==", "dependencies": { - "@algolia/cache-common": "4.20.0" + "@algolia/cache-common": "4.23.3" } }, "node_modules/@algolia/cache-common": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.20.0.tgz", - "integrity": "sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.23.3.tgz", + "integrity": "sha512-h9XcNI6lxYStaw32pHpB1TMm0RuxphF+Ik4o7tcQiodEdpKK+wKufY6QXtba7t3k8eseirEMVB83uFFF3Nu54A==" }, "node_modules/@algolia/cache-in-memory": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.20.0.tgz", - "integrity": "sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.23.3.tgz", + "integrity": "sha512-yvpbuUXg/+0rbcagxNT7un0eo3czx2Uf0y4eiR4z4SD7SiptwYTpbuS0IHxcLHG3lq22ukx1T6Kjtk/rT+mqNg==", "dependencies": { - "@algolia/cache-common": "4.20.0" + "@algolia/cache-common": "4.23.3" } }, "node_modules/@algolia/client-account": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.20.0.tgz", - "integrity": "sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.23.3.tgz", + "integrity": "sha512-hpa6S5d7iQmretHHF40QGq6hz0anWEHGlULcTIT9tbUssWUriN9AUXIFQ8Ei4w9azD0hc1rUok9/DeQQobhQMA==", "dependencies": { - "@algolia/client-common": "4.20.0", - "@algolia/client-search": "4.20.0", - "@algolia/transporter": "4.20.0" + "@algolia/client-common": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-analytics": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.20.0.tgz", - "integrity": "sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.23.3.tgz", + "integrity": "sha512-LBsEARGS9cj8VkTAVEZphjxTjMVCci+zIIiRhpFun9jGDUlS1XmhCW7CTrnaWeIuCQS/2iPyRqSy1nXPjcBLRA==", "dependencies": { - "@algolia/client-common": "4.20.0", - "@algolia/client-search": "4.20.0", - "@algolia/requester-common": "4.20.0", - "@algolia/transporter": "4.20.0" + "@algolia/client-common": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-common": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.20.0.tgz", - "integrity": "sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.23.3.tgz", + "integrity": "sha512-l6EiPxdAlg8CYhroqS5ybfIczsGUIAC47slLPOMDeKSVXYG1n0qGiz4RjAHLw2aD0xzh2EXZ7aRguPfz7UKDKw==", "dependencies": { - "@algolia/requester-common": "4.20.0", - "@algolia/transporter": "4.20.0" + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-personalization": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.20.0.tgz", - "integrity": "sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.23.3.tgz", + "integrity": "sha512-3E3yF3Ocr1tB/xOZiuC3doHQBQ2zu2MPTYZ0d4lpfWads2WTKG7ZzmGnsHmm63RflvDeLK/UVx7j2b3QuwKQ2g==", "dependencies": { - "@algolia/client-common": "4.20.0", - "@algolia/requester-common": "4.20.0", - "@algolia/transporter": "4.20.0" + "@algolia/client-common": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-search": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.20.0.tgz", - "integrity": "sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.3.tgz", + "integrity": "sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw==", "dependencies": { - "@algolia/client-common": "4.20.0", - "@algolia/requester-common": "4.20.0", - "@algolia/transporter": "4.20.0" + "@algolia/client-common": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/events": { @@ -161,100 +163,131 @@ "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" }, "node_modules/@algolia/logger-common": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.20.0.tgz", - "integrity": "sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.23.3.tgz", + "integrity": "sha512-y9kBtmJwiZ9ZZ+1Ek66P0M68mHQzKRxkW5kAAXYN/rdzgDN0d2COsViEFufxJ0pb45K4FRcfC7+33YB4BLrZ+g==" }, "node_modules/@algolia/logger-console": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.20.0.tgz", - "integrity": "sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.23.3.tgz", + "integrity": "sha512-8xoiseoWDKuCVnWP8jHthgaeobDLolh00KJAdMe9XPrWPuf1by732jSpgy2BlsLTaT9m32pHI8CRfrOqQzHv3A==", "dependencies": { - "@algolia/logger-common": "4.20.0" + "@algolia/logger-common": "4.23.3" + } + }, + "node_modules/@algolia/recommend": { + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.23.3.tgz", + "integrity": "sha512-9fK4nXZF0bFkdcLBRDexsnGzVmu4TSYZqxdpgBW2tEyfuSSY54D4qSRkLmNkrrz4YFvdh2GM1gA8vSsnZPR73w==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.23.3", + "@algolia/cache-common": "4.23.3", + "@algolia/cache-in-memory": "4.23.3", + "@algolia/client-common": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/logger-common": "4.23.3", + "@algolia/logger-console": "4.23.3", + "@algolia/requester-browser-xhr": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/requester-node-http": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.20.0.tgz", - "integrity": "sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.23.3.tgz", + "integrity": "sha512-jDWGIQ96BhXbmONAQsasIpTYWslyjkiGu0Quydjlowe+ciqySpiDUrJHERIRfELE5+wFc7hc1Q5hqjGoV7yghw==", "dependencies": { - "@algolia/requester-common": "4.20.0" + "@algolia/requester-common": "4.23.3" } }, "node_modules/@algolia/requester-common": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.20.0.tgz", - "integrity": "sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.23.3.tgz", + "integrity": "sha512-xloIdr/bedtYEGcXCiF2muajyvRhwop4cMZo+K2qzNht0CMzlRkm8YsDdj5IaBhshqfgmBb3rTg4sL4/PpvLYw==" }, "node_modules/@algolia/requester-node-http": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.20.0.tgz", - "integrity": "sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.23.3.tgz", + "integrity": "sha512-zgu++8Uj03IWDEJM3fuNl34s746JnZOWn1Uz5taV1dFyJhVM/kTNw9Ik7YJWiUNHJQXcaD8IXD1eCb0nq/aByA==", "dependencies": { - "@algolia/requester-common": "4.20.0" + "@algolia/requester-common": "4.23.3" } }, "node_modules/@algolia/transporter": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.20.0.tgz", - "integrity": "sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.23.3.tgz", + "integrity": "sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ==", "dependencies": { - "@algolia/cache-common": "4.20.0", - "@algolia/logger-common": "4.20.0", - "@algolia/requester-common": "4.20.0" + "@algolia/cache-common": "4.23.3", + "@algolia/logger-common": "4.23.3", + "@algolia/requester-common": "4.23.3" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -265,101 +298,86 @@ } }, "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dependencies": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.12.tgz", - "integrity": "sha512-9OunRkbT0JQcednL0UFvbfXpAsUXiGjUk0a7sN8fUXX7Mue79cUSMjHGDRRi/Vz9vYlpIhLV5fMD5dKoMhhsNQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.5.tgz", + "integrity": "sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.24.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -368,13 +386,22 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz", - "integrity": "sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.2.1" + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -383,140 +410,127 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "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==", "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", "debug": "^4.1.1", "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" + "resolve": "^1.14.2" }, "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dependencies": { - "@babel/types": "^7.18.6" - }, + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.20.7.tgz", - "integrity": "sha512-9J0CxJLq315fEdi4s7xK5TQaNYjZw+nDVpVqr1axNGKzdrdwYBD5b4uKv3n75aABG0rCCTK8Im8Ww7eYfMrZgw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.5.tgz", + "integrity": "sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA==", "dependencies": { - "@babel/types": "^7.20.7" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", + "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -526,113 +540,113 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", "dependencies": { - "@babel/types": "^7.20.0" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.24.5.tgz", + "integrity": "sha512-/xxzuNvgRl4/HLNKvnFwdhdgN3cpLxgLROeLDl83Yx0AJ1SGvq1ak0OszTOjDfiB8Vx03eJbeDWh9r+jCCWttw==", "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" + "@babel/helper-function-name": "^7.23.0", + "@babel/template": "^7.24.0", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -703,9 +717,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", - "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -713,12 +727,13 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "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.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.5.tgz", + "integrity": "sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -727,234 +742,55 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.20.7.tgz", - "integrity": "sha512-AveGOoi9DAjUYYuUAG//Ig69GlazLnoyzMw68VCDux+c1tsnnH/OkYcpz/5xzMkEFC6UxjR5Gw1c+iY2wOGVeQ==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "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.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.20.7.tgz", - "integrity": "sha512-T+A7b1kfjtRM51ssoOfS1+wbyCVqorfyZhT99TvxxLMirPShD8CzKMRepMlCBGM5RpHMbn8s+5MMHnPstJH6mQ==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.13.0" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz", + "integrity": "sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz", - "integrity": "sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, + "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", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "engines": { "node": ">=6.9.0" }, @@ -962,21 +798,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -1036,11 +857,25 @@ } }, "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1049,6 +884,17 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", @@ -1061,11 +907,11 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", + "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1169,11 +1015,11 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", + "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1182,28 +1028,27 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1212,12 +1057,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { "node": ">=6.9.0" @@ -1226,12 +1074,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.20.15", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.15.tgz", - "integrity": "sha512-Vv4DMZ6MiNOhu/LdaZsT/bsLRxgL94d269Mv4R/9sp6+Mp++X/JqypZYypJXLlM4mlL352/Egzbzr98iABH1CA==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz", + "integrity": "sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-module-imports": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -1240,20 +1090,12 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.7.tgz", - "integrity": "sha512-LWYbsiXTPKl+oBlXUGlwNlJZetXD5Am+CyBdqhPsDVjM9Jc8jwBJFrKhHf900Kfk2eZG1y9MAG3UNajol7A4VQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1262,13 +1104,12 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.5.tgz", + "integrity": "sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" + "@babel/helper-plugin-utils": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1277,12 +1118,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", - "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1291,13 +1133,79 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.5.tgz", + "integrity": "sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.24.5", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.5.tgz", + "integrity": "sha512-SZuuLyfxvsm+Ah57I/i1HVjveBENYK9ue8MJ7qkc7ndoNjqquJiElzA7f5yaAXjyW2hKojosOTAQQRX50bPSVg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1307,11 +1215,26 @@ } }, "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" }, "engines": { "node": ">=6.9.0" @@ -1321,12 +1244,27 @@ } }, "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" }, "engines": { "node": ">=6.9.0" @@ -1336,11 +1274,12 @@ } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -1350,13 +1289,28 @@ } }, "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" }, "engines": { "node": ">=6.9.0" @@ -1366,11 +1320,26 @@ } }, "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" }, "engines": { "node": ">=6.9.0" @@ -1380,11 +1349,11 @@ } }, "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1394,12 +1363,12 @@ } }, "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1409,13 +1378,13 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz", - "integrity": "sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -1425,14 +1394,14 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -1442,12 +1411,12 @@ } }, "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1457,12 +1426,12 @@ } }, "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -1472,11 +1441,58 @@ } }, "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.5.tgz", + "integrity": "sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1486,12 +1502,43 @@ } }, "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.5.tgz", + "integrity": "sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" }, "engines": { "node": ">=6.9.0" @@ -1501,11 +1548,43 @@ } }, "node_modules/@babel/plugin-transform-parameters": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", - "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.5.tgz", + "integrity": "sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.5.tgz", + "integrity": "sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.5", + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, "engines": { "node": ">=6.9.0" @@ -1515,11 +1594,11 @@ } }, "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1529,11 +1608,11 @@ } }, "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", - "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.24.1.tgz", + "integrity": "sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1543,11 +1622,11 @@ } }, "node_modules/@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.24.1.tgz", + "integrity": "sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1557,15 +1636,15 @@ } }, "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.13.tgz", - "integrity": "sha512-MmTZx/bkUrfJhhYAYt3Urjm+h8DQGrPrnKQ94jLo7NLuOU+T89a7IByhKmrb8SKhrIYIQ0FN0CHMbnFRen4qNw==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", + "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.20.7" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/types": "^7.23.4" }, "engines": { "node": ">=6.9.0" @@ -1575,11 +1654,11 @@ } }, "node_modules/@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", + "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", "dependencies": { - "@babel/plugin-transform-react-jsx": "^7.18.6" + "@babel/plugin-transform-react-jsx": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -1589,12 +1668,12 @@ } }, "node_modules/@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.24.1.tgz", + "integrity": "sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1604,12 +1683,12 @@ } }, "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" }, "engines": { "node": ">=6.9.0" @@ -1619,11 +1698,11 @@ } }, "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1633,16 +1712,16 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", - "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz", + "integrity": "sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ==", "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-plugin-utils": "^7.24.0", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.1", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -1652,19 +1731,19 @@ } }, "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1674,12 +1753,12 @@ } }, "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -1689,11 +1768,11 @@ } }, "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1703,11 +1782,11 @@ } }, "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1717,11 +1796,11 @@ } }, "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.5.tgz", + "integrity": "sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1731,13 +1810,14 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.13.tgz", - "integrity": "sha512-O7I/THxarGcDZxkgWKMUrk7NK1/WbHAg3Xx86gqS6x9MTrNL6AwIluuZ96ms4xeDe6AVx6rjHbWHP7x26EPQBA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.5.tgz", + "integrity": "sha512-E0VWu/hk83BIFUWnsKZ4D81KXjN5L3MobvevOHErASk9IPwKHOkTgvqzvNo1yP/ePJWqqK2SpUR5z+KQbl6NVw==", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.20.12", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.5", + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/plugin-syntax-typescript": "^7.24.1" }, "engines": { "node": ">=6.9.0" @@ -1747,11 +1827,26 @@ } }, "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1761,12 +1856,12 @@ } }, "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -1775,38 +1870,43 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/@babel/preset-env": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", - "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", - "dependencies": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.5.tgz", + "integrity": "sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ==", + "dependencies": { + "@babel/compat-data": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.5", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.1", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", "@babel/plugin-syntax-class-static-block": "^7.14.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-import-assertions": "^7.24.1", + "@babel/plugin-syntax-import-attributes": "^7.24.1", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", @@ -1816,45 +1916,61 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3", "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.24.1", + "@babel/plugin-transform-async-generator-functions": "^7.24.3", + "@babel/plugin-transform-async-to-generator": "^7.24.1", + "@babel/plugin-transform-block-scoped-functions": "^7.24.1", + "@babel/plugin-transform-block-scoping": "^7.24.5", + "@babel/plugin-transform-class-properties": "^7.24.1", + "@babel/plugin-transform-class-static-block": "^7.24.4", + "@babel/plugin-transform-classes": "^7.24.5", + "@babel/plugin-transform-computed-properties": "^7.24.1", + "@babel/plugin-transform-destructuring": "^7.24.5", + "@babel/plugin-transform-dotall-regex": "^7.24.1", + "@babel/plugin-transform-duplicate-keys": "^7.24.1", + "@babel/plugin-transform-dynamic-import": "^7.24.1", + "@babel/plugin-transform-exponentiation-operator": "^7.24.1", + "@babel/plugin-transform-export-namespace-from": "^7.24.1", + "@babel/plugin-transform-for-of": "^7.24.1", + "@babel/plugin-transform-function-name": "^7.24.1", + "@babel/plugin-transform-json-strings": "^7.24.1", + "@babel/plugin-transform-literals": "^7.24.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.24.1", + "@babel/plugin-transform-member-expression-literals": "^7.24.1", + "@babel/plugin-transform-modules-amd": "^7.24.1", + "@babel/plugin-transform-modules-commonjs": "^7.24.1", + "@babel/plugin-transform-modules-systemjs": "^7.24.1", + "@babel/plugin-transform-modules-umd": "^7.24.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.24.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.1", + "@babel/plugin-transform-numeric-separator": "^7.24.1", + "@babel/plugin-transform-object-rest-spread": "^7.24.5", + "@babel/plugin-transform-object-super": "^7.24.1", + "@babel/plugin-transform-optional-catch-binding": "^7.24.1", + "@babel/plugin-transform-optional-chaining": "^7.24.5", + "@babel/plugin-transform-parameters": "^7.24.5", + "@babel/plugin-transform-private-methods": "^7.24.1", + "@babel/plugin-transform-private-property-in-object": "^7.24.5", + "@babel/plugin-transform-property-literals": "^7.24.1", + "@babel/plugin-transform-regenerator": "^7.24.1", + "@babel/plugin-transform-reserved-words": "^7.24.1", + "@babel/plugin-transform-shorthand-properties": "^7.24.1", + "@babel/plugin-transform-spread": "^7.24.1", + "@babel/plugin-transform-sticky-regex": "^7.24.1", + "@babel/plugin-transform-template-literals": "^7.24.1", + "@babel/plugin-transform-typeof-symbol": "^7.24.5", + "@babel/plugin-transform-unicode-escapes": "^7.24.1", + "@babel/plugin-transform-unicode-property-regex": "^7.24.1", + "@babel/plugin-transform-unicode-regex": "^7.24.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.24.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.4", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -1864,39 +1980,37 @@ } }, "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, "node_modules/@babel/preset-react": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.24.1.tgz", + "integrity": "sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-transform-react-display-name": "^7.24.1", + "@babel/plugin-transform-react-jsx": "^7.23.4", + "@babel/plugin-transform-react-jsx-development": "^7.22.5", + "@babel/plugin-transform-react-pure-annotations": "^7.24.1" }, "engines": { "node": ">=6.9.0" @@ -1906,13 +2020,15 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz", - "integrity": "sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz", + "integrity": "sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-typescript": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-syntax-jsx": "^7.24.1", + "@babel/plugin-transform-modules-commonjs": "^7.24.1", + "@babel/plugin-transform-typescript": "^7.24.1" }, "engines": { "node": ">=6.9.0" @@ -1927,55 +2043,55 @@ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" }, "node_modules/@babel/runtime": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", - "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", + "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/runtime-corejs3": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.13.tgz", - "integrity": "sha512-p39/6rmY9uvlzRiLZBIB3G9/EBr66LBMcYm7fIDeSBNdRjF2AGD3rFZucUyAgGHC2N+7DdLvVi33uTjSE44FIw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.24.5.tgz", + "integrity": "sha512-GWO0mgzNMLWaSYM4z4NVIuY0Cd1fl8cPnuetuddu5w/qGuvt5Y7oUi/kvvQGK9xgOkFJDQX2heIvTRn/OQ1XTg==", "dependencies": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" + "core-js-pure": "^3.30.2", + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", + "dependencies": { + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -1983,12 +2099,12 @@ } }, "node_modules/@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -2004,19 +2120,27 @@ "node": ">=0.1.90" } }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/@docsearch/css": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.5.2.tgz", - "integrity": "sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==" + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.6.0.tgz", + "integrity": "sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ==" }, "node_modules/@docsearch/react": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.5.2.tgz", - "integrity": "sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.6.0.tgz", + "integrity": "sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w==", "dependencies": { "@algolia/autocomplete-core": "1.9.3", "@algolia/autocomplete-preset-algolia": "1.9.3", - "@docsearch/css": "3.5.2", + "@docsearch/css": "3.6.0", "algoliasearch": "^4.19.1" }, "peerDependencies": { @@ -2041,163 +2165,166 @@ } }, "node_modules/@docusaurus/core": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.4.3.tgz", - "integrity": "sha512-dWH5P7cgeNSIg9ufReX6gaCl/TmrGKD38Orbwuz05WPhAQtFXHd5B8Qym1TiXfvUNvwoYKkAJOJuGe8ou0Z7PA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.3.2.tgz", + "integrity": "sha512-PzKMydKI3IU1LmeZQDi+ut5RSuilbXnA8QdowGeJEgU8EJjmx3rBHNT1LxQxOVqNEwpWi/csLwd9bn7rUjggPA==", "dependencies": { - "@babel/core": "^7.18.6", - "@babel/generator": "^7.18.7", + "@babel/core": "^7.23.3", + "@babel/generator": "^7.23.3", "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.18.6", - "@babel/preset-env": "^7.18.6", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@babel/runtime": "^7.18.6", - "@babel/runtime-corejs3": "^7.18.6", - "@babel/traverse": "^7.18.8", - "@docusaurus/cssnano-preset": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "@slorber/static-site-generator-webpack-plugin": "^4.0.7", - "@svgr/webpack": "^6.2.1", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.2.5", + "@babel/plugin-transform-runtime": "^7.22.9", + "@babel/preset-env": "^7.22.9", + "@babel/preset-react": "^7.22.5", + "@babel/preset-typescript": "^7.22.5", + "@babel/runtime": "^7.22.6", + "@babel/runtime-corejs3": "^7.22.6", + "@babel/traverse": "^7.22.8", + "@docusaurus/cssnano-preset": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "autoprefixer": "^10.4.14", + "babel-loader": "^9.1.3", "babel-plugin-dynamic-import-node": "^2.3.3", "boxen": "^6.2.1", "chalk": "^4.1.2", "chokidar": "^3.5.3", - "clean-css": "^5.3.0", - "cli-table3": "^0.6.2", + "clean-css": "^5.3.2", + "cli-table3": "^0.6.3", "combine-promises": "^1.1.0", "commander": "^5.1.0", "copy-webpack-plugin": "^11.0.0", - "core-js": "^3.23.3", - "css-loader": "^6.7.1", - "css-minimizer-webpack-plugin": "^4.0.0", - "cssnano": "^5.1.12", + "core-js": "^3.31.1", + "css-loader": "^6.8.1", + "css-minimizer-webpack-plugin": "^5.0.1", + "cssnano": "^6.1.2", "del": "^6.1.1", - "detect-port": "^1.3.0", + "detect-port": "^1.5.1", "escape-html": "^1.0.3", - "eta": "^2.0.0", + "eta": "^2.2.0", + "eval": "^0.1.8", "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "html-minifier-terser": "^6.1.0", - "html-tags": "^3.2.0", - "html-webpack-plugin": "^5.5.0", - "import-fresh": "^3.3.0", + "fs-extra": "^11.1.1", + "html-minifier-terser": "^7.2.0", + "html-tags": "^3.3.1", + "html-webpack-plugin": "^5.5.3", "leven": "^3.1.0", "lodash": "^4.17.21", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "postcss-loader": "^7.0.0", + "mini-css-extract-plugin": "^2.7.6", + "p-map": "^4.0.0", + "postcss": "^8.4.26", + "postcss-loader": "^7.3.3", "prompts": "^2.4.2", "react-dev-utils": "^12.0.1", "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0", "react-loadable-ssr-addon-v5-slorber": "^1.0.1", - "react-router": "^5.3.3", + "react-router": "^5.3.4", "react-router-config": "^5.1.1", - "react-router-dom": "^5.3.3", + "react-router-dom": "^5.3.4", "rtl-detect": "^1.0.4", - "semver": "^7.3.7", - "serve-handler": "^6.1.3", + "semver": "^7.5.4", + "serve-handler": "^6.1.5", "shelljs": "^0.8.5", - "terser-webpack-plugin": "^5.3.3", - "tslib": "^2.4.0", - "update-notifier": "^5.1.0", + "terser-webpack-plugin": "^5.3.9", + "tslib": "^2.6.0", + "update-notifier": "^6.0.2", "url-loader": "^4.1.1", - "wait-on": "^6.0.1", - "webpack": "^5.73.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-dev-server": "^4.9.3", - "webpack-merge": "^5.8.0", + "webpack": "^5.88.1", + "webpack-bundle-analyzer": "^4.9.0", + "webpack-dev-server": "^4.15.1", + "webpack-merge": "^5.9.0", "webpackbar": "^5.0.2" }, "bin": { "docusaurus": "bin/docusaurus.mjs" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/cssnano-preset": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.4.3.tgz", - "integrity": "sha512-ZvGSRCi7z9wLnZrXNPG6DmVPHdKGd8dIn9pYbEOFiYihfv4uDR3UtxogmKf+rT8ZlKFf5Lqne8E8nt08zNM8CA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.3.2.tgz", + "integrity": "sha512-+5+epLk/Rp4vFML4zmyTATNc3Is+buMAL6dNjrMWahdJCJlMWMPd/8YfU+2PA57t8mlSbhLJ7vAZVy54cd1vRQ==", "dependencies": { - "cssnano-preset-advanced": "^5.3.8", - "postcss": "^8.4.14", - "postcss-sort-media-queries": "^4.2.1", - "tslib": "^2.4.0" + "cssnano-preset-advanced": "^6.1.2", + "postcss": "^8.4.38", + "postcss-sort-media-queries": "^5.2.0", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" } }, "node_modules/@docusaurus/logger": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.4.3.tgz", - "integrity": "sha512-Zxws7r3yLufk9xM1zq9ged0YHs65mlRmtsobnFkdZTxWXdTYlWWLWdKyNKAsVC+D7zg+pv2fGbyabdOnyZOM3w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.3.2.tgz", + "integrity": "sha512-Ldu38GJ4P8g4guN7d7pyCOJ7qQugG7RVyaxrK8OnxuTlaImvQw33aDRwaX2eNmX8YK6v+//Z502F4sOZbHHCHQ==", "dependencies": { "chalk": "^4.1.2", - "tslib": "^2.4.0" + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" } }, "node_modules/@docusaurus/mdx-loader": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.4.3.tgz", - "integrity": "sha512-b1+fDnWtl3GiqkL0BRjYtc94FZrcDDBV1j8446+4tptB9BAOlePwG2p/pK6vGvfL53lkOsszXMghr2g67M0vCw==", - "dependencies": { - "@babel/parser": "^7.18.8", - "@babel/traverse": "^7.18.8", - "@docusaurus/logger": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@mdx-js/mdx": "^1.6.22", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.3.2.tgz", + "integrity": "sha512-AFRxj/aOk3/mfYDPxE3wTbrjeayVRvNSZP7mgMuUlrb2UlPRbSVAFX1k2RbgAJrnTSwMgb92m2BhJgYRfptN3g==", + "dependencies": { + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "image-size": "^1.0.1", - "mdast-util-to-string": "^2.0.0", - "remark-emoji": "^2.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", "stringify-object": "^3.3.0", - "tslib": "^2.4.0", - "unified": "^9.2.2", - "unist-util-visit": "^2.0.3", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", "url-loader": "^4.1.1", - "webpack": "^5.73.0" + "vfile": "^6.0.1", + "webpack": "^5.88.1" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/module-type-aliases": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.4.3.tgz", - "integrity": "sha512-cwkBkt1UCiduuvEAo7XZY01dJfRn7UR/75mBgOdb1hKknhrabJZ8YH+7savd/y9kLExPyrhe0QwdS9GuzsRRIA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.3.2.tgz", + "integrity": "sha512-b/XB0TBJah5yKb4LYuJT4buFvL0MGAb0+vJDrJtlYMguRtsEBkf2nWl5xP7h4Dlw6ol0hsHrCYzJ50kNIOEclw==", "dependencies": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "2.4.3", + "@docusaurus/types": "3.3.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", "@types/react-router-dom": "*", "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0" }, "peerDependencies": { "react": "*", @@ -2205,400 +2332,399 @@ } }, "node_modules/@docusaurus/plugin-client-redirects": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-2.4.3.tgz", - "integrity": "sha512-iCwc/zH8X6eNtLYdyUJFY6+GbsbRgMgvAC/TmSmCYTmwnoN5Y1Bc5OwUkdtoch0XKizotJMRAmGIAhP8sAetdQ==", - "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-3.3.2.tgz", + "integrity": "sha512-W8ueb5PaQ06oanatL+CzE3GjqeRBTzv3MSFqEQlBa8BqLyOomc1uHsWgieE3glHsckU4mUZ6sHnOfesAtYnnew==", + "dependencies": { + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "eta": "^2.2.0", + "fs-extra": "^11.1.1", "lodash": "^4.17.21", - "tslib": "^2.4.0" + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-content-blog": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.4.3.tgz", - "integrity": "sha512-PVhypqaA0t98zVDpOeTqWUTvRqCEjJubtfFUQ7zJNYdbYTbS/E/ytq6zbLVsN/dImvemtO/5JQgjLxsh8XLo8Q==", - "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.3.2.tgz", + "integrity": "sha512-fJU+dmqp231LnwDJv+BHVWft8pcUS2xVPZdeYH6/ibH1s2wQ/sLcmUrGWyIv/Gq9Ptj8XWjRPMghlxghuPPoxg==", + "dependencies": { + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "cheerio": "^1.0.0-rc.12", "feed": "^4.2.2", - "fs-extra": "^10.1.0", + "fs-extra": "^11.1.1", "lodash": "^4.17.21", "reading-time": "^1.5.0", - "tslib": "^2.4.0", - "unist-util-visit": "^2.0.3", + "srcset": "^4.0.0", + "tslib": "^2.6.0", + "unist-util-visit": "^5.0.0", "utility-types": "^3.10.0", - "webpack": "^5.73.0" + "webpack": "^5.88.1" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-content-docs": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.4.3.tgz", - "integrity": "sha512-N7Po2LSH6UejQhzTCsvuX5NOzlC+HiXOVvofnEPj0WhMu1etpLEXE6a4aTxrtg95lQ5kf0xUIdjX9sh3d3G76A==", - "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/module-type-aliases": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "@types/react-router-config": "^5.0.6", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.3.2.tgz", + "integrity": "sha512-Dm1ri2VlGATTN3VGk1ZRqdRXWa1UlFubjaEL6JaxaK7IIFqN/Esjpl+Xw10R33loHcRww/H76VdEeYayaL76eg==", + "dependencies": { + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "@types/react-router-config": "^5.0.7", "combine-promises": "^1.1.0", - "fs-extra": "^10.1.0", - "import-fresh": "^3.3.0", + "fs-extra": "^11.1.1", "js-yaml": "^4.1.0", "lodash": "^4.17.21", - "tslib": "^2.4.0", + "tslib": "^2.6.0", "utility-types": "^3.10.0", - "webpack": "^5.73.0" + "webpack": "^5.88.1" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-content-pages": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.4.3.tgz", - "integrity": "sha512-txtDVz7y3zGk67q0HjG0gRttVPodkHqE0bpJ+7dOaTH40CQFLSh7+aBeGnPOTl+oCPG+hxkim4SndqPqXjQ8Bg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.3.2.tgz", + "integrity": "sha512-EKc9fQn5H2+OcGER8x1aR+7URtAGWySUgULfqE/M14+rIisdrBstuEZ4lUPDRrSIexOVClML82h2fDS+GSb8Ew==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "fs-extra": "^10.1.0", - "tslib": "^2.4.0", - "webpack": "^5.73.0" + "@docusaurus/core": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "fs-extra": "^11.1.1", + "tslib": "^2.6.0", + "webpack": "^5.88.1" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-debug": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.4.3.tgz", - "integrity": "sha512-LkUbuq3zCmINlFb+gAd4ZvYr+bPAzMC0hwND4F7V9bZ852dCX8YoWyovVUBKq4er1XsOwSQaHmNGtObtn8Av8Q==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.3.2.tgz", + "integrity": "sha512-oBIBmwtaB+YS0XlmZ3gCO+cMbsGvIYuAKkAopoCh0arVjtlyPbejzPrHuCoRHB9G7abjNZw7zoONOR8+8LM5+Q==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "fs-extra": "^10.1.0", - "react-json-view": "^1.21.3", - "tslib": "^2.4.0" + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "fs-extra": "^11.1.1", + "react-json-view-lite": "^1.2.0", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-google-analytics": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.4.3.tgz", - "integrity": "sha512-KzBV3k8lDkWOhg/oYGxlK5o9bOwX7KpPc/FTWoB+SfKhlHfhq7qcQdMi1elAaVEIop8tgK6gD1E58Q+XC6otSQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.3.2.tgz", + "integrity": "sha512-jXhrEIhYPSClMBK6/IA8qf1/FBoxqGXZvg7EuBax9HaK9+kL3L0TJIlatd8jQJOMtds8mKw806TOCc3rtEad1A==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "tslib": "^2.4.0" + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-google-gtag": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.4.3.tgz", - "integrity": "sha512-5FMg0rT7sDy4i9AGsvJC71MQrqQZwgLNdDetLEGDHLfSHLvJhQbTCUGbGXknUgWXQJckcV/AILYeJy+HhxeIFA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.3.2.tgz", + "integrity": "sha512-vcrKOHGbIDjVnNMrfbNpRQR1x6Jvcrb48kVzpBAOsKbj9rXZm/idjVAXRaewwobHdOrJkfWS/UJoxzK8wyLRBQ==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "tslib": "^2.4.0" + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "@types/gtag.js": "^0.0.12", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.4.3.tgz", - "integrity": "sha512-1jTzp71yDGuQiX9Bi0pVp3alArV0LSnHXempvQTxwCGAEzUWWaBg4d8pocAlTpbP9aULQQqhgzrs8hgTRPOM0A==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.3.2.tgz", + "integrity": "sha512-ldkR58Fdeks0vC+HQ+L+bGFSJsotQsipXD+iKXQFvkOfmPIV6QbHRd7IIcm5b6UtwOiK33PylNS++gjyLUmaGw==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "tslib": "^2.4.0" + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-sitemap": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.4.3.tgz", - "integrity": "sha512-LRQYrK1oH1rNfr4YvWBmRzTL0LN9UAPxBbghgeFRBm5yloF6P+zv1tm2pe2hQTX/QP5bSKdnajCvfnScgKXMZQ==", - "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "fs-extra": "^10.1.0", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.3.2.tgz", + "integrity": "sha512-/ZI1+bwZBhAgC30inBsHe3qY9LOZS+79fRGkNdTcGHRMcdAp6Vw2pCd1gzlxd/xU+HXsNP6cLmTOrggmRp3Ujg==", + "dependencies": { + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "fs-extra": "^11.1.1", "sitemap": "^7.1.1", - "tslib": "^2.4.0" + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/preset-classic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.4.3.tgz", - "integrity": "sha512-tRyMliepY11Ym6hB1rAFSNGwQDpmszvWYJvlK1E+md4SW8i6ylNHtpZjaYFff9Mdk3i/Pg8ItQq9P0daOJAvQw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.3.2.tgz", + "integrity": "sha512-1SDS7YIUN1Pg3BmD6TOTjhB7RSBHJRpgIRKx9TpxqyDrJ92sqtZhomDc6UYoMMLQNF2wHFZZVGFjxJhw2VpL+Q==", "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/plugin-content-blog": "2.4.3", - "@docusaurus/plugin-content-docs": "2.4.3", - "@docusaurus/plugin-content-pages": "2.4.3", - "@docusaurus/plugin-debug": "2.4.3", - "@docusaurus/plugin-google-analytics": "2.4.3", - "@docusaurus/plugin-google-gtag": "2.4.3", - "@docusaurus/plugin-google-tag-manager": "2.4.3", - "@docusaurus/plugin-sitemap": "2.4.3", - "@docusaurus/theme-classic": "2.4.3", - "@docusaurus/theme-common": "2.4.3", - "@docusaurus/theme-search-algolia": "2.4.3", - "@docusaurus/types": "2.4.3" + "@docusaurus/core": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/plugin-debug": "3.3.2", + "@docusaurus/plugin-google-analytics": "3.3.2", + "@docusaurus/plugin-google-gtag": "3.3.2", + "@docusaurus/plugin-google-tag-manager": "3.3.2", + "@docusaurus/plugin-sitemap": "3.3.2", + "@docusaurus/theme-classic": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-search-algolia": "3.3.2", + "@docusaurus/types": "3.3.2" }, "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" + "node": ">=18.0" }, "peerDependencies": { - "react": "*" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/theme-classic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.4.3.tgz", - "integrity": "sha512-QKRAJPSGPfDY2yCiPMIVyr+MqwZCIV2lxNzqbyUW0YkrlmdzzP3WuQJPMGLCjWgQp/5c9kpWMvMxjhpZx1R32Q==", - "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/module-type-aliases": "2.4.3", - "@docusaurus/plugin-content-blog": "2.4.3", - "@docusaurus/plugin-content-docs": "2.4.3", - "@docusaurus/plugin-content-pages": "2.4.3", - "@docusaurus/theme-common": "2.4.3", - "@docusaurus/theme-translations": "2.4.3", - "@docusaurus/types": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "@mdx-js/react": "^1.6.22", - "clsx": "^1.2.1", - "copy-text-to-clipboard": "^3.0.1", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.3.2.tgz", + "integrity": "sha512-gepHFcsluIkPb4Im9ukkiO4lXrai671wzS3cKQkY9BXQgdVwsdPf/KS0Vs4Xlb0F10fTz+T3gNjkxNEgSN9M0A==", + "dependencies": { + "@docusaurus/core": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-translations": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "@mdx-js/react": "^3.0.0", + "clsx": "^2.0.0", + "copy-text-to-clipboard": "^3.2.0", "infima": "0.2.0-alpha.43", "lodash": "^4.17.21", "nprogress": "^0.2.0", - "postcss": "^8.4.14", - "prism-react-renderer": "^1.3.5", - "prismjs": "^1.28.0", - "react-router-dom": "^5.3.3", - "rtlcss": "^3.5.0", - "tslib": "^2.4.0", + "postcss": "^8.4.26", + "prism-react-renderer": "^2.3.0", + "prismjs": "^1.29.0", + "react-router-dom": "^5.3.4", + "rtlcss": "^4.1.0", + "tslib": "^2.6.0", "utility-types": "^3.10.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/theme-common": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.4.3.tgz", - "integrity": "sha512-7KaDJBXKBVGXw5WOVt84FtN8czGWhM0lbyWEZXGp8AFfL6sZQfRTluFp4QriR97qwzSyOfQb+nzcDZZU4tezUw==", - "dependencies": { - "@docusaurus/mdx-loader": "2.4.3", - "@docusaurus/module-type-aliases": "2.4.3", - "@docusaurus/plugin-content-blog": "2.4.3", - "@docusaurus/plugin-content-docs": "2.4.3", - "@docusaurus/plugin-content-pages": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-common": "2.4.3", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.3.2.tgz", + "integrity": "sha512-kXqSaL/sQqo4uAMQ4fHnvRZrH45Xz2OdJ3ABXDS7YVGPSDTBC8cLebFrRR4YF9EowUHto1UC/EIklJZQMG/usA==", + "dependencies": { + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", - "clsx": "^1.2.1", + "clsx": "^2.0.0", "parse-numeric-range": "^1.3.0", - "prism-react-renderer": "^1.3.5", - "tslib": "^2.4.0", - "use-sync-external-store": "^1.2.0", + "prism-react-renderer": "^2.3.0", + "tslib": "^2.6.0", "utility-types": "^3.10.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/theme-search-algolia": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.4.3.tgz", - "integrity": "sha512-jziq4f6YVUB5hZOB85ELATwnxBz/RmSLD3ksGQOLDPKVzat4pmI8tddNWtriPpxR04BNT+ZfpPUMFkNFetSW1Q==", - "dependencies": { - "@docsearch/react": "^3.1.1", - "@docusaurus/core": "2.4.3", - "@docusaurus/logger": "2.4.3", - "@docusaurus/plugin-content-docs": "2.4.3", - "@docusaurus/theme-common": "2.4.3", - "@docusaurus/theme-translations": "2.4.3", - "@docusaurus/utils": "2.4.3", - "@docusaurus/utils-validation": "2.4.3", - "algoliasearch": "^4.13.1", - "algoliasearch-helper": "^3.10.0", - "clsx": "^1.2.1", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.3.2.tgz", + "integrity": "sha512-qLkfCl29VNBnF1MWiL9IyOQaHxUvicZp69hISyq/xMsNvFKHFOaOfk9xezYod2Q9xx3xxUh9t/QPigIei2tX4w==", + "dependencies": { + "@docsearch/react": "^3.5.2", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-translations": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", + "algoliasearch": "^4.18.0", + "algoliasearch-helper": "^3.13.3", + "clsx": "^2.0.0", + "eta": "^2.2.0", + "fs-extra": "^11.1.1", "lodash": "^4.17.21", - "tslib": "^2.4.0", + "tslib": "^2.6.0", "utility-types": "^3.10.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/theme-translations": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.4.3.tgz", - "integrity": "sha512-H4D+lbZbjbKNS/Zw1Lel64PioUAIT3cLYYJLUf3KkuO/oc9e0QCVhIYVtUI2SfBCF2NNdlyhBDQEEMygsCedIg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.3.2.tgz", + "integrity": "sha512-bPuiUG7Z8sNpGuTdGnmKl/oIPeTwKr0AXLGu9KaP6+UFfRZiyWbWE87ti97RrevB2ffojEdvchNujparR3jEZQ==", "dependencies": { - "fs-extra": "^10.1.0", - "tslib": "^2.4.0" + "fs-extra": "^11.1.1", + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" } }, + "node_modules/@docusaurus/tsconfig": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/tsconfig/-/tsconfig-3.3.2.tgz", + "integrity": "sha512-2MQXkLoWqgOSiqFojNEq8iPtFBHGQqd1b/SQMoe+v3GgHmk/L6YTTO/hMcHhWb1hTFmbkei++IajSfD3RlZKvw==", + "dev": true + }, "node_modules/@docusaurus/types": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.4.3.tgz", - "integrity": "sha512-W6zNLGQqfrp/EoPD0bhb9n7OobP+RHpmvVzpA+Z/IuU3Q63njJM24hmT0GYboovWcDtFmnIJC9wcyx4RVPQscw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.3.2.tgz", + "integrity": "sha512-5p201S7AZhliRxTU7uMKtSsoC8mgPA9bs9b5NQg1IRdRxJfflursXNVsgc3PcMqiUTul/v1s3k3rXXFlRE890w==", "dependencies": { + "@mdx-js/mdx": "^3.0.0", "@types/history": "^4.7.11", "@types/react": "*", "commander": "^5.1.0", - "joi": "^17.6.0", + "joi": "^17.9.2", "react-helmet-async": "^1.3.0", "utility-types": "^3.10.0", - "webpack": "^5.73.0", - "webpack-merge": "^5.8.0" + "webpack": "^5.88.1", + "webpack-merge": "^5.9.0" }, "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/utils": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.4.3.tgz", - "integrity": "sha512-fKcXsjrD86Smxv8Pt0TBFqYieZZCPh4cbf9oszUq/AMhZn3ujwpKaVYZACPX8mmjtYx0JOgNx52CREBfiGQB4A==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.3.2.tgz", + "integrity": "sha512-f4YMnBVymtkSxONv4Y8js3Gez9IgHX+Lcg6YRMOjVbq8sgCcdYK1lf6SObAuz5qB/mxiSK7tW0M9aaiIaUSUJg==", "dependencies": { - "@docusaurus/logger": "2.4.3", - "@svgr/webpack": "^6.2.1", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@svgr/webpack": "^8.1.0", "escape-string-regexp": "^4.0.0", "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "github-slugger": "^1.4.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", "globby": "^11.1.0", "gray-matter": "^4.0.3", + "jiti": "^1.20.0", "js-yaml": "^4.1.0", "lodash": "^4.17.21", "micromatch": "^4.0.5", + "prompts": "^2.4.2", "resolve-pathname": "^3.0.0", "shelljs": "^0.8.5", - "tslib": "^2.4.0", + "tslib": "^2.6.0", "url-loader": "^4.1.1", - "webpack": "^5.73.0" + "webpack": "^5.88.1" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { "@docusaurus/types": "*" @@ -2610,14 +2736,14 @@ } }, "node_modules/@docusaurus/utils-common": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.4.3.tgz", - "integrity": "sha512-/jascp4GbLQCPVmcGkPzEQjNaAk3ADVfMtudk49Ggb+131B1WDD6HqlSmDf8MxGdy7Dja2gc+StHf01kiWoTDQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.3.2.tgz", + "integrity": "sha512-QWFTLEkPYsejJsLStgtmetMFIA3pM8EPexcZ4WZ7b++gO5jGVH7zsipREnCHzk6+eDgeaXfkR6UPaTt86bp8Og==", "dependencies": { - "tslib": "^2.4.0" + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" }, "peerDependencies": { "@docusaurus/types": "*" @@ -2629,46 +2755,55 @@ } }, "node_modules/@docusaurus/utils-validation": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.4.3.tgz", - "integrity": "sha512-G2+Vt3WR5E/9drAobP+hhZQMaswRwDlp6qOMi7o7ZypB+VO7N//DZWhZEwhcRGepMDJGQEwtPv7UxtYwPL9PBw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.3.2.tgz", + "integrity": "sha512-itDgFs5+cbW9REuC7NdXals4V6++KifgVMzoGOOOSIifBQw+8ULhy86u5e1lnptVL0sv8oAjq2alO7I40GR7pA==", "dependencies": { - "@docusaurus/logger": "2.4.3", - "@docusaurus/utils": "2.4.3", - "joi": "^17.6.0", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "joi": "^17.9.2", "js-yaml": "^4.1.0", - "tslib": "^2.4.0" + "tslib": "^2.6.0" }, "engines": { - "node": ">=16.14" + "node": ">=18.0" } }, "node_modules/@floating-ui/core": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-0.7.3.tgz", - "integrity": "sha512-buc8BXHmG9l82+OQXOFU3Kr2XQx9ys01U/Q9HMIrZ300iLc8HLMgh7dcCqgYzAzf4BkoQvDcXf5Y+CuEZ5JBYg==" + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.1.tgz", + "integrity": "sha512-42UH54oPZHPdRHdw6BgoBD6cg/eVTmVrFcgeRDM3jbO7uxSoipVcmcIGFcA5jmOHO5apcyvBhkSKES3fQJnu7A==", + "dependencies": { + "@floating-ui/utils": "^0.2.0" + } }, "node_modules/@floating-ui/dom": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.5.4.tgz", - "integrity": "sha512-419BMceRLq0RrmTSDxn8hf9R3VCJv2K9PUfugh5JyEFmdjzDo+e8U5EdR8nzKq8Yj1htzLm3b6eQEEam3/rrtg==", + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.5.tgz", + "integrity": "sha512-Nsdud2X65Dz+1RHjAIP0t8z5e2ff/IRbei6BqFrl1urT8sDVzM1HMQ+R0XcU5ceRfyO3I6ayeqIfh+6Wb8LGTw==", "dependencies": { - "@floating-ui/core": "^0.7.3" + "@floating-ui/core": "^1.0.0", + "@floating-ui/utils": "^0.2.0" } }, "node_modules/@floating-ui/react-dom": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-0.7.2.tgz", - "integrity": "sha512-1T0sJcpHgX/u4I1OzIEhlcrvkUN8ln39nz7fMoE/2HDHrPiMFoOGR7++GYyfUmIQHkkrTinaeQsO3XWubjSvGg==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.9.tgz", + "integrity": "sha512-q0umO0+LQK4+p6aGyvzASqKbKOJcAHJ7ycE9CuUvfx3s9zTHWmGJTPOIlM/hmSBfUfg/XfY5YhLBLR/LHwShQQ==", "dependencies": { - "@floating-ui/dom": "^0.5.3", - "use-isomorphic-layout-effect": "^1.1.1" + "@floating-ui/dom": "^1.0.0" }, "peerDependencies": { "react": ">=16.8.0", "react-dom": ">=16.8.0" } }, + "node_modules/@floating-ui/utils": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.2.tgz", + "integrity": "sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw==" + }, "node_modules/@hapi/hoek": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", @@ -2682,23 +2817,67 @@ "@hapi/hoek": "^9.0.0" } }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/@jest/schemas": { - "version": "29.4.2", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.2.tgz", - "integrity": "sha512-ZrGzGfh31NtdVH8tn0mgJw4khQuNHiKqdzJAFbCaERbyCP9tHlxWuL/mnMu8P7e/+k4puWjI1NOzi/sFsjce/g==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dependencies": { - "@sinclair/typebox": "^0.25.16" + "@sinclair/typebox": "^0.27.8" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/types": { - "version": "29.4.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.2.tgz", - "integrity": "sha512-CKlngyGP0fwlgC1BRUtPZSiWLBhyS9dKwKmyGxk8Z6M82LBEGB2aLQSg+U1MyLsU+M7UjnlLllBM2BLWKVm/Uw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dependencies": { - "@jest/schemas": "^29.4.2", + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2710,172 +2889,107 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==" }, - "node_modules/@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" + "node_modules/@mdx-js/loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@mdx-js/loader/-/loader-3.0.1.tgz", + "integrity": "sha512-YbYUt7YyEOdFxhyuCWmLKf5vKhID/hJAojEUnheJk4D8iYVLFQw+BAoBWru/dHGch1omtmZOPstsmKPyBF68Tw==", + "dev": true, + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "source-map": "^0.7.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@mdx-js/mdx/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@mdx-js/mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" + "webpack": ">=5" } }, - "node_modules/@mdx-js/mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" + "node_modules/@mdx-js/mdx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.0.1.tgz", + "integrity": "sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdx": "^2.0.0", + "collapse-white-space": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-build-jsx": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-util-to-js": "^2.0.0", + "estree-walker": "^3.0.0", + "hast-util-to-estree": "^3.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "markdown-extensions": "^2.0.0", + "periscopic": "^3.0.0", + "remark-mdx": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "source-map": "^0.7.0", + "unified": "^11.0.0", + "unist-util-position-from-estree": "^2.0.0", + "unist-util-stringify-position": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", @@ -2883,24 +2997,19 @@ } }, "node_modules/@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", + "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", + "dependencies": { + "@types/mdx": "^2.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" }, "peerDependencies": { - "react": "^16.13.1 || ^17.0.0" - } - }, - "node_modules/@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/react": ">=16", + "react": ">=16" } }, "node_modules/@nodelib/fs.scandir": { @@ -2935,446 +3044,578 @@ "node": ">= 8" } }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@pnpm/config.env-replace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", + "integrity": "sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==", + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz", + "integrity": "sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==", + "dependencies": { + "graceful-fs": "4.2.10" + }, + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/@pnpm/npm-conf": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.2.2.tgz", + "integrity": "sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==", + "dependencies": { + "@pnpm/config.env-replace": "^1.1.0", + "@pnpm/network.ca-file": "^1.0.1", + "config-chain": "^1.1.11" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + "version": "1.0.0-next.25", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz", + "integrity": "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==" }, "node_modules/@radix-ui/primitive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.0.tgz", - "integrity": "sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.1.tgz", + "integrity": "sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==", "dependencies": { "@babel/runtime": "^7.13.10" } }, "node_modules/@radix-ui/react-arrow": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.0.1.tgz", - "integrity": "sha512-1yientwXqXcErDHEv8av9ZVNEBldH8L9scVR3is20lL+jOCfcJyMFZFEY5cgIrgexsq1qggSXqiEL/d/4f+QXA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.0.3.tgz", + "integrity": "sha512-wSP+pHsB/jQRaL6voubsQ/ZlrGBHHrOjmBnr19hxYgtS0WvAFwZhK2WP/YY5yF9uKECCEEDGxuLxq1NBK51wFA==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.1" + "@radix-ui/react-primitive": "1.0.3" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-compose-refs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.0.tgz", - "integrity": "sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.1.tgz", + "integrity": "sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==", "dependencies": { "@babel/runtime": "^7.13.10" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-context": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.0.tgz", - "integrity": "sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.1.tgz", + "integrity": "sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==", "dependencies": { "@babel/runtime": "^7.13.10" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-dialog": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.2.tgz", - "integrity": "sha512-EKxxp2WNSmUPkx4trtWNmZ4/vAYEg7JkAfa1HKBUnaubw9eHzf1Orr9B472lJYaYz327RHDrd4R95fsw7VR8DA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz", + "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-dismissable-layer": "1.0.2", - "@radix-ui/react-focus-guards": "1.0.0", - "@radix-ui/react-focus-scope": "1.0.1", - "@radix-ui/react-id": "1.0.0", - "@radix-ui/react-portal": "1.0.1", - "@radix-ui/react-presence": "1.0.0", - "@radix-ui/react-primitive": "1.0.1", - "@radix-ui/react-slot": "1.0.1", - "@radix-ui/react-use-controllable-state": "1.0.0", + "@radix-ui/primitive": "1.0.1", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-context": "1.0.1", + "@radix-ui/react-dismissable-layer": "1.0.5", + "@radix-ui/react-focus-guards": "1.0.1", + "@radix-ui/react-focus-scope": "1.0.4", + "@radix-ui/react-id": "1.0.1", + "@radix-ui/react-portal": "1.0.4", + "@radix-ui/react-presence": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-slot": "1.0.2", + "@radix-ui/react-use-controllable-state": "1.0.1", "aria-hidden": "^1.1.1", "react-remove-scroll": "2.5.5" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.2.tgz", - "integrity": "sha512-WjJzMrTWROozDqLB0uRWYvj4UuXsM/2L19EmQ3Au+IJWqwvwq9Bwd+P8ivo0Deg9JDPArR1I6MbWNi1CmXsskg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", + "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-primitive": "1.0.1", - "@radix-ui/react-use-callback-ref": "1.0.0", - "@radix-ui/react-use-escape-keydown": "1.0.2" + "@radix-ui/primitive": "1.0.1", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-use-callback-ref": "1.0.1", + "@radix-ui/react-use-escape-keydown": "1.0.3" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-focus-guards": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.0.tgz", - "integrity": "sha512-UagjDk4ijOAnGu4WMUPj9ahi7/zJJqNZ9ZAiGPp7waUWJO0O1aWXi/udPphI0IUjvrhBsZJGSN66dR2dsueLWQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.1.tgz", + "integrity": "sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==", "dependencies": { "@babel/runtime": "^7.13.10" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-focus-scope": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.1.tgz", - "integrity": "sha512-Ej2MQTit8IWJiS2uuujGUmxXjF/y5xZptIIQnyd2JHLwtV0R2j9NRVoRj/1j/gJ7e3REdaBw4Hjf4a1ImhkZcQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz", + "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-primitive": "1.0.1", - "@radix-ui/react-use-callback-ref": "1.0.0" + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-use-callback-ref": "1.0.1" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.0.tgz", - "integrity": "sha512-Q6iAB/U7Tq3NTolBBQbHTgclPmGWE3OlktGGqrClPozSw4vkQ1DfQAOtzgRPecKsMdJINE05iaoDUG8tRzCBjw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.1.tgz", + "integrity": "sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-layout-effect": "1.0.0" + "@radix-ui/react-use-layout-effect": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-popover": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.0.3.tgz", - "integrity": "sha512-YwedSukfWsyJs3/yP3yXUq44k4/JBe3jqU63Z8v2i19qZZ3dsx32oma17ztgclWPNuqp3A+Xa9UiDlZHyVX8Vg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.0.7.tgz", + "integrity": "sha512-shtvVnlsxT6faMnK/a7n0wptwBD23xc1Z5mdrtKLwVEfsEMXodS0r5s0/g5P0hX//EKYZS2sxUjqfzlg52ZSnQ==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-dismissable-layer": "1.0.2", - "@radix-ui/react-focus-guards": "1.0.0", - "@radix-ui/react-focus-scope": "1.0.1", - "@radix-ui/react-id": "1.0.0", - "@radix-ui/react-popper": "1.1.0", - "@radix-ui/react-portal": "1.0.1", - "@radix-ui/react-presence": "1.0.0", - "@radix-ui/react-primitive": "1.0.1", - "@radix-ui/react-slot": "1.0.1", - "@radix-ui/react-use-controllable-state": "1.0.0", + "@radix-ui/primitive": "1.0.1", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-context": "1.0.1", + "@radix-ui/react-dismissable-layer": "1.0.5", + "@radix-ui/react-focus-guards": "1.0.1", + "@radix-ui/react-focus-scope": "1.0.4", + "@radix-ui/react-id": "1.0.1", + "@radix-ui/react-popper": "1.1.3", + "@radix-ui/react-portal": "1.0.4", + "@radix-ui/react-presence": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-slot": "1.0.2", + "@radix-ui/react-use-controllable-state": "1.0.1", "aria-hidden": "^1.1.1", "react-remove-scroll": "2.5.5" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-popper": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.0.tgz", - "integrity": "sha512-07U7jpI0dZcLRAxT7L9qs6HecSoPhDSJybF7mEGHJDBDv+ZoGCvIlva0s+WxMXwJEav+ckX3hAlXBtnHmuvlCQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.3.tgz", + "integrity": "sha512-cKpopj/5RHZWjrbF2846jBNacjQVwkP068DfmgrNJXpvVWrOvlAmE9xSiy5OqeE+Gi8D9fP+oDhUnPqNMY8/5w==", "dependencies": { "@babel/runtime": "^7.13.10", - "@floating-ui/react-dom": "0.7.2", - "@radix-ui/react-arrow": "1.0.1", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-primitive": "1.0.1", - "@radix-ui/react-use-callback-ref": "1.0.0", - "@radix-ui/react-use-layout-effect": "1.0.0", - "@radix-ui/react-use-rect": "1.0.0", - "@radix-ui/react-use-size": "1.0.0", - "@radix-ui/rect": "1.0.0" + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.0.3", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-context": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-use-callback-ref": "1.0.1", + "@radix-ui/react-use-layout-effect": "1.0.1", + "@radix-ui/react-use-rect": "1.0.1", + "@radix-ui/react-use-size": "1.0.1", + "@radix-ui/rect": "1.0.1" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-portal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.1.tgz", - "integrity": "sha512-NY2vUWI5WENgAT1nfC6JS7RU5xRYBfjZVLq0HmgEN1Ezy3rk/UruMV4+Rd0F40PEaFC5SrLS1ixYvcYIQrb4Ig==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", + "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.1" + "@radix-ui/react-primitive": "1.0.3" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-presence": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.0.tgz", - "integrity": "sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.1.tgz", + "integrity": "sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-use-layout-effect": "1.0.0" + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-use-layout-effect": "1.0.1" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.1.tgz", - "integrity": "sha512-fHbmislWVkZaIdeF6GZxF0A/NH/3BjrGIYj+Ae6eTmTCr7EB0RQAAVEiqsXK6p3/JcRqVSBQoceZroj30Jj3XA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz", + "integrity": "sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.1" + "@radix-ui/react-slot": "1.0.2" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-slot": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.1.tgz", - "integrity": "sha512-avutXAFL1ehGvAXtPquu0YK5oz6ctS474iM3vNGQIkswrVhdrS52e3uoMQBzZhNRAIE0jBnUyXWNmSjGHhCFcw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.2.tgz", + "integrity": "sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.0" + "@radix-ui/react-compose-refs": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-tooltip": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.0.5.tgz", - "integrity": "sha512-cDKVcfzyO6PpckZekODJZDe5ZxZ2fCZlzKzTmPhe4mX9qTHRfLcKgqb0OKf22xLwDequ2tVleim+ZYx3rabD5w==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.0.7.tgz", + "integrity": "sha512-lPh5iKNFVQ/jav/j6ZrWq3blfDJ0OH9R6FlNUHPMqdLuQ9vwDgFsRxvl8b7Asuy5c8xmoojHUxKHQSOAvMHxyw==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-dismissable-layer": "1.0.3", - "@radix-ui/react-id": "1.0.0", - "@radix-ui/react-popper": "1.1.1", - "@radix-ui/react-portal": "1.0.2", - "@radix-ui/react-presence": "1.0.0", - "@radix-ui/react-primitive": "1.0.2", - "@radix-ui/react-slot": "1.0.1", - "@radix-ui/react-use-controllable-state": "1.0.0", - "@radix-ui/react-visually-hidden": "1.0.2" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-arrow": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.0.2.tgz", - "integrity": "sha512-fqYwhhI9IarZ0ll2cUSfKuXHlJK0qE4AfnRrPBbRwEH/4mGQn04/QFGomLi8TXWIdv9WJk//KgGm+aDxVIr1wA==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.2" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.3.tgz", - "integrity": "sha512-nXZOvFjOuHS1ovumntGV7NNoLaEp9JEvTht3MBjP44NSW5hUKj/8OnfN3+8WmB+CEhN44XaGhpHoSsUIEl5P7Q==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.0", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-primitive": "1.0.2", - "@radix-ui/react-use-callback-ref": "1.0.0", - "@radix-ui/react-use-escape-keydown": "1.0.2" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-popper": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.1.tgz", - "integrity": "sha512-keYDcdMPNMjSC8zTsZ8wezUMiWM9Yj14wtF3s0PTIs9srnEPC9Kt2Gny1T3T81mmSeyDjZxsD9N5WCwNNb712w==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@floating-ui/react-dom": "0.7.2", - "@radix-ui/react-arrow": "1.0.2", - "@radix-ui/react-compose-refs": "1.0.0", - "@radix-ui/react-context": "1.0.0", - "@radix-ui/react-primitive": "1.0.2", - "@radix-ui/react-use-callback-ref": "1.0.0", - "@radix-ui/react-use-layout-effect": "1.0.0", - "@radix-ui/react-use-rect": "1.0.0", - "@radix-ui/react-use-size": "1.0.0", - "@radix-ui/rect": "1.0.0" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-portal": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.2.tgz", - "integrity": "sha512-swu32idoCW7KA2VEiUZGBSu9nB6qwGdV6k6HYhUoOo3M1FFpD+VgLzUqtt3mwL1ssz7r2x8MggpLSQach2Xy/Q==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.2" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.2.tgz", - "integrity": "sha512-zY6G5Qq4R8diFPNwtyoLRZBxzu1Z+SXMlfYpChN7Dv8gvmx9X3qhDqiLWvKseKVJMuedFeU/Sa0Sy/Ia+t06Dw==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.1" + "@radix-ui/primitive": "1.0.1", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-context": "1.0.1", + "@radix-ui/react-dismissable-layer": "1.0.5", + "@radix-ui/react-id": "1.0.1", + "@radix-ui/react-popper": "1.1.3", + "@radix-ui/react-portal": "1.0.4", + "@radix-ui/react-presence": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-slot": "1.0.2", + "@radix-ui/react-use-controllable-state": "1.0.1", + "@radix-ui/react-visually-hidden": "1.0.3" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz", - "integrity": "sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.1.tgz", + "integrity": "sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==", "dependencies": { "@babel/runtime": "^7.13.10" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-controllable-state": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.0.tgz", - "integrity": "sha512-FohDoZvk3mEXh9AWAVyRTYR4Sq7/gavuofglmiXB2g1aKyboUD4YtgWxKj8O5n+Uak52gXQ4wKz5IFST4vtJHg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.1.tgz", + "integrity": "sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.0" + "@radix-ui/react-use-callback-ref": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-escape-keydown": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.2.tgz", - "integrity": "sha512-DXGim3x74WgUv+iMNCF+cAo8xUHHeqvjx8zs7trKf+FkQKPQXLk2sX7Gx1ysH7Q76xCpZuxIJE7HLPxRE+Q+GA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.3.tgz", + "integrity": "sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.0" + "@radix-ui/react-use-callback-ref": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-layout-effect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz", - "integrity": "sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.1.tgz", + "integrity": "sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==", "dependencies": { "@babel/runtime": "^7.13.10" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-rect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.0.0.tgz", - "integrity": "sha512-TB7pID8NRMEHxb/qQJpvSt3hQU4sqNPM1VCTjTRjEOa7cEop/QMuq8S6fb/5Tsz64kqSvB9WnwsDHtjnrM9qew==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.0.1.tgz", + "integrity": "sha512-Cq5DLuSiuYVKNU8orzJMbl15TXilTnJKUCltMVQg53BQOF1/C5toAaGrowkgksdBQ9H+SRL23g0HDmg9tvmxXw==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/rect": "1.0.0" + "@radix-ui/rect": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-use-size": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.0.0.tgz", - "integrity": "sha512-imZ3aYcoYCKhhgNpkNDh/aTiU05qw9hX+HHI1QDBTyIlcFjgeFlKKySNGMwTp7nYFLQg/j0VA2FmCY4WPDDHMg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.0.1.tgz", + "integrity": "sha512-ibay+VqrgcaI6veAojjofPATwledXiSmX+C0KrBk/xgpX9rBzPV3OsfwlhQdUOFbh+LKQorLYT+xTXW9V8yd0g==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-layout-effect": "1.0.0" + "@radix-ui/react-use-layout-effect": "1.0.1" }, "peerDependencies": { + "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@radix-ui/react-visually-hidden": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.0.2.tgz", - "integrity": "sha512-qirnJxtYn73HEk1rXL12/mXnu2rwsNHDID10th2JGtdK25T9wX+mxRmGt7iPSahw512GbZOc0syZX1nLQGoEOg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.0.3.tgz", + "integrity": "sha512-D4w41yN5YRKtu464TLnByKzMDG/JlMPHtfZgQAu9v6mNakUqGUI9vUrfQKz8NK41VMm/xbZbh76NUTVtIYqOMA==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.2" + "@radix-ui/react-primitive": "1.0.3" }, "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0", "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.2.tgz", - "integrity": "sha512-zY6G5Qq4R8diFPNwtyoLRZBxzu1Z+SXMlfYpChN7Dv8gvmx9X3qhDqiLWvKseKVJMuedFeU/Sa0Sy/Ia+t06Dw==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.1" }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, "node_modules/@radix-ui/rect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.0.0.tgz", - "integrity": "sha512-d0O68AYy/9oeEy1DdC07bz1/ZXX+DqCskRd3i4JzLSTXwefzaepQrKjXC7aNM8lTHjFLDO0pDgaEiQ7jEk+HVg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.0.1.tgz", + "integrity": "sha512-fyrgCaedtvMg9NK3en0pnOYJdtfwxUcNolezkNPUsoX57X8oQk+NkqcvzHXD2uKNij6GXmWU9NDru2IWjrO4BQ==", "dependencies": { "@babel/runtime": "^7.13.10" } }, "node_modules/@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", + "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", "dependencies": { "@hapi/hoek": "^9.0.0" } @@ -3390,37 +3631,37 @@ "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" }, "node_modules/@sinclair/typebox": { - "version": "0.25.21", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.21.tgz", - "integrity": "sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g==" + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==" }, "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" } }, - "node_modules/@slorber/static-site-generator-webpack-plugin": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", - "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "node_modules/@slorber/remark-comment": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@slorber/remark-comment/-/remark-comment-1.0.0.tgz", + "integrity": "sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==", "dependencies": { - "eval": "^0.1.8", - "p-map": "^4.0.0", - "webpack-sources": "^3.2.2" - }, - "engines": { - "node": ">=14" + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.1.0", + "micromark-util-symbol": "^1.0.1" } }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3431,11 +3672,11 @@ } }, "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", - "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3446,11 +3687,11 @@ } }, "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", - "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", + "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3461,11 +3702,11 @@ } }, "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", + "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3476,11 +3717,11 @@ } }, "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", + "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3491,11 +3732,11 @@ } }, "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", + "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3506,11 +3747,11 @@ } }, "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", + "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3521,9 +3762,9 @@ } }, "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", + "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", "engines": { "node": ">=12" }, @@ -3536,21 +3777,21 @@ } }, "node_modules/@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", + "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0", + "@svgr/babel-plugin-svg-dynamic-title": "8.0.0", + "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", + "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", + "@svgr/babel-plugin-transform-svg-component": "8.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3561,18 +3802,18 @@ } }, "node_modules/@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", + "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" + "cosmiconfig": "^8.1.3", + "snake-case": "^3.0.4" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3580,15 +3821,15 @@ } }, "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", + "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", "dependencies": { - "@babel/types": "^7.20.0", + "@babel/types": "^7.21.3", "entities": "^4.4.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3596,37 +3837,37 @@ } }, "node_modules/@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", + "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "@svgr/hast-util-to-babel-ast": "8.0.0", "svg-parser": "^2.0.4" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", "url": "https://github.com/sponsors/gregberge" }, "peerDependencies": { - "@svgr/core": "^6.0.0" + "@svgr/core": "*" } }, "node_modules/@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz", + "integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==", "dependencies": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" + "cosmiconfig": "^8.1.3", + "deepmerge": "^4.3.1", + "svgo": "^3.0.2" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3637,21 +3878,21 @@ } }, "node_modules/@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz", + "integrity": "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==", "dependencies": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", + "@babel/core": "^7.21.3", + "@babel/plugin-transform-react-constant-elements": "^7.21.3", + "@babel/preset-env": "^7.20.2", "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" + "@babel/preset-typescript": "^7.21.0", + "@svgr/core": "8.1.0", + "@svgr/plugin-jsx": "8.1.0", + "@svgr/plugin-svgo": "8.1.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3659,20 +3900,20 @@ } }, "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", + "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", "dependencies": { - "defer-to-connect": "^1.0.1" + "defer-to-connect": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=14.16" } }, "node_modules/@tailwindcss/typography": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.9.tgz", - "integrity": "sha512-t8Sg3DyynFysV9f4JDOVISGsjazNb48AeIYQwcL+Bsq5uf4RYL75C1giZ43KISjeDGBaTN3Kxh7Xj/vRSMJUUg==", + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.13.tgz", + "integrity": "sha512-ADGcJ8dX21dVVHIwTRgzrcunY6YY9uSlAHHGVKvkA+vLc5qLwEszvKts40lx7z0qc4clpjclwLeK5rVCV2P/uw==", "dev": true, "dependencies": { "lodash.castarray": "^4.4.0", @@ -3692,73 +3933,91 @@ "node": ">=10.13.0" } }, - "node_modules/@tsconfig/docusaurus": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@tsconfig/docusaurus/-/docusaurus-1.0.6.tgz", - "integrity": "sha512-1QxDaP54hpzM6bq9E+yFEo4F9WbWHhsDe4vktZXF/iDlc9FqGr9qlg+3X/nuKQXx8QxHV7ue8NXFazzajsxFBA==", - "dev": true + "node_modules/@types/acorn": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", + "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", + "dependencies": { + "@types/estree": "*" + } }, "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dependencies": { "@types/connect": "*", "@types/node": "*" } }, "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dependencies": { "@types/express-serve-static-core": "*", "@types/node": "*" } }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, "node_modules/@types/eslint": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.0.tgz", - "integrity": "sha512-35EhHNOXgxnUgh4XCJsGhE7zdlDhYDN/aMG6UbkByCFFNgQ7b3U+uVoqBpicFydR8JEfgdjCF7SJ7MiJfzuiTA==", + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", "dependencies": { "@types/estree": "*", "@types/json-schema": "*" } }, "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dependencies": { "@types/eslint": "*", "@types/estree": "*" } }, "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", + "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "dependencies": { + "@types/estree": "*" + } }, "node_modules/@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", @@ -3767,19 +4026,25 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", "dependencies": { "@types/node": "*", "@types/qs": "*", - "@types/range-parser": "*" + "@types/range-parser": "*", + "@types/send": "*" } }, + "node_modules/@types/gtag.js": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@types/gtag.js/-/gtag.js-0.0.12.tgz", + "integrity": "sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==" + }, "node_modules/@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { "@types/unist": "*" } @@ -3794,95 +4059,125 @@ "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==" + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==" + }, "node_modules/@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dependencies": { "@types/node": "*" } }, "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==" }, "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dependencies": { "@types/istanbul-lib-coverage": "*" } }, "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dependencies": { "@types/istanbul-lib-report": "*" } }, "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" }, "node_modules/@types/katex": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", - "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", + "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==" }, "node_modules/@types/mdast": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.12.tgz", - "integrity": "sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", + "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", "dependencies": { - "@types/unist": "^2" + "@types/unist": "*" } }, + "node_modules/@types/mdx": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==" + }, "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "18.13.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz", - "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==" + "version": "20.12.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.10.tgz", + "integrity": "sha512-Eem5pH9pmWBHoGAT8Dr5fdc5rYA+4NAovdM4EktRPVAAiJhmWWfQrA0cFhAbOsQdSfIHjAud6YdkbL69+zSKjw==", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dependencies": { + "@types/node": "*" + } }, "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" }, - "node_modules/@types/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + "node_modules/@types/prismjs": { + "version": "1.26.4", + "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.4.tgz", + "integrity": "sha512-rlAnzkW2sZOjbqZ743IHUhFcvzaGbqijwOu8QZnZCjfQzBqFE3s4lOTJEsxikImav9uzz/42I+O7YUs1mWgMlg==" }, "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==" }, "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==" }, "node_modules/@types/react": { - "version": "18.0.27", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", - "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz", + "integrity": "sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw==", "dependencies": { "@types/prop-types": "*", - "@types/scheduler": "*", "csstype": "^3.0.2" } }, @@ -3896,13 +4191,13 @@ } }, "node_modules/@types/react-router-config": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", - "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", + "version": "5.0.11", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.11.tgz", + "integrity": "sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==", "dependencies": { "@types/history": "^4.7.11", "@types/react": "*", - "@types/react-router": "*" + "@types/react-router": "^5.1.0" } }, "node_modules/@types/react-router-dom": { @@ -3921,197 +4216,207 @@ "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" }, "node_modules/@types/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.7.tgz", + "integrity": "sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==", "dependencies": { "@types/node": "*" } }, - "node_modules/@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } }, "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dependencies": { "@types/express": "*" } }, "node_modules/@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dependencies": { - "@types/mime": "*", - "@types/node": "*" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dependencies": { "@types/node": "*" } }, "node_modules/@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, "node_modules/@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", "dependencies": { "@types/node": "*" } }, "node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "dependencies": { "@types/yargs-parser": "*" } }, "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==" + "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==" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==" + "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==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==" + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==" + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==" + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "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==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" + "@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" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "@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" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "@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" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -4137,30 +4442,10 @@ "node": ">= 0.6" } }, - "node_modules/accepts/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/accepts/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -4168,22 +4453,26 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", - "dev": true, - "dependencies": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "peerDependencies": { + "acorn": "^8" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "engines": { "node": ">=0.4.0" } @@ -4209,14 +4498,14 @@ } }, "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "^3.1.3", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.4.1" }, "funding": { "type": "github", @@ -4239,59 +4528,43 @@ } } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "fast-deep-equal": "^3.1.3" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "peerDependencies": { - "ajv": "^6.9.1" + "ajv": "^8.8.2" } }, "node_modules/algoliasearch": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.20.0.tgz", - "integrity": "sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.20.0", - "@algolia/cache-common": "4.20.0", - "@algolia/cache-in-memory": "4.20.0", - "@algolia/client-account": "4.20.0", - "@algolia/client-analytics": "4.20.0", - "@algolia/client-common": "4.20.0", - "@algolia/client-personalization": "4.20.0", - "@algolia/client-search": "4.20.0", - "@algolia/logger-common": "4.20.0", - "@algolia/logger-console": "4.20.0", - "@algolia/requester-browser-xhr": "4.20.0", - "@algolia/requester-common": "4.20.0", - "@algolia/requester-node-http": "4.20.0", - "@algolia/transporter": "4.20.0" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.3.tgz", + "integrity": "sha512-Le/3YgNvjW9zxIQMRhUHuhiUjAlKY/zsdZpfq4dlLqg6mEm0nL6yk+7f2hDOtLpxsgE4jSzDmvHL7nXdBp5feg==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.23.3", + "@algolia/cache-common": "4.23.3", + "@algolia/cache-in-memory": "4.23.3", + "@algolia/client-account": "4.23.3", + "@algolia/client-analytics": "4.23.3", + "@algolia/client-common": "4.23.3", + "@algolia/client-personalization": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/logger-common": "4.23.3", + "@algolia/logger-console": "4.23.3", + "@algolia/recommend": "4.23.3", + "@algolia/requester-browser-xhr": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/requester-node-http": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/algoliasearch-helper": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.14.2.tgz", - "integrity": "sha512-FjDSrjvQvJT/SKMW74nPgFpsoPUwZCzGbCqbp8HhBFfSk/OvNFxzCaCmuO0p7AWeLy1gD+muFwQEkBwcl5H4pg==", + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.19.0.tgz", + "integrity": "sha512-AaSb5DZDMZmDQyIy6lf4aL0OZGgyIdqvLIIvSuVQOIOqfhrYSY7TvotIFI2x0Q3cP3xUpTd7lI1astUC4aXBJw==", "dependencies": { "@algolia/events": "^4.0.1" }, @@ -4358,6 +4631,12 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -4381,29 +4660,20 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/aria-hidden": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.2.tgz", - "integrity": "sha512-6y/ogyDTk/7YAe91T3E2PR1ALVKyM2QbTio5HwM+N1Q6CMlCKhvClyIjkckBswa0f2xJhjsfzIGa1yVSe1UMVA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", + "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", "dependencies": { "tslib": "^2.0.0" }, "engines": { "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", - "react": "^16.9.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } } }, "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-union": { "version": "2.1.0", @@ -4413,10 +4683,13 @@ "node": ">=8" } }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + "node_modules/astring": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", + "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "bin": { + "astring": "bin/astring" + } }, "node_modules/asynckit": { "version": "0.4.0", @@ -4432,9 +4705,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.13", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", - "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", + "version": "10.4.19", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", "funding": [ { "type": "opencollective", @@ -4443,12 +4716,16 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "browserslist": "^4.21.4", - "caniuse-lite": "^1.0.30001426", - "fraction.js": "^4.2.0", + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001599", + "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -4464,54 +4741,31 @@ } }, "node_modules/axios": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.2.tgz", - "integrity": "sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } }, "node_modules/babel-loader": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" }, "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "node": ">= 14.15.0" }, "peerDependencies": { - "@babel/core": "^7.11.6" + "@babel/core": "^7.12.0", + "webpack": ">=5" } }, - "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, "node_modules/babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", @@ -4520,71 +4774,54 @@ "object.assign": "^4.1.0" } }, - "node_modules/babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "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==", "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" } }, "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz", + "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" + "@babel/helper-define-polyfill-provider": "^0.6.1", + "core-js-compat": "^3.36.1" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "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==", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" + "@babel/helper-define-polyfill-provider": "^0.6.2" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4595,11 +4832,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "node_modules/base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -4614,20 +4846,23 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -4635,7 +4870,7 @@ "iconv-lite": "0.4.24", "on-finished": "2.4.1", "qs": "6.11.0", - "raw-body": "2.5.1", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -4666,12 +4901,10 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/bonjour-service": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", - "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", "fast-deep-equal": "^3.1.3", "multicast-dns": "^7.2.5" } @@ -4723,9 +4956,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "funding": [ { "type": "opencollective", @@ -4734,13 +4967,17 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -4762,60 +4999,44 @@ "node": ">= 0.8" } }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, + "node_modules/cacheable-lookup": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", + "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==", "engines": { - "node": ">=8" + "node": ">=14.16" } }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "node_modules/cacheable-request": { + "version": "10.2.14", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz", + "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==", "dependencies": { - "pump": "^3.0.0" + "@types/http-cache-semantics": "^4.0.2", + "get-stream": "^6.0.1", + "http-cache-semantics": "^4.1.1", + "keyv": "^4.5.3", + "mimic-response": "^4.0.0", + "normalize-url": "^8.0.0", + "responselike": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "engines": { - "node": ">=8" + "node": ">=14.16" } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4853,6 +5074,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, "engines": { "node": ">= 6" } @@ -4869,9 +5091,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001527", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001527.tgz", - "integrity": "sha512-YkJi7RwPgWtXVSgK4lG9AHH57nSzvvOp9MesgXmw4Q7n0C3H04L0foHqfxcmSAm5AcWb8dW9AYj2tR7/5GnddQ==", + "version": "1.0.30001616", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz", + "integrity": "sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw==", "funding": [ { "type": "opencollective", @@ -4888,9 +5110,9 @@ ] }, "node_modules/ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4911,28 +5133,45 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "engines": { + "node": ">=10" + } + }, "node_modules/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", + "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4975,15 +5214,9 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -4996,6 +5229,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -5009,9 +5245,9 @@ } }, "node_modules/ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "funding": [ { "type": "github", @@ -5023,9 +5259,9 @@ } }, "node_modules/clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", "dependencies": { "source-map": "~0.6.0" }, @@ -5033,6 +5269,14 @@ "node": ">= 10.0" } }, + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -5053,9 +5297,9 @@ } }, "node_modules/cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.4.tgz", + "integrity": "sha512-Lm3L0p+/npIQWNIiyF/nAn7T5dnOwR3xNTHXYEBFBFVPXzCVNZ5lqEC/1eo/EVfpDsQ1I+TX4ORPQgp+UI0CRw==", "dependencies": { "string-width": "^4.2.0" }, @@ -5097,29 +5341,18 @@ "node": ">=6" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "engines": { "node": ">=6" } }, "node_modules/collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", + "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5147,14 +5380,14 @@ "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" }, "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" }, "node_modules/combine-promises": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", - "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.2.0.tgz", + "integrity": "sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==", "engines": { "node": ">=10" } @@ -5171,9 +5404,9 @@ } }, "node_modules/comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -5187,10 +5420,10 @@ "node": ">= 6" } }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==" }, "node_modules/compressible": { "version": "2.0.18", @@ -5203,14 +5436,6 @@ "node": ">= 0.6" } }, - "node_modules/compressible/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/compression": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", @@ -5251,20 +5476,31 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz", + "integrity": "sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==", "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" + "dot-prop": "^6.0.1", + "graceful-fs": "^4.2.6", + "unique-string": "^3.0.0", + "write-file-atomic": "^3.0.3", + "xdg-basedir": "^5.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/yeoman/configstore?sponsor=1" } }, "node_modules/connect-history-api-fallback": { @@ -5297,14 +5533,14 @@ } }, "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "engines": { "node": ">= 0.6" } @@ -5348,32 +5584,6 @@ "webpack": "^5.1.0" } }, - "node_modules/copy-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, "node_modules/copy-webpack-plugin/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -5386,13 +5596,13 @@ } }, "node_modules/copy-webpack-plugin/node_modules/globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "dependencies": { "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", "merge2": "^1.4.1", "slash": "^4.0.0" }, @@ -5403,29 +5613,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/copy-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/copy-webpack-plugin/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -5438,9 +5625,9 @@ } }, "node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -5448,11 +5635,11 @@ } }, "node_modules/core-js-compat": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.27.2.tgz", - "integrity": "sha512-welaYuF7ZtbYKGrIy7y3eb40d37rG1FvzEOfe7hSLd2iD6duMDqUhRfSvCGyC46HhR6Y8JXXdZ2lnRUMkPBpvg==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", "dependencies": { - "browserslist": "^4.21.4" + "browserslist": "^4.23.0" }, "funding": { "type": "opencollective", @@ -5460,9 +5647,9 @@ } }, "node_modules/core-js-pure": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.27.2.tgz", - "integrity": "sha512-Cf2jqAbXgWH3VVzjyaaFkY1EBazxugUepGymDoeteyYr9ByX51kD2jdHZlsEF/xnJMyN3Prua7mQuzwMg6Zc9A==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.37.0.tgz", + "integrity": "sha512-d3BrpyFr5eD4KcbRvQ3FTUx/KWmaDesr7+a3+1+P46IUnNoEt+oiLijPINZMEon7w9oGkIINWxrBAU9DEciwFQ==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -5475,26 +5662,28 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/cross-fetch": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz", - "integrity": "sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==", - "dependencies": { - "node-fetch": "^2.6.12" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/cross-spawn": { @@ -5511,37 +5700,54 @@ } }, "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "dependencies": { + "type-fest": "^1.0.1" + }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", "engines": { - "node": "^10 || ^12 || >=14" + "node": "^14 || ^16 || >=18" }, "peerDependencies": { "postcss": "^8.0.9" } }, "node_modules/css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", "dependencies": { "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", "postcss-modules-values": "^4.0.0", "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" + "semver": "^7.5.4" }, "engines": { "node": ">= 12.13.0" @@ -5551,20 +5757,29 @@ "url": "https://opencollective.com/webpack" }, "peerDependencies": { + "@rspack/core": "0.x || 1.x", "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, "node_modules/css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz", + "integrity": "sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==", "dependencies": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" + "@jridgewell/trace-mapping": "^0.3.18", + "cssnano": "^6.0.1", + "jest-worker": "^29.4.3", + "postcss": "^8.4.24", + "schema-utils": "^4.0.1", + "serialize-javascript": "^6.0.1" }, "engines": { "node": ">= 14.15.0" @@ -5597,55 +5812,6 @@ } } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -5662,15 +5828,15 @@ } }, "node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" }, "engines": { - "node": ">=8.0.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, "node_modules/css-what": { @@ -5696,112 +5862,137 @@ } }, "node_modules/cssnano": { - "version": "5.1.14", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.14.tgz", - "integrity": "sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", "dependencies": { - "cssnano-preset-default": "^5.2.13", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/cssnano" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz", + "integrity": "sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==", "dependencies": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" + "autoprefixer": "^10.4.19", + "browserslist": "^4.23.0", + "cssnano-preset-default": "^6.1.2", + "postcss-discard-unused": "^6.0.5", + "postcss-merge-idents": "^6.0.3", + "postcss-reduce-idents": "^6.0.3", + "postcss-zindex": "^6.0.2" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", + "dependencies": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dependencies": { - "css-tree": "^1.1.2" + "css-tree": "~2.2.0" }, "engines": { - "node": ">=8.0.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==" + }, "node_modules/csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==" }, "node_modules/debug": { "version": "4.3.4", @@ -5819,15 +6010,41 @@ } } }, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", "dependencies": { - "mimic-response": "^1.0.0" + "mimic-response": "^3.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/deep-extend": { @@ -5839,9 +6056,9 @@ } }, "node_modules/deepmerge": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", - "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "engines": { "node": ">=0.10.0" } @@ -5858,9 +6075,28 @@ } }, "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/define-lazy-prop": { "version": "2.0.0", @@ -5871,10 +6107,11 @@ } }, "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dependencies": { + "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" }, @@ -5885,15 +6122,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/del": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", @@ -5931,6 +6159,14 @@ "node": ">= 0.8" } }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", @@ -5940,18 +6176,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "dependencies": { - "repeat-string": "^1.5.4" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/detect-node": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", @@ -6004,21 +6228,16 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/detective": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", - "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", - "dev": true, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", "dependencies": { - "acorn-node": "^1.8.2", - "defined": "^1.0.0", - "minimist": "^1.2.6" - }, - "bin": { - "detective": "bin/detective.js" + "dequal": "^2.0.0" }, - "engines": { - "node": ">=0.8.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, "node_modules/didyoumean": { @@ -6044,15 +6263,10 @@ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", "dev": true }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" - }, "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dependencies": { "@leichtgewicht/ip-codec": "^2.0.1" }, @@ -6129,14 +6343,17 @@ } }, "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", "dependencies": { "is-obj": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/dot-prop/node_modules/is-obj": { @@ -6152,11 +6369,6 @@ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" - }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -6168,15 +6380,20 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.294", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.294.tgz", - "integrity": "sha512-PuHZB3jEN7D8WPPjLmBQAsqQz8tWHlkkB4n0E2OYw8RwVdmBYV0Wn+rUFH8JqYyIRb4HQhhedgxlZL163wqLrQ==" + "version": "1.4.758", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.758.tgz", + "integrity": "sha512-/o9x6TCdrYZBMdGeTifAP3wlF/gVT+TtWJe3BSmtNh92Mw81U9hrYwW9OAGUh+sEOX/yz5e34sksqRruZbjYrw==" }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, + "node_modules/emojilib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", + "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==" + }, "node_modules/emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", @@ -6186,9 +6403,9 @@ } }, "node_modules/emoticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", - "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.0.1.tgz", + "integrity": "sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -6202,18 +6419,10 @@ "node": ">= 0.8" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.1.tgz", + "integrity": "sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -6223,9 +6432,9 @@ } }, "node_modules/entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "engines": { "node": ">=0.12" }, @@ -6241,25 +6450,47 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.2.tgz", + "integrity": "sha512-l60ETUTmLqbVbVHv1J4/qj+M8nq7AwMzEcg3kmJDt9dCNrTk+yHcYFf/Kw75pMDwd9mPcIGCG5LcS20SxYRzFA==" }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "engines": { "node": ">=6" } }, "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz", + "integrity": "sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/escape-html": { @@ -6329,40 +6560,123 @@ "node": ">=4.0" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" + "node_modules/estree-util-attach-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", + "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eta": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.0.tgz", - "integrity": "sha512-NqE7S2VmVwgMS8yBxsH4VgNQjNjLq1gfGU0u9I6Cjh468nPRMoDfGdK9n1p/3Dvsw3ebklDkZsFAnKJ9sefjBA==", - "engines": { - "node": ">=6.0.0" + "node_modules/estree-util-build-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", + "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-walker": "^3.0.0" }, "funding": { - "url": "https://github.com/eta-dev/eta?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "engines": { - "node": ">= 0.6" + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "node_modules/estree-util-to-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", + "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", "dependencies": { - "@types/node": "*", - "require-like": ">= 0.1.1" + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-value-to-estree": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.1.tgz", + "integrity": "sha512-5mvUrF2suuv5f5cGDnDphIy4/gW86z82kl5qG6mM9z04SEQI4FB5Apmaw/TGEf3l55nLtMs5s51dmhUzvAHQCA==", + "dependencies": { + "@types/estree": "^1.0.0", + "is-plain-obj": "^4.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/remcohaszing" + } + }, + "node_modules/estree-util-visit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", + "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.2.0.tgz", + "integrity": "sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==", + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "dependencies": { + "@types/node": "*", + "require-like": ">= 0.1.1" }, "engines": { "node": ">= 0.8" @@ -6403,28 +6717,17 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/execa/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -6455,11 +6758,6 @@ "node": ">= 0.10.0" } }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, "node_modules/express/node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -6519,9 +6817,9 @@ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -6547,13 +6845,25 @@ } }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dependencies": { "reusify": "^1.0.4" } }, + "node_modules/fault": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", + "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/faye-websocket": { "version": "0.11.4", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", @@ -6565,33 +6875,6 @@ "node": ">=0.8.0" } }, - "node_modules/fbemitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", - "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", - "dependencies": { - "fbjs": "^3.0.0" - } - }, - "node_modules/fbjs": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.5.tgz", - "integrity": "sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==", - "dependencies": { - "cross-fetch": "^3.1.5", - "fbjs-css-vars": "^1.0.0", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^1.0.35" - } - }, - "node_modules/fbjs-css-vars": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", - "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" - }, "node_modules/feed": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", @@ -6627,10 +6910,38 @@ "webpack": "^4.0.0 || ^5.0.0" } }, + "node_modules/file-loader/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/file-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/file-loader/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, "node_modules/file-loader/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dependencies": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -6694,49 +7005,47 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=14.16" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flux": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", - "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", - "dependencies": { - "fbemitter": "^3.0.0", - "fbjs": "^3.0.1" - }, - "peerDependencies": { - "react": "^15.0.2 || ^16.0.0 || ^17.0.0" + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "bin": { + "flat": "cli.js" } }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "funding": [ { "type": "individual", @@ -6752,10 +7061,38 @@ } } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/fork-ts-checker-webpack-plugin": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", - "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", + "integrity": "sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==", "dependencies": { "@babel/code-frame": "^7.8.3", "@types/json-schema": "^7.0.5", @@ -6790,6 +7127,29 @@ } } }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", @@ -6819,6 +7179,11 @@ "node": ">=10" } }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", @@ -6844,6 +7209,14 @@ "node": ">=6" } }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, "node_modules/form-data": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", @@ -6857,6 +7230,22 @@ "node": ">= 6" } }, + "node_modules/form-data-encoder": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz", + "integrity": "sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==", + "engines": { + "node": ">= 14.17" + } + }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "engines": { + "node": ">=0.4.x" + } + }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -6866,15 +7255,15 @@ } }, "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "engines": { "node": "*" }, "funding": { "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/rawify" } }, "node_modules/fresh": { @@ -6886,22 +7275,22 @@ } }, "node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" }, "engines": { - "node": ">=12" + "node": ">=14.14" } }, "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==" }, "node_modules/fs.realpath": { "version": "1.0.0", @@ -6909,9 +7298,9 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, "optional": true, "os": [ @@ -6922,9 +7311,12 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/fuse.js": { "version": "6.6.2", @@ -6943,13 +7335,18 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6969,14 +7366,14 @@ "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" }, "node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/github-slugger": { @@ -7103,31 +7500,56 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/gopd": { + "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" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" + "version": "12.6.1", + "resolved": "https://registry.npmjs.org/got/-/got-12.6.1.tgz", + "integrity": "sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==", + "dependencies": { + "@sindresorhus/is": "^5.2.0", + "@szmarczak/http-timer": "^5.0.1", + "cacheable-lookup": "^7.0.0", + "cacheable-request": "^10.2.8", + "decompress-response": "^6.0.0", + "form-data-encoder": "^2.1.2", + "get-stream": "^6.0.1", + "http2-wrapper": "^2.1.10", + "lowercase-keys": "^3.0.0", + "p-cancelable": "^3.0.0", + "responselike": "^3.0.0" }, "engines": { - "node": ">=8.6" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/got/node_modules/@sindresorhus/is": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz", + "integrity": "sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/gray-matter": { "version": "4.0.3", @@ -7182,17 +7604,6 @@ "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -7202,11 +7613,22 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dependencies": { - "get-intrinsic": "^1.1.1" + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -7224,25 +7646,67 @@ } }, "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz", + "integrity": "sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-from-dom": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz", + "integrity": "sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==", + "dependencies": { + "@types/hast": "^3.0.0", + "hastscript": "^8.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-html": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz", + "integrity": "sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==", + "dependencies": { + "@types/hast": "^3.0.0", + "devlop": "^1.1.0", + "hast-util-from-parse5": "^8.0.0", + "parse5": "^7.0.0", + "vfile": "^6.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-html-isomorphic": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz", + "integrity": "sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==", "dependencies": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" + "@types/hast": "^3.0.0", + "hast-util-from-dom": "^5.0.0", + "hast-util-from-html": "^2.0.0", + "unist-util-remove-position": "^5.0.0" }, "funding": { "type": "opencollective", @@ -7250,16 +7714,18 @@ } }, "node_modules/hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", + "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", "dependencies": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^8.0.0", + "property-information": "^6.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" }, "funding": { "type": "opencollective", @@ -7267,59 +7733,131 @@ } }, "node_modules/hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "dependencies": { + "@types/hast": "^3.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "dependencies": { + "@types/hast": "^3.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "dependencies": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.3.tgz", + "integrity": "sha512-ICWvVOF2fq4+7CMmtCPD5CM4QKjPbHpPotE6+8tDooV0ZuyJVUzHsrNX+O5NaRbieTf0F7FfeBOMAwi6Td0+yQ==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-raw/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + "node_modules/hast-util-to-estree": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.0.tgz", + "integrity": "sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-attach-comments": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.0", + "unist-util-position": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-jsx-runtime": { + "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==", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-jsx-runtime/node_modules/inline-style-parser": { + "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==" + }, + "node_modules/hast-util-to-jsx-runtime/node_modules/style-to-object": { + "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==", + "dependencies": { + "inline-style-parser": "0.2.3" + } }, "node_modules/hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", + "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", "dependencies": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", @@ -7327,13 +7865,26 @@ } }, "node_modules/hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", "dependencies": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" + "@types/hast": "^3.0.0" }, "funding": { "type": "opencollective", @@ -7341,15 +7892,15 @@ } }, "node_modules/hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", + "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" }, "funding": { "type": "opencollective", @@ -7402,9 +7953,9 @@ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7429,42 +7980,57 @@ } }, "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" }, "node_modules/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", + "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", "dependencies": { "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", + "clean-css": "~5.3.2", + "commander": "^10.0.0", + "entities": "^4.4.0", "param-case": "^3.0.4", "relateurl": "^0.2.7", - "terser": "^5.10.0" + "terser": "^5.15.1" }, "bin": { "html-minifier-terser": "cli.js" }, "engines": { - "node": ">=12" + "node": "^14.13.1 || >=16.0.0" } }, "node_modules/html-minifier-terser/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "engines": { - "node": ">= 12" + "node": ">=14" } }, "node_modules/html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", "engines": { "node": ">=8" }, @@ -7473,18 +8039,18 @@ } }, "node_modules/html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/html-webpack-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.0.tgz", + "integrity": "sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw==", "dependencies": { "@types/html-minifier-terser": "^6.0.0", "html-minifier-terser": "^6.0.2", @@ -7500,7 +8066,44 @@ "url": "https://opencollective.com/html-webpack-plugin" }, "peerDependencies": { + "@rspack/core": "0.x || 1.x", "webpack": "^5.20.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/html-webpack-plugin/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/html-webpack-plugin/node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" } }, "node_modules/htmlparser2": { @@ -7598,6 +8201,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/http2-wrapper": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", + "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.2.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -7629,17 +8244,17 @@ } }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "engines": { "node": ">= 4" } }, "node_modules/image-size": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", - "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.1.1.tgz", + "integrity": "sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==", "dependencies": { "queue": "6.0.2" }, @@ -7647,13 +8262,13 @@ "image-size": "bin/image-size.js" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.x" } }, "node_modules/immer": { - "version": "9.0.19", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", - "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==", + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", "funding": { "type": "opencollective", "url": "https://opencollective.com/immer" @@ -7675,11 +8290,11 @@ } }, "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/imurmurhash": { @@ -7747,29 +8362,29 @@ } }, "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "engines": { "node": ">= 10" } }, "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", + "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", + "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" }, "funding": { "type": "github", @@ -7792,59 +8407,32 @@ "node": ">=8" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dependencies": { - "ci-info": "^2.0.0" + "ci-info": "^3.2.0" }, "bin": { "is-ci": "bin.js" } }, - "node_modules/is-ci/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", + "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -7900,9 +8488,9 @@ } }, "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", + "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -7924,11 +8512,11 @@ } }, "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-6.0.0.tgz", + "integrity": "sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==", "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7967,11 +8555,14 @@ } }, "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-plain-object": { @@ -7985,6 +8576,14 @@ "node": ">=0.10.0" } }, + "node_modules/is-reference": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", + "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", + "dependencies": { + "@types/estree": "*" + } + }, "node_modules/is-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", @@ -8017,24 +8616,6 @@ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" }, - "node_modules/is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -8047,9 +8628,12 @@ } }, "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.4.1.tgz", + "integrity": "sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==", + "engines": { + "node": ">=12" + } }, "node_modules/isarray": { "version": "0.0.1", @@ -8069,12 +8653,30 @@ "node": ">=0.10.0" } }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jest-util": { - "version": "29.4.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.2.tgz", - "integrity": "sha512-wKnm6XpJgzMUSRFB7YF48CuwdzuDIHenVuoIb1PLuJ6F+uErZsuDkU+EiExkChf6473XcawBrSfDSnXl+/YG4g==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dependencies": { - "@jest/types": "^29.4.2", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -8086,12 +8688,12 @@ } }, "node_modules/jest-worker": { - "version": "29.4.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.2.tgz", - "integrity": "sha512-VIuZA2hZmFyRbchsUCHEehoSf2HEl0YVF8SDJqtPnKorAaBuh42V8QsLnde0XP5F6TyCynGPEGgBOn3Fc+wZGw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dependencies": { "@types/node": "*", - "jest-util": "^29.4.2", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -8113,14 +8715,22 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "bin": { + "jiti": "bin/jiti.js" + } + }, "node_modules/joi": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.7.1.tgz", - "integrity": "sha512-teoLhIvWE298R6AeJywcjR4sX2hHjB3/xJX4qPjg+gTg+c0mzUDsziYlqPmLomq9gVsfaMcgPaGc7VxtD/9StA==", + "version": "17.13.1", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.1.tgz", + "integrity": "sha512-vaBlIKCyo4FCUtCm7Eu4QZd/q02bWcxfUO6YSXAZOWF6gzcLBeba8kwotUdYJjDLW8Cz8RywsSOqiNJZW0mNvg==", "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", "@sideway/formula": "^3.0.1", "@sideway/pinpoint": "^2.0.0" } @@ -8153,9 +8763,9 @@ } }, "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", @@ -8163,9 +8773,9 @@ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/json5": { "version": "2.2.3", @@ -8190,15 +8800,15 @@ } }, "node_modules/katex": { - "version": "0.13.24", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", - "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "version": "0.16.10", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", + "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" ], "dependencies": { - "commander": "^8.0.0" + "commander": "^8.3.0" }, "bin": { "katex": "cli.js" @@ -8213,11 +8823,11 @@ } }, "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dependencies": { - "json-buffer": "3.0.0" + "json-buffer": "3.0.1" } }, "node_modules/kind-of": { @@ -8236,25 +8846,29 @@ "node": ">=6" } }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "engines": { - "node": ">= 8" - } - }, "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz", + "integrity": "sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==", "dependencies": { - "package-json": "^6.3.0" + "package-json": "^8.1.0" }, "engines": { - "node": ">=8" - } - }, + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -8264,11 +8878,14 @@ } }, "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" } }, "node_modules/lines-and-columns": { @@ -8303,14 +8920,17 @@ } }, "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dependencies": { - "p-locate": "^4.1.0" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lodash": { @@ -8324,21 +8944,11 @@ "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==", "dev": true }, - "node_modules/lodash.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, - "node_modules/lodash.flow": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", - "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" - }, "node_modules/lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -8361,6 +8971,15 @@ "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -8381,11 +9000,14 @@ } }, "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", + "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lru-cache": { @@ -8396,149 +9018,2219 @@ "yallist": "^3.0.2" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/markdown-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", + "integrity": "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/markdown-table": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", + "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-util-directive": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-directive/-/mdast-util-directive-3.0.0.tgz", + "integrity": "sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", + "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", + "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", "dependencies": { - "semver": "^6.0.0" + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" + "node_modules/mdast-util-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", + "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.0.tgz", + "integrity": "sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", + "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-math": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", + "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "longest-streak": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.1.0", + "unist-util-remove-position": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", + "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-expression": { + "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==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-jsx": { + "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==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.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" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", + "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", + "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "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==", + "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-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-squeeze-paragraphs": { + "node_modules/mdast-util-to-string": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/memoize-one": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", + "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-directive": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-3.0.0.tgz", + "integrity": "sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "parse-entities": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", + "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", + "dependencies": { + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-frontmatter/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-frontmatter/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.0.0.tgz", + "integrity": "sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.0.0.tgz", + "integrity": "sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.0.0.tgz", + "integrity": "sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.0.1.tgz", + "integrity": "sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-math": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.0.0.tgz", + "integrity": "sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==", + "dependencies": { + "@types/katex": "^0.16.0", + "devlop": "^1.0.0", + "katex": "^0.16.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-math/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-math/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-math/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-mdx-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.0.tgz", + "integrity": "sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-mdx-jsx": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.0.tgz", + "integrity": "sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==", + "dependencies": { + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-mdx-md": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", + "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", + "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", + "dependencies": { + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark-extension-mdx-expression": "^3.0.0", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs-esm": "^3.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs-esm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", + "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs-esm/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdxjs-esm/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-mdx-expression": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.1.tgz", + "integrity": "sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-space": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-factory-space/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-title": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-factory-whitespace": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-character/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-classify-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-combine-extensions": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-events-to-acorn": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.2.tgz", + "integrity": "sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "node_modules/micromark-util-events-to-acorn/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-normalize-identifier/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-resolve-all": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "unist-util-remove": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "node_modules/micromark-util-sanitize-uri": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "node_modules/micromark-util-sanitize-uri/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-to-string": { + "node_modules/micromark-util-sanitize-uri/node_modules/micromark-util-symbol": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "engines": { - "node": ">= 0.6" - } + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/memfs": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", - "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "node_modules/micromark-util-subtokenize": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/memoize-one": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", - "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" + "node_modules/micromark-util-subtokenize/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/merge-stream": { + "node_modules/micromark-util-types": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" + "node_modules/micromark/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "engines": { - "node": ">= 0.6" + "node_modules/micromark/node_modules/micromark-util-character": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, + "node_modules/micromark/node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, "node_modules/micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -8563,19 +11255,19 @@ } }, "node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "mime-db": "~1.33.0" + "mime-db": "1.52.0" }, "engines": { "node": ">= 0.6" @@ -8590,19 +11282,23 @@ } }, "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", + "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/mini-css-extract-plugin": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", - "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz", + "integrity": "sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA==", "dependencies": { - "schema-utils": "^4.0.0" + "schema-utils": "^4.0.0", + "tapable": "^2.2.1" }, "engines": { "node": ">= 12.13.0" @@ -8615,55 +11311,6 @@ "webpack": "^5.0.0" } }, - "node_modules/mini-css-extract-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -8688,10 +11335,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/minipass": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.0.tgz", + "integrity": "sha512-oGZRv2OT1lO2UF1zUcwdTb3wqUwI0kBGTgt/T7OdSj6M6N5m3o5uPf0AIW6lVxGGoiWUR7e2AwTE+xiwK8WQig==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", + "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", "engines": { "node": ">=10" } @@ -8713,10 +11369,27 @@ "multicast-dns": "cli.js" } }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -8747,30 +11420,17 @@ } }, "node_modules/node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "dependencies": { - "lodash": "^4.17.21" - } - }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.3.tgz", + "integrity": "sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==", "dependencies": { - "whatwg-url": "^5.0.0" + "@sindresorhus/is": "^4.6.0", + "char-regex": "^1.0.2", + "emojilib": "^2.4.0", + "skin-tone": "^2.0.0" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">=18" } }, "node_modules/node-forge": { @@ -8782,9 +11442,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -8803,11 +11463,11 @@ } }, "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.1.tgz", + "integrity": "sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==", "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8858,9 +11518,9 @@ } }, "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8874,12 +11534,12 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -8937,9 +11597,9 @@ } }, "node_modules/open": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.1.tgz", - "integrity": "sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dependencies": { "define-lazy-prop": "^2.0.0", "is-docker": "^2.1.1", @@ -8961,36 +11621,39 @@ } }, "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", + "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", "engines": { - "node": ">=6" + "node": ">=12.20" } }, "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "dependencies": { - "p-try": "^2.0.0" + "yocto-queue": "^1.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "dependencies": { - "p-limit": "^2.2.0" + "p-limit": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-map": { @@ -9028,25 +11691,20 @@ } }, "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-8.1.1.tgz", + "integrity": "sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==", "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" + "got": "^12.1.0", + "registry-auth-token": "^5.0.1", + "registry-url": "^6.0.0", + "semver": "^7.3.7" }, "engines": { - "node": ">=8" - } - }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/param-case": { @@ -9070,22 +11728,29 @@ } }, "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "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==", "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" + "@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", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" }, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -9149,11 +11814,11 @@ } }, "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/path-is-absolute": { @@ -9182,6 +11847,31 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -9198,6 +11888,16 @@ "node": ">=8" } }, + "node_modules/periscopic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", + "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^3.0.0", + "is-reference": "^3.0.0" + } + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -9223,15 +11923,27 @@ "node": ">=0.10.0" } }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", "dependencies": { - "find-up": "^4.0.0" + "find-up": "^6.3.0" }, "engines": { - "node": ">=8" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/pkg-up": { @@ -9268,6 +11980,20 @@ "node": ">=6" } }, + "node_modules/pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/pkg-up/node_modules/p-locate": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", @@ -9288,9 +12014,9 @@ } }, "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "funding": [ { "type": "opencollective", @@ -9299,123 +12025,154 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" } }, "node_modules/postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", "dependencies": { - "postcss-selector-parser": "^6.0.9", + "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0" }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, "peerDependencies": { "postcss": "^8.2.2" } }, + "node_modules/postcss-calc/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "colord": "^2.9.1", + "colord": "^2.9.3", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-6.0.5.tgz", + "integrity": "sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-unused/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, "node_modules/postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", "dev": true, "dependencies": { "postcss-value-parser": "^4.0.0", @@ -9423,7 +12180,7 @@ "resolve": "^1.1.7" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" }, "peerDependencies": { "postcss": "^8.0.0" @@ -9449,20 +12206,26 @@ } }, "node_modules/postcss-load-config": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", - "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^1.10.2" + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" }, "engines": { - "node": ">= 10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": ">= 14" }, "peerDependencies": { "postcss": ">=8.0.9", @@ -9478,13 +12241,13 @@ } }, "node_modules/postcss-loader": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", - "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.4.tgz", + "integrity": "sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==", "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.8" + "cosmiconfig": "^8.3.5", + "jiti": "^1.20.0", + "semver": "^7.5.4" }, "engines": { "node": ">= 14.15.0" @@ -9499,116 +12262,140 @@ } }, "node_modules/postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-6.0.3.tgz", + "integrity": "sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==", "dependencies": { - "cssnano-utils": "^3.1.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", + "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", "dependencies": { "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" + "stylehacks": "^6.1.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", + "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", + "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", + "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", "engines": { "node": "^10 || ^12 || >= 14" }, @@ -9617,9 +12404,9 @@ } }, "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", "dependencies": { "icss-utils": "^5.0.0", "postcss-selector-parser": "^6.0.2", @@ -9633,9 +12420,9 @@ } }, "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", "dependencies": { "postcss-selector-parser": "^6.0.4" }, @@ -9661,12 +12448,12 @@ } }, "node_modules/postcss-nested": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", - "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.10" + "postcss-selector-parser": "^6.0.11" }, "engines": { "node": ">=12.0" @@ -9679,187 +12466,199 @@ "postcss": "^8.2.14" } }, + "node_modules/postcss-nested/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", "dependencies": { - "normalize-url": "^6.0.1", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", "dependencies": { - "cssnano-utils": "^3.1.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", + "integrity": "sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-selector-parser": { @@ -9875,46 +12674,58 @@ } }, "node_modules/postcss-sort-media-queries": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz", - "integrity": "sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz", + "integrity": "sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==", "dependencies": { - "sort-css-media-queries": "2.1.0" + "sort-css-media-queries": "2.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" }, "peerDependencies": { - "postcss": "^8.4.16" + "postcss": "^8.4.23" } }, "node_modules/postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", "dependencies": { "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" + "svgo": "^3.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >= 18" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, "node_modules/postcss-value-parser": { @@ -9923,31 +12734,32 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, "node_modules/postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-6.0.2.tgz", + "integrity": "sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/posthog-js": { - "version": "1.53.4", - "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.53.4.tgz", - "integrity": "sha512-aaQ9S+/eDuBl2XTuU/lMyMtX7eeNAQ/+53O0O+I05FwX7e5NDN1nVqlnkMP0pfZlFcnsPaVqm8N3HoYj+b7Eow==", + "version": "1.131.3", + "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.131.3.tgz", + "integrity": "sha512-ds/TADDS+rT/WgUyeW4cJ+X+fX+O1KdkOyssNI/tP90PrFf0IJsck5B42YOLhfz87U2vgTyBaKHkdlMgWuOFog==", "dependencies": { - "fflate": "^0.4.1", - "rrweb-snapshot": "^1.1.14" + "fflate": "^0.4.8", + "preact": "^10.19.3" } }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "engines": { - "node": ">=4" + "node_modules/preact": { + "version": "10.21.0", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.21.0.tgz", + "integrity": "sha512-aQAIxtzWEwH8ou+OovWVSVNlFImL7xUCwJX3YMqA3U8iKCNC34999fFOnWjYNsylgfPgMexpbk7WYOLtKr/mxg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" } }, "node_modules/pretty-error": { @@ -9968,11 +12780,15 @@ } }, "node_modules/prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.3.1.tgz", + "integrity": "sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw==", + "dependencies": { + "@types/prismjs": "^1.26.0", + "clsx": "^2.0.0" + }, "peerDependencies": { - "react": ">=0.14.9" + "react": ">=16.0.0" } }, "node_modules/prismjs": { @@ -9988,14 +12804,6 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, - "node_modules/promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dependencies": { - "asap": "~2.0.3" - } - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -10019,17 +12827,19 @@ } }, "node_modules/property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dependencies": { - "xtend": "^4.0.0" - }, + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", + "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -10055,36 +12865,25 @@ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" }, "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-3.1.0.tgz", + "integrity": "sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==", "dependencies": { - "escape-goat": "^2.0.0" + "escape-goat": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pure-color": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", - "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" - }, "node_modules/qs": { "version": "6.11.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", @@ -10130,7 +12929,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, "engines": { "node": ">=10" }, @@ -10155,9 +12953,9 @@ } }, "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -10199,28 +12997,16 @@ } }, "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/react-base16-styling": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", - "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", - "dependencies": { - "base16": "^1.0.0", - "lodash.curry": "^4.0.1", - "lodash.flow": "^3.3.0", - "pure-color": "^1.2.0" - } - }, "node_modules/react-dev-utils": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", @@ -10300,19 +13086,38 @@ "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" } }, - "node_modules/react-dev-utils/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, + "node_modules/react-dev-utils/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "engines": { "node": ">=10" }, @@ -10321,16 +13126,15 @@ } }, "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.23.2" }, "peerDependencies": { - "react": "17.0.2" + "react": "^18.3.1" } }, "node_modules/react-error-overlay": { @@ -10339,9 +13143,9 @@ "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" }, "node_modules/react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz", + "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/react-helmet-async": { "version": "1.3.0", @@ -10364,34 +13168,24 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, - "node_modules/react-json-view": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", - "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", - "dependencies": { - "flux": "^4.0.1", - "react-base16-styling": "^0.6.0", - "react-lifecycles-compat": "^3.0.4", - "react-textarea-autosize": "^8.3.2" + "node_modules/react-json-view-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-1.4.0.tgz", + "integrity": "sha512-wh6F6uJyYAmQ4fK0e8dSQMEWuvTs2Wr3el3sLD9bambX1+pSWUVXIz1RFaoy3TI1mZ0FqdpKq9YgbgTTgyrmXA==", + "engines": { + "node": ">=14" }, "peerDependencies": { - "react": "^17.0.0 || ^16.3.0 || ^15.5.4", - "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" + "react": "^16.13.1 || ^17.0.0 || ^18.0.0" } }, - "node_modules/react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, "node_modules/react-loadable": { "name": "@docusaurus/react-loadable", - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz", + "integrity": "sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==", "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" + "@types/react": "*" }, "peerDependencies": { "react": "*" @@ -10413,9 +13207,9 @@ } }, "node_modules/react-player": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/react-player/-/react-player-2.14.1.tgz", - "integrity": "sha512-jILj7F9o+6NHzrJ1GqZIxfJgskvGmKeJ05FNhPvgiCpvMZFmFneKEkukywHcULDO2lqITm+zcEkLSq42mX0FbA==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/react-player/-/react-player-2.16.0.tgz", + "integrity": "sha512-mAIPHfioD7yxO0GNYVFD1303QFtI3lyyQZLY229UEAp/a10cSW+hPcakg0Keq8uWJxT2OiT/4Gt+Lc9bD6bJmQ==", "dependencies": { "deepmerge": "^4.0.0", "load-script": "^1.0.0", @@ -10452,9 +13246,9 @@ } }, "node_modules/react-remove-scroll-bar": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz", - "integrity": "sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", + "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", "dependencies": { "react-style-singleton": "^2.2.1", "tslib": "^2.0.0" @@ -10542,22 +13336,6 @@ } } }, - "node_modules/react-textarea-autosize": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.3.tgz", - "integrity": "sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==", - "dependencies": { - "@babel/runtime": "^7.20.13", - "use-composed-ref": "^1.3.0", - "use-latest": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -10568,9 +13346,9 @@ } }, "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -10624,9 +13402,9 @@ "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" }, "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", "dependencies": { "regenerate": "^1.4.2" }, @@ -10635,22 +13413,22 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", "dependencies": { "@babel/runtime": "^7.8.4" } }, "node_modules/regexpu-core": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.0.tgz", - "integrity": "sha512-ZdhUQlng0RoscyW7jADnUZ25F5eVtHdMyXSb2PiwafvteRAOJUjFoUPEYZSIfP99fBIs3maLIRfpEddT78wAAQ==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", "dependencies": { "@babel/regjsgen": "^0.8.0", "regenerate": "^1.4.2", @@ -10664,25 +13442,28 @@ } }, "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.2.tgz", + "integrity": "sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==", "dependencies": { - "rc": "1.2.8" + "@pnpm/npm-conf": "^2.1.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=14" } }, "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-6.0.1.tgz", + "integrity": "sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==", "dependencies": { - "rc": "^1.2.8" + "rc": "1.2.8" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/regjsparser": { @@ -10705,40 +13486,37 @@ } }, "node_modules/rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.0.tgz", + "integrity": "sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==", "dependencies": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" + "@types/hast": "^3.0.0", + "@types/katex": "^0.16.0", + "hast-util-from-html-isomorphic": "^2.0.0", + "hast-util-to-text": "^4.0.0", + "katex": "^0.16.0", + "unist-util-visit-parents": "^6.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "node_modules/rehype-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", + "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", "dependencies": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" + "@types/hast": "^3.0.0", + "hast-util-raw": "^9.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-parse/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, "node_modules/relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", @@ -10747,179 +13525,135 @@ "node": ">= 0.10" } }, - "node_modules/remark-emoji": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", - "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "node_modules/remark-directive": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-directive/-/remark-directive-3.0.0.tgz", + "integrity": "sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==", "dependencies": { - "emoticon": "^3.2.0", - "node-emoji": "^1.10.0", - "unist-util-visit": "^2.0.3" - } - }, - "node_modules/remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "@types/mdast": "^4.0.0", + "mdast-util-directive": "^3.0.0", + "micromark-extension-directive": "^3.0.0", + "unified": "^11.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-math": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", - "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "node_modules/remark-emoji": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-4.0.1.tgz", + "integrity": "sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==", + "dependencies": { + "@types/mdast": "^4.0.2", + "emoticon": "^4.0.1", + "mdast-util-find-and-replace": "^3.0.1", + "node-emoji": "^2.1.0", + "unified": "^11.0.4" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "node_modules/remark-frontmatter": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz", + "integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==", "dependencies": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" + "@types/mdast": "^4.0.0", + "mdast-util-frontmatter": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" + "node_modules/remark-gfm": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", + "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/babel" + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/remark-mdx/node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "node_modules/remark-math": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-6.0.0.tgz", + "integrity": "sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" + "@types/mdast": "^4.0.0", + "mdast-util-math": "^3.0.0", + "micromark-extension-math": "^3.0.0", + "unified": "^11.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "node_modules/remark-mdx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", + "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/remark-mdx/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/remark-mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" + "node_modules/remark-rehype": { + "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==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", "dependencies": { - "mdast-squeeze-paragraphs": "^4.0.0" + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" }, "funding": { "type": "opencollective", @@ -11019,14 +13753,6 @@ "entities": "^2.0.0" } }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "engines": { - "node": ">=0.10" - } - }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -11049,11 +13775,11 @@ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -11064,6 +13790,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==" + }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -11078,11 +13809,17 @@ "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" }, "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz", + "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==", "dependencies": { - "lowercase-keys": "^1.0.0" + "lowercase-keys": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/retry": { @@ -11116,85 +13853,26 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rrweb-snapshot": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/rrweb-snapshot/-/rrweb-snapshot-1.1.14.tgz", - "integrity": "sha512-eP5pirNjP5+GewQfcOQY4uBiDnpqxNRc65yKPW0eSoU1XamDfc4M8oqpXGMyUyvLyxFDB0q0+DChuxxiU2FXBQ==" - }, "node_modules/rtl-detect": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", - "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.1.2.tgz", + "integrity": "sha512-PGMBq03+TTG/p/cRB7HCLKJ1MgDIi07+QU1faSjiYRfmY5UsAttV9Hs08jDAHVwcOwmVLcSJkpwyfXszVjWfIQ==" }, "node_modules/rtlcss": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", - "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.1.1.tgz", + "integrity": "sha512-/oVHgBtnPNcggP2aVXQjSy6N1mMAfHg4GSag0QtZBlD5bdDgAHwr4pydqJGd+SUCu9260+Pjqbjwtvu7EMH1KQ==", "dependencies": { - "find-up": "^5.0.0", + "escalade": "^3.1.1", "picocolors": "^1.0.0", - "postcss": "^8.3.11", + "postcss": "^8.4.21", "strip-json-comments": "^3.1.1" }, "bin": { "rtlcss": "bin/rtlcss.js" - } - }, - "node_modules/rtlcss/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12.0.0" } }, "node_modules/run-parallel": { @@ -11219,14 +13897,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -11252,30 +13922,30 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" }, "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" }, "engines": { - "node": ">= 8.9.0" + "node": ">= 12.13.0" }, "funding": { "type": "opencollective", @@ -11283,9 +13953,9 @@ } }, "node_modules/search-insights": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.8.2.tgz", - "integrity": "sha512-PxA9M5Q2bpBelVvJ3oDZR8nuY00Z6qwOxL53wNpgzV28M/D6u9WUbImDckjLSILBF8F1hn/mgyuUaOPtjow4Qw==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.13.0.tgz", + "integrity": "sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw==", "peer": true }, "node_modules/section-matter": { @@ -11306,10 +13976,11 @@ "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" }, "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dependencies": { + "@types/node-forge": "^1.3.0", "node-forge": "^1" }, "engines": { @@ -11317,12 +13988,9 @@ } }, "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.1.tgz", + "integrity": "sha512-f/vbBsu+fOiYt+lmwZV0rVwJScl46HppnOA1ZvIuBWKOTlllpyJ3bfVax76/OrhCH38dyxoDIA8K7uB963IYgA==", "bin": { "semver": "bin/semver.js" }, @@ -11331,40 +13999,19 @@ } }, "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-4.0.0.tgz", + "integrity": "sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==", "dependencies": { - "semver": "^6.3.0" + "semver": "^7.3.5" }, "engines": { - "node": ">=8" - } - }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" + "node": ">=12" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/send": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", @@ -11415,9 +14062,9 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dependencies": { "randombytes": "^2.1.0" } @@ -11437,6 +14084,25 @@ "range-parser": "1.2.0" } }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serve-handler/node_modules/path-to-regexp": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", @@ -11526,10 +14192,21 @@ "node": ">= 0.8.0" } }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/setprototypeof": { "version": "1.2.0", @@ -11572,9 +14249,9 @@ } }, "node_modules/shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -11596,13 +14273,17 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "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==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -11614,13 +14295,13 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", + "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", "dependencies": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" }, "engines": { "node": ">= 10" @@ -11654,6 +14335,17 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" }, + "node_modules/skin-tone": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/skin-tone/-/skin-tone-2.0.0.tgz", + "integrity": "sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==", + "dependencies": { + "unicode-emoji-modifier-base": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -11662,6 +14354,15 @@ "node": ">=8" } }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", @@ -11673,25 +14374,25 @@ } }, "node_modules/sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz", + "integrity": "sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==", "engines": { "node": ">= 6.3.0" } }, "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "engines": { "node": ">=0.10.0" } @@ -11705,10 +14406,18 @@ "source-map": "^0.6.0" } }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -11747,19 +14456,15 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" - }, - "node_modules/state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "node_modules/srcset": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/srcset/-/srcset-4.0.0.tgz", + "integrity": "sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==", + "engines": { + "node": ">=12" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/statuses": { @@ -11771,9 +14476,9 @@ } }, "node_modules/std-env": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", - "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==" }, "node_modules/string_decoder": { "version": "1.3.0", @@ -11799,6 +14504,27 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "node_modules/string-width/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -11811,9 +14537,9 @@ } }, "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -11824,6 +14550,19 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/stringify-object": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", @@ -11848,6 +14587,19 @@ "node": ">=8" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", @@ -11876,26 +14628,115 @@ } }, "node_modules/style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", + "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", "dependencies": { "inline-style-parser": "0.1.1" } }, "node_modules/stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", + "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/stylehacks/node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/supports-color": { @@ -11926,23 +14767,27 @@ "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" }, "node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", + "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dependencies": { "@trysound/sax": "0.2.0", "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" }, "bin": { "svgo": "bin/svgo" }, "engines": { - "node": ">=10.13.0" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" } }, "node_modules/svgo/node_modules/commander": { @@ -11953,114 +14798,47 @@ "node": ">= 10" } }, - "node_modules/svgo/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/tailwindcss": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.6.tgz", - "integrity": "sha512-BfgQWZrtqowOQMC2bwaSNe7xcIjdDEgixWGYOd6AL0CbKHJlvhfdbINeAW76l1sO+1ov/MJ93ODJ9yluRituIw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz", + "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==", "dev": true, "dependencies": { + "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "detective": "^5.2.1", "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.12", + "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "lilconfig": "^2.0.6", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "object-hash": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.0.9", - "postcss-import": "^14.1.0", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.4", - "postcss-nested": "6.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sucrase": "^3.32.0" }, "bin": { "tailwind": "lib/cli.js", "tailwindcss": "lib/cli.js" }, "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "postcss": "^8.0.9" + "node": ">=14.0.0" } }, "node_modules/tailwindcss-radix": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tailwindcss-radix/-/tailwindcss-radix-2.7.0.tgz", - "integrity": "sha512-fIVkT5zQYdsjT9+/Mvp+DTlJDdTFpRDuyS5+PLuJDAIIVr9+rWYKhK6rsB9QtjwUwwb0YF+BkAJN6CjZivOfLA==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tailwindcss-radix/-/tailwindcss-radix-3.0.3.tgz", + "integrity": "sha512-uueKWJIY98tU4Fip2FTL2eXBqX428e5HBwbu+8rqqJ9H3NuhkcAGS66wNHZjeix56f6nNBhkhMLpQeIrmVxH/w==" }, "node_modules/tailwindcss/node_modules/glob-parent": { "version": "6.0.2", @@ -12074,10 +14852,19 @@ "node": ">=10.13.0" } }, + "node_modules/tailwindcss/node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/tailwindcss/node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -12096,12 +14883,12 @@ } }, "node_modules/terser": { - "version": "5.16.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", - "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", + "version": "5.31.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz", + "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==", "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, @@ -12113,15 +14900,15 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "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==", "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -12145,6 +14932,29 @@ } } }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, "node_modules/terser-webpack-plugin/node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", @@ -12158,10 +14968,15 @@ "node": ">= 10.13.0" } }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dependencies": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -12186,18 +15001,7 @@ "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/terser/node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, "node_modules/terser/node_modules/commander": { @@ -12210,15 +15014,36 @@ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, "node_modules/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==" }, "node_modules/tiny-warning": { "version": "1.0.3", @@ -12233,14 +15058,6 @@ "node": ">=4" } }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "engines": { - "node": ">=6" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -12261,46 +15078,41 @@ } }, "node_modules/totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", "engines": { "node": ">=6" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", - "deprecated": "Use String.prototype.trim() instead" - }, - "node_modules/trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/type-fest": { "version": "2.19.0", @@ -12325,25 +15137,6 @@ "node": ">= 0.6" } }, - "node_modules/type-is/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/type-is/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -12353,15 +15146,15 @@ } }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/typescript-toggle": { @@ -12375,40 +15168,10 @@ "react": ">=16" } }, - "node_modules/ua-parser-js": { - "version": "1.0.36", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.36.tgz", - "integrity": "sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - }, - { - "type": "github", - "url": "https://github.com/sponsors/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dependencies": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", @@ -12418,6 +15181,14 @@ "node": ">=4" } }, + "node_modules/unicode-emoji-modifier-base": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unicode-emoji-modifier-base/-/unicode-emoji-modifier-base-1.0.0.tgz", + "integrity": "sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==", + "engines": { + "node": ">=4" + } + }, "node_modules/unicode-match-property-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", @@ -12447,16 +15218,17 @@ } }, "node_modules/unified": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", - "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", "dependencies": { - "bail": "^1.0.0", + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" }, "funding": { "type": "opencollective", @@ -12464,70 +15236,62 @@ } }, "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", + "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==", "dependencies": { - "crypto-random-string": "^2.0.0" + "crypto-random-string": "^4.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "node": ">=12" + }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", "dependencies": { - "unist-util-is": "^4.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dependencies": { + "@types/unist": "^3.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "node_modules/unist-util-position-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", + "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", "dependencies": { - "unist-util-is": "^4.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -12535,11 +15299,12 @@ } }, "node_modules/unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "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": { - "unist-util-visit": "^2.0.0" + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.0.0" }, "funding": { "type": "opencollective", @@ -12547,11 +15312,11 @@ } }, "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dependencies": { - "@types/unist": "^2.0.2" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -12559,13 +15324,13 @@ } }, "node_modules/unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, "funding": { "type": "opencollective", @@ -12573,12 +15338,12 @@ } }, "node_modules/unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", @@ -12586,9 +15351,9 @@ } }, "node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "engines": { "node": ">= 10.0.0" } @@ -12602,9 +15367,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", + "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", "funding": [ { "type": "opencollective", @@ -12613,132 +15378,91 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "escalade": "^3.1.1", + "escalade": "^3.1.2", "picocolors": "^1.0.0" }, "bin": { - "browserslist-lint": "cli.js" + "update-browserslist-db": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" } }, "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-6.0.2.tgz", + "integrity": "sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==", + "dependencies": { + "boxen": "^7.0.0", + "chalk": "^5.0.1", + "configstore": "^6.0.0", + "has-yarn": "^3.0.0", + "import-lazy": "^4.0.0", + "is-ci": "^3.0.1", "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" + "is-npm": "^6.0.0", + "is-yarn-global": "^0.4.0", + "latest-version": "^7.0.0", + "pupa": "^3.1.0", + "semver": "^7.3.7", + "semver-diff": "^4.0.0", + "xdg-basedir": "^5.1.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/yeoman/update-notifier?sponsor=1" } }, "node_modules/update-notifier/node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-7.1.1.tgz", + "integrity": "sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==", "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" + "ansi-align": "^3.0.1", + "camelcase": "^7.0.1", + "chalk": "^5.2.0", + "cli-boxes": "^3.0.0", + "string-width": "^5.1.2", + "type-fest": "^2.13.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", "engines": { - "node": ">=6" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/update-notifier/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/update-notifier/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/update-notifier/node_modules/camelcase": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", + "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/update-notifier/node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, + "node_modules/update-notifier/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/uri-js": { @@ -12750,9 +15474,9 @@ } }, "node_modules/uri-js/node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "engines": { "node": ">=6" } @@ -12783,29 +15507,38 @@ } } }, - "node_modules/url-loader/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/url-loader/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/url-loader/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dependencies": { - "mime-db": "1.52.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": ">= 0.6" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/url-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" } }, + "node_modules/url-loader/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, "node_modules/url-loader/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dependencies": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -12819,21 +15552,10 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/use-callback-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz", - "integrity": "sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", + "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", "dependencies": { "tslib": "^2.0.0" }, @@ -12850,43 +15572,6 @@ } } }, - "node_modules/use-composed-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", - "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-latest": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", - "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", - "dependencies": { - "use-isomorphic-layout-effect": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/use-sidecar": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", @@ -12908,14 +15593,6 @@ } } }, - "node_modules/use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -12927,9 +15604,9 @@ "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" }, "node_modules/utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", "engines": { "node": ">= 4" } @@ -12964,14 +15641,13 @@ } }, "node_modules/vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", @@ -12979,57 +15655,35 @@ } }, "node_modules/vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", + "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile": "^6.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "node_modules/vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", - "dependencies": { - "axios": "^0.25.0", - "joi": "^17.6.0", - "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" - }, - "bin": { - "wait-on": "bin/wait-on" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/wait-on/node_modules/axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", - "dependencies": { - "follow-redirects": "^1.14.7" - } - }, "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -13047,47 +15701,42 @@ } }, "node_modules/web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, "node_modules/webpack": { - "version": "5.76.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.2.tgz", - "integrity": "sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w==", + "version": "5.91.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz", + "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==", "dependencies": { "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", + "@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-assertions": "^1.7.6", - "browserslist": "^4.14.5", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", + "enhanced-resolve": "^5.16.0", + "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, "bin": { @@ -13107,18 +15756,21 @@ } }, "node_modules/webpack-bundle-analyzer": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.7.0.tgz", - "integrity": "sha512-j9b8ynpJS4K+zfO5GGwsAcQX4ZHpWV+yRiHDiL+bE0XHJ8NiPYLTNVQdlFYWxtpg9lfAQNlwJg16J9AJtFSXRg==", + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", + "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", "dependencies": { + "@discoveryjs/json-ext": "0.5.7", "acorn": "^8.0.4", "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", "commander": "^7.2.0", + "debounce": "^1.2.1", + "escape-string-regexp": "^4.0.0", "gzip-size": "^6.0.0", - "lodash": "^4.17.20", + "html-escaper": "^2.0.2", "opener": "^1.5.2", - "sirv": "^1.0.7", + "picocolors": "^1.0.0", + "sirv": "^2.0.3", "ws": "^7.3.1" }, "bin": { @@ -13128,25 +15780,6 @@ "node": ">= 10.13.0" } }, - "node_modules/webpack-bundle-analyzer/node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/webpack-bundle-analyzer/node_modules/commander": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", @@ -13156,9 +15789,9 @@ } }, "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", "dependencies": { "colorette": "^2.0.10", "memfs": "^3.4.3", @@ -13177,56 +15810,6 @@ "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/webpack-dev-middleware/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/webpack-dev-middleware/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/webpack-dev-middleware/node_modules/range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", @@ -13235,28 +15818,10 @@ "node": ">= 0.6" } }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "version": "4.15.2", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz", + "integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==", "dependencies": { "@types/bonjour": "^3.5.9", "@types/connect-history-api-fallback": "^1.3.5", @@ -13264,7 +15829,7 @@ "@types/serve-index": "^1.9.1", "@types/serve-static": "^1.13.10", "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", + "@types/ws": "^8.5.5", "ansi-html-community": "^0.0.8", "bonjour-service": "^1.0.11", "chokidar": "^3.5.3", @@ -13277,6 +15842,7 @@ "html-entities": "^2.3.2", "http-proxy-middleware": "^2.0.3", "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", "open": "^8.0.9", "p-retry": "^4.5.0", "rimraf": "^3.0.2", @@ -13285,8 +15851,8 @@ "serve-index": "^1.9.1", "sockjs": "^0.3.24", "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" + "webpack-dev-middleware": "^5.3.4", + "ws": "^8.13.0" }, "bin": { "webpack-dev-server": "bin/webpack-dev-server.js" @@ -13302,64 +15868,18 @@ "webpack": "^4.37.0 || ^5.0.0" }, "peerDependenciesMeta": { + "webpack": { + "optional": true + }, "webpack-cli": { "optional": true } } }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.0.tgz", - "integrity": "sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==", + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", + "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", "engines": { "node": ">=10.0.0" }, @@ -13377,11 +15897,12 @@ } }, "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dependencies": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" }, "engines": { @@ -13396,48 +15917,38 @@ "node": ">=10.13.0" } }, - "node_modules/webpack/node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "bin": { - "acorn": "bin/acorn" + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": ">=0.4.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/webpack/node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/webpack/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" + "ajv": "^6.9.1" } }, - "node_modules/webpack/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dependencies": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -13489,15 +16000,6 @@ "node": ">=0.8.0" } }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -13527,9 +16029,9 @@ } }, "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" }, "node_modules/wrap-ansi": { "version": "8.1.0", @@ -13547,6 +16049,44 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -13570,9 +16110,9 @@ } }, "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -13620,11 +16160,14 @@ } }, "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz", + "integrity": "sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/xml-js": { @@ -13638,42 +16181,38 @@ "xml-js": "bin/cli.js" } }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", "engines": { - "node": ">=10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" diff --git a/website/package.json b/website/package.json index b96fdb29d5b8..6f2af57bdf7c 100644 --- a/website/package.json +++ b/website/package.json @@ -16,36 +16,38 @@ "typecheck": "tsc" }, "dependencies": { - "@docusaurus/core": "^2.4.3", - "@docusaurus/plugin-client-redirects": "^2.4.3", - "@docusaurus/plugin-content-docs": "^2.4.3", - "@docusaurus/preset-classic": "^2.4.3", - "@mdx-js/react": "^1.6.22", - "@radix-ui/react-dialog": "^1.0.2", - "@radix-ui/react-popover": "^1.0.3", - "@radix-ui/react-tooltip": "^1.0.5", - "axios": "^1.6.2", - "clsx": "^1.2.1", + "@docusaurus/core": "^3.3.2", + "@docusaurus/plugin-client-redirects": "^3.3.2", + "@docusaurus/plugin-content-docs": "^3.3.2", + "@docusaurus/preset-classic": "^3.3.2", + "@radix-ui/react-dialog": "^1.0.5", + "@radix-ui/react-popover": "^1.0.7", + "@radix-ui/react-tooltip": "^1.0.7", + "axios": "^1.6.8", + "clsx": "^2.1.1", "fuse.js": "^6.6.2", - "hast-util-is-element": "^1.1.0", - "posthog-js": "^1.53.4", - "prism-react-renderer": "^1.3.5", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "react-player": "^2.14.1", - "rehype-katex": "^5.0.0", - "remark-math": "^3.0.1", - "tailwindcss-radix": "^2.7.0", + "hast-util-is-element": "^3.0.0", + "posthog-js": "^1.131.3", + "prism-react-renderer": "^2.3.1", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-player": "^2.16.0", + "rehype-katex": "^7.0.0", + "remark-math": "^6.0.0", + "tailwindcss-radix": "^3.0.3", "typescript-toggle": "^1.1.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^2.4.3", - "@tailwindcss/typography": "^0.5.8", - "@tsconfig/docusaurus": "^1.0.5", - "autoprefixer": "^10.4.13", - "postcss": "^8.4.18", - "tailwindcss": "^3.2.3", - "typescript": "^4.7.4" + "@docusaurus/module-type-aliases": "^3.3.2", + "@docusaurus/tsconfig": "^3.3.2", + "@mdx-js/loader": "^3.0.1", + "@mdx-js/react": "^3.0.1", + "@tailwindcss/typography": "^0.5.13", + "autoprefixer": "^10.4.19", + "postcss": "^8.4.38", + "remark-gfm": "^4.0.0", + "tailwindcss": "^3.4.3", + "typescript": "^5.4.5" }, "browserslist": { "production": [ @@ -60,6 +62,6 @@ ] }, "engines": { - "node": ">=16.14" + "node": ">=18.17" } } diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml deleted file mode 100644 index 7baa20dacee3..000000000000 --- a/website/pnpm-lock.yaml +++ /dev/null @@ -1,9371 +0,0 @@ -lockfileVersion: '6.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -dependencies: - '@docusaurus/core': - specifier: ^2.3.1 - version: 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-client-redirects': - specifier: ^2.3.1 - version: 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-docs': - specifier: ^2.3.1 - version: 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/preset-classic': - specifier: ^2.3.1 - version: 2.4.3(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0)(typescript@4.9.5) - '@mdx-js/react': - specifier: ^1.6.22 - version: 1.6.22(react@17.0.2) - '@radix-ui/react-dialog': - specifier: ^1.0.2 - version: 1.0.5(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-popover': - specifier: ^1.0.3 - version: 1.0.7(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-tooltip': - specifier: ^1.0.5 - version: 1.0.7(react-dom@17.0.2)(react@17.0.2) - clsx: - specifier: ^1.2.1 - version: 1.2.1 - fuse.js: - specifier: ^6.6.2 - version: 6.6.2 - hast-util-is-element: - specifier: ^1.1.0 - version: 1.1.0 - posthog-js: - specifier: ^1.53.4 - version: 1.87.2 - prism-react-renderer: - specifier: ^1.3.5 - version: 1.3.5(react@17.0.2) - react: - specifier: ^17.0.2 - version: 17.0.2 - react-dom: - specifier: ^17.0.2 - version: 17.0.2(react@17.0.2) - rehype-katex: - specifier: ^5.0.0 - version: 5.0.0 - remark-math: - specifier: ^3.0.1 - version: 3.0.1 - tailwindcss-radix: - specifier: ^2.7.0 - version: 2.8.0 - typescript-toggle: - specifier: ^1.1.0 - version: 1.1.0(react@17.0.2) - -devDependencies: - '@docusaurus/module-type-aliases': - specifier: ^2.3.1 - version: 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@tailwindcss/typography': - specifier: ^0.5.8 - version: 0.5.10(tailwindcss@3.3.5) - '@tsconfig/docusaurus': - specifier: ^1.0.5 - version: 1.0.7 - autoprefixer: - specifier: ^10.4.13 - version: 10.4.16(postcss@8.4.31) - postcss: - specifier: ^8.4.18 - version: 8.4.31 - tailwindcss: - specifier: ^3.2.3 - version: 3.3.5 - typescript: - specifier: ^4.7.4 - version: 4.9.5 - -packages: - - /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0): - resolution: {integrity: sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==} - dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0) - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) - transitivePeerDependencies: - - '@algolia/client-search' - - algoliasearch - - search-insights - dev: false - - /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0): - resolution: {integrity: sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==} - peerDependencies: - search-insights: '>= 1 < 3' - dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) - search-insights: 2.9.0 - transitivePeerDependencies: - - '@algolia/client-search' - - algoliasearch - dev: false - - /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): - resolution: {integrity: sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==} - peerDependencies: - '@algolia/client-search': '>= 4.9.1 < 6' - algoliasearch: '>= 4.9.1 < 6' - dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) - '@algolia/client-search': 4.20.0 - algoliasearch: 4.20.0 - dev: false - - /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): - resolution: {integrity: sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==} - peerDependencies: - '@algolia/client-search': '>= 4.9.1 < 6' - algoliasearch: '>= 4.9.1 < 6' - dependencies: - '@algolia/client-search': 4.20.0 - algoliasearch: 4.20.0 - dev: false - - /@algolia/cache-browser-local-storage@4.20.0: - resolution: {integrity: sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ==} - dependencies: - '@algolia/cache-common': 4.20.0 - dev: false - - /@algolia/cache-common@4.20.0: - resolution: {integrity: sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==} - dev: false - - /@algolia/cache-in-memory@4.20.0: - resolution: {integrity: sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg==} - dependencies: - '@algolia/cache-common': 4.20.0 - dev: false - - /@algolia/client-account@4.20.0: - resolution: {integrity: sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q==} - dependencies: - '@algolia/client-common': 4.20.0 - '@algolia/client-search': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /@algolia/client-analytics@4.20.0: - resolution: {integrity: sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug==} - dependencies: - '@algolia/client-common': 4.20.0 - '@algolia/client-search': 4.20.0 - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /@algolia/client-common@4.20.0: - resolution: {integrity: sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==} - dependencies: - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /@algolia/client-personalization@4.20.0: - resolution: {integrity: sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ==} - dependencies: - '@algolia/client-common': 4.20.0 - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /@algolia/client-search@4.20.0: - resolution: {integrity: sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==} - dependencies: - '@algolia/client-common': 4.20.0 - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /@algolia/events@4.0.1: - resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==} - dev: false - - /@algolia/logger-common@4.20.0: - resolution: {integrity: sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==} - dev: false - - /@algolia/logger-console@4.20.0: - resolution: {integrity: sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA==} - dependencies: - '@algolia/logger-common': 4.20.0 - dev: false - - /@algolia/requester-browser-xhr@4.20.0: - resolution: {integrity: sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw==} - dependencies: - '@algolia/requester-common': 4.20.0 - dev: false - - /@algolia/requester-common@4.20.0: - resolution: {integrity: sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==} - dev: false - - /@algolia/requester-node-http@4.20.0: - resolution: {integrity: sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng==} - dependencies: - '@algolia/requester-common': 4.20.0 - dev: false - - /@algolia/transporter@4.20.0: - resolution: {integrity: sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==} - dependencies: - '@algolia/cache-common': 4.20.0 - '@algolia/logger-common': 4.20.0 - '@algolia/requester-common': 4.20.0 - dev: false - - /@alloc/quick-lru@5.2.0: - resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} - engines: {node: '>=10'} - dev: true - - /@ampproject/remapping@2.2.1: - resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 - dev: false - - /@babel/code-frame@7.22.13: - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.22.20 - chalk: 2.4.2 - dev: false - - /@babel/compat-data@7.23.2: - resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/core@7.12.9: - resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.0 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.12.9) - '@babel/helpers': 7.23.2 - '@babel/parser': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - lodash: 4.17.21 - resolve: 1.22.8 - semver: 5.7.2 - source-map: 0.5.7 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/core@7.23.2: - resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.0 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helpers': 7.23.2 - '@babel/parser': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 - convert-source-map: 2.0.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/generator@7.23.0: - resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 - jsesc: 2.5.2 - dev: false - - /@babel/helper-annotate-as-pure@7.22.5: - resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: - resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-compilation-targets@7.22.15: - resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/compat-data': 7.23.2 - '@babel/helper-validator-option': 7.22.15 - browserslist: 4.22.1 - lru-cache: 5.1.1 - semver: 6.3.1 - dev: false - - /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - semver: 6.3.1 - dev: false - - /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - regexpu-core: 5.3.2 - semver: 6.3.1 - dev: false - - /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.2): - resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/helper-environment-visitor@7.22.20: - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-function-name@7.23.0: - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-member-expression-to-functions@7.23.0: - resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-module-imports@7.22.15: - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-module-transforms@7.23.0(@babel/core@7.12.9): - resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - dev: false - - /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - dev: false - - /@babel/helper-optimise-call-expression@7.22.5: - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-plugin-utils@7.10.4: - resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} - dev: false - - /@babel/helper-plugin-utils@7.22.5: - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.2): - resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-wrap-function': 7.22.20 - dev: false - - /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.2): - resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - dev: false - - /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-skip-transparent-expression-wrappers@7.22.5: - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/helper-string-parser@7.22.5: - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-validator-option@7.22.15: - resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} - engines: {node: '>=6.9.0'} - dev: false - - /@babel/helper-wrap-function@7.22.20: - resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.22.15 - '@babel/types': 7.23.0 - dev: false - - /@babel/helpers@7.23.2: - resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/highlight@7.22.20: - resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - dev: false - - /@babel/parser@7.23.0: - resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.23.0 - dev: false - - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.2) - dev: false - - /@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9): - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.12.9) - dev: false - - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2): - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.2): - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.2): - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.2): - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.2): - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-jsx@7.12.1(@babel/core@7.12.9): - resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.2): - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.2): - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.2): - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.2): - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.2): - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.2): - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-async-generator-functions@7.23.2(@babel/core@7.23.2): - resolution: {integrity: sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-block-scoping@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-classes@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) - '@babel/helper-split-export-declaration': 7.22.6 - globals: 11.12.0 - dev: false - - /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.15 - dev: false - - /@babel/plugin-transform-destructuring@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-literals@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-modules-amd@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-modules-commonjs@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - dev: false - - /@babel/plugin-transform-modules-systemjs@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-identifier': 7.22.20 - dev: false - - /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/compat-data': 7.23.2 - '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-optional-chaining@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.12.9): - resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.23.2): - resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-react-constant-elements@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) - '@babel/types': 7.23.0 - dev: false - - /@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.23.2): - resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - regenerator-transform: 0.15.2 - dev: false - - /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-runtime@7.23.2(@babel/core@7.23.2): - resolution: {integrity: sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) - babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) - babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-spread@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: false - - /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-typescript@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.2) - dev: false - - /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.23.2): - resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/preset-env@7.23.2(@babel/core@7.23.2): - resolution: {integrity: sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/compat-data': 7.23.2 - '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.2) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.2) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.2) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-async-generator-functions': 7.23.2(@babel/core@7.23.2) - '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-block-scoping': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-class-static-block': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-destructuring': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-dynamic-import': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-export-namespace-from': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-for-of': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-json-strings': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-logical-assignment-operators': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-modules-amd': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-modules-systemjs': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-nullish-coalescing-operator': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-numeric-separator': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-object-rest-spread': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-optional-catch-binding': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-private-property-in-object': 7.22.11(@babel/core@7.23.2) - '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.23.2) - '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-unicode-escapes': 7.22.10(@babel/core@7.23.2) - '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.23.2) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.2) - '@babel/types': 7.23.0 - babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) - babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) - babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) - core-js-compat: 3.33.1 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.2): - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.0 - esutils: 2.0.3 - dev: false - - /@babel/preset-react@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-Csy1IJ2uEh/PecCBXXoZGAZBeCATTuePzCSB7dLYWS0vOEj6CNpjxIhW4duWwZodBNueH7QO14WbGn8YyeuN9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.23.2) - dev: false - - /@babel/preset-typescript@7.23.2(@babel/core@7.23.2): - resolution: {integrity: sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.2) - dev: false - - /@babel/regjsgen@0.8.0: - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - dev: false - - /@babel/runtime-corejs3@7.23.2: - resolution: {integrity: sha512-54cIh74Z1rp4oIjsHjqN+WM4fMyCBYe+LpZ9jWm51CZ1fbH3SkAzQD/3XLoNkjbJ7YEmjobLXyvQrFypRHOrXw==} - engines: {node: '>=6.9.0'} - dependencies: - core-js-pure: 3.33.1 - regenerator-runtime: 0.14.0 - dev: false - - /@babel/runtime@7.23.2: - resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} - engines: {node: '>=6.9.0'} - dependencies: - regenerator-runtime: 0.14.0 - - /@babel/template@7.22.15: - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.13 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 - dev: false - - /@babel/traverse@7.23.2: - resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.0 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - dev: false - - /@babel/types@7.23.0: - resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.20 - to-fast-properties: 2.0.0 - dev: false - - /@colors/colors@1.5.0: - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} - engines: {node: '>=0.1.90'} - requiresBuild: true - dev: false - optional: true - - /@discoveryjs/json-ext@0.5.7: - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} - dev: false - - /@docsearch/css@3.5.2: - resolution: {integrity: sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==} - dev: false - - /@docsearch/react@3.5.2(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0): - resolution: {integrity: sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==} - peerDependencies: - '@types/react': '>= 16.8.0 < 19.0.0' - react: '>= 16.8.0 < 19.0.0' - react-dom: '>= 16.8.0 < 19.0.0' - search-insights: '>= 1 < 3' - peerDependenciesMeta: - '@types/react': - optional: true - react: - optional: true - react-dom: - optional: true - search-insights: - optional: true - dependencies: - '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0) - '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) - '@docsearch/css': 3.5.2 - algoliasearch: 4.20.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - search-insights: 2.9.0 - transitivePeerDependencies: - - '@algolia/client-search' - dev: false - - /@docusaurus/core@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-dWH5P7cgeNSIg9ufReX6gaCl/TmrGKD38Orbwuz05WPhAQtFXHd5B8Qym1TiXfvUNvwoYKkAJOJuGe8ou0Z7PA==} - engines: {node: '>=16.14'} - hasBin: true - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.23.2(@babel/core@7.23.2) - '@babel/preset-env': 7.23.2(@babel/core@7.23.2) - '@babel/preset-react': 7.22.15(@babel/core@7.23.2) - '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) - '@babel/runtime': 7.23.2 - '@babel/runtime-corejs3': 7.23.2 - '@babel/traverse': 7.23.2 - '@docusaurus/cssnano-preset': 2.4.3 - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - '@slorber/static-site-generator-webpack-plugin': 4.0.7 - '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.16(postcss@8.4.31) - babel-loader: 8.3.0(@babel/core@7.23.2)(webpack@5.89.0) - babel-plugin-dynamic-import-node: 2.3.3 - boxen: 6.2.1 - chalk: 4.1.2 - chokidar: 3.5.3 - clean-css: 5.3.2 - cli-table3: 0.6.3 - combine-promises: 1.2.0 - commander: 5.1.0 - copy-webpack-plugin: 11.0.0(webpack@5.89.0) - core-js: 3.33.1 - css-loader: 6.8.1(webpack@5.89.0) - css-minimizer-webpack-plugin: 4.2.2(clean-css@5.3.2)(webpack@5.89.0) - cssnano: 5.1.15(postcss@8.4.31) - del: 6.1.1 - detect-port: 1.5.1 - escape-html: 1.0.3 - eta: 2.2.0 - file-loader: 6.2.0(webpack@5.89.0) - fs-extra: 10.1.0 - html-minifier-terser: 6.1.0 - html-tags: 3.3.1 - html-webpack-plugin: 5.5.3(webpack@5.89.0) - import-fresh: 3.3.0 - leven: 3.1.0 - lodash: 4.17.21 - mini-css-extract-plugin: 2.7.6(webpack@5.89.0) - postcss: 8.4.31 - postcss-loader: 7.3.3(postcss@8.4.31)(typescript@4.9.5)(webpack@5.89.0) - prompts: 2.4.2 - react: 17.0.2 - react-dev-utils: 12.0.1(typescript@4.9.5)(webpack@5.89.0) - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) - react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.89.0) - react-router: 5.3.4(react@17.0.2) - react-router-config: 5.1.1(react-router@5.3.4)(react@17.0.2) - react-router-dom: 5.3.4(react@17.0.2) - rtl-detect: 1.1.2 - semver: 7.5.4 - serve-handler: 6.1.5 - shelljs: 0.8.5 - terser-webpack-plugin: 5.3.9(webpack@5.89.0) - tslib: 2.6.2 - update-notifier: 5.1.0 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) - wait-on: 6.0.1 - webpack: 5.89.0 - webpack-bundle-analyzer: 4.9.1 - webpack-dev-server: 4.15.1(webpack@5.89.0) - webpack-merge: 5.10.0 - webpackbar: 5.0.2(webpack@5.89.0) - transitivePeerDependencies: - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/cssnano-preset@2.4.3: - resolution: {integrity: sha512-ZvGSRCi7z9wLnZrXNPG6DmVPHdKGd8dIn9pYbEOFiYihfv4uDR3UtxogmKf+rT8ZlKFf5Lqne8E8nt08zNM8CA==} - engines: {node: '>=16.14'} - dependencies: - cssnano-preset-advanced: 5.3.10(postcss@8.4.31) - postcss: 8.4.31 - postcss-sort-media-queries: 4.4.1(postcss@8.4.31) - tslib: 2.6.2 - dev: false - - /@docusaurus/logger@2.4.3: - resolution: {integrity: sha512-Zxws7r3yLufk9xM1zq9ged0YHs65mlRmtsobnFkdZTxWXdTYlWWLWdKyNKAsVC+D7zg+pv2fGbyabdOnyZOM3w==} - engines: {node: '>=16.14'} - dependencies: - chalk: 4.1.2 - tslib: 2.6.2 - dev: false - - /@docusaurus/mdx-loader@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-b1+fDnWtl3GiqkL0BRjYtc94FZrcDDBV1j8446+4tptB9BAOlePwG2p/pK6vGvfL53lkOsszXMghr2g67M0vCw==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@babel/parser': 7.23.0 - '@babel/traverse': 7.23.2 - '@docusaurus/logger': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@mdx-js/mdx': 1.6.22 - escape-html: 1.0.3 - file-loader: 6.2.0(webpack@5.89.0) - fs-extra: 10.1.0 - image-size: 1.0.2 - mdast-util-to-string: 2.0.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - remark-emoji: 2.2.0 - stringify-object: 3.3.0 - tslib: 2.6.2 - unified: 9.2.2 - unist-util-visit: 2.0.3 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) - webpack: 5.89.0 - transitivePeerDependencies: - - '@docusaurus/types' - - '@swc/core' - - esbuild - - supports-color - - uglify-js - - webpack-cli - dev: false - - /@docusaurus/module-type-aliases@2.4.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-cwkBkt1UCiduuvEAo7XZY01dJfRn7UR/75mBgOdb1hKknhrabJZ8YH+7savd/y9kLExPyrhe0QwdS9GuzsRRIA==} - peerDependencies: - react: '*' - react-dom: '*' - dependencies: - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@types/history': 4.7.11 - '@types/react': 18.2.33 - '@types/react-router-config': 5.0.9 - '@types/react-router-dom': 5.3.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack-cli - - /@docusaurus/plugin-client-redirects@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-iCwc/zH8X6eNtLYdyUJFY6+GbsbRgMgvAC/TmSmCYTmwnoN5Y1Bc5OwUkdtoch0XKizotJMRAmGIAhP8sAetdQ==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/logger': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - eta: 2.2.0 - fs-extra: 10.1.0 - lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - transitivePeerDependencies: - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-content-blog@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-PVhypqaA0t98zVDpOeTqWUTvRqCEjJubtfFUQ7zJNYdbYTbS/E/ytq6zbLVsN/dImvemtO/5JQgjLxsh8XLo8Q==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - cheerio: 1.0.0-rc.12 - feed: 4.2.2 - fs-extra: 10.1.0 - lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - reading-time: 1.5.0 - tslib: 2.6.2 - unist-util-visit: 2.0.3 - utility-types: 3.10.0 - webpack: 5.89.0 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-content-docs@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-N7Po2LSH6UejQhzTCsvuX5NOzlC+HiXOVvofnEPj0WhMu1etpLEXE6a4aTxrtg95lQ5kf0xUIdjX9sh3d3G76A==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - '@types/react-router-config': 5.0.9 - combine-promises: 1.2.0 - fs-extra: 10.1.0 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - utility-types: 3.10.0 - webpack: 5.89.0 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-content-pages@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-txtDVz7y3zGk67q0HjG0gRttVPodkHqE0bpJ+7dOaTH40CQFLSh7+aBeGnPOTl+oCPG+hxkim4SndqPqXjQ8Bg==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - webpack: 5.89.0 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-debug@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-LkUbuq3zCmINlFb+gAd4ZvYr+bPAzMC0hwND4F7V9bZ852dCX8YoWyovVUBKq4er1XsOwSQaHmNGtObtn8Av8Q==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-json-view: 1.21.3(react-dom@17.0.2)(react@17.0.2) - tslib: 2.6.2 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - '@types/react' - - bufferutil - - csso - - debug - - encoding - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-google-analytics@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-KzBV3k8lDkWOhg/oYGxlK5o9bOwX7KpPc/FTWoB+SfKhlHfhq7qcQdMi1elAaVEIop8tgK6gD1E58Q+XC6otSQ==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-google-gtag@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-5FMg0rT7sDy4i9AGsvJC71MQrqQZwgLNdDetLEGDHLfSHLvJhQbTCUGbGXknUgWXQJckcV/AILYeJy+HhxeIFA==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-google-tag-manager@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-1jTzp71yDGuQiX9Bi0pVp3alArV0LSnHXempvQTxwCGAEzUWWaBg4d8pocAlTpbP9aULQQqhgzrs8hgTRPOM0A==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/plugin-sitemap@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-LRQYrK1oH1rNfr4YvWBmRzTL0LN9UAPxBbghgeFRBm5yloF6P+zv1tm2pe2hQTX/QP5bSKdnajCvfnScgKXMZQ==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/logger': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - sitemap: 7.1.1 - tslib: 2.6.2 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/preset-classic@2.4.3(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0)(typescript@4.9.5): - resolution: {integrity: sha512-tRyMliepY11Ym6hB1rAFSNGwQDpmszvWYJvlK1E+md4SW8i6ylNHtpZjaYFff9Mdk3i/Pg8ItQq9P0daOJAvQw==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-debug': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-google-analytics': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-google-gtag': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-google-tag-manager': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-sitemap': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-classic': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-search-algolia': 2.4.3(@algolia/client-search@4.20.0)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0)(typescript@4.9.5) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - transitivePeerDependencies: - - '@algolia/client-search' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - '@types/react' - - bufferutil - - csso - - debug - - encoding - - esbuild - - eslint - - lightningcss - - search-insights - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/react-loadable@5.5.2(react@17.0.2): - resolution: {integrity: sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==} - peerDependencies: - react: '*' - dependencies: - '@types/react': 18.2.33 - prop-types: 15.8.1 - react: 17.0.2 - - /@docusaurus/theme-classic@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-QKRAJPSGPfDY2yCiPMIVyr+MqwZCIV2lxNzqbyUW0YkrlmdzzP3WuQJPMGLCjWgQp/5c9kpWMvMxjhpZx1R32Q==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-translations': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - '@mdx-js/react': 1.6.22(react@17.0.2) - clsx: 1.2.1 - copy-text-to-clipboard: 3.2.0 - infima: 0.2.0-alpha.43 - lodash: 4.17.21 - nprogress: 0.2.0 - postcss: 8.4.31 - prism-react-renderer: 1.3.5(react@17.0.2) - prismjs: 1.29.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-router-dom: 5.3.4(react@17.0.2) - rtlcss: 3.5.0 - tslib: 2.6.2 - utility-types: 3.10.0 - transitivePeerDependencies: - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/theme-common@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): - resolution: {integrity: sha512-7KaDJBXKBVGXw5WOVt84FtN8czGWhM0lbyWEZXGp8AFfL6sZQfRTluFp4QriR97qwzSyOfQb+nzcDZZU4tezUw==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@types/history': 4.7.11 - '@types/react': 18.2.33 - '@types/react-router-config': 5.0.9 - clsx: 1.2.1 - parse-numeric-range: 1.3.0 - prism-react-renderer: 1.3.5(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - use-sync-external-store: 1.2.0(react@17.0.2) - utility-types: 3.10.0 - transitivePeerDependencies: - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/theme-search-algolia@2.4.3(@algolia/client-search@4.20.0)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0)(typescript@4.9.5): - resolution: {integrity: sha512-jziq4f6YVUB5hZOB85ELATwnxBz/RmSLD3ksGQOLDPKVzat4pmI8tddNWtriPpxR04BNT+ZfpPUMFkNFetSW1Q==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docsearch/react': 3.5.2(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.9.0) - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/logger': 2.4.3 - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) - '@docusaurus/theme-translations': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - algoliasearch: 4.20.0 - algoliasearch-helper: 3.15.0(algoliasearch@4.20.0) - clsx: 1.2.1 - eta: 2.2.0 - fs-extra: 10.1.0 - lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.2 - utility-types: 3.10.0 - transitivePeerDependencies: - - '@algolia/client-search' - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - '@types/react' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - search-insights - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/theme-translations@2.4.3: - resolution: {integrity: sha512-H4D+lbZbjbKNS/Zw1Lel64PioUAIT3cLYYJLUf3KkuO/oc9e0QCVhIYVtUI2SfBCF2NNdlyhBDQEEMygsCedIg==} - engines: {node: '>=16.14'} - dependencies: - fs-extra: 10.1.0 - tslib: 2.6.2 - dev: false - - /@docusaurus/types@2.4.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-W6zNLGQqfrp/EoPD0bhb9n7OobP+RHpmvVzpA+Z/IuU3Q63njJM24hmT0GYboovWcDtFmnIJC9wcyx4RVPQscw==} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@types/history': 4.7.11 - '@types/react': 18.2.33 - commander: 5.1.0 - joi: 17.11.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) - utility-types: 3.10.0 - webpack: 5.89.0 - webpack-merge: 5.10.0 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack-cli - - /@docusaurus/utils-common@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-/jascp4GbLQCPVmcGkPzEQjNaAk3ADVfMtudk49Ggb+131B1WDD6HqlSmDf8MxGdy7Dja2gc+StHf01kiWoTDQ==} - engines: {node: '>=16.14'} - peerDependencies: - '@docusaurus/types': '*' - peerDependenciesMeta: - '@docusaurus/types': - optional: true - dependencies: - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - tslib: 2.6.2 - dev: false - - /@docusaurus/utils-validation@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-G2+Vt3WR5E/9drAobP+hhZQMaswRwDlp6qOMi7o7ZypB+VO7N//DZWhZEwhcRGepMDJGQEwtPv7UxtYwPL9PBw==} - engines: {node: '>=16.14'} - dependencies: - '@docusaurus/logger': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - joi: 17.11.0 - js-yaml: 4.1.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@docusaurus/types' - - '@swc/core' - - esbuild - - supports-color - - uglify-js - - webpack-cli - dev: false - - /@docusaurus/utils@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-fKcXsjrD86Smxv8Pt0TBFqYieZZCPh4cbf9oszUq/AMhZn3ujwpKaVYZACPX8mmjtYx0JOgNx52CREBfiGQB4A==} - engines: {node: '>=16.14'} - peerDependencies: - '@docusaurus/types': '*' - peerDependenciesMeta: - '@docusaurus/types': - optional: true - dependencies: - '@docusaurus/logger': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@svgr/webpack': 6.5.1 - escape-string-regexp: 4.0.0 - file-loader: 6.2.0(webpack@5.89.0) - fs-extra: 10.1.0 - github-slugger: 1.5.0 - globby: 11.1.0 - gray-matter: 4.0.3 - js-yaml: 4.1.0 - lodash: 4.17.21 - micromatch: 4.0.5 - resolve-pathname: 3.0.0 - shelljs: 0.8.5 - tslib: 2.6.2 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) - webpack: 5.89.0 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - supports-color - - uglify-js - - webpack-cli - dev: false - - /@floating-ui/core@1.5.0: - resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==} - dependencies: - '@floating-ui/utils': 0.1.6 - dev: false - - /@floating-ui/dom@1.5.3: - resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} - dependencies: - '@floating-ui/core': 1.5.0 - '@floating-ui/utils': 0.1.6 - dev: false - - /@floating-ui/react-dom@2.0.2(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-5qhlDvjaLmAst/rKb3VdlCinwTF4EYMiVxuuc/HVUjs46W0zgtbMmAZ1UTsDrRTxRmUEzl92mOtWbeeXL26lSQ==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - dependencies: - '@floating-ui/dom': 1.5.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@floating-ui/utils@0.1.6: - resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} - dev: false - - /@hapi/hoek@9.3.0: - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} - - /@hapi/topo@5.1.0: - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} - dependencies: - '@hapi/hoek': 9.3.0 - - /@jest/schemas@29.6.3: - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@sinclair/typebox': 0.27.8 - dev: false - - /@jest/types@29.6.3: - resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@jest/schemas': 29.6.3 - '@types/istanbul-lib-coverage': 2.0.5 - '@types/istanbul-reports': 3.0.3 - '@types/node': 20.8.9 - '@types/yargs': 17.0.29 - chalk: 4.1.2 - dev: false - - /@jridgewell/gen-mapping@0.3.3: - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.20 - - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - - /@jridgewell/set-array@1.1.2: - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 - - /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - - /@jridgewell/trace-mapping@0.3.20: - resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 - - /@leichtgewicht/ip-codec@2.0.4: - resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} - dev: false - - /@mdx-js/mdx@1.6.22: - resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==} - dependencies: - '@babel/core': 7.12.9 - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - babel-plugin-apply-mdx-type-prop: 1.6.22(@babel/core@7.12.9) - babel-plugin-extract-import-names: 1.6.22 - camelcase-css: 2.0.1 - detab: 2.0.4 - hast-util-raw: 6.0.1 - lodash.uniq: 4.5.0 - mdast-util-to-hast: 10.0.1 - remark-footnotes: 2.0.0 - remark-mdx: 1.6.22 - remark-parse: 8.0.3 - remark-squeeze-paragraphs: 4.0.0 - style-to-object: 0.3.0 - unified: 9.2.0 - unist-builder: 2.0.3 - unist-util-visit: 2.0.3 - transitivePeerDependencies: - - supports-color - dev: false - - /@mdx-js/react@1.6.22(react@17.0.2): - resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==} - peerDependencies: - react: ^16.13.1 || ^17.0.0 - dependencies: - react: 17.0.2 - dev: false - - /@mdx-js/util@1.6.22: - resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} - dev: false - - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - - /@polka/url@1.0.0-next.23: - resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} - dev: false - - /@radix-ui/primitive@1.0.1: - resolution: {integrity: sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==} - dependencies: - '@babel/runtime': 7.23.2 - dev: false - - /@radix-ui/react-arrow@1.0.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-wSP+pHsB/jQRaL6voubsQ/ZlrGBHHrOjmBnr19hxYgtS0WvAFwZhK2WP/YY5yF9uKECCEEDGxuLxq1NBK51wFA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-compose-refs@1.0.1(react@17.0.2): - resolution: {integrity: sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - dev: false - - /@radix-ui/react-context@1.0.1(react@17.0.2): - resolution: {integrity: sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - dev: false - - /@radix-ui/react-dialog@1.0.5(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-context': 1.0.1(react@17.0.2) - '@radix-ui/react-dismissable-layer': 1.0.5(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-focus-guards': 1.0.1(react@17.0.2) - '@radix-ui/react-focus-scope': 1.0.4(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-id': 1.0.1(react@17.0.2) - '@radix-ui/react-portal': 1.0.4(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-presence': 1.0.1(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-slot': 1.0.2(react@17.0.2) - '@radix-ui/react-use-controllable-state': 1.0.1(react@17.0.2) - aria-hidden: 1.2.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-remove-scroll: 2.5.5(react@17.0.2) - dev: false - - /@radix-ui/react-dismissable-layer@1.0.5(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-use-callback-ref': 1.0.1(react@17.0.2) - '@radix-ui/react-use-escape-keydown': 1.0.3(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-focus-guards@1.0.1(react@17.0.2): - resolution: {integrity: sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - dev: false - - /@radix-ui/react-focus-scope@1.0.4(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-use-callback-ref': 1.0.1(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-id@1.0.1(react@17.0.2): - resolution: {integrity: sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-use-layout-effect': 1.0.1(react@17.0.2) - react: 17.0.2 - dev: false - - /@radix-ui/react-popover@1.0.7(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-shtvVnlsxT6faMnK/a7n0wptwBD23xc1Z5mdrtKLwVEfsEMXodS0r5s0/g5P0hX//EKYZS2sxUjqfzlg52ZSnQ==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-context': 1.0.1(react@17.0.2) - '@radix-ui/react-dismissable-layer': 1.0.5(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-focus-guards': 1.0.1(react@17.0.2) - '@radix-ui/react-focus-scope': 1.0.4(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-id': 1.0.1(react@17.0.2) - '@radix-ui/react-popper': 1.1.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-portal': 1.0.4(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-presence': 1.0.1(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-slot': 1.0.2(react@17.0.2) - '@radix-ui/react-use-controllable-state': 1.0.1(react@17.0.2) - aria-hidden: 1.2.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-remove-scroll: 2.5.5(react@17.0.2) - dev: false - - /@radix-ui/react-popper@1.1.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-cKpopj/5RHZWjrbF2846jBNacjQVwkP068DfmgrNJXpvVWrOvlAmE9xSiy5OqeE+Gi8D9fP+oDhUnPqNMY8/5w==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@floating-ui/react-dom': 2.0.2(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-arrow': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-context': 1.0.1(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-use-callback-ref': 1.0.1(react@17.0.2) - '@radix-ui/react-use-layout-effect': 1.0.1(react@17.0.2) - '@radix-ui/react-use-rect': 1.0.1(react@17.0.2) - '@radix-ui/react-use-size': 1.0.1(react@17.0.2) - '@radix-ui/rect': 1.0.1 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-portal@1.0.4(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-presence@1.0.1(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-use-layout-effect': 1.0.1(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-primitive@1.0.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-slot': 1.0.2(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-slot@1.0.2(react@17.0.2): - resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - react: 17.0.2 - dev: false - - /@radix-ui/react-tooltip@1.0.7(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-lPh5iKNFVQ/jav/j6ZrWq3blfDJ0OH9R6FlNUHPMqdLuQ9vwDgFsRxvl8b7Asuy5c8xmoojHUxKHQSOAvMHxyw==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(react@17.0.2) - '@radix-ui/react-context': 1.0.1(react@17.0.2) - '@radix-ui/react-dismissable-layer': 1.0.5(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-id': 1.0.1(react@17.0.2) - '@radix-ui/react-popper': 1.1.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-portal': 1.0.4(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-presence': 1.0.1(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - '@radix-ui/react-slot': 1.0.2(react@17.0.2) - '@radix-ui/react-use-controllable-state': 1.0.1(react@17.0.2) - '@radix-ui/react-visually-hidden': 1.0.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/react-use-callback-ref@1.0.1(react@17.0.2): - resolution: {integrity: sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - dev: false - - /@radix-ui/react-use-controllable-state@1.0.1(react@17.0.2): - resolution: {integrity: sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-use-callback-ref': 1.0.1(react@17.0.2) - react: 17.0.2 - dev: false - - /@radix-ui/react-use-escape-keydown@1.0.3(react@17.0.2): - resolution: {integrity: sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-use-callback-ref': 1.0.1(react@17.0.2) - react: 17.0.2 - dev: false - - /@radix-ui/react-use-layout-effect@1.0.1(react@17.0.2): - resolution: {integrity: sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - dev: false - - /@radix-ui/react-use-rect@1.0.1(react@17.0.2): - resolution: {integrity: sha512-Cq5DLuSiuYVKNU8orzJMbl15TXilTnJKUCltMVQg53BQOF1/C5toAaGrowkgksdBQ9H+SRL23g0HDmg9tvmxXw==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/rect': 1.0.1 - react: 17.0.2 - dev: false - - /@radix-ui/react-use-size@1.0.1(react@17.0.2): - resolution: {integrity: sha512-ibay+VqrgcaI6veAojjofPATwledXiSmX+C0KrBk/xgpX9rBzPV3OsfwlhQdUOFbh+LKQorLYT+xTXW9V8yd0g==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-use-layout-effect': 1.0.1(react@17.0.2) - react: 17.0.2 - dev: false - - /@radix-ui/react-visually-hidden@1.0.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-D4w41yN5YRKtu464TLnByKzMDG/JlMPHtfZgQAu9v6mNakUqGUI9vUrfQKz8NK41VMm/xbZbh76NUTVtIYqOMA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - dependencies: - '@babel/runtime': 7.23.2 - '@radix-ui/react-primitive': 1.0.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - dev: false - - /@radix-ui/rect@1.0.1: - resolution: {integrity: sha512-fyrgCaedtvMg9NK3en0pnOYJdtfwxUcNolezkNPUsoX57X8oQk+NkqcvzHXD2uKNij6GXmWU9NDru2IWjrO4BQ==} - dependencies: - '@babel/runtime': 7.23.2 - dev: false - - /@sideway/address@4.1.4: - resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==} - dependencies: - '@hapi/hoek': 9.3.0 - - /@sideway/formula@3.0.1: - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} - - /@sideway/pinpoint@2.0.0: - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} - - /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - dev: false - - /@sindresorhus/is@0.14.0: - resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} - engines: {node: '>=6'} - dev: false - - /@slorber/static-site-generator-webpack-plugin@4.0.7: - resolution: {integrity: sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==} - engines: {node: '>=14'} - dependencies: - eval: 0.1.8 - p-map: 4.0.0 - webpack-sources: 3.2.3 - dev: false - - /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.2): - resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.2): - resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} - engines: {node: '>=12'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - dev: false - - /@svgr/babel-preset@6.5.1(@babel/core@7.23.2): - resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.23.2) - '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.2) - '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.2) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.23.2) - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.23.2) - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.23.2) - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.23.2) - '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.23.2) - dev: false - - /@svgr/core@6.5.1: - resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} - engines: {node: '>=10'} - dependencies: - '@babel/core': 7.23.2 - '@svgr/babel-preset': 6.5.1(@babel/core@7.23.2) - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - camelcase: 6.3.0 - cosmiconfig: 7.1.0 - transitivePeerDependencies: - - supports-color - dev: false - - /@svgr/hast-util-to-babel-ast@6.5.1: - resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} - engines: {node: '>=10'} - dependencies: - '@babel/types': 7.23.0 - entities: 4.5.0 - dev: false - - /@svgr/plugin-jsx@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': ^6.0.0 - dependencies: - '@babel/core': 7.23.2 - '@svgr/babel-preset': 6.5.1(@babel/core@7.23.2) - '@svgr/core': 6.5.1 - '@svgr/hast-util-to-babel-ast': 6.5.1 - svg-parser: 2.0.4 - transitivePeerDependencies: - - supports-color - dev: false - - /@svgr/plugin-svgo@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': '*' - dependencies: - '@svgr/core': 6.5.1 - cosmiconfig: 7.1.0 - deepmerge: 4.3.1 - svgo: 2.8.0 - dev: false - - /@svgr/webpack@6.5.1: - resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} - engines: {node: '>=10'} - dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-transform-react-constant-elements': 7.22.5(@babel/core@7.23.2) - '@babel/preset-env': 7.23.2(@babel/core@7.23.2) - '@babel/preset-react': 7.22.15(@babel/core@7.23.2) - '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) - '@svgr/core': 6.5.1 - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) - transitivePeerDependencies: - - supports-color - dev: false - - /@szmarczak/http-timer@1.1.2: - resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} - engines: {node: '>=6'} - dependencies: - defer-to-connect: 1.1.3 - dev: false - - /@tailwindcss/typography@0.5.10(tailwindcss@3.3.5): - resolution: {integrity: sha512-Pe8BuPJQJd3FfRnm6H0ulKIGoMEQS+Vq01R6M5aCrFB/ccR/shT+0kXLjouGC1gFLm9hopTFN+DMP0pfwRWzPw==} - peerDependencies: - tailwindcss: '>=3.0.0 || insiders' - dependencies: - lodash.castarray: 4.4.0 - lodash.isplainobject: 4.0.6 - lodash.merge: 4.6.2 - postcss-selector-parser: 6.0.10 - tailwindcss: 3.3.5 - dev: true - - /@trysound/sax@0.2.0: - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - dev: false - - /@tsconfig/docusaurus@1.0.7: - resolution: {integrity: sha512-ffTXxGIP/IRMCjuzHd6M4/HdIrw1bMfC7Bv8hMkTadnePkpe0lG0oDSdbRpSDZb2rQMAgpbWiR10BvxvNYwYrg==} - dev: true - - /@types/body-parser@1.19.4: - resolution: {integrity: sha512-N7UDG0/xiPQa2D/XrVJXjkWbpqHCd2sBaB32ggRF2l83RhPfamgKGF8gwwqyksS95qUS5ZYF9aF+lLPRlwI2UA==} - dependencies: - '@types/connect': 3.4.37 - '@types/node': 20.8.9 - dev: false - - /@types/bonjour@3.5.12: - resolution: {integrity: sha512-ky0kWSqXVxSqgqJvPIkgFkcn4C8MnRog308Ou8xBBIVo39OmUFy+jqNe0nPwLCDFxUpmT9EvT91YzOJgkDRcFg==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/connect-history-api-fallback@1.5.2: - resolution: {integrity: sha512-gX2j9x+NzSh4zOhnRPSdPPmTepS4DfxES0AvIFv3jGv5QyeAJf6u6dY5/BAoAJU9Qq1uTvwOku8SSC2GnCRl6Q==} - dependencies: - '@types/express-serve-static-core': 4.17.39 - '@types/node': 20.8.9 - dev: false - - /@types/connect@3.4.37: - resolution: {integrity: sha512-zBUSRqkfZ59OcwXon4HVxhx5oWCJmc0OtBTK05M+p0dYjgN6iTwIL2T/WbsQZrEsdnwaF9cWQ+azOnpPvIqY3Q==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/eslint-scope@3.7.6: - resolution: {integrity: sha512-zfM4ipmxVKWdxtDaJ3MP3pBurDXOCoyjvlpE3u6Qzrmw4BPbfm4/ambIeTk/r/J0iq/+2/xp0Fmt+gFvXJY2PQ==} - dependencies: - '@types/eslint': 8.44.6 - '@types/estree': 1.0.3 - - /@types/eslint@8.44.6: - resolution: {integrity: sha512-P6bY56TVmX8y9J87jHNgQh43h6VVU+6H7oN7hgvivV81K2XY8qJZ5vqPy/HdUoVIelii2kChYVzQanlswPWVFw==} - dependencies: - '@types/estree': 1.0.3 - '@types/json-schema': 7.0.14 - - /@types/estree@1.0.3: - resolution: {integrity: sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ==} - - /@types/express-serve-static-core@4.17.39: - resolution: {integrity: sha512-BiEUfAiGCOllomsRAZOiMFP7LAnrifHpt56pc4Z7l9K6ACyN06Ns1JLMBxwkfLOjJRlSf06NwWsT7yzfpaVpyQ==} - dependencies: - '@types/node': 20.8.9 - '@types/qs': 6.9.9 - '@types/range-parser': 1.2.6 - '@types/send': 0.17.3 - dev: false - - /@types/express@4.17.20: - resolution: {integrity: sha512-rOaqlkgEvOW495xErXMsmyX3WKBInbhG5eqojXYi3cGUaLoRDlXa5d52fkfWZT963AZ3v2eZ4MbKE6WpDAGVsw==} - dependencies: - '@types/body-parser': 1.19.4 - '@types/express-serve-static-core': 4.17.39 - '@types/qs': 6.9.9 - '@types/serve-static': 1.15.4 - dev: false - - /@types/hast@2.3.7: - resolution: {integrity: sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==} - dependencies: - '@types/unist': 2.0.9 - dev: false - - /@types/history@4.7.11: - resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} - - /@types/html-minifier-terser@6.1.0: - resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} - dev: false - - /@types/http-errors@2.0.3: - resolution: {integrity: sha512-pP0P/9BnCj1OVvQR2lF41EkDG/lWWnDyA203b/4Fmi2eTyORnBtcDoKDwjWQthELrBvWkMOrvSOnZ8OVlW6tXA==} - dev: false - - /@types/http-proxy@1.17.13: - resolution: {integrity: sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/istanbul-lib-coverage@2.0.5: - resolution: {integrity: sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==} - dev: false - - /@types/istanbul-lib-report@3.0.2: - resolution: {integrity: sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==} - dependencies: - '@types/istanbul-lib-coverage': 2.0.5 - dev: false - - /@types/istanbul-reports@3.0.3: - resolution: {integrity: sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==} - dependencies: - '@types/istanbul-lib-report': 3.0.2 - dev: false - - /@types/json-schema@7.0.14: - resolution: {integrity: sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==} - - /@types/katex@0.11.1: - resolution: {integrity: sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==} - dev: false - - /@types/keyv@3.1.4: - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/mdast@3.0.14: - resolution: {integrity: sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==} - dependencies: - '@types/unist': 2.0.9 - dev: false - - /@types/mime@1.3.4: - resolution: {integrity: sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw==} - dev: false - - /@types/mime@3.0.3: - resolution: {integrity: sha512-i8MBln35l856k5iOhKk2XJ4SeAWg75mLIpZB4v6imOagKL6twsukBZGDMNhdOVk7yRFTMPpfILocMos59Q1otQ==} - dev: false - - /@types/node-forge@1.3.8: - resolution: {integrity: sha512-vGXshY9vim9CJjrpcS5raqSjEfKlJcWy2HNdgUasR66fAnVEYarrf1ULV4nfvpC1nZq/moA9qyqBcu83x+Jlrg==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/node@17.0.45: - resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - dev: false - - /@types/node@20.8.9: - resolution: {integrity: sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==} - dependencies: - undici-types: 5.26.5 - - /@types/parse-json@4.0.1: - resolution: {integrity: sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==} - dev: false - - /@types/parse5@5.0.3: - resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} - dev: false - - /@types/prop-types@15.7.9: - resolution: {integrity: sha512-n1yyPsugYNSmHgxDFjicaI2+gCNjsBck8UX9kuofAKlc0h1bL+20oSF72KeNaW2DUlesbEVCFgyV2dPGTiY42g==} - - /@types/qs@6.9.9: - resolution: {integrity: sha512-wYLxw35euwqGvTDx6zfY1vokBFnsK0HNrzc6xNHchxfO2hpuRg74GbkEW7e3sSmPvj0TjCDT1VCa6OtHXnubsg==} - dev: false - - /@types/range-parser@1.2.6: - resolution: {integrity: sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA==} - dev: false - - /@types/react-router-config@5.0.9: - resolution: {integrity: sha512-a7zOj9yVUtM3Ns5stoseQAAsmppNxZpXDv6tZiFV5qlRmV4W96u53on1vApBX1eRSc8mrFOiB54Hc0Pk1J8GFg==} - dependencies: - '@types/history': 4.7.11 - '@types/react': 18.2.33 - '@types/react-router': 5.1.20 - - /@types/react-router-dom@5.3.3: - resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} - dependencies: - '@types/history': 4.7.11 - '@types/react': 18.2.33 - '@types/react-router': 5.1.20 - - /@types/react-router@5.1.20: - resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} - dependencies: - '@types/history': 4.7.11 - '@types/react': 18.2.33 - - /@types/react@18.2.33: - resolution: {integrity: sha512-v+I7S+hu3PIBoVkKGpSYYpiBT1ijqEzWpzQD62/jm4K74hPpSP7FF9BnKG6+fg2+62weJYkkBWDJlZt5JO/9hg==} - dependencies: - '@types/prop-types': 15.7.9 - '@types/scheduler': 0.16.5 - csstype: 3.1.2 - - /@types/responselike@1.0.2: - resolution: {integrity: sha512-/4YQT5Kp6HxUDb4yhRkm0bJ7TbjvTddqX7PZ5hz6qV3pxSo72f/6YPRo+Mu2DU307tm9IioO69l7uAwn5XNcFA==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/retry@0.12.0: - resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} - dev: false - - /@types/sax@1.2.6: - resolution: {integrity: sha512-A1mpYCYu1aHFayy8XKN57ebXeAbh9oQIZ1wXcno6b1ESUAfMBDMx7mf/QGlYwcMRaFryh9YBuH03i/3FlPGDkQ==} - dependencies: - '@types/node': 17.0.45 - dev: false - - /@types/scheduler@0.16.5: - resolution: {integrity: sha512-s/FPdYRmZR8SjLWGMCuax7r3qCWQw9QKHzXVukAuuIJkXkDRwp+Pu5LMIVFi0Fxbav35WURicYr8u1QsoybnQw==} - - /@types/send@0.17.3: - resolution: {integrity: sha512-/7fKxvKUoETxjFUsuFlPB9YndePpxxRAOfGC/yJdc9kTjTeP5kRCTzfnE8kPUKCeyiyIZu0YQ76s50hCedI1ug==} - dependencies: - '@types/mime': 1.3.4 - '@types/node': 20.8.9 - dev: false - - /@types/serve-index@1.9.3: - resolution: {integrity: sha512-4KG+yMEuvDPRrYq5fyVm/I2uqAJSAwZK9VSa+Zf+zUq9/oxSSvy3kkIqyL+jjStv6UCVi8/Aho0NHtB1Fwosrg==} - dependencies: - '@types/express': 4.17.20 - dev: false - - /@types/serve-static@1.15.4: - resolution: {integrity: sha512-aqqNfs1XTF0HDrFdlY//+SGUxmdSUbjeRXb5iaZc3x0/vMbYmdw9qvOgHWOyyLFxSSRnUuP5+724zBgfw8/WAw==} - dependencies: - '@types/http-errors': 2.0.3 - '@types/mime': 3.0.3 - '@types/node': 20.8.9 - dev: false - - /@types/sockjs@0.3.35: - resolution: {integrity: sha512-tIF57KB+ZvOBpAQwSaACfEu7htponHXaFzP7RfKYgsOS0NoYnn+9+jzp7bbq4fWerizI3dTB4NfAZoyeQKWJLw==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/unist@2.0.9: - resolution: {integrity: sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==} - dev: false - - /@types/ws@8.5.8: - resolution: {integrity: sha512-flUksGIQCnJd6sZ1l5dqCEG/ksaoAg/eUwiLAGTJQcfgvZJKF++Ta4bJA6A5aPSJmsr+xlseHn4KLgVlNnvPTg==} - dependencies: - '@types/node': 20.8.9 - dev: false - - /@types/yargs-parser@21.0.2: - resolution: {integrity: sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==} - dev: false - - /@types/yargs@17.0.29: - resolution: {integrity: sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==} - dependencies: - '@types/yargs-parser': 21.0.2 - dev: false - - /@webassemblyjs/ast@1.11.6: - resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} - dependencies: - '@webassemblyjs/helper-numbers': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - - /@webassemblyjs/floating-point-hex-parser@1.11.6: - resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} - - /@webassemblyjs/helper-api-error@1.11.6: - resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} - - /@webassemblyjs/helper-buffer@1.11.6: - resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} - - /@webassemblyjs/helper-numbers@1.11.6: - resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} - dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.6 - '@webassemblyjs/helper-api-error': 1.11.6 - '@xtuc/long': 4.2.2 - - /@webassemblyjs/helper-wasm-bytecode@1.11.6: - resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} - - /@webassemblyjs/helper-wasm-section@1.11.6: - resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - - /@webassemblyjs/ieee754@1.11.6: - resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} - dependencies: - '@xtuc/ieee754': 1.2.0 - - /@webassemblyjs/leb128@1.11.6: - resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} - dependencies: - '@xtuc/long': 4.2.2 - - /@webassemblyjs/utf8@1.11.6: - resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} - - /@webassemblyjs/wasm-edit@1.11.6: - resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/helper-wasm-section': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-opt': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - '@webassemblyjs/wast-printer': 1.11.6 - - /@webassemblyjs/wasm-gen@1.11.6: - resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} - dependencies: - '@webassemblyjs/ast': 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/wasm-opt@1.11.6: - resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - - /@webassemblyjs/wasm-parser@1.11.6: - resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@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/wast-printer@1.11.6: - resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@xtuc/long': 4.2.2 - - /@xtuc/ieee754@1.2.0: - resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - - /@xtuc/long@4.2.2: - resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - - /accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - dev: false - - /acorn-import-assertions@1.9.0(acorn@8.11.2): - resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} - peerDependencies: - acorn: ^8 - dependencies: - acorn: 8.11.2 - - /acorn-walk@8.3.0: - resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} - engines: {node: '>=0.4.0'} - dev: false - - /acorn@8.11.2: - resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} - engines: {node: '>=0.4.0'} - hasBin: true - - /address@1.2.2: - resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==} - engines: {node: '>= 10.0.0'} - dev: false - - /aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} - dependencies: - clean-stack: 2.2.0 - indent-string: 4.0.0 - dev: false - - /ajv-formats@2.1.1(ajv@8.12.0): - resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - dependencies: - ajv: 8.12.0 - dev: false - - /ajv-keywords@3.5.2(ajv@6.12.6): - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} - peerDependencies: - ajv: ^6.9.1 - dependencies: - ajv: 6.12.6 - - /ajv-keywords@5.1.0(ajv@8.12.0): - resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} - peerDependencies: - ajv: ^8.8.2 - dependencies: - ajv: 8.12.0 - fast-deep-equal: 3.1.3 - dev: false - - /ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - /ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - dev: false - - /algoliasearch-helper@3.15.0(algoliasearch@4.20.0): - resolution: {integrity: sha512-DGUnK3TGtDQsaUE4ayF/LjSN0DGsuYThB8WBgnnDY0Wq04K6lNVruO3LfqJOgSfDiezp+Iyt8Tj4YKHi+/ivSA==} - peerDependencies: - algoliasearch: '>= 3.1 < 6' - dependencies: - '@algolia/events': 4.0.1 - algoliasearch: 4.20.0 - dev: false - - /algoliasearch@4.20.0: - resolution: {integrity: sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g==} - dependencies: - '@algolia/cache-browser-local-storage': 4.20.0 - '@algolia/cache-common': 4.20.0 - '@algolia/cache-in-memory': 4.20.0 - '@algolia/client-account': 4.20.0 - '@algolia/client-analytics': 4.20.0 - '@algolia/client-common': 4.20.0 - '@algolia/client-personalization': 4.20.0 - '@algolia/client-search': 4.20.0 - '@algolia/logger-common': 4.20.0 - '@algolia/logger-console': 4.20.0 - '@algolia/requester-browser-xhr': 4.20.0 - '@algolia/requester-common': 4.20.0 - '@algolia/requester-node-http': 4.20.0 - '@algolia/transporter': 4.20.0 - dev: false - - /ansi-align@3.0.1: - resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} - dependencies: - string-width: 4.2.3 - dev: false - - /ansi-html-community@0.0.8: - resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} - engines: {'0': node >= 0.8.0} - hasBin: true - dev: false - - /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: false - - /ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - dev: false - - /ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - dependencies: - color-convert: 1.9.3 - dev: false - - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - dependencies: - color-convert: 2.0.1 - dev: false - - /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - dev: false - - /any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - dev: true - - /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - /arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - - /argparse@1.0.10: - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} - dependencies: - sprintf-js: 1.0.3 - dev: false - - /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - dev: false - - /aria-hidden@1.2.3: - resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} - engines: {node: '>=10'} - dependencies: - tslib: 2.6.2 - dev: false - - /array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - dev: false - - /array-flatten@2.1.2: - resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==} - dev: false - - /array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - dev: false - - /asap@2.0.6: - resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} - dev: false - - /at-least-node@1.0.0: - resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} - engines: {node: '>= 4.0.0'} - dev: false - - /autoprefixer@10.4.16(postcss@8.4.31): - resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - dependencies: - browserslist: 4.22.1 - caniuse-lite: 1.0.30001554 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.0.0 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - /axios@0.25.0: - resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} - dependencies: - follow-redirects: 1.15.3 - transitivePeerDependencies: - - debug - dev: false - - /babel-loader@8.3.0(@babel/core@7.23.2)(webpack@5.89.0): - resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} - engines: {node: '>= 8.9'} - peerDependencies: - '@babel/core': ^7.0.0 - webpack: '>=2' - dependencies: - '@babel/core': 7.23.2 - find-cache-dir: 3.3.2 - loader-utils: 2.0.4 - make-dir: 3.1.0 - schema-utils: 2.7.1 - webpack: 5.89.0 - dev: false - - /babel-plugin-apply-mdx-type-prop@1.6.22(@babel/core@7.12.9): - resolution: {integrity: sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==} - peerDependencies: - '@babel/core': ^7.11.6 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@mdx-js/util': 1.6.22 - dev: false - - /babel-plugin-dynamic-import-node@2.3.3: - resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==} - dependencies: - object.assign: 4.1.4 - dev: false - - /babel-plugin-extract-import-names@1.6.22: - resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==} - dependencies: - '@babel/helper-plugin-utils': 7.10.4 - dev: false - - /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.2): - resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/compat-data': 7.23.2 - '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - dev: false - - /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.2): - resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) - core-js-compat: 3.33.1 - transitivePeerDependencies: - - supports-color - dev: false - - /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.2): - resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) - transitivePeerDependencies: - - supports-color - dev: false - - /bail@1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} - dev: false - - /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - /base16@1.0.0: - resolution: {integrity: sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==} - dev: false - - /batch@0.6.1: - resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==} - dev: false - - /big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - dev: false - - /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - - /body-parser@1.20.1: - resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.11.0 - raw-body: 2.5.1 - type-is: 1.6.18 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - dev: false - - /bonjour-service@1.1.1: - resolution: {integrity: sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==} - dependencies: - array-flatten: 2.1.2 - dns-equal: 1.0.0 - fast-deep-equal: 3.1.3 - multicast-dns: 7.2.5 - dev: false - - /boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - dev: false - - /boxen@5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 - dev: false - - /boxen@6.2.1: - resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 3.0.0 - string-width: 5.1.2 - type-fest: 2.19.0 - widest-line: 4.0.1 - wrap-ansi: 8.1.0 - dev: false - - /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - dependencies: - fill-range: 7.0.1 - - /browserslist@4.22.1: - resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001554 - electron-to-chromium: 1.4.568 - node-releases: 2.0.13 - update-browserslist-db: 1.0.13(browserslist@4.22.1) - - /buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - /bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} - dev: false - - /bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - dev: false - - /cacheable-request@6.1.0: - resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} - engines: {node: '>=8'} - dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 - http-cache-semantics: 4.1.1 - keyv: 3.1.0 - lowercase-keys: 2.0.0 - normalize-url: 4.5.1 - responselike: 1.0.2 - dev: false - - /call-bind@1.0.5: - resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} - dependencies: - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - set-function-length: 1.1.1 - dev: false - - /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - dev: false - - /camel-case@4.1.2: - resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} - dependencies: - pascal-case: 3.1.2 - tslib: 2.6.2 - dev: false - - /camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - - /camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - dev: false - - /caniuse-api@3.0.0: - resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - dependencies: - browserslist: 4.22.1 - caniuse-lite: 1.0.30001554 - lodash.memoize: 4.1.2 - lodash.uniq: 4.5.0 - dev: false - - /caniuse-lite@1.0.30001554: - resolution: {integrity: sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ==} - - /ccount@1.1.0: - resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} - dev: false - - /chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - dev: false - - /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - dev: false - - /character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} - dev: false - - /character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} - dev: false - - /character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} - dev: false - - /cheerio-select@2.1.0: - resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} - dependencies: - boolbase: 1.0.0 - css-select: 5.1.0 - css-what: 6.1.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - dev: false - - /cheerio@1.0.0-rc.12: - resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} - engines: {node: '>= 6'} - dependencies: - cheerio-select: 2.1.0 - dom-serializer: 2.0.0 - domhandler: 5.0.3 - domutils: 3.1.0 - htmlparser2: 8.0.2 - parse5: 7.1.2 - parse5-htmlparser2-tree-adapter: 7.0.0 - dev: false - - /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - - /chrome-trace-event@1.0.3: - resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} - engines: {node: '>=6.0'} - - /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - dev: false - - /ci-info@3.9.0: - resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} - engines: {node: '>=8'} - dev: false - - /clean-css@5.3.2: - resolution: {integrity: sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==} - engines: {node: '>= 10.0'} - dependencies: - source-map: 0.6.1 - dev: false - - /clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - dev: false - - /cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - dev: false - - /cli-boxes@3.0.0: - resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} - engines: {node: '>=10'} - dev: false - - /cli-table3@0.6.3: - resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} - engines: {node: 10.* || >= 12.*} - dependencies: - string-width: 4.2.3 - optionalDependencies: - '@colors/colors': 1.5.0 - dev: false - - /clone-deep@4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - - /clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - dependencies: - mimic-response: 1.0.1 - dev: false - - /clsx@1.2.1: - resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} - engines: {node: '>=6'} - dev: false - - /collapse-white-space@1.0.6: - resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==} - dev: false - - /color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - dependencies: - color-name: 1.1.3 - dev: false - - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - dependencies: - color-name: 1.1.4 - dev: false - - /color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: false - - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - dev: false - - /colord@2.9.3: - resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} - dev: false - - /colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - dev: false - - /combine-promises@1.2.0: - resolution: {integrity: sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==} - engines: {node: '>=10'} - dev: false - - /comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} - dev: false - - /commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - - /commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - dev: true - - /commander@5.1.0: - resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} - engines: {node: '>= 6'} - - /commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - dev: false - - /commander@8.3.0: - resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} - engines: {node: '>= 12'} - dev: false - - /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - dev: false - - /compressible@2.0.18: - resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.52.0 - dev: false - - /compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} - engines: {node: '>= 0.8.0'} - dependencies: - accepts: 1.3.8 - bytes: 3.0.0 - compressible: 2.0.18 - debug: 2.6.9 - on-headers: 1.0.2 - safe-buffer: 5.1.2 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - /configstore@5.0.1: - resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} - engines: {node: '>=8'} - dependencies: - dot-prop: 5.3.0 - graceful-fs: 4.2.11 - make-dir: 3.1.0 - unique-string: 2.0.0 - write-file-atomic: 3.0.3 - xdg-basedir: 4.0.0 - dev: false - - /connect-history-api-fallback@2.0.0: - resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} - engines: {node: '>=0.8'} - dev: false - - /consola@2.15.3: - resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} - dev: false - - /content-disposition@0.5.2: - resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==} - engines: {node: '>= 0.6'} - dev: false - - /content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - dependencies: - safe-buffer: 5.2.1 - dev: false - - /content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - dev: false - - /convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - dev: false - - /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: false - - /cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - dev: false - - /cookie@0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} - engines: {node: '>= 0.6'} - dev: false - - /copy-text-to-clipboard@3.2.0: - resolution: {integrity: sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==} - engines: {node: '>=12'} - dev: false - - /copy-webpack-plugin@11.0.0(webpack@5.89.0): - resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==} - engines: {node: '>= 14.15.0'} - peerDependencies: - webpack: ^5.1.0 - dependencies: - fast-glob: 3.3.1 - glob-parent: 6.0.2 - globby: 13.2.2 - normalize-path: 3.0.0 - schema-utils: 4.2.0 - serialize-javascript: 6.0.1 - webpack: 5.89.0 - dev: false - - /core-js-compat@3.33.1: - resolution: {integrity: sha512-6pYKNOgD/j/bkC5xS5IIg6bncid3rfrI42oBH1SQJbsmYPKF7rhzcFzYCcxYMmNQQ0rCEB8WqpW7QHndOggaeQ==} - dependencies: - browserslist: 4.22.1 - dev: false - - /core-js-pure@3.33.1: - resolution: {integrity: sha512-wCXGbLjnsP10PlK/thHSQlOLlLKNEkaWbTzVvHHZ79fZNeN1gUmw2gBlpItxPv/pvqldevEXFh/d5stdNvl6EQ==} - requiresBuild: true - dev: false - - /core-js@3.33.1: - resolution: {integrity: sha512-qVSq3s+d4+GsqN0teRCJtM6tdEEXyWxjzbhVrCHmBS5ZTM0FS2MOS0D13dUXAWDUN6a+lHI/N1hF9Ytz6iLl9Q==} - requiresBuild: true - dev: false - - /core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - dev: false - - /cosmiconfig@6.0.0: - resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} - engines: {node: '>=8'} - dependencies: - '@types/parse-json': 4.0.1 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - dev: false - - /cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - dependencies: - '@types/parse-json': 4.0.1 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - dev: false - - /cosmiconfig@8.3.6(typescript@4.9.5): - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - typescript: 4.9.5 - dev: false - - /cross-fetch@3.1.8: - resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} - dependencies: - node-fetch: 2.7.0 - transitivePeerDependencies: - - encoding - dev: false - - /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - dev: false - - /crypto-random-string@2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} - dev: false - - /css-declaration-sorter@6.4.1(postcss@8.4.31): - resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} - engines: {node: ^10 || ^12 || >=14} - peerDependencies: - postcss: ^8.0.9 - dependencies: - postcss: 8.4.31 - dev: false - - /css-loader@6.8.1(webpack@5.89.0): - resolution: {integrity: sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^5.0.0 - dependencies: - icss-utils: 5.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.31) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.31) - postcss-modules-scope: 3.0.0(postcss@8.4.31) - postcss-modules-values: 4.0.0(postcss@8.4.31) - postcss-value-parser: 4.2.0 - semver: 7.5.4 - webpack: 5.89.0 - dev: false - - /css-minimizer-webpack-plugin@4.2.2(clean-css@5.3.2)(webpack@5.89.0): - resolution: {integrity: sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==} - engines: {node: '>= 14.15.0'} - peerDependencies: - '@parcel/css': '*' - '@swc/css': '*' - clean-css: '*' - csso: '*' - esbuild: '*' - lightningcss: '*' - webpack: ^5.0.0 - peerDependenciesMeta: - '@parcel/css': - optional: true - '@swc/css': - optional: true - clean-css: - optional: true - csso: - optional: true - esbuild: - optional: true - lightningcss: - optional: true - dependencies: - clean-css: 5.3.2 - cssnano: 5.1.15(postcss@8.4.31) - jest-worker: 29.7.0 - postcss: 8.4.31 - schema-utils: 4.2.0 - serialize-javascript: 6.0.1 - source-map: 0.6.1 - webpack: 5.89.0 - dev: false - - /css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - dev: false - - /css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 5.0.3 - domutils: 3.1.0 - nth-check: 2.1.1 - dev: false - - /css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - dev: false - - /css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - dev: false - - /cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - /cssnano-preset-advanced@5.3.10(postcss@8.4.31): - resolution: {integrity: sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - autoprefixer: 10.4.16(postcss@8.4.31) - cssnano-preset-default: 5.2.14(postcss@8.4.31) - postcss: 8.4.31 - postcss-discard-unused: 5.1.0(postcss@8.4.31) - postcss-merge-idents: 5.1.1(postcss@8.4.31) - postcss-reduce-idents: 5.2.0(postcss@8.4.31) - postcss-zindex: 5.1.0(postcss@8.4.31) - dev: false - - /cssnano-preset-default@5.2.14(postcss@8.4.31): - resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - css-declaration-sorter: 6.4.1(postcss@8.4.31) - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-calc: 8.2.4(postcss@8.4.31) - postcss-colormin: 5.3.1(postcss@8.4.31) - postcss-convert-values: 5.1.3(postcss@8.4.31) - postcss-discard-comments: 5.1.2(postcss@8.4.31) - postcss-discard-duplicates: 5.1.0(postcss@8.4.31) - postcss-discard-empty: 5.1.1(postcss@8.4.31) - postcss-discard-overridden: 5.1.0(postcss@8.4.31) - postcss-merge-longhand: 5.1.7(postcss@8.4.31) - postcss-merge-rules: 5.1.4(postcss@8.4.31) - postcss-minify-font-values: 5.1.0(postcss@8.4.31) - postcss-minify-gradients: 5.1.1(postcss@8.4.31) - postcss-minify-params: 5.1.4(postcss@8.4.31) - postcss-minify-selectors: 5.2.1(postcss@8.4.31) - postcss-normalize-charset: 5.1.0(postcss@8.4.31) - postcss-normalize-display-values: 5.1.0(postcss@8.4.31) - postcss-normalize-positions: 5.1.1(postcss@8.4.31) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.31) - postcss-normalize-string: 5.1.0(postcss@8.4.31) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.31) - postcss-normalize-unicode: 5.1.1(postcss@8.4.31) - postcss-normalize-url: 5.1.0(postcss@8.4.31) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.31) - postcss-ordered-values: 5.1.3(postcss@8.4.31) - postcss-reduce-initial: 5.1.2(postcss@8.4.31) - postcss-reduce-transforms: 5.1.0(postcss@8.4.31) - postcss-svgo: 5.1.0(postcss@8.4.31) - postcss-unique-selectors: 5.1.1(postcss@8.4.31) - dev: false - - /cssnano-utils@3.1.0(postcss@8.4.31): - resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /cssnano@5.1.15(postcss@8.4.31): - resolution: {integrity: sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - cssnano-preset-default: 5.2.14(postcss@8.4.31) - lilconfig: 2.1.0 - postcss: 8.4.31 - yaml: 1.10.2 - dev: false - - /csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} - dependencies: - css-tree: 1.1.3 - dev: false - - /csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - - /debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.0.0 - dev: false - - /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.2 - dev: false - - /decompress-response@3.3.0: - resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} - engines: {node: '>=4'} - dependencies: - mimic-response: 1.0.1 - dev: false - - /deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - dev: false - - /deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - dev: false - - /default-gateway@6.0.3: - resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==} - engines: {node: '>= 10'} - dependencies: - execa: 5.1.1 - dev: false - - /defer-to-connect@1.1.3: - resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} - dev: false - - /define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.2 - gopd: 1.0.1 - has-property-descriptors: 1.0.1 - dev: false - - /define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - dev: false - - /define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.1 - has-property-descriptors: 1.0.1 - object-keys: 1.1.1 - dev: false - - /del@6.1.1: - resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} - engines: {node: '>=10'} - dependencies: - globby: 11.1.0 - graceful-fs: 4.2.11 - is-glob: 4.0.3 - is-path-cwd: 2.2.0 - is-path-inside: 3.0.3 - p-map: 4.0.0 - rimraf: 3.0.2 - slash: 3.0.0 - dev: false - - /depd@1.1.2: - resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} - engines: {node: '>= 0.6'} - dev: false - - /depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - dev: false - - /destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - dev: false - - /detab@2.0.4: - resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==} - dependencies: - repeat-string: 1.6.1 - dev: false - - /detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - dev: false - - /detect-node@2.1.0: - resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} - dev: false - - /detect-port-alt@1.1.6: - resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==} - engines: {node: '>= 4.2.1'} - hasBin: true - dependencies: - address: 1.2.2 - debug: 2.6.9 - transitivePeerDependencies: - - supports-color - dev: false - - /detect-port@1.5.1: - resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==} - hasBin: true - dependencies: - address: 1.2.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - dev: false - - /didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - dev: true - - /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - dependencies: - path-type: 4.0.0 - dev: false - - /dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - dev: true - - /dns-equal@1.0.0: - resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==} - dev: false - - /dns-packet@5.6.1: - resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} - engines: {node: '>=6'} - dependencies: - '@leichtgewicht/ip-codec': 2.0.4 - dev: false - - /dom-converter@0.2.0: - resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==} - dependencies: - utila: 0.4.0 - dev: false - - /dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 - dev: false - - /dom-serializer@2.0.0: - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - entities: 4.5.0 - dev: false - - /domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - dev: false - - /domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} - engines: {node: '>= 4'} - dependencies: - domelementtype: 2.3.0 - dev: false - - /domhandler@5.0.3: - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} - engines: {node: '>= 4'} - dependencies: - domelementtype: 2.3.0 - dev: false - - /domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - dependencies: - dom-serializer: 1.4.1 - domelementtype: 2.3.0 - domhandler: 4.3.1 - dev: false - - /domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} - dependencies: - dom-serializer: 2.0.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - dev: false - - /dot-case@3.0.4: - resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} - dependencies: - no-case: 3.0.4 - tslib: 2.6.2 - dev: false - - /dot-prop@5.3.0: - resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} - engines: {node: '>=8'} - dependencies: - is-obj: 2.0.0 - dev: false - - /duplexer3@0.1.5: - resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} - dev: false - - /duplexer@0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} - dev: false - - /eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: false - - /ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - dev: false - - /electron-to-chromium@1.4.568: - resolution: {integrity: sha512-3TCOv8+BY6Ltpt1/CmGBMups2IdKOyfEmz4J8yIS4xLSeMm0Rf+psSaxLuswG9qMKt+XbNbmADybtXGpTFlbDg==} - - /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - dev: false - - /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - dev: false - - /emojis-list@3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - dev: false - - /emoticon@3.2.0: - resolution: {integrity: sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==} - dev: false - - /encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - dev: false - - /end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - dependencies: - once: 1.4.0 - dev: false - - /enhanced-resolve@5.15.0: - resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} - engines: {node: '>=10.13.0'} - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - - /entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} - dev: false - - /entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - dev: false - - /error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - dependencies: - is-arrayish: 0.2.1 - dev: false - - /es-module-lexer@1.3.1: - resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==} - - /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - /escape-goat@2.1.1: - resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} - engines: {node: '>=8'} - dev: false - - /escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - dev: false - - /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - dev: false - - /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - dev: false - - /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - - /esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - dev: false - - /esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - dependencies: - estraverse: 5.3.0 - - /estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - - /estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - /esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - dev: false - - /eta@2.2.0: - resolution: {integrity: sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==} - engines: {node: '>=6.0.0'} - dev: false - - /etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - dev: false - - /eval@0.1.8: - resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} - engines: {node: '>= 0.8'} - dependencies: - '@types/node': 20.8.9 - require-like: 0.1.2 - dev: false - - /eventemitter3@4.0.7: - resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} - dev: false - - /events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} - - /execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - dev: false - - /express@4.18.2: - resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} - engines: {node: '>= 0.10.0'} - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookie: 0.5.0 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - finalhandler: 1.2.0 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.1 - methods: 1.1.2 - on-finished: 2.4.1 - parseurl: 1.3.3 - path-to-regexp: 0.1.7 - proxy-addr: 2.0.7 - qs: 6.11.0 - range-parser: 1.2.1 - safe-buffer: 5.2.1 - send: 0.18.0 - serve-static: 1.15.0 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: 1.6.18 - utils-merge: 1.0.1 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - dev: false - - /extend-shallow@2.0.1: - resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} - engines: {node: '>=0.10.0'} - dependencies: - is-extendable: 0.1.1 - dev: false - - /extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - dev: false - - /fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - /fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - - /fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - /fast-url-parser@1.1.3: - resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} - dependencies: - punycode: 1.4.1 - dev: false - - /fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - dependencies: - reusify: 1.0.4 - - /faye-websocket@0.11.4: - resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==} - engines: {node: '>=0.8.0'} - dependencies: - websocket-driver: 0.7.4 - dev: false - - /fbemitter@3.0.0: - resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==} - dependencies: - fbjs: 3.0.5 - transitivePeerDependencies: - - encoding - dev: false - - /fbjs-css-vars@1.0.2: - resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} - dev: false - - /fbjs@3.0.5: - resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==} - dependencies: - cross-fetch: 3.1.8 - fbjs-css-vars: 1.0.2 - loose-envify: 1.4.0 - object-assign: 4.1.1 - promise: 7.3.1 - setimmediate: 1.0.5 - ua-parser-js: 1.0.37 - transitivePeerDependencies: - - encoding - dev: false - - /feed@4.2.2: - resolution: {integrity: sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==} - engines: {node: '>=0.4.0'} - dependencies: - xml-js: 1.6.11 - dev: false - - /fflate@0.4.8: - resolution: {integrity: sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==} - dev: false - - /file-loader@6.2.0(webpack@5.89.0): - resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - dependencies: - loader-utils: 2.0.4 - schema-utils: 3.3.0 - webpack: 5.89.0 - dev: false - - /filesize@8.0.7: - resolution: {integrity: sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==} - engines: {node: '>= 0.4.0'} - dev: false - - /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - dependencies: - to-regex-range: 5.0.1 - - /finalhandler@1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} - engines: {node: '>= 0.8'} - dependencies: - debug: 2.6.9 - encodeurl: 1.0.2 - escape-html: 1.0.3 - on-finished: 2.4.1 - parseurl: 1.3.3 - statuses: 2.0.1 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - dev: false - - /find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - dev: false - - /find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - dependencies: - locate-path: 3.0.0 - dev: false - - /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - dev: false - - /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - dev: false - - /flat@5.0.2: - resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} - hasBin: true - - /flux@4.0.4(react@17.0.2): - resolution: {integrity: sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==} - peerDependencies: - react: ^15.0.2 || ^16.0.0 || ^17.0.0 - dependencies: - fbemitter: 3.0.0 - fbjs: 3.0.5 - react: 17.0.2 - transitivePeerDependencies: - - encoding - dev: false - - /follow-redirects@1.15.3: - resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - dev: false - - /fork-ts-checker-webpack-plugin@6.5.3(typescript@4.9.5)(webpack@5.89.0): - resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==} - engines: {node: '>=10', yarn: '>=1.0.0'} - peerDependencies: - eslint: '>= 6' - typescript: '>= 2.7' - vue-template-compiler: '*' - webpack: '>= 4' - peerDependenciesMeta: - eslint: - optional: true - vue-template-compiler: - optional: true - dependencies: - '@babel/code-frame': 7.22.13 - '@types/json-schema': 7.0.14 - chalk: 4.1.2 - chokidar: 3.5.3 - cosmiconfig: 6.0.0 - deepmerge: 4.3.1 - fs-extra: 9.1.0 - glob: 7.2.3 - memfs: 3.5.3 - minimatch: 3.1.2 - schema-utils: 2.7.0 - semver: 7.5.4 - tapable: 1.1.3 - typescript: 4.9.5 - webpack: 5.89.0 - dev: false - - /forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - dev: false - - /fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - - /fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - dev: false - - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - dev: false - - /fs-extra@9.1.0: - resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} - engines: {node: '>=10'} - dependencies: - at-least-node: 1.0.0 - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - dev: false - - /fs-monkey@1.0.5: - resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==} - dev: false - - /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - optional: true - - /function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - /fuse.js@6.6.2: - resolution: {integrity: sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==} - engines: {node: '>=10'} - dev: false - - /gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - dev: false - - /get-intrinsic@1.2.2: - resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} - dependencies: - function-bind: 1.1.2 - has-proto: 1.0.1 - has-symbols: 1.0.3 - hasown: 2.0.0 - dev: false - - /get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - dev: false - - /get-own-enumerable-property-symbols@3.0.2: - resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} - dev: false - - /get-stream@4.1.0: - resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} - engines: {node: '>=6'} - dependencies: - pump: 3.0.0 - dev: false - - /get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: false - - /get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - dev: false - - /github-slugger@1.5.0: - resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} - dev: false - - /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - dependencies: - is-glob: 4.0.3 - - /glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - dependencies: - is-glob: 4.0.3 - - /glob-to-regexp@0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - - /glob@7.1.6: - resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - - /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: false - - /global-dirs@3.0.1: - resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} - engines: {node: '>=10'} - dependencies: - ini: 2.0.0 - dev: false - - /global-modules@2.0.0: - resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} - engines: {node: '>=6'} - dependencies: - global-prefix: 3.0.0 - dev: false - - /global-prefix@3.0.0: - resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} - engines: {node: '>=6'} - dependencies: - ini: 1.3.8 - kind-of: 6.0.3 - which: 1.3.1 - dev: false - - /globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - dev: false - - /globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.1 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 3.0.0 - dev: false - - /globby@13.2.2: - resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - dir-glob: 3.0.1 - fast-glob: 3.3.1 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 - dev: false - - /gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - dependencies: - get-intrinsic: 1.2.2 - dev: false - - /got@9.6.0: - resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} - engines: {node: '>=8.6'} - dependencies: - '@sindresorhus/is': 0.14.0 - '@szmarczak/http-timer': 1.1.2 - '@types/keyv': 3.1.4 - '@types/responselike': 1.0.2 - cacheable-request: 6.1.0 - decompress-response: 3.3.0 - duplexer3: 0.1.5 - get-stream: 4.1.0 - lowercase-keys: 1.0.1 - mimic-response: 1.0.1 - p-cancelable: 1.1.0 - to-readable-stream: 1.0.0 - url-parse-lax: 3.0.0 - dev: false - - /graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - /gray-matter@4.0.3: - resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} - engines: {node: '>=6.0'} - dependencies: - js-yaml: 3.14.1 - kind-of: 6.0.3 - section-matter: 1.0.0 - strip-bom-string: 1.0.0 - dev: false - - /gzip-size@6.0.0: - resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} - engines: {node: '>=10'} - dependencies: - duplexer: 0.1.2 - dev: false - - /handle-thing@2.0.1: - resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==} - dev: false - - /has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - dev: false - - /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - /has-property-descriptors@1.0.1: - resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} - dependencies: - get-intrinsic: 1.2.2 - dev: false - - /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - dev: false - - /has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - dev: false - - /has-yarn@2.1.0: - resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} - engines: {node: '>=8'} - dev: false - - /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} - dependencies: - function-bind: 1.1.2 - - /hast-to-hyperscript@9.0.1: - resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==} - dependencies: - '@types/unist': 2.0.9 - comma-separated-tokens: 1.0.8 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - style-to-object: 0.3.0 - unist-util-is: 4.1.0 - web-namespaces: 1.1.4 - dev: false - - /hast-util-from-parse5@6.0.1: - resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} - dependencies: - '@types/parse5': 5.0.3 - hastscript: 6.0.0 - property-information: 5.6.0 - vfile: 4.2.1 - vfile-location: 3.2.0 - web-namespaces: 1.1.4 - dev: false - - /hast-util-is-element@1.1.0: - resolution: {integrity: sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==} - dev: false - - /hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} - dev: false - - /hast-util-raw@6.0.1: - resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==} - dependencies: - '@types/hast': 2.3.7 - hast-util-from-parse5: 6.0.1 - hast-util-to-parse5: 6.0.0 - html-void-elements: 1.0.5 - parse5: 6.0.1 - unist-util-position: 3.1.0 - vfile: 4.2.1 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 - dev: false - - /hast-util-to-parse5@6.0.0: - resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==} - dependencies: - hast-to-hyperscript: 9.0.1 - property-information: 5.6.0 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 - dev: false - - /hast-util-to-text@2.0.1: - resolution: {integrity: sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==} - dependencies: - hast-util-is-element: 1.1.0 - repeat-string: 1.6.1 - unist-util-find-after: 3.0.0 - dev: false - - /hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} - dependencies: - '@types/hast': 2.3.7 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - dev: false - - /he@1.2.0: - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} - hasBin: true - dev: false - - /history@4.10.1: - resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==} - dependencies: - '@babel/runtime': 7.23.2 - loose-envify: 1.4.0 - resolve-pathname: 3.0.0 - tiny-invariant: 1.3.1 - tiny-warning: 1.0.3 - value-equal: 1.0.1 - dev: false - - /hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - dependencies: - react-is: 16.13.1 - dev: false - - /hpack.js@2.1.6: - resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==} - dependencies: - inherits: 2.0.4 - obuf: 1.1.2 - readable-stream: 2.3.8 - wbuf: 1.7.3 - dev: false - - /html-entities@2.4.0: - resolution: {integrity: sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==} - dev: false - - /html-minifier-terser@6.1.0: - resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==} - engines: {node: '>=12'} - hasBin: true - dependencies: - camel-case: 4.1.2 - clean-css: 5.3.2 - commander: 8.3.0 - he: 1.2.0 - param-case: 3.0.4 - relateurl: 0.2.7 - terser: 5.22.0 - dev: false - - /html-tags@3.3.1: - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} - engines: {node: '>=8'} - dev: false - - /html-void-elements@1.0.5: - resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==} - dev: false - - /html-webpack-plugin@5.5.3(webpack@5.89.0): - resolution: {integrity: sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==} - engines: {node: '>=10.13.0'} - peerDependencies: - webpack: ^5.20.0 - dependencies: - '@types/html-minifier-terser': 6.1.0 - html-minifier-terser: 6.1.0 - lodash: 4.17.21 - pretty-error: 4.0.0 - tapable: 2.2.1 - webpack: 5.89.0 - dev: false - - /htmlparser2@6.1.0: - resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - entities: 2.2.0 - dev: false - - /htmlparser2@8.0.2: - resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - entities: 4.5.0 - dev: false - - /http-cache-semantics@4.1.1: - resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} - dev: false - - /http-deceiver@1.2.7: - resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==} - dev: false - - /http-errors@1.6.3: - resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==} - engines: {node: '>= 0.6'} - dependencies: - depd: 1.1.2 - inherits: 2.0.3 - setprototypeof: 1.1.0 - statuses: 1.5.0 - dev: false - - /http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - dev: false - - /http-parser-js@0.5.8: - resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} - dev: false - - /http-proxy-middleware@2.0.6(@types/express@4.17.20): - resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} - engines: {node: '>=12.0.0'} - peerDependencies: - '@types/express': ^4.17.13 - peerDependenciesMeta: - '@types/express': - optional: true - dependencies: - '@types/express': 4.17.20 - '@types/http-proxy': 1.17.13 - http-proxy: 1.18.1 - is-glob: 4.0.3 - is-plain-obj: 3.0.0 - micromatch: 4.0.5 - transitivePeerDependencies: - - debug - dev: false - - /http-proxy@1.18.1: - resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} - engines: {node: '>=8.0.0'} - dependencies: - eventemitter3: 4.0.7 - follow-redirects: 1.15.3 - requires-port: 1.0.0 - transitivePeerDependencies: - - debug - dev: false - - /human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - dev: false - - /iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - dependencies: - safer-buffer: 2.1.2 - dev: false - - /icss-utils@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - dependencies: - postcss: 8.4.31 - dev: false - - /ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - dev: false - - /image-size@1.0.2: - resolution: {integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==} - engines: {node: '>=14.0.0'} - hasBin: true - dependencies: - queue: 6.0.2 - dev: false - - /immer@9.0.21: - resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} - dev: false - - /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - dev: false - - /import-lazy@2.1.0: - resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} - engines: {node: '>=4'} - dev: false - - /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - dev: false - - /indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - dev: false - - /infima@0.2.0-alpha.43: - resolution: {integrity: sha512-2uw57LvUqW0rK/SWYnd/2rRfxNA5DDNOh33jxF7fy46VWoNhGxiUQyVZHbBMjQ33mQem0cjdDVwgWVAmlRfgyQ==} - engines: {node: '>=12'} - dev: false - - /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - /inherits@2.0.3: - resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} - dev: false - - /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - /ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - dev: false - - /ini@2.0.0: - resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==} - engines: {node: '>=10'} - dev: false - - /inline-style-parser@0.1.1: - resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - dev: false - - /interpret@1.4.0: - resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} - engines: {node: '>= 0.10'} - dev: false - - /invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - dependencies: - loose-envify: 1.4.0 - - /ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - dev: false - - /ipaddr.js@2.1.0: - resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==} - engines: {node: '>= 10'} - dev: false - - /is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} - dev: false - - /is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} - dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - dev: false - - /is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - dev: false - - /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - dependencies: - binary-extensions: 2.2.0 - - /is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - dev: false - - /is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} - hasBin: true - dependencies: - ci-info: 2.0.0 - dev: false - - /is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} - dependencies: - hasown: 2.0.0 - - /is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} - dev: false - - /is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - dev: false - - /is-extendable@0.1.1: - resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} - engines: {node: '>=0.10.0'} - dev: false - - /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - dev: false - - /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 2.1.1 - - /is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} - dev: false - - /is-installed-globally@0.4.0: - resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} - engines: {node: '>=10'} - dependencies: - global-dirs: 3.0.1 - is-path-inside: 3.0.3 - dev: false - - /is-npm@5.0.0: - resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} - engines: {node: '>=10'} - dev: false - - /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - /is-obj@1.0.1: - resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==} - engines: {node: '>=0.10.0'} - dev: false - - /is-obj@2.0.0: - resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} - engines: {node: '>=8'} - dev: false - - /is-path-cwd@2.2.0: - resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} - engines: {node: '>=6'} - dev: false - - /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - dev: false - - /is-plain-obj@2.1.0: - resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} - engines: {node: '>=8'} - dev: false - - /is-plain-obj@3.0.0: - resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} - engines: {node: '>=10'} - dev: false - - /is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} - dependencies: - isobject: 3.0.1 - - /is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} - dev: false - - /is-regexp@1.0.0: - resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} - engines: {node: '>=0.10.0'} - dev: false - - /is-root@2.1.0: - resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==} - engines: {node: '>=6'} - dev: false - - /is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - dev: false - - /is-typedarray@1.0.0: - resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} - dev: false - - /is-whitespace-character@1.0.4: - resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} - dev: false - - /is-word-character@1.0.4: - resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} - dev: false - - /is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - dependencies: - is-docker: 2.2.1 - dev: false - - /is-yarn-global@0.3.0: - resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} - dev: false - - /isarray@0.0.1: - resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - dev: false - - /isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - dev: false - - /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - dev: false - - /isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} - - /jest-util@29.7.0: - resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@jest/types': 29.6.3 - '@types/node': 20.8.9 - chalk: 4.1.2 - ci-info: 3.9.0 - graceful-fs: 4.2.11 - picomatch: 2.3.1 - dev: false - - /jest-worker@27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} - dependencies: - '@types/node': 20.8.9 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - /jest-worker@29.7.0: - resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@types/node': 20.8.9 - jest-util: 29.7.0 - merge-stream: 2.0.0 - supports-color: 8.1.1 - dev: false - - /jiti@1.20.0: - resolution: {integrity: sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==} - hasBin: true - - /joi@17.11.0: - resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} - dependencies: - '@hapi/hoek': 9.3.0 - '@hapi/topo': 5.1.0 - '@sideway/address': 4.1.4 - '@sideway/formula': 3.0.1 - '@sideway/pinpoint': 2.0.0 - - /js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - /js-yaml@3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} - hasBin: true - dependencies: - argparse: 1.0.10 - esprima: 4.0.1 - dev: false - - /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - dependencies: - argparse: 2.0.1 - dev: false - - /jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - dev: false - - /jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - dev: false - - /json-buffer@3.0.0: - resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} - dev: false - - /json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - /json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - /json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - dev: false - - /json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - dev: false - - /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - dependencies: - universalify: 2.0.0 - optionalDependencies: - graceful-fs: 4.2.11 - dev: false - - /katex@0.13.24: - resolution: {integrity: sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==} - hasBin: true - dependencies: - commander: 8.3.0 - dev: false - - /keyv@3.1.0: - resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} - dependencies: - json-buffer: 3.0.0 - dev: false - - /kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - - /kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - dev: false - - /latest-version@5.1.0: - resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} - engines: {node: '>=8'} - dependencies: - package-json: 6.5.0 - dev: false - - /launch-editor@2.6.1: - resolution: {integrity: sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==} - dependencies: - picocolors: 1.0.0 - shell-quote: 1.8.1 - dev: false - - /leven@3.1.0: - resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} - engines: {node: '>=6'} - dev: false - - /lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - /lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - /loader-runner@4.3.0: - resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} - engines: {node: '>=6.11.5'} - - /loader-utils@2.0.4: - resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} - engines: {node: '>=8.9.0'} - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 2.2.3 - dev: false - - /loader-utils@3.2.1: - resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} - engines: {node: '>= 12.13.0'} - dev: false - - /locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - dev: false - - /locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - dependencies: - p-locate: 4.1.0 - dev: false - - /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - dependencies: - p-locate: 5.0.0 - dev: false - - /lodash.castarray@4.4.0: - resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} - dev: true - - /lodash.curry@4.1.1: - resolution: {integrity: sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==} - dev: false - - /lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - dev: false - - /lodash.escape@4.0.1: - resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==} - dev: false - - /lodash.flatten@4.4.0: - resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} - dev: false - - /lodash.flow@3.5.0: - resolution: {integrity: sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==} - dev: false - - /lodash.invokemap@4.6.0: - resolution: {integrity: sha512-CfkycNtMqgUlfjfdh2BhKO/ZXrP8ePOX5lEU/g0R3ItJcnuxWDwokMGKx1hWcfOikmyOVx6X9IwWnDGlgKl61w==} - dev: false - - /lodash.isplainobject@4.0.6: - resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} - dev: true - - /lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - dev: false - - /lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - dev: true - - /lodash.pullall@4.2.0: - resolution: {integrity: sha512-VhqxBKH0ZxPpLhiu68YD1KnHmbhQJQctcipvmFnqIBDYzcIHzf3Zpu0tpeOKtR4x76p9yohc506eGdOjTmyIBg==} - dev: false - - /lodash.uniq@4.5.0: - resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} - dev: false - - /lodash.uniqby@4.7.0: - resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} - dev: false - - /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: false - - /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - dependencies: - js-tokens: 4.0.0 - - /lower-case@2.0.2: - resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - dependencies: - tslib: 2.6.2 - dev: false - - /lowercase-keys@1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} - dev: false - - /lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} - dev: false - - /lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - dependencies: - yallist: 3.1.1 - dev: false - - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - dependencies: - yallist: 4.0.0 - dev: false - - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 - dev: false - - /markdown-escapes@1.0.4: - resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} - dev: false - - /mdast-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==} - dependencies: - unist-util-remove: 2.1.0 - dev: false - - /mdast-util-definitions@4.0.0: - resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} - dependencies: - unist-util-visit: 2.0.3 - dev: false - - /mdast-util-to-hast@10.0.1: - resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==} - dependencies: - '@types/mdast': 3.0.14 - '@types/unist': 2.0.9 - mdast-util-definitions: 4.0.0 - mdurl: 1.0.1 - unist-builder: 2.0.3 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 - dev: false - - /mdast-util-to-string@2.0.0: - resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} - dev: false - - /mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - dev: false - - /mdurl@1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} - dev: false - - /media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - dev: false - - /memfs@3.5.3: - resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} - engines: {node: '>= 4.0.0'} - dependencies: - fs-monkey: 1.0.5 - dev: false - - /merge-descriptors@1.0.1: - resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} - dev: false - - /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - /methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - dev: false - - /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - - /mime-db@1.33.0: - resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==} - engines: {node: '>= 0.6'} - dev: false - - /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - /mime-types@2.1.18: - resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.33.0 - dev: false - - /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.52.0 - - /mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - dev: false - - /mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - dev: false - - /mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} - dev: false - - /mini-css-extract-plugin@2.7.6(webpack@5.89.0): - resolution: {integrity: sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^5.0.0 - dependencies: - schema-utils: 4.2.0 - webpack: 5.89.0 - dev: false - - /minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - dev: false - - /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - dependencies: - brace-expansion: 1.1.11 - - /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - dev: false - - /mrmime@1.0.1: - resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} - engines: {node: '>=10'} - dev: false - - /ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - dev: false - - /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - dev: false - - /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - dev: false - - /multicast-dns@7.2.5: - resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} - hasBin: true - dependencies: - dns-packet: 5.6.1 - thunky: 1.1.0 - dev: false - - /mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - dev: true - - /nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - /negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - dev: false - - /neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - - /no-case@3.0.4: - resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} - dependencies: - lower-case: 2.0.2 - tslib: 2.6.2 - dev: false - - /node-emoji@1.11.0: - resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} - dependencies: - lodash: 4.17.21 - dev: false - - /node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - dependencies: - whatwg-url: 5.0.0 - dev: false - - /node-forge@1.3.1: - resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} - engines: {node: '>= 6.13.0'} - dev: false - - /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} - - /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - /normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - /normalize-url@4.5.1: - resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} - engines: {node: '>=8'} - dev: false - - /normalize-url@6.1.0: - resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} - engines: {node: '>=10'} - dev: false - - /npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - dependencies: - path-key: 3.1.1 - dev: false - - /nprogress@0.2.0: - resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} - dev: false - - /nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - dependencies: - boolbase: 1.0.0 - dev: false - - /object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - /object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - dev: true - - /object-inspect@1.13.1: - resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} - dev: false - - /object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - dev: false - - /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - has-symbols: 1.0.3 - object-keys: 1.1.1 - dev: false - - /obuf@1.1.2: - resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} - dev: false - - /on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - dependencies: - ee-first: 1.1.1 - dev: false - - /on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} - engines: {node: '>= 0.8'} - dev: false - - /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - dependencies: - wrappy: 1.0.2 - - /onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - dependencies: - mimic-fn: 2.1.0 - dev: false - - /open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - dev: false - - /opener@1.5.2: - resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} - hasBin: true - dev: false - - /p-cancelable@1.1.0: - resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} - engines: {node: '>=6'} - dev: false - - /p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - dependencies: - p-try: 2.2.0 - dev: false - - /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - dependencies: - yocto-queue: 0.1.0 - dev: false - - /p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - dependencies: - p-limit: 2.3.0 - dev: false - - /p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - dependencies: - p-limit: 2.3.0 - dev: false - - /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - dependencies: - p-limit: 3.1.0 - dev: false - - /p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} - dependencies: - aggregate-error: 3.1.0 - dev: false - - /p-retry@4.6.2: - resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} - engines: {node: '>=8'} - dependencies: - '@types/retry': 0.12.0 - retry: 0.13.1 - dev: false - - /p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - dev: false - - /package-json@6.5.0: - resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} - engines: {node: '>=8'} - dependencies: - got: 9.6.0 - registry-auth-token: 4.2.2 - registry-url: 5.1.0 - semver: 6.3.1 - dev: false - - /param-case@3.0.4: - resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} - dependencies: - dot-case: 3.0.4 - tslib: 2.6.2 - dev: false - - /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - dependencies: - callsites: 3.1.0 - dev: false - - /parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} - dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 - dev: false - - /parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - dependencies: - '@babel/code-frame': 7.22.13 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - dev: false - - /parse-numeric-range@1.3.0: - resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} - dev: false - - /parse5-htmlparser2-tree-adapter@7.0.0: - resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} - dependencies: - domhandler: 5.0.3 - parse5: 7.1.2 - dev: false - - /parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - dev: false - - /parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} - dependencies: - entities: 4.5.0 - dev: false - - /parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - dev: false - - /pascal-case@3.1.2: - resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} - dependencies: - no-case: 3.0.4 - tslib: 2.6.2 - dev: false - - /path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - dev: false - - /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - dev: false - - /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - /path-is-inside@1.0.2: - resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==} - dev: false - - /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - dev: false - - /path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - /path-to-regexp@0.1.7: - resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - dev: false - - /path-to-regexp@1.8.0: - resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} - dependencies: - isarray: 0.0.1 - dev: false - - /path-to-regexp@2.2.1: - resolution: {integrity: sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==} - dev: false - - /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - dev: false - - /picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - - /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - /pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - dev: true - - /pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - dev: true - - /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - dependencies: - find-up: 4.1.0 - dev: false - - /pkg-up@3.1.0: - resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} - engines: {node: '>=8'} - dependencies: - find-up: 3.0.0 - dev: false - - /postcss-calc@8.2.4(postcss@8.4.31): - resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} - peerDependencies: - postcss: ^8.2.2 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-colormin@5.3.1(postcss@8.4.31): - resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - caniuse-api: 3.0.0 - colord: 2.9.3 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-convert-values@5.1.3(postcss@8.4.31): - resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-discard-comments@5.1.2(postcss@8.4.31): - resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-discard-duplicates@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-discard-empty@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-discard-overridden@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-discard-unused@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /postcss-import@15.1.0(postcss@8.4.31): - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - read-cache: 1.0.0 - resolve: 1.22.8 - dev: true - - /postcss-js@4.0.1(postcss@8.4.31): - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - dependencies: - camelcase-css: 2.0.1 - postcss: 8.4.31 - dev: true - - /postcss-load-config@4.0.1(postcss@8.4.31): - resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - dependencies: - lilconfig: 2.1.0 - postcss: 8.4.31 - yaml: 2.3.3 - dev: true - - /postcss-loader@7.3.3(postcss@8.4.31)(typescript@4.9.5)(webpack@5.89.0): - resolution: {integrity: sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==} - engines: {node: '>= 14.15.0'} - peerDependencies: - postcss: ^7.0.0 || ^8.0.1 - webpack: ^5.0.0 - dependencies: - cosmiconfig: 8.3.6(typescript@4.9.5) - jiti: 1.20.0 - postcss: 8.4.31 - semver: 7.5.4 - webpack: 5.89.0 - transitivePeerDependencies: - - typescript - dev: false - - /postcss-merge-idents@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-merge-longhand@5.1.7(postcss@8.4.31): - resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.31) - dev: false - - /postcss-merge-rules@5.1.4(postcss@8.4.31): - resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /postcss-minify-font-values@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-minify-gradients@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-minify-params@5.1.4(postcss@8.4.31): - resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-minify-selectors@5.2.1(postcss@8.4.31): - resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /postcss-modules-extract-imports@3.0.0(postcss@8.4.31): - resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-modules-local-by-default@4.0.3(postcss@8.4.31): - resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - dependencies: - icss-utils: 5.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-modules-scope@3.0.0(postcss@8.4.31): - resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /postcss-modules-values@4.0.0(postcss@8.4.31): - resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - dependencies: - icss-utils: 5.1.0(postcss@8.4.31) - postcss: 8.4.31 - dev: false - - /postcss-nested@6.0.1(postcss@8.4.31): - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: true - - /postcss-normalize-charset@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss-normalize-display-values@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-positions@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-repeat-style@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-string@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-timing-functions@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-unicode@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-url@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - normalize-url: 6.1.0 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-normalize-whitespace@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-ordered-values@5.1.3(postcss@8.4.31): - resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-reduce-idents@5.2.0(postcss@8.4.31): - resolution: {integrity: sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-reduce-initial@5.1.2(postcss@8.4.31): - resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - caniuse-api: 3.0.0 - postcss: 8.4.31 - dev: false - - /postcss-reduce-transforms@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - dev: false - - /postcss-selector-parser@6.0.10: - resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} - engines: {node: '>=4'} - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - dev: true - - /postcss-selector-parser@6.0.13: - resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} - engines: {node: '>=4'} - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - /postcss-sort-media-queries@4.4.1(postcss@8.4.31): - resolution: {integrity: sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==} - engines: {node: '>=10.0.0'} - peerDependencies: - postcss: ^8.4.16 - dependencies: - postcss: 8.4.31 - sort-css-media-queries: 2.1.0 - dev: false - - /postcss-svgo@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - svgo: 2.8.0 - dev: false - - /postcss-unique-selectors@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - /postcss-zindex@5.1.0(postcss@8.4.31): - resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - postcss: 8.4.31 - dev: false - - /postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - /posthog-js@1.87.2: - resolution: {integrity: sha512-pdxEylfxwEDwwz7g5dunPucvAN51RAOWWQmkcqHsLNHlV5o5bTaTwcAXaWB1IUn3xKPuKYE2lqbdB3vC4H4rFQ==} - dependencies: - fflate: 0.4.8 - dev: false - - /prepend-http@2.0.0: - resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} - engines: {node: '>=4'} - dev: false - - /pretty-error@4.0.0: - resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} - dependencies: - lodash: 4.17.21 - renderkid: 3.0.0 - dev: false - - /pretty-time@1.1.0: - resolution: {integrity: sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==} - engines: {node: '>=4'} - dev: false - - /prism-react-renderer@1.3.5(react@17.0.2): - resolution: {integrity: sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==} - peerDependencies: - react: '>=0.14.9' - dependencies: - react: 17.0.2 - dev: false - - /prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - dev: false - - /process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - dev: false - - /promise@7.3.1: - resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} - dependencies: - asap: 2.0.6 - dev: false - - /prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - dev: false - - /prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - - /property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - dependencies: - xtend: 4.0.2 - dev: false - - /proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - dev: false - - /pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: false - - /punycode@1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - dev: false - - /punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} - engines: {node: '>=6'} - - /pupa@2.1.1: - resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} - engines: {node: '>=8'} - dependencies: - escape-goat: 2.1.1 - dev: false - - /pure-color@1.3.0: - resolution: {integrity: sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==} - dev: false - - /qs@6.11.0: - resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} - engines: {node: '>=0.6'} - dependencies: - side-channel: 1.0.4 - dev: false - - /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - /queue@6.0.2: - resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} - dependencies: - inherits: 2.0.4 - dev: false - - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - dependencies: - safe-buffer: 5.2.1 - - /range-parser@1.2.0: - resolution: {integrity: sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==} - engines: {node: '>= 0.6'} - dev: false - - /range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - dev: false - - /raw-body@2.5.1: - resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} - engines: {node: '>= 0.8'} - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - dev: false - - /rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - dev: false - - /react-base16-styling@0.6.0: - resolution: {integrity: sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==} - dependencies: - base16: 1.0.0 - lodash.curry: 4.1.1 - lodash.flow: 3.5.0 - pure-color: 1.3.0 - dev: false - - /react-dev-utils@12.0.1(typescript@4.9.5)(webpack@5.89.0): - resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=2.7' - webpack: '>=4' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@babel/code-frame': 7.22.13 - address: 1.2.2 - browserslist: 4.22.1 - chalk: 4.1.2 - cross-spawn: 7.0.3 - detect-port-alt: 1.1.6 - escape-string-regexp: 4.0.0 - filesize: 8.0.7 - find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(typescript@4.9.5)(webpack@5.89.0) - global-modules: 2.0.0 - globby: 11.1.0 - gzip-size: 6.0.0 - immer: 9.0.21 - is-root: 2.1.0 - loader-utils: 3.2.1 - open: 8.4.2 - pkg-up: 3.1.0 - prompts: 2.4.2 - react-error-overlay: 6.0.11 - recursive-readdir: 2.2.3 - shell-quote: 1.8.1 - strip-ansi: 6.0.1 - text-table: 0.2.0 - typescript: 4.9.5 - webpack: 5.89.0 - transitivePeerDependencies: - - eslint - - supports-color - - vue-template-compiler - dev: false - - /react-dom@17.0.2(react@17.0.2): - resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} - peerDependencies: - react: 17.0.2 - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react: 17.0.2 - scheduler: 0.20.2 - - /react-error-overlay@6.0.11: - resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==} - dev: false - - /react-fast-compare@3.2.2: - resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} - - /react-helmet-async@1.3.0(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} - peerDependencies: - react: ^16.6.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 - dependencies: - '@babel/runtime': 7.23.2 - invariant: 2.2.4 - prop-types: 15.8.1 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-fast-compare: 3.2.2 - shallowequal: 1.1.0 - - /react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - /react-json-view@1.21.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==} - peerDependencies: - react: ^17.0.0 || ^16.3.0 || ^15.5.4 - react-dom: ^17.0.0 || ^16.3.0 || ^15.5.4 - dependencies: - flux: 4.0.4(react@17.0.2) - react: 17.0.2 - react-base16-styling: 0.6.0 - react-dom: 17.0.2(react@17.0.2) - react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.5.3(react@17.0.2) - transitivePeerDependencies: - - '@types/react' - - encoding - dev: false - - /react-lifecycles-compat@3.0.4: - resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} - dev: false - - /react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.89.0): - resolution: {integrity: sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==} - engines: {node: '>=10.13.0'} - peerDependencies: - react-loadable: '*' - webpack: '>=4.41.1 || 5.x' - dependencies: - '@babel/runtime': 7.23.2 - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) - webpack: 5.89.0 - dev: false - - /react-remove-scroll-bar@2.3.4(react@17.0.2): - resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - react: 17.0.2 - react-style-singleton: 2.2.1(react@17.0.2) - tslib: 2.6.2 - dev: false - - /react-remove-scroll@2.5.5(react@17.0.2): - resolution: {integrity: sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - react: 17.0.2 - react-remove-scroll-bar: 2.3.4(react@17.0.2) - react-style-singleton: 2.2.1(react@17.0.2) - tslib: 2.6.2 - use-callback-ref: 1.3.0(react@17.0.2) - use-sidecar: 1.1.2(react@17.0.2) - dev: false - - /react-router-config@5.1.1(react-router@5.3.4)(react@17.0.2): - resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} - peerDependencies: - react: '>=15' - react-router: '>=5' - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) - dev: false - - /react-router-dom@5.3.4(react@17.0.2): - resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==} - peerDependencies: - react: '>=15' - dependencies: - '@babel/runtime': 7.23.2 - history: 4.10.1 - loose-envify: 1.4.0 - prop-types: 15.8.1 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) - tiny-invariant: 1.3.1 - tiny-warning: 1.0.3 - dev: false - - /react-router@5.3.4(react@17.0.2): - resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} - peerDependencies: - react: '>=15' - dependencies: - '@babel/runtime': 7.23.2 - history: 4.10.1 - hoist-non-react-statics: 3.3.2 - loose-envify: 1.4.0 - path-to-regexp: 1.8.0 - prop-types: 15.8.1 - react: 17.0.2 - react-is: 16.13.1 - tiny-invariant: 1.3.1 - tiny-warning: 1.0.3 - dev: false - - /react-style-singleton@2.2.1(react@17.0.2): - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - get-nonce: 1.0.1 - invariant: 2.2.4 - react: 17.0.2 - tslib: 2.6.2 - dev: false - - /react-textarea-autosize@8.5.3(react@17.0.2): - resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} - engines: {node: '>=10'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - dependencies: - '@babel/runtime': 7.23.2 - react: 17.0.2 - use-composed-ref: 1.3.0(react@17.0.2) - use-latest: 1.2.1(react@17.0.2) - transitivePeerDependencies: - - '@types/react' - dev: false - - /react@17.0.2: - resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} - engines: {node: '>=0.10.0'} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - - /read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - dependencies: - pify: 2.3.0 - dev: true - - /readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - dev: false - - /readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - dev: false - - /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.3.1 - - /reading-time@1.5.0: - resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} - dev: false - - /rechoir@0.6.2: - resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} - engines: {node: '>= 0.10'} - dependencies: - resolve: 1.22.8 - dev: false - - /recursive-readdir@2.2.3: - resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} - engines: {node: '>=6.0.0'} - dependencies: - minimatch: 3.1.2 - dev: false - - /regenerate-unicode-properties@10.1.1: - resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} - engines: {node: '>=4'} - dependencies: - regenerate: 1.4.2 - dev: false - - /regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - dev: false - - /regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - - /regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - dependencies: - '@babel/runtime': 7.23.2 - dev: false - - /regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} - engines: {node: '>=4'} - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.1 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - dev: false - - /registry-auth-token@4.2.2: - resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} - engines: {node: '>=6.0.0'} - dependencies: - rc: 1.2.8 - dev: false - - /registry-url@5.1.0: - resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} - engines: {node: '>=8'} - dependencies: - rc: 1.2.8 - dev: false - - /regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - dependencies: - jsesc: 0.5.0 - dev: false - - /rehype-katex@5.0.0: - resolution: {integrity: sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==} - dependencies: - '@types/katex': 0.11.1 - hast-util-to-text: 2.0.1 - katex: 0.13.24 - rehype-parse: 7.0.1 - unified: 9.2.2 - unist-util-visit: 2.0.3 - dev: false - - /rehype-parse@7.0.1: - resolution: {integrity: sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==} - dependencies: - hast-util-from-parse5: 6.0.1 - parse5: 6.0.1 - dev: false - - /relateurl@0.2.7: - resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} - engines: {node: '>= 0.10'} - dev: false - - /remark-emoji@2.2.0: - resolution: {integrity: sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==} - dependencies: - emoticon: 3.2.0 - node-emoji: 1.11.0 - unist-util-visit: 2.0.3 - dev: false - - /remark-footnotes@2.0.0: - resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==} - dev: false - - /remark-math@3.0.1: - resolution: {integrity: sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==} - dev: false - - /remark-mdx@1.6.22: - resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-proposal-object-rest-spread': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - is-alphabetical: 1.0.4 - remark-parse: 8.0.3 - unified: 9.2.0 - transitivePeerDependencies: - - supports-color - dev: false - - /remark-parse@8.0.3: - resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} - dependencies: - ccount: 1.1.0 - collapse-white-space: 1.0.6 - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - is-whitespace-character: 1.0.4 - is-word-character: 1.0.4 - markdown-escapes: 1.0.4 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - state-toggle: 1.0.3 - trim: 0.0.1 - trim-trailing-lines: 1.1.4 - unherit: 1.1.3 - unist-util-remove-position: 2.0.1 - vfile-location: 3.2.0 - xtend: 4.0.2 - dev: false - - /remark-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==} - dependencies: - mdast-squeeze-paragraphs: 4.0.0 - dev: false - - /renderkid@3.0.0: - resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} - dependencies: - css-select: 4.3.0 - dom-converter: 0.2.0 - htmlparser2: 6.1.0 - lodash: 4.17.21 - strip-ansi: 6.0.1 - dev: false - - /repeat-string@1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - dev: false - - /require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - dev: false - - /require-like@0.1.2: - resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} - dev: false - - /requires-port@1.0.0: - resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - dev: false - - /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - dev: false - - /resolve-pathname@3.0.0: - resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} - dev: false - - /resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - /responselike@1.0.2: - resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} - dependencies: - lowercase-keys: 1.0.1 - dev: false - - /retry@0.13.1: - resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} - engines: {node: '>= 4'} - dev: false - - /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true - dependencies: - glob: 7.2.3 - dev: false - - /rtl-detect@1.1.2: - resolution: {integrity: sha512-PGMBq03+TTG/p/cRB7HCLKJ1MgDIi07+QU1faSjiYRfmY5UsAttV9Hs08jDAHVwcOwmVLcSJkpwyfXszVjWfIQ==} - dev: false - - /rtlcss@3.5.0: - resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==} - hasBin: true - dependencies: - find-up: 5.0.0 - picocolors: 1.0.0 - postcss: 8.4.31 - strip-json-comments: 3.1.1 - dev: false - - /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - dependencies: - queue-microtask: 1.2.3 - - /rxjs@7.8.1: - resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - dependencies: - tslib: 2.6.2 - dev: false - - /safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: false - - /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - /safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - dev: false - - /sax@1.3.0: - resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==} - dev: false - - /scheduler@0.20.2: - resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - - /schema-utils@2.7.0: - resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==} - engines: {node: '>= 8.9.0'} - dependencies: - '@types/json-schema': 7.0.14 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - dev: false - - /schema-utils@2.7.1: - resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} - engines: {node: '>= 8.9.0'} - dependencies: - '@types/json-schema': 7.0.14 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - dev: false - - /schema-utils@3.3.0: - resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} - engines: {node: '>= 10.13.0'} - dependencies: - '@types/json-schema': 7.0.14 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - - /schema-utils@4.2.0: - resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} - engines: {node: '>= 12.13.0'} - dependencies: - '@types/json-schema': 7.0.14 - ajv: 8.12.0 - ajv-formats: 2.1.1(ajv@8.12.0) - ajv-keywords: 5.1.0(ajv@8.12.0) - dev: false - - /search-insights@2.9.0: - resolution: {integrity: sha512-bkWW9nIHOFkLwjQ1xqVaMbjjO5vhP26ERsH9Y3pKr8imthofEFIxlnOabkmGcw6ksRj9jWidcI65vvjJH/nTGg==} - dev: false - - /section-matter@1.0.0: - resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} - engines: {node: '>=4'} - dependencies: - extend-shallow: 2.0.1 - kind-of: 6.0.3 - dev: false - - /select-hose@2.0.0: - resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==} - dev: false - - /selfsigned@2.4.1: - resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} - engines: {node: '>=10'} - dependencies: - '@types/node-forge': 1.3.8 - node-forge: 1.3.1 - dev: false - - /semver-diff@3.1.1: - resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 - dev: false - - /semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - dev: false - - /semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - dev: false - - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: false - - /send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - transitivePeerDependencies: - - supports-color - dev: false - - /serialize-javascript@6.0.1: - resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} - dependencies: - randombytes: 2.1.0 - - /serve-handler@6.1.5: - resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} - dependencies: - bytes: 3.0.0 - content-disposition: 0.5.2 - fast-url-parser: 1.1.3 - mime-types: 2.1.18 - minimatch: 3.1.2 - path-is-inside: 1.0.2 - path-to-regexp: 2.2.1 - range-parser: 1.2.0 - dev: false - - /serve-index@1.9.1: - resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==} - engines: {node: '>= 0.8.0'} - dependencies: - accepts: 1.3.8 - batch: 0.6.1 - debug: 2.6.9 - escape-html: 1.0.3 - http-errors: 1.6.3 - mime-types: 2.1.35 - parseurl: 1.3.3 - transitivePeerDependencies: - - supports-color - dev: false - - /serve-static@1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} - dependencies: - encodeurl: 1.0.2 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.18.0 - transitivePeerDependencies: - - supports-color - dev: false - - /set-function-length@1.1.1: - resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} - engines: {node: '>= 0.4'} - dependencies: - define-data-property: 1.1.1 - get-intrinsic: 1.2.2 - gopd: 1.0.1 - has-property-descriptors: 1.0.1 - dev: false - - /setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - dev: false - - /setprototypeof@1.1.0: - resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==} - dev: false - - /setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - dev: false - - /shallow-clone@3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} - dependencies: - kind-of: 6.0.3 - - /shallowequal@1.1.0: - resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} - - /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - dependencies: - shebang-regex: 3.0.0 - dev: false - - /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - dev: false - - /shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - dev: false - - /shelljs@0.8.5: - resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} - engines: {node: '>=4'} - hasBin: true - dependencies: - glob: 7.2.3 - interpret: 1.4.0 - rechoir: 0.6.2 - dev: false - - /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - object-inspect: 1.13.1 - dev: false - - /signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - dev: false - - /sirv@2.0.3: - resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} - engines: {node: '>= 10'} - dependencies: - '@polka/url': 1.0.0-next.23 - mrmime: 1.0.1 - totalist: 3.0.1 - dev: false - - /sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - dev: false - - /sitemap@7.1.1: - resolution: {integrity: sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==} - engines: {node: '>=12.0.0', npm: '>=5.6.0'} - hasBin: true - dependencies: - '@types/node': 17.0.45 - '@types/sax': 1.2.6 - arg: 5.0.2 - sax: 1.3.0 - dev: false - - /slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - dev: false - - /slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - dev: false - - /sockjs@0.3.24: - resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==} - dependencies: - faye-websocket: 0.11.4 - uuid: 8.3.2 - websocket-driver: 0.7.4 - dev: false - - /sort-css-media-queries@2.1.0: - resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} - engines: {node: '>= 6.3.0'} - dev: false - - /source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - - /source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - /source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - dev: false - - /source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - /space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} - dev: false - - /spdy-transport@3.0.0: - resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==} - dependencies: - debug: 4.3.4 - detect-node: 2.1.0 - hpack.js: 2.1.6 - obuf: 1.1.2 - readable-stream: 3.6.2 - wbuf: 1.7.3 - transitivePeerDependencies: - - supports-color - dev: false - - /spdy@4.0.2: - resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==} - engines: {node: '>=6.0.0'} - dependencies: - debug: 4.3.4 - handle-thing: 2.0.1 - http-deceiver: 1.2.7 - select-hose: 2.0.0 - spdy-transport: 3.0.0 - transitivePeerDependencies: - - supports-color - dev: false - - /sprintf-js@1.0.3: - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - dev: false - - /stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - dev: false - - /state-toggle@1.0.3: - resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} - dev: false - - /statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - dev: false - - /statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} - dev: false - - /std-env@3.4.3: - resolution: {integrity: sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==} - dev: false - - /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - dev: false - - /string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - dev: false - - /string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - dependencies: - safe-buffer: 5.1.2 - dev: false - - /string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - dependencies: - safe-buffer: 5.2.1 - dev: false - - /stringify-object@3.3.0: - resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} - engines: {node: '>=4'} - dependencies: - get-own-enumerable-property-symbols: 3.0.2 - is-obj: 1.0.1 - is-regexp: 1.0.0 - dev: false - - /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - dependencies: - ansi-regex: 5.0.1 - dev: false - - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - dependencies: - ansi-regex: 6.0.1 - dev: false - - /strip-bom-string@1.0.0: - resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} - engines: {node: '>=0.10.0'} - dev: false - - /strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - dev: false - - /strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - dev: false - - /strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - dev: false - - /style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} - dependencies: - inline-style-parser: 0.1.1 - dev: false - - /stylehacks@5.1.1(postcss@8.4.31): - resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - dependencies: - browserslist: 4.22.1 - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - dev: false - - /sucrase@3.34.0: - resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} - engines: {node: '>=8'} - hasBin: true - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - commander: 4.1.1 - glob: 7.1.6 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.6 - ts-interface-checker: 0.1.13 - dev: true - - /supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - dependencies: - has-flag: 3.0.0 - dev: false - - /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - dependencies: - has-flag: 4.0.0 - dev: false - - /supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} - dependencies: - has-flag: 4.0.0 - - /supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - /svg-parser@2.0.4: - resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} - dev: false - - /svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} - hasBin: true - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 - picocolors: 1.0.0 - stable: 0.1.8 - dev: false - - /tailwindcss-radix@2.8.0: - resolution: {integrity: sha512-1k1UfoIYgVyBl13FKwwoKavjnJ5VEaUClCTAsgz3VLquN4ay/lyaMPzkbqD71sACDs2fRGImytAUlMb4TzOt1A==} - dev: false - - /tailwindcss@3.3.5: - resolution: {integrity: sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==} - engines: {node: '>=14.0.0'} - hasBin: true - dependencies: - '@alloc/quick-lru': 5.2.0 - arg: 5.0.2 - chokidar: 3.5.3 - didyoumean: 1.2.2 - dlv: 1.1.3 - fast-glob: 3.3.1 - glob-parent: 6.0.2 - is-glob: 4.0.3 - jiti: 1.20.0 - lilconfig: 2.1.0 - micromatch: 4.0.5 - normalize-path: 3.0.0 - object-hash: 3.0.0 - picocolors: 1.0.0 - postcss: 8.4.31 - postcss-import: 15.1.0(postcss@8.4.31) - postcss-js: 4.0.1(postcss@8.4.31) - postcss-load-config: 4.0.1(postcss@8.4.31) - postcss-nested: 6.0.1(postcss@8.4.31) - postcss-selector-parser: 6.0.13 - resolve: 1.22.8 - sucrase: 3.34.0 - transitivePeerDependencies: - - ts-node - dev: true - - /tapable@1.1.3: - resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==} - engines: {node: '>=6'} - dev: false - - /tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - /terser-webpack-plugin@5.3.9(webpack@5.89.0): - resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} - engines: {node: '>= 10.13.0'} - peerDependencies: - '@swc/core': '*' - esbuild: '*' - uglify-js: '*' - webpack: ^5.1.0 - peerDependenciesMeta: - '@swc/core': - optional: true - esbuild: - optional: true - uglify-js: - optional: true - dependencies: - '@jridgewell/trace-mapping': 0.3.20 - jest-worker: 27.5.1 - schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.22.0 - webpack: 5.89.0 - - /terser@5.22.0: - resolution: {integrity: sha512-hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - '@jridgewell/source-map': 0.3.5 - acorn: 8.11.2 - commander: 2.20.3 - source-map-support: 0.5.21 - - /text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - dev: false - - /thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - dependencies: - thenify: 3.3.1 - dev: true - - /thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - dependencies: - any-promise: 1.3.0 - dev: true - - /thunky@1.1.0: - resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==} - dev: false - - /tiny-invariant@1.3.1: - resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} - dev: false - - /tiny-warning@1.0.3: - resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} - dev: false - - /to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - dev: false - - /to-readable-stream@1.0.0: - resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} - engines: {node: '>=6'} - dev: false - - /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - dependencies: - is-number: 7.0.0 - - /toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} - dev: false - - /totalist@3.0.1: - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} - engines: {node: '>=6'} - dev: false - - /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - dev: false - - /trim-trailing-lines@1.1.4: - resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==} - dev: false - - /trim@0.0.1: - resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==} - deprecated: Use String.prototype.trim() instead - dev: false - - /trough@1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} - dev: false - - /ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - dev: true - - /tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - dev: false - - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - dev: false - - /type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - dev: false - - /type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - dev: false - - /typedarray-to-buffer@3.1.5: - resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - dependencies: - is-typedarray: 1.0.0 - dev: false - - /typescript-toggle@1.1.0(react@17.0.2): - resolution: {integrity: sha512-fdqedJ1rokLOhP2HJYZwRwfkQ1tEQ2C2YVMWPGwsVyq/5aonB67F0CbIA1kIu3rou5ZlFP3pvyvp/QLV95WHEg==} - engines: {node: '>=10'} - peerDependencies: - react: '>=16' - dependencies: - react: 17.0.2 - dev: false - - /typescript@4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} - hasBin: true - - /ua-parser-js@1.0.37: - resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==} - dev: false - - /undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - - /unherit@1.1.3: - resolution: {integrity: sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==} - dependencies: - inherits: 2.0.4 - xtend: 4.0.2 - dev: false - - /unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - dev: false - - /unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - dev: false - - /unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - dev: false - - /unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - dev: false - - /unified@9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} - dependencies: - '@types/unist': 2.0.9 - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 - dev: false - - /unified@9.2.2: - resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} - dependencies: - '@types/unist': 2.0.9 - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 - dev: false - - /unique-string@2.0.0: - resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} - engines: {node: '>=8'} - dependencies: - crypto-random-string: 2.0.0 - dev: false - - /unist-builder@2.0.3: - resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} - dev: false - - /unist-util-find-after@3.0.0: - resolution: {integrity: sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==} - dependencies: - unist-util-is: 4.1.0 - dev: false - - /unist-util-generated@1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} - dev: false - - /unist-util-is@4.1.0: - resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} - dev: false - - /unist-util-position@3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} - dev: false - - /unist-util-remove-position@2.0.1: - resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} - dependencies: - unist-util-visit: 2.0.3 - dev: false - - /unist-util-remove@2.1.0: - resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==} - dependencies: - unist-util-is: 4.1.0 - dev: false - - /unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} - dependencies: - '@types/unist': 2.0.9 - dev: false - - /unist-util-visit-parents@3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} - dependencies: - '@types/unist': 2.0.9 - unist-util-is: 4.1.0 - dev: false - - /unist-util-visit@2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} - dependencies: - '@types/unist': 2.0.9 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 - dev: false - - /universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} - dev: false - - /unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - dev: false - - /update-browserslist-db@1.0.13(browserslist@4.22.1): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - dependencies: - browserslist: 4.22.1 - escalade: 3.1.1 - picocolors: 1.0.0 - - /update-notifier@5.1.0: - resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} - engines: {node: '>=10'} - dependencies: - boxen: 5.1.2 - chalk: 4.1.2 - configstore: 5.0.1 - has-yarn: 2.1.0 - import-lazy: 2.1.0 - is-ci: 2.0.0 - is-installed-globally: 0.4.0 - is-npm: 5.0.0 - is-yarn-global: 0.3.0 - latest-version: 5.1.0 - pupa: 2.1.1 - semver: 7.5.4 - semver-diff: 3.1.1 - xdg-basedir: 4.0.0 - dev: false - - /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - dependencies: - punycode: 2.3.0 - - /url-loader@4.1.1(file-loader@6.2.0)(webpack@5.89.0): - resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} - engines: {node: '>= 10.13.0'} - peerDependencies: - file-loader: '*' - webpack: ^4.0.0 || ^5.0.0 - peerDependenciesMeta: - file-loader: - optional: true - dependencies: - file-loader: 6.2.0(webpack@5.89.0) - loader-utils: 2.0.4 - mime-types: 2.1.35 - schema-utils: 3.3.0 - webpack: 5.89.0 - dev: false - - /url-parse-lax@3.0.0: - resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} - engines: {node: '>=4'} - dependencies: - prepend-http: 2.0.0 - dev: false - - /use-callback-ref@1.3.0(react@17.0.2): - resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - react: 17.0.2 - tslib: 2.6.2 - dev: false - - /use-composed-ref@1.3.0(react@17.0.2): - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - dependencies: - react: 17.0.2 - dev: false - - /use-isomorphic-layout-effect@1.1.2(react@17.0.2): - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - react: 17.0.2 - dev: false - - /use-latest@1.2.1(react@17.0.2): - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - react: 17.0.2 - use-isomorphic-layout-effect: 1.1.2(react@17.0.2) - dev: false - - /use-sidecar@1.1.2(react@17.0.2): - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - dependencies: - detect-node-es: 1.1.0 - react: 17.0.2 - tslib: 2.6.2 - dev: false - - /use-sync-external-store@1.2.0(react@17.0.2): - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - dependencies: - react: 17.0.2 - dev: false - - /util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - /utila@0.4.0: - resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==} - dev: false - - /utility-types@3.10.0: - resolution: {integrity: sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==} - engines: {node: '>= 4'} - - /utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - dev: false - - /uuid@8.3.2: - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} - hasBin: true - dev: false - - /value-equal@1.0.1: - resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==} - dev: false - - /vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - dev: false - - /vfile-location@3.2.0: - resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==} - dev: false - - /vfile-message@2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} - dependencies: - '@types/unist': 2.0.9 - unist-util-stringify-position: 2.0.3 - dev: false - - /vfile@4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - dependencies: - '@types/unist': 2.0.9 - is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 - dev: false - - /wait-on@6.0.1: - resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==} - engines: {node: '>=10.0.0'} - hasBin: true - dependencies: - axios: 0.25.0 - joi: 17.11.0 - lodash: 4.17.21 - minimist: 1.2.8 - rxjs: 7.8.1 - transitivePeerDependencies: - - debug - dev: false - - /watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - - /wbuf@1.7.3: - resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==} - dependencies: - minimalistic-assert: 1.0.1 - dev: false - - /web-namespaces@1.1.4: - resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} - dev: false - - /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - dev: false - - /webpack-bundle-analyzer@4.9.1: - resolution: {integrity: sha512-jnd6EoYrf9yMxCyYDPj8eutJvtjQNp8PHmni/e/ulydHBWhT5J3menXt3HEkScsu9YqMAcG4CfFjs3rj5pVU1w==} - engines: {node: '>= 10.13.0'} - hasBin: true - dependencies: - '@discoveryjs/json-ext': 0.5.7 - acorn: 8.11.2 - acorn-walk: 8.3.0 - commander: 7.2.0 - escape-string-regexp: 4.0.0 - gzip-size: 6.0.0 - is-plain-object: 5.0.0 - lodash.debounce: 4.0.8 - lodash.escape: 4.0.1 - lodash.flatten: 4.4.0 - lodash.invokemap: 4.6.0 - lodash.pullall: 4.2.0 - lodash.uniqby: 4.7.0 - opener: 1.5.2 - picocolors: 1.0.0 - sirv: 2.0.3 - ws: 7.5.9 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /webpack-dev-middleware@5.3.3(webpack@5.89.0): - resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - dependencies: - colorette: 2.0.20 - memfs: 3.5.3 - mime-types: 2.1.35 - range-parser: 1.2.1 - schema-utils: 4.2.0 - webpack: 5.89.0 - dev: false - - /webpack-dev-server@4.15.1(webpack@5.89.0): - resolution: {integrity: sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==} - engines: {node: '>= 12.13.0'} - hasBin: true - peerDependencies: - webpack: ^4.37.0 || ^5.0.0 - webpack-cli: '*' - peerDependenciesMeta: - webpack: - optional: true - webpack-cli: - optional: true - dependencies: - '@types/bonjour': 3.5.12 - '@types/connect-history-api-fallback': 1.5.2 - '@types/express': 4.17.20 - '@types/serve-index': 1.9.3 - '@types/serve-static': 1.15.4 - '@types/sockjs': 0.3.35 - '@types/ws': 8.5.8 - ansi-html-community: 0.0.8 - bonjour-service: 1.1.1 - chokidar: 3.5.3 - colorette: 2.0.20 - compression: 1.7.4 - connect-history-api-fallback: 2.0.0 - default-gateway: 6.0.3 - express: 4.18.2 - graceful-fs: 4.2.11 - html-entities: 2.4.0 - http-proxy-middleware: 2.0.6(@types/express@4.17.20) - ipaddr.js: 2.1.0 - launch-editor: 2.6.1 - open: 8.4.2 - p-retry: 4.6.2 - rimraf: 3.0.2 - schema-utils: 4.2.0 - selfsigned: 2.4.1 - serve-index: 1.9.1 - sockjs: 0.3.24 - spdy: 4.0.2 - webpack: 5.89.0 - webpack-dev-middleware: 5.3.3(webpack@5.89.0) - ws: 8.14.2 - transitivePeerDependencies: - - bufferutil - - debug - - supports-color - - utf-8-validate - dev: false - - /webpack-merge@5.10.0: - resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==} - engines: {node: '>=10.0.0'} - dependencies: - clone-deep: 4.0.1 - flat: 5.0.2 - wildcard: 2.0.1 - - /webpack-sources@3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} - - /webpack@5.89.0: - resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - dependencies: - '@types/eslint-scope': 3.7.6 - '@types/estree': 1.0.3 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - acorn: 8.11.2 - acorn-import-assertions: 1.9.0(acorn@8.11.2) - browserslist: 4.22.1 - chrome-trace-event: 1.0.3 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.1 - eslint-scope: 5.1.1 - events: 3.3.0 - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - json-parse-even-better-errors: 2.3.1 - loader-runner: 4.3.0 - mime-types: 2.1.35 - neo-async: 2.6.2 - schema-utils: 3.3.0 - tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(webpack@5.89.0) - watchpack: 2.4.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - /webpackbar@5.0.2(webpack@5.89.0): - resolution: {integrity: sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==} - engines: {node: '>=12'} - peerDependencies: - webpack: 3 || 4 || 5 - dependencies: - chalk: 4.1.2 - consola: 2.15.3 - pretty-time: 1.1.0 - std-env: 3.4.3 - webpack: 5.89.0 - dev: false - - /websocket-driver@0.7.4: - resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==} - engines: {node: '>=0.8.0'} - dependencies: - http-parser-js: 0.5.8 - safe-buffer: 5.2.1 - websocket-extensions: 0.1.4 - dev: false - - /websocket-extensions@0.1.4: - resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==} - engines: {node: '>=0.8.0'} - dev: false - - /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - dev: false - - /which@1.3.1: - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} - hasBin: true - dependencies: - isexe: 2.0.0 - dev: false - - /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - dependencies: - isexe: 2.0.0 - dev: false - - /widest-line@3.1.0: - resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} - engines: {node: '>=8'} - dependencies: - string-width: 4.2.3 - dev: false - - /widest-line@4.0.1: - resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} - engines: {node: '>=12'} - dependencies: - string-width: 5.1.2 - dev: false - - /wildcard@2.0.1: - resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: false - - /wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - dev: false - - /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - /write-file-atomic@3.0.3: - resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} - dependencies: - imurmurhash: 0.1.4 - is-typedarray: 1.0.0 - signal-exit: 3.0.7 - typedarray-to-buffer: 3.1.5 - dev: false - - /ws@7.5.9: - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} - engines: {node: '>=8.3.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - - /ws@8.14.2: - resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - - /xdg-basedir@4.0.0: - resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} - engines: {node: '>=8'} - dev: false - - /xml-js@1.6.11: - resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==} - hasBin: true - dependencies: - sax: 1.3.0 - dev: false - - /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - dev: false - - /yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: false - - /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - dev: false - - /yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - dev: false - - /yaml@2.3.3: - resolution: {integrity: sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==} - engines: {node: '>= 14'} - dev: true - - /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - dev: false - - /zwitch@1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} - dev: false diff --git a/website/sidebars.js b/website/sidebars.js index 363ca91127ee..17d5b5dccbc3 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -12,7 +12,7 @@ // @ts-check /** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */ -const sidebars = { +export default { // By default, Docusaurus generates a sidebar from the docs folder structure tutorialSidebar: [ { @@ -34,8 +34,7 @@ const sidebars = { { type: "category", label: "OpenBB Platform", - items: [ - { type: "autogenerated", dirName: "platform" }], + items: [{ type: "autogenerated", dirName: "platform" }], }, { type: "category", @@ -87,5 +86,3 @@ const sidebars = { ], */ }; - -module.exports = sidebars; diff --git a/website/src/pages/index.tsx b/website/src/pages/index.tsx index 43a5f48836ba..00b77cfa9ff4 100644 --- a/website/src/pages/index.tsx +++ b/website/src/pages/index.tsx @@ -1,11 +1,9 @@ import Link from "@docusaurus/Link"; import Layout from "@theme/Layout"; import clsx from "clsx"; -import React from "react"; import ChevronRightIcon from "../components/Icons/ChevronRight"; import DarkBlueRadialGradient from "../components/Icons/RadialGradients/DarkBlue"; import RubyRedRadialGradient from "../components/Icons/RadialGradients/RubyRed"; -import CloseIcon from "../components/Icons/Close" export default function Home(): JSX.Element { return ( @@ -19,7 +17,8 @@ export default function Home(): JSX.Element { OpenBB Documentation

- All the documentation for the tools you need for your investment research. + All the documentation for the tools you need for your investment + research.

@@ -34,11 +33,12 @@ export default function Home(): JSX.Element { OpenBB Terminal Pro

- The OpenBB Terminal Pro is the investment research platform for the 21st century. + The OpenBB Terminal Pro is the investment research platform for + the 21st century.

See more @@ -56,11 +56,12 @@ export default function Home(): JSX.Element { OpenBB Add-In for Excel

- The OpenBB Add-In for Excel allows access to the same data as the OpenBB Terminal Pro, but through Excel. + The OpenBB Add-In for Excel allows access to the same data as + the OpenBB Terminal Pro, but through Excel.

See more @@ -81,11 +82,12 @@ export default function Home(): JSX.Element { OpenBB Platform

- The OpenBB Platform provides a convenient way to access raw financial data from multiple data providers. + The OpenBB Platform provides a convenient way to access raw + financial data from multiple data providers.

See more diff --git a/website/src/theme/CodeBlock/Content/String.js b/website/src/theme/CodeBlock/Content/String.js index c143af0fdb38..d235e110b06c 100644 --- a/website/src/theme/CodeBlock/Content/String.js +++ b/website/src/theme/CodeBlock/Content/String.js @@ -1,20 +1,20 @@ -import React, { useState, useEffect, useRef } from "react"; -import clsx from "clsx"; -import { useThemeConfig, usePrismTheme } from "@docusaurus/theme-common"; +import { usePrismTheme, useThemeConfig } from "@docusaurus/theme-common"; import { + containsLineNumbers, parseCodeBlockTitle, parseLanguage, parseLines, - containsLineNumbers, useCodeWordWrap, } from "@docusaurus/theme-common/internal"; -import Highlight, { defaultProps } from "prism-react-renderer"; -import Line from "@theme/CodeBlock/Line"; +import Container from "@theme/CodeBlock/Container"; import CopyButton from "@theme/CodeBlock/CopyButton"; +import Line from "@theme/CodeBlock/Line"; import WordWrapButton from "@theme/CodeBlock/WordWrapButton"; -import Container from "@theme/CodeBlock/Container"; -import styles from "./styles.module.css"; +import clsx from "clsx"; +import { Highlight } from "prism-react-renderer"; +import { useEffect, useRef, useState } from "react"; import { useLocation } from "react-router-dom"; +import styles from "./styles.module.css"; function getImageUrl(pathname, text) { if (!pathname.startsWith("/bot/")) { @@ -29,7 +29,7 @@ function getImageUrl(pathname, text) { ) { imgname = text.split(" ")[0].toLowerCase().replace("/", ""); } else if (platform == "telegram") { - console.log(pathvalue) + console.log(pathvalue); if (pathvalue.toString() == "etf" || pathvalue.toString() == "screeners") { imgname = text.split(" ")[1].toLowerCase(); } else { @@ -118,7 +118,6 @@ export default function CodeBlockString({ {title &&

{title}
}
{imageUrl && ( - { - setImageUrl(null); - }} - src={imageUrl} - alt="example" - /> - )} + { + setImageUrl(null); + }} + src={imageUrl} + alt="example" + /> + )} ); } diff --git a/website/src/theme/ColorModeToggle/index.js b/website/src/theme/ColorModeToggle/index.js index 139f91c589df..6011b4dea49d 100644 --- a/website/src/theme/ColorModeToggle/index.js +++ b/website/src/theme/ColorModeToggle/index.js @@ -1,15 +1,15 @@ -import React, { useEffect } from "react"; -import clsx from "clsx"; -import useIsBrowser from "@docusaurus/useIsBrowser"; +import Link from "@docusaurus/Link"; import { translate } from "@docusaurus/Translate"; -import * as PopoverPrimitive from "@radix-ui/react-popover"; -import SunIcon from "@site/src/components/Icons/Sun"; -import MoonIcon from "@site/src/components/Icons/Moon"; import { useLocation } from "@docusaurus/router"; +import useIsBrowser from "@docusaurus/useIsBrowser"; +import * as PopoverPrimitive from "@radix-ui/react-popover"; import DiscordIcon from "@site/src/components/Icons/Discord"; +import MoonIcon from "@site/src/components/Icons/Moon"; +import SunIcon from "@site/src/components/Icons/Sun"; import TelegramIcon from "@site/src/components/Icons/Telegram"; -import Link from "@docusaurus/Link"; -import { useIFrameContext } from "../Root"; +import clsx from "clsx"; +import React, { useEffect } from "react"; +import { useIFrameContext } from "../Root.tsx"; function ColorModeToggle({ className, value, onChange }) { const { isIFrame } = useIFrameContext(); const { pathname } = useLocation(); @@ -115,7 +115,7 @@ function ColorModeToggle({ className, value, onChange }) { })} type="button" onClick={() => { - onChange("light") + onChange("light"); window.location.reload(); }} disabled={!isBrowser} @@ -132,7 +132,7 @@ function ColorModeToggle({ className, value, onChange }) { })} type="button" onClick={() => { - onChange("dark") + onChange("dark"); window.location.reload(); }} disabled={!isBrowser} diff --git a/website/src/theme/DocSidebarItem/Category/index.js b/website/src/theme/DocSidebarItem/Category/index.js index 0d8c90879431..4ddec60bf68c 100644 --- a/website/src/theme/DocSidebarItem/Category/index.js +++ b/website/src/theme/DocSidebarItem/Category/index.js @@ -9,7 +9,7 @@ import { useThemeConfig, } from "@docusaurus/theme-common"; import { - findFirstCategoryLink, + // findFirstCategoryLink, isActiveSidebarItem, isSamePath, useDocSidebarItemsExpandedState, @@ -18,7 +18,7 @@ import useIsBrowser from "@docusaurus/useIsBrowser"; import DocSidebarItems from "@theme/DocSidebarItems"; import clsx from "clsx"; import React, { useEffect, useMemo } from "react"; -import { useIFrameContext } from "../../Root"; +import { useIFrameContext } from "../../Root.tsx"; // If we navigate to a category and it becomes active, it should automatically // expand itself function useAutoExpandActiveCategory({ isActive, collapsed, updateCollapsed }) { @@ -49,7 +49,7 @@ function useCategoryHrefWithSSRFallback(item, href) { if (isBrowser || !item.collapsible) { return undefined; } - return findFirstCategoryLink(item); + // return findFirstCategoryLink(item); }, [item, isBrowser]); } function CollapseButton({ categoryLabel, onClick }) { @@ -126,19 +126,19 @@ export default function DocSidebarItemCategory({ const dontShowLink = isIFrame && ["OpenBB Terminal", "OpenBB SDK", "OpenBB Bot"].includes(label); - const location = useLocation(); - const isProPage = location.pathname.startsWith("/pro"); - const isExcelPage = location.pathname.startsWith("/excel"); + const location = useLocation(); + const isProPage = location.pathname.startsWith("/pro"); + const isExcelPage = location.pathname.startsWith("/excel"); - // Hide the OpenBB Terminal Pro section if we're not on a /pro or /excel page - if (item.customProps?.hiddenByDefault && !(isProPage || isExcelPage)) { - return null; - } + // Hide the OpenBB Terminal Pro section if we're not on a /pro or /excel page + if (item.customProps?.hiddenByDefault && !(isProPage || isExcelPage)) { + return null; + } - // Temporary, remove to show Excel tab - if (item.customProps?.onlyDirectAccess && !isExcelPage) { - return null; - } + // Temporary, remove to show Excel tab + if (item.customProps?.onlyDirectAccess && !isExcelPage) { + return null; + } return (
  • shouldHideItem(childItem, productPath) @@ -48,7 +46,11 @@ export default function DocSidebarItem({ item, ...props }) { if ((isPro || isExcel) && !checkIfAnyChildIsProExcel(item)) { return null; - } else if (!(isPro || isExcel) && item.href?.startsWith("/pro") && item.href?.startsWith("/excel")) { + } else if ( + !(isPro || isExcel) && + item.href?.startsWith("/pro") && + item.href?.startsWith("/excel") + ) { return null; } diff --git a/website/src/theme/Footer/index.js b/website/src/theme/Footer/index.js index 1474108bdc0b..9d400f15b8a5 100644 --- a/website/src/theme/Footer/index.js +++ b/website/src/theme/Footer/index.js @@ -1,17 +1,17 @@ -import React, { useEffect, useState } from "react"; import Link from "@docusaurus/Link"; -import LetteringLogo from "@site/src/components/Icons/LetteringLogo"; -import StarIcon from "@site/src/components/Icons/Star"; +import ChevronRightIcon from "@site/src/components/Icons/ChevronRight"; +import DiscordIcon from "@site/src/components/Icons/Discord"; import GithubIcon from "@site/src/components/Icons/Github"; +import LetteringLogo from "@site/src/components/Icons/LetteringLogo"; import LinkedinIcon from "@site/src/components/Icons/Linkedin"; -import TwitterIcon from "@site/src/components/Icons/Twitter"; -import TiktokIcon from "@site/src/components/Icons/Tiktok"; import RedditIcon from "@site/src/components/Icons/Reddit"; -import DiscordIcon from "@site/src/components/Icons/Discord"; +import StarIcon from "@site/src/components/Icons/Star"; +import TiktokIcon from "@site/src/components/Icons/Tiktok"; +import TwitterIcon from "@site/src/components/Icons/Twitter"; import YoutubeIcon from "@site/src/components/Icons/Youtube"; -import ChevronRightIcon from "@site/src/components/Icons/ChevronRight"; import clsx from "clsx"; -import { useIFrameContext } from "../Root"; +import React, { useEffect, useState } from "react"; +import { useIFrameContext } from "../Root.tsx"; const nFormatter = (num, digits) => { const si = [ { value: 1, symbol: "" }, diff --git a/website/src/theme/Navbar/Content/index.js b/website/src/theme/Navbar/Content/index.js index 85f85f7f9116..bf5763341a9b 100644 --- a/website/src/theme/Navbar/Content/index.js +++ b/website/src/theme/Navbar/Content/index.js @@ -1,20 +1,20 @@ -import React from "react"; import { useThemeConfig } from "@docusaurus/theme-common"; import { splitNavbarItems, useNavbarMobileSidebar, } from "@docusaurus/theme-common/internal"; -import NavbarItem from "@theme/NavbarItem"; import NavbarColorModeToggle from "@theme/Navbar/ColorModeToggle"; -import SearchBar from "@theme/SearchBar"; -import NavbarMobileSidebarToggle from "@theme/Navbar/MobileSidebar/Toggle"; import NavbarLogo from "@theme/Navbar/Logo"; +import NavbarMobileSidebarToggle from "@theme/Navbar/MobileSidebar/Toggle"; import NavbarSearch from "@theme/Navbar/Search"; -import styles from "./styles.module.css"; +import NavbarItem from "@theme/NavbarItem"; +import SearchBar from "@theme/SearchBar"; + function useNavbarItems() { // TODO temporary casting until ThemeConfig type is improved return useThemeConfig().navbar.items; } + function NavbarItems({ items }) { return ( <> @@ -24,16 +24,18 @@ function NavbarItems({ items }) { ); } + function NavbarContentLayout({ left, right }) { return (
    {left}
    -
    +
    {right}
    ); } + export default function NavbarContent() { const mobileSidebar = useNavbarMobileSidebar(); const items = useNavbarItems(); diff --git a/website/src/theme/Navbar/Layout/index.js b/website/src/theme/Navbar/Layout/index.js index 11006748e35d..8a767c3f6200 100644 --- a/website/src/theme/Navbar/Layout/index.js +++ b/website/src/theme/Navbar/Layout/index.js @@ -7,7 +7,7 @@ import { import NavbarMobileSidebar from "@theme/Navbar/MobileSidebar"; import clsx from "clsx"; import React, { useEffect } from "react"; -import { useIFrameContext } from "../../Root"; +import { useIFrameContext } from "../../Root.tsx"; import styles from "./styles.module.css"; function NavbarBackdrop(props) { return ( @@ -29,61 +29,55 @@ export default function NavbarLayout({ children }) { const cleanedPath = pathname.replace(/\/v\d+/, ""); useEffect(() => { - if (cleanedPath.startsWith("/terminal") || - cleanedPath.startsWith("/pro") - ) { - if (document.documentElement.getAttribute('data-theme') === 'dark') { + if (cleanedPath.startsWith("/terminal") || cleanedPath.startsWith("/pro")) { + if (document.documentElement.getAttribute("data-theme") === "dark") { document.documentElement.style.setProperty( "--ifm-color-primary", - "#669DCB", + "#669DCB" ); } else { document.documentElement.style.setProperty( "--ifm-color-primary", - "#004A87", + "#004A87" ); } } else if ( cleanedPath.startsWith("/sdk") || cleanedPath.startsWith("/platform") ) { - if (document.documentElement.getAttribute('data-theme') === 'dark') { + if (document.documentElement.getAttribute("data-theme") === "dark") { document.documentElement.style.setProperty( "--ifm-color-primary", - "#F5B166", + "#F5B166" ); } else { document.documentElement.style.setProperty( "--ifm-color-primary", - "#511d11", + "#511d11" ); } - } - else if ( - cleanedPath.startsWith("/excel") - ) { - if (document.documentElement.getAttribute('data-theme') === 'dark') { + } else if (cleanedPath.startsWith("/excel")) { + if (document.documentElement.getAttribute("data-theme") === "dark") { document.documentElement.style.setProperty( "--ifm-color-primary", - "#16A34A", + "#16A34A" ); } else { document.documentElement.style.setProperty( "--ifm-color-primary", - "#14532D", + "#14532D" ); } - } - else if (cleanedPath.startsWith("/bot")) { - if (document.documentElement.getAttribute('data-theme') === 'dark') { + } else if (cleanedPath.startsWith("/bot")) { + if (document.documentElement.getAttribute("data-theme") === "dark") { document.documentElement.style.setProperty( "--ifm-color-primary", - "#b186bb", + "#b186bb" ); } else { document.documentElement.style.setProperty( "--ifm-color-primary", - "#3a204f", + "#3a204f" ); } } else { @@ -123,7 +117,7 @@ export default function NavbarLayout({ children }) { }, { hidden: isIFrame, - }, + } )} > {children} diff --git a/website/src/theme/NotFound.js b/website/src/theme/NotFound.js index 2e664fb89718..8c66f1b58b89 100644 --- a/website/src/theme/NotFound.js +++ b/website/src/theme/NotFound.js @@ -1,8 +1,8 @@ import React from "react"; import Layout from "@theme/Layout"; import Link from "@docusaurus/Link"; -import DarkBlueRadialGradient from "../components/Icons/RadialGradients/DarkBlue"; -import RubyRedRadialGradient from "../components/Icons/RadialGradients/RubyRed"; +import DarkBlueRadialGradient from "../components/Icons/RadialGradients/DarkBlue.tsx"; +import RubyRedRadialGradient from "../components/Icons/RadialGradients/RubyRed.tsx"; import { useIFrameContext } from "@site/src/theme/Root"; export default function NotFound() { diff --git a/website/src/theme/SearchBar/index.js b/website/src/theme/SearchBar/index.js index a6fca7218cb5..fef237d929b0 100644 --- a/website/src/theme/SearchBar/index.js +++ b/website/src/theme/SearchBar/index.js @@ -1,5 +1,8 @@ -import { DocSearchButton, useDocSearchKeyboardEvents } from "@docsearch/react"; - +import "@docsearch/css"; +import { + DocSearchButton, + useDocSearchKeyboardEvents, +} from "@docsearch/react"; import BrowserOnly from "@docusaurus/BrowserOnly"; import Head from "@docusaurus/Head"; import Link from "@docusaurus/Link"; @@ -12,13 +15,16 @@ import { } from "@docusaurus/theme-search-algolia/client"; import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; import translations from "@theme/SearchTranslations"; -import React, { useCallback, useMemo, useRef, useState } from "react"; +import { useCallback, useMemo, useRef, useState } from "react"; import { createPortal } from "react-dom"; -import { useIFrameContext } from "../Root"; +import { useIFrameContext } from "../Root.tsx"; + let DocSearchModal = null; + function Hit({ hit, children }) { return {children}; } + function ResultsFooter({ state, onClose }) { return ( @@ -31,10 +37,12 @@ function ResultsFooter({ state, onClose }) { ); } + function mergeFacetFilters(f1, f2) { const normalize = (f) => (typeof f === "string" ? [f] : f); return [...normalize(f1), ...normalize(f2)]; } + function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { const location = useLocation(); const { siteMetadata } = useDocusaurusContext(); @@ -43,9 +51,9 @@ function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { const configFacetFilters = props.searchParameters?.facetFilters ?? []; const facetFilters = contextualSearch ? // Merge contextual search filters with config filters - mergeFacetFilters(contextualSearchFacetFilters, configFacetFilters) + mergeFacetFilters(contextualSearchFacetFilters, configFacetFilters) : // ... or use config facetFilters - configFacetFilters; + configFacetFilters; // We let user override default searchParameters if she wants to const searchParameters = { ...props.searchParameters, @@ -62,7 +70,7 @@ function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { } return Promise.all([ import("@docsearch/react/modal"), - import("@docsearch/react/style"), + // import("@docsearch/react/style"), import("./styles.css"), ]).then(([{ DocSearchModal: Modal }]) => { DocSearchModal = Modal; @@ -105,19 +113,18 @@ function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { const transformItems = useRef((items) => (props.transformItems ? // Custom transformItems - props.transformItems(items) + props.transformItems(items) : // Default transformItems - items.map((item) => ({ - ...item, - url: processSearchResultUrl(item.url), - }))).filter((item) => { - const firstPathSegment = location.pathname.split("/")[1]; - return ( - !firstPathSegment ? true : - item.url.startsWith(`/${firstPathSegment}/`) - ); - } - ) + items.map((item) => ({ + ...item, + url: processSearchResultUrl(item.url), + })) + ).filter((item) => { + const firstPathSegment = location.pathname.split("/")[1]; + return !firstPathSegment + ? true + : item.url.startsWith(`/${firstPathSegment}/`); + }) ).current; const resultsFooterComponent = useMemo( () => @@ -166,7 +173,8 @@ function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { /> - {() => isOpen && + {() => + isOpen && DocSearchModal && searchContainer.current && createPortal( @@ -187,11 +195,13 @@ function DocSearch({ contextualSearch, externalUrlRegex, ...props }) { translations={translations.modal} />, searchContainer.current - )} + ) + } ); } + export default function SearchBar() { const { siteConfig } = useDocusaurusContext(); const { isIFrame } = useIFrameContext(); diff --git a/website/tailwind.config.js b/website/tailwind.config.ts similarity index 91% rename from website/tailwind.config.js rename to website/tailwind.config.ts index 478fd44fe1fb..8852d95a0a7e 100644 --- a/website/tailwind.config.js +++ b/website/tailwind.config.ts @@ -1,3 +1,7 @@ +import typographyPlugin from "@tailwindcss/typography"; +import { Config } from "tailwindcss"; +import radixPlugin from "tailwindcss-radix"; + const disabledCss = { "code::before": false, "code::after": false, @@ -6,11 +10,9 @@ const disabledCss = { pre: false, code: false, "pre code": false, - "code::before": false, - "code::after": false, }; -module.exports = { +export default { darkMode: ["class", '[data-theme="dark"]'], content: ["./src/**/*.{js,jsx,ts,tsx}", "./content/**/*.{mdx,md}"], theme: { @@ -68,5 +70,5 @@ module.exports = { }, }, }, - plugins: [require("@tailwindcss/typography"), require("tailwindcss-radix")()], -}; + plugins: [typographyPlugin, radixPlugin], +} satisfies Config; diff --git a/website/tsconfig.json b/website/tsconfig.json index 57bbce401d6a..d250afaeddd7 100644 --- a/website/tsconfig.json +++ b/website/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@tsconfig/docusaurus/tsconfig.json", + "extends": "@docusaurus/tsconfig", "compilerOptions": { "baseUrl": "." } diff --git a/website/yarn.lock b/website/yarn.lock deleted file mode 100644 index 3f99c138cd0e..000000000000 --- a/website/yarn.lock +++ /dev/null @@ -1,8432 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@algolia/autocomplete-core@1.9.3": - version "1.9.3" - resolved "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz" - integrity sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw== - dependencies: - "@algolia/autocomplete-plugin-algolia-insights" "1.9.3" - "@algolia/autocomplete-shared" "1.9.3" - -"@algolia/autocomplete-plugin-algolia-insights@1.9.3": - version "1.9.3" - resolved "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz" - integrity sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg== - dependencies: - "@algolia/autocomplete-shared" "1.9.3" - -"@algolia/autocomplete-preset-algolia@1.9.3": - version "1.9.3" - resolved "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz" - integrity sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA== - dependencies: - "@algolia/autocomplete-shared" "1.9.3" - -"@algolia/autocomplete-shared@1.9.3": - version "1.9.3" - resolved "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz" - integrity sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ== - -"@algolia/cache-browser-local-storage@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.20.0.tgz" - integrity sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ== - dependencies: - "@algolia/cache-common" "4.20.0" - -"@algolia/cache-common@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.20.0.tgz" - integrity sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ== - -"@algolia/cache-in-memory@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.20.0.tgz" - integrity sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg== - dependencies: - "@algolia/cache-common" "4.20.0" - -"@algolia/client-account@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.20.0.tgz" - integrity sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q== - dependencies: - "@algolia/client-common" "4.20.0" - "@algolia/client-search" "4.20.0" - "@algolia/transporter" "4.20.0" - -"@algolia/client-analytics@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.20.0.tgz" - integrity sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug== - dependencies: - "@algolia/client-common" "4.20.0" - "@algolia/client-search" "4.20.0" - "@algolia/requester-common" "4.20.0" - "@algolia/transporter" "4.20.0" - -"@algolia/client-common@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.20.0.tgz" - integrity sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ== - dependencies: - "@algolia/requester-common" "4.20.0" - "@algolia/transporter" "4.20.0" - -"@algolia/client-personalization@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.20.0.tgz" - integrity sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ== - dependencies: - "@algolia/client-common" "4.20.0" - "@algolia/requester-common" "4.20.0" - "@algolia/transporter" "4.20.0" - -"@algolia/client-search@>= 4.9.1 < 6", "@algolia/client-search@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.20.0.tgz" - integrity sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg== - dependencies: - "@algolia/client-common" "4.20.0" - "@algolia/requester-common" "4.20.0" - "@algolia/transporter" "4.20.0" - -"@algolia/events@^4.0.1": - version "4.0.1" - resolved "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz" - integrity sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ== - -"@algolia/logger-common@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.20.0.tgz" - integrity sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ== - -"@algolia/logger-console@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.20.0.tgz" - integrity sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA== - dependencies: - "@algolia/logger-common" "4.20.0" - -"@algolia/requester-browser-xhr@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.20.0.tgz" - integrity sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw== - dependencies: - "@algolia/requester-common" "4.20.0" - -"@algolia/requester-common@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.20.0.tgz" - integrity sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng== - -"@algolia/requester-node-http@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.20.0.tgz" - integrity sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng== - dependencies: - "@algolia/requester-common" "4.20.0" - -"@algolia/transporter@4.20.0": - version "4.20.0" - resolved "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.20.0.tgz" - integrity sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg== - dependencies: - "@algolia/cache-common" "4.20.0" - "@algolia/logger-common" "4.20.0" - "@algolia/requester-common" "4.20.0" - -"@ampproject/remapping@^2.1.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz" - integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== - dependencies: - "@jridgewell/gen-mapping" "^0.1.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.8.3": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz" - integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== - dependencies: - "@babel/highlight" "^7.18.6" - -"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.1", "@babel/compat-data@^7.20.5": - version "7.20.14" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz" - integrity sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw== - -"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.11.6", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.18.6", "@babel/core@^7.19.6", "@babel/core@^7.4.0-0": - version "7.20.12" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz" - integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.7" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helpers" "^7.20.7" - "@babel/parser" "^7.20.7" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.12" - "@babel/types" "^7.20.7" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.2" - semver "^6.3.0" - -"@babel/core@7.12.9": - version "7.12.9" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz" - integrity sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.12.5" - "@babel/helper-module-transforms" "^7.12.1" - "@babel/helpers" "^7.12.5" - "@babel/parser" "^7.12.7" - "@babel/template" "^7.12.7" - "@babel/traverse" "^7.12.9" - "@babel/types" "^7.12.7" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.19" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.12.5", "@babel/generator@^7.18.7", "@babel/generator@^7.20.7": - version "7.20.14" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz" - integrity sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg== - dependencies: - "@babel/types" "^7.20.7" - "@jridgewell/gen-mapping" "^0.3.2" - jsesc "^2.5.1" - -"@babel/helper-annotate-as-pure@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz" - integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz" - integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.18.6" - "@babel/types" "^7.18.9" - -"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz" - integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== - dependencies: - "@babel/compat-data" "^7.20.5" - "@babel/helper-validator-option" "^7.18.6" - browserslist "^4.21.3" - lru-cache "^5.1.1" - semver "^6.3.0" - -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.12", "@babel/helper-create-class-features-plugin@^7.20.5", "@babel/helper-create-class-features-plugin@^7.20.7": - version "7.20.12" - resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.12.tgz" - integrity sha512-9OunRkbT0JQcednL0UFvbfXpAsUXiGjUk0a7sN8fUXX7Mue79cUSMjHGDRRi/Vz9vYlpIhLV5fMD5dKoMhhsNQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-member-expression-to-functions" "^7.20.7" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.20.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" - "@babel/helper-split-export-declaration" "^7.18.6" - -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.20.5": - version "7.20.5" - resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz" - integrity sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - regexpu-core "^5.2.1" - -"@babel/helper-define-polyfill-provider@^0.3.3": - version "0.3.3" - resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz" - integrity sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww== - dependencies: - "@babel/helper-compilation-targets" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" - debug "^4.1.1" - lodash.debounce "^4.0.8" - resolve "^1.14.2" - semver "^6.1.2" - -"@babel/helper-environment-visitor@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" - integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== - -"@babel/helper-explode-assignable-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz" - integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz" - integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== - dependencies: - "@babel/template" "^7.18.10" - "@babel/types" "^7.19.0" - -"@babel/helper-hoist-variables@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz" - integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-member-expression-to-functions@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.20.7.tgz" - integrity sha512-9J0CxJLq315fEdi4s7xK5TQaNYjZw+nDVpVqr1axNGKzdrdwYBD5b4uKv3n75aABG0rCCTK8Im8Ww7eYfMrZgw== - dependencies: - "@babel/types" "^7.20.7" - -"@babel/helper-module-imports@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": - version "7.20.11" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz" - integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.20.2" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.19.1" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.10" - "@babel/types" "^7.20.7" - -"@babel/helper-optimise-call-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz" - integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== - dependencies: - "@babel/types" "^7.18.6" - -"@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.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz" - integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== - -"@babel/helper-plugin-utils@7.10.4": - version "7.10.4" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz" - integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - -"@babel/helper-remap-async-to-generator@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz" - integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-wrap-function" "^7.18.9" - "@babel/types" "^7.18.9" - -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz" - integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-member-expression-to-functions" "^7.20.7" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.7" - "@babel/types" "^7.20.7" - -"@babel/helper-simple-access@^7.20.2": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz" - integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== - dependencies: - "@babel/types" "^7.20.2" - -"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": - version "7.20.0" - resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz" - integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== - dependencies: - "@babel/types" "^7.20.0" - -"@babel/helper-split-export-declaration@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz" - integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-string-parser@^7.19.4": - version "7.19.4" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz" - integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== - -"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" - integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== - -"@babel/helper-validator-option@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz" - integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== - -"@babel/helper-wrap-function@^7.18.9": - version "7.20.5" - resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz" - integrity sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q== - dependencies: - "@babel/helper-function-name" "^7.19.0" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.5" - "@babel/types" "^7.20.5" - -"@babel/helpers@^7.12.5", "@babel/helpers@^7.20.7": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz" - integrity sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg== - dependencies: - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.13" - "@babel/types" "^7.20.7" - -"@babel/highlight@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" - integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== - dependencies: - "@babel/helper-validator-identifier" "^7.18.6" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@^7.12.7", "@babel/parser@^7.18.8", "@babel/parser@^7.20.13", "@babel/parser@^7.20.7": - version "7.20.15" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz" - integrity sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg== - -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": - version "7.18.6" - 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.18.6.tgz" - integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz" - integrity sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" - "@babel/plugin-proposal-optional-chaining" "^7.20.7" - -"@babel/plugin-proposal-async-generator-functions@^7.20.1": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz" - integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-remap-async-to-generator" "^7.18.9" - "@babel/plugin-syntax-async-generators" "^7.8.4" - -"@babel/plugin-proposal-class-properties@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz" - integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-class-static-block@^7.18.6": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.20.7.tgz" - integrity sha512-AveGOoi9DAjUYYuUAG//Ig69GlazLnoyzMw68VCDux+c1tsnnH/OkYcpz/5xzMkEFC6UxjR5Gw1c+iY2wOGVeQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.20.7" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-proposal-dynamic-import@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz" - integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - -"@babel/plugin-proposal-export-namespace-from@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz" - integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-proposal-json-strings@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz" - integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz" - integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz" - integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - -"@babel/plugin-proposal-numeric-separator@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz" - integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@^7.20.2": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz" - integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== - dependencies: - "@babel/compat-data" "^7.20.5" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.20.7" - -"@babel/plugin-proposal-object-rest-spread@7.12.1": - version "7.12.1" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz" - integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.12.1" - -"@babel/plugin-proposal-optional-catch-binding@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz" - integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - -"@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.20.7.tgz" - integrity sha512-T+A7b1kfjtRM51ssoOfS1+wbyCVqorfyZhT99TvxxLMirPShD8CzKMRepMlCBGM5RpHMbn8s+5MMHnPstJH6mQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - -"@babel/plugin-proposal-private-methods@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz" - integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-private-property-in-object@^7.18.6": - version "7.20.5" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz" - integrity sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-create-class-features-plugin" "^7.20.5" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - -"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz" - integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@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" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - 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" - 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" - 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" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-syntax-import-assertions@^7.20.0": - version "7.20.0" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz" - integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - -"@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" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-jsx@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz" - integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-syntax-jsx@7.12.1": - version "7.12.1" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz" - integrity sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@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" - 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" - 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" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3", "@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" - 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" - 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" - 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" - 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" - integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-typescript@^7.20.0": - version "7.20.0" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz" - integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - -"@babel/plugin-transform-arrow-functions@^7.18.6": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz" - integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-async-to-generator@^7.18.6": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz" - integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== - dependencies: - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-remap-async-to-generator" "^7.18.9" - -"@babel/plugin-transform-block-scoped-functions@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz" - integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-block-scoping@^7.20.2": - version "7.20.15" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.15.tgz" - integrity sha512-Vv4DMZ6MiNOhu/LdaZsT/bsLRxgL94d269Mv4R/9sp6+Mp++X/JqypZYypJXLlM4mlL352/Egzbzr98iABH1CA== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-classes@^7.20.2": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.7.tgz" - integrity sha512-LWYbsiXTPKl+oBlXUGlwNlJZetXD5Am+CyBdqhPsDVjM9Jc8jwBJFrKhHf900Kfk2eZG1y9MAG3UNajol7A4VQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-replace-supers" "^7.20.7" - "@babel/helper-split-export-declaration" "^7.18.6" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.18.9": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz" - integrity sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/template" "^7.20.7" - -"@babel/plugin-transform-destructuring@^7.20.2": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz" - integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz" - integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-duplicate-keys@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz" - integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-exponentiation-operator@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz" - integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-for-of@^7.18.8": - version "7.18.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz" - integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-function-name@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz" - integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== - dependencies: - "@babel/helper-compilation-targets" "^7.18.9" - "@babel/helper-function-name" "^7.18.9" - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-literals@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz" - integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-member-expression-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz" - integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-modules-amd@^7.19.6": - version "7.20.11" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz" - integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== - dependencies: - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-modules-commonjs@^7.19.6": - version "7.20.11" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz" - integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== - dependencies: - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-simple-access" "^7.20.2" - -"@babel/plugin-transform-modules-systemjs@^7.19.6": - version "7.20.11" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz" - integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== - dependencies: - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-validator-identifier" "^7.19.1" - -"@babel/plugin-transform-modules-umd@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz" - integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== - dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": - version "7.20.5" - resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz" - integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.20.5" - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-new-target@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz" - integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-object-super@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz" - integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.6" - -"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz" - integrity sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-property-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz" - integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-react-constant-elements@^7.18.12": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz" - integrity sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-react-display-name@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz" - integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-react-jsx-development@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz" - integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA== - dependencies: - "@babel/plugin-transform-react-jsx" "^7.18.6" - -"@babel/plugin-transform-react-jsx@^7.18.6": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.13.tgz" - integrity sha512-MmTZx/bkUrfJhhYAYt3Urjm+h8DQGrPrnKQ94jLo7NLuOU+T89a7IByhKmrb8SKhrIYIQ0FN0CHMbnFRen4qNw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.20.7" - -"@babel/plugin-transform-react-pure-annotations@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz" - integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-regenerator@^7.18.6": - version "7.20.5" - resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz" - integrity sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - regenerator-transform "^0.15.1" - -"@babel/plugin-transform-reserved-words@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz" - integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-runtime@^7.18.6": - version "7.19.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz" - integrity sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw== - dependencies: - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" - babel-plugin-polyfill-corejs2 "^0.3.3" - babel-plugin-polyfill-corejs3 "^0.6.0" - babel-plugin-polyfill-regenerator "^0.4.1" - semver "^6.3.0" - -"@babel/plugin-transform-shorthand-properties@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz" - integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-spread@^7.19.0": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz" - integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" - -"@babel/plugin-transform-sticky-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz" - integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-template-literals@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz" - integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-typeof-symbol@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz" - integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-typescript@^7.18.6": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.13.tgz" - integrity sha512-O7I/THxarGcDZxkgWKMUrk7NK1/WbHAg3Xx86gqS6x9MTrNL6AwIluuZ96ms4xeDe6AVx6rjHbWHP7x26EPQBA== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.20.12" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-typescript" "^7.20.0" - -"@babel/plugin-transform-unicode-escapes@^7.18.10": - version "7.18.10" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz" - integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-unicode-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz" - integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/preset-env@^7.18.6", "@babel/preset-env@^7.19.4": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz" - integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== - dependencies: - "@babel/compat-data" "^7.20.1" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" - "@babel/plugin-proposal-async-generator-functions" "^7.20.1" - "@babel/plugin-proposal-class-properties" "^7.18.6" - "@babel/plugin-proposal-class-static-block" "^7.18.6" - "@babel/plugin-proposal-dynamic-import" "^7.18.6" - "@babel/plugin-proposal-export-namespace-from" "^7.18.9" - "@babel/plugin-proposal-json-strings" "^7.18.6" - "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" - "@babel/plugin-proposal-numeric-separator" "^7.18.6" - "@babel/plugin-proposal-object-rest-spread" "^7.20.2" - "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" - "@babel/plugin-proposal-optional-chaining" "^7.18.9" - "@babel/plugin-proposal-private-methods" "^7.18.6" - "@babel/plugin-proposal-private-property-in-object" "^7.18.6" - "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.20.0" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-transform-arrow-functions" "^7.18.6" - "@babel/plugin-transform-async-to-generator" "^7.18.6" - "@babel/plugin-transform-block-scoped-functions" "^7.18.6" - "@babel/plugin-transform-block-scoping" "^7.20.2" - "@babel/plugin-transform-classes" "^7.20.2" - "@babel/plugin-transform-computed-properties" "^7.18.9" - "@babel/plugin-transform-destructuring" "^7.20.2" - "@babel/plugin-transform-dotall-regex" "^7.18.6" - "@babel/plugin-transform-duplicate-keys" "^7.18.9" - "@babel/plugin-transform-exponentiation-operator" "^7.18.6" - "@babel/plugin-transform-for-of" "^7.18.8" - "@babel/plugin-transform-function-name" "^7.18.9" - "@babel/plugin-transform-literals" "^7.18.9" - "@babel/plugin-transform-member-expression-literals" "^7.18.6" - "@babel/plugin-transform-modules-amd" "^7.19.6" - "@babel/plugin-transform-modules-commonjs" "^7.19.6" - "@babel/plugin-transform-modules-systemjs" "^7.19.6" - "@babel/plugin-transform-modules-umd" "^7.18.6" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" - "@babel/plugin-transform-new-target" "^7.18.6" - "@babel/plugin-transform-object-super" "^7.18.6" - "@babel/plugin-transform-parameters" "^7.20.1" - "@babel/plugin-transform-property-literals" "^7.18.6" - "@babel/plugin-transform-regenerator" "^7.18.6" - "@babel/plugin-transform-reserved-words" "^7.18.6" - "@babel/plugin-transform-shorthand-properties" "^7.18.6" - "@babel/plugin-transform-spread" "^7.19.0" - "@babel/plugin-transform-sticky-regex" "^7.18.6" - "@babel/plugin-transform-template-literals" "^7.18.9" - "@babel/plugin-transform-typeof-symbol" "^7.18.9" - "@babel/plugin-transform-unicode-escapes" "^7.18.10" - "@babel/plugin-transform-unicode-regex" "^7.18.6" - "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.20.2" - babel-plugin-polyfill-corejs2 "^0.3.3" - babel-plugin-polyfill-corejs3 "^0.6.0" - babel-plugin-polyfill-regenerator "^0.4.1" - core-js-compat "^3.25.1" - semver "^6.3.0" - -"@babel/preset-modules@^0.1.5": - version "0.1.5" - resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz" - integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/types" "^7.4.4" - esutils "^2.0.2" - -"@babel/preset-react@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz" - integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-transform-react-display-name" "^7.18.6" - "@babel/plugin-transform-react-jsx" "^7.18.6" - "@babel/plugin-transform-react-jsx-development" "^7.18.6" - "@babel/plugin-transform-react-pure-annotations" "^7.18.6" - -"@babel/preset-typescript@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz" - integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-transform-typescript" "^7.18.6" - -"@babel/regjsgen@^0.8.0": - version "0.8.0" - resolved "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz" - integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== - -"@babel/runtime-corejs3@^7.18.6": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.13.tgz" - integrity sha512-p39/6rmY9uvlzRiLZBIB3G9/EBr66LBMcYm7fIDeSBNdRjF2AGD3rFZucUyAgGHC2N+7DdLvVi33uTjSE44FIw== - dependencies: - core-js-pure "^3.25.1" - regenerator-runtime "^0.13.11" - -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.13", "@babel/runtime@^7.8.4": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz" - integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== - dependencies: - regenerator-runtime "^0.13.11" - -"@babel/template@^7.12.7", "@babel/template@^7.18.10", "@babel/template@^7.20.7": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz" - integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - -"@babel/traverse@^7.12.9", "@babel/traverse@^7.18.8", "@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.13", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7": - version "7.20.13" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz" - integrity sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.7" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.20.13" - "@babel/types" "^7.20.7" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/types@^7.12.7", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.4.4": - version "7.20.7" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz" - integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== - dependencies: - "@babel/helper-string-parser" "^7.19.4" - "@babel/helper-validator-identifier" "^7.19.1" - to-fast-properties "^2.0.0" - -"@colors/colors@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz" - integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== - -"@docsearch/css@3.5.2": - version "3.5.2" - resolved "https://registry.npmjs.org/@docsearch/css/-/css-3.5.2.tgz" - integrity sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA== - -"@docsearch/react@^3.1.1": - version "3.5.2" - resolved "https://registry.npmjs.org/@docsearch/react/-/react-3.5.2.tgz" - integrity sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng== - dependencies: - "@algolia/autocomplete-core" "1.9.3" - "@algolia/autocomplete-preset-algolia" "1.9.3" - "@docsearch/css" "3.5.2" - algoliasearch "^4.19.1" - -"@docusaurus/core@^2.4.3", "@docusaurus/core@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/core/-/core-2.4.3.tgz" - integrity sha512-dWH5P7cgeNSIg9ufReX6gaCl/TmrGKD38Orbwuz05WPhAQtFXHd5B8Qym1TiXfvUNvwoYKkAJOJuGe8ou0Z7PA== - dependencies: - "@babel/core" "^7.18.6" - "@babel/generator" "^7.18.7" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-transform-runtime" "^7.18.6" - "@babel/preset-env" "^7.18.6" - "@babel/preset-react" "^7.18.6" - "@babel/preset-typescript" "^7.18.6" - "@babel/runtime" "^7.18.6" - "@babel/runtime-corejs3" "^7.18.6" - "@babel/traverse" "^7.18.8" - "@docusaurus/cssnano-preset" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/react-loadable" "5.5.2" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - "@slorber/static-site-generator-webpack-plugin" "^4.0.7" - "@svgr/webpack" "^6.2.1" - autoprefixer "^10.4.7" - babel-loader "^8.2.5" - babel-plugin-dynamic-import-node "^2.3.3" - boxen "^6.2.1" - chalk "^4.1.2" - chokidar "^3.5.3" - clean-css "^5.3.0" - cli-table3 "^0.6.2" - combine-promises "^1.1.0" - commander "^5.1.0" - copy-webpack-plugin "^11.0.0" - core-js "^3.23.3" - css-loader "^6.7.1" - css-minimizer-webpack-plugin "^4.0.0" - cssnano "^5.1.12" - del "^6.1.1" - detect-port "^1.3.0" - escape-html "^1.0.3" - eta "^2.0.0" - file-loader "^6.2.0" - fs-extra "^10.1.0" - html-minifier-terser "^6.1.0" - html-tags "^3.2.0" - html-webpack-plugin "^5.5.0" - import-fresh "^3.3.0" - leven "^3.1.0" - lodash "^4.17.21" - mini-css-extract-plugin "^2.6.1" - postcss "^8.4.14" - postcss-loader "^7.0.0" - prompts "^2.4.2" - react-dev-utils "^12.0.1" - react-helmet-async "^1.3.0" - react-loadable "npm:@docusaurus/react-loadable@5.5.2" - react-loadable-ssr-addon-v5-slorber "^1.0.1" - react-router "^5.3.3" - react-router-config "^5.1.1" - react-router-dom "^5.3.3" - rtl-detect "^1.0.4" - semver "^7.3.7" - serve-handler "^6.1.3" - shelljs "^0.8.5" - terser-webpack-plugin "^5.3.3" - tslib "^2.4.0" - update-notifier "^5.1.0" - url-loader "^4.1.1" - wait-on "^6.0.1" - webpack "^5.73.0" - webpack-bundle-analyzer "^4.5.0" - webpack-dev-server "^4.9.3" - webpack-merge "^5.8.0" - webpackbar "^5.0.2" - -"@docusaurus/cssnano-preset@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.4.3.tgz" - integrity sha512-ZvGSRCi7z9wLnZrXNPG6DmVPHdKGd8dIn9pYbEOFiYihfv4uDR3UtxogmKf+rT8ZlKFf5Lqne8E8nt08zNM8CA== - dependencies: - cssnano-preset-advanced "^5.3.8" - postcss "^8.4.14" - postcss-sort-media-queries "^4.2.1" - tslib "^2.4.0" - -"@docusaurus/logger@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.4.3.tgz" - integrity sha512-Zxws7r3yLufk9xM1zq9ged0YHs65mlRmtsobnFkdZTxWXdTYlWWLWdKyNKAsVC+D7zg+pv2fGbyabdOnyZOM3w== - dependencies: - chalk "^4.1.2" - tslib "^2.4.0" - -"@docusaurus/mdx-loader@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.4.3.tgz" - integrity sha512-b1+fDnWtl3GiqkL0BRjYtc94FZrcDDBV1j8446+4tptB9BAOlePwG2p/pK6vGvfL53lkOsszXMghr2g67M0vCw== - dependencies: - "@babel/parser" "^7.18.8" - "@babel/traverse" "^7.18.8" - "@docusaurus/logger" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@mdx-js/mdx" "^1.6.22" - escape-html "^1.0.3" - file-loader "^6.2.0" - fs-extra "^10.1.0" - image-size "^1.0.1" - mdast-util-to-string "^2.0.0" - remark-emoji "^2.2.0" - stringify-object "^3.3.0" - tslib "^2.4.0" - unified "^9.2.2" - unist-util-visit "^2.0.3" - url-loader "^4.1.1" - webpack "^5.73.0" - -"@docusaurus/module-type-aliases@^2.4.3", "@docusaurus/module-type-aliases@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.4.3.tgz" - integrity sha512-cwkBkt1UCiduuvEAo7XZY01dJfRn7UR/75mBgOdb1hKknhrabJZ8YH+7savd/y9kLExPyrhe0QwdS9GuzsRRIA== - dependencies: - "@docusaurus/react-loadable" "5.5.2" - "@docusaurus/types" "2.4.3" - "@types/history" "^4.7.11" - "@types/react" "*" - "@types/react-router-config" "*" - "@types/react-router-dom" "*" - react-helmet-async "*" - react-loadable "npm:@docusaurus/react-loadable@5.5.2" - -"@docusaurus/plugin-client-redirects@^2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-2.4.3.tgz" - integrity sha512-iCwc/zH8X6eNtLYdyUJFY6+GbsbRgMgvAC/TmSmCYTmwnoN5Y1Bc5OwUkdtoch0XKizotJMRAmGIAhP8sAetdQ== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - eta "^2.0.0" - fs-extra "^10.1.0" - lodash "^4.17.21" - tslib "^2.4.0" - -"@docusaurus/plugin-content-blog@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.4.3.tgz" - integrity sha512-PVhypqaA0t98zVDpOeTqWUTvRqCEjJubtfFUQ7zJNYdbYTbS/E/ytq6zbLVsN/dImvemtO/5JQgjLxsh8XLo8Q== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - cheerio "^1.0.0-rc.12" - feed "^4.2.2" - fs-extra "^10.1.0" - lodash "^4.17.21" - reading-time "^1.5.0" - tslib "^2.4.0" - unist-util-visit "^2.0.3" - utility-types "^3.10.0" - webpack "^5.73.0" - -"@docusaurus/plugin-content-docs@^2.4.3", "@docusaurus/plugin-content-docs@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.4.3.tgz" - integrity sha512-N7Po2LSH6UejQhzTCsvuX5NOzlC+HiXOVvofnEPj0WhMu1etpLEXE6a4aTxrtg95lQ5kf0xUIdjX9sh3d3G76A== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/module-type-aliases" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - "@types/react-router-config" "^5.0.6" - combine-promises "^1.1.0" - fs-extra "^10.1.0" - import-fresh "^3.3.0" - js-yaml "^4.1.0" - lodash "^4.17.21" - tslib "^2.4.0" - utility-types "^3.10.0" - webpack "^5.73.0" - -"@docusaurus/plugin-content-pages@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.4.3.tgz" - integrity sha512-txtDVz7y3zGk67q0HjG0gRttVPodkHqE0bpJ+7dOaTH40CQFLSh7+aBeGnPOTl+oCPG+hxkim4SndqPqXjQ8Bg== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - fs-extra "^10.1.0" - tslib "^2.4.0" - webpack "^5.73.0" - -"@docusaurus/plugin-debug@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.4.3.tgz" - integrity sha512-LkUbuq3zCmINlFb+gAd4ZvYr+bPAzMC0hwND4F7V9bZ852dCX8YoWyovVUBKq4er1XsOwSQaHmNGtObtn8Av8Q== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - fs-extra "^10.1.0" - react-json-view "^1.21.3" - tslib "^2.4.0" - -"@docusaurus/plugin-google-analytics@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.4.3.tgz" - integrity sha512-KzBV3k8lDkWOhg/oYGxlK5o9bOwX7KpPc/FTWoB+SfKhlHfhq7qcQdMi1elAaVEIop8tgK6gD1E58Q+XC6otSQ== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - tslib "^2.4.0" - -"@docusaurus/plugin-google-gtag@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.4.3.tgz" - integrity sha512-5FMg0rT7sDy4i9AGsvJC71MQrqQZwgLNdDetLEGDHLfSHLvJhQbTCUGbGXknUgWXQJckcV/AILYeJy+HhxeIFA== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - tslib "^2.4.0" - -"@docusaurus/plugin-google-tag-manager@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.4.3.tgz" - integrity sha512-1jTzp71yDGuQiX9Bi0pVp3alArV0LSnHXempvQTxwCGAEzUWWaBg4d8pocAlTpbP9aULQQqhgzrs8hgTRPOM0A== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - tslib "^2.4.0" - -"@docusaurus/plugin-sitemap@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.4.3.tgz" - integrity sha512-LRQYrK1oH1rNfr4YvWBmRzTL0LN9UAPxBbghgeFRBm5yloF6P+zv1tm2pe2hQTX/QP5bSKdnajCvfnScgKXMZQ== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - fs-extra "^10.1.0" - sitemap "^7.1.1" - tslib "^2.4.0" - -"@docusaurus/preset-classic@^2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.4.3.tgz" - integrity sha512-tRyMliepY11Ym6hB1rAFSNGwQDpmszvWYJvlK1E+md4SW8i6ylNHtpZjaYFff9Mdk3i/Pg8ItQq9P0daOJAvQw== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/plugin-content-blog" "2.4.3" - "@docusaurus/plugin-content-docs" "2.4.3" - "@docusaurus/plugin-content-pages" "2.4.3" - "@docusaurus/plugin-debug" "2.4.3" - "@docusaurus/plugin-google-analytics" "2.4.3" - "@docusaurus/plugin-google-gtag" "2.4.3" - "@docusaurus/plugin-google-tag-manager" "2.4.3" - "@docusaurus/plugin-sitemap" "2.4.3" - "@docusaurus/theme-classic" "2.4.3" - "@docusaurus/theme-common" "2.4.3" - "@docusaurus/theme-search-algolia" "2.4.3" - "@docusaurus/types" "2.4.3" - -"@docusaurus/react-loadable@5.5.2": - version "5.5.2" - resolved "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz" - integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== - dependencies: - "@types/react" "*" - prop-types "^15.6.2" - -"@docusaurus/theme-classic@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.4.3.tgz" - integrity sha512-QKRAJPSGPfDY2yCiPMIVyr+MqwZCIV2lxNzqbyUW0YkrlmdzzP3WuQJPMGLCjWgQp/5c9kpWMvMxjhpZx1R32Q== - dependencies: - "@docusaurus/core" "2.4.3" - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/module-type-aliases" "2.4.3" - "@docusaurus/plugin-content-blog" "2.4.3" - "@docusaurus/plugin-content-docs" "2.4.3" - "@docusaurus/plugin-content-pages" "2.4.3" - "@docusaurus/theme-common" "2.4.3" - "@docusaurus/theme-translations" "2.4.3" - "@docusaurus/types" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - "@mdx-js/react" "^1.6.22" - clsx "^1.2.1" - copy-text-to-clipboard "^3.0.1" - infima "0.2.0-alpha.43" - lodash "^4.17.21" - nprogress "^0.2.0" - postcss "^8.4.14" - prism-react-renderer "^1.3.5" - prismjs "^1.28.0" - react-router-dom "^5.3.3" - rtlcss "^3.5.0" - tslib "^2.4.0" - utility-types "^3.10.0" - -"@docusaurus/theme-common@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.4.3.tgz" - integrity sha512-7KaDJBXKBVGXw5WOVt84FtN8czGWhM0lbyWEZXGp8AFfL6sZQfRTluFp4QriR97qwzSyOfQb+nzcDZZU4tezUw== - dependencies: - "@docusaurus/mdx-loader" "2.4.3" - "@docusaurus/module-type-aliases" "2.4.3" - "@docusaurus/plugin-content-blog" "2.4.3" - "@docusaurus/plugin-content-docs" "2.4.3" - "@docusaurus/plugin-content-pages" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-common" "2.4.3" - "@types/history" "^4.7.11" - "@types/react" "*" - "@types/react-router-config" "*" - clsx "^1.2.1" - parse-numeric-range "^1.3.0" - prism-react-renderer "^1.3.5" - tslib "^2.4.0" - use-sync-external-store "^1.2.0" - utility-types "^3.10.0" - -"@docusaurus/theme-search-algolia@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.4.3.tgz" - integrity sha512-jziq4f6YVUB5hZOB85ELATwnxBz/RmSLD3ksGQOLDPKVzat4pmI8tddNWtriPpxR04BNT+ZfpPUMFkNFetSW1Q== - dependencies: - "@docsearch/react" "^3.1.1" - "@docusaurus/core" "2.4.3" - "@docusaurus/logger" "2.4.3" - "@docusaurus/plugin-content-docs" "2.4.3" - "@docusaurus/theme-common" "2.4.3" - "@docusaurus/theme-translations" "2.4.3" - "@docusaurus/utils" "2.4.3" - "@docusaurus/utils-validation" "2.4.3" - algoliasearch "^4.13.1" - algoliasearch-helper "^3.10.0" - clsx "^1.2.1" - eta "^2.0.0" - fs-extra "^10.1.0" - lodash "^4.17.21" - tslib "^2.4.0" - utility-types "^3.10.0" - -"@docusaurus/theme-translations@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.4.3.tgz" - integrity sha512-H4D+lbZbjbKNS/Zw1Lel64PioUAIT3cLYYJLUf3KkuO/oc9e0QCVhIYVtUI2SfBCF2NNdlyhBDQEEMygsCedIg== - dependencies: - fs-extra "^10.1.0" - tslib "^2.4.0" - -"@docusaurus/types@*", "@docusaurus/types@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/types/-/types-2.4.3.tgz" - integrity sha512-W6zNLGQqfrp/EoPD0bhb9n7OobP+RHpmvVzpA+Z/IuU3Q63njJM24hmT0GYboovWcDtFmnIJC9wcyx4RVPQscw== - dependencies: - "@types/history" "^4.7.11" - "@types/react" "*" - commander "^5.1.0" - joi "^17.6.0" - react-helmet-async "^1.3.0" - utility-types "^3.10.0" - webpack "^5.73.0" - webpack-merge "^5.8.0" - -"@docusaurus/utils-common@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.4.3.tgz" - integrity sha512-/jascp4GbLQCPVmcGkPzEQjNaAk3ADVfMtudk49Ggb+131B1WDD6HqlSmDf8MxGdy7Dja2gc+StHf01kiWoTDQ== - dependencies: - tslib "^2.4.0" - -"@docusaurus/utils-validation@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.4.3.tgz" - integrity sha512-G2+Vt3WR5E/9drAobP+hhZQMaswRwDlp6qOMi7o7ZypB+VO7N//DZWhZEwhcRGepMDJGQEwtPv7UxtYwPL9PBw== - dependencies: - "@docusaurus/logger" "2.4.3" - "@docusaurus/utils" "2.4.3" - joi "^17.6.0" - js-yaml "^4.1.0" - tslib "^2.4.0" - -"@docusaurus/utils@2.4.3": - version "2.4.3" - resolved "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.4.3.tgz" - integrity sha512-fKcXsjrD86Smxv8Pt0TBFqYieZZCPh4cbf9oszUq/AMhZn3ujwpKaVYZACPX8mmjtYx0JOgNx52CREBfiGQB4A== - dependencies: - "@docusaurus/logger" "2.4.3" - "@svgr/webpack" "^6.2.1" - escape-string-regexp "^4.0.0" - file-loader "^6.2.0" - fs-extra "^10.1.0" - github-slugger "^1.4.0" - globby "^11.1.0" - gray-matter "^4.0.3" - js-yaml "^4.1.0" - lodash "^4.17.21" - micromatch "^4.0.5" - resolve-pathname "^3.0.0" - shelljs "^0.8.5" - tslib "^2.4.0" - url-loader "^4.1.1" - webpack "^5.73.0" - -"@floating-ui/core@^0.7.3": - version "0.7.3" - resolved "https://registry.npmjs.org/@floating-ui/core/-/core-0.7.3.tgz" - integrity sha512-buc8BXHmG9l82+OQXOFU3Kr2XQx9ys01U/Q9HMIrZ300iLc8HLMgh7dcCqgYzAzf4BkoQvDcXf5Y+CuEZ5JBYg== - -"@floating-ui/dom@^0.5.3": - version "0.5.4" - resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.5.4.tgz" - integrity sha512-419BMceRLq0RrmTSDxn8hf9R3VCJv2K9PUfugh5JyEFmdjzDo+e8U5EdR8nzKq8Yj1htzLm3b6eQEEam3/rrtg== - dependencies: - "@floating-ui/core" "^0.7.3" - -"@floating-ui/react-dom@0.7.2": - version "0.7.2" - resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-0.7.2.tgz" - integrity sha512-1T0sJcpHgX/u4I1OzIEhlcrvkUN8ln39nz7fMoE/2HDHrPiMFoOGR7++GYyfUmIQHkkrTinaeQsO3XWubjSvGg== - dependencies: - "@floating-ui/dom" "^0.5.3" - use-isomorphic-layout-effect "^1.1.1" - -"@hapi/hoek@^9.0.0": - version "9.3.0" - resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz" - integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== - -"@hapi/topo@^5.0.0": - version "5.1.0" - resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz" - integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== - dependencies: - "@hapi/hoek" "^9.0.0" - -"@jest/schemas@^29.4.2": - version "29.4.2" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.2.tgz" - integrity sha512-ZrGzGfh31NtdVH8tn0mgJw4khQuNHiKqdzJAFbCaERbyCP9tHlxWuL/mnMu8P7e/+k4puWjI1NOzi/sFsjce/g== - dependencies: - "@sinclair/typebox" "^0.25.16" - -"@jest/types@^29.4.2": - version "29.4.2" - resolved "https://registry.npmjs.org/@jest/types/-/types-29.4.2.tgz" - integrity sha512-CKlngyGP0fwlgC1BRUtPZSiWLBhyS9dKwKmyGxk8Z6M82LBEGB2aLQSg+U1MyLsU+M7UjnlLllBM2BLWKVm/Uw== - dependencies: - "@jest/schemas" "^29.4.2" - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^17.0.8" - chalk "^4.0.0" - -"@jridgewell/gen-mapping@^0.1.0": - version "0.1.1" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz" - integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== - dependencies: - "@jridgewell/set-array" "^1.0.0" - "@jridgewell/sourcemap-codec" "^1.4.10" - -"@jridgewell/gen-mapping@^0.3.0": - version "0.3.2" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" - integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/gen-mapping@^0.3.2": - version "0.3.2" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" - integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - -"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== - -"@jridgewell/source-map@^0.3.2": - version "0.3.2" - resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz" - integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.17" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz" - integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - -"@leichtgewicht/ip-codec@^2.0.1": - version "2.0.4" - resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz" - integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== - -"@mdx-js/mdx@^1.6.22": - version "1.6.22" - resolved "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz" - integrity sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA== - dependencies: - "@babel/core" "7.12.9" - "@babel/plugin-syntax-jsx" "7.12.1" - "@babel/plugin-syntax-object-rest-spread" "7.8.3" - "@mdx-js/util" "1.6.22" - babel-plugin-apply-mdx-type-prop "1.6.22" - babel-plugin-extract-import-names "1.6.22" - camelcase-css "2.0.1" - detab "2.0.4" - hast-util-raw "6.0.1" - lodash.uniq "4.5.0" - mdast-util-to-hast "10.0.1" - remark-footnotes "2.0.0" - remark-mdx "1.6.22" - remark-parse "8.0.3" - remark-squeeze-paragraphs "4.0.0" - style-to-object "0.3.0" - unified "9.2.0" - unist-builder "2.0.3" - unist-util-visit "2.0.3" - -"@mdx-js/react@^1.6.22": - version "1.6.22" - resolved "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz" - integrity sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg== - -"@mdx-js/util@1.6.22": - version "1.6.22" - resolved "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz" - integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== - -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== - dependencies: - "@nodelib/fs.stat" "2.0.5" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": - version "2.0.5" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3": - version "1.2.8" - resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== - dependencies: - "@nodelib/fs.scandir" "2.1.5" - fastq "^1.6.0" - -"@polka/url@^1.0.0-next.20": - version "1.0.0-next.21" - resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz" - integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== - -"@radix-ui/primitive@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.0.tgz" - integrity sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-arrow@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.0.1.tgz" - integrity sha512-1yientwXqXcErDHEv8av9ZVNEBldH8L9scVR3is20lL+jOCfcJyMFZFEY5cgIrgexsq1qggSXqiEL/d/4f+QXA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.1" - -"@radix-ui/react-arrow@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.0.2.tgz" - integrity sha512-fqYwhhI9IarZ0ll2cUSfKuXHlJK0qE4AfnRrPBbRwEH/4mGQn04/QFGomLi8TXWIdv9WJk//KgGm+aDxVIr1wA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.2" - -"@radix-ui/react-compose-refs@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.0.tgz" - integrity sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-context@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.0.tgz" - integrity sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-dialog@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.2.tgz" - integrity sha512-EKxxp2WNSmUPkx4trtWNmZ4/vAYEg7JkAfa1HKBUnaubw9eHzf1Orr9B472lJYaYz327RHDrd4R95fsw7VR8DA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-dismissable-layer" "1.0.2" - "@radix-ui/react-focus-guards" "1.0.0" - "@radix-ui/react-focus-scope" "1.0.1" - "@radix-ui/react-id" "1.0.0" - "@radix-ui/react-portal" "1.0.1" - "@radix-ui/react-presence" "1.0.0" - "@radix-ui/react-primitive" "1.0.1" - "@radix-ui/react-slot" "1.0.1" - "@radix-ui/react-use-controllable-state" "1.0.0" - aria-hidden "^1.1.1" - react-remove-scroll "2.5.5" - -"@radix-ui/react-dismissable-layer@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.2.tgz" - integrity sha512-WjJzMrTWROozDqLB0uRWYvj4UuXsM/2L19EmQ3Au+IJWqwvwq9Bwd+P8ivo0Deg9JDPArR1I6MbWNi1CmXsskg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-primitive" "1.0.1" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-escape-keydown" "1.0.2" - -"@radix-ui/react-dismissable-layer@1.0.3": - version "1.0.3" - resolved "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.3.tgz" - integrity sha512-nXZOvFjOuHS1ovumntGV7NNoLaEp9JEvTht3MBjP44NSW5hUKj/8OnfN3+8WmB+CEhN44XaGhpHoSsUIEl5P7Q== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-primitive" "1.0.2" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-escape-keydown" "1.0.2" - -"@radix-ui/react-focus-guards@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.0.tgz" - integrity sha512-UagjDk4ijOAnGu4WMUPj9ahi7/zJJqNZ9ZAiGPp7waUWJO0O1aWXi/udPphI0IUjvrhBsZJGSN66dR2dsueLWQ== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-focus-scope@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.1.tgz" - integrity sha512-Ej2MQTit8IWJiS2uuujGUmxXjF/y5xZptIIQnyd2JHLwtV0R2j9NRVoRj/1j/gJ7e3REdaBw4Hjf4a1ImhkZcQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-primitive" "1.0.1" - "@radix-ui/react-use-callback-ref" "1.0.0" - -"@radix-ui/react-id@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.0.tgz" - integrity sha512-Q6iAB/U7Tq3NTolBBQbHTgclPmGWE3OlktGGqrClPozSw4vkQ1DfQAOtzgRPecKsMdJINE05iaoDUG8tRzCBjw== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-layout-effect" "1.0.0" - -"@radix-ui/react-popover@^1.0.3": - version "1.0.3" - resolved "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.0.3.tgz" - integrity sha512-YwedSukfWsyJs3/yP3yXUq44k4/JBe3jqU63Z8v2i19qZZ3dsx32oma17ztgclWPNuqp3A+Xa9UiDlZHyVX8Vg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-dismissable-layer" "1.0.2" - "@radix-ui/react-focus-guards" "1.0.0" - "@radix-ui/react-focus-scope" "1.0.1" - "@radix-ui/react-id" "1.0.0" - "@radix-ui/react-popper" "1.1.0" - "@radix-ui/react-portal" "1.0.1" - "@radix-ui/react-presence" "1.0.0" - "@radix-ui/react-primitive" "1.0.1" - "@radix-ui/react-slot" "1.0.1" - "@radix-ui/react-use-controllable-state" "1.0.0" - aria-hidden "^1.1.1" - react-remove-scroll "2.5.5" - -"@radix-ui/react-popper@1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.0.tgz" - integrity sha512-07U7jpI0dZcLRAxT7L9qs6HecSoPhDSJybF7mEGHJDBDv+ZoGCvIlva0s+WxMXwJEav+ckX3hAlXBtnHmuvlCQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@floating-ui/react-dom" "0.7.2" - "@radix-ui/react-arrow" "1.0.1" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-primitive" "1.0.1" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-layout-effect" "1.0.0" - "@radix-ui/react-use-rect" "1.0.0" - "@radix-ui/react-use-size" "1.0.0" - "@radix-ui/rect" "1.0.0" - -"@radix-ui/react-popper@1.1.1": - version "1.1.1" - resolved "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.1.tgz" - integrity sha512-keYDcdMPNMjSC8zTsZ8wezUMiWM9Yj14wtF3s0PTIs9srnEPC9Kt2Gny1T3T81mmSeyDjZxsD9N5WCwNNb712w== - dependencies: - "@babel/runtime" "^7.13.10" - "@floating-ui/react-dom" "0.7.2" - "@radix-ui/react-arrow" "1.0.2" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-primitive" "1.0.2" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-layout-effect" "1.0.0" - "@radix-ui/react-use-rect" "1.0.0" - "@radix-ui/react-use-size" "1.0.0" - "@radix-ui/rect" "1.0.0" - -"@radix-ui/react-portal@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.1.tgz" - integrity sha512-NY2vUWI5WENgAT1nfC6JS7RU5xRYBfjZVLq0HmgEN1Ezy3rk/UruMV4+Rd0F40PEaFC5SrLS1ixYvcYIQrb4Ig== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.1" - -"@radix-ui/react-portal@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.2.tgz" - integrity sha512-swu32idoCW7KA2VEiUZGBSu9nB6qwGdV6k6HYhUoOo3M1FFpD+VgLzUqtt3mwL1ssz7r2x8MggpLSQach2Xy/Q== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.2" - -"@radix-ui/react-presence@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.0.tgz" - integrity sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-use-layout-effect" "1.0.0" - -"@radix-ui/react-primitive@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.1.tgz" - integrity sha512-fHbmislWVkZaIdeF6GZxF0A/NH/3BjrGIYj+Ae6eTmTCr7EB0RQAAVEiqsXK6p3/JcRqVSBQoceZroj30Jj3XA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-slot" "1.0.1" - -"@radix-ui/react-primitive@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.2.tgz" - integrity sha512-zY6G5Qq4R8diFPNwtyoLRZBxzu1Z+SXMlfYpChN7Dv8gvmx9X3qhDqiLWvKseKVJMuedFeU/Sa0Sy/Ia+t06Dw== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-slot" "1.0.1" - -"@radix-ui/react-slot@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.1.tgz" - integrity sha512-avutXAFL1ehGvAXtPquu0YK5oz6ctS474iM3vNGQIkswrVhdrS52e3uoMQBzZhNRAIE0jBnUyXWNmSjGHhCFcw== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - -"@radix-ui/react-tooltip@^1.0.5": - version "1.0.5" - resolved "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.0.5.tgz" - integrity sha512-cDKVcfzyO6PpckZekODJZDe5ZxZ2fCZlzKzTmPhe4mX9qTHRfLcKgqb0OKf22xLwDequ2tVleim+ZYx3rabD5w== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-dismissable-layer" "1.0.3" - "@radix-ui/react-id" "1.0.0" - "@radix-ui/react-popper" "1.1.1" - "@radix-ui/react-portal" "1.0.2" - "@radix-ui/react-presence" "1.0.0" - "@radix-ui/react-primitive" "1.0.2" - "@radix-ui/react-slot" "1.0.1" - "@radix-ui/react-use-controllable-state" "1.0.0" - "@radix-ui/react-visually-hidden" "1.0.2" - -"@radix-ui/react-use-callback-ref@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz" - integrity sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-use-controllable-state@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.0.tgz" - integrity sha512-FohDoZvk3mEXh9AWAVyRTYR4Sq7/gavuofglmiXB2g1aKyboUD4YtgWxKj8O5n+Uak52gXQ4wKz5IFST4vtJHg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-callback-ref" "1.0.0" - -"@radix-ui/react-use-escape-keydown@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.2.tgz" - integrity sha512-DXGim3x74WgUv+iMNCF+cAo8xUHHeqvjx8zs7trKf+FkQKPQXLk2sX7Gx1ysH7Q76xCpZuxIJE7HLPxRE+Q+GA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-callback-ref" "1.0.0" - -"@radix-ui/react-use-layout-effect@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz" - integrity sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ== - dependencies: - "@babel/runtime" "^7.13.10" - -"@radix-ui/react-use-rect@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.0.0.tgz" - integrity sha512-TB7pID8NRMEHxb/qQJpvSt3hQU4sqNPM1VCTjTRjEOa7cEop/QMuq8S6fb/5Tsz64kqSvB9WnwsDHtjnrM9qew== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/rect" "1.0.0" - -"@radix-ui/react-use-size@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.0.0.tgz" - integrity sha512-imZ3aYcoYCKhhgNpkNDh/aTiU05qw9hX+HHI1QDBTyIlcFjgeFlKKySNGMwTp7nYFLQg/j0VA2FmCY4WPDDHMg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-layout-effect" "1.0.0" - -"@radix-ui/react-visually-hidden@1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.0.2.tgz" - integrity sha512-qirnJxtYn73HEk1rXL12/mXnu2rwsNHDID10th2JGtdK25T9wX+mxRmGt7iPSahw512GbZOc0syZX1nLQGoEOg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.2" - -"@radix-ui/rect@1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.0.0.tgz" - integrity sha512-d0O68AYy/9oeEy1DdC07bz1/ZXX+DqCskRd3i4JzLSTXwefzaepQrKjXC7aNM8lTHjFLDO0pDgaEiQ7jEk+HVg== - dependencies: - "@babel/runtime" "^7.13.10" - -"@sideway/address@^4.1.3": - version "4.1.4" - resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz" - integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== - 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" - 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" - integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== - -"@sinclair/typebox@^0.25.16": - version "0.25.21" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.21.tgz" - integrity sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g== - -"@sindresorhus/is@^0.14.0": - version "0.14.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz" - integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== - -"@slorber/static-site-generator-webpack-plugin@^4.0.7": - version "4.0.7" - resolved "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz" - integrity sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA== - dependencies: - eval "^0.1.8" - p-map "^4.0.0" - webpack-sources "^3.2.2" - -"@svgr/babel-plugin-add-jsx-attribute@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz" - integrity sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ== - -"@svgr/babel-plugin-remove-jsx-attribute@*": - version "6.5.0" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz" - integrity sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA== - -"@svgr/babel-plugin-remove-jsx-empty-expression@*": - version "6.5.0" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz" - integrity sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw== - -"@svgr/babel-plugin-replace-jsx-attribute-value@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz" - integrity sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg== - -"@svgr/babel-plugin-svg-dynamic-title@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz" - integrity sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw== - -"@svgr/babel-plugin-svg-em-dimensions@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz" - integrity sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA== - -"@svgr/babel-plugin-transform-react-native-svg@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz" - integrity sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg== - -"@svgr/babel-plugin-transform-svg-component@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz" - integrity sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ== - -"@svgr/babel-preset@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz" - integrity sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw== - dependencies: - "@svgr/babel-plugin-add-jsx-attribute" "^6.5.1" - "@svgr/babel-plugin-remove-jsx-attribute" "*" - "@svgr/babel-plugin-remove-jsx-empty-expression" "*" - "@svgr/babel-plugin-replace-jsx-attribute-value" "^6.5.1" - "@svgr/babel-plugin-svg-dynamic-title" "^6.5.1" - "@svgr/babel-plugin-svg-em-dimensions" "^6.5.1" - "@svgr/babel-plugin-transform-react-native-svg" "^6.5.1" - "@svgr/babel-plugin-transform-svg-component" "^6.5.1" - -"@svgr/core@*", "@svgr/core@^6.0.0", "@svgr/core@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz" - integrity sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw== - dependencies: - "@babel/core" "^7.19.6" - "@svgr/babel-preset" "^6.5.1" - "@svgr/plugin-jsx" "^6.5.1" - camelcase "^6.2.0" - cosmiconfig "^7.0.1" - -"@svgr/hast-util-to-babel-ast@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz" - integrity sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw== - dependencies: - "@babel/types" "^7.20.0" - entities "^4.4.0" - -"@svgr/plugin-jsx@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz" - integrity sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw== - dependencies: - "@babel/core" "^7.19.6" - "@svgr/babel-preset" "^6.5.1" - "@svgr/hast-util-to-babel-ast" "^6.5.1" - svg-parser "^2.0.4" - -"@svgr/plugin-svgo@^6.5.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz" - integrity sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ== - dependencies: - cosmiconfig "^7.0.1" - deepmerge "^4.2.2" - svgo "^2.8.0" - -"@svgr/webpack@^6.2.1": - version "6.5.1" - resolved "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz" - integrity sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA== - dependencies: - "@babel/core" "^7.19.6" - "@babel/plugin-transform-react-constant-elements" "^7.18.12" - "@babel/preset-env" "^7.19.4" - "@babel/preset-react" "^7.18.6" - "@babel/preset-typescript" "^7.18.6" - "@svgr/core" "^6.5.1" - "@svgr/plugin-jsx" "^6.5.1" - "@svgr/plugin-svgo" "^6.5.1" - -"@szmarczak/http-timer@^1.1.2": - version "1.1.2" - resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz" - integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== - dependencies: - defer-to-connect "^1.0.1" - -"@tailwindcss/typography@^0.5.8": - version "0.5.9" - resolved "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.9.tgz" - integrity sha512-t8Sg3DyynFysV9f4JDOVISGsjazNb48AeIYQwcL+Bsq5uf4RYL75C1giZ43KISjeDGBaTN3Kxh7Xj/vRSMJUUg== - dependencies: - lodash.castarray "^4.4.0" - lodash.isplainobject "^4.0.6" - lodash.merge "^4.6.2" - postcss-selector-parser "6.0.10" - -"@trysound/sax@0.2.0": - version "0.2.0" - resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz" - integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== - -"@tsconfig/docusaurus@^1.0.5": - version "1.0.6" - resolved "https://registry.npmjs.org/@tsconfig/docusaurus/-/docusaurus-1.0.6.tgz" - integrity sha512-1QxDaP54hpzM6bq9E+yFEo4F9WbWHhsDe4vktZXF/iDlc9FqGr9qlg+3X/nuKQXx8QxHV7ue8NXFazzajsxFBA== - -"@types/body-parser@*": - version "1.19.2" - resolved "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz" - integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== - dependencies: - "@types/connect" "*" - "@types/node" "*" - -"@types/bonjour@^3.5.9": - version "3.5.10" - resolved "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz" - integrity sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw== - dependencies: - "@types/node" "*" - -"@types/connect-history-api-fallback@^1.3.5": - version "1.3.5" - resolved "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz" - integrity sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw== - dependencies: - "@types/express-serve-static-core" "*" - "@types/node" "*" - -"@types/connect@*": - version "3.4.35" - resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz" - integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== - dependencies: - "@types/node" "*" - -"@types/eslint-scope@^3.7.3": - version "3.7.4" - resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz" - integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== - dependencies: - "@types/eslint" "*" - "@types/estree" "*" - -"@types/eslint@*": - version "8.21.0" - resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.0.tgz" - integrity sha512-35EhHNOXgxnUgh4XCJsGhE7zdlDhYDN/aMG6UbkByCFFNgQ7b3U+uVoqBpicFydR8JEfgdjCF7SJ7MiJfzuiTA== - dependencies: - "@types/estree" "*" - "@types/json-schema" "*" - -"@types/estree@*", "@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/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.33": - version "4.17.33" - resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz" - integrity sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" - -"@types/express@*", "@types/express@^4.17.13": - version "4.17.17" - resolved "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz" - integrity sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "^4.17.33" - "@types/qs" "*" - "@types/serve-static" "*" - -"@types/hast@^2.0.0": - version "2.3.4" - resolved "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz" - integrity sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g== - dependencies: - "@types/unist" "*" - -"@types/history@^4.7.11": - version "4.7.11" - resolved "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz" - integrity sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA== - -"@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" - integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== - -"@types/http-proxy@^1.17.8": - version "1.17.9" - resolved "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz" - integrity sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw== - dependencies: - "@types/node" "*" - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.4" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": - version "7.0.11" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz" - integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== - -"@types/katex@^0.11.0": - version "0.11.1" - resolved "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz" - integrity sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg== - -"@types/mdast@^3.0.0": - version "3.0.12" - resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.12.tgz" - integrity sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg== - dependencies: - "@types/unist" "^2" - -"@types/mime@*": - version "3.0.1" - resolved "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz" - integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== - -"@types/node@*": - version "18.13.0" - resolved "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz" - integrity sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg== - -"@types/node@^17.0.5": - version "17.0.45" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz" - integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== - -"@types/parse-json@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" - integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== - -"@types/parse5@^5.0.0": - version "5.0.3" - resolved "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz" - integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== - -"@types/prop-types@*": - version "15.7.5" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz" - integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== - -"@types/qs@*": - version "6.9.7" - resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz" - integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== - -"@types/range-parser@*": - version "1.2.4" - resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz" - integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== - -"@types/react-router-config@*", "@types/react-router-config@^5.0.6": - version "5.0.6" - resolved "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz" - integrity sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg== - dependencies: - "@types/history" "^4.7.11" - "@types/react" "*" - "@types/react-router" "*" - -"@types/react-router-dom@*": - version "5.3.3" - resolved "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz" - integrity sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw== - dependencies: - "@types/history" "^4.7.11" - "@types/react" "*" - "@types/react-router" "*" - -"@types/react-router@*": - version "5.1.20" - resolved "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz" - integrity sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q== - dependencies: - "@types/history" "^4.7.11" - "@types/react" "*" - -"@types/react@*", "@types/react@^16.8.0 || ^17.0.0 || ^18.0.0", "@types/react@^16.9.0 || ^17.0.0 || ^18.0.0", "@types/react@>= 16.8.0 < 19.0.0": - version "18.0.27" - resolved "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz" - integrity sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA== - dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" - csstype "^3.0.2" - -"@types/retry@0.12.0": - version "0.12.0" - resolved "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz" - integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== - -"@types/sax@^1.2.1": - version "1.2.4" - resolved "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz" - integrity sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw== - dependencies: - "@types/node" "*" - -"@types/scheduler@*": - version "0.16.2" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz" - integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== - -"@types/serve-index@^1.9.1": - version "1.9.1" - resolved "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz" - integrity sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg== - dependencies: - "@types/express" "*" - -"@types/serve-static@*", "@types/serve-static@^1.13.10": - version "1.15.0" - resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz" - integrity sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg== - dependencies: - "@types/mime" "*" - "@types/node" "*" - -"@types/sockjs@^0.3.33": - version "0.3.33" - resolved "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz" - integrity sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw== - dependencies: - "@types/node" "*" - -"@types/unist@*", "@types/unist@^2", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": - version "2.0.6" - resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" - integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== - -"@types/ws@^8.5.1": - version "8.5.4" - resolved "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz" - integrity sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg== - dependencies: - "@types/node" "*" - -"@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== - -"@types/yargs@^17.0.8": - version "17.0.22" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz" - integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== - dependencies: - "@types/yargs-parser" "*" - -"@webassemblyjs/ast@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz" - integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== - dependencies: - "@webassemblyjs/helper-numbers" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - -"@webassemblyjs/floating-point-hex-parser@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz" - integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== - -"@webassemblyjs/helper-api-error@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz" - integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== - -"@webassemblyjs/helper-buffer@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz" - integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== - -"@webassemblyjs/helper-numbers@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz" - integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== - dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" - "@xtuc/long" "4.2.2" - -"@webassemblyjs/helper-wasm-bytecode@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz" - integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== - -"@webassemblyjs/helper-wasm-section@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz" - integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - -"@webassemblyjs/ieee754@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz" - integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz" - integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== - dependencies: - "@xtuc/long" "4.2.2" - -"@webassemblyjs/utf8@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz" - integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== - -"@webassemblyjs/wasm-edit@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz" - integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/helper-wasm-section" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-opt" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - "@webassemblyjs/wast-printer" "1.11.1" - -"@webassemblyjs/wasm-gen@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz" - integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wasm-opt@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz" - integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - -"@webassemblyjs/wasm-parser@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz" - integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wast-printer@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz" - integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== - dependencies: - "@webassemblyjs/ast" "1.11.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" - 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" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - -accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: - version "1.3.8" - resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz" - integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== - dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" - -acorn-import-assertions@^1.7.6: - version "1.8.0" - resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz" - integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== - -acorn-node@^1.8.2: - version "1.8.2" - resolved "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz" - integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== - dependencies: - acorn "^7.0.0" - acorn-walk "^7.0.0" - xtend "^4.0.2" - -acorn-walk@^7.0.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-walk@^8.0.0: - version "8.2.0" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" - integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== - -acorn@^7.0.0: - version "7.4.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8, acorn@^8.7.1: - version "8.8.2" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - -acorn@^8.0.4: - version "8.8.2" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - -acorn@^8.5.0: - version "8.8.2" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - -address@^1.0.1, address@^1.1.2: - version "1.2.2" - resolved "https://registry.npmjs.org/address/-/address-1.2.2.tgz" - integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== - -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-formats@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz" - integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== - dependencies: - ajv "^8.0.0" - -ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: - version "3.5.2" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz" - integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== - -ajv-keywords@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz" - integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== - dependencies: - fast-deep-equal "^3.1.3" - -ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.9.1: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^8.0.0: - version "8.12.0" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" - integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -ajv@^8.8.0, ajv@^8.8.2: - version "8.12.0" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" - integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -algoliasearch-helper@^3.10.0: - version "3.14.2" - resolved "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.14.2.tgz" - integrity sha512-FjDSrjvQvJT/SKMW74nPgFpsoPUwZCzGbCqbp8HhBFfSk/OvNFxzCaCmuO0p7AWeLy1gD+muFwQEkBwcl5H4pg== - dependencies: - "@algolia/events" "^4.0.1" - -algoliasearch@^4.13.1, algoliasearch@^4.19.1, "algoliasearch@>= 3.1 < 6", "algoliasearch@>= 4.9.1 < 6": - version "4.20.0" - resolved "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.20.0.tgz" - integrity sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g== - dependencies: - "@algolia/cache-browser-local-storage" "4.20.0" - "@algolia/cache-common" "4.20.0" - "@algolia/cache-in-memory" "4.20.0" - "@algolia/client-account" "4.20.0" - "@algolia/client-analytics" "4.20.0" - "@algolia/client-common" "4.20.0" - "@algolia/client-personalization" "4.20.0" - "@algolia/client-search" "4.20.0" - "@algolia/logger-common" "4.20.0" - "@algolia/logger-console" "4.20.0" - "@algolia/requester-browser-xhr" "4.20.0" - "@algolia/requester-common" "4.20.0" - "@algolia/requester-node-http" "4.20.0" - "@algolia/transporter" "4.20.0" - -ansi-align@^3.0.0, ansi-align@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz" - integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== - dependencies: - string-width "^4.1.0" - -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" - integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-regex@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" - integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" - 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" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi-styles@^6.1.0: - version "6.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz" - integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== - -anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -arg@^5.0.0, arg@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz" - 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" - 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" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -aria-hidden@^1.1.1: - version "1.2.2" - resolved "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.2.tgz" - integrity sha512-6y/ogyDTk/7YAe91T3E2PR1ALVKyM2QbTio5HwM+N1Q6CMlCKhvClyIjkckBswa0f2xJhjsfzIGa1yVSe1UMVA== - dependencies: - tslib "^2.0.0" - -array-flatten@^2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" - integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" - integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - -autoprefixer@^10.4.12, autoprefixer@^10.4.13, autoprefixer@^10.4.7: - version "10.4.13" - resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz" - integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== - dependencies: - browserslist "^4.21.4" - caniuse-lite "^1.0.30001426" - fraction.js "^4.2.0" - normalize-range "^0.1.2" - picocolors "^1.0.0" - postcss-value-parser "^4.2.0" - -axios@^0.25.0: - version "0.25.0" - resolved "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz" - integrity sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g== - dependencies: - follow-redirects "^1.14.7" - -axios@^1.6.2: - version "1.6.2" - resolved "https://registry.npmjs.org/axios/-/axios-1.6.2.tgz" - integrity sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A== - dependencies: - follow-redirects "^1.15.0" - form-data "^4.0.0" - proxy-from-env "^1.1.0" - -babel-loader@^8.2.5: - version "8.3.0" - resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz" - integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== - dependencies: - find-cache-dir "^3.3.1" - loader-utils "^2.0.0" - make-dir "^3.1.0" - schema-utils "^2.6.5" - -babel-plugin-apply-mdx-type-prop@1.6.22: - version "1.6.22" - resolved "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz" - integrity sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - "@mdx-js/util" "1.6.22" - -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - -babel-plugin-extract-import-names@1.6.22: - version "1.6.22" - resolved "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz" - integrity sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - -babel-plugin-polyfill-corejs2@^0.3.3: - version "0.3.3" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz" - integrity sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q== - dependencies: - "@babel/compat-data" "^7.17.7" - "@babel/helper-define-polyfill-provider" "^0.3.3" - semver "^6.1.1" - -babel-plugin-polyfill-corejs3@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz" - integrity sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.3" - core-js-compat "^3.25.1" - -babel-plugin-polyfill-regenerator@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz" - integrity sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.3" - -bail@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz" - integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -base16@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz" - integrity sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ== - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz" - integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw== - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -body-parser@1.20.1: - version "1.20.1" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz" - integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== - dependencies: - bytes "3.1.2" - content-type "~1.0.4" - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - http-errors "2.0.0" - iconv-lite "0.4.24" - on-finished "2.4.1" - qs "6.11.0" - raw-body "2.5.1" - type-is "~1.6.18" - unpipe "1.0.0" - -bonjour-service@^1.0.11: - version "1.1.0" - resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz" - integrity sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q== - dependencies: - array-flatten "^2.1.2" - dns-equal "^1.0.0" - fast-deep-equal "^3.1.3" - multicast-dns "^7.2.5" - -boolbase@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" - integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== - -boxen@^5.0.0: - version "5.1.2" - resolved "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz" - integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== - dependencies: - ansi-align "^3.0.0" - camelcase "^6.2.0" - chalk "^4.1.0" - cli-boxes "^2.2.1" - string-width "^4.2.2" - type-fest "^0.20.2" - widest-line "^3.1.0" - wrap-ansi "^7.0.0" - -boxen@^6.2.1: - version "6.2.1" - resolved "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz" - integrity sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw== - dependencies: - ansi-align "^3.0.1" - camelcase "^6.2.0" - chalk "^4.1.2" - cli-boxes "^3.0.0" - string-width "^5.0.1" - type-fest "^2.5.0" - widest-line "^4.0.1" - wrap-ansi "^8.0.1" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^3.0.2, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4, "browserslist@>= 4.21.0": - version "4.21.5" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz" - integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== - dependencies: - caniuse-lite "^1.0.30001449" - electron-to-chromium "^1.4.284" - node-releases "^2.0.8" - update-browserslist-db "^1.0.10" - -buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz" - integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== - -bytes@3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz" - integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== - -cacheable-request@^6.0.0: - version "6.1.0" - resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz" - integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== - dependencies: - clone-response "^1.0.2" - get-stream "^5.1.0" - http-cache-semantics "^4.0.0" - keyv "^3.0.0" - lowercase-keys "^2.0.0" - normalize-url "^4.1.0" - responselike "^1.0.2" - -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" - 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" - integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== - dependencies: - pascal-case "^3.1.2" - tslib "^2.0.3" - -camelcase-css@^2.0.1, camelcase-css@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - -camelcase@^6.2.0: - version "6.3.0" - resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001449: - version "1.0.30001527" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001527.tgz" - integrity sha512-YkJi7RwPgWtXVSgK4lG9AHH57nSzvvOp9MesgXmw4Q7n0C3H04L0foHqfxcmSAm5AcWb8dW9AYj2tR7/5GnddQ== - -ccount@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz" - integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -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" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -character-entities-legacy@^1.0.0: - version "1.1.4" - resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz" - integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== - -character-entities@^1.0.0: - version "1.2.4" - resolved "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz" - integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== - -character-reference-invalid@^1.0.0: - version "1.1.4" - resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz" - integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== - -cheerio-select@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz" - integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== - dependencies: - boolbase "^1.0.0" - css-select "^5.1.0" - css-what "^6.1.0" - domelementtype "^2.3.0" - domhandler "^5.0.3" - domutils "^3.0.1" - -cheerio@^1.0.0-rc.12: - version "1.0.0-rc.12" - resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz" - integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q== - dependencies: - cheerio-select "^2.1.0" - dom-serializer "^2.0.0" - domhandler "^5.0.3" - domutils "^3.0.1" - htmlparser2 "^8.0.1" - parse5 "^7.0.0" - parse5-htmlparser2-tree-adapter "^7.0.0" - -chokidar@^3.4.2, chokidar@^3.5.3: - version "3.5.3" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - -chrome-trace-event@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz" - integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== - -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - -ci-info@^3.2.0: - version "3.7.1" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz" - integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w== - -clean-css@^5.2.2, clean-css@^5.3.0: - version "5.3.2" - resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz" - integrity sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww== - 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" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -cli-boxes@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz" - integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== - -cli-boxes@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz" - integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g== - -cli-table3@^0.6.2: - version "0.6.3" - resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz" - integrity sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg== - dependencies: - string-width "^4.2.0" - optionalDependencies: - "@colors/colors" "1.5.0" - -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - -clone-response@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz" - integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== - dependencies: - mimic-response "^1.0.0" - -clsx@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" - integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== - -collapse-white-space@^1.0.2: - version "1.0.6" - resolved "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz" - integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" - 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" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@^1.1.4, color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -colord@^2.9.1: - version "2.9.3" - resolved "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz" - integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== - -colorette@^2.0.10: - version "2.0.19" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz" - integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== - -combine-promises@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz" - integrity sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg== - -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -comma-separated-tokens@^1.0.0: - version "1.0.8" - resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz" - integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== - -commander@^2.20.0: - version "2.20.3" - resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== - -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - -commander@^8.0.0: - version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== - -commander@^8.3.0: - version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz" - integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== - -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.16" - debug "2.6.9" - on-headers "~1.0.2" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -configstore@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz" - integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== - dependencies: - dot-prop "^5.2.0" - graceful-fs "^4.1.2" - make-dir "^3.0.0" - unique-string "^2.0.0" - write-file-atomic "^3.0.0" - xdg-basedir "^4.0.0" - -connect-history-api-fallback@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz" - integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA== - -consola@^2.15.3: - version "2.15.3" - resolved "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz" - integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz" - integrity sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA== - -content-disposition@0.5.4: - version "0.5.4" - resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz" - integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== - dependencies: - safe-buffer "5.2.1" - -content-type@~1.0.4: - version "1.0.5" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz" - integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== - -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" - integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" - integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== - -cookie@0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz" - integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== - -copy-text-to-clipboard@^3.0.1: - version "3.2.0" - resolved "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz" - integrity sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q== - -copy-webpack-plugin@^11.0.0: - version "11.0.0" - resolved "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz" - integrity sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ== - dependencies: - fast-glob "^3.2.11" - glob-parent "^6.0.1" - globby "^13.1.1" - normalize-path "^3.0.0" - schema-utils "^4.0.0" - serialize-javascript "^6.0.0" - -core-js-compat@^3.25.1: - version "3.27.2" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.27.2.tgz" - integrity sha512-welaYuF7ZtbYKGrIy7y3eb40d37rG1FvzEOfe7hSLd2iD6duMDqUhRfSvCGyC46HhR6Y8JXXdZ2lnRUMkPBpvg== - dependencies: - browserslist "^4.21.4" - -core-js-pure@^3.25.1: - version "3.27.2" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.27.2.tgz" - integrity sha512-Cf2jqAbXgWH3VVzjyaaFkY1EBazxugUepGymDoeteyYr9ByX51kD2jdHZlsEF/xnJMyN3Prua7mQuzwMg6Zc9A== - -core-js@^3.23.3: - version "3.27.2" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz" - integrity sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w== - -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" - integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== - -cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - -cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: - version "7.1.0" - resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz" - integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.2.1" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.10.0" - -cross-fetch@^3.1.5: - version "3.1.8" - resolved "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz" - integrity sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg== - dependencies: - node-fetch "^2.6.12" - -cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - -css-declaration-sorter@^6.3.1: - version "6.3.1" - resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz" - integrity sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w== - -css-loader@^6.7.1: - version "6.7.3" - resolved "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz" - integrity sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ== - dependencies: - icss-utils "^5.1.0" - postcss "^8.4.19" - postcss-modules-extract-imports "^3.0.0" - postcss-modules-local-by-default "^4.0.0" - postcss-modules-scope "^3.0.0" - postcss-modules-values "^4.0.0" - postcss-value-parser "^4.2.0" - semver "^7.3.8" - -css-minimizer-webpack-plugin@^4.0.0: - version "4.2.2" - resolved "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz" - integrity sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA== - dependencies: - cssnano "^5.1.8" - jest-worker "^29.1.2" - postcss "^8.4.17" - schema-utils "^4.0.0" - serialize-javascript "^6.0.0" - source-map "^0.6.1" - -css-select@^4.1.3: - version "4.3.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz" - integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== - dependencies: - boolbase "^1.0.0" - css-what "^6.0.1" - domhandler "^4.3.1" - domutils "^2.8.0" - nth-check "^2.0.1" - -css-select@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz" - integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== - dependencies: - boolbase "^1.0.0" - css-what "^6.1.0" - domhandler "^5.0.2" - domutils "^3.0.1" - nth-check "^2.0.1" - -css-tree@^1.1.2, css-tree@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz" - integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== - dependencies: - mdn-data "2.0.14" - source-map "^0.6.1" - -css-what@^6.0.1, css-what@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz" - integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssnano-preset-advanced@^5.3.8: - version "5.3.10" - resolved "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz" - integrity sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ== - dependencies: - autoprefixer "^10.4.12" - cssnano-preset-default "^5.2.14" - postcss-discard-unused "^5.1.0" - postcss-merge-idents "^5.1.1" - postcss-reduce-idents "^5.2.0" - postcss-zindex "^5.1.0" - -cssnano-preset-default@^5.2.13, cssnano-preset-default@^5.2.14: - version "5.2.14" - resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz" - integrity sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A== - dependencies: - css-declaration-sorter "^6.3.1" - cssnano-utils "^3.1.0" - postcss-calc "^8.2.3" - postcss-colormin "^5.3.1" - postcss-convert-values "^5.1.3" - postcss-discard-comments "^5.1.2" - postcss-discard-duplicates "^5.1.0" - postcss-discard-empty "^5.1.1" - postcss-discard-overridden "^5.1.0" - postcss-merge-longhand "^5.1.7" - postcss-merge-rules "^5.1.4" - postcss-minify-font-values "^5.1.0" - postcss-minify-gradients "^5.1.1" - postcss-minify-params "^5.1.4" - postcss-minify-selectors "^5.2.1" - postcss-normalize-charset "^5.1.0" - postcss-normalize-display-values "^5.1.0" - postcss-normalize-positions "^5.1.1" - postcss-normalize-repeat-style "^5.1.1" - postcss-normalize-string "^5.1.0" - postcss-normalize-timing-functions "^5.1.0" - postcss-normalize-unicode "^5.1.1" - postcss-normalize-url "^5.1.0" - postcss-normalize-whitespace "^5.1.1" - postcss-ordered-values "^5.1.3" - postcss-reduce-initial "^5.1.2" - postcss-reduce-transforms "^5.1.0" - postcss-svgo "^5.1.0" - postcss-unique-selectors "^5.1.1" - -cssnano-utils@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz" - integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== - -cssnano@^5.1.12, cssnano@^5.1.8: - version "5.1.14" - resolved "https://registry.npmjs.org/cssnano/-/cssnano-5.1.14.tgz" - integrity sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw== - dependencies: - cssnano-preset-default "^5.2.13" - lilconfig "^2.0.3" - yaml "^1.10.2" - -csso@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz" - integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== - dependencies: - css-tree "^1.1.2" - -csstype@^3.0.2: - version "3.1.1" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" - integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== - -debug@^2.6.0: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^4.1.0, debug@^4.1.1, debug@4: - version "4.3.4" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -debug@2.6.9: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" - integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== - dependencies: - mimic-response "^1.0.0" - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deepmerge@^4.0.0, deepmerge@^4.2.2: - version "4.3.0" - resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz" - integrity sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og== - -default-gateway@^6.0.3: - version "6.0.3" - resolved "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz" - integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg== - dependencies: - execa "^5.0.0" - -defer-to-connect@^1.0.1: - version "1.1.3" - resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz" - integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== - -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" - integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== - -define-properties@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz" - integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== - dependencies: - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -defined@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz" - integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== - -del@^6.1.1: - version "6.1.1" - resolved "https://registry.npmjs.org/del/-/del-6.1.1.tgz" - integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg== - dependencies: - globby "^11.0.1" - graceful-fs "^4.2.4" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.2" - p-map "^4.0.0" - rimraf "^3.0.2" - slash "^3.0.0" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" - integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== - -depd@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - -detab@2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz" - integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== - dependencies: - repeat-string "^1.5.4" - -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" - integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ== - -detect-node@^2.0.4: - version "2.1.0" - resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz" - integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== - -detect-port-alt@^1.1.6: - version "1.1.6" - resolved "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -detect-port@^1.3.0: - version "1.5.1" - resolved "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz" - integrity sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ== - dependencies: - address "^1.0.1" - debug "4" - -detective@^5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz" - integrity sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw== - dependencies: - acorn-node "^1.8.2" - defined "^1.0.0" - minimist "^1.2.6" - -didyoumean@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz" - integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -dlv@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz" - integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz" - integrity sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg== - -dns-packet@^5.2.2: - version "5.4.0" - resolved "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz" - integrity sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g== - dependencies: - "@leichtgewicht/ip-codec" "^2.0.1" - -dom-converter@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-serializer@^1.0.1: - version "1.4.1" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz" - integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.2.0" - entities "^2.0.0" - -dom-serializer@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz" - integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== - dependencies: - domelementtype "^2.3.0" - domhandler "^5.0.2" - entities "^4.2.0" - -domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz" - integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== - -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" - integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== - dependencies: - domelementtype "^2.2.0" - -domhandler@^5.0.2, domhandler@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz" - integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== - dependencies: - domelementtype "^2.3.0" - -domutils@^2.5.2, domutils@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz" - integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.2.0" - domhandler "^4.2.0" - -domutils@^3.0.1: - version "3.1.0" - resolved "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz" - integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== - dependencies: - dom-serializer "^2.0.0" - domelementtype "^2.3.0" - domhandler "^5.0.3" - -dot-case@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz" - integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - -dot-prop@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz" - integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== - dependencies: - is-obj "^2.0.0" - -duplexer@^0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - -duplexer3@^0.1.4: - version "0.1.5" - resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz" - integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== - -eastasianwidth@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" - integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" - integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== - -electron-to-chromium@^1.4.284: - version "1.4.294" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.294.tgz" - integrity sha512-PuHZB3jEN7D8WPPjLmBQAsqQz8tWHlkkB4n0E2OYw8RwVdmBYV0Wn+rUFH8JqYyIRb4HQhhedgxlZL163wqLrQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" - 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" - 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" - integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== - -emoticon@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz" - integrity sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - -end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^5.10.0: - version "5.12.0" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz" - integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== - dependencies: - graceful-fs "^4.2.4" - tapable "^2.2.0" - -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== - -entities@^4.2.0, entities@^4.4.0: - version "4.4.0" - resolved "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz" - integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-module-lexer@^0.9.0: - version "0.9.3" - resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz" - integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-goat@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz" - integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== - -escape-html@^1.0.3, escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" - integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== - -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" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -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" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-scope@5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - 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" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -eta@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/eta/-/eta-2.0.0.tgz" - integrity sha512-NqE7S2VmVwgMS8yBxsH4VgNQjNjLq1gfGU0u9I6Cjh468nPRMoDfGdK9n1p/3Dvsw3ebklDkZsFAnKJ9sefjBA== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" - integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== - -eval@^0.1.8: - version "0.1.8" - resolved "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz" - integrity sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw== - dependencies: - "@types/node" "*" - require-like ">= 0.1.1" - -eventemitter3@^4.0.0: - version "4.0.7" - resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - -events@^3.2.0: - version "3.3.0" - resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== - -execa@^5.0.0: - version "5.1.1" - resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -express@^4.17.3: - version "4.18.2" - resolved "https://registry.npmjs.org/express/-/express-4.18.2.tgz" - integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== - dependencies: - accepts "~1.3.8" - array-flatten "1.1.1" - body-parser "1.20.1" - content-disposition "0.5.4" - content-type "~1.0.4" - cookie "0.5.0" - cookie-signature "1.0.6" - debug "2.6.9" - depd "2.0.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.2.0" - fresh "0.5.2" - http-errors "2.0.0" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "2.4.1" - parseurl "~1.3.3" - path-to-regexp "0.1.7" - proxy-addr "~2.0.7" - qs "6.11.0" - range-parser "~1.2.1" - safe-buffer "5.2.1" - send "0.18.0" - serve-static "1.15.0" - setprototypeof "1.2.0" - statuses "2.0.1" - type-is "~1.6.18" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -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" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.9: - version "3.2.12" - resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz" - integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-url-parser@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz" - integrity sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ== - dependencies: - punycode "^1.3.2" - -fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== - dependencies: - reusify "^1.0.4" - -faye-websocket@^0.11.3: - version "0.11.4" - resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz" - integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== - dependencies: - websocket-driver ">=0.5.1" - -fbemitter@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz" - integrity sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw== - dependencies: - fbjs "^3.0.0" - -fbjs-css-vars@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz" - integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== - -fbjs@^3.0.0, fbjs@^3.0.1: - version "3.0.5" - resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.5.tgz" - integrity sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg== - dependencies: - cross-fetch "^3.1.5" - fbjs-css-vars "^1.0.0" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^1.0.35" - -feed@^4.2.2: - version "4.2.2" - resolved "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz" - integrity sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ== - dependencies: - xml-js "^1.6.11" - -fflate@^0.4.1: - version "0.4.8" - resolved "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz" - integrity sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA== - -file-loader@*, file-loader@^6.2.0: - version "6.2.0" - resolved "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz" - integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - -filesize@^8.0.6: - version "8.0.7" - resolved "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz" - integrity sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ== - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz" - integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "2.4.1" - parseurl "~1.3.3" - statuses "2.0.1" - unpipe "~1.0.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" - integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^4.0.0: - version "4.1.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flux@^4.0.1: - version "4.0.4" - resolved "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz" - integrity sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw== - dependencies: - fbemitter "^3.0.0" - fbjs "^3.0.1" - -follow-redirects@^1.0.0, follow-redirects@^1.14.7, follow-redirects@^1.15.0: - version "1.15.2" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz" - integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== - -fork-ts-checker-webpack-plugin@^6.5.0: - version "6.5.2" - resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz" - integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== - dependencies: - "@babel/code-frame" "^7.8.3" - "@types/json-schema" "^7.0.5" - chalk "^4.1.0" - chokidar "^3.4.2" - cosmiconfig "^6.0.0" - deepmerge "^4.2.2" - fs-extra "^9.0.0" - glob "^7.1.6" - memfs "^3.1.2" - minimatch "^3.0.4" - schema-utils "2.7.0" - semver "^7.3.2" - tapable "^1.0.0" - -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - -forwarded@0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz" - integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== - -fraction.js@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz" - integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" - integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== - -fs-extra@^10.1.0: - version "10.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz" - integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-extra@^9.0.0: - version "9.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-monkey@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz" - integrity sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q== - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -fuse.js@^6.6.2: - version "6.6.2" - resolved "https://registry.npmjs.org/fuse.js/-/fuse.js-6.6.2.tgz" - integrity sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA== - -gensync@^1.0.0-beta.1, 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" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1: - version "1.2.0" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz" - integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.3" - -get-nonce@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz" - integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - -get-stream@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.1.0: - version "5.2.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -github-slugger@^1.4.0: - version "1.5.0" - resolved "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz" - integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw== - -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" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob-parent@^6.0.1: - version "6.0.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" - integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== - dependencies: - is-glob "^4.0.3" - -glob-parent@^6.0.2: - version "6.0.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" - 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" - integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== - -glob@^7.0.0, glob@^7.1.3, glob@^7.1.6: - version "7.2.3" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-dirs@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz" - integrity sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA== - dependencies: - ini "2.0.0" - -global-modules@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - -global-prefix@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz" - integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== - dependencies: - ini "^1.3.5" - kind-of "^6.0.2" - which "^1.3.1" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globby@^11.0.1, globby@^11.0.4, globby@^11.1.0: - version "11.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - -globby@^13.1.1: - version "13.1.3" - resolved "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz" - integrity sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw== - dependencies: - dir-glob "^3.0.1" - fast-glob "^3.2.11" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^4.0.0" - -got@^9.6.0: - version "9.6.0" - resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz" - integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== - dependencies: - "@sindresorhus/is" "^0.14.0" - "@szmarczak/http-timer" "^1.1.2" - cacheable-request "^6.0.0" - decompress-response "^3.3.0" - duplexer3 "^0.1.4" - get-stream "^4.1.0" - lowercase-keys "^1.0.1" - mimic-response "^1.0.1" - p-cancelable "^1.0.0" - to-readable-stream "^1.0.0" - url-parse-lax "^3.0.0" - -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: - version "4.2.10" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" - integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== - -gray-matter@^4.0.3: - version "4.0.3" - resolved "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz" - integrity sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q== - dependencies: - js-yaml "^3.13.1" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - -gzip-size@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz" - integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== - dependencies: - duplexer "^0.1.2" - -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - 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" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -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-yarn@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz" - integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hast-to-hyperscript@^9.0.0: - version "9.0.1" - resolved "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz" - integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== - dependencies: - "@types/unist" "^2.0.3" - comma-separated-tokens "^1.0.0" - property-information "^5.3.0" - space-separated-tokens "^1.0.0" - style-to-object "^0.3.0" - unist-util-is "^4.0.0" - web-namespaces "^1.0.0" - -hast-util-from-parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz" - integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== - dependencies: - "@types/parse5" "^5.0.0" - hastscript "^6.0.0" - property-information "^5.0.0" - vfile "^4.0.0" - vfile-location "^3.2.0" - web-namespaces "^1.0.0" - -hast-util-is-element@^1.0.0, hast-util-is-element@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz" - integrity sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ== - -hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== - -hast-util-raw@6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz" - integrity sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig== - dependencies: - "@types/hast" "^2.0.0" - hast-util-from-parse5 "^6.0.0" - hast-util-to-parse5 "^6.0.0" - html-void-elements "^1.0.0" - parse5 "^6.0.0" - unist-util-position "^3.0.0" - vfile "^4.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-parse5@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz" - integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== - dependencies: - hast-to-hyperscript "^9.0.0" - property-information "^5.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-text@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz" - integrity sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ== - dependencies: - hast-util-is-element "^1.0.0" - repeat-string "^1.0.0" - unist-util-find-after "^3.0.0" - -hastscript@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz" - integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - -he@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -history@^4.9.0: - version "4.10.1" - resolved "https://registry.npmjs.org/history/-/history-4.10.1.tgz" - integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== - dependencies: - "@babel/runtime" "^7.1.2" - loose-envify "^1.2.0" - resolve-pathname "^3.0.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - value-equal "^1.0.1" - -hoist-non-react-statics@^3.1.0: - version "3.3.2" - resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" - integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== - dependencies: - react-is "^16.7.0" - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz" - integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ== - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -html-entities@^2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz" - integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== - -html-minifier-terser@^6.0.2, html-minifier-terser@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz" - integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== - dependencies: - camel-case "^4.1.2" - clean-css "^5.2.2" - commander "^8.3.0" - he "^1.2.0" - param-case "^3.0.4" - relateurl "^0.2.7" - terser "^5.10.0" - -html-tags@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz" - integrity sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg== - -html-void-elements@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz" - integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== - -html-webpack-plugin@^5.5.0: - version "5.5.0" - resolved "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz" - integrity sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw== - dependencies: - "@types/html-minifier-terser" "^6.0.0" - html-minifier-terser "^6.0.2" - lodash "^4.17.21" - pretty-error "^4.0.0" - tapable "^2.0.0" - -htmlparser2@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz" - integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.0.0" - domutils "^2.5.2" - entities "^2.0.0" - -htmlparser2@^8.0.1: - version "8.0.2" - resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz" - integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA== - dependencies: - domelementtype "^2.3.0" - domhandler "^5.0.3" - domutils "^3.0.1" - entities "^4.4.0" - -http-cache-semantics@^4.0.0: - version "4.1.1" - resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" - integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz" - integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== - dependencies: - depd "2.0.0" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses "2.0.1" - toidentifier "1.0.1" - -http-parser-js@>=0.5.1: - version "0.5.8" - resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz" - integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== - -http-proxy-middleware@^2.0.3: - version "2.0.6" - resolved "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz" - integrity sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw== - dependencies: - "@types/http-proxy" "^1.17.8" - http-proxy "^1.18.1" - is-glob "^4.0.1" - is-plain-obj "^3.0.0" - micromatch "^4.0.2" - -http-proxy@^1.18.1: - version "1.18.1" - resolved "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -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" - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== - -ignore@^5.2.0: - version "5.2.4" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" - integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== - -image-size@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz" - integrity sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg== - dependencies: - queue "6.0.2" - -immer@^9.0.7: - version "9.0.19" - resolved "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz" - integrity sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ== - -import-fresh@^3.1.0, 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" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz" - integrity sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A== - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - 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" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -infima@0.2.0-alpha.43: - version "0.2.0-alpha.43" - resolved "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.43.tgz" - integrity sha512-2uw57LvUqW0rK/SWYnd/2rRfxNA5DDNOh33jxF7fy46VWoNhGxiUQyVZHbBMjQ33mQem0cjdDVwgWVAmlRfgyQ== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3, inherits@2, inherits@2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== - -ini@^1.3.5, ini@~1.3.0: - version "1.3.8" - resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" - integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== - -ini@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz" - integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== - -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - -interpret@^1.0.0: - version "1.4.0" - resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - -invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -ipaddr.js@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz" - integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== - -ipaddr.js@1.9.1: - version "1.9.1" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-alphabetical@^1.0.0, is-alphabetical@1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -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" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-buffer@^2.0.0: - version "2.0.5" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== - dependencies: - ci-info "^2.0.0" - -is-core-module@^2.9.0: - version "2.11.0" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" - integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== - dependencies: - has "^1.0.3" - -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - -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" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - -is-extendable@^0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - -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" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -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" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-hexadecimal@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz" - integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== - -is-installed-globally@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz" - integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== - dependencies: - global-dirs "^3.0.0" - is-path-inside "^3.0.2" - -is-npm@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz" - integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz" - integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== - -is-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz" - integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== - -is-path-cwd@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-inside@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - -is-plain-obj@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - -is-plain-obj@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz" - integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== - -is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz" - integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA== - -is-root@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz" - integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-typedarray@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" - integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== - -is-whitespace-character@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz" - integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== - -is-word-character@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz" - integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== - -is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -is-yarn-global@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz" - integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== - -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" - integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" - integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== - -jest-util@^29.4.2: - version "29.4.2" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.4.2.tgz" - integrity sha512-wKnm6XpJgzMUSRFB7YF48CuwdzuDIHenVuoIb1PLuJ6F+uErZsuDkU+EiExkChf6473XcawBrSfDSnXl+/YG4g== - dependencies: - "@jest/types" "^29.4.2" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -jest-worker@^27.4.5: - version "27.5.1" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz" - integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -jest-worker@^29.1.2: - version "29.4.2" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.2.tgz" - integrity sha512-VIuZA2hZmFyRbchsUCHEehoSf2HEl0YVF8SDJqtPnKorAaBuh42V8QsLnde0XP5F6TyCynGPEGgBOn3Fc+wZGw== - dependencies: - "@types/node" "*" - jest-util "^29.4.2" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -joi@^17.6.0: - version "17.7.1" - resolved "https://registry.npmjs.org/joi/-/joi-17.7.1.tgz" - integrity sha512-teoLhIvWE298R6AeJywcjR4sX2hHjB3/xJX4qPjg+gTg+c0mzUDsziYlqPmLomq9gVsfaMcgPaGc7VxtD/9StA== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.3" - "@sideway/formula" "^3.0.1" - "@sideway/pinpoint" "^2.0.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" - 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" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" - integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== - -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz" - integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== - -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" - 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" - 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" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json5@^2.1.2, json5@^2.2.2: - version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -katex@^0.13.0: - version "0.13.24" - resolved "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz" - integrity sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w== - dependencies: - commander "^8.0.0" - -keyv@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz" - integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== - dependencies: - json-buffer "3.0.0" - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -klona@^2.0.5: - version "2.0.6" - resolved "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz" - integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== - -latest-version@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz" - integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== - dependencies: - package-json "^6.3.0" - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -lilconfig@^2.0.3, lilconfig@^2.0.5, lilconfig@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz" - integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg== - -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" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -load-script@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/load-script/-/load-script-1.0.0.tgz" - integrity sha512-kPEjMFtZvwL9TaZo0uZ2ml+Ye9HUMmPwbYRJ324qF9tqMejwykJ5ggTyvzmrbBeapCAbk98BSbTeovHEEP1uCA== - -loader-runner@^4.2.0: - version "4.3.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz" - integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== - -loader-utils@^2.0.0: - version "2.0.4" - resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz" - integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - -loader-utils@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz" - integrity sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw== - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" - 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" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lodash.castarray@^4.4.0: - version "4.4.0" - resolved "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz" - integrity sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q== - -lodash.curry@^4.0.1: - version "4.1.1" - resolved "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz" - integrity sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA== - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz" - integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== - -lodash.flow@^3.3.0: - version "3.5.0" - resolved "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz" - integrity sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw== - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" - integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" - integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.uniq@^4.5.0, lodash.uniq@4.5.0: - version "4.5.0" - resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz" - integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== - -lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz" - integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== - dependencies: - tslib "^2.0.3" - -lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz" - integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== - -lowercase-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" - integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -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" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -markdown-escapes@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz" - integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== - -mdast-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz" - integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== - dependencies: - unist-util-remove "^2.0.0" - -mdast-util-definitions@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz" - integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ== - dependencies: - unist-util-visit "^2.0.0" - -mdast-util-to-hast@10.0.1: - version "10.0.1" - resolved "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz" - integrity sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA== - dependencies: - "@types/mdast" "^3.0.0" - "@types/unist" "^2.0.0" - mdast-util-definitions "^4.0.0" - mdurl "^1.0.0" - unist-builder "^2.0.0" - unist-util-generated "^1.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - -mdast-util-to-string@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz" - integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== - -mdn-data@2.0.14: - version "2.0.14" - resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz" - integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== - -mdurl@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz" - integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" - integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== - -memfs@^3.1.2, memfs@^3.4.3: - version "3.4.13" - resolved "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz" - integrity sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg== - dependencies: - fs-monkey "^1.0.3" - -memoize-one@^5.1.1: - version "5.2.1" - resolved "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz" - integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz" - integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" - integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== - -micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: - version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - -"mime-db@>= 1.43.0 < 2": - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz" - integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== - -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@2.1.18: - version "2.1.18" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz" - integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== - dependencies: - mime-db "~1.33.0" - -mime-types@^2.1.27: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@^2.1.31: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@~2.1.24: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@~2.1.34: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -mimic-response@^1.0.0, mimic-response@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz" - integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== - -mini-css-extract-plugin@^2.6.1: - version "2.7.2" - resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz" - integrity sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw== - dependencies: - schema-utils "^4.0.0" - -minimalistic-assert@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -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" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: - version "1.2.8" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" - integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== - -mrmime@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz" - integrity sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw== - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.1.3: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -multicast-dns@^7.2.5: - version "7.2.5" - resolved "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz" - integrity sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg== - dependencies: - dns-packet "^5.2.2" - thunky "^1.0.2" - -nanoid@^3.3.4: - version "3.3.4" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz" - integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== - -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -neo-async@^2.6.2: - version "2.6.2" - resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - -no-case@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz" - integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== - dependencies: - lower-case "^2.0.2" - tslib "^2.0.3" - -node-emoji@^1.10.0: - version "1.11.0" - resolved "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz" - integrity sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A== - dependencies: - lodash "^4.17.21" - -node-fetch@^2.6.12: - version "2.7.0" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz" - integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== - dependencies: - whatwg-url "^5.0.0" - -node-forge@^1: - version "1.3.1" - resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== - -node-releases@^2.0.8: - version "2.0.10" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz" - integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== - -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" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz" - integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== - -normalize-url@^4.1.0: - version "4.5.1" - resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz" - integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== - -normalize-url@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz" - integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== - -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" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -nprogress@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz" - integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA== - -nth-check@^2.0.1: - version "2.1.1" - resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz" - integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== - dependencies: - boolbase "^1.0.0" - -object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - 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" - integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== - -object-inspect@^1.9.0: - version "1.12.3" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" - integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== - -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.0: - version "4.1.4" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - has-symbols "^1.0.3" - object-keys "^1.1.1" - -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz" - integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - 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" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -open@^8.0.9, open@^8.4.0: - version "8.4.1" - resolved "https://registry.npmjs.org/open/-/open-8.4.1.tgz" - integrity sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg== - dependencies: - define-lazy-prop "^2.0.0" - is-docker "^2.1.1" - is-wsl "^2.2.0" - -opener@^1.5.2: - version "1.5.2" - resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz" - integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== - -p-cancelable@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz" - integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== - -p-limit@^2.0.0, p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" - 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" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-retry@^4.5.0: - version "4.6.2" - resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz" - integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== - dependencies: - "@types/retry" "0.12.0" - retry "^0.13.1" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -package-json@^6.3.0: - version "6.5.0" - resolved "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz" - integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== - dependencies: - got "^9.6.0" - registry-auth-token "^4.0.0" - registry-url "^5.0.0" - semver "^6.2.0" - -param-case@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz" - integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== - dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz" - integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== - dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.0.0" - -parse-json@^5.0.0: - version "5.2.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" - -parse-numeric-range@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz" - integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ== - -parse5-htmlparser2-tree-adapter@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz" - integrity sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g== - dependencies: - domhandler "^5.0.2" - parse5 "^7.0.0" - -parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - -parse5@^7.0.0: - version "7.1.2" - resolved "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz" - integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== - dependencies: - entities "^4.4.0" - -parseurl@~1.3.2, parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -pascal-case@^3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz" - integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" - integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -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" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-is-inside@1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" - integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w== - -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" - 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" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-to-regexp@^1.7.0: - version "1.8.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz" - integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== - dependencies: - isarray "0.0.1" - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz" - integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== - -path-to-regexp@2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz" - integrity sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ== - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -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" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pify@^2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" - integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== - -pkg-dir@^4.1.0: - version "4.2.0" - resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - -postcss-calc@^8.2.3: - version "8.2.4" - resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz" - integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== - dependencies: - postcss-selector-parser "^6.0.9" - postcss-value-parser "^4.2.0" - -postcss-colormin@^5.3.1: - version "5.3.1" - resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz" - integrity sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ== - dependencies: - browserslist "^4.21.4" - caniuse-api "^3.0.0" - colord "^2.9.1" - postcss-value-parser "^4.2.0" - -postcss-convert-values@^5.1.3: - version "5.1.3" - resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz" - integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== - dependencies: - browserslist "^4.21.4" - postcss-value-parser "^4.2.0" - -postcss-discard-comments@^5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz" - integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== - -postcss-discard-duplicates@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz" - integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== - -postcss-discard-empty@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz" - integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== - -postcss-discard-overridden@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz" - integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== - -postcss-discard-unused@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz" - integrity sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw== - dependencies: - postcss-selector-parser "^6.0.5" - -postcss-import@^14.1.0: - version "14.1.0" - resolved "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz" - integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw== - dependencies: - postcss-value-parser "^4.0.0" - read-cache "^1.0.0" - resolve "^1.1.7" - -postcss-js@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz" - integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw== - dependencies: - camelcase-css "^2.0.1" - -postcss-load-config@^3.1.4: - version "3.1.4" - resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz" - integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== - dependencies: - lilconfig "^2.0.5" - yaml "^1.10.2" - -postcss-loader@^7.0.0: - version "7.0.2" - resolved "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz" - integrity sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg== - dependencies: - cosmiconfig "^7.0.0" - klona "^2.0.5" - semver "^7.3.8" - -postcss-merge-idents@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz" - integrity sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw== - dependencies: - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" - -postcss-merge-longhand@^5.1.7: - version "5.1.7" - resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz" - integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== - dependencies: - postcss-value-parser "^4.2.0" - stylehacks "^5.1.1" - -postcss-merge-rules@^5.1.4: - version "5.1.4" - resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz" - integrity sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g== - dependencies: - browserslist "^4.21.4" - caniuse-api "^3.0.0" - cssnano-utils "^3.1.0" - postcss-selector-parser "^6.0.5" - -postcss-minify-font-values@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz" - integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-minify-gradients@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz" - integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== - dependencies: - colord "^2.9.1" - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" - -postcss-minify-params@^5.1.4: - version "5.1.4" - resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz" - integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== - dependencies: - browserslist "^4.21.4" - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" - -postcss-minify-selectors@^5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz" - integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== - dependencies: - postcss-selector-parser "^6.0.5" - -postcss-modules-extract-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz" - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== - -postcss-modules-local-by-default@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz" - integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== - dependencies: - icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" - -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== - dependencies: - postcss-selector-parser "^6.0.4" - -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" - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== - dependencies: - icss-utils "^5.0.0" - -postcss-nested@6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz" - integrity sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w== - dependencies: - postcss-selector-parser "^6.0.10" - -postcss-normalize-charset@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz" - integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== - -postcss-normalize-display-values@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz" - integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-positions@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz" - integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-repeat-style@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz" - integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-string@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz" - integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-timing-functions@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz" - integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-unicode@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz" - integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== - dependencies: - browserslist "^4.21.4" - postcss-value-parser "^4.2.0" - -postcss-normalize-url@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz" - integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== - dependencies: - normalize-url "^6.0.1" - postcss-value-parser "^4.2.0" - -postcss-normalize-whitespace@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz" - integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-ordered-values@^5.1.3: - version "5.1.3" - resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz" - integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== - dependencies: - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" - -postcss-reduce-idents@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz" - integrity sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-reduce-initial@^5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz" - integrity sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg== - dependencies: - browserslist "^4.21.4" - caniuse-api "^3.0.0" - -postcss-reduce-transforms@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz" - integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9, postcss-selector-parser@6.0.10: - version "6.0.10" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz" - integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== - dependencies: - cssesc "^3.0.0" - util-deprecate "^1.0.2" - -postcss-selector-parser@^6.0.11: - version "6.0.11" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz" - integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== - dependencies: - cssesc "^3.0.0" - util-deprecate "^1.0.2" - -postcss-sort-media-queries@^4.2.1: - version "4.4.1" - resolved "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz" - integrity sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw== - dependencies: - sort-css-media-queries "2.1.0" - -postcss-svgo@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz" - integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== - dependencies: - postcss-value-parser "^4.2.0" - svgo "^2.7.0" - -postcss-unique-selectors@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz" - integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== - dependencies: - postcss-selector-parser "^6.0.5" - -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" - integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== - -postcss-zindex@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz" - integrity sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A== - -"postcss@^7.0.0 || ^8.0.1", postcss@^8.0.0, postcss@^8.0.9, postcss@^8.1.0, postcss@^8.2.14, postcss@^8.2.15, postcss@^8.2.2, postcss@^8.3.11, postcss@^8.4.14, postcss@^8.4.16, postcss@^8.4.17, postcss@^8.4.18, postcss@^8.4.19, postcss@^8.4.21, postcss@>=8.0.9: - version "8.4.21" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz" - integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== - dependencies: - nanoid "^3.3.4" - picocolors "^1.0.0" - source-map-js "^1.0.2" - -posthog-js@^1.53.4: - version "1.53.4" - resolved "https://registry.npmjs.org/posthog-js/-/posthog-js-1.53.4.tgz" - integrity sha512-aaQ9S+/eDuBl2XTuU/lMyMtX7eeNAQ/+53O0O+I05FwX7e5NDN1nVqlnkMP0pfZlFcnsPaVqm8N3HoYj+b7Eow== - dependencies: - fflate "^0.4.1" - rrweb-snapshot "^1.1.14" - -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz" - integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== - -pretty-error@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz" - integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== - dependencies: - lodash "^4.17.20" - renderkid "^3.0.0" - -pretty-time@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz" - integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== - -prism-react-renderer@^1.3.5: - version "1.3.5" - resolved "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz" - integrity sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg== - -prismjs@^1.28.0: - version "1.29.0" - resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz" - integrity sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q== - -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" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prompts@^2.4.2: - version "2.4.2" - resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz" - integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" - -prop-types@^15.6.2, prop-types@^15.7.2: - version "15.8.1" - resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz" - integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.13.1" - -property-information@^5.0.0, property-information@^5.3.0: - version "5.6.0" - resolved "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz" - integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== - dependencies: - xtend "^4.0.0" - -proxy-addr@~2.0.7: - version "2.0.7" - resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" - integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== - dependencies: - forwarded "0.2.0" - ipaddr.js "1.9.1" - -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" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -punycode@^1.3.2: - version "1.4.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz" - integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== - -punycode@^2.1.0: - version "2.3.0" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== - -pupa@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz" - integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== - dependencies: - escape-goat "^2.0.0" - -pure-color@^1.2.0: - version "1.3.0" - resolved "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz" - integrity sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA== - -qs@6.11.0: - version "6.11.0" - resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz" - integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== - dependencies: - side-channel "^1.0.4" - -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - -queue@6.0.2: - version "6.0.2" - resolved "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz" - integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA== - dependencies: - inherits "~2.0.3" - -quick-lru@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz" - integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== - -randombytes@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== - dependencies: - safe-buffer "^5.1.0" - -range-parser@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -range-parser@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz" - integrity sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A== - -raw-body@2.5.1: - version "2.5.1" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz" - integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== - dependencies: - bytes "3.1.2" - http-errors "2.0.0" - iconv-lite "0.4.24" - unpipe "1.0.0" - -rc@^1.2.8, rc@1.2.8: - version "1.2.8" - resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-base16-styling@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz" - integrity sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ== - dependencies: - base16 "^1.0.0" - lodash.curry "^4.0.1" - lodash.flow "^3.3.0" - pure-color "^1.2.0" - -react-dev-utils@^12.0.1: - version "12.0.1" - resolved "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz" - integrity sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ== - dependencies: - "@babel/code-frame" "^7.16.0" - address "^1.1.2" - browserslist "^4.18.1" - chalk "^4.1.2" - cross-spawn "^7.0.3" - detect-port-alt "^1.1.6" - escape-string-regexp "^4.0.0" - filesize "^8.0.6" - find-up "^5.0.0" - fork-ts-checker-webpack-plugin "^6.5.0" - global-modules "^2.0.0" - globby "^11.0.4" - gzip-size "^6.0.0" - immer "^9.0.7" - is-root "^2.1.0" - loader-utils "^3.2.0" - open "^8.4.0" - pkg-up "^3.1.0" - prompts "^2.4.2" - react-error-overlay "^6.0.11" - recursive-readdir "^2.2.2" - shell-quote "^1.7.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" - -react-dom@*, "react-dom@^16.6.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.8 || ^17.0 || ^18.0", "react-dom@^16.8.4 || ^17.0.0", "react-dom@^17.0.0 || ^16.3.0 || ^15.5.4", react-dom@^17.0.2, "react-dom@>= 16.8.0 < 19.0.0", react-dom@>=16.8.0: - version "17.0.2" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz" - integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - scheduler "^0.20.2" - -react-error-overlay@^6.0.11: - version "6.0.11" - resolved "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz" - integrity sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg== - -react-fast-compare@^3.0.1, react-fast-compare@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz" - integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== - -react-helmet-async@*, react-helmet-async@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz" - integrity sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg== - dependencies: - "@babel/runtime" "^7.12.5" - invariant "^2.2.4" - prop-types "^15.7.2" - react-fast-compare "^3.2.0" - shallowequal "^1.1.0" - -react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-json-view@^1.21.3: - version "1.21.3" - resolved "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz" - integrity sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw== - dependencies: - flux "^4.0.1" - react-base16-styling "^0.6.0" - react-lifecycles-compat "^3.0.4" - react-textarea-autosize "^8.3.2" - -react-lifecycles-compat@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz" - integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== - -react-loadable-ssr-addon-v5-slorber@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz" - integrity sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A== - dependencies: - "@babel/runtime" "^7.10.3" - -react-loadable@*, "react-loadable@npm:@docusaurus/react-loadable@5.5.2": - version "5.5.2" - resolved "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz" - integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== - dependencies: - "@types/react" "*" - prop-types "^15.6.2" - -react-player@^2.14.1: - version "2.14.1" - resolved "https://registry.npmjs.org/react-player/-/react-player-2.14.1.tgz" - integrity sha512-jILj7F9o+6NHzrJ1GqZIxfJgskvGmKeJ05FNhPvgiCpvMZFmFneKEkukywHcULDO2lqITm+zcEkLSq42mX0FbA== - dependencies: - deepmerge "^4.0.0" - load-script "^1.0.0" - memoize-one "^5.1.1" - prop-types "^15.7.2" - react-fast-compare "^3.0.1" - -react-remove-scroll-bar@^2.3.3: - version "2.3.4" - resolved "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz" - integrity sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A== - dependencies: - react-style-singleton "^2.2.1" - tslib "^2.0.0" - -react-remove-scroll@2.5.5: - version "2.5.5" - resolved "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz" - integrity sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw== - dependencies: - react-remove-scroll-bar "^2.3.3" - react-style-singleton "^2.2.1" - tslib "^2.1.0" - use-callback-ref "^1.3.0" - use-sidecar "^1.1.2" - -react-router-config@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz" - integrity sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg== - dependencies: - "@babel/runtime" "^7.1.2" - -react-router-dom@^5.3.3: - version "5.3.4" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz" - integrity sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ== - dependencies: - "@babel/runtime" "^7.12.13" - history "^4.9.0" - loose-envify "^1.3.1" - prop-types "^15.6.2" - react-router "5.3.4" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router@^5.3.3, react-router@>=5, react-router@5.3.4: - version "5.3.4" - resolved "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz" - integrity sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA== - dependencies: - "@babel/runtime" "^7.12.13" - history "^4.9.0" - hoist-non-react-statics "^3.1.0" - loose-envify "^1.3.1" - path-to-regexp "^1.7.0" - prop-types "^15.6.2" - react-is "^16.6.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.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" - integrity sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g== - dependencies: - get-nonce "^1.0.0" - invariant "^2.2.4" - tslib "^2.0.0" - -react-textarea-autosize@^8.3.2: - version "8.5.3" - resolved "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.3.tgz" - integrity sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ== - dependencies: - "@babel/runtime" "^7.20.13" - use-composed-ref "^1.3.0" - use-latest "^1.2.1" - -react@*, "react@^15.0.2 || ^16.0.0 || ^17.0.0", "react@^16.13.1 || ^17.0.0", "react@^16.6.0 || ^17.0.0 || ^18.0.0", "react@^16.8 || ^17.0 || ^18.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^16.8.4 || ^17.0.0", "react@^16.9.0 || ^17.0.0 || ^18.0.0", "react@^17.0.0 || ^16.3.0 || ^15.5.4", react@^17.0.2, "react@>= 16.8.0 < 19.0.0", react@>=0.14.9, react@>=15, react@>=16, react@>=16.6.0, react@>=16.8.0, react@17.0.2: - version "17.0.2" - resolved "https://registry.npmjs.org/react/-/react-17.0.2.tgz" - integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -read-cache@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz" - integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== - dependencies: - pify "^2.3.0" - -readable-stream@^2.0.1: - version "2.3.7" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@^3.0.6: - version "3.6.0" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -reading-time@^1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz" - integrity sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg== - -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz" - integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== - dependencies: - resolve "^1.1.6" - -recursive-readdir@^2.2.2: - version "2.2.3" - resolved "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz" - integrity sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA== - dependencies: - minimatch "^3.0.5" - -regenerate-unicode-properties@^10.1.0: - version "10.1.0" - resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz" - integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== - dependencies: - regenerate "^1.4.2" - -regenerate@^1.4.2: - version "1.4.2" - resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz" - integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== - -regenerator-runtime@^0.13.11: - version "0.13.11" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" - integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== - -regenerator-transform@^0.15.1: - version "0.15.1" - resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz" - integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== - dependencies: - "@babel/runtime" "^7.8.4" - -regexpu-core@^5.2.1: - version "5.3.0" - resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.0.tgz" - integrity sha512-ZdhUQlng0RoscyW7jADnUZ25F5eVtHdMyXSb2PiwafvteRAOJUjFoUPEYZSIfP99fBIs3maLIRfpEddT78wAAQ== - dependencies: - "@babel/regjsgen" "^0.8.0" - regenerate "^1.4.2" - regenerate-unicode-properties "^10.1.0" - regjsparser "^0.9.1" - unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.1.0" - -registry-auth-token@^4.0.0: - version "4.2.2" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz" - integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== - dependencies: - rc "1.2.8" - -registry-url@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz" - integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== - dependencies: - rc "^1.2.8" - -regjsparser@^0.9.1: - version "0.9.1" - resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz" - integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== - dependencies: - jsesc "~0.5.0" - -rehype-katex@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz" - integrity sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg== - dependencies: - "@types/katex" "^0.11.0" - hast-util-to-text "^2.0.0" - katex "^0.13.0" - rehype-parse "^7.0.0" - unified "^9.0.0" - unist-util-visit "^2.0.0" - -rehype-parse@^7.0.0: - version "7.0.1" - resolved "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz" - integrity sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw== - dependencies: - hast-util-from-parse5 "^6.0.0" - parse5 "^6.0.0" - -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz" - integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== - -remark-emoji@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz" - integrity sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w== - dependencies: - emoticon "^3.2.0" - node-emoji "^1.10.0" - unist-util-visit "^2.0.3" - -remark-footnotes@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz" - integrity sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ== - -remark-math@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz" - integrity sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q== - -remark-mdx@1.6.22: - version "1.6.22" - resolved "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz" - integrity sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ== - dependencies: - "@babel/core" "7.12.9" - "@babel/helper-plugin-utils" "7.10.4" - "@babel/plugin-proposal-object-rest-spread" "7.12.1" - "@babel/plugin-syntax-jsx" "7.12.1" - "@mdx-js/util" "1.6.22" - is-alphabetical "1.0.4" - remark-parse "8.0.3" - unified "9.2.0" - -remark-parse@8.0.3: - version "8.0.3" - resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz" - integrity sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q== - dependencies: - ccount "^1.0.0" - collapse-white-space "^1.0.2" - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - is-word-character "^1.0.0" - markdown-escapes "^1.0.0" - parse-entities "^2.0.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - trim "0.0.1" - trim-trailing-lines "^1.0.0" - unherit "^1.0.4" - unist-util-remove-position "^2.0.0" - vfile-location "^3.0.0" - xtend "^4.0.1" - -remark-squeeze-paragraphs@4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz" - integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== - dependencies: - mdast-squeeze-paragraphs "^4.0.0" - -renderkid@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz" - integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== - dependencies: - css-select "^4.1.3" - dom-converter "^0.2.0" - htmlparser2 "^6.1.0" - lodash "^4.17.21" - strip-ansi "^6.0.1" - -repeat-string@^1.0.0, repeat-string@^1.5.4: - version "1.6.1" - resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -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" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -"require-like@>= 0.1.1": - version "0.1.2" - resolved "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz" - integrity sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A== - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-pathname@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz" - integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== - -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.14.2, resolve@^1.22.1, resolve@^1.3.2: - version "1.22.1" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" - integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== - dependencies: - is-core-module "^2.9.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -responselike@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz" - integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== - dependencies: - lowercase-keys "^1.0.0" - -retry@^0.13.1: - version "0.13.1" - resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz" - integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rrweb-snapshot@^1.1.14: - version "1.1.14" - resolved "https://registry.npmjs.org/rrweb-snapshot/-/rrweb-snapshot-1.1.14.tgz" - integrity sha512-eP5pirNjP5+GewQfcOQY4uBiDnpqxNRc65yKPW0eSoU1XamDfc4M8oqpXGMyUyvLyxFDB0q0+DChuxxiU2FXBQ== - -rtl-detect@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz" - integrity sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ== - -rtlcss@^3.5.0: - version "3.5.0" - resolved "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz" - integrity sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A== - dependencies: - find-up "^5.0.0" - picocolors "^1.0.0" - postcss "^8.3.11" - strip-json-comments "^3.1.1" - -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - -rxjs@^7.5.4: - version "7.8.0" - resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz" - integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== - dependencies: - tslib "^2.1.0" - -safe-buffer@^5.1.0, safe-buffer@>=5.1.0, safe-buffer@~5.2.0, safe-buffer@5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" - 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" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -"safer-buffer@>= 2.1.2 < 3": - version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sax@^1.2.4: - version "1.2.4" - resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -scheduler@^0.20.2: - version "0.20.2" - resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz" - integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^2.6.5: - version "2.7.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz" - integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== - dependencies: - "@types/json-schema" "^7.0.5" - ajv "^6.12.4" - ajv-keywords "^3.5.2" - -schema-utils@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -schema-utils@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -schema-utils@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -schema-utils@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz" - integrity sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg== - dependencies: - "@types/json-schema" "^7.0.9" - ajv "^8.8.0" - ajv-formats "^2.1.1" - ajv-keywords "^5.0.0" - -schema-utils@2.7.0: - version "2.7.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -"search-insights@>= 1 < 3": - version "2.8.2" - resolved "https://registry.npmjs.org/search-insights/-/search-insights-2.8.2.tgz" - integrity sha512-PxA9M5Q2bpBelVvJ3oDZR8nuY00Z6qwOxL53wNpgzV28M/D6u9WUbImDckjLSILBF8F1hn/mgyuUaOPtjow4Qw== - -section-matter@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz" - integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== - dependencies: - extend-shallow "^2.0.1" - kind-of "^6.0.0" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz" - integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== - -selfsigned@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz" - integrity sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ== - dependencies: - node-forge "^1" - -semver-diff@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz" - integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== - dependencies: - semver "^6.3.0" - -semver@^5.4.1: - version "5.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - -semver@^6.0.0: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^6.1.1: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^6.1.2: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^6.2.0: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^6.3.0: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.3.2, semver@^7.3.4, semver@^7.3.7, semver@^7.3.8: - version "7.3.8" - resolved "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz" - integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== - dependencies: - lru-cache "^6.0.0" - -send@0.18.0: - version "0.18.0" - resolved "https://registry.npmjs.org/send/-/send-0.18.0.tgz" - integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== - dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" - mime "1.6.0" - ms "2.1.3" - on-finished "2.4.1" - range-parser "~1.2.1" - statuses "2.0.1" - -serialize-javascript@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz" - integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== - dependencies: - randombytes "^2.1.0" - -serve-handler@^6.1.3: - version "6.1.5" - resolved "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz" - integrity sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg== - dependencies: - bytes "3.0.0" - content-disposition "0.5.2" - fast-url-parser "1.1.3" - mime-types "2.1.18" - minimatch "3.1.2" - path-is-inside "1.0.2" - path-to-regexp "2.2.1" - range-parser "1.2.0" - -serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz" - integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw== - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.15.0: - version "1.15.0" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz" - integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.18.0" - -setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" - integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - -shallowequal@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz" - integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" - 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" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shell-quote@^1.7.3: - version "1.8.0" - resolved "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz" - integrity sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ== - -shelljs@^0.8.5: - version "0.8.5" - resolved "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz" - integrity sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow== - dependencies: - glob "^7.0.0" - interpret "^1.0.0" - rechoir "^0.6.2" - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -sirv@^1.0.7: - version "1.0.19" - resolved "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz" - integrity sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ== - dependencies: - "@polka/url" "^1.0.0-next.20" - mrmime "^1.0.0" - totalist "^1.0.0" - -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - -sitemap@^7.1.1: - version "7.1.1" - resolved "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz" - integrity sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg== - dependencies: - "@types/node" "^17.0.5" - "@types/sax" "^1.2.1" - arg "^5.0.0" - sax "^1.2.4" - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -slash@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz" - integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== - -sockjs@^0.3.24: - version "0.3.24" - resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz" - integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== - dependencies: - faye-websocket "^0.11.3" - uuid "^8.3.2" - websocket-driver "^0.7.4" - -sort-css-media-queries@2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz" - integrity sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA== - -source-map-js@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz" - integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== - -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" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map@^0.5.0: - version "0.5.7" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: - version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -space-separated-tokens@^1.0.0: - version "1.1.5" - resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz" - integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== - -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - dependencies: - debug "^4.1.0" - detect-node "^2.0.4" - hpack.js "^2.1.6" - obuf "^1.1.2" - readable-stream "^3.0.6" - wbuf "^1.7.3" - -spdy@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - dependencies: - debug "^4.1.0" - handle-thing "^2.0.0" - http-deceiver "^1.2.7" - select-hose "^2.0.0" - spdy-transport "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== - -stable@^0.1.8: - version "0.1.8" - resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -state-toggle@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz" - integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== - -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -std-env@^3.0.1: - version "3.3.2" - resolved "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz" - integrity sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA== - -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" - 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" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.2: - version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.2.0: - version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^5.0.1: - version "5.1.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" - integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== - dependencies: - eastasianwidth "^0.2.0" - emoji-regex "^9.2.2" - strip-ansi "^7.0.1" - -stringify-object@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -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" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz" - integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== - dependencies: - ansi-regex "^6.0.1" - -strip-bom-string@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz" - integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== - -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" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -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" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" - integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== - -style-to-object@^0.3.0, style-to-object@0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz" - integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== - dependencies: - inline-style-parser "0.1.1" - -stylehacks@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz" - integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== - dependencies: - browserslist "^4.21.4" - postcss-selector-parser "^6.0.4" - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - 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" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" - 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" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -svg-parser@^2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz" - integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== - -svgo@^2.7.0, svgo@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz" - integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== - dependencies: - "@trysound/sax" "0.2.0" - commander "^7.2.0" - css-select "^4.1.3" - css-tree "^1.1.3" - csso "^4.2.0" - picocolors "^1.0.0" - stable "^0.1.8" - -tailwindcss-radix@^2.7.0: - version "2.7.0" - resolved "https://registry.npmjs.org/tailwindcss-radix/-/tailwindcss-radix-2.7.0.tgz" - integrity sha512-fIVkT5zQYdsjT9+/Mvp+DTlJDdTFpRDuyS5+PLuJDAIIVr9+rWYKhK6rsB9QtjwUwwb0YF+BkAJN6CjZivOfLA== - -tailwindcss@^3.2.3, "tailwindcss@>=3.0.0 || insiders": - version "3.2.6" - resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.6.tgz" - integrity sha512-BfgQWZrtqowOQMC2bwaSNe7xcIjdDEgixWGYOd6AL0CbKHJlvhfdbINeAW76l1sO+1ov/MJ93ODJ9yluRituIw== - dependencies: - arg "^5.0.2" - chokidar "^3.5.3" - color-name "^1.1.4" - detective "^5.2.1" - didyoumean "^1.2.2" - dlv "^1.1.3" - fast-glob "^3.2.12" - glob-parent "^6.0.2" - is-glob "^4.0.3" - lilconfig "^2.0.6" - micromatch "^4.0.5" - normalize-path "^3.0.0" - object-hash "^3.0.0" - picocolors "^1.0.0" - postcss "^8.0.9" - postcss-import "^14.1.0" - postcss-js "^4.0.0" - postcss-load-config "^3.1.4" - postcss-nested "6.0.0" - postcss-selector-parser "^6.0.11" - postcss-value-parser "^4.2.0" - quick-lru "^5.1.1" - resolve "^1.22.1" - -tapable@^1.0.0: - version "1.1.3" - resolved "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - -tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: - version "2.2.1" - resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz" - integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== - -terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.3.3: - version "5.3.6" - resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz" - integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== - dependencies: - "@jridgewell/trace-mapping" "^0.3.14" - jest-worker "^27.4.5" - schema-utils "^3.1.1" - serialize-javascript "^6.0.0" - terser "^5.14.1" - -terser@^5.10.0, terser@^5.14.1: - version "5.16.3" - resolved "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz" - integrity sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q== - dependencies: - "@jridgewell/source-map" "^0.3.2" - acorn "^8.5.0" - commander "^2.20.0" - source-map-support "~0.5.20" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - -tiny-invariant@^1.0.2: - version "1.3.1" - resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz" - integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== - -tiny-warning@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz" - integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - -to-readable-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz" - integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== - -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" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - -totalist@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz" - integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== - -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" - integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== - -trim-trailing-lines@^1.0.0: - version "1.1.4" - resolved "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz" - integrity sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ== - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz" - integrity sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ== - -trough@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz" - integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== - -tslib@^2.0.0, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^2.5.0: - version "2.19.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz" - integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== - -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -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" - integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== - dependencies: - is-typedarray "^1.0.0" - -typescript-toggle@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/typescript-toggle/-/typescript-toggle-1.1.0.tgz" - integrity sha512-fdqedJ1rokLOhP2HJYZwRwfkQ1tEQ2C2YVMWPGwsVyq/5aonB67F0CbIA1kIu3rou5ZlFP3pvyvp/QLV95WHEg== - -typescript@^4.7.4, "typescript@>= 2.7": - version "4.9.5" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== - -ua-parser-js@^1.0.35: - version "1.0.36" - resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.36.tgz" - integrity sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw== - -unherit@^1.0.4: - version "1.1.3" - resolved "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz" - integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== - dependencies: - inherits "^2.0.0" - xtend "^4.0.0" - -unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz" - integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== - -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" - integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== - dependencies: - unicode-canonical-property-names-ecmascript "^2.0.0" - unicode-property-aliases-ecmascript "^2.0.0" - -unicode-match-property-value-ecmascript@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz" - integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== - -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" - integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== - -unified@^9.0.0, unified@^9.2.2: - version "9.2.2" - resolved "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz" - integrity sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -unified@9.2.0: - version "9.2.0" - resolved "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz" - integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - -unist-builder@^2.0.0, unist-builder@2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz" - integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== - -unist-util-find-after@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz" - integrity sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ== - dependencies: - unist-util-is "^4.0.0" - -unist-util-generated@^1.0.0: - version "1.1.6" - resolved "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz" - integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== - -unist-util-is@^4.0.0: - version "4.1.0" - resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz" - integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== - -unist-util-position@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz" - integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== - -unist-util-remove-position@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz" - integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== - dependencies: - unist-util-visit "^2.0.0" - -unist-util-remove@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz" - integrity sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q== - dependencies: - unist-util-is "^4.0.0" - -unist-util-stringify-position@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz" - integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== - dependencies: - "@types/unist" "^2.0.2" - -unist-util-visit-parents@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz" - integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - -unist-util-visit@^2.0.0, unist-util-visit@^2.0.3, unist-util-visit@2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz" - integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" - -universalify@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz" - integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== - -unpipe@~1.0.0, unpipe@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" - integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== - -update-browserslist-db@^1.0.10: - version "1.0.10" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz" - integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -update-notifier@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz" - integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw== - dependencies: - boxen "^5.0.0" - chalk "^4.1.0" - configstore "^5.0.1" - has-yarn "^2.1.0" - import-lazy "^2.1.0" - is-ci "^2.0.0" - is-installed-globally "^0.4.0" - is-npm "^5.0.0" - is-yarn-global "^0.3.0" - latest-version "^5.1.0" - pupa "^2.1.1" - semver "^7.3.4" - semver-diff "^3.1.1" - xdg-basedir "^4.0.0" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -url-loader@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz" - integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== - dependencies: - loader-utils "^2.0.0" - mime-types "^2.1.27" - schema-utils "^3.0.0" - -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz" - integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== - dependencies: - prepend-http "^2.0.0" - -use-callback-ref@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz" - integrity sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w== - dependencies: - tslib "^2.0.0" - -use-composed-ref@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz" - integrity sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ== - -use-isomorphic-layout-effect@^1.1.1: - version "1.1.2" - resolved "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz" - integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== - -use-latest@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz" - integrity sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw== - dependencies: - use-isomorphic-layout-effect "^1.1.1" - -use-sidecar@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz" - integrity sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw== - dependencies: - detect-node-es "^1.1.0" - tslib "^2.0.0" - -use-sync-external-store@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz" - integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== - -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" - integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== - -utila@~0.4: - version "0.4.0" - resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz" - integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== - -utility-types@^3.10.0: - version "3.10.0" - resolved "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz" - integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg== - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" - integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== - -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - -value-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz" - integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" - integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== - -vfile-location@^3.0.0, vfile-location@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz" - integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== - -vfile-message@^2.0.0: - version "2.0.4" - resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz" - integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== - dependencies: - "@types/unist" "^2.0.0" - unist-util-stringify-position "^2.0.0" - -vfile@^4.0.0: - version "4.2.1" - resolved "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz" - integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== - dependencies: - "@types/unist" "^2.0.0" - is-buffer "^2.0.0" - unist-util-stringify-position "^2.0.0" - vfile-message "^2.0.0" - -wait-on@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz" - integrity sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw== - dependencies: - axios "^0.25.0" - joi "^17.6.0" - lodash "^4.17.21" - minimist "^1.2.5" - rxjs "^7.5.4" - -watchpack@^2.4.0: - version "2.4.0" - resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz" - integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== - dependencies: - glob-to-regexp "^0.4.1" - graceful-fs "^4.1.2" - -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -web-namespaces@^1.0.0: - version "1.1.4" - resolved "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" - integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== - -webpack-bundle-analyzer@^4.5.0: - version "4.7.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.7.0.tgz" - integrity sha512-j9b8ynpJS4K+zfO5GGwsAcQX4ZHpWV+yRiHDiL+bE0XHJ8NiPYLTNVQdlFYWxtpg9lfAQNlwJg16J9AJtFSXRg== - dependencies: - acorn "^8.0.4" - acorn-walk "^8.0.0" - chalk "^4.1.0" - commander "^7.2.0" - gzip-size "^6.0.0" - lodash "^4.17.20" - opener "^1.5.2" - sirv "^1.0.7" - ws "^7.3.1" - -webpack-dev-middleware@^5.3.1: - version "5.3.3" - resolved "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz" - integrity sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA== - dependencies: - colorette "^2.0.10" - memfs "^3.4.3" - mime-types "^2.1.31" - range-parser "^1.2.1" - schema-utils "^4.0.0" - -webpack-dev-server@^4.9.3: - version "4.11.1" - resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz" - integrity sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw== - dependencies: - "@types/bonjour" "^3.5.9" - "@types/connect-history-api-fallback" "^1.3.5" - "@types/express" "^4.17.13" - "@types/serve-index" "^1.9.1" - "@types/serve-static" "^1.13.10" - "@types/sockjs" "^0.3.33" - "@types/ws" "^8.5.1" - ansi-html-community "^0.0.8" - bonjour-service "^1.0.11" - chokidar "^3.5.3" - colorette "^2.0.10" - compression "^1.7.4" - connect-history-api-fallback "^2.0.0" - default-gateway "^6.0.3" - express "^4.17.3" - graceful-fs "^4.2.6" - html-entities "^2.3.2" - http-proxy-middleware "^2.0.3" - ipaddr.js "^2.0.1" - open "^8.0.9" - p-retry "^4.5.0" - rimraf "^3.0.2" - schema-utils "^4.0.0" - selfsigned "^2.1.1" - serve-index "^1.9.1" - sockjs "^0.3.24" - spdy "^4.0.2" - webpack-dev-middleware "^5.3.1" - ws "^8.4.2" - -webpack-merge@^5.8.0: - version "5.8.0" - resolved "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz" - integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== - dependencies: - clone-deep "^4.0.1" - wildcard "^2.0.0" - -webpack-sources@^3.2.2, webpack-sources@^3.2.3: - version "3.2.3" - resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz" - integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== - -"webpack@^4.0.0 || ^5.0.0", "webpack@^4.37.0 || ^5.0.0", webpack@^5.0.0, webpack@^5.1.0, webpack@^5.20.0, webpack@^5.73.0, "webpack@>= 4", webpack@>=2, "webpack@>=4.41.1 || 5.x", "webpack@3 || 4 || 5": - version "5.76.2" - resolved "https://registry.npmjs.org/webpack/-/webpack-5.76.2.tgz" - integrity sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w== - dependencies: - "@types/eslint-scope" "^3.7.3" - "@types/estree" "^0.0.51" - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/wasm-edit" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - acorn "^8.7.1" - acorn-import-assertions "^1.7.6" - browserslist "^4.14.5" - chrome-trace-event "^1.0.2" - enhanced-resolve "^5.10.0" - es-module-lexer "^0.9.0" - eslint-scope "5.1.1" - events "^3.2.0" - glob-to-regexp "^0.4.1" - graceful-fs "^4.2.9" - json-parse-even-better-errors "^2.3.1" - loader-runner "^4.2.0" - mime-types "^2.1.27" - neo-async "^2.6.2" - schema-utils "^3.1.0" - tapable "^2.1.1" - terser-webpack-plugin "^5.1.3" - watchpack "^2.4.0" - webpack-sources "^3.2.3" - -webpackbar@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz" - integrity sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ== - dependencies: - chalk "^4.1.0" - consola "^2.15.3" - pretty-time "^1.1.0" - std-env "^3.0.1" - -websocket-driver@^0.7.4, websocket-driver@>=0.5.1: - version "0.7.4" - resolved "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== - dependencies: - http-parser-js ">=0.5.1" - safe-buffer ">=5.1.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -whatwg-url@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" - integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== - dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" - -which@^1.3.1: - version "1.3.1" - resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -widest-line@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz" - integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== - dependencies: - string-width "^4.0.0" - -widest-line@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz" - integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig== - dependencies: - string-width "^5.0.1" - -wildcard@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz" - integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^8.0.1: - version "8.1.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz" - integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== - dependencies: - ansi-styles "^6.1.0" - string-width "^5.0.1" - strip-ansi "^7.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - 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" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - -ws@^7.3.1: - version "7.5.9" - resolved "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - -ws@^8.4.2: - version "8.12.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.12.0.tgz" - integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - -xml-js@^1.6.11: - version "1.6.11" - resolved "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz" - integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g== - dependencies: - sax "^1.2.4" - -xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: - version "1.10.2" - resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz" - integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - -zwitch@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz" - integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From 13a62486de285d0a6a04827b45c917ccb2e5951b Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Fri, 10 May 2024 14:39:28 +0100 Subject: [PATCH 16/44] [Feature] Misc improvements on the Platform CLI (#6370) * section description * remove comment * show msg only if it's an OBBject * ommit coverage from menus * styling: no new lines after settings * Bugfix/cli max rows (#6374) * fix: cli max rows * fix: settings menu --------- Co-authored-by: Henrique Joaquim * add a new line only to separate menus and commands * if there's no menu description on reference.json, use the commands of that menu to create a pseudo description * use the PATH instead in the top of the menu help * default name len to 23 * keep command on the obbject so it can be shown on the results * left spacing regardless description * display cached results on every platform menu's help * display info instead of sections and display cached results * prepend OBB to use on the --data * config to set number of cached results to display * correct hub link * Save routines locally if not logged in. * Change the exit message * Point to new docs on first launch. * proper checking of max_obbjects_exceeded * fix global flag on local routines * Remove language from settings as it is not supported. * Remove rcontext flag * export to account multiple formats * Revert "Remove rcontext flag" This reverts commit 8a1f64b71c109217ce48a76a4c8e448157a5675f. * Remove * leftover * properly match provider being used with provider arguments so that kwargs are correctly filtered --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek --- cli/CONTRIBUTING.md | 1 - .../argparse_translator.py | 16 ++++- .../argparse_translator/obbject_registry.py | 1 + cli/openbb_cli/assets/i18n/en.yml | 8 +-- cli/openbb_cli/config/constants.py | 4 +- cli/openbb_cli/config/menu_text.py | 25 +++++-- cli/openbb_cli/config/setup.py | 3 - cli/openbb_cli/controllers/base_controller.py | 21 ++---- .../controllers/base_platform_controller.py | 63 ++++++++++++----- cli/openbb_cli/controllers/cli_controller.py | 37 +++++----- .../controllers/settings_controller.py | 67 ++++++++++--------- cli/openbb_cli/controllers/utils.py | 25 +++---- cli/openbb_cli/models/settings.py | 2 +- cli/openbb_cli/session.py | 6 ++ 14 files changed, 165 insertions(+), 114 deletions(-) diff --git a/cli/CONTRIBUTING.md b/cli/CONTRIBUTING.md index 49314e4a8e48..5a65b709b688 100644 --- a/cli/CONTRIBUTING.md +++ b/cli/CONTRIBUTING.md @@ -1323,7 +1323,6 @@ This class contains both important variables and methods that are common across - `cls`: clear screen - `home`: go back to the main root -- `about`: allows to open our documentation directly on the menu or command - `h`, `?` and `help`: display the help menu the user is in - `q`, `quit` and `..`: go back to one menu above - `exit`: exit the platform diff --git a/cli/openbb_cli/argparse_translator/argparse_translator.py b/cli/openbb_cli/argparse_translator/argparse_translator.py index 001e7afce04d..724c2bea3060 100644 --- a/cli/openbb_cli/argparse_translator/argparse_translator.py +++ b/cli/openbb_cli/argparse_translator/argparse_translator.py @@ -203,7 +203,7 @@ def __init__( self.func = func self.signature = inspect.signature(func) self.type_hints = get_type_hints(func) - self.provider_parameters: List[str] = [] + self.provider_parameters: Dict[str, List[str]] = {} self._parser = argparse.ArgumentParser( prog=func.__name__, @@ -218,6 +218,7 @@ def __init__( if custom_argument_groups: for group in custom_argument_groups: + self.provider_parameters[group.name] = [] argparse_group = self._parser.add_argument_group(group.name) for argument in group.arguments: self._handle_argument_in_groups(argument, argparse_group) @@ -278,7 +279,8 @@ def _update_providers( if f"--{argument.name}" not in self._parser._option_string_actions: kwargs = argument.model_dump(exclude={"name"}, exclude_none=True) group.add_argument(f"--{argument.name}", **kwargs) - self.provider_parameters.append(argument.name) + if group.title in self.provider_parameters: + self.provider_parameters[group.title].append(argument.name) else: kwargs = argument.model_dump(exclude={"name"}, exclude_none=True) @@ -582,11 +584,19 @@ def execute_func( kwargs = self._unflatten_args(vars(parsed_args)) kwargs = self._update_with_custom_types(kwargs) + provider = kwargs.get("provider") + provider_args = [] + if provider and provider in self.provider_parameters: + provider_args = self.provider_parameters[provider] + else: + for args in self.provider_parameters.values(): + provider_args.extend(args) + # remove kwargs that doesn't match the signature or provider parameters kwargs = { key: value for key, value in kwargs.items() - if key in self.signature.parameters or key in self.provider_parameters + if key in self.signature.parameters or key in provider_args } return self.func(**kwargs) diff --git a/cli/openbb_cli/argparse_translator/obbject_registry.py b/cli/openbb_cli/argparse_translator/obbject_registry.py index 848140062a7a..1c4cbf80dd9d 100644 --- a/cli/openbb_cli/argparse_translator/obbject_registry.py +++ b/cli/openbb_cli/argparse_translator/obbject_registry.py @@ -79,6 +79,7 @@ def _handle_data_repr(obbject: OBBject) -> str: "provider": obbject.provider, "standard params": _handle_standard_params(obbject), "data": _handle_data_repr(obbject), + "command": obbject.extra.get("command", ""), } return obbjects diff --git a/cli/openbb_cli/assets/i18n/en.yml b/cli/openbb_cli/assets/i18n/en.yml index 05a772b73204..2e19ee4ce396 100644 --- a/cli/openbb_cli/assets/i18n/en.yml +++ b/cli/openbb_cli/assets/i18n/en.yml @@ -1,6 +1,5 @@ en: intro: introduction on the OpenBB Platform CLI - about: discover the capabilities of the OpenBB Platform CLI (https://openbb.co/docs) support: pre-populate a support ticket for our team to evaluate survey: fill in our 2-minute survey so we better understand how we can improve the CLI settings: enable and disable feature flags, preferences and settings @@ -10,8 +9,8 @@ en: exe: execute .openbb routine scripts (use exe --example for an example) _configure_: Configure your own CLI _main_menu_: Main menu - settings/_info_: Feature flags - settings/_settings_: Settings and preferences + settings/_feature_flags_: Feature flags + settings/_preferences_: Preferences settings/retryload: retry misspelled commands with load first settings/interactive: open dataframes in interactive window settings/cls: clear console after each command @@ -20,7 +19,6 @@ en: settings/thoughts: thoughts of the day settings/reporthtml: open report as HTML otherwise notebook settings/exithelp: automatically print help when quitting menu - settings/rcontext: remember contexts loaded params during session settings/rich: colorful rich CLI settings/richpanel: colorful rich CLI panel settings/watermark: watermark in figures @@ -31,8 +29,8 @@ en: settings/console_style: apply a custom rich style to the CLI settings/flair: choose flair icon settings/timezone: pick timezone - settings/language: translation language settings/n_rows: number of rows to show on non interactive tables settings/n_cols: number of columns to show on non interactive tables settings/obbject_msg: show obbject registry message after a new result is added settings/obbject_res: define the maximum number of obbjects allowed in the registry + settings/obbject_display: define the maximum number of cached results to display on the help menu diff --git a/cli/openbb_cli/config/constants.py b/cli/openbb_cli/config/constants.py index b5b8867a243a..08aa50e107a4 100644 --- a/cli/openbb_cli/config/constants.py +++ b/cli/openbb_cli/config/constants.py @@ -65,7 +65,7 @@ ":mercury": "(☿)", ":hidden": "", ":sun": "(☼)", - ":moon": "(☾)", + ":moon": "(🌕)", ":nuke": "(☢)", ":hazard": "(☣)", ":tunder": "(☈)", @@ -76,6 +76,6 @@ ":scales": "(⚖)", ":ball": "(⚽)", ":golf": "(⛳)", - ":piece": "(☮)", + ":peace": "(☮)", ":yy": "(☯)", } diff --git a/cli/openbb_cli/config/menu_text.py b/cli/openbb_cli/config/menu_text.py index 56e2034998c4..e4b4e1bf8c2a 100644 --- a/cli/openbb_cli/config/menu_text.py +++ b/cli/openbb_cli/config/menu_text.py @@ -30,7 +30,7 @@ class MenuText: """Create menu text with rich colors to be displayed by CLI.""" - CMD_NAME_LENGTH = 18 + CMD_NAME_LENGTH = 23 CMD_DESCRIPTION_LENGTH = 65 CMD_PROVIDERS_LENGTH = 23 SECTION_SPACING = 4 @@ -64,9 +64,7 @@ def _get_providers(command_path: str) -> List: def _format_cmd_name(self, name: str) -> str: """Truncate command name length if it is too long.""" if len(name) > self.CMD_NAME_LENGTH: - new_name = name[ - : self.CMD_NAME_LENGTH - ] # Default to trimming to 18 characters + new_name = name[: self.CMD_NAME_LENGTH] if "_" in name: name_split = name.split("_") @@ -108,6 +106,22 @@ def add_raw(self, text: str): """Append raw text (without translation).""" self.menu_text += text + def add_section( + self, text: str, description: str = "", leading_new_line: bool = False + ): + """Append raw text (without translation).""" + spacing = (self.CMD_NAME_LENGTH - len(text) + self.SECTION_SPACING) * " " + left_spacing = self.SECTION_SPACING * " " + text = f"{left_spacing}{text}" + if description: + text = f"{text}{spacing}{description}\n" + + if leading_new_line: + self.menu_text += "\n" + text + + else: + self.menu_text += text + def add_custom(self, name: str): """Append custom text (after translation).""" self.menu_text += f"{i18n.t(self.menu_path + name)}" @@ -165,6 +179,9 @@ def add_menu( if description == self.menu_path + name: description = "" + if len(description) > self.CMD_DESCRIPTION_LENGTH: + description = description[: self.CMD_DESCRIPTION_LENGTH - 3] + "..." + menu = f"{name}{spacing}{description}" tag = "unvl" if disable else "menu" self.menu_text += f"[{tag}]> {menu}[/{tag}]\n" diff --git a/cli/openbb_cli/config/setup.py b/cli/openbb_cli/config/setup.py index 09bbe5052701..c507e5645a7c 100644 --- a/cli/openbb_cli/config/setup.py +++ b/cli/openbb_cli/config/setup.py @@ -7,7 +7,6 @@ import i18n from openbb_cli.config.constants import ENV_FILE_SETTINGS, I18N_FILE, SETTINGS_DIRECTORY -from openbb_cli.session import Session if TYPE_CHECKING: from openbb_charting.core.openbb_figure import OpenBBFigure @@ -81,5 +80,3 @@ def bootstrap(): """Setup pre-launch configurations for the CLI.""" SETTINGS_DIRECTORY.mkdir(parents=True, exist_ok=True) Path(ENV_FILE_SETTINGS).touch(exist_ok=True) - - setup_i18n(lang=Session().settings.USE_LANGUAGE) diff --git a/cli/openbb_cli/controllers/base_controller.py b/cli/openbb_cli/controllers/base_controller.py index c5f083079ac9..9db39807a093 100644 --- a/cli/openbb_cli/controllers/base_controller.py +++ b/cli/openbb_cli/controllers/base_controller.py @@ -52,7 +52,6 @@ class BaseController(metaclass=ABCMeta): CHOICES_COMMON = [ "cls", "home", - "about", "h", "?", "help", @@ -496,14 +495,7 @@ def call_record(self, other_args) -> None: help="Whether the routine should be public or not", default=False, ) - parser.add_argument( - "-l", - "--local", - dest="local", - action="store_true", - help="Only save the routine locally - this is necessary if you are running in guest mode.", - default=False, - ) + if other_args and "-" not in other_args[0][0]: other_args.insert(0, "-n") @@ -549,17 +541,16 @@ def call_record(self, other_args) -> None: ) return - if session.is_local() and not ns_parser.local: + if session.is_local(): session.console.print( "[red]Recording session to the OpenBB Hub is not supported in guest mode.[/red]" ) session.console.print( - "\n[yellow]Sign to OpenBB Hub to register: http://openbb.co[/yellow]" + "\n[yellow]Visit the OpenBB Hub to register: http://my.openbb.co[/yellow]" ) session.console.print( - "\n[yellow]Otherwise set the flag '-l' to save the file locally.[/yellow]" + "\n[yellow]Your routine will be saved locally.[/yellow]\n" ) - return # Check if title has a valid format title = " ".join(ns_parser.name) if ns_parser.name else "" @@ -577,8 +568,8 @@ def call_record(self, other_args) -> None: global SESSION_RECORDED_TAGS # noqa: PLW0603 global SESSION_RECORDED_PUBLIC # noqa: PLW0603 + RECORD_SESSION_LOCAL_ONLY = session.is_local() RECORD_SESSION = True - RECORD_SESSION_LOCAL_ONLY = ns_parser.local SESSION_RECORDED_NAME = title SESSION_RECORDED_DESCRIPTION = ( " ".join(ns_parser.description) @@ -871,6 +862,7 @@ def parse_known_args_and_warn( type=check_file_type_saved(choices_export), dest="export", help=help_export, + nargs="+", ) # If excel is an option, add the sheet name @@ -1001,7 +993,6 @@ def menu(self, custom_path_menu_above: str = ""): ' exit the program ' ' ' "see usage and available options " - f' ' f"{self.path[-1].capitalize()} (cmd/menu) Documentation" ), style=Style.from_dict( diff --git a/cli/openbb_cli/controllers/base_platform_controller.py b/cli/openbb_cli/controllers/base_platform_controller.py index 6f236f27f951..c154baa56cd0 100644 --- a/cli/openbb_cli/controllers/base_platform_controller.py +++ b/cli/openbb_cli/controllers/base_platform_controller.py @@ -15,6 +15,7 @@ from openbb_cli.controllers.base_controller import BaseController from openbb_cli.controllers.utils import export_data, print_rich_table from openbb_cli.session import Session +from openbb_core.app.model.obbject import OBBject session = Session() @@ -74,17 +75,20 @@ def _link_obbject_to_data_processing_commands(self): for _, trl in self.translators.items(): for action in trl._parser._actions: # pylint: disable=protected-access if action.dest == "data": - action.choices = range(len(session.obbject_registry.obbjects)) - action.type = int + action.choices = [ + "OBB" + str(i) + for i in range(len(session.obbject_registry.obbjects)) + ] + action.type = str action.nargs = None def _intersect_data_processing_commands(self, ns_parser): """Intersect data processing commands and change the obbject id into an actual obbject.""" - if hasattr(ns_parser, "data") and ns_parser.data in range( - len(session.obbject_registry.obbjects) - ): - obbject = session.obbject_registry.get(ns_parser.data) - setattr(ns_parser, "data", obbject.results) + if hasattr(ns_parser, "data"): + ns_parser.data = int(ns_parser.data.replace("OBB", "")) + if ns_parser.data in range(len(session.obbject_registry.obbjects)): + obbject = session.obbject_registry.get(ns_parser.data) + setattr(ns_parser, "data", obbject.results) return ns_parser @@ -154,13 +158,12 @@ def method(self, other_args: List[str], translator=translator): title = f"{self.PATH}{translator.func.__name__}" if obbject: - max_obbjects_exceeded = ( - len(session.obbject_registry.obbjects) - >= session.settings.N_TO_KEEP_OBBJECT_REGISTRY - ) - if max_obbjects_exceeded: + if session.max_obbjects_exceeded(): session.obbject_registry.remove() + # use the obbject to store the command so we can display it later on results + obbject.extra["command"] = f"{title} {' '.join(other_args)}" + session.obbject_registry.register(obbject) # we need to force to re-link so that the new obbject # is immediately available for data processing commands @@ -168,7 +171,9 @@ def method(self, other_args: List[str], translator=translator): # also update the completer self.update_completer(self.choices_default) - if session.settings.SHOW_MSG_OBBJECT_REGISTRY: + if session.settings.SHOW_MSG_OBBJECT_REGISTRY and isinstance( + obbject, OBBject + ): session.console.print("Added OBBject to registry.") if hasattr(ns_parser, "chart") and ns_parser.chart: @@ -197,7 +202,7 @@ def method(self, other_args: List[str], translator=translator): if hasattr(ns_parser, "export") and ns_parser.export: sheet_name = getattr(ns_parser, "sheet_name", None) export_data( - export_type=ns_parser.export, + export_type=",".join(ns_parser.export), dir_path=os.path.dirname(os.path.abspath(__file__)), func_name=translator.func.__name__, df=df, @@ -205,7 +210,7 @@ def method(self, other_args: List[str], translator=translator): figure=fig, ) - if max_obbjects_exceeded: + if session.max_obbjects_exceeded(): session.console.print( "[yellow]\nMaximum number of OBBjects reached. The oldest entry was removed.[yellow]" ) @@ -271,13 +276,26 @@ def _get_command_description(self, command: str) -> str: def _get_menu_description(self, menu: str) -> str: """Get menu description.""" + + def _get_sub_menu_commands(): + """Get sub menu commands.""" + sub_path = f"{self.PATH[1:].replace('/','_')}{menu}" + commands = [] + for trl in self.translators: + if sub_path in trl: + commands.append(trl.replace(f"{sub_path}_", "")) + return commands + menu_description = ( obb.reference["routers"] # type: ignore .get(f"{self.PATH}{menu}", {}) .get("description", "") ) or "" + if menu_description: + return menu_description.split(".")[0].lower() - return menu_description.split(".")[0].lower() + # If no description is found, return the sub menu commands + return ", ".join(_get_sub_menu_commands()) def print_help(self): """Print help.""" @@ -288,8 +306,10 @@ def print_help(self): description = self._get_menu_description(menu) mt.add_menu(name=menu, description=description) + if self.CHOICES_COMMANDS: + mt.add_raw("\n") + if self.CHOICES_COMMANDS: - mt.add_raw("\n") for command in self.CHOICES_COMMANDS: command_description = self._get_command_description(command) mt.add_cmd( @@ -297,7 +317,14 @@ def print_help(self): description=command_description, ) - session.console.print(text=mt.menu_text, menu=self._name) + if session.obbject_registry.obbjects: + mt.add_section("Cached Results:\n", leading_new_line=True) + for key, value in list(session.obbject_registry.all.items())[ + : session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY + ]: + mt.add_raw(f"\tOBB{key}: {value['command']}\n") + + session.console.print(text=mt.menu_text, menu=self.PATH) settings = session.settings dev_mode = settings.DEBUG_MODE or settings.TEST_MODE diff --git a/cli/openbb_cli/controllers/cli_controller.py b/cli/openbb_cli/controllers/cli_controller.py index dfc5eb878dd6..e44237ba82d2 100644 --- a/cli/openbb_cli/controllers/cli_controller.py +++ b/cli/openbb_cli/controllers/cli_controller.py @@ -228,8 +228,8 @@ def print_help(self): mt.add_cmd("stop") mt.add_cmd("exe") mt.add_raw("\n") - mt.add_info("Platform CLI") - mt.add_raw(" data\n") + mt.add_info("Retrieve data from different asset classes and providers") + for router, value in PLATFORM_ROUTERS.items(): if router in NON_DATA_ROUTERS or router in DATA_PROCESSING_ROUTERS: continue @@ -247,7 +247,8 @@ def print_help(self): mt.add_cmd(router) if any(router in PLATFORM_ROUTERS for router in DATA_PROCESSING_ROUTERS): - mt.add_raw("\n data processing\n") + mt.add_info("\nAnalyze and process previously obtained data") + for router, value in PLATFORM_ROUTERS.items(): if router not in DATA_PROCESSING_ROUTERS: continue @@ -264,9 +265,10 @@ def print_help(self): else: mt.add_cmd(router) - mt.add_raw("\n configuration\n") + mt.add_info("\nConfigure the platform and manage your account") + for router, value in PLATFORM_ROUTERS.items(): - if router not in NON_DATA_ROUTERS or router == "reference": + if router not in NON_DATA_ROUTERS or router in ["reference", "coverage"]: continue if value == "menu": menu_description = ( @@ -281,8 +283,14 @@ def print_help(self): else: mt.add_cmd(router) - mt.add_raw("\n cached results (OBBjects)\n") + mt.add_info("\nAccess and manage your cached results") mt.add_cmd("results") + if session.obbject_registry.obbjects: + mt.add_section("Cached Results:\n", leading_new_line=True) + for key, value in list(session.obbject_registry.all.items())[ # type: ignore + : session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY + ]: + mt.add_raw(f"\tOBB{key}: {value['command']}\n") # type: ignore session.console.print(text=mt.menu_text, menu="Home") self.update_runtime_choices() @@ -300,7 +308,7 @@ def parse_input(self, an_input: str) -> List: return parse_and_split_input(an_input=an_input, custom_filters=custom_filters) def call_settings(self, _): - """Process feature flags command.""" + """Process settings command.""" from openbb_cli.controllers.settings_controller import ( SettingsController, ) @@ -315,8 +323,7 @@ def call_exe(self, other_args: List[str]): if not other_args: session.console.print( "[info]Provide a path to the routine you wish to execute. For an example, please use " - "`exe --example` and for documentation and to learn how create your own script " - "type `about exe`.\n[/info]" + "`exe --example`.\n[/info]" ) return parser = argparse.ArgumentParser( @@ -324,8 +331,7 @@ def call_exe(self, other_args: List[str]): formatter_class=argparse.ArgumentDefaultsHelpFormatter, prog="exe", description="Execute automated routine script. For an example, please use " - "`exe --example` and for documentation and to learn how create your own script " - "type `about exe`.", + "`exe --example`.", ) parser.add_argument( "--file", @@ -368,8 +374,8 @@ def call_exe(self, other_args: List[str]): if ns_parser: if ns_parser.example: routine_path = ASSETS_DIRECTORY / "routines" / "routine_example.openbb" - session.console.print( - "[info]Executing an example, please type `about exe` " + session.console.print( # TODO: Point to docs when ready + "[info]Executing an example, please visit our docs " "to learn how to create your own script.[/info]\n" ) time.sleep(3) @@ -525,9 +531,7 @@ def run_cli(jobs_cmds: Optional[List[str]] = None, test_mode=False): if first_time_user(): with contextlib.suppress(EOFError): - webbrowser.open( - "https://docs.openbb.co/terminal/usage/overview/structure-and-navigation" - ) + webbrowser.open("https://docs.openbb.co/cli") t_controller.print_help() @@ -565,7 +569,6 @@ def run_cli(jobs_cmds: Optional[List[str]] = None, test_mode=False): ' exit the program ' ' ' "see usage and available options " - ' ' ), style=Style.from_dict( { diff --git a/cli/openbb_cli/controllers/settings_controller.py b/cli/openbb_cli/controllers/settings_controller.py index d293078a0efd..9f87d4cc677a 100644 --- a/cli/openbb_cli/controllers/settings_controller.py +++ b/cli/openbb_cli/controllers/settings_controller.py @@ -1,4 +1,4 @@ -"""Feature Flags Controller Module.""" +"""Settings Controller Module.""" import argparse from typing import List, Optional @@ -16,7 +16,7 @@ class SettingsController(BaseController): - """Feature Flags Controller class.""" + """Settings Controller class.""" CHOICES_COMMANDS: List[str] = [ "retryload", @@ -36,11 +36,11 @@ class SettingsController(BaseController): "console_style", "flair", "timezone", - "language", "n_rows", "n_cols", "obbject_msg", "obbject_res", + "obbject_display", ] PATH = "/settings/" CHOICES_GENERATION = True @@ -56,8 +56,7 @@ def print_help(self): settings = session.settings mt = MenuText("settings/") - mt.add_info("_info_") - mt.add_raw("\n") + mt.add_info("_feature_flags_") mt.add_setting("interactive", settings.USE_INTERACTIVE_DF) mt.add_setting("cls", settings.USE_CLEAR_AFTER_CMD) mt.add_setting("promptkit", settings.USE_PROMPT_TOOLKIT) @@ -69,17 +68,16 @@ def print_help(self): mt.add_setting("version", settings.SHOW_VERSION) mt.add_setting("obbject_msg", settings.SHOW_MSG_OBBJECT_REGISTRY) mt.add_raw("\n") - mt.add_info("_settings_") - mt.add_raw("\n") + mt.add_info("_preferences_") mt.add_cmd("console_style") mt.add_cmd("flair") mt.add_cmd("timezone") - mt.add_cmd("language") mt.add_cmd("n_rows") mt.add_cmd("n_cols") mt.add_cmd("obbject_res") + mt.add_cmd("obbject_display") - session.console.print(text=mt.menu_text, menu="Feature Flags") + session.console.print(text=mt.menu_text, menu="Settings") def call_overwrite(self, _): """Process overwrite command.""" @@ -223,30 +221,6 @@ def call_timezone(self, other_args: List[str]) -> None: elif not other_args: session.console.print(f"Current timezone: {session.settings.TIMEZONE}") - def call_language(self, other_args: List[str]) -> None: - """Process language command.""" - parser = argparse.ArgumentParser( - formatter_class=argparse.ArgumentDefaultsHelpFormatter, - prog="language", - description="Change your custom language.", - add_help=False, - ) - parser.add_argument( - "-l", - "--language", - dest="language", - action="store", - required=False, - type=str, - ) - ns_parser = self.parse_simple_args(parser, other_args) - - if ns_parser and ns_parser.language: - session.settings.set_item("USE_LANGUAGE", ns_parser.language) - - elif not other_args: - session.console.print(f"Current language: {session.settings.USE_LANGUAGE}") - def call_n_rows(self, other_args: List[str]) -> None: """Process n_rows command.""" parser = argparse.ArgumentParser( @@ -325,3 +299,30 @@ def call_obbject_res(self, other_args: List[str]): f"Current maximum allowed number of results to keep in the OBBject registry:" f" {session.settings.N_TO_KEEP_OBBJECT_REGISTRY}" ) + + def call_obbject_display(self, other_args: List[str]): + """Process obbject_display command.""" + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter, + prog="obbject_display", + description="Number of results to display from the OBBject Registry.", + add_help=False, + ) + parser.add_argument( + "-n", + "--number", + dest="number", + action="store", + required=False, + type=int, + ) + ns_parser = self.parse_simple_args(parser, other_args) + + if ns_parser and ns_parser.number: + session.settings.set_item("N_TO_DISPLAY_OBBJECT_REGISTRY", ns_parser.number) + + elif not other_args: + session.console.print( + f"Current number of results to display from the OBBject registry:" + f" {session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY}" + ) diff --git a/cli/openbb_cli/controllers/utils.py b/cli/openbb_cli/controllers/utils.py index a85751a58fa1..cfeb7cbadab8 100644 --- a/cli/openbb_cli/controllers/utils.py +++ b/cli/openbb_cli/controllers/utils.py @@ -78,9 +78,11 @@ def print_goodbye(): text = """ [param]Thank you for using the OpenBB Platform CLI and being part of this journey.[/param] -We hope you'll find the new CLI as valuable as this. To stay tuned, sign up for our newsletter: [cmds]https://openbb.co/newsletter.[/] +We hope you'll find the new OpenBB Platform CLI a valuable tool. -In the meantime, check out our other products: +To stay tuned, sign up for our newsletter: [cmds]https://openbb.co/newsletter.[/] + +Please feel free to check out our other products: [bold]OpenBB Terminal Pro[/]: [cmds]https://openbb.co/products/pro[/cmds] [bold]OpenBB Platform:[/] [cmds]https://openbb.co/products/platform[/cmds] @@ -454,6 +456,9 @@ def print_rich_table( # noqa: PLR0912 if export: return + MAX_COLS = Session().settings.ALLOWED_NUMBER_OF_COLUMNS + MAX_ROWS = Session().settings.ALLOWED_NUMBER_OF_ROWS + # Make a copy of the dataframe to avoid SettingWithCopyWarning df = df.copy() @@ -525,16 +530,12 @@ def _get_headers(_headers: Union[List[str], pd.Index]) -> List[str]: if columns_to_auto_color is None and rows_to_auto_color is None: df = df.applymap(lambda x: return_colored_value(str(x))) - exceeds_allowed_columns = ( - len(df.columns) > Session().settings.ALLOWED_NUMBER_OF_COLUMNS - ) - exceeds_allowed_rows = len(df) > Session().settings.ALLOWED_NUMBER_OF_ROWS + exceeds_allowed_columns = len(df.columns) > MAX_COLS + exceeds_allowed_rows = len(df) > MAX_ROWS if exceeds_allowed_columns: original_columns = df.columns.tolist() - trimmed_columns = df.columns.tolist()[ - : Session().settings.ALLOWED_NUMBER_OF_COLUMNS - ] + trimmed_columns = df.columns.tolist()[:MAX_COLS] df = df[trimmed_columns] trimmed_columns = [ col for col in original_columns if col not in trimmed_columns @@ -542,9 +543,9 @@ def _get_headers(_headers: Union[List[str], pd.Index]) -> List[str]: if exceeds_allowed_rows: n_rows = len(df.index) - trimmed_rows = df.index.tolist()[: Session().settings.ALLOWED_NUMBER_OF_ROWS] - df = df.loc[trimmed_rows] - trimmed_rows_count = n_rows - Session().settings.ALLOWED_NUMBER_OF_ROWS + max_rows = MAX_ROWS + df = df[:max_rows] + trimmed_rows_count = n_rows - max_rows if use_tabulate_df: table = Table(title=title, show_lines=True, show_header=show_header) diff --git a/cli/openbb_cli/models/settings.py b/cli/openbb_cli/models/settings.py index b4380eee1c06..7fdda72d3de9 100644 --- a/cli/openbb_cli/models/settings.py +++ b/cli/openbb_cli/models/settings.py @@ -34,9 +34,9 @@ class Settings(BaseModel): # GENERAL TIMEZONE: str = "America/New_York" FLAIR: str = ":openbb" - USE_LANGUAGE: str = "en" PREVIOUS_USE: bool = False N_TO_KEEP_OBBJECT_REGISTRY: int = 10 + N_TO_DISPLAY_OBBJECT_REGISTRY: int = 5 # STYLE RICH_STYLE: str = "dark" diff --git a/cli/openbb_cli/session.py b/cli/openbb_cli/session.py index be2a7938aa31..49da650bf8c7 100644 --- a/cli/openbb_cli/session.py +++ b/cli/openbb_cli/session.py @@ -84,3 +84,9 @@ def is_local(self) -> bool: def reset(self) -> None: pass + + def max_obbjects_exceeded(self) -> bool: + """Check if max obbjects exceeded.""" + return ( + len(self.obbject_registry.all) >= self.settings.N_TO_KEEP_OBBJECT_REGISTRY + ) From c29200aa17941d8c6ce8baee810961467427eacb Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Fri, 10 May 2024 17:14:30 +0100 Subject: [PATCH 17/44] fallback to to_df() method when results are a string (#6388) --- openbb_platform/core/openbb_core/app/model/obbject.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/openbb_platform/core/openbb_core/app/model/obbject.py b/openbb_platform/core/openbb_core/app/model/obbject.py index 2db09e0cd00c..67f41e9d15d8 100644 --- a/openbb_platform/core/openbb_core/app/model/obbject.py +++ b/openbb_platform/core/openbb_core/app/model/obbject.py @@ -105,6 +105,9 @@ def to_dataframe( - Dict[str, List] - Dict[str, BaseModel] + Other supported formats: + - str + Parameters ---------- index : Optional[str] @@ -155,6 +158,9 @@ def is_list_of_basemodel(items: Union[List[T], T]) -> bool: dt: Union[List[Data], Data] = res # type: ignore df = basemodel_to_df(dt, index) sort_columns = False + # str + elif isinstance(res, str): + df = pd.DataFrame([res]) # List[List | str | int | float] | Dict[str, Dict | List | BaseModel] else: try: From 5b7428070a32efb9644e30da2b6fc509e94e231a Mon Sep 17 00:00:00 2001 From: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Date: Fri, 10 May 2024 20:16:09 +0100 Subject: [PATCH 18/44] [Feature] - Create repo assets directory (#6384) * feat: create scripts to generate repo assets * move script * publish.md * deletes unmaintained .md files * ruff * pylint * fix: website urls * fix: website urls * rename script * renames * create folder * mypy * PyDocstyle * fix: descriptions & websites * camelCase * change json structure * logo url * reprName * finra * logos * logo * logo * logo * logo * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- assets/README.md | 5 + assets/extensions/obbject.json | 6 + assets/extensions/provider.json | 258 ++++++++++++++++++ assets/extensions/router.json | 58 ++++ assets/scripts/generate_extension_data.py | 115 ++++++++ build/pypi/openbb_platform/PUBLISH.md | 7 +- openbb_platform/EXTENSIONS.md | 16 -- openbb_platform/PROVIDERS.md | 10 - openbb_platform/assets/providers.json | 58 ---- .../core/openbb_core/app/model/extension.py | 4 + .../openbb_core/provider/abstract/provider.py | 21 +- .../charting/openbb_charting/__init__.py | 31 +-- .../openbb_alpha_vantage/__init__.py | 17 +- .../benzinga/openbb_benzinga/__init__.py | 6 +- .../biztoc/openbb_biztoc/__init__.py | 16 +- .../providers/cboe/openbb_cboe/__init__.py | 8 +- .../providers/ecb/openbb_ecb/__init__.py | 8 +- .../econdb/openbb_econdb/__init__.py | 13 +- .../openbb_federal_reserve/__init__.py | 7 +- .../providers/finra/openbb_finra/__init__.py | 7 +- .../finviz/openbb_finviz/__init__.py | 2 + .../providers/fmp/openbb_fmp/__init__.py | 8 +- .../providers/fred/openbb_fred/__init__.py | 10 +- .../openbb_government_us/__init__.py | 16 +- .../intrinio/openbb_intrinio/__init__.py | 8 +- .../nasdaq/openbb_nasdaq/__init__.py | 4 + .../providers/oecd/openbb_oecd/__init__.py | 7 +- .../polygon/openbb_polygon/__init__.py | 10 +- .../providers/sec/openbb_sec/__init__.py | 4 +- .../openbb_seeking_alpha/__init__.py | 4 +- .../stockgrid/openbb_stockgrid/__init__.py | 14 +- .../tiingo/openbb_tiingo/__init__.py | 7 +- .../providers/tmx/openbb_tmx/__init__.py | 26 +- .../tradier/openbb_tradier/__init__.py | 14 +- .../openbb_tradingeconomics/__init__.py | 12 +- .../providers/wsj/openbb_wsj/__init__.py | 16 +- .../yfinance/openbb_yfinance/__init__.py | 8 +- 37 files changed, 646 insertions(+), 195 deletions(-) create mode 100644 assets/README.md create mode 100644 assets/extensions/obbject.json create mode 100644 assets/extensions/provider.json create mode 100644 assets/extensions/router.json create mode 100644 assets/scripts/generate_extension_data.py delete mode 100644 openbb_platform/EXTENSIONS.md delete mode 100644 openbb_platform/PROVIDERS.md delete mode 100644 openbb_platform/assets/providers.json diff --git a/assets/README.md b/assets/README.md new file mode 100644 index 000000000000..85a39728b364 --- /dev/null +++ b/assets/README.md @@ -0,0 +1,5 @@ +# Assets + +This folder should hold assets read by OpenBB applications, such as OpenBB Hub or marketing website. + +The goal is to be more explicit about which assets are being used externally and cannot be deleted before checking where they are used. diff --git a/assets/extensions/obbject.json b/assets/extensions/obbject.json new file mode 100644 index 000000000000..ce70c67916b0 --- /dev/null +++ b/assets/extensions/obbject.json @@ -0,0 +1,6 @@ +[ + { + "packageName": "openbb-charting", + "description": "Create custom charts from OBBject data." + } +] \ No newline at end of file diff --git a/assets/extensions/provider.json b/assets/extensions/provider.json new file mode 100644 index 000000000000..3e5b5c4ebb9c --- /dev/null +++ b/assets/extensions/provider.json @@ -0,0 +1,258 @@ +[ + { + "packageName": "openbb-alpha-vantage", + "reprName": "Alpha Vantage", + "description": "Alpha Vantage provides realtime and historical\nfinancial market data through a set of powerful and developer-friendly data APIs\nand spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds)\nto economic indicators, from foreign exchange rates to commodities,\nfrom fundamental data to technical indicators, Alpha Vantage\nis your one-stop-shop for enterprise-grade global market data delivered through\ncloud-based APIs, Excel, and Google Sheets. ", + "credentials": [ + "alpha_vantage_api_key" + ], + "v3Credentials": [ + "API_KEY_ALPHAVANTAGE" + ], + "website": "https://www.alphavantage.co", + "instructions": "Go to: https://www.alphavantage.co/support/#api-key\n\n![AlphaVantage](https://user-images.githubusercontent.com/46355364/207820936-46c2ba00-81ff-4cd3-98a4-4fa44412996f.png)\n\nFill out the form, pass Captcha, and click on, \"GET FREE API KEY\"." + }, + { + "packageName": "openbb-benzinga", + "reprName": "Benzinga", + "description": "Benzinga is a financial data provider that offers an API\nfocused on information that moves the market.", + "credentials": [ + "benzinga_api_key" + ], + "website": "https://www.benzinga.com", + "logoUrl": "https://www.benzinga.com/sites/all/themes/bz2/images/Benzinga-logo-navy.svg" + }, + { + "packageName": "openbb-biztoc", + "reprName": "BizToc", + "description": "BizToc uses Rapid API for its REST API.\nYou may sign up for your free account at https://rapidapi.com/thma/api/biztoc.\n\nThe Base URL for all requests is:\n\n https://biztoc.p.rapidapi.com/\n\nIf you're not a developer but would still like to use Biztoc outside of the main website,\nwe've partnered with OpenBB, allowing you to pull in BizToc's news stream in their Terminal.", + "credentials": [ + "biztoc_api_key" + ], + "v3Credentials": [ + "API_BIZTOC_TOKEN" + ], + "website": "https://api.biztoc.com", + "instructions": "The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)", + "logoUrl": "https://c.biztoc.com/274/logo.svg" + }, + { + "packageName": "openbb-cboe", + "reprName": "Chicago Board Options Exchange (CBOE)", + "description": "Cboe is the world's go-to derivatives and exchange network,\ndelivering cutting-edge trading, clearing and investment solutions to people\naround the world.", + "credentials": [], + "website": "https://www.cboe.com", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Cboe_Global_Markets_Logo.svg/2880px-Cboe_Global_Markets_Logo.svg.png" + }, + { + "packageName": "openbb-ecb", + "reprName": "European Central Bank (ECB)", + "description": "The ECB Data Portal provides access to all official ECB statistics.\nThe portal also provides options to download data and comprehensive metadata for each dataset.\nStatistical publications and dashboards offer a compilation of key data on selected topics.", + "credentials": [], + "website": "https://data.ecb.europa.eu", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Logo_European_Central_Bank.svg/720px-Logo_European_Central_Bank.svg.png" + }, + { + "packageName": "openbb-econdb", + "reprName": "EconDB", + "description": "The mission of the company is to process information in ways that\nfacilitate understanding of the economic situation at different granularity levels.\n\nThe sources of data include official statistics agencies and so-called alternative\ndata sources where we collect direct observations of the market and generate\naggregate statistics.", + "credentials": [ + "econdb_api_key" + ], + "website": "https://econdb.com", + "logoUrl": "https://avatars.githubusercontent.com/u/21289885?v=4" + }, + { + "packageName": "openbb-federal-reserve", + "reprName": "Federal Reserve (FED)", + "description": "Access data provided by the Federal Reserve System,\nthe Central Bank of the United States.", + "credentials": [], + "website": "https://www.federalreserve.gov/data.htm", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Seal_of_the_United_States_Federal_Reserve_System.svg/498px-Seal_of_the_United_States_Federal_Reserve_System.svg.png" + }, + { + "packageName": "openbb-finra", + "reprName": "Financial Industry Regulatory Authority (FINRA)", + "description": "FINRA Data provides centralized access to the abundance of data FINRA\nmakes available to the public, media, researchers and member firms.", + "credentials": [], + "website": "https://www.finra.org/finra-data", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/9/95/FINRA_logo.svg/1024px-FINRA_logo.svg.png" + }, + { + "packageName": "openbb-finviz", + "reprName": "FinViz", + "description": "Unofficial Finviz API - https://github.com/lit26/finvizfinance/releases", + "credentials": [], + "website": "https://finviz.com", + "logoUrl": "https://finviz.com/img/logo_3_2x.png" + }, + { + "packageName": "openbb-fmp", + "reprName": "Financial Modeling Prep (FMP)", + "description": "Financial Modeling Prep is a new concept that informs you about\nstock market information (news, currencies, and stock prices).", + "credentials": [ + "fmp_api_key" + ], + "v3Credentials": [ + "API_KEY_FINANCIALMODELINGPREP" + ], + "website": "https://financialmodelingprep.com", + "instructions": "Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, \"Get my API KEY here\", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the \"Dashboard\" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)", + "logoUrl": "https://intelligence.financialmodelingprep.com//images/fmp-brain-original.svg" + }, + { + "packageName": "openbb-fred", + "reprName": "Federal Reserve Economic Data | St. Louis FED (FRED)", + "description": "Federal Reserve Economic Data is a database maintained by the\nResearch division of the Federal Reserve Bank of St. Louis that has more than\n816,000 economic time series from various sources.", + "credentials": [ + "fred_api_key" + ], + "v3Credentials": [ + "API_FRED_KEY" + ], + "website": "https://fred.stlouisfed.org", + "instructions": "Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, \"My Account\", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to \"My Account\", and select \"API Keys\". Then, click on, \"Request API Key\".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, \"Request API key\", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)", + "logoUrl": "https://fred.stlouisfed.org/images/fred-logo-2x.png" + }, + { + "packageName": "openbb-government-us", + "reprName": "Data.gov | United States Government", + "description": "Data.gov is the United States government's open data website.\nIt provides access to datasets published by agencies across the federal government.\nData.gov is intended to provide access to government open data to the public, achieve\nagency missions, drive innovation, fuel economic activity, and uphold the ideals of\nan open and transparent government.", + "credentials": [], + "website": "https://data.gov", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/0/06/Muq55HrN_400x400.png" + }, + { + "packageName": "openbb-intrinio", + "reprName": "Intrinio", + "description": "Intrinio is a financial data platform that provides real-time and\nhistorical financial market data to businesses and developers through an API.", + "credentials": [ + "intrinio_api_key" + ], + "v3Credentials": [ + "API_INTRINIO_KEY" + ], + "website": "https://intrinio.com", + "instructions": "Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard.", + "logoUrl": "https://assets-global.website-files.com/617960145ff34fe4a9fe7240/617960145ff34f9a97fe72c8_Intrinio%20Logo%20-%20Dark.svg" + }, + { + "packageName": "openbb-nasdaq", + "reprName": "NASDAQ", + "description": "Positioned at the nexus of technology and the capital markets, Nasdaq\nprovides premier platforms and services for global capital markets and beyond with\nunmatched technology, insights and markets expertise.", + "credentials": [ + "nasdaq_api_key" + ], + "v3Credentials": [ + "API_KEY_QUANDL" + ], + "website": "https://data.nasdaq.com", + "instructions": "Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, \"Sign Up\", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/NASDAQ_logo.svg/1600px-NASDAQ_logo.svg.png" + }, + { + "packageName": "openbb-oecd", + "reprName": "Organization for Economic Co-operation and Development (OECD)", + "description": "OECD.Stat includes data and metadata for OECD countries and selected\nnon-member economies.", + "credentials": [], + "website": "https://stats.oecd.org", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/OECD_logo.svg/400px-OECD_logo.svg.png" + }, + { + "packageName": "openbb-polygon", + "reprName": "Polygon", + "description": "The Polygon.io Stocks API provides REST endpoints that let you query\nthe latest market data from all US stock exchanges. You can also find data on\ncompany financials, stock market holidays, corporate actions, and more.", + "credentials": [ + "polygon_api_key" + ], + "v3Credentials": [ + "API_POLYGON_KEY" + ], + "website": "https://polygon.io", + "instructions": "Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, \"Get your Free API Key\".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)", + "logoUrl": "https://polygon.io/_next/image?url=%2Flogo.svg&w=640&q=75" + }, + { + "packageName": "openbb-sec", + "reprName": "Securities and Exchange Commission (SEC)", + "description": "SEC is the public listings regulatory body for the United States.", + "credentials": [], + "website": "https://www.sec.gov/data", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Seal_of_the_United_States_Securities_and_Exchange_Commission.svg/1920px-Seal_of_the_United_States_Securities_and_Exchange_Commission.svg.png" + }, + { + "packageName": "openbb-seeking-alpha", + "reprName": "Seeking Alpha", + "description": "Seeking Alpha is a data provider with access to news, analysis, and\nreal-time alerts on stocks.", + "credentials": [], + "website": "https://seekingalpha.com", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Seeking_Alpha_Logo.svg/280px-Seeking_Alpha_Logo.svg.png" + }, + { + "packageName": "openbb-stockgrid", + "reprName": "Stockgrid", + "description": "Stockgrid gives you a detailed view of what smart money is doing.\nGet in depth data about large option blocks being traded, including\nthe sentiment score, size, volume and order type. Stop guessing and\nbuild a strategy around the number 1 factor moving the market: money.", + "credentials": [], + "website": "https://www.stockgrid.io", + "logoUrl": "https://www.stockgrid.io/img/logo_white2.41ee5250.svg" + }, + { + "packageName": "openbb-tiingo", + "reprName": "Tiingo", + "description": "A Reliable, Enterprise-Grade Financial Markets API. Tiingo's APIs\npower hedge funds, tech companies, and individuals.", + "credentials": [ + "tiingo_token" + ], + "website": "https://tiingo.com", + "logoUrl": "https://www.tiingo.com/dist/images/tiingo/logos/tiingo_full_light_color.svg" + }, + { + "packageName": "openbb-tmx", + "reprName": "TMX", + "description": "Unofficial TMX Data Provider Extension\n TMX Group Companies\n - Toronto Stock Exchange\n - TSX Venture Exchange\n - TSX Trust\n - Montr\u00e9al Exchange\n - TSX Alpha Exchange\n - Shorcan\n - CDCC\n - CDS\n - TMX Datalinx\n - Trayport\n ", + "credentials": [], + "website": "https://www.tmx.com", + "logoUrl": "https://www.tmx.com/assets/application/img/tmx_logo_en.1593799726.svg" + }, + { + "packageName": "openbb-tradier", + "reprName": "Tradier", + "description": "Tradier provides a full range of services in a scalable, secure,\nand easy-to-use REST-based API for businesses and individual developers.\nFast, secure, simple. Start in minutes.\nGet access to trading, account management, and market-data for\nTradier Brokerage accounts through our APIs.", + "credentials": [ + "tradier_api_key", + "tradier_account_type" + ], + "v3Credentials": [ + "API_TRADIER_TOKEN" + ], + "website": "https://tradier.com", + "instructions": "Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, \"Open Account\", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token.", + "logoUrl": "https://tradier.com/assets/images/tradier-logo.svg" + }, + { + "packageName": "openbb-tradingeconomics", + "reprName": "Trading Economics", + "description": "Trading Economics provides its users with accurate information for\n196 countries including historical data and forecasts for more than 20 million economic\nindicators, exchange rates, stock market indexes, government bond yields and commodity\nprices. Our data for economic indicators is based on official sources, not third party\ndata providers, and our facts are regularly checked for inconsistencies.\nTrading Economics has received nearly 2 billion page views from all around the\nworld.", + "credentials": [ + "tradingeconomics_api_key" + ], + "website": "https://tradingeconomics.com", + "logoUrl": "https://developer.tradingeconomics.com/Content/Images/logo.svg" + }, + { + "packageName": "openbb-wsj", + "reprName": "Wall Street Journal (WSJ)", + "description": "WSJ (Wall Street Journal) is a business-focused, English-language\ninternational daily newspaper based in New York City. The Journal is published six\ndays a week by Dow Jones & Company, a division of News Corp, along with its Asian\nand European editions. The newspaper is published in the broadsheet format and\nonline. The Journal has been printed continuously since its inception on\nJuly 8, 1889, by Charles Dow, Edward Jones, and Charles Bergstresser.\nThe WSJ is the largest newspaper in the United States, by circulation.\n ", + "credentials": [], + "website": "https://www.wsj.com", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/WSJ_Logo.svg/1594px-WSJ_Logo.svg.png" + }, + { + "packageName": "openbb-yfinance", + "reprName": "Yahoo Finance", + "description": "Yahoo! Finance is a web-based platform that offers financial news,\ndata, and tools for investors and individuals interested in tracking and analyzing\nfinancial markets and assets.", + "credentials": [], + "website": "https://finance.yahoo.com", + "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/8/8f/Yahoo%21_Finance_logo_2021.png" + } +] \ No newline at end of file diff --git a/assets/extensions/router.json b/assets/extensions/router.json new file mode 100644 index 000000000000..2f88caa82cf8 --- /dev/null +++ b/assets/extensions/router.json @@ -0,0 +1,58 @@ +[ + { + "packageName": "openbb-commodity", + "description": "Commodity market data." + }, + { + "packageName": "openbb-crypto", + "description": "Cryptocurrency market data." + }, + { + "packageName": "openbb-currency", + "description": "Foreign exchange (FX) market data." + }, + { + "packageName": "openbb-derivatives", + "description": "Derivatives market data." + }, + { + "packageName": "openbb-econometrics", + "description": "Econometrics analysis tools." + }, + { + "packageName": "openbb-economy", + "description": "Economic data." + }, + { + "packageName": "openbb-equity", + "description": "Equity market data." + }, + { + "packageName": "openbb-etf", + "description": "Exchange Traded Funds market data." + }, + { + "packageName": "openbb-fixedincome", + "description": "Fixed Income market data." + }, + { + "packageName": "openbb-index", + "description": "Indices data." + }, + { + "packageName": "openbb-news", + "description": "Financial market news data." + }, + { + "packageName": "openbb-quantitative", + "description": "Quantitative analysis tools." + }, + { + "packageName": "openbb-regulators", + "description": "Financial market regulators data." + }, + { + "packageName": "openbb-technical", + "description": "Technical Analysis tools." + } +] \ No newline at end of file diff --git a/assets/scripts/generate_extension_data.py b/assets/scripts/generate_extension_data.py new file mode 100644 index 000000000000..1949cafea4ed --- /dev/null +++ b/assets/scripts/generate_extension_data.py @@ -0,0 +1,115 @@ +"""Generate assets from modules.""" + +from importlib import import_module +from json import dump +from pathlib import Path +from typing import Any, Dict, List + +from poetry.core.pyproject.toml import PyProjectTOML + +THIS_DIR = Path(__file__).parent +PROVIDERS_PATH = Path(THIS_DIR, "..", "..", "openbb_platform/providers") +EXTENSIONS_PATH = Path(THIS_DIR, "..", "..", "openbb_platform/extensions") +OBBJECT_EXTENSIONS_PATH = Path( + THIS_DIR, "..", "..", "openbb_platform/obbject_extensions" +) + + +def to_title(string: str) -> str: + """Format string to title.""" + return " ".join(string.split("_")).title() + + +def get_packages(path: Path, plugin_key: str) -> Dict[str, Any]: + """Get packages.""" + SKIP = ["tests", "__pycache__"] + folders = [f for f in path.glob("*") if f.is_dir() and f.stem not in SKIP] + packages: Dict[str, Any] = {} + for f in folders: + pyproject = PyProjectTOML(Path(f, "pyproject.toml")) + poetry = pyproject.data["tool"]["poetry"] + name = poetry["name"] + plugin = poetry.get("plugins", {}).get(plugin_key) + packages[name] = list(plugin.values())[0] if plugin else "" + return packages + + +def write(filename: str, data: Any): + """Write to json.""" + with open(Path(THIS_DIR, "..", "extensions", f"{filename}.json"), "w") as json_file: + dump(data, json_file, indent=4) + + +def to_camel(string: str): + """Convert string to camel case.""" + components = string.split("_") + return components[0] + "".join(x.title() for x in components[1:]) + + +def createItem(package_name: str, obj: object, attrs: List[str]) -> Dict[str, str]: + """Create dictionary item from object attributes.""" + item = {"packageName": package_name} + item.update( + {to_camel(a): getattr(obj, a) for a in attrs if getattr(obj, a) is not None} + ) + return item + + +def generate_provider_extensions() -> None: + """Generate providers_extensions.json.""" + packages = get_packages(PROVIDERS_PATH, "openbb_provider_extension") + data: List[Dict[str, str]] = [] + attrs = [ + "repr_name", + "description", + "credentials", + "v3_credentials", + "website", + "instructions", + "logo_url", + ] + + for pkg_name, plugin in sorted(packages.items()): + file_obj = plugin.split(":") + if len(file_obj) == 2: + file, obj = file_obj[0], file_obj[1] + module = import_module(file) + provider_obj = getattr(module, obj) + data.append(createItem(pkg_name, provider_obj, attrs)) + write("provider", data) + + +def generate_router_extensions() -> None: + """Generate router_extensions.json.""" + packages = get_packages(EXTENSIONS_PATH, "openbb_core_extension") + data: List[Dict[str, str]] = [] + attrs = ["description"] + for pkg_name, plugin in sorted(packages.items()): + file_obj = plugin.split(":") + if len(file_obj) == 2: + file, obj = file_obj[0], file_obj[1] + module = import_module(file) + router_obj = getattr(module, obj) + data.append(createItem(pkg_name, router_obj, attrs)) + write("router", data) + + +def generate_obbject_extensions() -> None: + """Generate obbject_extensions.json.""" + packages = get_packages(OBBJECT_EXTENSIONS_PATH, "openbb_obbject_extension") + data: List[Dict[str, str]] = [] + attrs = ["description"] + for pkg_name, plugin in sorted(packages.items()): + file_obj = plugin.split(":") + if len(file_obj) == 2: + file, obj = file_obj[0], file_obj[1] + module = import_module(file) + ext_obj = getattr(module, obj) + data.append(createItem(pkg_name, ext_obj, attrs)) + write("obbject", data) + + +if __name__ == "__main__": + generate_provider_extensions() + generate_router_extensions() + generate_obbject_extensions() diff --git a/build/pypi/openbb_platform/PUBLISH.md b/build/pypi/openbb_platform/PUBLISH.md index 6f59c959cecb..33bea009c296 100644 --- a/build/pypi/openbb_platform/PUBLISH.md +++ b/build/pypi/openbb_platform/PUBLISH.md @@ -55,6 +55,7 @@ 1. Install the packages on Google Colaboratory via PyPi and test to check if everything is working as expected. 2. Install the packages in a new environment locally via PyPi and test to check if everything is working as expected. -3. Open a new PR with the `release/-` branch pointing to the `develop` branch. -4. Merge the `release/-` branch to the `develop` branch. -5. If any bugs are encountered, create a new branch - `hotfix` for `main` and `bugfix` for `develop` and merge them accordingly. +3. Regenerate assets for external use by running `python assets/scripts/generate_extension_data.py` +4. Open a new PR with the `release/-` branch pointing to the `develop` branch. +5. Merge the `release/-` branch to the `develop` branch. +6. If any bugs are encountered, create a new branch - `hotfix` for `main` and `bugfix` for `develop` and merge them accordingly. diff --git a/openbb_platform/EXTENSIONS.md b/openbb_platform/EXTENSIONS.md deleted file mode 100644 index a8f3d95964b4..000000000000 --- a/openbb_platform/EXTENSIONS.md +++ /dev/null @@ -1,16 +0,0 @@ -# Extensions for OpenBB Platform - -| Extension | Package Name | Description | Maintainer | -| --- | --- | --- | --- | -| [Equity](./extensions/equity/README.md) | `openbb-equity` | Historical pricing data, fundamentals, options, sector and industry, and overall due diligence. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Economy](./extensions/economy/README.md) | `openbb-economy` | Global macroeconomic data. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Index](./extensions/index/README.md) | `openbb-index` | Market index data. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [News](./extensions/news/README.md) | `openbb-news` | News articles. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Crypto](./extensions/crypto/README.md) | `openbb-crypto` | Cryptocurrency historical pricing data. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Fixed Income](./extensions/fixed_income/README.md) | `openbb-fixed-income` | Central bank decisions, yield curves, government bonds and corporate bonds data. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Currency](./extensions/currency/README.md) | `openbb-currency` | Historical pricing data, foreign exchanges, quotes and forward rates for currency pairs. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Charting](./extensions/charting/README.md) | `openbb-charting` | Charting Manager extension for OpenBB. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Quantitative Analysis](./extensions/qa/README.md) | `openbb-qa` | Statistical and computational techniques for financial data. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Technical Analysis](./extensions/ta/README.md) | `openbb-ta` | Tools and techniques for financial market analysis. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | - - diff --git a/openbb_platform/PROVIDERS.md b/openbb_platform/PROVIDERS.md deleted file mode 100644 index d6ea4587f680..000000000000 --- a/openbb_platform/PROVIDERS.md +++ /dev/null @@ -1,10 +0,0 @@ -# Data Provider Integrations for OpenBB - -| Provider | URL | Package name | Description | Maintainer | -| --- | --- | --- | --- | --- | -| [FMP](./providers/fmp/README.md) | | `openbb-fmp` | Access all stocks discounted cash flow statements, market price, stock markets news, and learn more about Financial Modeling. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Polygon](./providers/polygon/README.md) | | `openbb-polygon` | Free stock data APIs. Real time and historical data, unlimited usage, tick level and aggregate granularity, in standardized JSON and CSV formats. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [Benzinga](./providers/benzinga/README.md) | | `openbb-benzinga` | Stock Market Quotes, Business News, Financial News, Trading Ideas, and Stock Research by Professionals. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | -| [FRED](./providers/fred/README.md) | | `openbb-fred` | Download, graph, and track 823000 economic time series from 114 sources. | [@OpenBB-Finance](https://github.com/OpenBB-finance) | - - diff --git a/openbb_platform/assets/providers.json b/openbb_platform/assets/providers.json deleted file mode 100644 index c40e8cece340..000000000000 --- a/openbb_platform/assets/providers.json +++ /dev/null @@ -1,58 +0,0 @@ -[ - { - "name": "Alpha Vantage", - "credentials": ["alpha_vantage_api_key"], - "v3_credentials": ["API_KEY_ALPHAVANTAGE"], - "link": "https://www.alphavantage.co/support/#api-key", - "instructions": "Go to: https://www.alphavantage.co/support/#api-key\n\n![AlphaVantage](https://user-images.githubusercontent.com/46355364/207820936-46c2ba00-81ff-4cd3-98a4-4fa44412996f.png)\n\nFill out the form, pass Captcha, and click on, \"GET FREE API KEY\"." - }, - { - "name": "BizToc", - "credentials": ["biztoc_api_key"], - "v3_credentials": ["API_BIZTOC_TOKEN"], - "link": "https://biztoc.com", - "instructions": "The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)" - }, - { - "name": "FRED", - "credentials": ["fred_api_key"], - "v3_credentials": ["API_FRED_KEY"], - "link": "https://fred.stlouisfed.org/docs/api/api_key.html", - "instructions": "Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, \"My Account\", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to \"My Account\", and select \"API Keys\". Then, click on, \"Request API Key\".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, \"Request API key\", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)" - }, - { - "name": "Financial Modeling Prep", - "credentials": ["fmp_api_key"], - "v3_credentials": ["API_KEY_FINANCIALMODELINGPREP"], - "link": "https://financialmodelingprep.com/developer", - "instructions": "Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, \"Get my API KEY here\", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the \"Dashboard\" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)" - }, - { - "name": "Intrinio", - "credentials": ["intrinio_api_key"], - "v3_credentials": ["API_INTRINIO_KEY"], - "link": "https://intrinio.com/", - "instructions": "Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard." - }, - { - "name": "Polygon", - "credentials": ["polygon_api_key"], - "v3_credentials": ["API_POLYGON_KEY"], - "link": "https://polygon.io", - "instructions": "Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, \"Get your Free API Key\".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)" - }, - { - "name": "Nasdaq", - "credentials": ["nasdaq_api_key"], - "v3_credentials": ["API_KEY_QUANDL"], - "link": "https://www.quandl.com/tools/api", - "instructions": "Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, \"Sign Up\", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)" - }, - { - "name": "Tradier", - "credentials": ["tradier_api_key"], - "v3_credentials": ["API_TRADIER_TOKEN"], - "link": "https://tradier.com/products/market-data-api", - "instructions": "Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, \"Open Account\", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token." - } -] diff --git a/openbb_platform/core/openbb_core/app/model/extension.py b/openbb_platform/core/openbb_core/app/model/extension.py index f3cd9615f98d..a23360ae7908 100644 --- a/openbb_platform/core/openbb_core/app/model/extension.py +++ b/openbb_platform/core/openbb_core/app/model/extension.py @@ -15,6 +15,7 @@ def __init__( self, name: str, credentials: Optional[List[str]] = None, + description: Optional[str] = None, ) -> None: """Initialize the extension. @@ -24,9 +25,12 @@ def __init__( Name of the extension. credentials : Optional[List[str]], optional List of required credentials, by default None + description: Optional[str] + Extension description. """ self.name = name self.credentials = credentials or [] + self.description = description @property def obbject_accessor(self) -> Callable: diff --git a/openbb_platform/core/openbb_core/provider/abstract/provider.py b/openbb_platform/core/openbb_core/provider/abstract/provider.py index 5bca35a02c50..6da989d807a8 100644 --- a/openbb_platform/core/openbb_core/provider/abstract/provider.py +++ b/openbb_platform/core/openbb_core/provider/abstract/provider.py @@ -8,6 +8,7 @@ class Provider: """Serves as provider extension entry point and must be created by each provider.""" + # pylint: disable=too-many-arguments def __init__( self, name: str, @@ -15,6 +16,10 @@ def __init__( website: Optional[str] = None, credentials: Optional[List[str]] = None, fetcher_dict: Optional[Dict[str, Type[Fetcher]]] = None, + repr_name: Optional[str] = None, + v3_credentials: Optional[List[str]] = None, + instructions: Optional[str] = None, + logo_url: Optional[str] = None, ) -> None: """Initialize the provider. @@ -26,10 +31,18 @@ def __init__( Description of the provider. website : Optional[str] Website of the provider, by default None. - credentials : Optional[List[str]], optional - List of required credentials, by default None + credentials : Optional[List[str]] + List of required credentials, by default None. fetcher_dict : Optional[Dict[str, Type[Fetcher]]] Dictionary of fetchers, by default None. + repr_name: Optional[str] + Full name of the provider, by default None. + v3_credentials: Optional[List[str]] + List of corresponding v3 credentials, by default None. + instructions: Optional[str] + Instructions on how to setup the provider. For example, how to get an API key. + logo_url: Optional[str] + Provider logo URL. """ self.name = name self.description = description @@ -41,3 +54,7 @@ def __init__( self.credentials = [] for c in credentials: self.credentials.append(f"{self.name.lower()}_{c}") + self.repr_name = repr_name + self.v3_credentials = v3_credentials + self.instructions = instructions + self.logo_url = logo_url diff --git a/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py b/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py index bc1f07409bb4..913849cd41e9 100644 --- a/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py +++ b/openbb_platform/obbject_extensions/charting/openbb_charting/__init__.py @@ -35,13 +35,12 @@ "ignore", category=UserWarning, module="openbb_core.app.model.extension", lineno=47 ) -ext = Extension(name="charting") +ext = Extension(name="charting", description="Create custom charts from OBBject data.") @ext.obbject_accessor class Charting: - """ - Charting extension. + """Charting extension. Methods ------- @@ -79,8 +78,8 @@ def __init__(self, obbject): @classmethod def indicators(cls): - """ - Return an instance of the IndicatorsParams class, containing all available indicators and their parameters. + """Return an instance of the IndicatorsParams class, containing all available indicators and their parameters. + Without assigning to a variable, it will print the the information to the console. """ return IndicatorsParams() @@ -92,7 +91,6 @@ def functions(cls): def _handle_backend(self) -> Backend: """Create and start the backend.""" - create_backend(self._charting_settings) backend = get_backend() backend.start(debug=self._charting_settings.debug_mode) @@ -101,15 +99,14 @@ def _handle_backend(self) -> Backend: @staticmethod def _get_chart_function(route: str) -> Callable: """Given a route, it returns the chart function. The module must contain the given route.""" - if route is None: raise ValueError("OBBject was initialized with no function route.") adjusted_route = route.replace("/", "_")[1:] return getattr(charting_router, adjusted_route) def get_params(self) -> ChartParams: - """ - Return the ChartQueryParams class for the function the OBBject was created from. + """Return the ChartQueryParams class for the function the OBBject was created from. + Without assigning to a variable, it will print the docstring to the console. """ if self._obbject._route is None: # pylint: disable=protected-access @@ -128,7 +125,7 @@ def _prepare_data_as_df( ) -> Tuple[pd.DataFrame, bool]: """Convert supplied data to a DataFrame.""" has_data = ( - isinstance(data, (Data, pd.DataFrame, pd.Series)) and not data.empty + isinstance(data, (Data, pd.DataFrame, pd.Series)) and not data.empty # type: ignore ) or (bool(data)) index = ( data.index.name @@ -393,11 +390,10 @@ def to_chart( render: bool = True, **kwargs, ): - """ - Create an OpenBBFigure with user customizations (if any) and save it to the OBBject. + """Create an OpenBBFigure with user customizations (if any) and save it to the OBBject. + This function is used to populate, or re-populate, the OBBject with a chart using the data within the OBBject or external data supplied via the `data` parameter. - This function modifies the original OBBject by overwriting the existing chart. Parameters @@ -507,10 +503,10 @@ def toggle_chart_style(self): # pylint: disable=protected-access current = self._charting_settings.chart_style new = "light" if current == "dark" else "dark" self._charting_settings.chart_style = new - figure = self._obbject.chart.fig + figure = self._obbject.chart.fig # type: ignore[union-attr] updated_figure = self._set_chart_style(figure) - self._obbject.chart.fig = updated_figure - self._obbject.chart.content = updated_figure.show( + self._obbject.chart.fig = updated_figure # type: ignore[union-attr] + self._obbject.chart.content = updated_figure.show( # type: ignore[union-attr] external=True ).to_plotly_json() @@ -519,8 +515,7 @@ def table( data: Optional[Union[pd.DataFrame, pd.Series]] = None, title: str = "", ): - """ - Display an interactive table. + """Display an interactive table. Parameters ---------- diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py index 08b633c2e729..c88ed9b556c2 100644 --- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py +++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py @@ -6,18 +6,21 @@ alpha_vantage_provider = Provider( name="alpha_vantage", - website="https://www.alphavantage.co/documentation/", + website="https://www.alphavantage.co", description="""Alpha Vantage provides realtime and historical - financial market data through a set of powerful and developer-friendly data APIs - and spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds) - to economic indicators, from foreign exchange rates to commodities, - from fundamental data to technical indicators, Alpha Vantage - is your one-stop-shop for enterprise-grade global market data delivered through - cloud-based APIs, Excel, and Google Sheets. """, +financial market data through a set of powerful and developer-friendly data APIs +and spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds) +to economic indicators, from foreign exchange rates to commodities, +from fundamental data to technical indicators, Alpha Vantage +is your one-stop-shop for enterprise-grade global market data delivered through +cloud-based APIs, Excel, and Google Sheets. """, credentials=["api_key"], fetcher_dict={ "EquityHistorical": AVEquityHistoricalFetcher, "HistoricalEps": AVHistoricalEpsFetcher, "EtfHistorical": AVEquityHistoricalFetcher, }, + repr_name="Alpha Vantage", + v3_credentials=["API_KEY_ALPHAVANTAGE"], + instructions='Go to: https://www.alphavantage.co/support/#api-key\n\n![AlphaVantage](https://user-images.githubusercontent.com/46355364/207820936-46c2ba00-81ff-4cd3-98a4-4fa44412996f.png)\n\nFill out the form, pass Captcha, and click on, "GET FREE API KEY".', # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py b/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py index 32a08aa446f9..279f6a90b499 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py @@ -8,9 +8,9 @@ benzinga_provider = Provider( name="benzinga", - website="https://www.benzinga.com/", + website="https://www.benzinga.com", description="""Benzinga is a financial data provider that offers an API - focused on information that moves the market.""", +focused on information that moves the market.""", credentials=["api_key"], fetcher_dict={ "AnalystSearch": BenzingaAnalystSearchFetcher, @@ -18,4 +18,6 @@ "WorldNews": BenzingaWorldNewsFetcher, "PriceTarget": BenzingaPriceTargetFetcher, }, + repr_name="Benzinga", + logo_url="https://www.benzinga.com/sites/all/themes/bz2/images/Benzinga-logo-navy.svg", ) diff --git a/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py b/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py index 6c31b409d8b0..b3449af194d6 100644 --- a/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py +++ b/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py @@ -5,18 +5,22 @@ biztoc_provider = Provider( name="biztoc", - website="https://api.biztoc.com/#biztoc-default", + website="https://api.biztoc.com", description="""BizToc uses Rapid API for its REST API. - You may sign up for your free account at https://rapidapi.com/thma/api/biztoc. +You may sign up for your free account at https://rapidapi.com/thma/api/biztoc. - The Base URL for all requests is: +The Base URL for all requests is: - https://biztoc.p.rapidapi.com/ + https://biztoc.p.rapidapi.com/ - If you're not a developer but would still like to use Biztoc outside of the main website, - we've partnered with OpenBB, allowing you to pull in BizToc's news stream in their Terminal.""", +If you're not a developer but would still like to use Biztoc outside of the main website, +we've partnered with OpenBB, allowing you to pull in BizToc's news stream in their Terminal.""", credentials=["api_key"], fetcher_dict={ "WorldNews": BiztocWorldNewsFetcher, }, + repr_name="BizToc", + v3_credentials=["API_BIZTOC_TOKEN"], + instructions="The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)", # noqa: E501 pylint: disable=line-too-long + logo_url="https://c.biztoc.com/274/logo.svg", ) diff --git a/openbb_platform/providers/cboe/openbb_cboe/__init__.py b/openbb_platform/providers/cboe/openbb_cboe/__init__.py index 5f6db23c88db..612d8a3e41f8 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/__init__.py +++ b/openbb_platform/providers/cboe/openbb_cboe/__init__.py @@ -18,10 +18,10 @@ cboe_provider = Provider( name="cboe", - website="https://www.cboe.com/", + website="https://www.cboe.com", description="""Cboe is the world's go-to derivatives and exchange network, - delivering cutting-edge trading, clearing and investment solutions to people - around the world.""", +delivering cutting-edge trading, clearing and investment solutions to people +around the world.""", credentials=None, fetcher_dict={ "AvailableIndices": CboeAvailableIndicesFetcher, @@ -37,4 +37,6 @@ "MarketIndices": CboeIndexHistoricalFetcher, "OptionsChains": CboeOptionsChainsFetcher, }, + repr_name="Chicago Board Options Exchange (CBOE)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Cboe_Global_Markets_Logo.svg/2880px-Cboe_Global_Markets_Logo.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/ecb/openbb_ecb/__init__.py b/openbb_platform/providers/ecb/openbb_ecb/__init__.py index 8796464ea371..a339718e1758 100644 --- a/openbb_platform/providers/ecb/openbb_ecb/__init__.py +++ b/openbb_platform/providers/ecb/openbb_ecb/__init__.py @@ -7,13 +7,15 @@ ecb_provider = Provider( name="ECB", - website="https://data.ecb.europa.eu/", + website="https://data.ecb.europa.eu", description="""The ECB Data Portal provides access to all official ECB statistics. - The portal also provides options to download data and comprehensive metadata for each dataset. - Statistical publications and dashboards offer a compilation of key data on selected topics.""", +The portal also provides options to download data and comprehensive metadata for each dataset. +Statistical publications and dashboards offer a compilation of key data on selected topics.""", fetcher_dict={ "BalanceOfPayments": ECBBalanceOfPaymentsFetcher, "CurrencyReferenceRates": ECBCurrencyReferenceRatesFetcher, "EUYieldCurve": ECBEUYieldCurveFetcher, }, + repr_name="European Central Bank (ECB)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Logo_European_Central_Bank.svg/720px-Logo_European_Central_Bank.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/econdb/openbb_econdb/__init__.py b/openbb_platform/providers/econdb/openbb_econdb/__init__.py index 88a83cf833c9..edde522a9eed 100644 --- a/openbb_platform/providers/econdb/openbb_econdb/__init__.py +++ b/openbb_platform/providers/econdb/openbb_econdb/__init__.py @@ -7,14 +7,21 @@ econdb_provider = Provider( name="EconDB", - website="https://econdb.com/", - description="""EconDB is a provider of data.""", + website="https://econdb.com", + description="""The mission of the company is to process information in ways that +facilitate understanding of the economic situation at different granularity levels. + +The sources of data include official statistics agencies and so-called alternative +data sources where we collect direct observations of the market and generate +aggregate statistics.""", credentials=[ "api_key" - ], # Can be left as None, an attempt to use a temporaray token will be made. + ], # Can be left as None, an attempt to use a temporary token will be made. fetcher_dict={ "AvailableIndicators": EconDbAvailableIndicatorsFetcher, "CountryProfile": EconDbCountryProfileFetcher, "EconomicIndicators": EconDbEconomicIndicatorsFetcher, }, + repr_name="EconDB", + logo_url="https://avatars.githubusercontent.com/u/21289885?v=4", ) diff --git a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py index faa4a293fb1e..749e3e1ad3e4 100644 --- a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py +++ b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py @@ -11,11 +11,14 @@ federal_reserve_provider = Provider( name="federal_reserve", - website="https://www.federalreserve.gov/data.htm", - description=(), + website="https://www.federalreserve.gov/data.htm", # Not a typo, it's really .htm + description="""Access data provided by the Federal Reserve System, +the Central Bank of the United States.""", fetcher_dict={ "TreasuryRates": FederalReserveTreasuryRatesFetcher, "MoneyMeasures": FederalReserveMoneyMeasuresFetcher, "FEDFUNDS": FederalReserveFEDFetcher, }, + repr_name="Federal Reserve (FED)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Seal_of_the_United_States_Federal_Reserve_System.svg/498px-Seal_of_the_United_States_Federal_Reserve_System.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/finra/openbb_finra/__init__.py b/openbb_platform/providers/finra/openbb_finra/__init__.py index 5331c045c582..4428b0f7e152 100644 --- a/openbb_platform/providers/finra/openbb_finra/__init__.py +++ b/openbb_platform/providers/finra/openbb_finra/__init__.py @@ -6,11 +6,14 @@ finra_provider = Provider( name="finra", - website="https://finra.org", - description="Financial Industry Regulatory Authority.", + website="https://www.finra.org/finra-data", + description="""FINRA Data provides centralized access to the abundance of data FINRA +makes available to the public, media, researchers and member firms.""", credentials=None, fetcher_dict={ "OTCAggregate": FinraOTCAggregateFetcher, "EquityShortInterest": FinraShortInterestFetcher, }, + repr_name="Financial Industry Regulatory Authority (FINRA)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/9/95/FINRA_logo.svg/1024px-FINRA_logo.svg.png", ) diff --git a/openbb_platform/providers/finviz/openbb_finviz/__init__.py b/openbb_platform/providers/finviz/openbb_finviz/__init__.py index 87e660f1fed9..75da4ea6c342 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/__init__.py +++ b/openbb_platform/providers/finviz/openbb_finviz/__init__.py @@ -20,4 +20,6 @@ "PricePerformance": FinvizPricePerformanceFetcher, "PriceTarget": FinvizPriceTargetFetcher, }, + repr_name="FinViz", + logo_url="https://finviz.com/img/logo_3_2x.png", ) diff --git a/openbb_platform/providers/fmp/openbb_fmp/__init__.py b/openbb_platform/providers/fmp/openbb_fmp/__init__.py index d822dcbee4f9..c4d372a4541a 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/__init__.py +++ b/openbb_platform/providers/fmp/openbb_fmp/__init__.py @@ -66,9 +66,9 @@ fmp_provider = Provider( name="fmp", - website="https://financialmodelingprep.com/", + website="https://financialmodelingprep.com", description="""Financial Modeling Prep is a new concept that informs you about - stock market information (news, currencies, and stock prices).""", +stock market information (news, currencies, and stock prices).""", credentials=["api_key"], fetcher_dict={ "AnalystEstimates": FMPAnalystEstimatesFetcher, @@ -135,4 +135,8 @@ "WorldNews": FMPWorldNewsFetcher, "EtfHistorical": FMPEquityHistoricalFetcher, }, + repr_name="Financial Modeling Prep (FMP)", + v3_credentials=["API_KEY_FINANCIALMODELINGPREP"], + instructions='Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, "Get my API KEY here", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the "Dashboard" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)', # noqa: E501 pylint: disable=line-too-long + logo_url="https://intelligence.financialmodelingprep.com//images/fmp-brain-original.svg", ) diff --git a/openbb_platform/providers/fred/openbb_fred/__init__.py b/openbb_platform/providers/fred/openbb_fred/__init__.py index b2292c4d9467..ccf1f046a6b2 100644 --- a/openbb_platform/providers/fred/openbb_fred/__init__.py +++ b/openbb_platform/providers/fred/openbb_fred/__init__.py @@ -30,10 +30,10 @@ fred_provider = Provider( name="fred", - website="https://fred.stlouisfed.org/", + website="https://fred.stlouisfed.org", description="""Federal Reserve Economic Data is a database maintained by the - Research division of the Federal Reserve Bank of St. Louis that has more than - 816,000 economic time series from various sources.""", +Research division of the Federal Reserve Bank of St. Louis that has more than +816,000 economic time series from various sources.""", credentials=["api_key"], fetcher_dict={ "ConsumerPriceIndex": FREDConsumerPriceIndexFetcher, @@ -59,4 +59,8 @@ "SelectedTreasuryConstantMaturity": FREDSelectedTreasuryConstantMaturityFetcher, "SelectedTreasuryBill": FREDSelectedTreasuryBillFetcher, }, + repr_name="Federal Reserve Economic Data | St. Louis FED (FRED)", + v3_credentials=["API_FRED_KEY"], + instructions='Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, "My Account", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to "My Account", and select "API Keys". Then, click on, "Request API Key".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, "Request API key", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)', # noqa: E501 pylint: disable=line-too-long + logo_url="https://fred.stlouisfed.org/images/fred-logo-2x.png", ) diff --git a/openbb_platform/providers/government_us/openbb_government_us/__init__.py b/openbb_platform/providers/government_us/openbb_government_us/__init__.py index 7d5088ad7b91..5b1ed1aafaed 100644 --- a/openbb_platform/providers/government_us/openbb_government_us/__init__.py +++ b/openbb_platform/providers/government_us/openbb_government_us/__init__.py @@ -10,16 +10,16 @@ government_us_provider = Provider( name="government_us", - website="https://data.gov/", - description=( - "Data.gov is the United States government's open data website." - + " It provides access to datasets published by agencies across the federal government. " - + "Data.gov is intended to provide access to government open data to the public, " - + "achieve agency missions, drive innovation, fuel economic activity, " - + "and uphold the ideals of an open and transparent government." - ), + website="https://data.gov", + description="""Data.gov is the United States government's open data website. +It provides access to datasets published by agencies across the federal government. +Data.gov is intended to provide access to government open data to the public, achieve +agency missions, drive innovation, fuel economic activity, and uphold the ideals of +an open and transparent government.""", fetcher_dict={ "TreasuryAuctions": GovernmentUSTreasuryAuctionsFetcher, "TreasuryPrices": GovernmentUSTreasuryPricesFetcher, }, + repr_name="Data.gov | United States Government", + logo_url="https://upload.wikimedia.org/wikipedia/commons/0/06/Muq55HrN_400x400.png", ) diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py index 389dc782cb64..276873d94604 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py @@ -55,9 +55,9 @@ intrinio_provider = Provider( name="intrinio", - website="https://intrinio.com/", + website="https://intrinio.com", description="""Intrinio is a financial data platform that provides real-time and - historical financial market data to businesses and developers through an API.""", +historical financial market data to businesses and developers through an API.""", credentials=["api_key"], fetcher_dict={ "BalanceSheet": IntrinioBalanceSheetFetcher, @@ -97,4 +97,8 @@ "ShareStatistics": IntrinioShareStatisticsFetcher, "WorldNews": IntrinioWorldNewsFetcher, }, + repr_name="Intrinio", + v3_credentials=["API_INTRINIO_KEY"], + instructions="Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard.", # noqa: E501 pylint: disable=line-too-long + logo_url="https://assets-global.website-files.com/617960145ff34fe4a9fe7240/617960145ff34f9a97fe72c8_Intrinio%20Logo%20-%20Dark.svg", ) diff --git a/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py b/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py index ffa9192ebe7f..f365f02c9255 100644 --- a/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py +++ b/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py @@ -33,4 +33,8 @@ "SP500Multiples": NasdaqSP500MultiplesFetcher, "TopRetail": NasdaqTopRetailFetcher, }, + repr_name="NASDAQ", + v3_credentials=["API_KEY_QUANDL"], + instructions='Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, "Sign Up", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)', # noqa: E501 pylint: disable=line-too-long + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/NASDAQ_logo.svg/1600px-NASDAQ_logo.svg.png", ) diff --git a/openbb_platform/providers/oecd/openbb_oecd/__init__.py b/openbb_platform/providers/oecd/openbb_oecd/__init__.py index 441779ba373a..2d5e58463b87 100644 --- a/openbb_platform/providers/oecd/openbb_oecd/__init__.py +++ b/openbb_platform/providers/oecd/openbb_oecd/__init__.py @@ -11,8 +11,9 @@ oecd_provider = Provider( name="oecd", - website="https://stats.oecd.org/", - description="""OECD""", + website="https://stats.oecd.org", + description="""OECD.Stat includes data and metadata for OECD countries and selected +non-member economies.""", fetcher_dict={ "GdpNominal": OECDGdpNominalFetcher, "GdpReal": OECDGdpRealFetcher, @@ -22,4 +23,6 @@ "STIR": OECDSTIRFetcher, "LTIR": OECDLTIRFetcher, }, + repr_name="Organization for Economic Co-operation and Development (OECD)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/OECD_logo.svg/400px-OECD_logo.svg.png", ) diff --git a/openbb_platform/providers/polygon/openbb_polygon/__init__.py b/openbb_platform/providers/polygon/openbb_polygon/__init__.py index f19dc944ec46..85d5b209a4ea 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/__init__.py +++ b/openbb_platform/providers/polygon/openbb_polygon/__init__.py @@ -18,10 +18,10 @@ polygon_provider = Provider( name="polygon", - website="https://polygon.io/", + website="https://polygon.io", description="""The Polygon.io Stocks API provides REST endpoints that let you query - the latest market data from all US stock exchanges. You can also find data on - company financials, stock market holidays, corporate actions, and more.""", +the latest market data from all US stock exchanges. You can also find data on +company financials, stock market holidays, corporate actions, and more.""", credentials=["api_key"], fetcher_dict={ "BalanceSheet": PolygonBalanceSheetFetcher, @@ -39,4 +39,8 @@ "MarketIndices": PolygonIndexHistoricalFetcher, "MarketSnapshots": PolygonMarketSnapshotsFetcher, }, + repr_name="Polygon", + v3_credentials=["API_POLYGON_KEY"], + instructions='Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, "Get your Free API Key".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)', # noqa: E501 pylint: disable=line-too-long + logo_url="https://polygon.io/_next/image?url=%2Flogo.svg&w=640&q=75", ) diff --git a/openbb_platform/providers/sec/openbb_sec/__init__.py b/openbb_platform/providers/sec/openbb_sec/__init__.py index 410f37181861..e45329a720ae 100644 --- a/openbb_platform/providers/sec/openbb_sec/__init__.py +++ b/openbb_platform/providers/sec/openbb_sec/__init__.py @@ -15,7 +15,7 @@ sec_provider = Provider( name="sec", - website="https://sec.gov", + website="https://www.sec.gov/data", description="SEC is the public listings regulatory body for the United States.", credentials=None, fetcher_dict={ @@ -32,4 +32,6 @@ "SicSearch": SecSicSearchFetcher, "SymbolMap": SecSymbolMapFetcher, }, + repr_name="Securities and Exchange Commission (SEC)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Seal_of_the_United_States_Securities_and_Exchange_Commission.svg/1920px-Seal_of_the_United_States_Securities_and_Exchange_Commission.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py b/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py index 06b789965b75..4195a6642e1a 100644 --- a/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py +++ b/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py @@ -9,8 +9,10 @@ name="seeking_alpha", website="https://seekingalpha.com", description="""Seeking Alpha is a data provider with access to news, analysis, and - real-time alerts on stocks.""", +real-time alerts on stocks.""", fetcher_dict={ "UpcomingReleaseDays": SAUpcomingReleaseDaysFetcher, }, + repr_name="Seeking Alpha", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Seeking_Alpha_Logo.svg/280px-Seeking_Alpha_Logo.svg.png", ) diff --git a/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py b/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py index 4f7facfc7c37..fc3e6c3288b0 100644 --- a/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py +++ b/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py @@ -5,14 +5,14 @@ stockgrid_provider = Provider( name="stockgrid", - website="www.stockgrid.io", - description=( - "Stockgrid gives you a detailed view of what smart money is doing. " - "Get in depth data about large option blocks being traded, including " - "the sentiment score, size, volume and order type. Stop guessing and " - "build a strategy around the number 1 factor moving the market: money." - ), + website="https://www.stockgrid.io", + description="""Stockgrid gives you a detailed view of what smart money is doing. +Get in depth data about large option blocks being traded, including +the sentiment score, size, volume and order type. Stop guessing and +build a strategy around the number 1 factor moving the market: money.""", fetcher_dict={ "ShortVolume": StockgridShortVolumeFetcher, }, + repr_name="Stockgrid", + logo_url="https://www.stockgrid.io/img/logo_white2.41ee5250.svg", ) diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py index 98a6562a1980..1b122816d80d 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py @@ -10,8 +10,9 @@ tiingo_provider = Provider( name="tiingo", - website="https://tiingo.com/", - description="""""", + website="https://tiingo.com", + description="""A Reliable, Enterprise-Grade Financial Markets API. Tiingo's APIs +power hedge funds, tech companies, and individuals.""", credentials=["token"], fetcher_dict={ "EquityHistorical": TiingoEquityHistoricalFetcher, @@ -22,4 +23,6 @@ "CurrencyHistorical": TiingoCurrencyHistoricalFetcher, "TrailingDividendYield": TiingoTrailingDivYieldFetcher, }, + repr_name="Tiingo", + logo_url="https://www.tiingo.com/dist/images/tiingo/logos/tiingo_full_light_color.svg", ) diff --git a/openbb_platform/providers/tmx/openbb_tmx/__init__.py b/openbb_platform/providers/tmx/openbb_tmx/__init__.py index 4372506aa238..7377d9a7598e 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/__init__.py +++ b/openbb_platform/providers/tmx/openbb_tmx/__init__.py @@ -27,19 +27,19 @@ tmx_provider = Provider( name="tmx", - website="https://www.tmx.com/", + website="https://www.tmx.com", description="""Unofficial TMX Data Provider Extension - TMX Group Companies - - Toronto Stock Exchange - - TSX Venture Exchange - - TSX Trust - - Montréal Exchange - - TSX Alpha Exchange - - Shorcan - - CDCC - - CDS - - TMX Datalinx - - Trayport + TMX Group Companies + - Toronto Stock Exchange + - TSX Venture Exchange + - TSX Trust + - Montréal Exchange + - TSX Alpha Exchange + - Shorcan + - CDCC + - CDS + - TMX Datalinx + - Trayport """, fetcher_dict={ "AvailableIndices": TmxAvailableIndicesFetcher, @@ -67,4 +67,6 @@ "PriceTargetConsensus": TmxPriceTargetConsensusFetcher, "TreasuryPrices": TmxTreasuryPricesFetcher, }, + repr_name="TMX", + logo_url="https://www.tmx.com/assets/application/img/tmx_logo_en.1593799726.svg", ) diff --git a/openbb_platform/providers/tradier/openbb_tradier/__init__.py b/openbb_platform/providers/tradier/openbb_tradier/__init__.py index fea8c5e819a7..a8d332166ecf 100644 --- a/openbb_platform/providers/tradier/openbb_tradier/__init__.py +++ b/openbb_platform/providers/tradier/openbb_tradier/__init__.py @@ -9,11 +9,11 @@ tradier_provider = Provider( name="tradier", website="https://tradier.com", - description="Tradier provides a full range of services in a scalable, secure," - + " and easy-to-use REST-based API for businesses and individual developers." - + " Fast, secure, simple. Start in minutes." - + " Get access to trading, account management, and market-data for" - + " Tradier Brokerage accounts through our APIs.", + description="""Tradier provides a full range of services in a scalable, secure, +and easy-to-use REST-based API for businesses and individual developers. +Fast, secure, simple. Start in minutes. +Get access to trading, account management, and market-data for +Tradier Brokerage accounts through our APIs.""", credentials=[ "api_key", "account_type", @@ -25,4 +25,8 @@ "EquitySearch": TradierEquitySearchFetcher, "OptionsChains": TradierOptionsChainsFetcher, }, + repr_name="Tradier", + v3_credentials=["API_TRADIER_TOKEN"], + instructions='Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, "Open Account", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token.', # noqa: E501 pylint: disable=line-too-long + logo_url="https://tradier.com/assets/images/tradier-logo.svg", ) diff --git a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py index dac3967ecc05..f87a720feb7b 100644 --- a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py +++ b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py @@ -5,8 +5,16 @@ tradingeconomics_provider = Provider( name="tradingeconomics", - website="https://tradingeconomics.com/", - description="""Trading Economics""", + website="https://tradingeconomics.com", + description="""Trading Economics provides its users with accurate information for +196 countries including historical data and forecasts for more than 20 million economic +indicators, exchange rates, stock market indexes, government bond yields and commodity +prices. Our data for economic indicators is based on official sources, not third party +data providers, and our facts are regularly checked for inconsistencies. +Trading Economics has received nearly 2 billion page views from all around the +world.""", credentials=["api_key"], fetcher_dict={"EconomicCalendar": TEEconomicCalendarFetcher}, + repr_name="Trading Economics", + logo_url="https://developer.tradingeconomics.com/Content/Images/logo.svg", ) diff --git a/openbb_platform/providers/wsj/openbb_wsj/__init__.py b/openbb_platform/providers/wsj/openbb_wsj/__init__.py index af7e249c0a50..5d413b2045c4 100644 --- a/openbb_platform/providers/wsj/openbb_wsj/__init__.py +++ b/openbb_platform/providers/wsj/openbb_wsj/__init__.py @@ -7,18 +7,20 @@ wsj_provider = Provider( name="wsj", - website="www.wsj.com", + website="https://www.wsj.com", description="""WSJ (Wall Street Journal) is a business-focused, English-language - international daily newspaper based in New York City. The Journal is published six - days a week by Dow Jones & Company, a division of News Corp, along with its Asian - and European editions. The newspaper is published in the broadsheet format and - online. The Journal has been printed continuously since its inception on - July 8, 1889, by Charles Dow, Edward Jones, and Charles Bergstresser. - The WSJ is the largest newspaper in the United States, by circulation. +international daily newspaper based in New York City. The Journal is published six +days a week by Dow Jones & Company, a division of News Corp, along with its Asian +and European editions. The newspaper is published in the broadsheet format and +online. The Journal has been printed continuously since its inception on +July 8, 1889, by Charles Dow, Edward Jones, and Charles Bergstresser. +The WSJ is the largest newspaper in the United States, by circulation. """, fetcher_dict={ "ETFGainers": WSJGainersFetcher, "ETFLosers": WSJLosersFetcher, "ETFActive": WSJActiveFetcher, }, + repr_name="Wall Street Journal (WSJ)", + logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/WSJ_Logo.svg/1594px-WSJ_Logo.svg.png", ) diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py index 2e1fc8ce7e85..0cb4df8b9147 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py @@ -38,10 +38,10 @@ yfinance_provider = Provider( name="yfinance", - website="https://finance.yahoo.com/", + website="https://finance.yahoo.com", description="""Yahoo! Finance is a web-based platform that offers financial news, - data, and tools for investors and individuals interested in tracking and analyzing - financial markets and assets.""", +data, and tools for investors and individuals interested in tracking and analyzing +financial markets and assets.""", fetcher_dict={ "AvailableIndices": YFinanceAvailableIndicesFetcher, "BalanceSheet": YFinanceBalanceSheetFetcher, @@ -72,4 +72,6 @@ "PriceTargetConsensus": YFinancePriceTargetConsensusFetcher, "ShareStatistics": YFinanceShareStatisticsFetcher, }, + repr_name="Yahoo Finance", + logo_url="https://upload.wikimedia.org/wikipedia/commons/8/8f/Yahoo%21_Finance_logo_2021.png", ) From ac3f10a4c0943ee145c1f1bfcc6fbc775ce71f62 Mon Sep 17 00:00:00 2001 From: Theodore Aptekarev Date: Sat, 11 May 2024 00:06:32 +0200 Subject: [PATCH 19/44] Security updates (#6387) * Bump aiohttp to a patched version * Bump python-multipart to a patched version * Bump urllib3 to the latest patched version * Bump aiohttp-client-cache and aiosqlite to latest versions * Bump plotly.js and third level deps in frontend components --- frontend-components/plotly/package-lock.json | 2306 ++++++++++++----- frontend-components/plotly/package.json | 4 +- frontend-components/tables/package-lock.json | 362 +-- frontend-components/tables/package.json | 2 +- openbb_platform/core/poetry.lock | 168 +- openbb_platform/core/pyproject.toml | 4 +- .../extensions/commodity/poetry.lock | 4 +- openbb_platform/extensions/crypto/poetry.lock | 171 +- .../extensions/currency/poetry.lock | 171 +- .../extensions/derivatives/poetry.lock | 171 +- .../extensions/devtools/poetry.lock | 10 +- .../extensions/econometrics/poetry.lock | 171 +- .../extensions/economy/poetry.lock | 171 +- openbb_platform/extensions/equity/poetry.lock | 171 +- openbb_platform/extensions/etf/poetry.lock | 171 +- .../extensions/fixedincome/poetry.lock | 171 +- openbb_platform/extensions/index/poetry.lock | 171 +- openbb_platform/extensions/news/poetry.lock | 171 +- .../extensions/quantitative/poetry.lock | 171 +- .../extensions/regulators/poetry.lock | 171 +- .../extensions/technical/poetry.lock | 171 +- openbb_platform/poetry.lock | 6 +- .../providers/alpha_vantage/poetry.lock | 171 +- .../providers/benzinga/poetry.lock | 171 +- openbb_platform/providers/biztoc/poetry.lock | 171 +- openbb_platform/providers/cboe/poetry.lock | 188 +- openbb_platform/providers/cboe/pyproject.toml | 4 +- openbb_platform/providers/ecb/poetry.lock | 171 +- openbb_platform/providers/econdb/poetry.lock | 183 +- .../providers/econdb/pyproject.toml | 4 +- .../providers/federal_reserve/poetry.lock | 163 +- openbb_platform/providers/finra/poetry.lock | 171 +- openbb_platform/providers/finviz/poetry.lock | 163 +- openbb_platform/providers/fmp/poetry.lock | 171 +- openbb_platform/providers/fred/poetry.lock | 171 +- .../providers/government_us/poetry.lock | 171 +- .../providers/intrinio/poetry.lock | 171 +- openbb_platform/providers/nasdaq/poetry.lock | 171 +- openbb_platform/providers/oecd/poetry.lock | 171 +- openbb_platform/providers/polygon/poetry.lock | 171 +- openbb_platform/providers/sec/poetry.lock | 30 +- openbb_platform/providers/sec/pyproject.toml | 4 +- .../providers/seeking_alpha/poetry.lock | 171 +- .../providers/stockgrid/poetry.lock | 171 +- openbb_platform/providers/tiingo/poetry.lock | 171 +- openbb_platform/providers/tmx/poetry.lock | 187 +- openbb_platform/providers/tmx/pyproject.toml | 4 +- openbb_platform/providers/tradier/poetry.lock | 156 +- .../providers/tradingeconomics/poetry.lock | 171 +- openbb_platform/providers/wsj/poetry.lock | 171 +- .../providers/yfinance/poetry.lock | 171 +- 51 files changed, 5208 insertions(+), 4045 deletions(-) diff --git a/frontend-components/plotly/package-lock.json b/frontend-components/plotly/package-lock.json index 1d0b054991a3..5801a3c9609b 100644 --- a/frontend-components/plotly/package-lock.json +++ b/frontend-components/plotly/package-lock.json @@ -11,7 +11,7 @@ "@radix-ui/react-dialog": "^1.0.3", "dom-to-image": "^2.6.0", "lodash": "^4.17.21", - "plotly.js-dist-min": "^2.21.0", + "plotly.js-dist-min": "^2.32.0", "posthog-js": "^1.55.0", "react": "^18.0.0", "react-dom": "^18.0.0", @@ -21,7 +21,7 @@ "@types/dom-to-image": "^2.6.4", "@types/lodash": "^4.14.195", "@types/node": "^18.16.3", - "@types/plotly.js-dist-min": "^2.3.1", + "@types/plotly.js-dist-min": "^2.3.4", "@types/react": "^18.0.27", "@types/react-dom": "^18.0.10", "@types/react-plotly.js": "^2.6.0", @@ -51,60 +51,61 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz", - "integrity": "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz", - "integrity": "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helpers": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", - "@babel/types": "^7.22.5", - "convert-source-map": "^1.7.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -115,14 +116,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz", - "integrity": "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -130,41 +131,38 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz", - "integrity": "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.3", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -183,128 +181,129 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", - "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", + "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz", - "integrity": "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz", - "integrity": "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", - "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -314,12 +313,12 @@ } }, "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.22.5.tgz", - "integrity": "sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.5.tgz", + "integrity": "sha512-RtCJoUO2oYrYwFPtR1/jkoBEcFuI1ae9a9IMxeyAVa3a1Ap4AnxmyIKG2b2FaJKqkidw/0cxRbWN+HOs6ZWd1w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -329,12 +328,12 @@ } }, "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.22.5.tgz", - "integrity": "sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz", + "integrity": "sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -344,45 +343,45 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz", - "integrity": "sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", + "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", - "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5", - "debug": "^4.1.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -390,13 +389,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", - "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -415,10 +414,346 @@ "findup": "bin/findup.js" } }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/win32-x64": { - "version": "0.17.18", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.18.tgz", - "integrity": "sha512-qU25Ma1I3NqTSHJUOKi9sAH1/Mzuvlke0ioMJRthLXKm7JiSKVwFghlGbDLOO2sARECGhja4xYfRAZNPAkooYg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -431,33 +766,50 @@ "node": ">=12" } }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -470,21 +822,15 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@mapbox/geojson-rewind": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", @@ -593,6 +939,16 @@ "node": ">= 8" } }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@plotly/d3": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/@plotly/d3/-/d3-3.8.1.tgz", @@ -622,6 +978,39 @@ "elementary-circuits-directed-graph": "^1.0.4" } }, + "node_modules/@plotly/mapbox-gl": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/@plotly/mapbox-gl/-/mapbox-gl-1.13.4.tgz", + "integrity": "sha512-sR3/Pe5LqT/fhYgp4rT4aSFf1rTsxMbGiH6Hojc7PH36ny5Bn17iVFUjpzycafETURuFbLZUfjODO8LvSI+5zQ==", + "peer": true, + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/geojson-types": "^1.0.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/mapbox-gl-supported": "^1.5.0", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^1.1.1", + "@mapbox/unitbezier": "^0.0.0", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "csscolorparser": "~1.0.3", + "earcut": "^2.2.2", + "geojson-vt": "^3.2.1", + "gl-matrix": "^3.2.1", + "grid-index": "^1.1.0", + "murmurhash-js": "^1.0.0", + "pbf": "^3.2.1", + "potpack": "^1.0.1", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "supercluster": "^7.1.0", + "tinyqueue": "^2.0.3", + "vt-pbf": "^3.1.1" + }, + "engines": { + "node": ">=6.4.0" + } + }, "node_modules/@plotly/point-cluster": { "version": "3.1.9", "resolved": "https://registry.npmjs.org/@plotly/point-cluster/-/point-cluster-3.1.9.tgz", @@ -683,19 +1072,19 @@ } }, "node_modules/@radix-ui/react-dialog": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.4.tgz", - "integrity": "sha512-hJtRy/jPULGQZceSAP2Re6/4NpKo8im6V8P2hUqZsdFiSL8l35kYsw3qbRI6Ay5mQd2+wlLqje770eq+RJ3yZg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz", + "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/primitive": "1.0.1", "@radix-ui/react-compose-refs": "1.0.1", "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-dismissable-layer": "1.0.4", + "@radix-ui/react-dismissable-layer": "1.0.5", "@radix-ui/react-focus-guards": "1.0.1", - "@radix-ui/react-focus-scope": "1.0.3", + "@radix-ui/react-focus-scope": "1.0.4", "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-portal": "1.0.3", + "@radix-ui/react-portal": "1.0.4", "@radix-ui/react-presence": "1.0.1", "@radix-ui/react-primitive": "1.0.3", "@radix-ui/react-slot": "1.0.2", @@ -719,9 +1108,9 @@ } }, "node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.4.tgz", - "integrity": "sha512-7UpBa/RKMoHJYjie1gkF1DlK8l1fdU/VKDpoS3rCCo8YBJR294GwcEHyxHw72yvphJ7ld0AXEcSLAzY2F/WyCg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", + "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/primitive": "1.0.1", @@ -763,9 +1152,9 @@ } }, "node_modules/@radix-ui/react-focus-scope": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.3.tgz", - "integrity": "sha512-upXdPfqI4islj2CslyfUBNlaJCPybbqRHAi1KER7Isel9Q2AtSJ0zRBZv8mWQiFXD2nyAJ4BhC3yXgZ6kMBSrQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz", + "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-compose-refs": "1.0.1", @@ -806,9 +1195,9 @@ } }, "node_modules/@radix-ui/react-portal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.3.tgz", - "integrity": "sha512-xLYZeHrWoPmA5mEKEfZZevoVRK/Q43GfzRXkWV6qawIWWK8t6ifIiLQdd7rmQ4Vk1bmI21XhqF9BN3jWf+phpA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", + "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-primitive": "1.0.3" @@ -963,6 +1352,230 @@ } } }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz", + "integrity": "sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz", + "integrity": "sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz", + "integrity": "sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz", + "integrity": "sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz", + "integrity": "sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz", + "integrity": "sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz", + "integrity": "sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz", + "integrity": "sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz", + "integrity": "sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz", + "integrity": "sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz", + "integrity": "sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz", + "integrity": "sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz", + "integrity": "sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz", + "integrity": "sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz", + "integrity": "sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz", + "integrity": "sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true + }, "node_modules/@turf/area": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/@turf/area/-/area-6.5.0.tgz", @@ -1023,95 +1636,88 @@ "url": "https://opencollective.com/turf" } }, - "node_modules/@types/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==" - }, "node_modules/@types/dom-to-image": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/@types/dom-to-image/-/dom-to-image-2.6.4.tgz", - "integrity": "sha512-UddUdGF1qulrSDulkz3K2Ypq527MR6ixlgAzqLbxSiQ0icx0XDlIV+h4+edmjq/1dqn0KgN0xGSe1kI9t+vGuw==", + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/@types/dom-to-image/-/dom-to-image-2.6.7.tgz", + "integrity": "sha512-me5VbCv+fcXozblWwG13krNBvuEOm6kA5xoa4RrjDJCNFOZSWR3/QLtOXimBHk1Fisq69Gx3JtOoXtg1N1tijg==", "dev": true }, "node_modules/@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true, + "peer": true }, "node_modules/@types/lodash": { - "version": "4.14.195", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.195.tgz", - "integrity": "sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg==", + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.1.tgz", + "integrity": "sha512-X+2qazGS3jxLAIz5JDXDzglAF3KpijdhFxlf/V1+hEsOUc+HnWi81L/uv/EvGuV90WY+7mPGFCUDGfQC3Gj95Q==", "dev": true }, "node_modules/@types/node": { - "version": "18.16.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.17.tgz", - "integrity": "sha512-QAkjjRA1N7gPJeAP4WLXZtYv6+eMXFNviqktCDt4GLcmCugMr5BcRHfkOjCQzvCsnMp+L79a54zBkbw356xv9Q==", - "dev": true + "version": "18.19.33", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz", + "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/plotly.js": { - "version": "2.12.18", - "resolved": "https://registry.npmjs.org/@types/plotly.js/-/plotly.js-2.12.18.tgz", - "integrity": "sha512-ff+CIEWnqZNjZqHtQZvkEAVuLs9fkm1f54QnPVmgoET7wMHdSqUka2hasVN4e5yfHD05YwGjsAtCseewJh/BMw==", + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/@types/plotly.js/-/plotly.js-2.29.3.tgz", + "integrity": "sha512-TAwVyX4vUWpcEoNfrZV9b9V5jRfeWZP3Tkv0lJvN6xkf0s0qzMdSdXkRavy5+017ZgSWOGbHyQgyOZJozeDEbA==", "dev": true }, "node_modules/@types/plotly.js-dist-min": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@types/plotly.js-dist-min/-/plotly.js-dist-min-2.3.1.tgz", - "integrity": "sha512-9+rTvlyKDclIB9twal6ou6unUN6iTATLcRvakoFYaHGPnVRNe06LbUGOcgD8O+sddBFz3y2kS2hTKbUPGeVsHA==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/plotly.js-dist-min/-/plotly.js-dist-min-2.3.4.tgz", + "integrity": "sha512-ISwLFV6Zs/v3DkaRFLyk2rvYAfVdnYP2VVVy7h+fBDWw52sn7sMUzytkWiN4M75uxr1uz1uiBioePTDpAfoFIg==", "dev": true, "dependencies": { "@types/plotly.js": "*" } }, "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", "devOptional": true }, "node_modules/@types/react": { - "version": "18.2.11", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.11.tgz", - "integrity": "sha512-+hsJr9hmwyDecSMQAmX7drgbDpyE+EgSF6t7+5QEBAn1tQK7kl1vWZ4iRf6SjQ8lk7dyEULxUmZOIpN0W5baZA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz", + "integrity": "sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw==", "devOptional": true, "dependencies": { "@types/prop-types": "*", - "@types/scheduler": "*", "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "18.2.4", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.4.tgz", - "integrity": "sha512-G2mHoTMTL4yoydITgOGwWdWMVd8sNgyEP85xVmMKAPUBwQWm9wBPQUmvbeF4V3WBY1P7mmL4BkjQ0SqUpf1snw==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", "devOptional": true, "dependencies": { "@types/react": "*" } }, "node_modules/@types/react-plotly.js": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@types/react-plotly.js/-/react-plotly.js-2.6.0.tgz", - "integrity": "sha512-nJJ57U0/CNDAO+F3dpnMgM8PtjLE/O1I3O6gq4+5Q13uKqrPnHGYOttfdzQJ4D7KYgF609miVzEYakUS2zds8w==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/@types/react-plotly.js/-/react-plotly.js-2.6.3.tgz", + "integrity": "sha512-HBQwyGuu/dGXDsWhnQrhH+xcJSsHvjkwfSRjP+YpOsCCWryIuXF78ZCBjpfgO3sCc0Jo8sYp4NOGtqT7Cn3epQ==", "dev": true, "dependencies": { "@types/plotly.js": "*", "@types/react": "*" } }, - "node_modules/@types/scheduler": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", - "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==", - "devOptional": true - }, "node_modules/@types/wicg-file-system-access": { - "version": "2020.9.6", - "resolved": "https://registry.npmjs.org/@types/wicg-file-system-access/-/wicg-file-system-access-2020.9.6.tgz", - "integrity": "sha512-6hogE75Hl2Ov/jgp8ZhDaGmIF/q3J07GtXf8nCJCwKTHq7971po5+DId7grft09zG7plBwpF6ZU0yx9Du4/e1A==", + "version": "2020.9.8", + "resolved": "https://registry.npmjs.org/@types/wicg-file-system-access/-/wicg-file-system-access-2020.9.8.tgz", + "integrity": "sha512-ggMz8nOygG7d/stpH40WVaNvBwuyYLnrg5Mbyf6bmsj/8+gb6Ei4ZZ9/4PNpcPNTT8th9Q8sM8wYmWGjMWLX/A==", "dev": true }, "node_modules/@vitejs/plugin-react": { @@ -1157,6 +1763,18 @@ "integrity": "sha512-0V/PkoculFl5+0Lp47JoxUcO0xSxhIBvm+BxHdD/OgXNmdRpRHCFnKVuUoWyS9EzQP+otSGv0m9Lb4yVkQBn2A==", "peer": true }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -1195,9 +1813,9 @@ "dev": true }, "node_modules/aria-hidden": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.3.tgz", - "integrity": "sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", + "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", "dependencies": { "tslib": "^2.0.0" }, @@ -1242,9 +1860,9 @@ "peer": true }, "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "version": "10.4.19", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", "dev": true, "funding": [ { @@ -1254,12 +1872,16 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001599", + "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -1280,13 +1902,25 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "peer": true, + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/binary-search-bounds": { @@ -1318,13 +1952,12 @@ } }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "node_modules/braces": { @@ -1340,9 +1973,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz", - "integrity": "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -1359,10 +1992,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001489", - "electron-to-chromium": "^1.4.411", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -1387,9 +2020,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001498", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001498.tgz", - "integrity": "sha512-LFInN2zAwx3ANrGCDZ5AKKJroHqNKyjXitdV5zRIVIaQlXKj3GmxUKagoKsjqUfckpAObPCEWnk5EeMlyMWcgw==", + "version": "1.0.30001617", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", + "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", "dev": true, "funding": [ { @@ -1430,16 +2063,10 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -1452,6 +2079,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -1492,6 +2122,15 @@ "color-parse": "^1.3.8" } }, + "node_modules/color-alpha/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "peer": true, + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -1527,14 +2166,12 @@ } }, "node_modules/color-parse": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.3.8.tgz", - "integrity": "sha512-1Y79qFv0n1xair3lNMTNeoFvmc3nirMVBij24zbs1f13+7fPpQClMg5b4AuKXLt3szj7BRlHMCXHplkce6XlmA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", + "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", "peer": true, "dependencies": { - "color-name": "^1.0.0", - "defined": "^1.0.0", - "is-plain-obj": "^1.1.0" + "color-name": "^1.0.0" } }, "node_modules/color-rgba": { @@ -1548,6 +2185,15 @@ "color-space": "^1.14.6" } }, + "node_modules/color-rgba/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "peer": true, + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/color-space": { "version": "1.16.0", "resolved": "https://registry.npmjs.org/color-space/-/color-space-1.16.0.tgz", @@ -1561,13 +2207,8 @@ "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "peer": true }, "node_modules/concat-stream": { "version": "1.6.2", @@ -1585,9 +2226,9 @@ } }, "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, "node_modules/core-util-is": { @@ -1602,6 +2243,20 @@ "integrity": "sha512-iSPlClZP8vX7MC3/u6s3lrDuoQyhQukh5LyABJ3hvfzbQ3Yyayd4fp04zjLnfi267B/B2FkumcWWgrbban7sSA==", "peer": true }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/css-font": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/css-font/-/css-font-1.2.0.tgz", @@ -1674,19 +2329,22 @@ } }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "devOptional": true }, "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", "peer": true, "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/d3-array": { @@ -1839,12 +2497,6 @@ } } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "peer": true - }, "node_modules/defined": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", @@ -1925,10 +2577,16 @@ "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==", "peer": true }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "node_modules/electron-to-chromium": { - "version": "1.4.427", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.427.tgz", - "integrity": "sha512-HK3r9l+Jm8dYAm1ctXEWIC+hV60zfcjS9UA5BDlYvnI5S7PU/yytjpvSrTNrSSRRkuu3tDyZhdkwIczh+0DWaw==", + "version": "1.4.762", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.762.tgz", + "integrity": "sha512-rrFvGweLxPwwSwJOjIopy3Vr+J3cIPtZzuc74bmlvmBIgQO3VYJDvVrlj94iKZ3ukXUH64Ex31hSfRTLqvjYJQ==", "dev": true }, "node_modules/element-size": { @@ -1946,6 +2604,12 @@ "strongly-connected-components": "^1.0.1" } }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -1956,14 +2620,15 @@ } }, "node_modules/es5-ext": { - "version": "0.10.62", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", - "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", "hasInstallScript": true, "peer": true, "dependencies": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", "next-tick": "^1.1.0" }, "engines": { @@ -1982,13 +2647,16 @@ } }, "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", "peer": true, "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/es6-weak-map": { @@ -2004,9 +2672,9 @@ } }, "node_modules/esbuild": { - "version": "0.17.18", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.18.tgz", - "integrity": "sha512-z1lix43jBs6UKjcZVKOw2xx69ffE2aG0PygLL5qJ9OS/gy0Ewd1gW/PUQIOIQGXBHWNywSc0floSKoMFF8aK2w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -2016,34 +2684,34 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.17.18", - "@esbuild/android-arm64": "0.17.18", - "@esbuild/android-x64": "0.17.18", - "@esbuild/darwin-arm64": "0.17.18", - "@esbuild/darwin-x64": "0.17.18", - "@esbuild/freebsd-arm64": "0.17.18", - "@esbuild/freebsd-x64": "0.17.18", - "@esbuild/linux-arm": "0.17.18", - "@esbuild/linux-arm64": "0.17.18", - "@esbuild/linux-ia32": "0.17.18", - "@esbuild/linux-loong64": "0.17.18", - "@esbuild/linux-mips64el": "0.17.18", - "@esbuild/linux-ppc64": "0.17.18", - "@esbuild/linux-riscv64": "0.17.18", - "@esbuild/linux-s390x": "0.17.18", - "@esbuild/linux-x64": "0.17.18", - "@esbuild/netbsd-x64": "0.17.18", - "@esbuild/openbsd-x64": "0.17.18", - "@esbuild/sunos-x64": "0.17.18", - "@esbuild/win32-arm64": "0.17.18", - "@esbuild/win32-ia32": "0.17.18", - "@esbuild/win32-x64": "0.17.18" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { "node": ">=6" @@ -2059,27 +2727,41 @@ } }, "node_modules/escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "peer": true, "dependencies": { "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" + "estraverse": "^5.2.0", + "esutils": "^2.0.2" }, "bin": { "escodegen": "bin/escodegen.js", "esgenerate": "bin/esgenerate.js" }, "engines": { - "node": ">=4.0" + "node": ">=6.0" }, "optionalDependencies": { "source-map": "~0.6.1" } }, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "peer": true, + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -2094,19 +2776,14 @@ } }, "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "peer": true, "engines": { "node": ">=4.0" } }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" - }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -2116,6 +2793,16 @@ "node": ">=0.10.0" } }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "peer": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -2134,12 +2821,6 @@ "type": "^2.7.2" } }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", - "peer": true - }, "node_modules/falafel": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.5.tgz", @@ -2154,9 +2835,9 @@ } }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -2190,16 +2871,10 @@ "is-string-blank": "^1.0.1" } }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "peer": true - }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -2250,17 +2925,33 @@ "css-font": "^1.2.0" } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "engines": { "node": "*" }, "funding": { "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/rawify" } }, "node_modules/from2": { @@ -2273,16 +2964,27 @@ "readable-stream": "^2.0.0" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/gensync": { "version": "1.0.0-beta.2", @@ -2338,9 +3040,9 @@ "peer": true }, "node_modules/gl-text": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.3.1.tgz", - "integrity": "sha512-/f5gcEMiZd+UTBJLTl3D+CkCB/0UFGTx3nflH8ZmyWcLkZhsZ1+Xx5YYkw2rgWAzgPeE35xCqBuHSoMKQVsR+w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.4.0.tgz", + "integrity": "sha512-o47+XBqLCj1efmuNyCHt7/UEJmB9l66ql7pnobD6p+sgmBUdzfMZXIF0zD2+KRfpd99DJN+QXdvTFAGCKCVSmQ==", "peer": true, "dependencies": { "bit-twiddle": "^1.0.2", @@ -2378,20 +3080,22 @@ } }, "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "10.3.14", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.14.tgz", + "integrity": "sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.11.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -2632,17 +3336,6 @@ "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==", "peer": true }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -2670,6 +3363,17 @@ "is-browser": "^2.0.1" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/hsluv": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/hsluv/-/hsluv-0.0.3.tgz", @@ -2680,6 +3384,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -2707,20 +3412,11 @@ ], "peer": true }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "peer": true }, "node_modules/invariant": { "version": "2.2.4", @@ -2749,11 +3445,11 @@ "peer": true }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2789,6 +3485,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -2861,10 +3566,34 @@ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "peer": true }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jiti": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", - "integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", "dev": true, "bin": { "jiti": "bin/jiti.js" @@ -2905,19 +3634,6 @@ "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew==", "peer": true }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "peer": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/lilconfig": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", @@ -2995,12 +3711,12 @@ } }, "node_modules/mapbox-gl": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.10.1.tgz", - "integrity": "sha512-0aHt+lFUpYfvh0kMIqXqNXqoYMuhuAsMlw87TbhWrw78Tx2zfuPI0Lx31/YPUgJ+Ire0tzQ4JnuBL7acDNXmMg==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.3.tgz", + "integrity": "sha512-p8lJFEiqmEQlyv+DQxFAOG/XPWN0Wp7j/Psq93Zywz7qt9CcUKFYDBOoOEKzqe6gudHVJY8/Bhqw6VDpX2lSBg==", "peer": true, "dependencies": { - "@mapbox/geojson-rewind": "^0.5.0", + "@mapbox/geojson-rewind": "^0.5.2", "@mapbox/geojson-types": "^1.0.2", "@mapbox/jsonlint-lines-primitives": "^2.0.2", "@mapbox/mapbox-gl-supported": "^1.5.0", @@ -3014,13 +3730,12 @@ "geojson-vt": "^3.2.1", "gl-matrix": "^3.2.1", "grid-index": "^1.1.0", - "minimist": "^1.2.5", "murmurhash-js": "^1.0.0", "pbf": "^3.2.1", "potpack": "^1.0.1", "quickselect": "^2.0.0", "rw": "^1.3.3", - "supercluster": "^7.0.0", + "supercluster": "^7.1.0", "tinyqueue": "^2.0.3", "vt-pbf": "^3.1.1" }, @@ -3060,15 +3775,18 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/minimist": { @@ -3080,6 +3798,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/minipass": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", + "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "node_modules/mouse-change": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/mouse-change/-/mouse-change-1.4.0.tgz", @@ -3145,9 +3872,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -3201,9 +3928,9 @@ "peer": true }, "node_modules/node-releases": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", - "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/normalize-path": { @@ -3263,25 +3990,9 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "peer": true, "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" + "wrappy": "1" } }, "node_modules/parenthesis": { @@ -3311,13 +4022,13 @@ "integrity": "sha512-hrqldJHokR3Qj88EIlV/kAyAi/G5R2+R56TBANxNMy0uPlYcttx0jnMW6Yx5KsKPSbC3KddM/7qQm3+0wEXKxg==", "peer": true }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/path-parse": { @@ -3325,6 +4036,31 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-scurry": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", + "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/pbf": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz", @@ -3360,6 +4096,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, "engines": { "node": ">=8.6" }, @@ -3377,30 +4114,32 @@ } }, "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, "engines": { "node": ">= 6" } }, "node_modules/plotly.js": { - "version": "2.24.2", - "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-2.24.2.tgz", - "integrity": "sha512-4Sx0bjEO2K8kdt0lvsne7/b2bc9h45SVEDGoA7hnoyZ6tU58aGMJTwXl+nmbE7P1jTVaPF3FmBy7w0NUCR1qtQ==", + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-2.32.0.tgz", + "integrity": "sha512-QBYyfVFs1XdoXQBq/f7SoiqQD/BEyDA5WwvN1NwY4ZTrTX6GmJ5jE5ydlt1I4K8i5W6H1atgti31jcSYD6StKA==", "peer": true, "dependencies": { "@plotly/d3": "3.8.1", "@plotly/d3-sankey": "0.7.2", "@plotly/d3-sankey-circular": "0.33.1", + "@plotly/mapbox-gl": "1.13.4", "@turf/area": "^6.4.0", "@turf/bbox": "^6.4.0", "@turf/centroid": "^6.0.2", + "base64-arraybuffer": "^1.0.2", "canvas-fit": "^1.5.0", "color-alpha": "1.0.4", "color-normalize": "1.5.0", - "color-parse": "1.3.8", + "color-parse": "2.0.0", "color-rgba": "2.1.1", "country-regex": "^1.1.0", "d3-force": "^1.2.1", @@ -3413,12 +4152,10 @@ "d3-time-format": "^2.2.3", "fast-isnumeric": "^1.1.4", "gl-mat4": "^1.2.0", - "gl-text": "^1.3.1", - "glslify": "^7.1.1", + "gl-text": "^1.4.0", "has-hover": "^1.0.1", "has-passive-events": "^1.0.0", "is-mobile": "^4.0.0", - "mapbox-gl": "1.10.1", "mouse-change": "^1.4.0", "mouse-event-offset": "^3.0.2", "mouse-wheel": "^1.2.0", @@ -3429,8 +4166,8 @@ "probe-image-size": "^7.2.3", "regl": "npm:@plotly/regl@^2.1.2", "regl-error2d": "^2.0.12", - "regl-line2d": "^3.1.2", - "regl-scatter2d": "^3.2.9", + "regl-line2d": "^3.1.3", + "regl-scatter2d": "^3.3.1", "regl-splom": "^1.0.14", "strongly-connected-components": "^1.0.1", "superscript-text": "^1.0.0", @@ -3443,9 +4180,9 @@ } }, "node_modules/plotly.js-dist-min": { - "version": "2.24.2", - "resolved": "https://registry.npmjs.org/plotly.js-dist-min/-/plotly.js-dist-min-2.24.2.tgz", - "integrity": "sha512-FOmmzC2WhSIffhC9OQf/Lqvt59R+nzOoqYlnauDEr2SrjCM7lJFV8u9CI2f4lL20EgJZfLRSMbo5mG5go10YLw==" + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/plotly.js-dist-min/-/plotly.js-dist-min-2.32.0.tgz", + "integrity": "sha512-UVznwUQVc7NeFih0tnIbvCpxct+Jxt6yxOGTYJF4vkKIUyujvyiTrH+XazglvcXdybFLERMu/IKt6Lhz3+BqMQ==" }, "node_modules/point-in-polygon": { "version": "1.1.0", @@ -3454,15 +4191,15 @@ "peer": true }, "node_modules/polybooljs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/polybooljs/-/polybooljs-1.2.0.tgz", - "integrity": "sha512-mKjR5nolISvF+q2BtC1fi/llpxBPTQ3wLWN8+ldzdw2Hocpc8C72ZqnamCM4Z6z+68GVVjkeM01WJegQmZ8MEQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/polybooljs/-/polybooljs-1.2.2.tgz", + "integrity": "sha512-ziHW/02J0XuNuUtmidBc6GXE8YohYydp3DWPWXYsd7O721TjcmN+k6ezjdwkDqep+gnWnFY+yqZHvzElra2oCg==", "peer": true }, "node_modules/postcss": { - "version": "8.4.24", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", - "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "funding": [ { @@ -3479,9 +4216,9 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -3524,21 +4261,27 @@ } }, "node_modules/postcss-load-config": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", - "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^2.1.1" + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" }, "engines": { "node": ">= 14" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, "peerDependencies": { "postcss": ">=8.0.9", "ts-node": ">=9.0.0" @@ -3552,6 +4295,18 @@ } } }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, "node_modules/postcss-nested": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", @@ -3572,9 +4327,9 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.0.12", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz", - "integrity": "sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -3591,12 +4346,13 @@ "dev": true }, "node_modules/posthog-js": { - "version": "1.67.1", - "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.67.1.tgz", - "integrity": "sha512-gvdCVrrxoRYbtNTCUt2/YdZ+tfSfzcl72ym/dtRVCYJpwlCUIKnNJ3E2g7Bbw1+Ki6CvGxdu9r7jHIWnvJAMuw==", + "version": "1.131.3", + "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.131.3.tgz", + "integrity": "sha512-ds/TADDS+rT/WgUyeW4cJ+X+fX+O1KdkOyssNI/tP90PrFf0IJsck5B42YOLhfz87U2vgTyBaKHkdlMgWuOFog==", "dev": true, "dependencies": { - "fflate": "^0.4.1" + "fflate": "^0.4.8", + "preact": "^10.19.3" } }, "node_modules/potpack": { @@ -3605,13 +4361,14 @@ "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==", "peer": true }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "peer": true, - "engines": { - "node": ">= 0.8.0" + "node_modules/preact": { + "version": "10.21.0", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.21.0.tgz", + "integrity": "sha512-aQAIxtzWEwH8ou+OovWVSVNlFImL7xUCwJX3YMqA3U8iKCNC34999fFOnWjYNsylgfPgMexpbk7WYOLtKr/mxg==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" } }, "node_modules/probe-image-size": { @@ -3683,9 +4440,9 @@ } }, "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "dependencies": { "loose-envify": "^1.1.0" }, @@ -3694,21 +4451,21 @@ } }, "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "dependencies": { "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" + "scheduler": "^0.23.2" }, "peerDependencies": { - "react": "^18.2.0" + "react": "^18.3.1" } }, "node_modules/react-hotkeys-hook": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/react-hotkeys-hook/-/react-hotkeys-hook-4.4.0.tgz", - "integrity": "sha512-wOaCWLwgT/f895CMJrR9hmzVf+gfL8IpjWDXWXKngBp9i6Xqzf0tvLv4VI8l3Vlsg/cc4C/Iik3Ck76L/Hj0tw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/react-hotkeys-hook/-/react-hotkeys-hook-4.5.0.tgz", + "integrity": "sha512-Samb85GSgAWFQNvVt3PS90LPPGSf9mkH/r4au81ZP1yOIFayLC3QAvqTgGtJ8YEDMXtPmaVBs6NgipHO6h4Mug==", "dev": true, "peerDependencies": { "react": ">=16.8.1", @@ -3733,9 +4490,9 @@ } }, "node_modules/react-refresh": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", - "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -3766,9 +4523,9 @@ } }, "node_modules/react-remove-scroll-bar": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz", - "integrity": "sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", + "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", "dependencies": { "react-style-singleton": "^2.2.1", "tslib": "^2.0.0" @@ -3857,9 +4614,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regl": { "name": "@plotly/regl", @@ -3884,9 +4641,9 @@ } }, "node_modules/regl-line2d": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.2.tgz", - "integrity": "sha512-nmT7WWS/WxmXAQMkgaMKWXaVmwJ65KCrjbqHGOUjjqQi6shfT96YbBOvelXwO9hG7/hjvbzjtQ2UO0L3e7YaXQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.3.tgz", + "integrity": "sha512-fkgzW+tTn4QUQLpFKsUIE0sgWdCmXAM3ctXcCgoGBZTSX5FE2A0M7aynz7nrZT5baaftLrk9te54B+MEq4QcSA==", "peer": true, "dependencies": { "array-bounds": "^1.0.1", @@ -3896,7 +4653,6 @@ "earcut": "^2.1.5", "es6-weak-map": "^2.0.3", "flatten-vertex-data": "^1.0.2", - "glslify": "^7.0.0", "object-assign": "^4.1.1", "parse-rect": "^1.2.0", "pick-by-alias": "^1.2.0", @@ -3904,9 +4660,9 @@ } }, "node_modules/regl-scatter2d": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.2.9.tgz", - "integrity": "sha512-PNrXs+xaCClKpiB2b3HZ2j3qXQXhC5kcTh/Nfgx9rLO0EpEhab0BSQDqAsbdbpdf+pSHSJvbgitB7ulbGeQ+Fg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.3.1.tgz", + "integrity": "sha512-seOmMIVwaCwemSYz/y4WE0dbSO9svNFSqtTh5RE57I7PjGo3tcUYKtH0MTSoshcAsreoqN8HoCtnn8wfHXXfKQ==", "peer": true, "dependencies": { "@plotly/point-cluster": "^3.1.9", @@ -3943,11 +4699,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3984,18 +4740,38 @@ "peer": true }, "node_modules/rollup": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.24.1.tgz", - "integrity": "sha512-REHe5dx30ERBRFS0iENPHy+t6wtSEYkjrhwNsLyh3qpRaZ1+aylvMUdMBUHWUD/RjjLmLzEvY8Z9XRlpcdIkHA==", - "devOptional": true, + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.17.2.tgz", + "integrity": "sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "1.0.5" + }, "bin": { "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=14.18.0", + "node": ">=18.0.0", "npm": ">=8.0.0" }, "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.17.2", + "@rollup/rollup-android-arm64": "4.17.2", + "@rollup/rollup-darwin-arm64": "4.17.2", + "@rollup/rollup-darwin-x64": "4.17.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.17.2", + "@rollup/rollup-linux-arm-musleabihf": "4.17.2", + "@rollup/rollup-linux-arm64-gnu": "4.17.2", + "@rollup/rollup-linux-arm64-musl": "4.17.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.17.2", + "@rollup/rollup-linux-riscv64-gnu": "4.17.2", + "@rollup/rollup-linux-s390x-gnu": "4.17.2", + "@rollup/rollup-linux-x64-gnu": "4.17.2", + "@rollup/rollup-linux-x64-musl": "4.17.2", + "@rollup/rollup-win32-arm64-msvc": "4.17.2", + "@rollup/rollup-win32-ia32-msvc": "4.17.2", + "@rollup/rollup-win32-x64-msvc": "4.17.2", "fsevents": "~2.3.2" } }, @@ -4025,7 +4801,8 @@ "node_modules/rw": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", + "peer": true }, "node_modules/safe-buffer": { "version": "5.2.1", @@ -4050,26 +4827,27 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "peer": true }, "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", "peer": true }, "node_modules/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dependencies": { "loose-envify": "^1.1.0" } }, "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -4081,6 +4859,39 @@ "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==", "peer": true }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/signum": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/signum/-/signum-1.0.0.tgz", @@ -4098,9 +4909,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -4116,12 +4927,12 @@ } }, "node_modules/static-eval": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.0.tgz", - "integrity": "sha512-agtxZ/kWSsCkI5E4QifRwsaPs0P0JmZV6dkLz6ILYfFYQGn+5plctanRN+IC8dJRiFkyXHrwEE3W9Wmx67uDbw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.1.tgz", + "integrity": "sha512-MgWpQ/ZjGieSVB3eOJVs4OA2LT/q1vx98KPCTTQPzq/aLr0YUXTsgryTXr4SLfR0ZfUUCiedM9n/ABeDIyy4mA==", "peer": true, "dependencies": { - "escodegen": "^1.11.1" + "escodegen": "^2.1.0" } }, "node_modules/stream-parser": { @@ -4149,9 +4960,9 @@ "peer": true }, "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==", "peer": true }, "node_modules/string_decoder": { @@ -4178,6 +4989,102 @@ "parenthesis": "^3.1.5" } }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/strongly-connected-components": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/strongly-connected-components/-/strongly-connected-components-1.0.1.tgz", @@ -4185,14 +5092,14 @@ "peer": true }, "node_modules/sucrase": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz", - "integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==", + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dev": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", - "glob": "7.1.6", + "glob": "^10.3.10", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", @@ -4203,7 +5110,7 @@ "sucrase-node": "bin/sucrase-node" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/sucrase/node_modules/commander": { @@ -4294,9 +5201,9 @@ } }, "node_modules/tailwindcss": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", - "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz", + "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==", "dev": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", @@ -4304,10 +5211,10 @@ "chokidar": "^3.5.3", "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.12", + "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.18.2", + "jiti": "^1.21.0", "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", @@ -4319,7 +5226,6 @@ "postcss-load-config": "^4.0.1", "postcss-nested": "^6.0.1", "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0", "resolve": "^1.22.2", "sucrase": "^3.32.0" }, @@ -4424,14 +5330,6 @@ "topoquantize": "bin/topoquantize" } }, - "node_modules/tosource": { - "version": "2.0.0-alpha.3", - "resolved": "https://registry.npmjs.org/tosource/-/tosource-2.0.0-alpha.3.tgz", - "integrity": "sha512-KAB2lrSS48y91MzFPFuDg4hLbvDiyTjOVgaK7Erw+5AmZXNq4sFRVn8r6yxSLuNs15PaokrDRpS61ERY9uZOug==", - "engines": { - "node": ">=10" - } - }, "node_modules/ts-interface-checker": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", @@ -4439,28 +5337,16 @@ "dev": true }, "node_modules/tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "peer": true }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "peer": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", @@ -4490,6 +5376,12 @@ "node": ">=4.2.0" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "node_modules/unquote": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", @@ -4497,9 +5389,9 @@ "peer": true }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", + "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", "dev": true, "funding": [ { @@ -4516,7 +5408,7 @@ } ], "dependencies": { - "escalade": "^3.1.1", + "escalade": "^3.1.2", "picocolors": "^1.0.0" }, "bin": { @@ -4533,9 +5425,9 @@ "peer": true }, "node_modules/use-callback-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz", - "integrity": "sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", + "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", "dependencies": { "tslib": "^2.0.0" }, @@ -4579,14 +5471,14 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/vite": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.9.tgz", - "integrity": "sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==", + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", "dev": true, "dependencies": { - "esbuild": "^0.17.5", - "postcss": "^8.4.23", - "rollup": "^3.21.0" + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -4594,12 +5486,16 @@ "engines": { "node": "^14.18.0 || >=16.0.0" }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, "optionalDependencies": { "fsevents": "~2.3.2" }, "peerDependencies": { "@types/node": ">= 14", "less": "*", + "lightningcss": "^1.21.0", "sass": "*", "stylus": "*", "sugarss": "*", @@ -4612,6 +5508,9 @@ "less": { "optional": true }, + "lightningcss": { + "optional": true + }, "sass": { "optional": true }, @@ -4642,6 +5541,22 @@ "vite": ">=3.2.0" } }, + "node_modules/vite/node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, "node_modules/vt-pbf": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", @@ -4668,13 +5583,19 @@ "get-canvas-context": "^1.0.1" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "peer": true, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, "node_modules/world-calendars": { @@ -4686,10 +5607,132 @@ "object-assign": "^4.1.0" } }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "peer": true }, "node_modules/xtend": { "version": "4.0.2", @@ -4707,10 +5750,13 @@ "dev": true }, "node_modules/yaml": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", - "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", "dev": true, + "bin": { + "yaml": "bin.mjs" + }, "engines": { "node": ">= 14" } diff --git a/frontend-components/plotly/package.json b/frontend-components/plotly/package.json index 383985c26855..e53b657b8c56 100644 --- a/frontend-components/plotly/package.json +++ b/frontend-components/plotly/package.json @@ -13,7 +13,7 @@ "@radix-ui/react-dialog": "^1.0.3", "dom-to-image": "^2.6.0", "lodash": "^4.17.21", - "plotly.js-dist-min": "^2.21.0", + "plotly.js-dist-min": "^2.32.0", "posthog-js": "^1.55.0", "react": "^18.0.0", "react-dom": "^18.0.0", @@ -23,7 +23,7 @@ "@types/dom-to-image": "^2.6.4", "@types/lodash": "^4.14.195", "@types/node": "^18.16.3", - "@types/plotly.js-dist-min": "^2.3.1", + "@types/plotly.js-dist-min": "^2.3.4", "@types/react": "^18.0.27", "@types/react-dom": "^18.0.10", "@types/react-plotly.js": "^2.6.0", diff --git a/frontend-components/tables/package-lock.json b/frontend-components/tables/package-lock.json index 098979230005..09ab7da95dec 100644 --- a/frontend-components/tables/package-lock.json +++ b/frontend-components/tables/package-lock.json @@ -19,7 +19,7 @@ "@tanstack/match-sorter-utils": "^8.7.6", "@tanstack/react-table": "^8.7.9", "dom-to-image": "^2.6.0", - "plotly.js": "^2.18.2", + "plotly.js": "^2.32.0", "react": "^17.0.0", "react-dnd": "^16.0.1", "react-dnd-html5-backend": "^16.0.1", @@ -72,12 +72,13 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -123,14 +124,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -157,22 +158,22 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -243,30 +244,30 @@ } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "dev": true, "engines": { "node": ">=6.9.0" @@ -296,23 +297,24 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.22.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", - "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -363,34 +365,34 @@ } }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.22.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", - "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.7", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/types": "^7.22.5", - "debug": "^4.1.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -398,13 +400,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", - "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -800,14 +802,14 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -823,9 +825,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -838,21 +840,15 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@mapbox/geojson-rewind": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", @@ -978,6 +974,38 @@ "elementary-circuits-directed-graph": "^1.0.4" } }, + "node_modules/@plotly/mapbox-gl": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/@plotly/mapbox-gl/-/mapbox-gl-1.13.4.tgz", + "integrity": "sha512-sR3/Pe5LqT/fhYgp4rT4aSFf1rTsxMbGiH6Hojc7PH36ny5Bn17iVFUjpzycafETURuFbLZUfjODO8LvSI+5zQ==", + "dependencies": { + "@mapbox/geojson-rewind": "^0.5.2", + "@mapbox/geojson-types": "^1.0.2", + "@mapbox/jsonlint-lines-primitives": "^2.0.2", + "@mapbox/mapbox-gl-supported": "^1.5.0", + "@mapbox/point-geometry": "^0.1.0", + "@mapbox/tiny-sdf": "^1.1.1", + "@mapbox/unitbezier": "^0.0.0", + "@mapbox/vector-tile": "^1.3.1", + "@mapbox/whoots-js": "^3.1.0", + "csscolorparser": "~1.0.3", + "earcut": "^2.2.2", + "geojson-vt": "^3.2.1", + "gl-matrix": "^3.2.1", + "grid-index": "^1.1.0", + "murmurhash-js": "^1.0.0", + "pbf": "^3.2.1", + "potpack": "^1.0.1", + "quickselect": "^2.0.0", + "rw": "^1.3.3", + "supercluster": "^7.1.0", + "tinyqueue": "^2.0.3", + "vt-pbf": "^3.1.1" + }, + "engines": { + "node": ">=6.4.0" + } + }, "node_modules/@plotly/point-cluster": { "version": "3.1.9", "resolved": "https://registry.npmjs.org/@plotly/point-cluster/-/point-cluster-3.1.9.tgz", @@ -2123,6 +2151,14 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -2535,12 +2571,15 @@ "devOptional": true }, "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/d3-array": { @@ -2793,13 +2832,14 @@ } }, "node_modules/es5-ext": { - "version": "0.10.62", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", - "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", "hasInstallScript": true, "dependencies": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", "next-tick": "^1.1.0" }, "engines": { @@ -2817,12 +2857,15 @@ } }, "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/es6-weak-map": { @@ -2912,6 +2955,20 @@ "source-map": "~0.6.1" } }, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -2940,6 +2997,15 @@ "node": ">=0.10.0" } }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -2956,11 +3022,6 @@ "type": "^2.7.2" } }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - }, "node_modules/falafel": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.2.5.tgz", @@ -3168,9 +3229,9 @@ "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==" }, "node_modules/gl-text": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.3.1.tgz", - "integrity": "sha512-/f5gcEMiZd+UTBJLTl3D+CkCB/0UFGTx3nflH8ZmyWcLkZhsZ1+Xx5YYkw2rgWAzgPeE35xCqBuHSoMKQVsR+w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gl-text/-/gl-text-1.4.0.tgz", + "integrity": "sha512-o47+XBqLCj1efmuNyCHt7/UEJmB9l66ql7pnobD6p+sgmBUdzfMZXIF0zD2+KRfpd99DJN+QXdvTFAGCKCVSmQ==", "dependencies": { "bit-twiddle": "^1.0.2", "color-normalize": "^1.5.0", @@ -3784,11 +3845,12 @@ } }, "node_modules/mapbox-gl": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.10.1.tgz", - "integrity": "sha512-0aHt+lFUpYfvh0kMIqXqNXqoYMuhuAsMlw87TbhWrw78Tx2zfuPI0Lx31/YPUgJ+Ire0tzQ4JnuBL7acDNXmMg==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.3.tgz", + "integrity": "sha512-p8lJFEiqmEQlyv+DQxFAOG/XPWN0Wp7j/Psq93Zywz7qt9CcUKFYDBOoOEKzqe6gudHVJY8/Bhqw6VDpX2lSBg==", + "peer": true, "dependencies": { - "@mapbox/geojson-rewind": "^0.5.0", + "@mapbox/geojson-rewind": "^0.5.2", "@mapbox/geojson-types": "^1.0.2", "@mapbox/jsonlint-lines-primitives": "^2.0.2", "@mapbox/mapbox-gl-supported": "^1.5.0", @@ -3802,13 +3864,12 @@ "geojson-vt": "^3.2.1", "gl-matrix": "^3.2.1", "grid-index": "^1.1.0", - "minimist": "^1.2.5", "murmurhash-js": "^1.0.0", "pbf": "^3.2.1", "potpack": "^1.0.1", "quickselect": "^2.0.0", "rw": "^1.3.3", - "supercluster": "^7.0.0", + "supercluster": "^7.1.0", "tinyqueue": "^2.0.3", "vt-pbf": "^3.1.1" }, @@ -3925,9 +3986,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -4153,20 +4214,22 @@ } }, "node_modules/plotly.js": { - "version": "2.24.3", - "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-2.24.3.tgz", - "integrity": "sha512-XPlBqWXx+BHU49gQ0tVIAhTqzP7cmnOfYTXIMxju8wTJElKEaiF9qqPG88WDiIAToup2n40zhXjsyJe/JaRu2g==", + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/plotly.js/-/plotly.js-2.32.0.tgz", + "integrity": "sha512-QBYyfVFs1XdoXQBq/f7SoiqQD/BEyDA5WwvN1NwY4ZTrTX6GmJ5jE5ydlt1I4K8i5W6H1atgti31jcSYD6StKA==", "dependencies": { "@plotly/d3": "3.8.1", "@plotly/d3-sankey": "0.7.2", "@plotly/d3-sankey-circular": "0.33.1", + "@plotly/mapbox-gl": "1.13.4", "@turf/area": "^6.4.0", "@turf/bbox": "^6.4.0", "@turf/centroid": "^6.0.2", + "base64-arraybuffer": "^1.0.2", "canvas-fit": "^1.5.0", "color-alpha": "1.0.4", "color-normalize": "1.5.0", - "color-parse": "1.3.8", + "color-parse": "2.0.0", "color-rgba": "2.1.1", "country-regex": "^1.1.0", "d3-force": "^1.2.1", @@ -4179,12 +4242,10 @@ "d3-time-format": "^2.2.3", "fast-isnumeric": "^1.1.4", "gl-mat4": "^1.2.0", - "gl-text": "^1.3.1", - "glslify": "^7.1.1", + "gl-text": "^1.4.0", "has-hover": "^1.0.1", "has-passive-events": "^1.0.0", "is-mobile": "^4.0.0", - "mapbox-gl": "1.10.1", "mouse-change": "^1.4.0", "mouse-event-offset": "^3.0.2", "mouse-wheel": "^1.2.0", @@ -4195,8 +4256,8 @@ "probe-image-size": "^7.2.3", "regl": "npm:@plotly/regl@^2.1.2", "regl-error2d": "^2.0.12", - "regl-line2d": "^3.1.2", - "regl-scatter2d": "^3.2.9", + "regl-line2d": "^3.1.3", + "regl-scatter2d": "^3.3.1", "regl-splom": "^1.0.14", "strongly-connected-components": "^1.0.1", "superscript-text": "^1.0.0", @@ -4208,6 +4269,14 @@ "world-calendars": "^1.0.3" } }, + "node_modules/plotly.js/node_modules/color-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", + "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/point-in-polygon": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/point-in-polygon/-/point-in-polygon-1.1.0.tgz", @@ -4219,9 +4288,9 @@ "integrity": "sha512-mKjR5nolISvF+q2BtC1fi/llpxBPTQ3wLWN8+ldzdw2Hocpc8C72ZqnamCM4Z6z+68GVVjkeM01WJegQmZ8MEQ==" }, "node_modules/postcss": { - "version": "8.4.26", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.26.tgz", - "integrity": "sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "funding": [ { @@ -4238,9 +4307,9 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -4685,9 +4754,9 @@ } }, "node_modules/regl-line2d": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.2.tgz", - "integrity": "sha512-nmT7WWS/WxmXAQMkgaMKWXaVmwJ65KCrjbqHGOUjjqQi6shfT96YbBOvelXwO9hG7/hjvbzjtQ2UO0L3e7YaXQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/regl-line2d/-/regl-line2d-3.1.3.tgz", + "integrity": "sha512-fkgzW+tTn4QUQLpFKsUIE0sgWdCmXAM3ctXcCgoGBZTSX5FE2A0M7aynz7nrZT5baaftLrk9te54B+MEq4QcSA==", "dependencies": { "array-bounds": "^1.0.1", "array-find-index": "^1.0.2", @@ -4696,7 +4765,6 @@ "earcut": "^2.1.5", "es6-weak-map": "^2.0.3", "flatten-vertex-data": "^1.0.2", - "glslify": "^7.0.0", "object-assign": "^4.1.1", "parse-rect": "^1.2.0", "pick-by-alias": "^1.2.0", @@ -4704,9 +4772,9 @@ } }, "node_modules/regl-scatter2d": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.2.9.tgz", - "integrity": "sha512-PNrXs+xaCClKpiB2b3HZ2j3qXQXhC5kcTh/Nfgx9rLO0EpEhab0BSQDqAsbdbpdf+pSHSJvbgitB7ulbGeQ+Fg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/regl-scatter2d/-/regl-scatter2d-3.3.1.tgz", + "integrity": "sha512-seOmMIVwaCwemSYz/y4WE0dbSO9svNFSqtTh5RE57I7PjGo3tcUYKtH0MTSoshcAsreoqN8HoCtnn8wfHXXfKQ==", "dependencies": { "@plotly/point-cluster": "^3.1.9", "array-range": "^1.0.1", @@ -4785,9 +4853,9 @@ "integrity": "sha512-DA8+YS+sMIVpbsuKgy+Z67L9Lxb1p05mNxRpDPNksPDEFir4vmBlUtuN9jkTGn9YMMdlBuK7XQgFiz6ws+yhSg==" }, "node_modules/rollup": { - "version": "3.26.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz", - "integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==", + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -4895,9 +4963,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -5221,9 +5289,9 @@ "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" }, "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" }, "node_modules/type-check": { "version": "0.3.2", @@ -5350,14 +5418,14 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/vite": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.4.tgz", - "integrity": "sha512-4mvsTxjkveWrKDJI70QmelfVqTm+ihFAb6+xf4sjEU2TmUCTlVX87tmg/QooPEMQb/lM9qGHT99ebqPziEd3wg==", + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", "dev": true, "dependencies": { "esbuild": "^0.18.10", - "postcss": "^8.4.25", - "rollup": "^3.25.2" + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -5460,9 +5528,9 @@ } }, "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "engines": { "node": ">=0.10.0" } diff --git a/frontend-components/tables/package.json b/frontend-components/tables/package.json index ac4b119ca5f7..7a00febd33d7 100644 --- a/frontend-components/tables/package.json +++ b/frontend-components/tables/package.json @@ -22,7 +22,7 @@ "@tanstack/match-sorter-utils": "^8.7.6", "@tanstack/react-table": "^8.7.9", "dom-to-image": "^2.6.0", - "plotly.js": "^2.18.2", + "plotly.js": "^2.32.0", "react": "^17.0.0", "react-dnd": "^16.0.1", "react-dnd-html5-backend": "^16.0.1", diff --git a/openbb_platform/core/poetry.lock b/openbb_platform/core/poetry.lock index 446b64231dad..80094cd46e13 100644 --- a/openbb_platform/core/poetry.lock +++ b/openbb_platform/core/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.3" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, - {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, - {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, - {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, - {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, - {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, - {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, - {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, - {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, - {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, - {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, - {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -772,8 +772,8 @@ files = [ [package.dependencies] numpy = [ {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" @@ -1082,17 +1082,17 @@ pycryptodome = ["pyasn1", "pycryptodome (>=3.3.1,<4.0.0)"] [[package]] name = "python-multipart" -version = "0.0.6" +version = "0.0.7" description = "A streaming multipart parser for Python" optional = false python-versions = ">=3.7" files = [ - {file = "python_multipart-0.0.6-py3-none-any.whl", hash = "sha256:ee698bab5ef148b0a760751c261902cd096e57e10558e11aca17646b74ee1c18"}, - {file = "python_multipart-0.0.6.tar.gz", hash = "sha256:e9925a80bb668529f1b67c7fdb0a5dacdd7cbfc6fb0bff3ea443fe22bdd62132"}, + {file = "python_multipart-0.0.7-py3-none-any.whl", hash = "sha256:b1fef9a53b74c795e2347daac8c54b252d9e0df9c619712691c1cc8021bd3c49"}, + {file = "python_multipart-0.0.7.tar.gz", hash = "sha256:288a6c39b06596c1b988bb6794c6fbc80e6c369e35e5062637df256bee0c9af9"}, ] [package.extras] -dev = ["atomicwrites (==1.2.1)", "attrs (==19.2.0)", "coverage (==6.5.0)", "hatch", "invoke (==1.7.3)", "more-itertools (==4.3.0)", "pbr (==4.3.0)", "pluggy (==1.0.0)", "py (==1.11.0)", "pytest (==7.2.0)", "pytest-cov (==4.0.0)", "pytest-timeout (==2.1.0)", "pyyaml (==5.1)"] +dev = ["atomicwrites (==1.2.1)", "attrs (==19.2.0)", "coverage (==6.5.0)", "hatch", "invoke (==2.2.0)", "more-itertools (==4.3.0)", "pbr (==4.3.0)", "pluggy (==1.0.0)", "py (==1.11.0)", "pytest (==7.2.0)", "pytest-cov (==4.0.0)", "pytest-timeout (==2.1.0)", "pyyaml (==5.1)"] [[package]] name = "pytz" @@ -1722,4 +1722,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "53c0e09dd5901408a7d0d2fc1442a6507d9a5554bd52d7a2fa8d907879aface9" +content-hash = "c58b1fc15e472b1609a4194d44da6cd35fc78748cd0931a874bebf441fe8c8ba" diff --git a/openbb_platform/core/pyproject.toml b/openbb_platform/core/pyproject.toml index e82caac0f431..2f6467930f7d 100644 --- a/openbb_platform/core/pyproject.toml +++ b/openbb_platform/core/pyproject.toml @@ -16,12 +16,12 @@ fastapi = "^0.104.1" python-jose = "^3.3.0" uuid7 = "^0.1.0" posthog = "^3.3.1" -python-multipart = "^0.0.6" +python-multipart = "^0.0.7" pydantic = "^2.5.1" requests = "^2.31.0" importlib-metadata = "^6.8.0" python-dotenv = "^1.0.0" -aiohttp = "^3.9.0" +aiohttp = "^3.9.5" ruff = "^0.1.6" [tool.poetry.group.dev.dependencies] diff --git a/openbb_platform/extensions/commodity/poetry.lock b/openbb_platform/extensions/commodity/poetry.lock index c3aaff6a76a8..87493dd76208 100644 --- a/openbb_platform/extensions/commodity/poetry.lock +++ b/openbb_platform/extensions/commodity/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" @@ -778,8 +778,8 @@ files = [ [package.dependencies] numpy = [ {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" diff --git a/openbb_platform/extensions/crypto/poetry.lock b/openbb_platform/extensions/crypto/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/crypto/poetry.lock +++ b/openbb_platform/extensions/crypto/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/currency/poetry.lock b/openbb_platform/extensions/currency/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/currency/poetry.lock +++ b/openbb_platform/extensions/currency/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/derivatives/poetry.lock b/openbb_platform/extensions/derivatives/poetry.lock index 718edef43cad..6e4fa5588323 100644 --- a/openbb_platform/extensions/derivatives/poetry.lock +++ b/openbb_platform/extensions/derivatives/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1174,19 +1174,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/devtools/poetry.lock b/openbb_platform/extensions/devtools/poetry.lock index a89132220b03..7e8abc67beb7 100644 --- a/openbb_platform/extensions/devtools/poetry.lock +++ b/openbb_platform/extensions/devtools/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "appnope" @@ -1781,6 +1781,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -2329,17 +2330,18 @@ files = [ [[package]] name = "urllib3" -version = "2.1.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, - {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] diff --git a/openbb_platform/extensions/econometrics/poetry.lock b/openbb_platform/extensions/econometrics/poetry.lock index dfd886fe1e09..82a1a565e662 100644 --- a/openbb_platform/extensions/econometrics/poetry.lock +++ b/openbb_platform/extensions/econometrics/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1453,19 +1453,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/economy/poetry.lock b/openbb_platform/extensions/economy/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/economy/poetry.lock +++ b/openbb_platform/extensions/economy/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/equity/poetry.lock b/openbb_platform/extensions/equity/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/equity/poetry.lock +++ b/openbb_platform/extensions/equity/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/etf/poetry.lock b/openbb_platform/extensions/etf/poetry.lock index c19757ae31ab..14b6c4483d3e 100644 --- a/openbb_platform/extensions/etf/poetry.lock +++ b/openbb_platform/extensions/etf/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1140,19 +1140,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/fixedincome/poetry.lock b/openbb_platform/extensions/fixedincome/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/fixedincome/poetry.lock +++ b/openbb_platform/extensions/fixedincome/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/index/poetry.lock b/openbb_platform/extensions/index/poetry.lock index f5cf8931f29f..a4dda3e32acb 100644 --- a/openbb_platform/extensions/index/poetry.lock +++ b/openbb_platform/extensions/index/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1144,19 +1144,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/news/poetry.lock b/openbb_platform/extensions/news/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/extensions/news/poetry.lock +++ b/openbb_platform/extensions/news/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/quantitative/poetry.lock b/openbb_platform/extensions/quantitative/poetry.lock index 550b59aa7cff..256f2e0206fc 100644 --- a/openbb_platform/extensions/quantitative/poetry.lock +++ b/openbb_platform/extensions/quantitative/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1281,19 +1281,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/regulators/poetry.lock b/openbb_platform/extensions/regulators/poetry.lock index 9119c69fb520..47cf6323e407 100644 --- a/openbb_platform/extensions/regulators/poetry.lock +++ b/openbb_platform/extensions/regulators/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1140,19 +1140,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/extensions/technical/poetry.lock b/openbb_platform/extensions/technical/poetry.lock index d081a56833d6..cd62ea05bac9 100644 --- a/openbb_platform/extensions/technical/poetry.lock +++ b/openbb_platform/extensions/technical/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1305,19 +1305,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/poetry.lock b/openbb_platform/poetry.lock index 117333ce19bf..0f8c0aec4d9c 100644 --- a/openbb_platform/poetry.lock +++ b/openbb_platform/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" @@ -2207,8 +2207,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.20.3", markers = "python_version < \"3.10\""}, {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, + {version = ">=1.20.3", markers = "python_version < \"3.10\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, ] python-dateutil = ">=2.8.2" @@ -3304,8 +3304,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.18,<2", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, {version = ">=1.22.3,<2", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}, + {version = ">=1.18,<2", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, ] packaging = ">=21.3" pandas = ">=1.0,<2.1.0 || >2.1.0" diff --git a/openbb_platform/providers/alpha_vantage/poetry.lock b/openbb_platform/providers/alpha_vantage/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/providers/alpha_vantage/poetry.lock +++ b/openbb_platform/providers/alpha_vantage/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/benzinga/poetry.lock b/openbb_platform/providers/benzinga/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/providers/benzinga/poetry.lock +++ b/openbb_platform/providers/benzinga/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/biztoc/poetry.lock b/openbb_platform/providers/biztoc/poetry.lock index 5273eb5c3f2b..645d181e3c55 100644 --- a/openbb_platform/providers/biztoc/poetry.lock +++ b/openbb_platform/providers/biztoc/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1217,19 +1217,20 @@ six = "*" [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/cboe/poetry.lock b/openbb_platform/providers/cboe/poetry.lock index bd3089b58497..0d1637e94adc 100644 --- a/openbb_platform/providers/cboe/poetry.lock +++ b/openbb_platform/providers/cboe/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -98,13 +98,13 @@ speedups = ["Brotli", "aiodns", "brotlicffi"] [[package]] name = "aiohttp-client-cache" -version = "0.10.0" +version = "0.11.0" description = "Persistent cache for aiohttp requests" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8,<4.0" files = [ - {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, - {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, + {file = "aiohttp_client_cache-0.11.0-py3-none-any.whl", hash = "sha256:5b6217bc26a7b3f5f939809b63a66b67658b660809cd38869d7d45066a26d079"}, + {file = "aiohttp_client_cache-0.11.0.tar.gz", hash = "sha256:0766fff4eda05498c7525374a587810dcc2ccb7b256809dde52ae8790a8453eb"}, ] [package.dependencies] @@ -138,18 +138,21 @@ frozenlist = ">=1.1.0" [[package]] name = "aiosqlite" -version = "0.19.0" +version = "0.20.0" description = "asyncio bridge to the standard sqlite3 module" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, - {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, + {file = "aiosqlite-0.20.0-py3-none-any.whl", hash = "sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6"}, + {file = "aiosqlite-0.20.0.tar.gz", hash = "sha256:6d35c8c256637f4672f843c31021464090805bf925385ac39473fb16eaaca3d7"}, ] +[package.dependencies] +typing_extensions = ">=4.0" + [package.extras] -dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] -docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] +dev = ["attribution (==1.7.0)", "black (==24.2.0)", "coverage[toml] (==7.4.1)", "flake8 (==7.0.0)", "flake8-bugbear (==24.2.6)", "flit (==3.9.0)", "mypy (==1.8.0)", "ufmt (==2.3.0)", "usort (==1.0.8.post1)"] +docs = ["sphinx (==7.2.6)", "sphinx-mdinclude (==0.5.3)"] [[package]] name = "annotated-types" @@ -1227,17 +1230,18 @@ six = "*" [[package]] name = "urllib3" -version = "2.1.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, - {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] @@ -1484,4 +1488,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "7fd94b8732cf94829c9edccbce65681547ff7ea9b6ec050748d703e6aff09de0" +content-hash = "d7de51fce58f68fa7691553eb46476382bc2b4261da01db9747391d5729755ed" diff --git a/openbb_platform/providers/cboe/pyproject.toml b/openbb_platform/providers/cboe/pyproject.toml index 0e6aaaaaf3b1..6edb0e0adf0a 100644 --- a/openbb_platform/providers/cboe/pyproject.toml +++ b/openbb_platform/providers/cboe/pyproject.toml @@ -8,8 +8,8 @@ packages = [{ include = "openbb_cboe" }] [tool.poetry.dependencies] python = "^3.8" -aiohttp-client-cache = "^0.10.0" -aiosqlite = "^0.19.0" +aiohttp-client-cache = "^0.11.0" +aiosqlite = "^0.20.0" openbb-core = "^1.1.6" [build-system] diff --git a/openbb_platform/providers/ecb/poetry.lock b/openbb_platform/providers/ecb/poetry.lock index 33e2587fd3b2..1f64161c5541 100644 --- a/openbb_platform/providers/ecb/poetry.lock +++ b/openbb_platform/providers/ecb/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1144,19 +1144,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/econdb/poetry.lock b/openbb_platform/providers/econdb/poetry.lock index c355dfe7f656..499a70ac4800 100644 --- a/openbb_platform/providers/econdb/poetry.lock +++ b/openbb_platform/providers/econdb/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.4" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:76d32588ef7e4a3f3adff1956a0ba96faabbdee58f2407c122dd45aa6e34f372"}, - {file = "aiohttp-3.9.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:56181093c10dbc6ceb8a29dfeea1e815e1dfdc020169203d87fd8d37616f73f9"}, - {file = "aiohttp-3.9.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7a5b676d3c65e88b3aca41816bf72831898fcd73f0cbb2680e9d88e819d1e4d"}, - {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1df528a85fb404899d4207a8d9934cfd6be626e30e5d3a5544a83dbae6d8a7e"}, - {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f595db1bceabd71c82e92df212dd9525a8a2c6947d39e3c994c4f27d2fe15b11"}, - {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c0b09d76e5a4caac3d27752027fbd43dc987b95f3748fad2b924a03fe8632ad"}, - {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:689eb4356649ec9535b3686200b231876fb4cab4aca54e3bece71d37f50c1d13"}, - {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a3666cf4182efdb44d73602379a66f5fdfd5da0db5e4520f0ac0dcca644a3497"}, - {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b65b0f8747b013570eea2f75726046fa54fa8e0c5db60f3b98dd5d161052004a"}, - {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a1885d2470955f70dfdd33a02e1749613c5a9c5ab855f6db38e0b9389453dce7"}, - {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0593822dcdb9483d41f12041ff7c90d4d1033ec0e880bcfaf102919b715f47f1"}, - {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:47f6eb74e1ecb5e19a78f4a4228aa24df7fbab3b62d4a625d3f41194a08bd54f"}, - {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c8b04a3dbd54de6ccb7604242fe3ad67f2f3ca558f2d33fe19d4b08d90701a89"}, - {file = "aiohttp-3.9.4-cp310-cp310-win32.whl", hash = "sha256:8a78dfb198a328bfb38e4308ca8167028920fb747ddcf086ce706fbdd23b2926"}, - {file = "aiohttp-3.9.4-cp310-cp310-win_amd64.whl", hash = "sha256:e78da6b55275987cbc89141a1d8e75f5070e577c482dd48bd9123a76a96f0bbb"}, - {file = "aiohttp-3.9.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c111b3c69060d2bafc446917534150fd049e7aedd6cbf21ba526a5a97b4402a5"}, - {file = "aiohttp-3.9.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:efbdd51872cf170093998c87ccdf3cb5993add3559341a8e5708bcb311934c94"}, - {file = "aiohttp-3.9.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7bfdb41dc6e85d8535b00d73947548a748e9534e8e4fddd2638109ff3fb081df"}, - {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2bd9d334412961125e9f68d5b73c1d0ab9ea3f74a58a475e6b119f5293eee7ba"}, - {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:35d78076736f4a668d57ade00c65d30a8ce28719d8a42471b2a06ccd1a2e3063"}, - {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:824dff4f9f4d0f59d0fa3577932ee9a20e09edec8a2f813e1d6b9f89ced8293f"}, - {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52b8b4e06fc15519019e128abedaeb56412b106ab88b3c452188ca47a25c4093"}, - {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eae569fb1e7559d4f3919965617bb39f9e753967fae55ce13454bec2d1c54f09"}, - {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:69b97aa5792428f321f72aeb2f118e56893371f27e0b7d05750bcad06fc42ca1"}, - {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4d79aad0ad4b980663316f26d9a492e8fab2af77c69c0f33780a56843ad2f89e"}, - {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:d6577140cd7db19e430661e4b2653680194ea8c22c994bc65b7a19d8ec834403"}, - {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:9860d455847cd98eb67897f5957b7cd69fbcb436dd3f06099230f16a66e66f79"}, - {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:69ff36d3f8f5652994e08bd22f093e11cfd0444cea310f92e01b45a4e46b624e"}, - {file = "aiohttp-3.9.4-cp311-cp311-win32.whl", hash = "sha256:e27d3b5ed2c2013bce66ad67ee57cbf614288bda8cdf426c8d8fe548316f1b5f"}, - {file = "aiohttp-3.9.4-cp311-cp311-win_amd64.whl", hash = "sha256:d6a67e26daa686a6fbdb600a9af8619c80a332556245fa8e86c747d226ab1a1e"}, - {file = "aiohttp-3.9.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c5ff8ff44825736a4065d8544b43b43ee4c6dd1530f3a08e6c0578a813b0aa35"}, - {file = "aiohttp-3.9.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d12a244627eba4e9dc52cbf924edef905ddd6cafc6513849b4876076a6f38b0e"}, - {file = "aiohttp-3.9.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:dcad56c8d8348e7e468899d2fb3b309b9bc59d94e6db08710555f7436156097f"}, - {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f7e69a7fd4b5ce419238388e55abd220336bd32212c673ceabc57ccf3d05b55"}, - {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4870cb049f10d7680c239b55428916d84158798eb8f353e74fa2c98980dcc0b"}, - {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b2feaf1b7031ede1bc0880cec4b0776fd347259a723d625357bb4b82f62687b"}, - {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:939393e8c3f0a5bcd33ef7ace67680c318dc2ae406f15e381c0054dd658397de"}, - {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d2334e387b2adcc944680bebcf412743f2caf4eeebd550f67249c1c3696be04"}, - {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e0198ea897680e480845ec0ffc5a14e8b694e25b3f104f63676d55bf76a82f1a"}, - {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e40d2cd22914d67c84824045861a5bb0fb46586b15dfe4f046c7495bf08306b2"}, - {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:aba80e77c227f4234aa34a5ff2b6ff30c5d6a827a91d22ff6b999de9175d71bd"}, - {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:fb68dc73bc8ac322d2e392a59a9e396c4f35cb6fdbdd749e139d1d6c985f2527"}, - {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f3460a92638dce7e47062cf088d6e7663adb135e936cb117be88d5e6c48c9d53"}, - {file = "aiohttp-3.9.4-cp312-cp312-win32.whl", hash = "sha256:32dc814ddbb254f6170bca198fe307920f6c1308a5492f049f7f63554b88ef36"}, - {file = "aiohttp-3.9.4-cp312-cp312-win_amd64.whl", hash = "sha256:63f41a909d182d2b78fe3abef557fcc14da50c7852f70ae3be60e83ff64edba5"}, - {file = "aiohttp-3.9.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:c3770365675f6be220032f6609a8fbad994d6dcf3ef7dbcf295c7ee70884c9af"}, - {file = "aiohttp-3.9.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:305edae1dea368ce09bcb858cf5a63a064f3bff4767dec6fa60a0cc0e805a1d3"}, - {file = "aiohttp-3.9.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6f121900131d116e4a93b55ab0d12ad72573f967b100e49086e496a9b24523ea"}, - {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b71e614c1ae35c3d62a293b19eface83d5e4d194e3eb2fabb10059d33e6e8cbf"}, - {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:419f009fa4cfde4d16a7fc070d64f36d70a8d35a90d71aa27670bba2be4fd039"}, - {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7b39476ee69cfe64061fd77a73bf692c40021f8547cda617a3466530ef63f947"}, - {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b33f34c9c7decdb2ab99c74be6443942b730b56d9c5ee48fb7df2c86492f293c"}, - {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c78700130ce2dcebb1a8103202ae795be2fa8c9351d0dd22338fe3dac74847d9"}, - {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:268ba22d917655d1259af2d5659072b7dc11b4e1dc2cb9662fdd867d75afc6a4"}, - {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:17e7c051f53a0d2ebf33013a9cbf020bb4e098c4bc5bce6f7b0c962108d97eab"}, - {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:7be99f4abb008cb38e144f85f515598f4c2c8932bf11b65add0ff59c9c876d99"}, - {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:d58a54d6ff08d2547656356eea8572b224e6f9bbc0cf55fa9966bcaac4ddfb10"}, - {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7673a76772bda15d0d10d1aa881b7911d0580c980dbd16e59d7ba1422b2d83cd"}, - {file = "aiohttp-3.9.4-cp38-cp38-win32.whl", hash = "sha256:e4370dda04dc8951012f30e1ce7956a0a226ac0714a7b6c389fb2f43f22a250e"}, - {file = "aiohttp-3.9.4-cp38-cp38-win_amd64.whl", hash = "sha256:eb30c4510a691bb87081192a394fb661860e75ca3896c01c6d186febe7c88530"}, - {file = "aiohttp-3.9.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:84e90494db7df3be5e056f91412f9fa9e611fbe8ce4aaef70647297f5943b276"}, - {file = "aiohttp-3.9.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7d4845f8501ab28ebfdbeab980a50a273b415cf69e96e4e674d43d86a464df9d"}, - {file = "aiohttp-3.9.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:69046cd9a2a17245c4ce3c1f1a4ff8c70c7701ef222fce3d1d8435f09042bba1"}, - {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b73a06bafc8dcc508420db43b4dd5850e41e69de99009d0351c4f3007960019"}, - {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:418bb0038dfafeac923823c2e63226179976c76f981a2aaad0ad5d51f2229bca"}, - {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:71a8f241456b6c2668374d5d28398f8e8cdae4cce568aaea54e0f39359cd928d"}, - {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:935c369bf8acc2dc26f6eeb5222768aa7c62917c3554f7215f2ead7386b33748"}, - {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:74e4e48c8752d14ecfb36d2ebb3d76d614320570e14de0a3aa7a726ff150a03c"}, - {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:916b0417aeddf2c8c61291238ce25286f391a6acb6f28005dd9ce282bd6311b6"}, - {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9b6787b6d0b3518b2ee4cbeadd24a507756ee703adbac1ab6dc7c4434b8c572a"}, - {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:221204dbda5ef350e8db6287937621cf75e85778b296c9c52260b522231940ed"}, - {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:10afd99b8251022ddf81eaed1d90f5a988e349ee7d779eb429fb07b670751e8c"}, - {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2506d9f7a9b91033201be9ffe7d89c6a54150b0578803cce5cb84a943d075bc3"}, - {file = "aiohttp-3.9.4-cp39-cp39-win32.whl", hash = "sha256:e571fdd9efd65e86c6af2f332e0e95dad259bfe6beb5d15b3c3eca3a6eb5d87b"}, - {file = "aiohttp-3.9.4-cp39-cp39-win_amd64.whl", hash = "sha256:7d29dd5319d20aa3b7749719ac9685fbd926f71ac8c77b2477272725f882072d"}, - {file = "aiohttp-3.9.4.tar.gz", hash = "sha256:6ff71ede6d9a5a58cfb7b6fffc83ab5d4a63138276c771ac91ceaaddf5459644"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -98,13 +98,13 @@ speedups = ["Brotli", "aiodns", "brotlicffi"] [[package]] name = "aiohttp-client-cache" -version = "0.10.0" +version = "0.11.0" description = "Persistent cache for aiohttp requests" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8,<4.0" files = [ - {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, - {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, + {file = "aiohttp_client_cache-0.11.0-py3-none-any.whl", hash = "sha256:5b6217bc26a7b3f5f939809b63a66b67658b660809cd38869d7d45066a26d079"}, + {file = "aiohttp_client_cache-0.11.0.tar.gz", hash = "sha256:0766fff4eda05498c7525374a587810dcc2ccb7b256809dde52ae8790a8453eb"}, ] [package.dependencies] @@ -138,18 +138,21 @@ frozenlist = ">=1.1.0" [[package]] name = "aiosqlite" -version = "0.19.0" +version = "0.20.0" description = "asyncio bridge to the standard sqlite3 module" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, - {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, + {file = "aiosqlite-0.20.0-py3-none-any.whl", hash = "sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6"}, + {file = "aiosqlite-0.20.0.tar.gz", hash = "sha256:6d35c8c256637f4672f843c31021464090805bf925385ac39473fb16eaaca3d7"}, ] +[package.dependencies] +typing_extensions = ">=4.0" + [package.extras] -dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] -docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] +dev = ["attribution (==1.7.0)", "black (==24.2.0)", "coverage[toml] (==7.4.1)", "flake8 (==7.0.0)", "flake8-bugbear (==24.2.6)", "flit (==3.9.0)", "mypy (==1.8.0)", "ufmt (==2.3.0)", "usort (==1.0.8.post1)"] +docs = ["sphinx (==7.2.6)", "sphinx-mdinclude (==0.5.3)"] [[package]] name = "annotated-types" @@ -830,8 +833,8 @@ files = [ [package.dependencies] numpy = [ {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" @@ -1475,4 +1478,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "6a3d58e3422d1ba3b69823fe40edbda25545ab4c7b96b678dc2f47430833a15b" +content-hash = "94763ab0310d6c8dd003e0383aebda0c72bd19b15487bdac5c4c218909c6a1fe" diff --git a/openbb_platform/providers/econdb/pyproject.toml b/openbb_platform/providers/econdb/pyproject.toml index 585517bb2644..703a8e5799ed 100644 --- a/openbb_platform/providers/econdb/pyproject.toml +++ b/openbb_platform/providers/econdb/pyproject.toml @@ -9,8 +9,8 @@ packages = [{ include = "openbb_econdb" }] [tool.poetry.dependencies] python = "^3.8" openbb-core = "^1.1.5" -aiohttp-client-cache = "^0.10.0" -aiosqlite = "^0.19.0" +aiohttp-client-cache = "^0.11.0" +aiosqlite = "^0.20.0" [build-system] requires = ["poetry-core"] diff --git a/openbb_platform/providers/federal_reserve/poetry.lock b/openbb_platform/providers/federal_reserve/poetry.lock index d8ec9345f796..43d6468977b9 100644 --- a/openbb_platform/providers/federal_reserve/poetry.lock +++ b/openbb_platform/providers/federal_reserve/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1144,17 +1144,18 @@ files = [ [[package]] name = "urllib3" -version = "2.1.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, - {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] diff --git a/openbb_platform/providers/finra/poetry.lock b/openbb_platform/providers/finra/poetry.lock index 16e2a4aa4cbb..8d24df60ee7d 100644 --- a/openbb_platform/providers/finra/poetry.lock +++ b/openbb_platform/providers/finra/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1133,19 +1133,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/finviz/poetry.lock b/openbb_platform/providers/finviz/poetry.lock index 63b6484b547f..6c6dddb980ff 100644 --- a/openbb_platform/providers/finviz/poetry.lock +++ b/openbb_platform/providers/finviz/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1349,17 +1349,18 @@ files = [ [[package]] name = "urllib3" -version = "2.1.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, - {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] diff --git a/openbb_platform/providers/fmp/poetry.lock b/openbb_platform/providers/fmp/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/providers/fmp/poetry.lock +++ b/openbb_platform/providers/fmp/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/fred/poetry.lock b/openbb_platform/providers/fred/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/providers/fred/poetry.lock +++ b/openbb_platform/providers/fred/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/government_us/poetry.lock b/openbb_platform/providers/government_us/poetry.lock index 66b30afa37ed..6d6beb3c45f2 100644 --- a/openbb_platform/providers/government_us/poetry.lock +++ b/openbb_platform/providers/government_us/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1155,19 +1155,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/intrinio/poetry.lock b/openbb_platform/providers/intrinio/poetry.lock index b74f5ba7b114..28e0f6226d5a 100644 --- a/openbb_platform/providers/intrinio/poetry.lock +++ b/openbb_platform/providers/intrinio/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1243,19 +1243,20 @@ six = "*" [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/nasdaq/poetry.lock b/openbb_platform/providers/nasdaq/poetry.lock index edc7e134e725..580ed218a786 100644 --- a/openbb_platform/providers/nasdaq/poetry.lock +++ b/openbb_platform/providers/nasdaq/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1152,19 +1152,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/oecd/poetry.lock b/openbb_platform/providers/oecd/poetry.lock index f15d71a6c2c8..96ad4e3e88c5 100644 --- a/openbb_platform/providers/oecd/poetry.lock +++ b/openbb_platform/providers/oecd/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1110,19 +1110,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.17" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.17-py2.py3-none-any.whl", hash = "sha256:94a757d178c9be92ef5539b8840d48dc9cf1b2709c9d6b588232a055c524458b"}, - {file = "urllib3-1.26.17.tar.gz", hash = "sha256:24d6a242c28d29af46c3fae832c36db3bbebcc533dd1bb549172cd739c82df21"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/polygon/poetry.lock b/openbb_platform/providers/polygon/poetry.lock index 45aff8d211bf..0c2650c3e8d4 100644 --- a/openbb_platform/providers/polygon/poetry.lock +++ b/openbb_platform/providers/polygon/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1159,19 +1159,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/sec/poetry.lock b/openbb_platform/providers/sec/poetry.lock index d29a97748571..275546139fbd 100644 --- a/openbb_platform/providers/sec/poetry.lock +++ b/openbb_platform/providers/sec/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" @@ -98,13 +98,13 @@ speedups = ["Brotli", "aiodns", "brotlicffi"] [[package]] name = "aiohttp-client-cache" -version = "0.10.0" +version = "0.11.0" description = "Persistent cache for aiohttp requests" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8,<4.0" files = [ - {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, - {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, + {file = "aiohttp_client_cache-0.11.0-py3-none-any.whl", hash = "sha256:5b6217bc26a7b3f5f939809b63a66b67658b660809cd38869d7d45066a26d079"}, + {file = "aiohttp_client_cache-0.11.0.tar.gz", hash = "sha256:0766fff4eda05498c7525374a587810dcc2ccb7b256809dde52ae8790a8453eb"}, ] [package.dependencies] @@ -138,18 +138,21 @@ frozenlist = ">=1.1.0" [[package]] name = "aiosqlite" -version = "0.19.0" +version = "0.20.0" description = "asyncio bridge to the standard sqlite3 module" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, - {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, + {file = "aiosqlite-0.20.0-py3-none-any.whl", hash = "sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6"}, + {file = "aiosqlite-0.20.0.tar.gz", hash = "sha256:6d35c8c256637f4672f843c31021464090805bf925385ac39473fb16eaaca3d7"}, ] +[package.dependencies] +typing_extensions = ">=4.0" + [package.extras] -dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] -docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] +dev = ["attribution (==1.7.0)", "black (==24.2.0)", "coverage[toml] (==7.4.1)", "flake8 (==7.0.0)", "flake8-bugbear (==24.2.6)", "flit (==3.9.0)", "mypy (==1.8.0)", "ufmt (==2.3.0)", "usort (==1.0.8.post1)"] +docs = ["sphinx (==7.2.6)", "sphinx-mdinclude (==0.5.3)"] [[package]] name = "annotated-types" @@ -672,6 +675,7 @@ files = [ {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"}, {file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"}, {file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"}, + {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3e183c6e3298a2ed5af9d7a356ea823bccaab4ec2349dc9ed83999fd289d14d5"}, {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"}, {file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"}, {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"}, @@ -1000,8 +1004,8 @@ files = [ [package.dependencies] numpy = [ {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" @@ -1656,4 +1660,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "5243653b144ae25375a442e85632a338c070bc6a92f33eea0a888a8d81359d5c" +content-hash = "6c2d48f43fed06f7a86819616fc5629195d23557d8067181ffa0f415c65c479e" diff --git a/openbb_platform/providers/sec/pyproject.toml b/openbb_platform/providers/sec/pyproject.toml index e3ad4ff62cf9..a92b754a7a2d 100644 --- a/openbb_platform/providers/sec/pyproject.toml +++ b/openbb_platform/providers/sec/pyproject.toml @@ -9,8 +9,8 @@ packages = [{ include = "openbb_sec" }] [tool.poetry.dependencies] python = ">=3.8,<3.12" openbb-core = "^1.1.6" -aiohttp-client-cache = "^0.10.0" -aiosqlite = "^0.19.0" +aiohttp-client-cache = "^0.11.0" +aiosqlite = "^0.20.0" xmltodict = "^0.13.0" lxml = "^5.2.1" diff --git a/openbb_platform/providers/seeking_alpha/poetry.lock b/openbb_platform/providers/seeking_alpha/poetry.lock index 718edef43cad..6e4fa5588323 100644 --- a/openbb_platform/providers/seeking_alpha/poetry.lock +++ b/openbb_platform/providers/seeking_alpha/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1174,19 +1174,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/stockgrid/poetry.lock b/openbb_platform/providers/stockgrid/poetry.lock index 10be16a257a4..8f02802b7c34 100644 --- a/openbb_platform/providers/stockgrid/poetry.lock +++ b/openbb_platform/providers/stockgrid/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1232,19 +1232,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/tiingo/poetry.lock b/openbb_platform/providers/tiingo/poetry.lock index f5cf8931f29f..a4dda3e32acb 100644 --- a/openbb_platform/providers/tiingo/poetry.lock +++ b/openbb_platform/providers/tiingo/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1144,19 +1144,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/tmx/poetry.lock b/openbb_platform/providers/tmx/poetry.lock index e9d1c0cab5da..2047ce6e761c 100644 --- a/openbb_platform/providers/tmx/poetry.lock +++ b/openbb_platform/providers/tmx/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.3" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, - {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, - {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, - {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, - {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, - {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, - {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, - {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, - {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, - {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, - {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, - {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -98,13 +98,13 @@ speedups = ["Brotli", "aiodns", "brotlicffi"] [[package]] name = "aiohttp-client-cache" -version = "0.10.0" +version = "0.11.0" description = "Persistent cache for aiohttp requests" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8,<4.0" files = [ - {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, - {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, + {file = "aiohttp_client_cache-0.11.0-py3-none-any.whl", hash = "sha256:5b6217bc26a7b3f5f939809b63a66b67658b660809cd38869d7d45066a26d079"}, + {file = "aiohttp_client_cache-0.11.0.tar.gz", hash = "sha256:0766fff4eda05498c7525374a587810dcc2ccb7b256809dde52ae8790a8453eb"}, ] [package.dependencies] @@ -138,18 +138,21 @@ frozenlist = ">=1.1.0" [[package]] name = "aiosqlite" -version = "0.19.0" +version = "0.20.0" description = "asyncio bridge to the standard sqlite3 module" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, - {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, + {file = "aiosqlite-0.20.0-py3-none-any.whl", hash = "sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6"}, + {file = "aiosqlite-0.20.0.tar.gz", hash = "sha256:6d35c8c256637f4672f843c31021464090805bf925385ac39473fb16eaaca3d7"}, ] +[package.dependencies] +typing_extensions = ">=4.0" + [package.extras] -dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] -docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] +dev = ["attribution (==1.7.0)", "black (==24.2.0)", "coverage[toml] (==7.4.1)", "flake8 (==7.0.0)", "flake8-bugbear (==24.2.6)", "flit (==3.9.0)", "mypy (==1.8.0)", "ufmt (==2.3.0)", "usort (==1.0.8.post1)"] +docs = ["sphinx (==7.2.6)", "sphinx-mdinclude (==0.5.3)"] [[package]] name = "annotated-types" @@ -1243,13 +1246,13 @@ six = "*" [[package]] name = "urllib3" -version = "2.2.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.2.0-py3-none-any.whl", hash = "sha256:ce3711610ddce217e6d113a2732fafad960a03fd0318c91faa79481e35c11224"}, - {file = "urllib3-2.2.0.tar.gz", hash = "sha256:051d961ad0c62a94e50ecf1af379c3aba230c66c710493493560c0c223c49f20"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] @@ -1501,4 +1504,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "d2c6f6ecc431b148a13d6bd38750be5d9fe52558fab654fb9d76d15502225bfd" +content-hash = "c0b4f3583598c7540a4a2a0f3c172f4e1d281b330bb29561150caaa23386be86" diff --git a/openbb_platform/providers/tmx/pyproject.toml b/openbb_platform/providers/tmx/pyproject.toml index 2765f631836e..7a738ab7dd9a 100644 --- a/openbb_platform/providers/tmx/pyproject.toml +++ b/openbb_platform/providers/tmx/pyproject.toml @@ -8,8 +8,8 @@ packages = [{ include = "openbb_tmx" }] [tool.poetry.dependencies] python = "^3.8" -aiohttp-client-cache = "^0.10.0" -aiosqlite = "^0.19.0" +aiohttp-client-cache = "^0.11.0" +aiosqlite = "^0.20.0" random-user-agent = "^1.0.1" exchange-calendars = "^4.2.8" openbb-core = "^1.1.6" diff --git a/openbb_platform/providers/tradier/poetry.lock b/openbb_platform/providers/tradier/poetry.lock index 445e03c1e289..95f3ddd2035c 100644 --- a/openbb_platform/providers/tradier/poetry.lock +++ b/openbb_platform/providers/tradier/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.3" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, - {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, - {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, - {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, - {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, - {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, - {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, - {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, - {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, - {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, - {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, - {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] diff --git a/openbb_platform/providers/tradingeconomics/poetry.lock b/openbb_platform/providers/tradingeconomics/poetry.lock index 5d97ba2712d2..14945fc75d04 100644 --- a/openbb_platform/providers/tradingeconomics/poetry.lock +++ b/openbb_platform/providers/tradingeconomics/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1133,19 +1133,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.17" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.17-py2.py3-none-any.whl", hash = "sha256:94a757d178c9be92ef5539b8840d48dc9cf1b2709c9d6b588232a055c524458b"}, - {file = "urllib3-1.26.17.tar.gz", hash = "sha256:24d6a242c28d29af46c3fae832c36db3bbebcc533dd1bb549172cd739c82df21"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/wsj/poetry.lock b/openbb_platform/providers/wsj/poetry.lock index 718edef43cad..6e4fa5588323 100644 --- a/openbb_platform/providers/wsj/poetry.lock +++ b/openbb_platform/providers/wsj/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1174,19 +1174,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.18" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.18-py2.py3-none-any.whl", hash = "sha256:34b97092d7e0a3a8cf7cd10e386f401b3737364026c45e622aa02903dffe0f07"}, - {file = "urllib3-1.26.18.tar.gz", hash = "sha256:f8ecc1bba5667413457c529ab955bf8c67b45db799d159066261719e328580a0"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" diff --git a/openbb_platform/providers/yfinance/poetry.lock b/openbb_platform/providers/yfinance/poetry.lock index bb3e8113a195..9186537c81af 100644 --- a/openbb_platform/providers/yfinance/poetry.lock +++ b/openbb_platform/providers/yfinance/poetry.lock @@ -1,88 +1,88 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" -version = "3.9.1" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e1f80197f8b0b846a8d5cf7b7ec6084493950d0882cc5537fb7b96a69e3c8590"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72444d17777865734aa1a4d167794c34b63e5883abb90356a0364a28904e6c0"}, - {file = "aiohttp-3.9.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b05d5cbe9dafcdc733262c3a99ccf63d2f7ce02543620d2bd8db4d4f7a22f83"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c4fa235d534b3547184831c624c0b7c1e262cd1de847d95085ec94c16fddcd5"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:289ba9ae8e88d0ba16062ecf02dd730b34186ea3b1e7489046fc338bdc3361c4"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bff7e2811814fa2271be95ab6e84c9436d027a0e59665de60edf44e529a42c1f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81b77f868814346662c96ab36b875d7814ebf82340d3284a31681085c051320f"}, - {file = "aiohttp-3.9.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b9c7426923bb7bd66d409da46c41e3fb40f5caf679da624439b9eba92043fa6"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8d44e7bf06b0c0a70a20f9100af9fcfd7f6d9d3913e37754c12d424179b4e48f"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:22698f01ff5653fe66d16ffb7658f582a0ac084d7da1323e39fd9eab326a1f26"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ca7ca5abfbfe8d39e653870fbe8d7710be7a857f8a8386fc9de1aae2e02ce7e4"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8d7f98fde213f74561be1d6d3fa353656197f75d4edfbb3d94c9eb9b0fc47f5d"}, - {file = "aiohttp-3.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5216b6082c624b55cfe79af5d538e499cd5f5b976820eac31951fb4325974501"}, - {file = "aiohttp-3.9.1-cp310-cp310-win32.whl", hash = "sha256:0e7ba7ff228c0d9a2cd66194e90f2bca6e0abca810b786901a569c0de082f489"}, - {file = "aiohttp-3.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:c7e939f1ae428a86e4abbb9a7c4732bf4706048818dfd979e5e2839ce0159f23"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:df9cf74b9bc03d586fc53ba470828d7b77ce51b0582d1d0b5b2fb673c0baa32d"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ecca113f19d5e74048c001934045a2b9368d77b0b17691d905af18bd1c21275e"}, - {file = "aiohttp-3.9.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8cef8710fb849d97c533f259103f09bac167a008d7131d7b2b0e3a33269185c0"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bea94403a21eb94c93386d559bce297381609153e418a3ffc7d6bf772f59cc35"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91c742ca59045dce7ba76cab6e223e41d2c70d79e82c284a96411f8645e2afff"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c93b7c2e52061f0925c3382d5cb8980e40f91c989563d3d32ca280069fd6a87"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee2527134f95e106cc1653e9ac78846f3a2ec1004cf20ef4e02038035a74544d"}, - {file = "aiohttp-3.9.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11ff168d752cb41e8492817e10fb4f85828f6a0142b9726a30c27c35a1835f01"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b8c3a67eb87394386847d188996920f33b01b32155f0a94f36ca0e0c635bf3e3"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c7b5d5d64e2a14e35a9240b33b89389e0035e6de8dbb7ffa50d10d8b65c57449"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:69985d50a2b6f709412d944ffb2e97d0be154ea90600b7a921f95a87d6f108a2"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c9110c06eaaac7e1f5562caf481f18ccf8f6fdf4c3323feab28a93d34cc646bd"}, - {file = "aiohttp-3.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d737e69d193dac7296365a6dcb73bbbf53bb760ab25a3727716bbd42022e8d7a"}, - {file = "aiohttp-3.9.1-cp311-cp311-win32.whl", hash = "sha256:4ee8caa925aebc1e64e98432d78ea8de67b2272252b0a931d2ac3bd876ad5544"}, - {file = "aiohttp-3.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:a34086c5cc285be878622e0a6ab897a986a6e8bf5b67ecb377015f06ed316587"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f800164276eec54e0af5c99feb9494c295118fc10a11b997bbb1348ba1a52065"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:500f1c59906cd142d452074f3811614be04819a38ae2b3239a48b82649c08821"}, - {file = "aiohttp-3.9.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0b0a6a36ed7e164c6df1e18ee47afbd1990ce47cb428739d6c99aaabfaf1b3af"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69da0f3ed3496808e8cbc5123a866c41c12c15baaaead96d256477edf168eb57"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:176df045597e674fa950bf5ae536be85699e04cea68fa3a616cf75e413737eb5"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b796b44111f0cab6bbf66214186e44734b5baab949cb5fb56154142a92989aeb"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f27fdaadce22f2ef950fc10dcdf8048407c3b42b73779e48a4e76b3c35bca26c"}, - {file = "aiohttp-3.9.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bcb6532b9814ea7c5a6a3299747c49de30e84472fa72821b07f5a9818bce0f66"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:54631fb69a6e44b2ba522f7c22a6fb2667a02fd97d636048478db2fd8c4e98fe"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4b4c452d0190c5a820d3f5c0f3cd8a28ace48c54053e24da9d6041bf81113183"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:cae4c0c2ca800c793cae07ef3d40794625471040a87e1ba392039639ad61ab5b"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:565760d6812b8d78d416c3c7cfdf5362fbe0d0d25b82fed75d0d29e18d7fc30f"}, - {file = "aiohttp-3.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54311eb54f3a0c45efb9ed0d0a8f43d1bc6060d773f6973efd90037a51cd0a3f"}, - {file = "aiohttp-3.9.1-cp312-cp312-win32.whl", hash = "sha256:85c3e3c9cb1d480e0b9a64c658cd66b3cfb8e721636ab8b0e746e2d79a7a9eed"}, - {file = "aiohttp-3.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:11cb254e397a82efb1805d12561e80124928e04e9c4483587ce7390b3866d213"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8a22a34bc594d9d24621091d1b91511001a7eea91d6652ea495ce06e27381f70"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:598db66eaf2e04aa0c8900a63b0101fdc5e6b8a7ddd805c56d86efb54eb66672"}, - {file = "aiohttp-3.9.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c9376e2b09895c8ca8b95362283365eb5c03bdc8428ade80a864160605715f1"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41473de252e1797c2d2293804e389a6d6986ef37cbb4a25208de537ae32141dd"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c5857612c9813796960c00767645cb5da815af16dafb32d70c72a8390bbf690"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffcd828e37dc219a72c9012ec44ad2e7e3066bec6ff3aaa19e7d435dbf4032ca"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:219a16763dc0294842188ac8a12262b5671817042b35d45e44fd0a697d8c8361"}, - {file = "aiohttp-3.9.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f694dc8a6a3112059258a725a4ebe9acac5fe62f11c77ac4dcf896edfa78ca28"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bcc0ea8d5b74a41b621ad4a13d96c36079c81628ccc0b30cfb1603e3dfa3a014"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90ec72d231169b4b8d6085be13023ece8fa9b1bb495e4398d847e25218e0f431"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cf2a0ac0615842b849f40c4d7f304986a242f1e68286dbf3bd7a835e4f83acfd"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:0e49b08eafa4f5707ecfb321ab9592717a319e37938e301d462f79b4e860c32a"}, - {file = "aiohttp-3.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c59e0076ea31c08553e868cec02d22191c086f00b44610f8ab7363a11a5d9d8"}, - {file = "aiohttp-3.9.1-cp38-cp38-win32.whl", hash = "sha256:4831df72b053b1eed31eb00a2e1aff6896fb4485301d4ccb208cac264b648db4"}, - {file = "aiohttp-3.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:3135713c5562731ee18f58d3ad1bf41e1d8883eb68b363f2ffde5b2ea4b84cc7"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cfeadf42840c1e870dc2042a232a8748e75a36b52d78968cda6736de55582766"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70907533db712f7aa791effb38efa96f044ce3d4e850e2d7691abd759f4f0ae0"}, - {file = "aiohttp-3.9.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cdefe289681507187e375a5064c7599f52c40343a8701761c802c1853a504558"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7481f581251bb5558ba9f635db70908819caa221fc79ee52a7f58392778c636"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49f0c1b3c2842556e5de35f122fc0f0b721334ceb6e78c3719693364d4af8499"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d406b01a9f5a7e232d1b0d161b40c05275ffbcbd772dc18c1d5a570961a1ca4"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d8e4450e7fe24d86e86b23cc209e0023177b6d59502e33807b732d2deb6975f"}, - {file = "aiohttp-3.9.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0266cd6f005e99f3f51e583012de2778e65af6b73860038b968a0a8888487a"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab221850108a4a063c5b8a70f00dd7a1975e5a1713f87f4ab26a46e5feac5a0e"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c88a15f272a0ad3d7773cf3a37cc7b7d077cbfc8e331675cf1346e849d97a4e5"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:237533179d9747080bcaad4d02083ce295c0d2eab3e9e8ce103411a4312991a0"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:02ab6006ec3c3463b528374c4cdce86434e7b89ad355e7bf29e2f16b46c7dd6f"}, - {file = "aiohttp-3.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04fa38875e53eb7e354ece1607b1d2fdee2d175ea4e4d745f6ec9f751fe20c7c"}, - {file = "aiohttp-3.9.1-cp39-cp39-win32.whl", hash = "sha256:82eefaf1a996060602f3cc1112d93ba8b201dbf5d8fd9611227de2003dddb3b7"}, - {file = "aiohttp-3.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:9b05d33ff8e6b269e30a7957bd3244ffbce2a7a35a81b81c382629b80af1a8bf"}, - {file = "aiohttp-3.9.1.tar.gz", hash = "sha256:8fc49a87ac269d4529da45871e2ffb6874e87779c3d0e2ccd813c0899221239d"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -1288,19 +1288,20 @@ files = [ [[package]] name = "urllib3" -version = "1.26.16" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.8" files = [ - {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, - {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uuid7" From ac745adb05e732a94e7f19d92a72b805902c49bf Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Fri, 10 May 2024 23:07:43 +0100 Subject: [PATCH 20/44] [Feature] Remove i18n (#6390) * remove i18n * poetry lock --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- cli/openbb_cli/assets/i18n/en.yml | 36 -------- cli/openbb_cli/config/constants.py | 1 - cli/openbb_cli/config/menu_text.py | 36 +++----- cli/openbb_cli/config/setup.py | 11 +-- cli/openbb_cli/controllers/cli_controller.py | 20 +++-- .../controllers/settings_controller.py | 89 ++++++++++++++----- cli/poetry.lock | 24 ++--- cli/pyproject.toml | 1 - 8 files changed, 99 insertions(+), 119 deletions(-) delete mode 100644 cli/openbb_cli/assets/i18n/en.yml diff --git a/cli/openbb_cli/assets/i18n/en.yml b/cli/openbb_cli/assets/i18n/en.yml deleted file mode 100644 index 2e19ee4ce396..000000000000 --- a/cli/openbb_cli/assets/i18n/en.yml +++ /dev/null @@ -1,36 +0,0 @@ -en: - intro: introduction on the OpenBB Platform CLI - support: pre-populate a support ticket for our team to evaluate - survey: fill in our 2-minute survey so we better understand how we can improve the CLI - settings: enable and disable feature flags, preferences and settings - _scripts_: Record and execute your own .openbb routine scripts - record: start recording current session - stop: stop session recording and convert to .openbb routine - exe: execute .openbb routine scripts (use exe --example for an example) - _configure_: Configure your own CLI - _main_menu_: Main menu - settings/_feature_flags_: Feature flags - settings/_preferences_: Preferences - settings/retryload: retry misspelled commands with load first - settings/interactive: open dataframes in interactive window - settings/cls: clear console after each command - settings/color: use coloring features - settings/promptkit: enable prompt toolkit (autocomplete and history) - settings/thoughts: thoughts of the day - settings/reporthtml: open report as HTML otherwise notebook - settings/exithelp: automatically print help when quitting menu - settings/rich: colorful rich CLI - settings/richpanel: colorful rich CLI panel - settings/watermark: watermark in figures - settings/cmdloc: command location displayed in figures - settings/overwrite: whether to overwrite Excel files if they already exists - settings/version: whether to show the version in the bottom right corner - settings/tbhint: displays usage hints in the bottom toolbar - settings/console_style: apply a custom rich style to the CLI - settings/flair: choose flair icon - settings/timezone: pick timezone - settings/n_rows: number of rows to show on non interactive tables - settings/n_cols: number of columns to show on non interactive tables - settings/obbject_msg: show obbject registry message after a new result is added - settings/obbject_res: define the maximum number of obbjects allowed in the registry - settings/obbject_display: define the maximum number of cached results to display on the help menu diff --git a/cli/openbb_cli/config/constants.py b/cli/openbb_cli/config/constants.py index 08aa50e107a4..adac9bfd6f23 100644 --- a/cli/openbb_cli/config/constants.py +++ b/cli/openbb_cli/config/constants.py @@ -11,7 +11,6 @@ STYLES_DIRECTORY = ASSETS_DIRECTORY / "styles" ENV_FILE_SETTINGS = SETTINGS_DIRECTORY / ".cli.env" HIST_FILE_PROMPT = SETTINGS_DIRECTORY / ".cli.his" -I18N_FILE = ASSETS_DIRECTORY / "i18n" DEFAULT_ROUTINES_URL = "https://openbb-cms.directus.app/items/Routines" diff --git a/cli/openbb_cli/config/menu_text.py b/cli/openbb_cli/config/menu_text.py index e4b4e1bf8c2a..06c7023ef1f5 100644 --- a/cli/openbb_cli/config/menu_text.py +++ b/cli/openbb_cli/config/menu_text.py @@ -4,7 +4,6 @@ from typing import Dict, List -import i18n from openbb import obb # https://rich.readthedocs.io/en/stable/appendix/colors.html#appendix-colors @@ -92,10 +91,8 @@ def _format_cmd_description( self, name: str, description: str, trim: bool = True ) -> str: """Truncate command description length if it is too long.""" - if not description: - description = i18n.t(self.menu_path + name) - if description == self.menu_path + name: - description = "" + if not description or description == f"{self.menu_path}{name}": + description = "" return ( description[: self.CMD_DESCRIPTION_LENGTH - 3] + "..." if len(description) > self.CMD_DESCRIPTION_LENGTH and trim @@ -122,23 +119,9 @@ def add_section( else: self.menu_text += text - def add_custom(self, name: str): - """Append custom text (after translation).""" - self.menu_text += f"{i18n.t(self.menu_path + name)}" - def add_info(self, text: str): """Append information text (after translation).""" - self.menu_text += f"[info]{i18n.t(self.menu_path + text)}:[/info]\n" - - def add_param(self, name: str, value: str, col_align: int = 0): - """Append parameter (after translation).""" - parameter_translated = i18n.t(self.menu_path + name) - space = ( - (col_align - len(parameter_translated)) * " " - if col_align > len(parameter_translated) - else "" - ) - self.menu_text += f"[param]{parameter_translated}{space}:[/param] {value}\n" + self.menu_text += f"[info]{text}:[/info]\n" def add_cmd(self, name: str, description: str = "", disable: bool = False): """Append command text (after translation).""" @@ -174,10 +157,8 @@ def add_menu( """Append menu text (after translation).""" spacing = (self.CMD_NAME_LENGTH - len(name) + self.SECTION_SPACING) * " " - if not description: - description = i18n.t(self.menu_path + name) - if description == self.menu_path + name: - description = "" + if not description or description == f"{self.menu_path}{name}": + description = "" if len(description) > self.CMD_DESCRIPTION_LENGTH: description = description[: self.CMD_DESCRIPTION_LENGTH - 3] + "..." @@ -186,9 +167,12 @@ def add_menu( tag = "unvl" if disable else "menu" self.menu_text += f"[{tag}]> {menu}[/{tag}]\n" - def add_setting(self, name: str, status: bool = True): + def add_setting(self, name: str, status: bool = True, description: str = ""): """Append menu text (after translation).""" spacing = (self.CMD_NAME_LENGTH - len(name) + self.SECTION_SPACING) * " " indentation = self.SECTION_SPACING * " " color = "green" if status else "red" - self.menu_text += f"[{color}]{indentation}{name}{spacing}{i18n.t(self.menu_path + name)}[/{color}]\n" + + self.menu_text += ( + f"[{color}]{indentation}{name}{spacing}{description}[/{color}]\n" + ) diff --git a/cli/openbb_cli/config/setup.py b/cli/openbb_cli/config/setup.py index c507e5645a7c..4d3eece690bf 100644 --- a/cli/openbb_cli/config/setup.py +++ b/cli/openbb_cli/config/setup.py @@ -4,9 +4,7 @@ from pathlib import Path from typing import TYPE_CHECKING, List, Optional, TypeVar -import i18n - -from openbb_cli.config.constants import ENV_FILE_SETTINGS, I18N_FILE, SETTINGS_DIRECTORY +from openbb_cli.config.constants import ENV_FILE_SETTINGS, SETTINGS_DIRECTORY if TYPE_CHECKING: from openbb_charting.core.openbb_figure import OpenBBFigure @@ -69,13 +67,6 @@ def set_current_figure(fig: Optional[OpenBBFigureT] = None): current_figure = fig -def setup_i18n(i18n_path: Path = I18N_FILE, lang: str = "en"): - """Select the CLI translation language.""" - i18n.load_path.append(i18n_path) - i18n.set("locale", lang) - i18n.set("filename_format", "{locale}.{format}") - - def bootstrap(): """Setup pre-launch configurations for the CLI.""" SETTINGS_DIRECTORY.mkdir(parents=True, exist_ok=True) diff --git a/cli/openbb_cli/controllers/cli_controller.py b/cli/openbb_cli/controllers/cli_controller.py index e44237ba82d2..aec72410a84e 100644 --- a/cli/openbb_cli/controllers/cli_controller.py +++ b/cli/openbb_cli/controllers/cli_controller.py @@ -220,13 +220,21 @@ def update_runtime_choices(self): def print_help(self): """Print help.""" mt = MenuText("") - mt.add_info("_configure_") - mt.add_menu("settings") + mt.add_info("Configure your own CLI") + mt.add_menu( + "settings", + description="enable and disable feature flags, preferences and settings", + ) mt.add_raw("\n") - mt.add_info("_scripts_") - mt.add_cmd("record") - mt.add_cmd("stop") - mt.add_cmd("exe") + mt.add_info("Record and execute your own .openbb routine scripts") + mt.add_cmd("record", description="start recording current session") + mt.add_cmd( + "stop", description="stop session recording and convert to .openbb routine" + ) + mt.add_cmd( + "exe", + description="execute .openbb routine scripts (use exe --example for an example)", + ) mt.add_raw("\n") mt.add_info("Retrieve data from different asset classes and providers") diff --git a/cli/openbb_cli/controllers/settings_controller.py b/cli/openbb_cli/controllers/settings_controller.py index 9f87d4cc677a..f01742f6cb20 100644 --- a/cli/openbb_cli/controllers/settings_controller.py +++ b/cli/openbb_cli/controllers/settings_controller.py @@ -19,7 +19,6 @@ class SettingsController(BaseController): """Settings Controller class.""" CHOICES_COMMANDS: List[str] = [ - "retryload", "tab", "interactive", "cls", @@ -56,26 +55,76 @@ def print_help(self): settings = session.settings mt = MenuText("settings/") - mt.add_info("_feature_flags_") - mt.add_setting("interactive", settings.USE_INTERACTIVE_DF) - mt.add_setting("cls", settings.USE_CLEAR_AFTER_CMD) - mt.add_setting("promptkit", settings.USE_PROMPT_TOOLKIT) - mt.add_setting("exithelp", settings.ENABLE_EXIT_AUTO_HELP) - mt.add_setting("rcontext", settings.REMEMBER_CONTEXTS) - mt.add_setting("richpanel", settings.ENABLE_RICH_PANEL) - mt.add_setting("tbhint", settings.TOOLBAR_HINT) - mt.add_setting("overwrite", settings.FILE_OVERWRITE) - mt.add_setting("version", settings.SHOW_VERSION) - mt.add_setting("obbject_msg", settings.SHOW_MSG_OBBJECT_REGISTRY) + mt.add_info("Feature flags") + mt.add_setting( + "interactive", + settings.USE_INTERACTIVE_DF, + description="open dataframes in interactive window", + ) + mt.add_setting( + "cls", + settings.USE_CLEAR_AFTER_CMD, + description="clear console after each command", + ) + mt.add_setting( + "promptkit", + settings.USE_PROMPT_TOOLKIT, + description="enable prompt toolkit (autocomplete and history)", + ) + mt.add_setting( + "exithelp", + settings.ENABLE_EXIT_AUTO_HELP, + description="automatically print help when quitting menu", + ) + mt.add_setting( + "rcontext", + settings.REMEMBER_CONTEXTS, + description="remember contexts between menus", + ) + mt.add_setting( + "richpanel", + settings.ENABLE_RICH_PANEL, + description="colorful rich CLI panel", + ) + mt.add_setting( + "tbhint", + settings.TOOLBAR_HINT, + description="displays usage hints in the bottom toolbar", + ) + mt.add_setting( + "overwrite", + settings.FILE_OVERWRITE, + description="whether to overwrite Excel files if they already exists", + ) + mt.add_setting( + "version", + settings.SHOW_VERSION, + description="whether to show the version in the bottom right corner", + ) + mt.add_setting( + "obbject_msg", + settings.SHOW_MSG_OBBJECT_REGISTRY, + description="show obbject registry message after a new result is added", + ) mt.add_raw("\n") - mt.add_info("_preferences_") - mt.add_cmd("console_style") - mt.add_cmd("flair") - mt.add_cmd("timezone") - mt.add_cmd("n_rows") - mt.add_cmd("n_cols") - mt.add_cmd("obbject_res") - mt.add_cmd("obbject_display") + mt.add_info("Preferences") + mt.add_cmd("console_style", description="apply a custom rich style to the CLI") + mt.add_cmd("flair", description="choose flair icon") + mt.add_cmd("timezone", description="pick timezone") + mt.add_cmd( + "n_rows", description="number of rows to show on non interactive tables" + ) + mt.add_cmd( + "n_cols", description="number of columns to show on non interactive tables" + ) + mt.add_cmd( + "obbject_res", + description="define the maximum number of obbjects allowed in the registry", + ) + mt.add_cmd( + "obbject_display", + description="define the maximum number of cached results to display on the help menu", + ) session.console.print(text=mt.menu_text, menu="Settings") diff --git a/cli/poetry.lock b/cli/poetry.lock index 45b7fb756760..ee6b517c6682 100644 --- a/cli/poetry.lock +++ b/cli/poetry.lock @@ -1710,7 +1710,6 @@ files = [ {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"}, {file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"}, {file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"}, - {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3e183c6e3298a2ed5af9d7a356ea823bccaab4ec2349dc9ed83999fd289d14d5"}, {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"}, {file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"}, {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"}, @@ -1926,7 +1925,7 @@ files = [ {file = "msgpack-1.0.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5fbb160554e319f7b22ecf530a80a3ff496d38e8e07ae763b9e82fadfe96f273"}, {file = "msgpack-1.0.8-cp39-cp39-win32.whl", hash = "sha256:f9af38a89b6a5c04b7d18c492c8ccf2aee7048aff1ce8437c4683bb5a1df893d"}, {file = "msgpack-1.0.8-cp39-cp39-win_amd64.whl", hash = "sha256:ed59dd52075f8fc91da6053b12e8c89e37aa043f8986efd89e61fae69dc1b011"}, - {file = "msgpack-1.0.8-py3-none-any.whl", hash = "sha256:24f727df1e20b9876fa6e95f840a2a2651e34c0ad147676356f4bf5fbb0206ca"}, + {file = "msgpack-1.0.8.tar.gz", hash = "sha256:95c02b0e27e706e48d0e5426d1710ca78e0f0628d6e89d5b5a5b91a5f12274f3"}, ] [[package]] @@ -2721,8 +2720,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.20.3", markers = "python_version < \"3.10\""}, {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, + {version = ">=1.20.3", markers = "python_version < \"3.10\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, ] python-dateutil = ">=2.8.2" @@ -3496,20 +3495,6 @@ files = [ [package.extras] cli = ["click (>=5.0)"] -[[package]] -name = "python-i18n" -version = "0.3.9" -description = "Translation library for Python" -optional = false -python-versions = "*" -files = [ - {file = "python-i18n-0.3.9.tar.gz", hash = "sha256:df97f3d2364bf3a7ebfbd6cbefe8e45483468e52a9e30b909c6078f5f471e4e8"}, - {file = "python_i18n-0.3.9-py3-none-any.whl", hash = "sha256:bda5b8d889ebd51973e22e53746417bd32783c9bd6780fd27cadbb733915651d"}, -] - -[package.extras] -yaml = ["pyyaml (>=3.10)"] - [[package]] name = "python-jose" version = "3.3.0" @@ -3634,6 +3619,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -4438,8 +4424,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.18,<2", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, {version = ">=1.22.3,<2", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}, + {version = ">=1.18,<2", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, ] packaging = ">=21.3" pandas = ">=1.0,<2.1.0 || >2.1.0" @@ -5069,4 +5055,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8.1,<3.12" -content-hash = "bf27c8f9b575f4443c195486a3d343775ae83bb1263642673a07872ac447af12" +content-hash = "7dc546f808d5c75fc49d06a176cb053560ec0eaaf9da24e95716e8334672ae50" diff --git a/cli/pyproject.toml b/cli/pyproject.toml index 93d8ab34a93f..1ff6afa4d21d 100644 --- a/cli/pyproject.toml +++ b/cli/pyproject.toml @@ -24,7 +24,6 @@ openbb-charting = "^2.0.2" prompt-toolkit = "^3.0.16" rich = "^13" python-dotenv = "^1.0.0" -python-i18n = "^0.3.9" [tool.poetry.group.dev.dependencies] openbb-devtools = "^1.1.3" From 0139dbf7a233e71fb5aee17ecb74cb6e0a2322f4 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Mon, 13 May 2024 08:51:16 +0100 Subject: [PATCH 21/44] [Feature] Update CLI dependencies (#6389) * update dependencies * poetry lock --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- cli/poetry.lock | 2283 ++++++++++++++++++++++++++++++-------------- cli/pyproject.toml | 4 +- 2 files changed, 1574 insertions(+), 713 deletions(-) diff --git a/cli/poetry.lock b/cli/poetry.lock index ee6b517c6682..201220c51e46 100644 --- a/cli/poetry.lock +++ b/cli/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohttp" @@ -96,6 +96,32 @@ yarl = ">=1.0,<2.0" [package.extras] speedups = ["Brotli", "aiodns", "brotlicffi"] +[[package]] +name = "aiohttp-client-cache" +version = "0.10.0" +description = "Persistent cache for aiohttp requests" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "aiohttp_client_cache-0.10.0-py3-none-any.whl", hash = "sha256:67eb7f71663c67b9029da83c250ac5faf231fcaa90734475beb64e1556a5f7eb"}, + {file = "aiohttp_client_cache-0.10.0.tar.gz", hash = "sha256:15753840da9af01f190039a813225f77c82c5032341c48c847d0760813f9e705"}, +] + +[package.dependencies] +aiohttp = ">=3.8,<4.0" +attrs = ">=21.2" +itsdangerous = ">=2.0" +url-normalize = ">=1.4,<2.0" + +[package.extras] +all = ["aioboto3 (>=9.0)", "aiobotocore (>=2.0)", "aiofiles (>=0.6.0)", "aiosqlite (>=0.16)", "motor (>=3.1)", "redis (>=4.2)"] +docs = ["furo (>=2023.8,<2024.0)", "linkify-it-py (>=2.0)", "markdown-it-py (>=2.2)", "myst-parser (>=2.0)", "python-forge (>=18.6,<19.0)", "sphinx (==7.1.2)", "sphinx-autodoc-typehints (>=1.23,<2.0)", "sphinx-automodapi (>=0.15)", "sphinx-copybutton (>=0.3,<0.4)", "sphinx-inline-tabs (>=2023.4)", "sphinxcontrib-apidoc (>=0.3)"] +dynamodb = ["aioboto3 (>=9.0)", "aiobotocore (>=2.0)"] +filesystem = ["aiofiles (>=0.6.0)", "aiosqlite (>=0.16)"] +mongodb = ["motor (>=3.1)"] +redis = ["redis (>=4.2)"] +sqlite = ["aiosqlite (>=0.16)"] + [[package]] name = "aiosignal" version = "1.3.1" @@ -110,6 +136,21 @@ files = [ [package.dependencies] frozenlist = ">=1.1.0" +[[package]] +name = "aiosqlite" +version = "0.19.0" +description = "asyncio bridge to the standard sqlite3 module" +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, + {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, +] + +[package.extras] +dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] +docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] + [[package]] name = "annotated-types" version = "0.6.0" @@ -167,6 +208,56 @@ files = [ {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, ] +[[package]] +name = "arch" +version = "5.6.0" +description = "ARCH for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "arch-5.6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:478d049fb18e022670952792ebaa6b66acff77580c0f691497b706ce9192e941"}, + {file = "arch-5.6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f0da8a70e56759b469eeef52153e0a6eaf2e384c4f48427189433ea12fc8886a"}, + {file = "arch-5.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cd3035fc54b9718f889455d4f8aa58fda3077d223cc722f95a9a3ecdb4c2fce"}, + {file = "arch-5.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c838e92dd60367c0e5063bc98521aa341d20d97af7adf911526d1c819eef7ee"}, + {file = "arch-5.6.0-cp310-cp310-win_amd64.whl", hash = "sha256:7b1f78ad63b288014c3d453b29c9a1886e10a27eb53c5e58d55d8dd49b1a3d9a"}, + {file = "arch-5.6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:05b232a45acc74930b8c700320b4a602431e1ae511bb2c081982ef6bde2fe118"}, + {file = "arch-5.6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9ff873de28efd9af9e5a635c41745f783c40c5f771c6c322ace83164fefb0f9f"}, + {file = "arch-5.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:81b3aea5fb7b4c4828bd2c855a91f8cc53d547b2a106dde2deaf331d17a485b7"}, + {file = "arch-5.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee81437074d0aed1522dd09166fccb1275eb17f45ca9dce0c03529eecaa59c0d"}, + {file = "arch-5.6.0-cp311-cp311-win_amd64.whl", hash = "sha256:c686e23b28e9bbea7db601686c5f9e1f34135a4ef909b64ef821c1323f532fbc"}, + {file = "arch-5.6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:68758d5c0afcb38a7c284dd3ff1f563ed4e3d5307b41ce403471514f5e579285"}, + {file = "arch-5.6.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cb6e6fb14f36ddcd02a95e1629a7d28fd0eb291c5af99c679c7893663ae7914e"}, + {file = "arch-5.6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ae9aff6b8b3fc8759de6e439b2e8b17e5345c939f082f89582e33a60293cef4"}, + {file = "arch-5.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39e896c4ccc79aae6799d98ccac1186d951eedbf8d7c4cf836ac2a3883da7cbb"}, + {file = "arch-5.6.0-cp38-cp38-win32.whl", hash = "sha256:66a634dfbd03defcbe9696dc74bce77f02cafdfbb4e62910d484e5f07d2a1d61"}, + {file = "arch-5.6.0-cp38-cp38-win_amd64.whl", hash = "sha256:e6253a88a6106ae381f220e2d55a99bb66893bb60b998bf1839c556ae5c10f69"}, + {file = "arch-5.6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db9b12bdce62a4bd0431c2f13889b4e02ff89335061d0abac4d6589acdedabe2"}, + {file = "arch-5.6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bd7e3d0ec56a405ae3bf9645768fa02549b70c3c5a4589f5bd489eae21d91599"}, + {file = "arch-5.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e0384c8287681bd10cef2064bb9017dbdc10ded382f2ab5effa788f0d6b43600"}, + {file = "arch-5.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d6a7028c8d25f64c64366410a7164317e748435280e074e427ab7efac65a0d4b"}, + {file = "arch-5.6.0-cp39-cp39-win32.whl", hash = "sha256:6c604f082bc66144d51af6c31f7076ed768bc2f9e7eef0934c6689153ca8428c"}, + {file = "arch-5.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:84f56d139b42e8bfe6cc712b960a0cfd690b5bbf8bcb69e17713050ae6cba9d0"}, + {file = "arch-5.6.0.tar.gz", hash = "sha256:556b046010642e1ab4f837e26edd4f832ff33330a5c5a899ea1b26149ad7dc14"}, +] + +[package.dependencies] +numpy = ">=1.17" +pandas = ">=1.0" +property-cached = ">=1.6.4" +scipy = ">=1.3" +statsmodels = ">=0.11" + +[[package]] +name = "astor" +version = "0.8.1" +description = "Read/rewrite/write Python ASTs" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7" +files = [ + {file = "astor-0.8.1-py2.py3-none-any.whl", hash = "sha256:070a54e890cefb5b3739d19f30f5a5ec840ffc9c50ffa7d23cc9fc1a38ebbfc5"}, + {file = "astor-0.8.1.tar.gz", hash = "sha256:6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e"}, +] + [[package]] name = "astroid" version = "3.1.0" @@ -298,33 +389,33 @@ lxml = ["lxml"] [[package]] name = "black" -version = "24.4.0" +version = "24.4.2" description = "The uncompromising code formatter." optional = false python-versions = ">=3.8" files = [ - {file = "black-24.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6ad001a9ddd9b8dfd1b434d566be39b1cd502802c8d38bbb1ba612afda2ef436"}, - {file = "black-24.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e3a3a092b8b756c643fe45f4624dbd5a389f770a4ac294cf4d0fce6af86addaf"}, - {file = "black-24.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dae79397f367ac8d7adb6c779813328f6d690943f64b32983e896bcccd18cbad"}, - {file = "black-24.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:71d998b73c957444fb7c52096c3843875f4b6b47a54972598741fe9a7f737fcb"}, - {file = "black-24.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8e5537f456a22cf5cfcb2707803431d2feeb82ab3748ade280d6ccd0b40ed2e8"}, - {file = "black-24.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:64e60a7edd71fd542a10a9643bf369bfd2644de95ec71e86790b063aa02ff745"}, - {file = "black-24.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5cd5b4f76056cecce3e69b0d4c228326d2595f506797f40b9233424e2524c070"}, - {file = "black-24.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:64578cf99b6b46a6301bc28bdb89f9d6f9b592b1c5837818a177c98525dbe397"}, - {file = "black-24.4.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f95cece33329dc4aa3b0e1a771c41075812e46cf3d6e3f1dfe3d91ff09826ed2"}, - {file = "black-24.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4396ca365a4310beef84d446ca5016f671b10f07abdba3e4e4304218d2c71d33"}, - {file = "black-24.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44d99dfdf37a2a00a6f7a8dcbd19edf361d056ee51093b2445de7ca09adac965"}, - {file = "black-24.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:21f9407063ec71c5580b8ad975653c66508d6a9f57bd008bb8691d273705adcd"}, - {file = "black-24.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:652e55bb722ca026299eb74e53880ee2315b181dfdd44dca98e43448620ddec1"}, - {file = "black-24.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7f2966b9b2b3b7104fca9d75b2ee856fe3fdd7ed9e47c753a4bb1a675f2caab8"}, - {file = "black-24.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bb9ca06e556a09f7f7177bc7cb604e5ed2d2df1e9119e4f7d2f1f7071c32e5d"}, - {file = "black-24.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:d4e71cdebdc8efeb6deaf5f2deb28325f8614d48426bed118ecc2dcaefb9ebf3"}, - {file = "black-24.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6644f97a7ef6f401a150cca551a1ff97e03c25d8519ee0bbc9b0058772882665"}, - {file = "black-24.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:75a2d0b4f5eb81f7eebc31f788f9830a6ce10a68c91fbe0fade34fff7a2836e6"}, - {file = "black-24.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb949f56a63c5e134dfdca12091e98ffb5fd446293ebae123d10fc1abad00b9e"}, - {file = "black-24.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:7852b05d02b5b9a8c893ab95863ef8986e4dda29af80bbbda94d7aee1abf8702"}, - {file = "black-24.4.0-py3-none-any.whl", hash = "sha256:74eb9b5420e26b42c00a3ff470dc0cd144b80a766128b1771d07643165e08d0e"}, - {file = "black-24.4.0.tar.gz", hash = "sha256:f07b69fda20578367eaebbd670ff8fc653ab181e1ff95d84497f9fa20e7d0641"}, + {file = "black-24.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dd1b5a14e417189db4c7b64a6540f31730713d173f0b63e55fabd52d61d8fdce"}, + {file = "black-24.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8e537d281831ad0e71007dcdcbe50a71470b978c453fa41ce77186bbe0ed6021"}, + {file = "black-24.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaea3008c281f1038edb473c1aa8ed8143a5535ff18f978a318f10302b254063"}, + {file = "black-24.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:7768a0dbf16a39aa5e9a3ded568bb545c8c2727396d063bbaf847df05b08cd96"}, + {file = "black-24.4.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:257d724c2c9b1660f353b36c802ccece186a30accc7742c176d29c146df6e474"}, + {file = "black-24.4.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bdde6f877a18f24844e381d45e9947a49e97933573ac9d4345399be37621e26c"}, + {file = "black-24.4.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e151054aa00bad1f4e1f04919542885f89f5f7d086b8a59e5000e6c616896ffb"}, + {file = "black-24.4.2-cp311-cp311-win_amd64.whl", hash = "sha256:7e122b1c4fb252fd85df3ca93578732b4749d9be076593076ef4d07a0233c3e1"}, + {file = "black-24.4.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:accf49e151c8ed2c0cdc528691838afd217c50412534e876a19270fea1e28e2d"}, + {file = "black-24.4.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:88c57dc656038f1ab9f92b3eb5335ee9b021412feaa46330d5eba4e51fe49b04"}, + {file = "black-24.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be8bef99eb46d5021bf053114442914baeb3649a89dc5f3a555c88737e5e98fc"}, + {file = "black-24.4.2-cp312-cp312-win_amd64.whl", hash = "sha256:415e686e87dbbe6f4cd5ef0fbf764af7b89f9057b97c908742b6008cc554b9c0"}, + {file = "black-24.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bf10f7310db693bb62692609b397e8d67257c55f949abde4c67f9cc574492cc7"}, + {file = "black-24.4.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:98e123f1d5cfd42f886624d84464f7756f60ff6eab89ae845210631714f6db94"}, + {file = "black-24.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:48a85f2cb5e6799a9ef05347b476cce6c182d6c71ee36925a6c194d074336ef8"}, + {file = "black-24.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:b1530ae42e9d6d5b670a34db49a94115a64596bc77710b1d05e9801e62ca0a7c"}, + {file = "black-24.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:37aae07b029fa0174d39daf02748b379399b909652a806e5708199bd93899da1"}, + {file = "black-24.4.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:da33a1a5e49c4122ccdfd56cd021ff1ebc4a1ec4e2d01594fef9b6f267a9e741"}, + {file = "black-24.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef703f83fc32e131e9bcc0a5094cfe85599e7109f896fe8bc96cc402f3eb4b6e"}, + {file = "black-24.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:b9176b9832e84308818a99a561e90aa479e73c523b3f77afd07913380ae2eab7"}, + {file = "black-24.4.2-py3-none-any.whl", hash = "sha256:d36ed1124bb81b32f8614555b34cc4259c3fbc7eec17870e8ff8ded335b58d8c"}, + {file = "black-24.4.2.tar.gz", hash = "sha256:c872b53057f000085da66a19c55d68f6f8ddcac2642392ad3a355878406fbd4d"}, ] [package.dependencies] @@ -342,6 +433,20 @@ d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"] jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] uvloop = ["uvloop (>=0.15.2)"] +[[package]] +name = "bs4" +version = "0.0.2" +description = "Dummy package for Beautiful Soup (beautifulsoup4)" +optional = false +python-versions = "*" +files = [ + {file = "bs4-0.0.2-py2.py3-none-any.whl", hash = "sha256:abf8742c0805ef7f662dce4b51cca104cffe52b835238afc169142ab9b3fbccc"}, + {file = "bs4-0.0.2.tar.gz", hash = "sha256:a48685c58f50fe127722417bae83fe6badf500d54b55f7e39ffe43b798653925"}, +] + +[package.dependencies] +beautifulsoup4 = "*" + [[package]] name = "build" version = "1.2.1" @@ -696,63 +801,63 @@ test = ["pytest"] [[package]] name = "coverage" -version = "7.5.0" +version = "7.5.1" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:432949a32c3e3f820af808db1833d6d1631664d53dd3ce487aa25d574e18ad1c"}, - {file = "coverage-7.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2bd7065249703cbeb6d4ce679c734bef0ee69baa7bff9724361ada04a15b7e3b"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bbfe6389c5522b99768a93d89aca52ef92310a96b99782973b9d11e80511f932"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:39793731182c4be939b4be0cdecde074b833f6171313cf53481f869937129ed3"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85a5dbe1ba1bf38d6c63b6d2c42132d45cbee6d9f0c51b52c59aa4afba057517"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:357754dcdfd811462a725e7501a9b4556388e8ecf66e79df6f4b988fa3d0b39a"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a81eb64feded34f40c8986869a2f764f0fe2db58c0530d3a4afbcde50f314880"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:51431d0abbed3a868e967f8257c5faf283d41ec882f58413cf295a389bb22e58"}, - {file = "coverage-7.5.0-cp310-cp310-win32.whl", hash = "sha256:f609ebcb0242d84b7adeee2b06c11a2ddaec5464d21888b2c8255f5fd6a98ae4"}, - {file = "coverage-7.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:6782cd6216fab5a83216cc39f13ebe30adfac2fa72688c5a4d8d180cd52e8f6a"}, - {file = "coverage-7.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e768d870801f68c74c2b669fc909839660180c366501d4cc4b87efd6b0eee375"}, - {file = "coverage-7.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:84921b10aeb2dd453247fd10de22907984eaf80901b578a5cf0bb1e279a587cb"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:710c62b6e35a9a766b99b15cdc56d5aeda0914edae8bb467e9c355f75d14ee95"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c379cdd3efc0658e652a14112d51a7668f6bfca7445c5a10dee7eabecabba19d"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fea9d3ca80bcf17edb2c08a4704259dadac196fe5e9274067e7a20511fad1743"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:41327143c5b1d715f5f98a397608f90ab9ebba606ae4e6f3389c2145410c52b1"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:565b2e82d0968c977e0b0f7cbf25fd06d78d4856289abc79694c8edcce6eb2de"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cf3539007202ebfe03923128fedfdd245db5860a36810136ad95a564a2fdffff"}, - {file = "coverage-7.5.0-cp311-cp311-win32.whl", hash = "sha256:bf0b4b8d9caa8d64df838e0f8dcf68fb570c5733b726d1494b87f3da85db3a2d"}, - {file = "coverage-7.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:9c6384cc90e37cfb60435bbbe0488444e54b98700f727f16f64d8bfda0b84656"}, - {file = "coverage-7.5.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fed7a72d54bd52f4aeb6c6e951f363903bd7d70bc1cad64dd1f087980d309ab9"}, - {file = "coverage-7.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:cbe6581fcff7c8e262eb574244f81f5faaea539e712a058e6707a9d272fe5b64"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad97ec0da94b378e593ef532b980c15e377df9b9608c7c6da3506953182398af"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bd4bacd62aa2f1a1627352fe68885d6ee694bdaebb16038b6e680f2924a9b2cc"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:adf032b6c105881f9d77fa17d9eebe0ad1f9bfb2ad25777811f97c5362aa07f2"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4ba01d9ba112b55bfa4b24808ec431197bb34f09f66f7cb4fd0258ff9d3711b1"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:f0bfe42523893c188e9616d853c47685e1c575fe25f737adf473d0405dcfa7eb"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a9a7ef30a1b02547c1b23fa9a5564f03c9982fc71eb2ecb7f98c96d7a0db5cf2"}, - {file = "coverage-7.5.0-cp312-cp312-win32.whl", hash = "sha256:3c2b77f295edb9fcdb6a250f83e6481c679335ca7e6e4a955e4290350f2d22a4"}, - {file = "coverage-7.5.0-cp312-cp312-win_amd64.whl", hash = "sha256:427e1e627b0963ac02d7c8730ca6d935df10280d230508c0ba059505e9233475"}, - {file = "coverage-7.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9dd88fce54abbdbf4c42fb1fea0e498973d07816f24c0e27a1ecaf91883ce69e"}, - {file = "coverage-7.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a898c11dca8f8c97b467138004a30133974aacd572818c383596f8d5b2eb04a9"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07dfdd492d645eea1bd70fb1d6febdcf47db178b0d99161d8e4eed18e7f62fe7"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3d117890b6eee85887b1eed41eefe2e598ad6e40523d9f94c4c4b213258e4a4"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6afd2e84e7da40fe23ca588379f815fb6dbbb1b757c883935ed11647205111cb"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a9960dd1891b2ddf13a7fe45339cd59ecee3abb6b8326d8b932d0c5da208104f"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ced268e82af993d7801a9db2dbc1d2322e786c5dc76295d8e89473d46c6b84d4"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e7c211f25777746d468d76f11719e64acb40eed410d81c26cefac641975beb88"}, - {file = "coverage-7.5.0-cp38-cp38-win32.whl", hash = "sha256:262fffc1f6c1a26125d5d573e1ec379285a3723363f3bd9c83923c9593a2ac25"}, - {file = "coverage-7.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:eed462b4541c540d63ab57b3fc69e7d8c84d5957668854ee4e408b50e92ce26a"}, - {file = "coverage-7.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d0194d654e360b3e6cc9b774e83235bae6b9b2cac3be09040880bb0e8a88f4a1"}, - {file = "coverage-7.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:33c020d3322662e74bc507fb11488773a96894aa82a622c35a5a28673c0c26f5"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbdf2cae14a06827bec50bd58e49249452d211d9caddd8bd80e35b53cb04631"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3235d7c781232e525b0761730e052388a01548bd7f67d0067a253887c6e8df46"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db2de4e546f0ec4b2787d625e0b16b78e99c3e21bc1722b4977c0dddf11ca84e"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4d0e206259b73af35c4ec1319fd04003776e11e859936658cb6ceffdeba0f5be"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2055c4fb9a6ff624253d432aa471a37202cd8f458c033d6d989be4499aed037b"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:075299460948cd12722a970c7eae43d25d37989da682997687b34ae6b87c0ef0"}, - {file = "coverage-7.5.0-cp39-cp39-win32.whl", hash = "sha256:280132aada3bc2f0fac939a5771db4fbb84f245cb35b94fae4994d4c1f80dae7"}, - {file = "coverage-7.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:c58536f6892559e030e6924896a44098bc1290663ea12532c78cef71d0df8493"}, - {file = "coverage-7.5.0-pp38.pp39.pp310-none-any.whl", hash = "sha256:2b57780b51084d5223eee7b59f0d4911c31c16ee5aa12737c7a02455829ff067"}, - {file = "coverage-7.5.0.tar.gz", hash = "sha256:cf62d17310f34084c59c01e027259076479128d11e4661bb6c9acb38c5e19bb8"}, + {file = "coverage-7.5.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0884920835a033b78d1c73b6d3bbcda8161a900f38a488829a83982925f6c2e"}, + {file = "coverage-7.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:39afcd3d4339329c5f58de48a52f6e4e50f6578dd6099961cf22228feb25f38f"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a7b0ceee8147444347da6a66be737c9d78f3353b0681715b668b72e79203e4a"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a9ca3f2fae0088c3c71d743d85404cec8df9be818a005ea065495bedc33da35"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd215c0c7d7aab005221608a3c2b46f58c0285a819565887ee0b718c052aa4e"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4bf0655ab60d754491004a5efd7f9cccefcc1081a74c9ef2da4735d6ee4a6223"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:61c4bf1ba021817de12b813338c9be9f0ad5b1e781b9b340a6d29fc13e7c1b5e"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:db66fc317a046556a96b453a58eced5024af4582a8dbdc0c23ca4dbc0d5b3146"}, + {file = "coverage-7.5.1-cp310-cp310-win32.whl", hash = "sha256:b016ea6b959d3b9556cb401c55a37547135a587db0115635a443b2ce8f1c7228"}, + {file = "coverage-7.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:df4e745a81c110e7446b1cc8131bf986157770fa405fe90e15e850aaf7619bc8"}, + {file = "coverage-7.5.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:796a79f63eca8814ca3317a1ea443645c9ff0d18b188de470ed7ccd45ae79428"}, + {file = "coverage-7.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4fc84a37bfd98db31beae3c2748811a3fa72bf2007ff7902f68746d9757f3746"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6175d1a0559986c6ee3f7fccfc4a90ecd12ba0a383dcc2da30c2b9918d67d8a3"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fc81d5878cd6274ce971e0a3a18a8803c3fe25457165314271cf78e3aae3aa2"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:556cf1a7cbc8028cb60e1ff0be806be2eded2daf8129b8811c63e2b9a6c43bca"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9981706d300c18d8b220995ad22627647be11a4276721c10911e0e9fa44c83e8"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d7fed867ee50edf1a0b4a11e8e5d0895150e572af1cd6d315d557758bfa9c057"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ef48e2707fb320c8f139424a596f5b69955a85b178f15af261bab871873bb987"}, + {file = "coverage-7.5.1-cp311-cp311-win32.whl", hash = "sha256:9314d5678dcc665330df5b69c1e726a0e49b27df0461c08ca12674bcc19ef136"}, + {file = "coverage-7.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:5fa567e99765fe98f4e7d7394ce623e794d7cabb170f2ca2ac5a4174437e90dd"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b6cf3764c030e5338e7f61f95bd21147963cf6aa16e09d2f74f1fa52013c1206"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ec92012fefebee89a6b9c79bc39051a6cb3891d562b9270ab10ecfdadbc0c34"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16db7f26000a07efcf6aea00316f6ac57e7d9a96501e990a36f40c965ec7a95d"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:beccf7b8a10b09c4ae543582c1319c6df47d78fd732f854ac68d518ee1fb97fa"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8748731ad392d736cc9ccac03c9845b13bb07d020a33423fa5b3a36521ac6e4e"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7352b9161b33fd0b643ccd1f21f3a3908daaddf414f1c6cb9d3a2fd618bf2572"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7a588d39e0925f6a2bff87154752481273cdb1736270642aeb3635cb9b4cad07"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:68f962d9b72ce69ea8621f57551b2fa9c70509af757ee3b8105d4f51b92b41a7"}, + {file = "coverage-7.5.1-cp312-cp312-win32.whl", hash = "sha256:f152cbf5b88aaeb836127d920dd0f5e7edff5a66f10c079157306c4343d86c19"}, + {file = "coverage-7.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:5a5740d1fb60ddf268a3811bcd353de34eb56dc24e8f52a7f05ee513b2d4f596"}, + {file = "coverage-7.5.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e2213def81a50519d7cc56ed643c9e93e0247f5bbe0d1247d15fa520814a7cd7"}, + {file = "coverage-7.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5037f8fcc2a95b1f0e80585bd9d1ec31068a9bcb157d9750a172836e98bc7a90"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3721c2c9e4c4953a41a26c14f4cef64330392a6d2d675c8b1db3b645e31f0e"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca498687ca46a62ae590253fba634a1fe9836bc56f626852fb2720f334c9e4e5"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0cdcbc320b14c3e5877ee79e649677cb7d89ef588852e9583e6b24c2e5072661"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:57e0204b5b745594e5bc14b9b50006da722827f0b8c776949f1135677e88d0b8"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8fe7502616b67b234482c3ce276ff26f39ffe88adca2acf0261df4b8454668b4"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9e78295f4144f9dacfed4f92935fbe1780021247c2fabf73a819b17f0ccfff8d"}, + {file = "coverage-7.5.1-cp38-cp38-win32.whl", hash = "sha256:1434e088b41594baa71188a17533083eabf5609e8e72f16ce8c186001e6b8c41"}, + {file = "coverage-7.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:0646599e9b139988b63704d704af8e8df7fa4cbc4a1f33df69d97f36cb0a38de"}, + {file = "coverage-7.5.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4cc37def103a2725bc672f84bd939a6fe4522310503207aae4d56351644682f1"}, + {file = "coverage-7.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fc0b4d8bfeabd25ea75e94632f5b6e047eef8adaed0c2161ada1e922e7f7cece"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d0a0f5e06881ecedfe6f3dd2f56dcb057b6dbeb3327fd32d4b12854df36bf26"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9735317685ba6ec7e3754798c8871c2f49aa5e687cc794a0b1d284b2389d1bd5"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d21918e9ef11edf36764b93101e2ae8cc82aa5efdc7c5a4e9c6c35a48496d601"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c3e757949f268364b96ca894b4c342b41dc6f8f8b66c37878aacef5930db61be"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:79afb6197e2f7f60c4824dd4b2d4c2ec5801ceb6ba9ce5d2c3080e5660d51a4f"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d1d0d98d95dd18fe29dc66808e1accf59f037d5716f86a501fc0256455219668"}, + {file = "coverage-7.5.1-cp39-cp39-win32.whl", hash = "sha256:1cc0fe9b0b3a8364093c53b0b4c0c2dd4bb23acbec4c9240b5f284095ccf7981"}, + {file = "coverage-7.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:dde0070c40ea8bb3641e811c1cfbf18e265d024deff6de52c5950677a8fb1e0f"}, + {file = "coverage-7.5.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:6537e7c10cc47c595828b8a8be04c72144725c383c4702703ff4e42e44577312"}, + {file = "coverage-7.5.1.tar.gz", hash = "sha256:54de9ef3a9da981f7af93eafde4ede199e0846cd819eb27c88e2b712aae9708c"}, ] [package.dependencies] @@ -774,43 +879,43 @@ files = [ [[package]] name = "cryptography" -version = "42.0.5" +version = "42.0.7" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, - {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, - {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, - {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, - {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, - {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, - {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a987f840718078212fdf4504d0fd4c6effe34a7e4740378e59d47696e8dfb477"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:bd13b5e9b543532453de08bcdc3cc7cebec6f9883e886fd20a92f26940fd3e7a"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a79165431551042cc9d1d90e6145d5d0d3ab0f2d66326c201d9b0e7f5bf43604"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a47787a5e3649008a1102d3df55424e86606c9bae6fb77ac59afe06d234605f8"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:02c0eee2d7133bdbbc5e24441258d5d2244beb31da5ed19fbb80315f4bbbff55"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:5e44507bf8d14b36b8389b226665d597bc0f18ea035d75b4e53c7b1ea84583cc"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:7f8b25fa616d8b846aef64b15c606bb0828dbc35faf90566eb139aa9cff67af2"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:93a3209f6bb2b33e725ed08ee0991b92976dfdcf4e8b38646540674fc7508e13"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e6b8f1881dac458c34778d0a424ae5769de30544fc678eac51c1c8bb2183e9da"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3de9a45d3b2b7d8088c3fbf1ed4395dfeff79d07842217b38df14ef09ce1d8d7"}, + {file = "cryptography-42.0.7-cp37-abi3-win32.whl", hash = "sha256:789caea816c6704f63f6241a519bfa347f72fbd67ba28d04636b7c6b7da94b0b"}, + {file = "cryptography-42.0.7-cp37-abi3-win_amd64.whl", hash = "sha256:8cb8ce7c3347fcf9446f201dc30e2d5a3c898d009126010cbd1f443f28b52678"}, + {file = "cryptography-42.0.7-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:a3a5ac8b56fe37f3125e5b72b61dcde43283e5370827f5233893d461b7360cd4"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:779245e13b9a6638df14641d029add5dc17edbef6ec915688f3acb9e720a5858"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d563795db98b4cd57742a78a288cdbdc9daedac29f2239793071fe114f13785"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:31adb7d06fe4383226c3e963471f6837742889b3c4caa55aac20ad951bc8ffda"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:efd0bf5205240182e0f13bcaea41be4fdf5c22c5129fc7ced4a0282ac86998c9"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a9bc127cdc4ecf87a5ea22a2556cab6c7eda2923f84e4f3cc588e8470ce4e42e"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:3577d029bc3f4827dd5bf8bf7710cac13527b470bbf1820a3f394adb38ed7d5f"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:2e47577f9b18723fa294b0ea9a17d5e53a227867a0a4904a1a076d1646d45ca1"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1a58839984d9cb34c855197043eaae2c187d930ca6d644612843b4fe8513c886"}, + {file = "cryptography-42.0.7-cp39-abi3-win32.whl", hash = "sha256:e6b79d0adb01aae87e8a44c2b64bc3f3fe59515280e00fb6d57a7267a2583cda"}, + {file = "cryptography-42.0.7-cp39-abi3-win_amd64.whl", hash = "sha256:16268d46086bb8ad5bf0a2b5544d8a9ed87a0e33f5e77dd3c3301e63d941a83b"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2954fccea107026512b15afb4aa664a5640cd0af630e2ee3962f2602693f0c82"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:362e7197754c231797ec45ee081f3088a27a47c6c01eff2ac83f60f85a50fe60"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4f698edacf9c9e0371112792558d2f705b5645076cc0aaae02f816a0171770fd"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5482e789294854c28237bba77c4c83be698be740e31a3ae5e879ee5444166582"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e9b2a6309f14c0497f348d08a065d52f3020656f675819fc405fb63bbcd26562"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:d8e3098721b84392ee45af2dd554c947c32cc52f862b6a3ae982dbb90f577f14"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c65f96dad14f8528a447414125e1fc8feb2ad5a272b8f68477abbcc1ea7d94b9"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:36017400817987670037fbb0324d71489b6ead6231c9604f8fc1f7d008087c68"}, + {file = "cryptography-42.0.7.tar.gz", hash = "sha256:ecbfbc00bf55888edda9868a4cf927205de8499e7fabe6c050322298382953f2"}, ] [package.dependencies] @@ -845,6 +950,88 @@ webencodings = "*" doc = ["sphinx", "sphinx_rtd_theme"] test = ["flake8", "isort", "pytest"] +[[package]] +name = "cython" +version = "3.0.10" +description = "The Cython compiler for writing C extensions in the Python language." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7" +files = [ + {file = "Cython-3.0.10-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e876272548d73583e90babda94c1299537006cad7a34e515a06c51b41f8657aa"}, + {file = "Cython-3.0.10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:adc377aa33c3309191e617bf675fdbb51ca727acb9dc1aa23fc698d8121f7e23"}, + {file = "Cython-3.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:401aba1869a57aba2922ccb656a6320447e55ace42709b504c2f8e8b166f46e1"}, + {file = "Cython-3.0.10-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:541fbe725d6534a90b93f8c577eb70924d664b227a4631b90a6e0506d1469591"}, + {file = "Cython-3.0.10-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:86998b01f6a6d48398df8467292c7637e57f7e3a2ca68655367f13f66fed7734"}, + {file = "Cython-3.0.10-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d092c0ddba7e9e530a5c5be4ac06db8360258acc27675d1fc86294a5dc8994c5"}, + {file = "Cython-3.0.10-cp310-cp310-win32.whl", hash = "sha256:3cffb666e649dba23810732497442fb339ee67ba4e0be1f0579991e83fcc2436"}, + {file = "Cython-3.0.10-cp310-cp310-win_amd64.whl", hash = "sha256:9ea31184c7b3a728ef1f81fccb161d8948c05aa86c79f63b74fb6f3ddec860ec"}, + {file = "Cython-3.0.10-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:051069638abfb076900b0c2bcb6facf545655b3f429e80dd14365192074af5a4"}, + {file = "Cython-3.0.10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:712760879600907189c7d0d346851525545484e13cd8b787e94bfd293da8ccf0"}, + {file = "Cython-3.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38d40fa1324ac47c04483d151f5e092406a147eac88a18aec789cf01c089c3f2"}, + {file = "Cython-3.0.10-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5bd49a3a9fdff65446a3e1c2bfc0ec85c6ce4c3cad27cd4ad7ba150a62b7fb59"}, + {file = "Cython-3.0.10-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e8df79b596633b8295eaa48b1157d796775c2bb078f32267d32f3001b687f2fd"}, + {file = "Cython-3.0.10-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bcc9795990e525c192bc5c0775e441d7d56d7a7d02210451e9e13c0448dba51b"}, + {file = "Cython-3.0.10-cp311-cp311-win32.whl", hash = "sha256:09f2000041db482cad3bfce94e1fa3a4c82b0e57390a164c02566cbbda8c4f12"}, + {file = "Cython-3.0.10-cp311-cp311-win_amd64.whl", hash = "sha256:3919a55ec9b6c7db6f68a004c21c05ed540c40dbe459ced5d801d5a1f326a053"}, + {file = "Cython-3.0.10-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8f2864ab5fcd27a346f0b50f901ebeb8f60b25a60a575ccfd982e7f3e9674914"}, + {file = "Cython-3.0.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:407840c56385b9c085826fe300213e0e76ba15d1d47daf4b58569078ecb94446"}, + {file = "Cython-3.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a036d00caa73550a3a976432ef21c1e3fa12637e1616aab32caded35331ae96"}, + {file = "Cython-3.0.10-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9cc6a0e7e23a96dec3f3c9d39690d4281beabd5297855140d0d30855f950275e"}, + {file = "Cython-3.0.10-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a5e14a8c6a8157d2b0cdc2e8e3444905d20a0e78e19d2a097e89fb8b04b51f6b"}, + {file = "Cython-3.0.10-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f8a2b8fa0fd8358bccb5f3304be563c4750aae175100463d212d5ea0ec74cbe0"}, + {file = "Cython-3.0.10-cp312-cp312-win32.whl", hash = "sha256:2d29e617fd23cf4b83afe8f93f2966566c9f565918ad1e86a4502fe825cc0a79"}, + {file = "Cython-3.0.10-cp312-cp312-win_amd64.whl", hash = "sha256:6c5af936940a38c300977b81598d9c0901158f220a58c177820e17e1774f1cf1"}, + {file = "Cython-3.0.10-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:5f465443917d5c0f69825fca3b52b64c74ac3de0143b1fff6db8ba5b48c9fb4a"}, + {file = "Cython-3.0.10-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4fadb84193c25641973666e583df8df4e27c52cdc05ddce7c6f6510d690ba34a"}, + {file = "Cython-3.0.10-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fa9e7786083b6aa61594c16979d621b62e61fcd9c2edd4761641b95c7fb34b2"}, + {file = "Cython-3.0.10-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f4780d0f98ce28191c4d841c4358b5d5e79d96520650910cd59904123821c52d"}, + {file = "Cython-3.0.10-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:32fbad02d1189be75eb96456d9c73f5548078e5338d8fa153ecb0115b6ee279f"}, + {file = "Cython-3.0.10-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:90e2f514fc753b55245351305a399463103ec18666150bb1c36779b9862388e9"}, + {file = "Cython-3.0.10-cp36-cp36m-win32.whl", hash = "sha256:a9c976e9ec429539a4367cb4b24d15a1e46b925976f4341143f49f5f161171f5"}, + {file = "Cython-3.0.10-cp36-cp36m-win_amd64.whl", hash = "sha256:a9bb402674788a7f4061aeef8057632ec440123e74ed0fb425308a59afdfa10e"}, + {file = "Cython-3.0.10-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:206e803598010ecc3813db8748ed685f7beeca6c413f982df9f8a505fce56563"}, + {file = "Cython-3.0.10-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15b6d397f4ee5ad54e373589522af37935a32863f1b23fa8c6922adf833e28e2"}, + {file = "Cython-3.0.10-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a181144c2f893ed8e6a994d43d0b96300bc99873f21e3b7334ca26c61c37b680"}, + {file = "Cython-3.0.10-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b74b700d6a793113d03fb54b63bdbadba6365379424bac7c0470605672769260"}, + {file = "Cython-3.0.10-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:076e9fd4e0ca33c5fa00a7479180dbfb62f17fe928e2909f82da814536e96d2b"}, + {file = "Cython-3.0.10-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:269f06e6961e8591d56e30b46e1a51b6ccb42cab04c29fa3b30d3e8723485fb4"}, + {file = "Cython-3.0.10-cp37-cp37m-win32.whl", hash = "sha256:d4e83a8ceff7af60064da4ccfce0ac82372544dd5392f1b350c34f1b04d0fae6"}, + {file = "Cython-3.0.10-cp37-cp37m-win_amd64.whl", hash = "sha256:40fac59c3a7fbcd9c25aea64c342c890a5e2270ce64a1525e840807800167799"}, + {file = "Cython-3.0.10-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f43a58bf2434870d2fc42ac2e9ff8138c9e00c6251468de279d93fa279e9ba3b"}, + {file = "Cython-3.0.10-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e9a885ec63d3955a08cefc4eec39fefa9fe14989c6e5e2382bd4aeb6bdb9bc3"}, + {file = "Cython-3.0.10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:acfbe0fff364d54906058fc61f2393f38cd7fa07d344d80923937b87e339adcf"}, + {file = "Cython-3.0.10-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8adcde00a8a88fab27509b558cd8c2959ab0c70c65d3814cfea8c68b83fa6dcd"}, + {file = "Cython-3.0.10-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2c9c1e3e78909488f3b16fabae02308423fa6369ed96ab1e250807d344cfffd7"}, + {file = "Cython-3.0.10-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fc6e0faf5b57523b073f0cdefadcaef3a51235d519a0594865925cadb3aeadf0"}, + {file = "Cython-3.0.10-cp38-cp38-win32.whl", hash = "sha256:35f6ede7c74024ed1982832ae61c9fad7cf60cc3f5b8c6a63bb34e38bc291936"}, + {file = "Cython-3.0.10-cp38-cp38-win_amd64.whl", hash = "sha256:950c0c7b770d2a7cec74fb6f5ccc321d0b51d151f48c075c0d0db635a60ba1b5"}, + {file = "Cython-3.0.10-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:077b61ee789e48700e25d4a16daa4258b8e65167136e457174df400cf9b4feab"}, + {file = "Cython-3.0.10-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:64f1f8bba9d8f37c0cffc934792b4ac7c42d0891077127c11deebe9fa0a0f7e4"}, + {file = "Cython-3.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:651a15a8534ebfb9b58cb0b87c269c70984b6f9c88bfe65e4f635f0e3f07dfcd"}, + {file = "Cython-3.0.10-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d10fc9aa82e5e53a0b7fd118f9771199cddac8feb4a6d8350b7d4109085aa775"}, + {file = "Cython-3.0.10-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4f610964ab252a83e573a427e28b103e2f1dd3c23bee54f32319f9e73c3c5499"}, + {file = "Cython-3.0.10-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8c9c4c4f3ab8f8c02817b0e16e8fa7b8cc880f76e9b63fe9c010e60c1a6c2b13"}, + {file = "Cython-3.0.10-cp39-cp39-win32.whl", hash = "sha256:0bac3ccdd4e03924028220c62ae3529e17efa8ca7e9df9330de95de02f582b26"}, + {file = "Cython-3.0.10-cp39-cp39-win_amd64.whl", hash = "sha256:81f356c1c8c0885b8435bfc468025f545c5d764aa9c75ab662616dd1193c331e"}, + {file = "Cython-3.0.10-py2.py3-none-any.whl", hash = "sha256:fcbb679c0b43514d591577fd0d20021c55c240ca9ccafbdb82d3fb95e5edfee2"}, + {file = "Cython-3.0.10.tar.gz", hash = "sha256:dcc96739331fb854dcf503f94607576cfe8488066c61ca50dfd55836f132de99"}, +] + +[[package]] +name = "datetime" +version = "5.5" +description = "This package provides a DateTime data type, as known from Zope. Unless you need to communicate with Zope APIs, you're probably better off using Python's built-in datetime module." +optional = false +python-versions = ">=3.7" +files = [ + {file = "DateTime-5.5-py3-none-any.whl", hash = "sha256:0abf6c51cb4ba7cee775ca46ccc727f3afdde463be28dbbe8803631fefd4a120"}, + {file = "DateTime-5.5.tar.gz", hash = "sha256:21ec6331f87a7fcb57bd7c59e8a68bfffe6fcbf5acdbbc7b356d6a9a020191d3"}, +] + +[package.dependencies] +pytz = "*" +"zope.interface" = "*" + [[package]] name = "debugpy" version = "1.8.1" @@ -1029,6 +1216,17 @@ six = ">=1.9.0" gmpy = ["gmpy"] gmpy2 = ["gmpy2"] +[[package]] +name = "et-xmlfile" +version = "1.1.0" +description = "An implementation of lxml.xmlfile for the standard library" +optional = false +python-versions = ">=3.6" +files = [ + {file = "et_xmlfile-1.1.0-py3-none-any.whl", hash = "sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada"}, + {file = "et_xmlfile-1.1.0.tar.gz", hash = "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c"}, +] + [[package]] name = "exceptiongroup" version = "1.2.1" @@ -1043,6 +1241,29 @@ files = [ [package.extras] test = ["pytest (>=6)"] +[[package]] +name = "exchange-calendars" +version = "4.2.8" +description = "Calendars for securities exchanges" +optional = false +python-versions = "~=3.8" +files = [ + {file = "exchange_calendars-4.2.8-py3-none-any.whl", hash = "sha256:3695afd0608c6507ce3016dfcb68a1698220016a049b45d42b4dfa9ecf85a15c"}, + {file = "exchange_calendars-4.2.8.tar.gz", hash = "sha256:1598b6219a58e7be218c640f389375e39c9c12513c7db82d7591ae56f64467f9"}, +] + +[package.dependencies] +korean-lunar-calendar = "*" +numpy = "*" +pandas = ">=1.1" +pyluach = "*" +python-dateutil = "*" +pytz = "*" +toolz = "*" + +[package.extras] +dev = ["flake8", "hypothesis", "pip-tools", "pytest", "pytest-benchmark", "pytest-xdist"] + [[package]] name = "executing" version = "2.0.1" @@ -1093,13 +1314,13 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc [[package]] name = "filelock" -version = "3.13.4" +version = "3.14.0" description = "A platform independent file lock." optional = false python-versions = ">=3.8" files = [ - {file = "filelock-3.13.4-py3-none-any.whl", hash = "sha256:404e5e9253aa60ad457cae1be07c0f0ca90a63931200a47d9b6a6af84fd7b45f"}, - {file = "filelock-3.13.4.tar.gz", hash = "sha256:d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4"}, + {file = "filelock-3.14.0-py3-none-any.whl", hash = "sha256:43339835842f110ca7ae60f1e1c160714c5a6afd15a2873419ab185334975c0f"}, + {file = "filelock-3.14.0.tar.gz", hash = "sha256:6ea72da3be9b8c82afd3edcf99f2fffbb5076335a5ae4d03248bb5b6c3eae78a"}, ] [package.extras] @@ -1107,15 +1328,58 @@ docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1 testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8.0.1)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] typing = ["typing-extensions (>=4.8)"] +[[package]] +name = "finvizfinance" +version = "0.14.7" +description = "Finviz Finance. Information downloader." +optional = false +python-versions = ">=3.5" +files = [ + {file = "finvizfinance-0.14.7-py3-none-any.whl", hash = "sha256:d55d087d75c4e22bca2a16ef57b4805d500dc380aece847b5aec287ef5f6984a"}, + {file = "finvizfinance-0.14.7.tar.gz", hash = "sha256:5b937fdc803a03493bfbcdbdcb857174a2cb6dc557cc87f791d19e5f4f15ca5a"}, +] + +[package.dependencies] +bs4 = "*" +datetime = "*" +lxml = "*" +pandas = "*" +requests = "*" + +[[package]] +name = "formulaic" +version = "1.0.1" +description = "An implementation of Wilkinson formulas." +optional = false +python-versions = ">=3.7.2" +files = [ + {file = "formulaic-1.0.1-py3-none-any.whl", hash = "sha256:be9e6127b98ba0293654be528fd070ede264f64d0247477c4d5af799b0b12cf2"}, + {file = "formulaic-1.0.1.tar.gz", hash = "sha256:64dd7992a7aa5bbceb1e40679d0f01fc6f0ba12b7d23d78094a88c2edc68fba1"}, +] + +[package.dependencies] +astor = {version = ">=0.8", markers = "python_version < \"3.9\""} +graphlib-backport = {version = ">=1.0.0", markers = "python_version < \"3.9\""} +interface-meta = ">=1.2.0" +numpy = ">=1.16.5" +pandas = ">=1.0" +scipy = ">=1.6" +typing-extensions = ">=4.2.0" +wrapt = ">=1.0" + +[package.extras] +arrow = ["pyarrow (>=1)"] +calculus = ["sympy (>=1.3,!=1.10)"] + [[package]] name = "freezegun" -version = "1.5.0" +version = "1.5.1" description = "Let your Python tests travel through time" optional = false python-versions = ">=3.7" files = [ - {file = "freezegun-1.5.0-py3-none-any.whl", hash = "sha256:ec3f4ba030e34eb6cf7e1e257308aee2c60c3d038ff35996d7475760c9ff3719"}, - {file = "freezegun-1.5.0.tar.gz", hash = "sha256:200a64359b363aa3653d8aac289584078386c7c3da77339d257e46a01fb5c77c"}, + {file = "freezegun-1.5.1-py3-none-any.whl", hash = "sha256:bf111d7138a8abe55ab48a71755673dbaa4ab87f4cff5634a4442dfec34c15f1"}, + {file = "freezegun-1.5.1.tar.gz", hash = "sha256:b29dedfcda6d5e8e083ce71b2b542753ad48cfec44037b3fc79702e2980a89e9"}, ] [package.dependencies] @@ -1123,47 +1387,42 @@ python-dateutil = ">=2.7" [[package]] name = "frozendict" -version = "2.4.2" +version = "2.4.4" description = "A simple immutable dictionary" optional = false python-versions = ">=3.6" files = [ - {file = "frozendict-2.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:19743495b1e92a7e4db56fcd6a5d36ea1d1b0f550822d6fd780e44d58f0b8c18"}, - {file = "frozendict-2.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:81efb4ea854a1c93d954a67389eaf78c508acb2d4768321a835cda2754ec5c01"}, - {file = "frozendict-2.4.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5f1a4d9662b854dce52b560b60f51349905dc871826b8c6be20141a13067a53"}, - {file = "frozendict-2.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1412aeb325e4a28cfe32106c66c046372bb7fd5a9af1748193549c5d01a9e9c1"}, - {file = "frozendict-2.4.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f7ce0535f02eba9746e4e2cf0abef0f0f2051d20fdccf4af31bc3d1adecf5a71"}, - {file = "frozendict-2.4.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:07153e6d2720fa1131bb180ce388c7042affb29561d8bcd1c0d6e683a8beaea2"}, - {file = "frozendict-2.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:f7a90ea6d5248617a1222daef07d22fb146ff07635a36db327e1ce114bf3e304"}, - {file = "frozendict-2.4.2-cp310-cp310-win_arm64.whl", hash = "sha256:20a6f741c92fdeb3766924cde42b8ee445cf568e3be8aa983cb83e9fe5b61e63"}, - {file = "frozendict-2.4.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:146129502cd9d96de64e0c8f7dc4c66422da3d4bfccf891dd80a3821b358a926"}, - {file = "frozendict-2.4.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ac1f74ccf818977abbc1868090c06436b8f06534d306f808f15cffc304ae046"}, - {file = "frozendict-2.4.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a8d2ea4f10505ad15f53ce3742420682d916d0c4d566edb8e1019756e7cea30"}, - {file = "frozendict-2.4.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4a5841681e70d2862ca153543f2912e0bab034bf29e2d3610e86ea42506121c2"}, - {file = "frozendict-2.4.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:d4a10119f17552cbeab48d4ae830ba091c6d47616589618adc31f251184579a7"}, - {file = "frozendict-2.4.2-cp36-cp36m-win_amd64.whl", hash = "sha256:7d13ffe649e9db6f4bb5e107d9be7dfd23e13101bc69f97aa5fa6cbf6aecaadd"}, - {file = "frozendict-2.4.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:19e64630e164a297f83e9a1c69f1cd36fa4b3d1196c1f9fc006a0385aa198ea4"}, - {file = "frozendict-2.4.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bedb0a6587bae53bd53727b92a87c4cf90ad7a7e0bd2db562d439beb6982712e"}, - {file = "frozendict-2.4.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:83cc9d063131fd8adbeb18a473d222b5dc8301cac9505cfe578158f9a9bf55a9"}, - {file = "frozendict-2.4.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:92c46b155ea9eb9ecabc66ba2d9030f2634319f55c6448688965ece094f14b51"}, - {file = "frozendict-2.4.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:f958d40637e0440bce2453019821c94fe86cfc5f3847ae11cd4f02c3548b1d1b"}, - {file = "frozendict-2.4.2-cp37-cp37m-win_amd64.whl", hash = "sha256:ac954be447a907face9b652207fbd943b9b552212890db959ba653e8f1dc3f56"}, - {file = "frozendict-2.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f7e0ff5e84742604a1b42c2de4f1e67630c0868cf52a5c585b54a99e06f6b453"}, - {file = "frozendict-2.4.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:84c36bfa819cd8442f6e0bdb86413c7678b2822a46b1a22cfa0f0dd30d9e5c45"}, - {file = "frozendict-2.4.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cead3bfe70c90c634a9b76807c9d7e75e6c5666ec96fa2cea8e7412ccf22a1f8"}, - {file = "frozendict-2.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3fc6e3158107b5431255978b954758b1041cc70a3b8e7657373110512eb528e3"}, - {file = "frozendict-2.4.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4db1d6cc412bd865cab36723995208b82166a97bc6c724753bcd2b90cf24f164"}, - {file = "frozendict-2.4.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:ff6fb5831539fffb09d71cc0cc0462b1f27c0160cb6c6fa2d1f4c1bc7fffe52a"}, - {file = "frozendict-2.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:79e1c94ad2a925ad5723d82a4134c6d851d5a7bc72b7e9da8b2087c42758a512"}, - {file = "frozendict-2.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:34704f9ffb21448d4b5c0f9239f8f058c0efab4bfdbe2956c5be978fef0b929c"}, - {file = "frozendict-2.4.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5280d685cd1659883a3010dec843afe3065416ae92e453498997d4474a898a39"}, - {file = "frozendict-2.4.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ca09a376114172e4d9918e6d576f58244c45e21f5af1245085699fd3a171c47"}, - {file = "frozendict-2.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:55953aa2acf5bf183c664f3d0f540f8c8ac8f5fa97170f2098d413414318eb2b"}, - {file = "frozendict-2.4.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:476e4857e1d87b05c9102dd5409216ce4716cb7df619e6657429bc99279303cc"}, - {file = "frozendict-2.4.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4a8b298f39242d25770d029588ce9d4f524e9f4edc60d2d34b6178fb07c8a93e"}, - {file = "frozendict-2.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:c157b8a92743a7905b341edb0663044fecdc7780f96c59a2843d3da68d694b90"}, - {file = "frozendict-2.4.2-cp39-cp39-win_arm64.whl", hash = "sha256:cbab325c0a98b2f3ee291b36710623781b4977a3057f9103a7b0f11bcc23b177"}, - {file = "frozendict-2.4.2.tar.gz", hash = "sha256:741779e1d1a2e6bb2c623f78423bd5d14aad35dc0c57e6ccc89e54eaab5f1b8a"}, + {file = "frozendict-2.4.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4a59578d47b3949437519b5c39a016a6116b9e787bb19289e333faae81462e59"}, + {file = "frozendict-2.4.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12a342e439aef28ccec533f0253ea53d75fe9102bd6ea928ff530e76eac38906"}, + {file = "frozendict-2.4.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f79c26dff10ce11dad3b3627c89bb2e87b9dd5958c2b24325f16a23019b8b94"}, + {file = "frozendict-2.4.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:2bd009cf4fc47972838a91e9b83654dc9a095dc4f2bb3a37c3f3124c8a364543"}, + {file = "frozendict-2.4.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:87ebcde21565a14fe039672c25550060d6f6d88cf1f339beac094c3b10004eb0"}, + {file = "frozendict-2.4.4-cp310-cp310-win_amd64.whl", hash = "sha256:fefeb700bc7eb8b4c2dc48704e4221860d254c8989fb53488540bc44e44a1ac2"}, + {file = "frozendict-2.4.4-cp310-cp310-win_arm64.whl", hash = "sha256:4297d694eb600efa429769125a6f910ec02b85606f22f178bafbee309e7d3ec7"}, + {file = "frozendict-2.4.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:812ab17522ba13637826e65454115a914c2da538356e85f43ecea069813e4b33"}, + {file = "frozendict-2.4.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fee9420475bb6ff357000092aa9990c2f6182b2bab15764330f4ad7de2eae49"}, + {file = "frozendict-2.4.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:3148062675536724502c6344d7c485dd4667fdf7980ca9bd05e338ccc0c4471e"}, + {file = "frozendict-2.4.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:78c94991944dd33c5376f720228e5b252ee67faf3bac50ef381adc9e51e90d9d"}, + {file = "frozendict-2.4.4-cp36-cp36m-win_amd64.whl", hash = "sha256:1697793b5f62b416c0fc1d94638ec91ed3aa4ab277f6affa3a95216ecb3af170"}, + {file = "frozendict-2.4.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:199a4d32194f3afed6258de7e317054155bc9519252b568d9cfffde7e4d834e5"}, + {file = "frozendict-2.4.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85375ec6e979e6373bffb4f54576a68bf7497c350861d20686ccae38aab69c0a"}, + {file = "frozendict-2.4.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:2d8536e068d6bf281f23fa835ac07747fb0f8851879dd189e9709f9567408b4d"}, + {file = "frozendict-2.4.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:259528ba6b56fa051bc996f1c4d8b57e30d6dd3bc2f27441891b04babc4b5e73"}, + {file = "frozendict-2.4.4-cp37-cp37m-win_amd64.whl", hash = "sha256:07c3a5dee8bbb84cba770e273cdbf2c87c8e035903af8f781292d72583416801"}, + {file = "frozendict-2.4.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6874fec816b37b6eb5795b00e0574cba261bf59723e2de607a195d5edaff0786"}, + {file = "frozendict-2.4.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c8f92425686323a950337da4b75b4c17a3327b831df8c881df24038d560640d4"}, + {file = "frozendict-2.4.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d58d9a8d9e49662c6dafbea5e641f97decdb3d6ccd76e55e79818415362ba25"}, + {file = "frozendict-2.4.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:93a7b19afb429cbf99d56faf436b45ef2fa8fe9aca89c49eb1610c3bd85f1760"}, + {file = "frozendict-2.4.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2b70b431e3a72d410a2cdf1497b3aba2f553635e0c0f657ce311d841bf8273b6"}, + {file = "frozendict-2.4.4-cp38-cp38-win_amd64.whl", hash = "sha256:e1b941132d79ce72d562a13341d38fc217bc1ee24d8c35a20d754e79ff99e038"}, + {file = "frozendict-2.4.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dc2228874eacae390e63fd4f2bb513b3144066a977dc192163c9f6c7f6de6474"}, + {file = "frozendict-2.4.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63aa49f1919af7d45fb8fd5dec4c0859bc09f46880bd6297c79bb2db2969b63d"}, + {file = "frozendict-2.4.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6bf9260018d653f3cab9bd147bd8592bf98a5c6e338be0491ced3c196c034a3"}, + {file = "frozendict-2.4.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6eb716e6a6d693c03b1d53280a1947716129f5ef9bcdd061db5c17dea44b80fe"}, + {file = "frozendict-2.4.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d13b4310db337f4d2103867c5a05090b22bc4d50ca842093779ef541ea9c9eea"}, + {file = "frozendict-2.4.4-cp39-cp39-win_amd64.whl", hash = "sha256:b3b967d5065872e27b06f785a80c0ed0a45d1f7c9b85223da05358e734d858ca"}, + {file = "frozendict-2.4.4-cp39-cp39-win_arm64.whl", hash = "sha256:4ae8d05c8d0b6134bfb6bfb369d5fa0c4df21eabb5ca7f645af95fdc6689678e"}, + {file = "frozendict-2.4.4.tar.gz", hash = "sha256:3f7c031b26e4ee6a3f786ceb5e3abf1181c4ade92dce1f847da26ea2c96008c7"}, ] [[package]] @@ -1252,6 +1511,17 @@ files = [ {file = "frozenlist-1.4.1.tar.gz", hash = "sha256:c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b"}, ] +[[package]] +name = "graphlib-backport" +version = "1.1.0" +description = "Backport of the Python 3.9 graphlib module for Python 3.6+" +optional = false +python-versions = ">=3.6,<4.0" +files = [ + {file = "graphlib_backport-1.1.0-py3-none-any.whl", hash = "sha256:eccacf9f2126cdf89ce32a6018c88e1ecd3e4898a07568add6e1907a439055ba"}, + {file = "graphlib_backport-1.1.0.tar.gz", hash = "sha256:00a7888b21e5393064a133209cb5d3b3ef0a2096cf023914c9d778dff5644125"}, +] + [[package]] name = "h11" version = "0.14.0" @@ -1346,6 +1616,17 @@ zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] testing = ["jaraco.test (>=5.4)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)", "zipp (>=3.17)"] +[[package]] +name = "inflection" +version = "0.5.1" +description = "A port of Ruby on Rails inflector to Python" +optional = false +python-versions = ">=3.5" +files = [ + {file = "inflection-0.5.1-py2.py3-none-any.whl", hash = "sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2"}, + {file = "inflection-0.5.1.tar.gz", hash = "sha256:1a29730d366e996aaacffb2f1f1cb9593dc38e2ddd30c91250c6dde09ea9b417"}, +] + [[package]] name = "iniconfig" version = "2.0.0" @@ -1368,6 +1649,17 @@ files = [ {file = "installer-0.7.0.tar.gz", hash = "sha256:a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631"}, ] +[[package]] +name = "interface-meta" +version = "1.3.0" +description = "`interface_meta` provides a convenient way to expose an extensible API with enforced method signatures and consistent documentation." +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "interface_meta-1.3.0-py3-none-any.whl", hash = "sha256:de35dc5241431886e709e20a14d6597ed07c9f1e8b4bfcffde2190ca5b700ee8"}, + {file = "interface_meta-1.3.0.tar.gz", hash = "sha256:8a4493f8bdb73fb9655dcd5115bc897e207319e36c8835f39c516a2d7e9d79a1"}, +] + [[package]] name = "ipykernel" version = "6.29.4" @@ -1454,6 +1746,17 @@ files = [ [package.extras] colors = ["colorama (>=0.4.6)"] +[[package]] +name = "itsdangerous" +version = "2.2.0" +description = "Safely pass data to untrusted environments and back." +optional = false +python-versions = ">=3.8" +files = [ + {file = "itsdangerous-2.2.0-py3-none-any.whl", hash = "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef"}, + {file = "itsdangerous-2.2.0.tar.gz", hash = "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173"}, +] + [[package]] name = "jaraco-classes" version = "3.4.0" @@ -1506,15 +1809,26 @@ files = [ test = ["async-timeout", "pytest", "pytest-asyncio (>=0.17)", "pytest-trio", "testpath", "trio"] trio = ["async_generator", "trio"] +[[package]] +name = "joblib" +version = "1.4.2" +description = "Lightweight pipelining with Python functions" +optional = false +python-versions = ">=3.8" +files = [ + {file = "joblib-1.4.2-py3-none-any.whl", hash = "sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6"}, + {file = "joblib-1.4.2.tar.gz", hash = "sha256:2382c5816b2636fbd20a09e0f4e9dad4736765fdfb7dca582943b9c1366b3f0e"}, +] + [[package]] name = "jsonschema" -version = "4.21.1" +version = "4.22.0" description = "An implementation of JSON Schema validation for Python" optional = false python-versions = ">=3.8" files = [ - {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, - {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, + {file = "jsonschema-4.22.0-py3-none-any.whl", hash = "sha256:ff4cfd6b1367a40e7bc6411caec72effadd3db0bbe5017de188f2d6108335802"}, + {file = "jsonschema-4.22.0.tar.gz", hash = "sha256:5b22d434a45935119af990552c862e5d6d564e8f6601206b305a61fdf661a2b7"}, ] [package.dependencies] @@ -1611,167 +1925,206 @@ completion = ["shtab (>=1.1.0)"] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +[[package]] +name = "korean-lunar-calendar" +version = "0.3.1" +description = "Korean Lunar Calendar" +optional = false +python-versions = "*" +files = [ + {file = "korean_lunar_calendar-0.3.1-py3-none-any.whl", hash = "sha256:392757135c492c4f42a604e6038042953c35c6f449dda5f27e3f86a7f9c943e5"}, + {file = "korean_lunar_calendar-0.3.1.tar.gz", hash = "sha256:eb2c485124a061016926bdea6d89efdf9b9fdbf16db55895b6cf1e5bec17b857"}, +] + +[[package]] +name = "linearmodels" +version = "4.25" +description = "Linear Panel, Instrumental Variable, Asset Pricing, and System Regression models for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "linearmodels-4.25-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e8d3b34c62357701b60d043356563c247096ad79b8b95ac9bbafb1820a455f48"}, + {file = "linearmodels-4.25-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b1b2e7e4e27b12e9d5ec4e2de41e9aeaa685405bc37beaff0f080a2ad3e24f61"}, + {file = "linearmodels-4.25-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6e107d3d97819cdc4bfe64c85870e0ed655f2e1bd04911e22127dee0e3fab8d2"}, + {file = "linearmodels-4.25-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:728d82fac702f65cc128742145b3702428b6aed5283450365ec5110f42e883dd"}, + {file = "linearmodels-4.25-cp310-cp310-win_amd64.whl", hash = "sha256:c0aec5de380c4daf0596bb3be647a8cc8d0081c06715465df7a87efced08014e"}, + {file = "linearmodels-4.25-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:db4c313127f3307a7c174ee12d9306fbc8dbb8a585b55234ebfa435fa5dd9ee9"}, + {file = "linearmodels-4.25-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:339f01a68e504db1cccb4be9d4167c38c92ea5700cd3eba03ad0352d869c15eb"}, + {file = "linearmodels-4.25-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f55f68eb675f863f80860526143451f516d9b77c580c0afb6c86f8bf7292da86"}, + {file = "linearmodels-4.25-cp37-cp37m-win32.whl", hash = "sha256:ab9cb6a6fcad05bc5e790341c321713232883a8757aab4c7ce038a0a1af55728"}, + {file = "linearmodels-4.25-cp37-cp37m-win_amd64.whl", hash = "sha256:f9fcb1eaaaf268ffcffbf4c2333bc9634d7a9ecf2ced0b5222bab6a8491d9fc6"}, + {file = "linearmodels-4.25-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:397201c401f1d21bbfa9b2f4c44694c2f8c557d69271c244f43ac2ec5c6f2376"}, + {file = "linearmodels-4.25-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e989cc12320e4cc599f3ceb83e8fa16e27af2584c3f76020bc56c20f76866839"}, + {file = "linearmodels-4.25-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c24f4aa2f44bf9e04606e15851b8874b2c8097f533c47bf11d6dab4954ecc6db"}, + {file = "linearmodels-4.25-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6843e0a8971d4d0539f22967ebf7dc9b381e55f087b6ee7bb32ad7ee728c91a7"}, + {file = "linearmodels-4.25-cp38-cp38-win32.whl", hash = "sha256:cced735e5c645902c3c2003826d75ff04dd5caa60096918e8f7f4fc0eb79ed31"}, + {file = "linearmodels-4.25-cp38-cp38-win_amd64.whl", hash = "sha256:4d5d401d1c2c9b8c2e8fd2dd8b064e513bf4cb0d6a30b9198f33f67163cbc7d8"}, + {file = "linearmodels-4.25-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3bd3ddc0753d29fcd26ff80d87957904f7d91c3f7d898c8839b13a226ee5fede"}, + {file = "linearmodels-4.25-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:11b3f66bdf17434b04be916f16ddb319bf8dae54b89b8c268cb37a8ad7b0f4ee"}, + {file = "linearmodels-4.25-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5a1b691e840189a2ed17796a806960166e30e86e6970c80e60fe10762456005"}, + {file = "linearmodels-4.25-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4abd59e3dda544807676d94ba1ea2ceba87624ab30491ea561430f31379229bc"}, + {file = "linearmodels-4.25-cp39-cp39-win32.whl", hash = "sha256:061f2970191fcee284f600d5cc84a556a411729494325af8c557047ab733ae46"}, + {file = "linearmodels-4.25-cp39-cp39-win_amd64.whl", hash = "sha256:19f8cb6237b61badb687a4a020527552a70e077cf1b303959c33faeb8cdde285"}, + {file = "linearmodels-4.25.tar.gz", hash = "sha256:a73e94195f486f74be6176809a515bb498b5371d8acb9e4ae6f0e59a7c28210a"}, +] + +[package.dependencies] +Cython = ">=0.29.21" +formulaic = "*" +mypy-extensions = ">=0.4" +numpy = ">=1.16" +pandas = ">=0.24" +patsy = "*" +property-cached = ">=1.6.3" +pyhdfe = ">=0.1" +scipy = ">=1.2" +statsmodels = ">=0.11" + [[package]] name = "lxml" -version = "5.2.1" +version = "5.2.2" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." optional = false python-versions = ">=3.6" files = [ - {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1f7785f4f789fdb522729ae465adcaa099e2a3441519df750ebdccc481d961a1"}, - {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6cc6ee342fb7fa2471bd9b6d6fdfc78925a697bf5c2bcd0a302e98b0d35bfad3"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:794f04eec78f1d0e35d9e0c36cbbb22e42d370dda1609fb03bcd7aeb458c6377"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817d420c60a5183953c783b0547d9eb43b7b344a2c46f69513d5952a78cddf3"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2213afee476546a7f37c7a9b4ad4d74b1e112a6fafffc9185d6d21f043128c81"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b070bbe8d3f0f6147689bed981d19bbb33070225373338df755a46893528104a"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e02c5175f63effbd7c5e590399c118d5db6183bbfe8e0d118bdb5c2d1b48d937"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:3dc773b2861b37b41a6136e0b72a1a44689a9c4c101e0cddb6b854016acc0aa8"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:d7520db34088c96cc0e0a3ad51a4fd5b401f279ee112aa2b7f8f976d8582606d"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:bcbf4af004f98793a95355980764b3d80d47117678118a44a80b721c9913436a"}, - {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2b44bec7adf3e9305ce6cbfa47a4395667e744097faed97abb4728748ba7d47"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1c5bb205e9212d0ebddf946bc07e73fa245c864a5f90f341d11ce7b0b854475d"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2c9d147f754b1b0e723e6afb7ba1566ecb162fe4ea657f53d2139bbf894d050a"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:3545039fa4779be2df51d6395e91a810f57122290864918b172d5dc7ca5bb433"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a91481dbcddf1736c98a80b122afa0f7296eeb80b72344d7f45dc9f781551f56"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:2ddfe41ddc81f29a4c44c8ce239eda5ade4e7fc305fb7311759dd6229a080052"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:a7baf9ffc238e4bf401299f50e971a45bfcc10a785522541a6e3179c83eabf0a"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:31e9a882013c2f6bd2f2c974241bf4ba68c85eba943648ce88936d23209a2e01"}, - {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0a15438253b34e6362b2dc41475e7f80de76320f335e70c5528b7148cac253a1"}, - {file = "lxml-5.2.1-cp310-cp310-win32.whl", hash = "sha256:6992030d43b916407c9aa52e9673612ff39a575523c5f4cf72cdef75365709a5"}, - {file = "lxml-5.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:da052e7962ea2d5e5ef5bc0355d55007407087392cf465b7ad84ce5f3e25fe0f"}, - {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:70ac664a48aa64e5e635ae5566f5227f2ab7f66a3990d67566d9907edcbbf867"}, - {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1ae67b4e737cddc96c99461d2f75d218bdf7a0c3d3ad5604d1f5e7464a2f9ffe"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f18a5a84e16886898e51ab4b1d43acb3083c39b14c8caeb3589aabff0ee0b270"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6f2c8372b98208ce609c9e1d707f6918cc118fea4e2c754c9f0812c04ca116d"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:394ed3924d7a01b5bd9a0d9d946136e1c2f7b3dc337196d99e61740ed4bc6fe1"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d077bc40a1fe984e1a9931e801e42959a1e6598edc8a3223b061d30fbd26bbc"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:764b521b75701f60683500d8621841bec41a65eb739b8466000c6fdbc256c240"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:3a6b45da02336895da82b9d472cd274b22dc27a5cea1d4b793874eead23dd14f"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:5ea7b6766ac2dfe4bcac8b8595107665a18ef01f8c8343f00710b85096d1b53a"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:e196a4ff48310ba62e53a8e0f97ca2bca83cdd2fe2934d8b5cb0df0a841b193a"}, - {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:200e63525948e325d6a13a76ba2911f927ad399ef64f57898cf7c74e69b71095"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:dae0ed02f6b075426accbf6b2863c3d0a7eacc1b41fb40f2251d931e50188dad"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:ab31a88a651039a07a3ae327d68ebdd8bc589b16938c09ef3f32a4b809dc96ef"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:df2e6f546c4df14bc81f9498bbc007fbb87669f1bb707c6138878c46b06f6510"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5dd1537e7cc06efd81371f5d1a992bd5ab156b2b4f88834ca852de4a8ea523fa"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9b9ec9c9978b708d488bec36b9e4c94d88fd12ccac3e62134a9d17ddba910ea9"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:8e77c69d5892cb5ba71703c4057091e31ccf534bd7f129307a4d084d90d014b8"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:a8d5c70e04aac1eda5c829a26d1f75c6e5286c74743133d9f742cda8e53b9c2f"}, - {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c94e75445b00319c1fad60f3c98b09cd63fe1134a8a953dcd48989ef42318534"}, - {file = "lxml-5.2.1-cp311-cp311-win32.whl", hash = "sha256:4951e4f7a5680a2db62f7f4ab2f84617674d36d2d76a729b9a8be4b59b3659be"}, - {file = "lxml-5.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:5c670c0406bdc845b474b680b9a5456c561c65cf366f8db5a60154088c92d102"}, - {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:abc25c3cab9ec7fcd299b9bcb3b8d4a1231877e425c650fa1c7576c5107ab851"}, - {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6935bbf153f9a965f1e07c2649c0849d29832487c52bb4a5c5066031d8b44fd5"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d793bebb202a6000390a5390078e945bbb49855c29c7e4d56a85901326c3b5d9"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afd5562927cdef7c4f5550374acbc117fd4ecc05b5007bdfa57cc5355864e0a4"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0e7259016bc4345a31af861fdce942b77c99049d6c2107ca07dc2bba2435c1d9"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:530e7c04f72002d2f334d5257c8a51bf409db0316feee7c87e4385043be136af"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59689a75ba8d7ffca577aefd017d08d659d86ad4585ccc73e43edbfc7476781a"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:f9737bf36262046213a28e789cc82d82c6ef19c85a0cf05e75c670a33342ac2c"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:3a74c4f27167cb95c1d4af1c0b59e88b7f3e0182138db2501c353555f7ec57f4"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:68a2610dbe138fa8c5826b3f6d98a7cfc29707b850ddcc3e21910a6fe51f6ca0"}, - {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:f0a1bc63a465b6d72569a9bba9f2ef0334c4e03958e043da1920299100bc7c08"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c2d35a1d047efd68027817b32ab1586c1169e60ca02c65d428ae815b593e65d4"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:79bd05260359170f78b181b59ce871673ed01ba048deef4bf49a36ab3e72e80b"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:865bad62df277c04beed9478fe665b9ef63eb28fe026d5dedcb89b537d2e2ea6"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:44f6c7caff88d988db017b9b0e4ab04934f11e3e72d478031efc7edcac6c622f"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:71e97313406ccf55d32cc98a533ee05c61e15d11b99215b237346171c179c0b0"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:057cdc6b86ab732cf361f8b4d8af87cf195a1f6dc5b0ff3de2dced242c2015e0"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:f3bbbc998d42f8e561f347e798b85513ba4da324c2b3f9b7969e9c45b10f6169"}, - {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:491755202eb21a5e350dae00c6d9a17247769c64dcf62d8c788b5c135e179dc4"}, - {file = "lxml-5.2.1-cp312-cp312-win32.whl", hash = "sha256:8de8f9d6caa7f25b204fc861718815d41cbcf27ee8f028c89c882a0cf4ae4134"}, - {file = "lxml-5.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:f2a9efc53d5b714b8df2b4b3e992accf8ce5bbdfe544d74d5c6766c9e1146a3a"}, - {file = "lxml-5.2.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:70a9768e1b9d79edca17890175ba915654ee1725975d69ab64813dd785a2bd5c"}, - {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c38d7b9a690b090de999835f0443d8aa93ce5f2064035dfc48f27f02b4afc3d0"}, - {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5670fb70a828663cc37552a2a85bf2ac38475572b0e9b91283dc09efb52c41d1"}, - {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:958244ad566c3ffc385f47dddde4145088a0ab893504b54b52c041987a8c1863"}, - {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b6241d4eee5f89453307c2f2bfa03b50362052ca0af1efecf9fef9a41a22bb4f"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2a66bf12fbd4666dd023b6f51223aed3d9f3b40fef06ce404cb75bafd3d89536"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:9123716666e25b7b71c4e1789ec829ed18663152008b58544d95b008ed9e21e9"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:0c3f67e2aeda739d1cc0b1102c9a9129f7dc83901226cc24dd72ba275ced4218"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5d5792e9b3fb8d16a19f46aa8208987cfeafe082363ee2745ea8b643d9cc5b45"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_aarch64.whl", hash = "sha256:88e22fc0a6684337d25c994381ed8a1580a6f5ebebd5ad41f89f663ff4ec2885"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_ppc64le.whl", hash = "sha256:21c2e6b09565ba5b45ae161b438e033a86ad1736b8c838c766146eff8ceffff9"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_s390x.whl", hash = "sha256:afbbdb120d1e78d2ba8064a68058001b871154cc57787031b645c9142b937a62"}, - {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:627402ad8dea044dde2eccde4370560a2b750ef894c9578e1d4f8ffd54000461"}, - {file = "lxml-5.2.1-cp36-cp36m-win32.whl", hash = "sha256:e89580a581bf478d8dcb97d9cd011d567768e8bc4095f8557b21c4d4c5fea7d0"}, - {file = "lxml-5.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:59565f10607c244bc4c05c0c5fa0c190c990996e0c719d05deec7030c2aa8289"}, - {file = "lxml-5.2.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:857500f88b17a6479202ff5fe5f580fc3404922cd02ab3716197adf1ef628029"}, - {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56c22432809085b3f3ae04e6e7bdd36883d7258fcd90e53ba7b2e463efc7a6af"}, - {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a55ee573116ba208932e2d1a037cc4b10d2c1cb264ced2184d00b18ce585b2c0"}, - {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:6cf58416653c5901e12624e4013708b6e11142956e7f35e7a83f1ab02f3fe456"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:64c2baa7774bc22dd4474248ba16fe1a7f611c13ac6123408694d4cc93d66dbd"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:74b28c6334cca4dd704e8004cba1955af0b778cf449142e581e404bd211fb619"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:7221d49259aa1e5a8f00d3d28b1e0b76031655ca74bb287123ef56c3db92f213"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3dbe858ee582cbb2c6294dc85f55b5f19c918c2597855e950f34b660f1a5ede6"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:04ab5415bf6c86e0518d57240a96c4d1fcfc3cb370bb2ac2a732b67f579e5a04"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:6ab833e4735a7e5533711a6ea2df26459b96f9eec36d23f74cafe03631647c41"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f443cdef978430887ed55112b491f670bba6462cea7a7742ff8f14b7abb98d75"}, - {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"}, - {file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"}, - {file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"}, - {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"}, - {file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"}, - {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"}, - {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3d30321949861404323c50aebeb1943461a67cd51d4200ab02babc58bd06a86"}, - {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:b560e3aa4b1d49e0e6c847d72665384db35b2f5d45f8e6a5c0072e0283430533"}, - {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:058a1308914f20784c9f4674036527e7c04f7be6fb60f5d61353545aa7fcb739"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:adfb84ca6b87e06bc6b146dc7da7623395db1e31621c4785ad0658c5028b37d7"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:417d14450f06d51f363e41cace6488519038f940676ce9664b34ebf5653433a5"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a2dfe7e2473f9b59496247aad6e23b405ddf2e12ef0765677b0081c02d6c2c0b"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bf2e2458345d9bffb0d9ec16557d8858c9c88d2d11fed53998512504cd9df49b"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:58278b29cb89f3e43ff3e0c756abbd1518f3ee6adad9e35b51fb101c1c1daaec"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:64641a6068a16201366476731301441ce93457eb8452056f570133a6ceb15fca"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:78bfa756eab503673991bdcf464917ef7845a964903d3302c5f68417ecdc948c"}, - {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:11a04306fcba10cd9637e669fd73aa274c1c09ca64af79c041aa820ea992b637"}, - {file = "lxml-5.2.1-cp38-cp38-win32.whl", hash = "sha256:66bc5eb8a323ed9894f8fa0ee6cb3e3fb2403d99aee635078fd19a8bc7a5a5da"}, - {file = "lxml-5.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:9676bfc686fa6a3fa10cd4ae6b76cae8be26eb5ec6811d2a325636c460da1806"}, - {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cf22b41fdae514ee2f1691b6c3cdeae666d8b7fa9434de445f12bbeee0cf48dd"}, - {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ec42088248c596dbd61d4ae8a5b004f97a4d91a9fd286f632e42e60b706718d7"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd53553ddad4a9c2f1f022756ae64abe16da1feb497edf4d9f87f99ec7cf86bd"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feaa45c0eae424d3e90d78823f3828e7dc42a42f21ed420db98da2c4ecf0a2cb"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddc678fb4c7e30cf830a2b5a8d869538bc55b28d6c68544d09c7d0d8f17694dc"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:853e074d4931dbcba7480d4dcab23d5c56bd9607f92825ab80ee2bd916edea53"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc4691d60512798304acb9207987e7b2b7c44627ea88b9d77489bbe3e6cc3bd4"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:beb72935a941965c52990f3a32d7f07ce869fe21c6af8b34bf6a277b33a345d3"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_ppc64le.whl", hash = "sha256:6588c459c5627fefa30139be4d2e28a2c2a1d0d1c265aad2ba1935a7863a4913"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_s390x.whl", hash = "sha256:588008b8497667f1ddca7c99f2f85ce8511f8f7871b4a06ceede68ab62dff64b"}, - {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6787b643356111dfd4032b5bffe26d2f8331556ecb79e15dacb9275da02866e"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7c17b64b0a6ef4e5affae6a3724010a7a66bda48a62cfe0674dabd46642e8b54"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:27aa20d45c2e0b8cd05da6d4759649170e8dfc4f4e5ef33a34d06f2d79075d57"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d4f2cc7060dc3646632d7f15fe68e2fa98f58e35dd5666cd525f3b35d3fed7f8"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff46d772d5f6f73564979cd77a4fffe55c916a05f3cb70e7c9c0590059fb29ef"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:96323338e6c14e958d775700ec8a88346014a85e5de73ac7967db0367582049b"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:52421b41ac99e9d91934e4d0d0fe7da9f02bfa7536bb4431b4c05c906c8c6919"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:7a7efd5b6d3e30d81ec68ab8a88252d7c7c6f13aaa875009fe3097eb4e30b84c"}, - {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0ed777c1e8c99b63037b91f9d73a6aad20fd035d77ac84afcc205225f8f41188"}, - {file = "lxml-5.2.1-cp39-cp39-win32.whl", hash = "sha256:644df54d729ef810dcd0f7732e50e5ad1bd0a135278ed8d6bcb06f33b6b6f708"}, - {file = "lxml-5.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:9ca66b8e90daca431b7ca1408cae085d025326570e57749695d6a01454790e95"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9b0ff53900566bc6325ecde9181d89afadc59c5ffa39bddf084aaedfe3b06a11"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fd6037392f2d57793ab98d9e26798f44b8b4da2f2464388588f48ac52c489ea1"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b9c07e7a45bb64e21df4b6aa623cb8ba214dfb47d2027d90eac197329bb5e94"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3249cc2989d9090eeac5467e50e9ec2d40704fea9ab72f36b034ea34ee65ca98"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f42038016852ae51b4088b2862126535cc4fc85802bfe30dea3500fdfaf1864e"}, - {file = "lxml-5.2.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:533658f8fbf056b70e434dff7e7aa611bcacb33e01f75de7f821810e48d1bb66"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:622020d4521e22fb371e15f580d153134bfb68d6a429d1342a25f051ec72df1c"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:efa7b51824aa0ee957ccd5a741c73e6851de55f40d807f08069eb4c5a26b2baa"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c6ad0fbf105f6bcc9300c00010a2ffa44ea6f555df1a2ad95c88f5656104817"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e233db59c8f76630c512ab4a4daf5a5986da5c3d5b44b8e9fc742f2a24dbd460"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6a014510830df1475176466b6087fc0c08b47a36714823e58d8b8d7709132a96"}, - {file = "lxml-5.2.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:d38c8f50ecf57f0463399569aa388b232cf1a2ffb8f0a9a5412d0db57e054860"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5aea8212fb823e006b995c4dda533edcf98a893d941f173f6c9506126188860d"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff097ae562e637409b429a7ac958a20aab237a0378c42dabaa1e3abf2f896e5f"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f5d65c39f16717a47c36c756af0fb36144069c4718824b7533f803ecdf91138"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3d0c3dd24bb4605439bf91068598d00c6370684f8de4a67c2992683f6c309d6b"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e32be23d538753a8adb6c85bd539f5fd3b15cb987404327c569dfc5fd8366e85"}, - {file = "lxml-5.2.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:cc518cea79fd1e2f6c90baafa28906d4309d24f3a63e801d855e7424c5b34144"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a0af35bd8ebf84888373630f73f24e86bf016642fb8576fba49d3d6b560b7cbc"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8aca2e3a72f37bfc7b14ba96d4056244001ddcc18382bd0daa087fd2e68a354"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ca1e8188b26a819387b29c3895c47a5e618708fe6f787f3b1a471de2c4a94d9"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c8ba129e6d3b0136a0f50345b2cb3db53f6bda5dd8c7f5d83fbccba97fb5dcb5"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e998e304036198b4f6914e6a1e2b6f925208a20e2042563d9734881150c6c246"}, - {file = "lxml-5.2.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d3be9b2076112e51b323bdf6d5a7f8a798de55fb8d95fcb64bd179460cdc0704"}, - {file = "lxml-5.2.1.tar.gz", hash = "sha256:3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306"}, + {file = "lxml-5.2.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:364d03207f3e603922d0d3932ef363d55bbf48e3647395765f9bfcbdf6d23632"}, + {file = "lxml-5.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:50127c186f191b8917ea2fb8b206fbebe87fd414a6084d15568c27d0a21d60db"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:74e4f025ef3db1c6da4460dd27c118d8cd136d0391da4e387a15e48e5c975147"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:981a06a3076997adf7c743dcd0d7a0415582661e2517c7d961493572e909aa1d"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aef5474d913d3b05e613906ba4090433c515e13ea49c837aca18bde190853dff"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1e275ea572389e41e8b039ac076a46cb87ee6b8542df3fff26f5baab43713bca"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5b65529bb2f21ac7861a0e94fdbf5dc0daab41497d18223b46ee8515e5ad297"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:bcc98f911f10278d1daf14b87d65325851a1d29153caaf146877ec37031d5f36"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:b47633251727c8fe279f34025844b3b3a3e40cd1b198356d003aa146258d13a2"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:fbc9d316552f9ef7bba39f4edfad4a734d3d6f93341232a9dddadec4f15d425f"}, + {file = "lxml-5.2.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:13e69be35391ce72712184f69000cda04fc89689429179bc4c0ae5f0b7a8c21b"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3b6a30a9ab040b3f545b697cb3adbf3696c05a3a68aad172e3fd7ca73ab3c835"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a233bb68625a85126ac9f1fc66d24337d6e8a0f9207b688eec2e7c880f012ec0"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:dfa7c241073d8f2b8e8dbc7803c434f57dbb83ae2a3d7892dd068d99e96efe2c"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1a7aca7964ac4bb07680d5c9d63b9d7028cace3e2d43175cb50bba8c5ad33316"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:ae4073a60ab98529ab8a72ebf429f2a8cc612619a8c04e08bed27450d52103c0"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:ffb2be176fed4457e445fe540617f0252a72a8bc56208fd65a690fdb1f57660b"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:e290d79a4107d7d794634ce3e985b9ae4f920380a813717adf61804904dc4393"}, + {file = "lxml-5.2.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:96e85aa09274955bb6bd483eaf5b12abadade01010478154b0ec70284c1b1526"}, + {file = "lxml-5.2.2-cp310-cp310-win32.whl", hash = "sha256:f956196ef61369f1685d14dad80611488d8dc1ef00be57c0c5a03064005b0f30"}, + {file = "lxml-5.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:875a3f90d7eb5c5d77e529080d95140eacb3c6d13ad5b616ee8095447b1d22e7"}, + {file = "lxml-5.2.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:45f9494613160d0405682f9eee781c7e6d1bf45f819654eb249f8f46a2c22545"}, + {file = "lxml-5.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b0b3f2df149efb242cee2ffdeb6674b7f30d23c9a7af26595099afaf46ef4e88"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d28cb356f119a437cc58a13f8135ab8a4c8ece18159eb9194b0d269ec4e28083"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:657a972f46bbefdbba2d4f14413c0d079f9ae243bd68193cb5061b9732fa54c1"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b74b9ea10063efb77a965a8d5f4182806fbf59ed068b3c3fd6f30d2ac7bee734"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:07542787f86112d46d07d4f3c4e7c760282011b354d012dc4141cc12a68cef5f"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:303f540ad2dddd35b92415b74b900c749ec2010e703ab3bfd6660979d01fd4ed"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:2eb2227ce1ff998faf0cd7fe85bbf086aa41dfc5af3b1d80867ecfe75fb68df3"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:1d8a701774dfc42a2f0b8ccdfe7dbc140500d1049e0632a611985d943fcf12df"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:56793b7a1a091a7c286b5f4aa1fe4ae5d1446fe742d00cdf2ffb1077865db10d"}, + {file = "lxml-5.2.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:eb00b549b13bd6d884c863554566095bf6fa9c3cecb2e7b399c4bc7904cb33b5"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1a2569a1f15ae6c8c64108a2cd2b4a858fc1e13d25846be0666fc144715e32ab"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:8cf85a6e40ff1f37fe0f25719aadf443686b1ac7652593dc53c7ef9b8492b115"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:d237ba6664b8e60fd90b8549a149a74fcc675272e0e95539a00522e4ca688b04"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0b3f5016e00ae7630a4b83d0868fca1e3d494c78a75b1c7252606a3a1c5fc2ad"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23441e2b5339bc54dc949e9e675fa35efe858108404ef9aa92f0456929ef6fe8"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:2fb0ba3e8566548d6c8e7dd82a8229ff47bd8fb8c2da237607ac8e5a1b8312e5"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:79d1fb9252e7e2cfe4de6e9a6610c7cbb99b9708e2c3e29057f487de5a9eaefa"}, + {file = "lxml-5.2.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:6dcc3d17eac1df7859ae01202e9bb11ffa8c98949dcbeb1069c8b9a75917e01b"}, + {file = "lxml-5.2.2-cp311-cp311-win32.whl", hash = "sha256:4c30a2f83677876465f44c018830f608fa3c6a8a466eb223535035fbc16f3438"}, + {file = "lxml-5.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:49095a38eb333aaf44c06052fd2ec3b8f23e19747ca7ec6f6c954ffea6dbf7be"}, + {file = "lxml-5.2.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:7429e7faa1a60cad26ae4227f4dd0459efde239e494c7312624ce228e04f6391"}, + {file = "lxml-5.2.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:50ccb5d355961c0f12f6cf24b7187dbabd5433f29e15147a67995474f27d1776"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc911208b18842a3a57266d8e51fc3cfaccee90a5351b92079beed912a7914c2"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:33ce9e786753743159799fdf8e92a5da351158c4bfb6f2db0bf31e7892a1feb5"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ec87c44f619380878bd49ca109669c9f221d9ae6883a5bcb3616785fa8f94c97"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08ea0f606808354eb8f2dfaac095963cb25d9d28e27edcc375d7b30ab01abbf6"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75a9632f1d4f698b2e6e2e1ada40e71f369b15d69baddb8968dcc8e683839b18"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:74da9f97daec6928567b48c90ea2c82a106b2d500f397eeb8941e47d30b1ca85"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:0969e92af09c5687d769731e3f39ed62427cc72176cebb54b7a9d52cc4fa3b73"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:9164361769b6ca7769079f4d426a41df6164879f7f3568be9086e15baca61466"}, + {file = "lxml-5.2.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:d26a618ae1766279f2660aca0081b2220aca6bd1aa06b2cf73f07383faf48927"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab67ed772c584b7ef2379797bf14b82df9aa5f7438c5b9a09624dd834c1c1aaf"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:3d1e35572a56941b32c239774d7e9ad724074d37f90c7a7d499ab98761bd80cf"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:8268cbcd48c5375f46e000adb1390572c98879eb4f77910c6053d25cc3ac2c67"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e282aedd63c639c07c3857097fc0e236f984ceb4089a8b284da1c526491e3f3d"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfdc2bfe69e9adf0df4915949c22a25b39d175d599bf98e7ddf620a13678585"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:4aefd911793b5d2d7a921233a54c90329bf3d4a6817dc465f12ffdfe4fc7b8fe"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:8b8df03a9e995b6211dafa63b32f9d405881518ff1ddd775db4e7b98fb545e1c"}, + {file = "lxml-5.2.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f11ae142f3a322d44513de1018b50f474f8f736bc3cd91d969f464b5bfef8836"}, + {file = "lxml-5.2.2-cp312-cp312-win32.whl", hash = "sha256:16a8326e51fcdffc886294c1e70b11ddccec836516a343f9ed0f82aac043c24a"}, + {file = "lxml-5.2.2-cp312-cp312-win_amd64.whl", hash = "sha256:bbc4b80af581e18568ff07f6395c02114d05f4865c2812a1f02f2eaecf0bfd48"}, + {file = "lxml-5.2.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e3d9d13603410b72787579769469af730c38f2f25505573a5888a94b62b920f8"}, + {file = "lxml-5.2.2-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:38b67afb0a06b8575948641c1d6d68e41b83a3abeae2ca9eed2ac59892b36706"}, + {file = "lxml-5.2.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c689d0d5381f56de7bd6966a4541bff6e08bf8d3871bbd89a0c6ab18aa699573"}, + {file = "lxml-5.2.2-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:cf2a978c795b54c539f47964ec05e35c05bd045db5ca1e8366988c7f2fe6b3ce"}, + {file = "lxml-5.2.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:739e36ef7412b2bd940f75b278749106e6d025e40027c0b94a17ef7968d55d56"}, + {file = "lxml-5.2.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:d8bbcd21769594dbba9c37d3c819e2d5847656ca99c747ddb31ac1701d0c0ed9"}, + {file = "lxml-5.2.2-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:2304d3c93f2258ccf2cf7a6ba8c761d76ef84948d87bf9664e14d203da2cd264"}, + {file = "lxml-5.2.2-cp36-cp36m-win32.whl", hash = "sha256:02437fb7308386867c8b7b0e5bc4cd4b04548b1c5d089ffb8e7b31009b961dc3"}, + {file = "lxml-5.2.2-cp36-cp36m-win_amd64.whl", hash = "sha256:edcfa83e03370032a489430215c1e7783128808fd3e2e0a3225deee278585196"}, + {file = "lxml-5.2.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:28bf95177400066596cdbcfc933312493799382879da504633d16cf60bba735b"}, + {file = "lxml-5.2.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3a745cc98d504d5bd2c19b10c79c61c7c3df9222629f1b6210c0368177589fb8"}, + {file = "lxml-5.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b336b0416828022bfd5a2e3083e7f5ba54b96242159f83c7e3eebaec752f1716"}, + {file = "lxml-5.2.2-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:4bc6cb140a7a0ad1f7bc37e018d0ed690b7b6520ade518285dc3171f7a117905"}, + {file = "lxml-5.2.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:57f0a0bbc9868e10ebe874e9f129d2917750adf008fe7b9c1598c0fbbfdde6a6"}, + {file = "lxml-5.2.2-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:60499fe961b21264e17a471ec296dcbf4365fbea611bf9e303ab69db7159ce61"}, + {file = "lxml-5.2.2-cp37-cp37m-win32.whl", hash = "sha256:d9b342c76003c6b9336a80efcc766748a333573abf9350f4094ee46b006ec18f"}, + {file = "lxml-5.2.2-cp37-cp37m-win_amd64.whl", hash = "sha256:b16db2770517b8799c79aa80f4053cd6f8b716f21f8aca962725a9565ce3ee40"}, + {file = "lxml-5.2.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7ed07b3062b055d7a7f9d6557a251cc655eed0b3152b76de619516621c56f5d3"}, + {file = "lxml-5.2.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f60fdd125d85bf9c279ffb8e94c78c51b3b6a37711464e1f5f31078b45002421"}, + {file = "lxml-5.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a7e24cb69ee5f32e003f50e016d5fde438010c1022c96738b04fc2423e61706"}, + {file = "lxml-5.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23cfafd56887eaed93d07bc4547abd5e09d837a002b791e9767765492a75883f"}, + {file = "lxml-5.2.2-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:19b4e485cd07b7d83e3fe3b72132e7df70bfac22b14fe4bf7a23822c3a35bff5"}, + {file = "lxml-5.2.2-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:7ce7ad8abebe737ad6143d9d3bf94b88b93365ea30a5b81f6877ec9c0dee0a48"}, + {file = "lxml-5.2.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e49b052b768bb74f58c7dda4e0bdf7b79d43a9204ca584ffe1fb48a6f3c84c66"}, + {file = "lxml-5.2.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d14a0d029a4e176795cef99c056d58067c06195e0c7e2dbb293bf95c08f772a3"}, + {file = "lxml-5.2.2-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:be49ad33819d7dcc28a309b86d4ed98e1a65f3075c6acd3cd4fe32103235222b"}, + {file = "lxml-5.2.2-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:a6d17e0370d2516d5bb9062c7b4cb731cff921fc875644c3d751ad857ba9c5b1"}, + {file = "lxml-5.2.2-cp38-cp38-win32.whl", hash = "sha256:5b8c041b6265e08eac8a724b74b655404070b636a8dd6d7a13c3adc07882ef30"}, + {file = "lxml-5.2.2-cp38-cp38-win_amd64.whl", hash = "sha256:f61efaf4bed1cc0860e567d2ecb2363974d414f7f1f124b1df368bbf183453a6"}, + {file = "lxml-5.2.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:fb91819461b1b56d06fa4bcf86617fac795f6a99d12239fb0c68dbeba41a0a30"}, + {file = "lxml-5.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d4ed0c7cbecde7194cd3228c044e86bf73e30a23505af852857c09c24e77ec5d"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54401c77a63cc7d6dc4b4e173bb484f28a5607f3df71484709fe037c92d4f0ed"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:625e3ef310e7fa3a761d48ca7ea1f9d8718a32b1542e727d584d82f4453d5eeb"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:519895c99c815a1a24a926d5b60627ce5ea48e9f639a5cd328bda0515ea0f10c"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c7079d5eb1c1315a858bbf180000757db8ad904a89476653232db835c3114001"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:343ab62e9ca78094f2306aefed67dcfad61c4683f87eee48ff2fd74902447726"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:cd9e78285da6c9ba2d5c769628f43ef66d96ac3085e59b10ad4f3707980710d3"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_28_ppc64le.whl", hash = "sha256:546cf886f6242dff9ec206331209db9c8e1643ae642dea5fdbecae2453cb50fd"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_28_s390x.whl", hash = "sha256:02f6a8eb6512fdc2fd4ca10a49c341c4e109aa6e9448cc4859af5b949622715a"}, + {file = "lxml-5.2.2-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:339ee4a4704bc724757cd5dd9dc8cf4d00980f5d3e6e06d5847c1b594ace68ab"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0a028b61a2e357ace98b1615fc03f76eb517cc028993964fe08ad514b1e8892d"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:f90e552ecbad426eab352e7b2933091f2be77115bb16f09f78404861c8322981"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d83e2d94b69bf31ead2fa45f0acdef0757fa0458a129734f59f67f3d2eb7ef32"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a02d3c48f9bb1e10c7788d92c0c7db6f2002d024ab6e74d6f45ae33e3d0288a3"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6d68ce8e7b2075390e8ac1e1d3a99e8b6372c694bbe612632606d1d546794207"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:453d037e09a5176d92ec0fd282e934ed26d806331a8b70ab431a81e2fbabf56d"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:3b019d4ee84b683342af793b56bb35034bd749e4cbdd3d33f7d1107790f8c472"}, + {file = "lxml-5.2.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:cb3942960f0beb9f46e2a71a3aca220d1ca32feb5a398656be934320804c0df9"}, + {file = "lxml-5.2.2-cp39-cp39-win32.whl", hash = "sha256:ac6540c9fff6e3813d29d0403ee7a81897f1d8ecc09a8ff84d2eea70ede1cdbf"}, + {file = "lxml-5.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:610b5c77428a50269f38a534057444c249976433f40f53e3b47e68349cca1425"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b537bd04d7ccd7c6350cdaaaad911f6312cbd61e6e6045542f781c7f8b2e99d2"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4820c02195d6dfb7b8508ff276752f6b2ff8b64ae5d13ebe02e7667e035000b9"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2a09f6184f17a80897172863a655467da2b11151ec98ba8d7af89f17bf63dae"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:76acba4c66c47d27c8365e7c10b3d8016a7da83d3191d053a58382311a8bf4e1"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b128092c927eaf485928cec0c28f6b8bead277e28acf56800e972aa2c2abd7a2"}, + {file = "lxml-5.2.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ae791f6bd43305aade8c0e22f816b34f3b72b6c820477aab4d18473a37e8090b"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a2f6a1bc2460e643785a2cde17293bd7a8f990884b822f7bca47bee0a82fc66b"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e8d351ff44c1638cb6e980623d517abd9f580d2e53bfcd18d8941c052a5a009"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bec4bd9133420c5c52d562469c754f27c5c9e36ee06abc169612c959bd7dbb07"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:55ce6b6d803890bd3cc89975fca9de1dff39729b43b73cb15ddd933b8bc20484"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:8ab6a358d1286498d80fe67bd3d69fcbc7d1359b45b41e74c4a26964ca99c3f8"}, + {file = "lxml-5.2.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:06668e39e1f3c065349c51ac27ae430719d7806c026fec462e5693b08b95696b"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9cd5323344d8ebb9fb5e96da5de5ad4ebab993bbf51674259dbe9d7a18049525"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89feb82ca055af0fe797a2323ec9043b26bc371365847dbe83c7fd2e2f181c34"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e481bba1e11ba585fb06db666bfc23dbe181dbafc7b25776156120bf12e0d5a6"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:9d6c6ea6a11ca0ff9cd0390b885984ed31157c168565702959c25e2191674a14"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3d98de734abee23e61f6b8c2e08a88453ada7d6486dc7cdc82922a03968928db"}, + {file = "lxml-5.2.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:69ab77a1373f1e7563e0fb5a29a8440367dec051da6c7405333699d07444f511"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:34e17913c431f5ae01d8658dbf792fdc457073dcdfbb31dc0cc6ab256e664a8d"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05f8757b03208c3f50097761be2dea0aba02e94f0dc7023ed73a7bb14ff11eb0"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a520b4f9974b0a0a6ed73c2154de57cdfd0c8800f4f15ab2b73238ffed0b36e"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5e097646944b66207023bc3c634827de858aebc226d5d4d6d16f0b77566ea182"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b5e4ef22ff25bfd4ede5f8fb30f7b24446345f3e79d9b7455aef2836437bc38a"}, + {file = "lxml-5.2.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:ff69a9a0b4b17d78170c73abe2ab12084bdf1691550c5629ad1fe7849433f324"}, + {file = "lxml-5.2.2.tar.gz", hash = "sha256:bb2dc4898180bea79863d5487e5f9c7c34297414bad54bcd0f0852aee9cfdb87"}, ] [package.extras] @@ -2040,38 +2393,38 @@ files = [ [[package]] name = "mypy" -version = "1.9.0" +version = "1.10.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" files = [ - {file = "mypy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8a67616990062232ee4c3952f41c779afac41405806042a8126fe96e098419f"}, - {file = "mypy-1.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d357423fa57a489e8c47b7c85dfb96698caba13d66e086b412298a1a0ea3b0ed"}, - {file = "mypy-1.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49c87c15aed320de9b438ae7b00c1ac91cd393c1b854c2ce538e2a72d55df150"}, - {file = "mypy-1.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:48533cdd345c3c2e5ef48ba3b0d3880b257b423e7995dada04248725c6f77374"}, - {file = "mypy-1.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:4d3dbd346cfec7cb98e6cbb6e0f3c23618af826316188d587d1c1bc34f0ede03"}, - {file = "mypy-1.9.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:653265f9a2784db65bfca694d1edd23093ce49740b2244cde583aeb134c008f3"}, - {file = "mypy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a3c007ff3ee90f69cf0a15cbcdf0995749569b86b6d2f327af01fd1b8aee9dc"}, - {file = "mypy-1.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2418488264eb41f69cc64a69a745fad4a8f86649af4b1041a4c64ee61fc61129"}, - {file = "mypy-1.9.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:68edad3dc7d70f2f17ae4c6c1b9471a56138ca22722487eebacfd1eb5321d612"}, - {file = "mypy-1.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:85ca5fcc24f0b4aeedc1d02f93707bccc04733f21d41c88334c5482219b1ccb3"}, - {file = "mypy-1.9.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aceb1db093b04db5cd390821464504111b8ec3e351eb85afd1433490163d60cd"}, - {file = "mypy-1.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0235391f1c6f6ce487b23b9dbd1327b4ec33bb93934aa986efe8a9563d9349e6"}, - {file = "mypy-1.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4d5ddc13421ba3e2e082a6c2d74c2ddb3979c39b582dacd53dd5d9431237185"}, - {file = "mypy-1.9.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:190da1ee69b427d7efa8aa0d5e5ccd67a4fb04038c380237a0d96829cb157913"}, - {file = "mypy-1.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:fe28657de3bfec596bbeef01cb219833ad9d38dd5393fc649f4b366840baefe6"}, - {file = "mypy-1.9.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e54396d70be04b34f31d2edf3362c1edd023246c82f1730bbf8768c28db5361b"}, - {file = "mypy-1.9.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5e6061f44f2313b94f920e91b204ec600982961e07a17e0f6cd83371cb23f5c2"}, - {file = "mypy-1.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81a10926e5473c5fc3da8abb04119a1f5811a236dc3a38d92015cb1e6ba4cb9e"}, - {file = "mypy-1.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b685154e22e4e9199fc95f298661deea28aaede5ae16ccc8cbb1045e716b3e04"}, - {file = "mypy-1.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:5d741d3fc7c4da608764073089e5f58ef6352bedc223ff58f2f038c2c4698a89"}, - {file = "mypy-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:587ce887f75dd9700252a3abbc9c97bbe165a4a630597845c61279cf32dfbf02"}, - {file = "mypy-1.9.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f88566144752999351725ac623471661c9d1cd8caa0134ff98cceeea181789f4"}, - {file = "mypy-1.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61758fabd58ce4b0720ae1e2fea5cfd4431591d6d590b197775329264f86311d"}, - {file = "mypy-1.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e49499be624dead83927e70c756970a0bc8240e9f769389cdf5714b0784ca6bf"}, - {file = "mypy-1.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:571741dc4194b4f82d344b15e8837e8c5fcc462d66d076748142327626a1b6e9"}, - {file = "mypy-1.9.0-py3-none-any.whl", hash = "sha256:a260627a570559181a9ea5de61ac6297aa5af202f06fd7ab093ce74e7181e43e"}, - {file = "mypy-1.9.0.tar.gz", hash = "sha256:3cc5da0127e6a478cddd906068496a97a7618a21ce9b54bde5bf7e539c7af974"}, + {file = "mypy-1.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:da1cbf08fb3b851ab3b9523a884c232774008267b1f83371ace57f412fe308c2"}, + {file = "mypy-1.10.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:12b6bfc1b1a66095ab413160a6e520e1dc076a28f3e22f7fb25ba3b000b4ef99"}, + {file = "mypy-1.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e36fb078cce9904c7989b9693e41cb9711e0600139ce3970c6ef814b6ebc2b2"}, + {file = "mypy-1.10.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2b0695d605ddcd3eb2f736cd8b4e388288c21e7de85001e9f85df9187f2b50f9"}, + {file = "mypy-1.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:cd777b780312ddb135bceb9bc8722a73ec95e042f911cc279e2ec3c667076051"}, + {file = "mypy-1.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3be66771aa5c97602f382230165b856c231d1277c511c9a8dd058be4784472e1"}, + {file = "mypy-1.10.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8b2cbaca148d0754a54d44121b5825ae71868c7592a53b7292eeb0f3fdae95ee"}, + {file = "mypy-1.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ec404a7cbe9fc0e92cb0e67f55ce0c025014e26d33e54d9e506a0f2d07fe5de"}, + {file = "mypy-1.10.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e22e1527dc3d4aa94311d246b59e47f6455b8729f4968765ac1eacf9a4760bc7"}, + {file = "mypy-1.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:a87dbfa85971e8d59c9cc1fcf534efe664d8949e4c0b6b44e8ca548e746a8d53"}, + {file = "mypy-1.10.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a781f6ad4bab20eef8b65174a57e5203f4be627b46291f4589879bf4e257b97b"}, + {file = "mypy-1.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b808e12113505b97d9023b0b5e0c0705a90571c6feefc6f215c1df9381256e30"}, + {file = "mypy-1.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f55583b12156c399dce2df7d16f8a5095291354f1e839c252ec6c0611e86e2e"}, + {file = "mypy-1.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4cf18f9d0efa1b16478c4c129eabec36148032575391095f73cae2e722fcf9d5"}, + {file = "mypy-1.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:bc6ac273b23c6b82da3bb25f4136c4fd42665f17f2cd850771cb600bdd2ebeda"}, + {file = "mypy-1.10.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9fd50226364cd2737351c79807775136b0abe084433b55b2e29181a4c3c878c0"}, + {file = "mypy-1.10.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f90cff89eea89273727d8783fef5d4a934be2fdca11b47def50cf5d311aff727"}, + {file = "mypy-1.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fcfc70599efde5c67862a07a1aaf50e55bce629ace26bb19dc17cece5dd31ca4"}, + {file = "mypy-1.10.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:075cbf81f3e134eadaf247de187bd604748171d6b79736fa9b6c9685b4083061"}, + {file = "mypy-1.10.0-cp38-cp38-win_amd64.whl", hash = "sha256:3f298531bca95ff615b6e9f2fc0333aae27fa48052903a0ac90215021cdcfa4f"}, + {file = "mypy-1.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fa7ef5244615a2523b56c034becde4e9e3f9b034854c93639adb667ec9ec2976"}, + {file = "mypy-1.10.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3236a4c8f535a0631f85f5fcdffba71c7feeef76a6002fcba7c1a8e57c8be1ec"}, + {file = "mypy-1.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a2b5cdbb5dd35aa08ea9114436e0d79aceb2f38e32c21684dcf8e24e1e92821"}, + {file = "mypy-1.10.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92f93b21c0fe73dc00abf91022234c79d793318b8a96faac147cd579c1671746"}, + {file = "mypy-1.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:28d0e038361b45f099cc086d9dd99c15ff14d0188f44ac883010e172ce86c38a"}, + {file = "mypy-1.10.0-py3-none-any.whl", hash = "sha256:f8c083976eb530019175aabadb60921e73b4f45736760826aa1689dda8208aee"}, + {file = "mypy-1.10.0.tar.gz", hash = "sha256:3d087fcbec056c4ee34974da493a826ce316947485cef3901f511848e687c131"}, ] [package.dependencies] @@ -2096,6 +2449,26 @@ files = [ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, ] +[[package]] +name = "nasdaq-data-link" +version = "1.0.4" +description = "Package for Nasdaq Data Link API access" +optional = false +python-versions = ">= 3.7" +files = [ + {file = "Nasdaq Data Link-1.0.4.tar.gz", hash = "sha256:7beae38ff0b376db24a50d6b8445c94832ebdd88737f6aafbc81a7dbdda25ca1"}, + {file = "Nasdaq_Data_Link-1.0.4-py2.py3-none-any.whl", hash = "sha256:214a620551da1c7521476839fb96f932234d4d78e7ba44310722709ca37b0691"}, +] + +[package.dependencies] +inflection = ">=0.3.1" +more-itertools = "*" +numpy = ">=1.8" +pandas = ">=0.14" +python-dateutil = "*" +requests = ">=2.7.0" +six = "*" + [[package]] name = "nbformat" version = "5.10.4" @@ -2179,51 +2552,6 @@ files = [ {file = "numpy-1.24.4.tar.gz", hash = "sha256:80f5e3a4e498641401868df4208b74581206afbee7cf7b8329daae82676d9463"}, ] -[[package]] -name = "numpy" -version = "1.26.4" -description = "Fundamental package for array computing in Python" -optional = false -python-versions = ">=3.9" -files = [ - {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, - {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, - {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, - {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, - {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, - {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, - {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, - {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, - {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, - {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, - {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, -] - [[package]] name = "openbb" version = "4.1.7" @@ -2236,28 +2564,45 @@ files = [ ] [package.dependencies] +openbb-alpha-vantage = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"alpha-vantage\" or extra == \"all\""} openbb-benzinga = ">=1.1.5,<2.0.0" +openbb-biztoc = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"biztoc\" or extra == \"all\""} +openbb-cboe = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"cboe\" or extra == \"all\""} +openbb-charting = {version = ">=2.0.3,<3.0.0", optional = true, markers = "extra == \"charting\" or extra == \"all\""} openbb-commodity = ">=1.0.4,<2.0.0" openbb-core = ">=1.1.6,<2.0.0" openbb-crypto = ">=1.1.5,<2.0.0" openbb-currency = ">=1.1.5,<2.0.0" openbb-derivatives = ">=1.1.5,<2.0.0" +openbb-ecb = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"ecb\" or extra == \"all\""} +openbb-econometrics = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"econometrics\" or extra == \"all\""} openbb-economy = ">=1.1.5,<2.0.0" openbb-equity = ">=1.1.5,<2.0.0" openbb-etf = ">=1.1.5,<2.0.0" openbb-federal-reserve = ">=1.1.5,<2.0.0" +openbb-finra = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"finra\" or extra == \"all\""} +openbb-finviz = {version = ">=1.0.4,<2.0.0", optional = true, markers = "extra == \"finviz\" or extra == \"all\""} openbb-fixedincome = ">=1.1.5,<2.0.0" openbb-fmp = ">=1.1.5,<2.0.0" openbb-fred = ">=1.1.5,<2.0.0" +openbb-government-us = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"government-us\" or extra == \"all\""} openbb-index = ">=1.1.5,<2.0.0" openbb-intrinio = ">=1.1.5,<2.0.0" +openbb-nasdaq = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"nasdaq\" or extra == \"all\""} openbb-news = ">=1.1.5,<2.0.0" openbb-oecd = ">=1.1.5,<2.0.0" openbb-polygon = ">=1.1.5,<2.0.0" +openbb-quantitative = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"quantitative\" or extra == \"all\""} openbb-regulators = ">=1.1.5,<2.0.0" openbb-sec = ">=1.1.5,<2.0.0" +openbb-seeking-alpha = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"seeking-alpha\" or extra == \"all\""} +openbb-stockgrid = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"stockgrid\" or extra == \"all\""} +openbb-technical = {version = ">=1.1.6,<2.0.0", optional = true, markers = "extra == \"technical\" or extra == \"all\""} openbb-tiingo = ">=1.1.5,<2.0.0" +openbb-tmx = {version = ">=1.0.2,<2.0.0", optional = true, markers = "extra == \"tmx\" or extra == \"all\""} +openbb-tradier = {version = ">=1.0.2,<2.0.0", optional = true, markers = "extra == \"tradier\" or extra == \"all\""} openbb-tradingeconomics = ">=1.1.5,<2.0.0" +openbb-wsj = {version = ">=1.1.5,<2.0.0", optional = true, markers = "extra == \"wsj\" or extra == \"all\""} openbb-yfinance = ">=1.1.5,<2.0.0" [package.extras] @@ -2280,6 +2625,20 @@ tmx = ["openbb-tmx (>=1.0.2,<2.0.0)"] tradier = ["openbb-tradier (>=1.0.2,<2.0.0)"] wsj = ["openbb-wsj (>=1.1.5,<2.0.0)"] +[[package]] +name = "openbb-alpha-vantage" +version = "1.1.5" +description = "Alpha Vantage extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_alpha_vantage-1.1.5-py3-none-any.whl", hash = "sha256:9cbcdb553d51f8fb8e47a15eb9d1572fe9dbcae95ccc1c1aac60faf41e5d71fc"}, + {file = "openbb_alpha_vantage-1.1.5.tar.gz", hash = "sha256:ab1dfe24d545cf210325303dd6ccfac3f5fa02f7d42a67e4077436a0c4d02a0b"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" + [[package]] name = "openbb-benzinga" version = "1.1.5" @@ -2294,6 +2653,37 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-biztoc" +version = "1.1.5" +description = "" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_biztoc-1.1.5-py3-none-any.whl", hash = "sha256:42f1a3315656afd910917c3f714ead760e7ba65815bd41f08b8dd8e337a7f541"}, + {file = "openbb_biztoc-1.1.5.tar.gz", hash = "sha256:b431ffdd1ae6328c5c8b1d2f4ac081cf89bf100bb6cb96843005341605835d59"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +requests-cache = ">=1.1.0,<2.0.0" + +[[package]] +name = "openbb-cboe" +version = "1.1.5" +description = "CBOE extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_cboe-1.1.5-py3-none-any.whl", hash = "sha256:0ec183c6ae89a8b7d296a35c43b7676a3c510a3cb2088f3af819c9f113f7e663"}, + {file = "openbb_cboe-1.1.5.tar.gz", hash = "sha256:74d939b80d64fe4f0909cf9a30aabf0f7453385144285be27ff829cee64d74b7"}, +] + +[package.dependencies] +aiohttp-client-cache = ">=0.10.0,<0.11.0" +aiosqlite = ">=0.19.0,<0.20.0" +openbb-core = ">=1.1.6,<2.0.0" + [[package]] name = "openbb-charting" version = "2.0.3" @@ -2428,6 +2818,39 @@ tox = ">=4.11.3,<5.0.0" types-python-dateutil = ">=2.8.19.14,<3.0.0.0" types-toml = ">=0.10.8.7,<0.11.0.0" +[[package]] +name = "openbb-ecb" +version = "1.1.5" +description = "ECB extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_ecb-1.1.5-py3-none-any.whl", hash = "sha256:2468a1ccf2847e01e488af66e13972f194b20cf5165c68b7d8a66a2cb8918a0c"}, + {file = "openbb_ecb-1.1.5.tar.gz", hash = "sha256:5a78360a5ee23eeb54735f0b02f4c12672aab903f552ffc6a26df2a10b3550c5"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +xmltodict = ">=0.13.0,<0.14.0" + +[[package]] +name = "openbb-econometrics" +version = "1.1.5" +description = "Econometrics Toolkit for OpenBB" +optional = false +python-versions = "<3.12,>=3.8" +files = [ + {file = "openbb_econometrics-1.1.5-py3-none-any.whl", hash = "sha256:abc1bad230c134a9829f8fbe065c3148e76fc2133f3cd02339f4ea80b8f229d5"}, + {file = "openbb_econometrics-1.1.5.tar.gz", hash = "sha256:9877e2012e3cdf3902eeda89b247a0c7b6bc6a4ca35c1177bef7dc39ead7ebc4"}, +] + +[package.dependencies] +arch = ">=5.5.0,<6.0.0" +linearmodels = "<=4.25" +openbb-core = ">=1.1.6,<2.0.0" +scipy = ">=1.10.1,<2.0.0" +statsmodels = ">=0.14.0,<0.15.0" + [[package]] name = "openbb-economy" version = "1.1.5" @@ -2484,6 +2907,35 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-finra" +version = "1.1.5" +description = "FINRA extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_finra-1.1.5-py3-none-any.whl", hash = "sha256:fa79eb330ff5a0ead3d5ccfe33e23a3b12ddc658dc1149d63f50fca1b0642569"}, + {file = "openbb_finra-1.1.5.tar.gz", hash = "sha256:4c236e071bb6c17ea6da801648073027e4d8f59b2cdcbd8300be35b0ad853d95"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" + +[[package]] +name = "openbb-finviz" +version = "1.0.4" +description = "Finviz extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_finviz-1.0.4-py3-none-any.whl", hash = "sha256:239910705fabcf600112c0a64ab30c71e021ee28d328348a6cca8907a7ad9c9a"}, + {file = "openbb_finviz-1.0.4.tar.gz", hash = "sha256:f26b77c99a72f9b9f283c44a1e2a6ba99082fa4c104bf3f201c676019881e8d6"}, +] + +[package.dependencies] +finvizfinance = "0.14.7" +openbb-core = ">=1.1.6,<2.0.0" + [[package]] name = "openbb-fixedincome" version = "1.1.5" @@ -2526,6 +2978,21 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-government-us" +version = "1.1.5" +description = "US Government Data Extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_government_us-1.1.5-py3-none-any.whl", hash = "sha256:208c8e29902479ed72df990eb2f52bf180e7472c079e51575ac1f02220256299"}, + {file = "openbb_government_us-1.1.5.tar.gz", hash = "sha256:338ff63f1d0466e4dad69bc4556d33091df38ff79ccb14dae1a6fc98b44ca425"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +random-user-agent = ">=1.0.1,<2.0.0" + [[package]] name = "openbb-index" version = "1.1.5" @@ -2555,6 +3022,22 @@ files = [ openbb-core = ">=1.1.6,<2.0.0" requests-cache = ">=1.1.0,<2.0.0" +[[package]] +name = "openbb-nasdaq" +version = "1.1.6" +description = "Nasdaq extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_nasdaq-1.1.6-py3-none-any.whl", hash = "sha256:3608ef138fcec8ee689e000e8ff6f4439477f16764e8dd91e7f1510f92e2416a"}, + {file = "openbb_nasdaq-1.1.6.tar.gz", hash = "sha256:acc75cddf19ca26d9aa4862ab611e7ad504a3e03f8b7b879bb2c0d0d7cca0cdf"}, +] + +[package.dependencies] +nasdaq-data-link = ">=1.0.4,<2.0.0" +openbb-core = ">=1.1.6,<2.0.0" +random-user-agent = ">=1.0.1,<2.0.0" + [[package]] name = "openbb-news" version = "1.1.5" @@ -2599,6 +3082,23 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-quantitative" +version = "1.1.5" +description = "Quantitative Analysis extension for OpenBB" +optional = false +python-versions = "<3.12,>=3.8" +files = [ + {file = "openbb_quantitative-1.1.5-py3-none-any.whl", hash = "sha256:60f9013d08966463a4e4f5ee7169a2a9656517e178fc3cebe599e033cdfd5876"}, + {file = "openbb_quantitative-1.1.5.tar.gz", hash = "sha256:9a7bde31e98941baefe79a1e1c74bd5d8efca9dd5a2e489eec9d1d4ea0252518"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +pandas-ta = ">=0.3.14b,<0.4.0" +scipy = ">=1.10.1,<2.0.0" +statsmodels = ">=0.14.0,<0.15.0" + [[package]] name = "openbb-regulators" version = "1.1.5" @@ -2630,6 +3130,53 @@ pytest-freezegun = ">=0.4.2,<0.5.0" requests-cache = ">=1.1.0,<2.0.0" xmltodict = ">=0.13.0,<0.14.0" +[[package]] +name = "openbb-seeking-alpha" +version = "1.1.5" +description = "Seeking Alpha extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_seeking_alpha-1.1.5-py3-none-any.whl", hash = "sha256:771804f494dfa468dd54574b3d3046266b565b6fe29d63ab2142ddab54276d7b"}, + {file = "openbb_seeking_alpha-1.1.5.tar.gz", hash = "sha256:cb026c9fc65c1ac2a57b8de5db6fd8c1244c61bf4573e42bccf249a03d6da700"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" + +[[package]] +name = "openbb-stockgrid" +version = "1.1.5" +description = "stockgrid extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_stockgrid-1.1.5-py3-none-any.whl", hash = "sha256:c7899750aa60c1d62efc4dfc9011a80aaa7322528440f8833078b4853990a809"}, + {file = "openbb_stockgrid-1.1.5.tar.gz", hash = "sha256:910c4e980014ee54bad4d08a50300bf10e62999170858a34631e7d88e26e4eb3"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +pytest-freezegun = ">=0.4.2,<0.5.0" + +[[package]] +name = "openbb-technical" +version = "1.1.6" +description = "Technical Analysis extension for OpenBB" +optional = false +python-versions = "<3.12,>=3.8" +files = [ + {file = "openbb_technical-1.1.6-py3-none-any.whl", hash = "sha256:7d08c679aeef995e02e71f0c0c4348fe090b3b331d6985058424eec7894eb789"}, + {file = "openbb_technical-1.1.6.tar.gz", hash = "sha256:29a9c693dfca672ec36a3f376c96107d308ceb491c619588cb8b50e378ca0ba8"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" +pandas-ta = ">=0.3.14b,<0.4.0" +scikit-learn = ">=1.3.1,<2.0.0" +scipy = ">=1.10.1,<2.0.0" +statsmodels = ">=0.14.0,<0.15.0" + [[package]] name = "openbb-tiingo" version = "1.1.5" @@ -2644,6 +3191,38 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-tmx" +version = "1.0.2" +description = "Unofficial TMX data provider extension for the OpenBB Platform - Public Canadian markets data for Python and Fast API." +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_tmx-1.0.2-py3-none-any.whl", hash = "sha256:4a12b522b3b06c2b8ecfc82c56790913240523689897287fea65cffbe51a065f"}, + {file = "openbb_tmx-1.0.2.tar.gz", hash = "sha256:c226a6b8b3d0528df644423cd18b8645e4842571f3307f70d3db8092d85278b1"}, +] + +[package.dependencies] +aiohttp-client-cache = ">=0.10.0,<0.11.0" +aiosqlite = ">=0.19.0,<0.20.0" +exchange-calendars = ">=4.2.8,<5.0.0" +openbb-core = ">=1.1.6,<2.0.0" +random-user-agent = ">=1.0.1,<2.0.0" + +[[package]] +name = "openbb-tradier" +version = "1.0.2" +description = "Tradier Provider Extension for the OpenBB Platform" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_tradier-1.0.2-py3-none-any.whl", hash = "sha256:bb75539c0771632d1f0c547b5d66bb382e2aa5efc8cf6458d367e2d5522ed6ce"}, + {file = "openbb_tradier-1.0.2.tar.gz", hash = "sha256:52211fdbbd95d4fc7d3bd99873ee05b13116b013ea0302c66002071d7392d0a2"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" + [[package]] name = "openbb-tradingeconomics" version = "1.1.5" @@ -2658,6 +3237,20 @@ files = [ [package.dependencies] openbb-core = ">=1.1.6,<2.0.0" +[[package]] +name = "openbb-wsj" +version = "1.1.5" +description = "wsj extension for OpenBB" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "openbb_wsj-1.1.5-py3-none-any.whl", hash = "sha256:4441f02409c6b2885a09efb8ef110d85903e6a155c2f77fc7b77591e9a56313b"}, + {file = "openbb_wsj-1.1.5.tar.gz", hash = "sha256:ffd23fb607d9155b934ae9db304f2be1dc1b8e5a5de63f4f3f670584e94a88c0"}, +] + +[package.dependencies] +openbb-core = ">=1.1.6,<2.0.0" + [[package]] name = "openbb-yfinance" version = "1.1.5" @@ -2673,6 +3266,20 @@ files = [ openbb-core = ">=1.1.6,<2.0.0" yfinance = ">=0.2.27,<0.3.0" +[[package]] +name = "openpyxl" +version = "3.1.2" +description = "A Python library to read/write Excel 2010 xlsx/xlsm files" +optional = false +python-versions = ">=3.6" +files = [ + {file = "openpyxl-3.1.2-py2.py3-none-any.whl", hash = "sha256:f91456ead12ab3c6c2e9491cf33ba6d08357d802192379bb482f1033ade496f5"}, + {file = "openpyxl-3.1.2.tar.gz", hash = "sha256:a6f5977418eff3b2d5500d54d9db50c8277a368436f4e4f8ddb1be3422870184"}, +] + +[package.dependencies] +et-xmlfile = "*" + [[package]] name = "packaging" version = "24.0" @@ -2720,8 +3327,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.20.3", markers = "python_version < \"3.10\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, ] python-dateutil = ">=2.8.2" @@ -2825,12 +3432,12 @@ files = [ [[package]] name = "peewee" -version = "3.17.3" +version = "3.17.5" description = "a little orm" optional = false python-versions = "*" files = [ - {file = "peewee-3.17.3.tar.gz", hash = "sha256:ef15f90b628e41a584be8306cdc3243c51f73ce88b06154d9572f6d0284a0169"}, + {file = "peewee-3.17.5.tar.gz", hash = "sha256:e1b6a64192207fd3ddb4e1188054820f42aef0aadfa749e3981af3c119a76420"}, ] [[package]] @@ -2987,13 +3594,13 @@ type = ["mypy (>=1.8)"] [[package]] name = "plotly" -version = "5.21.0" +version = "5.22.0" description = "An open-source, interactive data visualization library for Python" optional = false python-versions = ">=3.8" files = [ - {file = "plotly-5.21.0-py3-none-any.whl", hash = "sha256:a33f41fd5922e45b2b253f795b200d14452eb625790bb72d0a72cf1328a6abbf"}, - {file = "plotly-5.21.0.tar.gz", hash = "sha256:69243f8c165d4be26c0df1c6f0b7b258e2dfeefe032763404ad7e7fb7d7c2073"}, + {file = "plotly-5.22.0-py3-none-any.whl", hash = "sha256:68fc1901f098daeb233cc3dd44ec9dc31fb3ca4f4e53189344199c43496ed006"}, + {file = "plotly-5.22.0.tar.gz", hash = "sha256:859fdadbd86b5770ae2466e542b761b247d1c6b49daed765b95bb8c7063e7469"}, ] [package.dependencies] @@ -3017,13 +3624,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "poetry" -version = "1.8.2" +version = "1.8.3" description = "Python dependency management and packaging made easy." optional = false -python-versions = ">=3.8,<4.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "poetry-1.8.2-py3-none-any.whl", hash = "sha256:b42b400d9a803af6e788a30a6f3e9998020b77860e28df20647eb10b6f414910"}, - {file = "poetry-1.8.2.tar.gz", hash = "sha256:49cceb3838104647c3e1021f3a4f13c6053704cc18d33f849a90fe687a29cb73"}, + {file = "poetry-1.8.3-py3-none-any.whl", hash = "sha256:88191c69b08d06f9db671b793d68f40048e8904c0718404b63dcc2b5aec62d13"}, + {file = "poetry-1.8.3.tar.gz", hash = "sha256:67f4eb68288eab41e841cc71a00d26cf6bdda9533022d0189a145a34d0a35f48"}, ] [package.dependencies] @@ -3038,7 +3645,7 @@ installer = ">=0.7.0,<0.8.0" keyring = ">=24.0.0,<25.0.0" packaging = ">=23.1" pexpect = ">=4.7.0,<5.0.0" -pkginfo = ">=1.9.4,<2.0.0" +pkginfo = ">=1.10,<2.0" platformdirs = ">=3.0.0,<5" poetry-core = "1.9.0" poetry-plugin-export = ">=1.6.0,<2.0.0" @@ -3065,18 +3672,18 @@ files = [ [[package]] name = "poetry-plugin-export" -version = "1.7.1" +version = "1.8.0" description = "Poetry plugin to export the dependencies to various formats" optional = false -python-versions = ">=3.8,<4.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "poetry_plugin_export-1.7.1-py3-none-any.whl", hash = "sha256:b2258e53ae0d369a73806f957ed0e726eb95c571a0ce8b1f273da686528cc1da"}, - {file = "poetry_plugin_export-1.7.1.tar.gz", hash = "sha256:cf62cfb6218a904290ba6db3bc1a24aa076d10f81c48c6e48b2ded430131e22e"}, + {file = "poetry_plugin_export-1.8.0-py3-none-any.whl", hash = "sha256:adbe232cfa0cc04991ea3680c865cf748bff27593b9abcb1f35fb50ed7ba2c22"}, + {file = "poetry_plugin_export-1.8.0.tar.gz", hash = "sha256:1fa6168a85d59395d835ca564bc19862a7c76061e60c3e7dfaec70d50937fc61"}, ] [package.dependencies] -poetry = ">=1.8.0,<2.0.0" -poetry-core = ">=1.7.0,<2.0.0" +poetry = ">=1.8.0,<3.0.0" +poetry-core = ">=1.7.0,<3.0.0" [[package]] name = "posthog" @@ -3133,6 +3740,17 @@ files = [ [package.dependencies] wcwidth = "*" +[[package]] +name = "property-cached" +version = "1.6.4" +description = "A decorator for caching properties in classes (forked from cached-property)." +optional = false +python-versions = ">= 3.5" +files = [ + {file = "property-cached-1.6.4.zip", hash = "sha256:3e9c4ef1ed3653909147510481d7df62a3cfb483461a6986a6f1dcd09b2ebb73"}, + {file = "property_cached-1.6.4-py2.py3-none-any.whl", hash = "sha256:135fc059ec969c1646424a0db15e7fbe1b5f8c36c0006d0b3c91ba568c11e7d8"}, +] + [[package]] name = "psutil" version = "5.9.8" @@ -3337,19 +3955,37 @@ toml = ["tomli (>=1.2.3)"] [[package]] name = "pygments" -version = "2.17.2" +version = "2.18.0" description = "Pygments is a syntax highlighting package written in Python." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, - {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, ] [package.extras] -plugins = ["importlib-metadata"] windows-terminal = ["colorama (>=0.4.6)"] +[[package]] +name = "pyhdfe" +version = "0.2.0" +description = "High dimensional fixed effect absorption with Python 3" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pyhdfe-0.2.0-py3-none-any.whl", hash = "sha256:5be73689101b97ff9e6e563874747257cdf86cb683159de8e16a5457130fb532"}, + {file = "pyhdfe-0.2.0.tar.gz", hash = "sha256:8cddc5f5a09148d3281fca3c787146a85ecc5a7517be3ae5762bfe507907b7fb"}, +] + +[package.dependencies] +numpy = ">=1.12.0" +scipy = ">=1.0.0" + +[package.extras] +docs = ["astunparse", "docutils (==0.17)", "ipython", "jinja2 (>=2.11,<3.0)", "nbsphinx (==0.5.0)", "sphinx (==2.0.0)", "sphinx-rtd-theme (==0.4.3)"] +tests = ["pytest", "pytest-xdist"] + [[package]] name = "pylint" version = "3.1.0" @@ -3379,6 +4015,21 @@ typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\"" spelling = ["pyenchant (>=3.2,<4.0)"] testutils = ["gitpython (>3)"] +[[package]] +name = "pyluach" +version = "2.2.0" +description = "A Python package for dealing with Hebrew (Jewish) calendar dates." +optional = false +python-versions = ">=3.7" +files = [ + {file = "pyluach-2.2.0-py3-none-any.whl", hash = "sha256:d1eb49d6292087e9290f4661ae01b60c8c933704ec8c9cef82673b349ff96adf"}, + {file = "pyluach-2.2.0.tar.gz", hash = "sha256:9063a25387cd7624276fd0656508bada08aa8a6f22e8db352844cd858e69012b"}, +] + +[package.extras] +doc = ["sphinx (>=6.1.3,<6.2.0)", "sphinx_rtd_theme (>=1.2.0,<1.3.0)"] +test = ["beautifulsoup4", "flake8", "pytest", "pytest-cov"] + [[package]] name = "pyproject-api" version = "1.6.1" @@ -3400,18 +4051,15 @@ testing = ["covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytes [[package]] name = "pyproject-hooks" -version = "1.0.0" +version = "1.1.0" description = "Wrappers to call pyproject.toml-based build backend hooks." optional = false python-versions = ">=3.7" files = [ - {file = "pyproject_hooks-1.0.0-py3-none-any.whl", hash = "sha256:283c11acd6b928d2f6a7c73fa0d01cb2bdc5f07c57a2eeb6e83d5e56b97976f8"}, - {file = "pyproject_hooks-1.0.0.tar.gz", hash = "sha256:f271b298b97f5955d53fb12b72c1fb1948c22c1a6b70b315c54cedaca0264ef5"}, + {file = "pyproject_hooks-1.1.0-py3-none-any.whl", hash = "sha256:7ceeefe9aec63a1064c18d939bdc3adf2d8aa1988a510afec15151578b232aa2"}, + {file = "pyproject_hooks-1.1.0.tar.gz", hash = "sha256:4b37730834edbd6bd37f26ece6b44802fb1c1ee2ece0e54ddff8bfc06db86965"}, ] -[package.dependencies] -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} - [[package]] name = "pytest" version = "7.4.4" @@ -3656,201 +4304,212 @@ files = [ [[package]] name = "pyzmq" -version = "26.0.2" +version = "26.0.3" description = "Python bindings for 0MQ" optional = false python-versions = ">=3.7" files = [ - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:1a60a03b01e8c9c58932ec0cca15b1712d911c2800eb82d4281bc1ae5b6dad50"}, - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:949067079e14ea1973bd740255e0840118c163d4bce8837f539d749f145cf5c3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37e7edfa6cf96d036a403775c96afa25058d1bb940a79786a9a2fc94a783abe3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:903cc7a84a7d4326b43755c368780800e035aa3d711deae84a533fdffa8755b0"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6cb2e41af165e5f327d06fbdd79a42a4e930267fade4e9f92d17f3ccce03f3a7"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:55353b8189adcfc4c125fc4ce59d477744118e9c0ec379dd0999c5fa120ac4f5"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f961423ff6236a752ced80057a20e623044df95924ed1009f844cde8b3a595f9"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ba77fe84fe4f5f3dc0ef681a6d366685c8ffe1c8439c1d7530997b05ac06a04b"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:52589f0a745ef61b9c75c872cf91f8c1f7c0668eb3dd99d7abd639d8c0fb9ca7"}, - {file = "pyzmq-26.0.2-cp310-cp310-win32.whl", hash = "sha256:b7b6d2a46c7afe2ad03ec8faf9967090c8ceae85c4d8934d17d7cae6f9062b64"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:86531e20de249d9204cc6d8b13d5a30537748c78820215161d8a3b9ea58ca111"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_arm64.whl", hash = "sha256:f26a05029ecd2bd306b941ff8cb80f7620b7901421052bc429d238305b1cbf2f"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:70770e296a9cb03d955540c99360aab861cbb3cba29516abbd106a15dbd91268"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2740fd7161b39e178554ebf21aa5667a1c9ef0cd2cb74298fd4ef017dae7aec4"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5e3706c32dea077faa42b1c92d825b7f86c866f72532d342e0be5e64d14d858"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0fa1416876194927f7723d6b7171b95e1115602967fc6bfccbc0d2d51d8ebae1"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ef9a79a48794099c57dc2df00340b5d47c5caa1792f9ddb8c7a26b1280bd575"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:1c60fcdfa3229aeee4291c5d60faed3a813b18bdadb86299c4bf49e8e51e8605"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e943c39c206b04df2eb5d71305761d7c3ca75fd49452115ea92db1b5b98dbdef"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8da0ed8a598693731c76659880a668f4748b59158f26ed283a93f7f04d47447e"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7bf51970b11d67096bede97cdbad0f4333f7664f4708b9b2acb352bf4faa3140"}, - {file = "pyzmq-26.0.2-cp311-cp311-win32.whl", hash = "sha256:6f8e6bd5d066be605faa9fe5ec10aa1a46ad9f18fc8646f2b9aaefc8fb575742"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:6d03da3a0ae691b361edcb39530075461202f699ce05adbb15055a0e1c9bcaa4"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_arm64.whl", hash = "sha256:f84e33321b68ff00b60e9dbd1a483e31ab6022c577c8de525b8e771bd274ce68"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:44c33ebd1c62a01db7fbc24e18bdda569d6639217d13d5929e986a2b0f69070d"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ac04f904b4fce4afea9cdccbb78e24d468cb610a839d5a698853e14e2a3f9ecf"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2133de5ba9adc5f481884ccb699eac9ce789708292945c05746880f95b241c0"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7753c67c570d7fc80c2dc59b90ca1196f1224e0e2e29a548980c95fe0fe27fc1"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d4e51632e6b12e65e8d9d7612446ecda2eda637a868afa7bce16270194650dd"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:d6c38806f6ecd0acf3104b8d7e76a206bcf56dadd6ce03720d2fa9d9157d5718"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:48f496bbe14686b51cec15406323ae6942851e14022efd7fc0e2ecd092c5982c"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e84a3161149c75bb7a7dc8646384186c34033e286a67fec1ad1bdedea165e7f4"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:dabf796c67aa9f5a4fcc956d47f0d48b5c1ed288d628cf53aa1cf08e88654343"}, - {file = "pyzmq-26.0.2-cp312-cp312-win32.whl", hash = "sha256:3eee4c676af1b109f708d80ef0cf57ecb8aaa5900d1edaf90406aea7e0e20e37"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:26721fec65846b3e4450dad050d67d31b017f97e67f7e0647b5f98aa47f828cf"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_arm64.whl", hash = "sha256:653955c6c233e90de128a1b8e882abc7216f41f44218056bd519969c8c413a15"}, - {file = "pyzmq-26.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:becd8d8fb068fbb5a52096efd83a2d8e54354383f691781f53a4c26aee944542"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:7a15e5465e7083c12517209c9dd24722b25e9b63c49a563922922fc03554eb35"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e8158ac8616941f874841f9fa0f6d2f1466178c2ff91ea08353fdc19de0d40c2"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea2c6a53e28c7066ea7db86fcc0b71d78d01b818bb11d4a4341ec35059885295"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bdbc7dab0b0e9c62c97b732899c4242e3282ba803bad668e03650b59b165466e"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e74b6d5ef57bb65bf1b4a37453d8d86d88550dde3fb0f23b1f1a24e60c70af5b"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ed4c6ee624ecbc77b18aeeb07bf0700d26571ab95b8f723f0d02e056b5bce438"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win32.whl", hash = "sha256:8a98b3cb0484b83c19d8fb5524c8a469cd9f10e743f5904ac285d92678ee761f"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:aa5f95d71b6eca9cec28aa0a2f8310ea53dea313b63db74932879ff860c1fb8d"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:5ff56c76ce77b9805378a7a73032c17cbdb1a5b84faa1df03c5d3e306e5616df"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bab697fc1574fee4b81da955678708567c43c813c84c91074e452bda5346c921"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0c0fed8aa9ba0488ee1cbdaa304deea92d52fab43d373297002cfcc69c0a20c5"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:606b922699fcec472ed814dda4dc3ff7c748254e0b26762a0ba21a726eb1c107"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45f0fd82bad4d199fa993fbf0ac586a7ac5879addbe436a35a389df7e0eb4c91"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:166c5e41045939a52c01e6f374e493d9a6a45dfe677360d3e7026e38c42e8906"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d566e859e8b8d5bca08467c093061774924b3d78a5ba290e82735b2569edc84b"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:264ee0e72b72ca59279dc320deab5ae0fac0d97881aed1875ce4bde2e56ffde0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win32.whl", hash = "sha256:3152bbd3a4744cbdd83dfb210ed701838b8b0c9065cef14671d6d91df12197d0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:bf77601d75ca692c179154b7e5943c286a4aaffec02c491afe05e60493ce95f2"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:c770a7545b3deca2db185b59175e710a820dd4ed43619f4c02e90b0e227c6252"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d47175f0a380bfd051726bc5c0054036ae4a5d8caf922c62c8a172ccd95c1a2a"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9bce298c1ce077837e110367c321285dc4246b531cde1abfc27e4a5bbe2bed4d"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c40b09b7e184d6e3e1be1c8af2cc320c0f9f610d8a5df3dd866e6e6e4e32b235"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d420d856bf728713874cefb911398efe69e1577835851dd297a308a78c14c249"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d792d3cab987058451e55c70c5926e93e2ceb68ca5a2334863bb903eb860c9cb"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:83ec17729cf6d3464dab98a11e98294fcd50e6b17eaabd3d841515c23f6dbd3a"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47c17d5ebfa88ae90f08960c97b49917098665b8cd8be31f2c24e177bcf37a0f"}, - {file = "pyzmq-26.0.2-cp39-cp39-win32.whl", hash = "sha256:d509685d1cd1d018705a811c5f9d5bc237790936ead6d06f6558b77e16cc7235"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:c7cc8cc009e8f6989a6d86c96f87dae5f5fb07d6c96916cdc7719d546152c7db"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_arm64.whl", hash = "sha256:3ada31cb879cd7532f4a85b501f4255c747d4813ab76b35c49ed510ce4865b45"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0a6ceaddc830dd3ca86cb8451cf373d1f05215368e11834538c2902ed5205139"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a967681463aa7a99eb9a62bb18229b653b45c10ff0947b31cc0837a83dfb86f"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6472a73bc115bc40a2076609a90894775abe6faf19a78375675a2f889a613071"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d6aea92bcccfe5e5524d3c70a6f16ffdae548390ddad26f4207d55c55a40593"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e025f6351e49d48a5aa2f5a09293aa769b0ee7369c25bed551647234b7fa0c75"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:40bd7ebe4dbb37d27f0c56e2a844f360239343a99be422085e13e97da13f73f9"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1dd40d586ad6f53764104df6e01810fe1b4e88fd353774629a5e6fe253813f79"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f2aca15e9ad8c8657b5b3d7ae3d1724dc8c1c1059c06b4b674c3aa36305f4930"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:450ec234736732eb0ebeffdb95a352450d4592f12c3e087e2a9183386d22c8bf"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:f43be2bebbd09360a2f23af83b243dc25ffe7b583ea8c722e6df03e03a55f02f"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:867f55e54aff254940bcec5eec068e7c0ac1e6bf360ab91479394a8bf356b0e6"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b4dbc033c5ad46f8c429bf238c25a889b8c1d86bfe23a74e1031a991cb3f0000"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6e8dd2961462e337e21092ec2da0c69d814dcb1b6e892955a37444a425e9cfb8"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35391e72df6c14a09b697c7b94384947c1dd326aca883ff98ff137acdf586c33"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:1c3d3c92fa54eda94ab369ca5b8d35059987c326ba5e55326eb068862f64b1fc"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e7aa61a9cc4f0523373e31fc9255bf4567185a099f85ca3598e64de484da3ab2"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee53a8191271f144cc20b12c19daa9f1546adc84a2f33839e3338039b55c373c"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ac60a980f07fa988983f7bfe6404ef3f1e4303f5288a01713bc1266df6d18783"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88896b1b4817d7b2fe1ec7205c4bbe07bf5d92fb249bf2d226ddea8761996068"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:18dfffe23751edee917764ffa133d5d3fef28dfd1cf3adebef8c90bc854c74c4"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:6926dd14cfe6967d3322640b6d5c3c3039db71716a5e43cca6e3b474e73e0b36"}, - {file = "pyzmq-26.0.2.tar.gz", hash = "sha256:f0f9bb370449158359bb72a3e12c658327670c0ffe6fbcd1af083152b64f9df0"}, + {file = "pyzmq-26.0.3-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:44dd6fc3034f1eaa72ece33588867df9e006a7303725a12d64c3dff92330f625"}, + {file = "pyzmq-26.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:acb704195a71ac5ea5ecf2811c9ee19ecdc62b91878528302dd0be1b9451cc90"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dbb9c997932473a27afa93954bb77a9f9b786b4ccf718d903f35da3232317de"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6bcb34f869d431799c3ee7d516554797f7760cb2198ecaa89c3f176f72d062be"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ece17ec5f20d7d9b442e5174ae9f020365d01ba7c112205a4d59cf19dc38ee"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:ba6e5e6588e49139a0979d03a7deb9c734bde647b9a8808f26acf9c547cab1bf"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3bf8b000a4e2967e6dfdd8656cd0757d18c7e5ce3d16339e550bd462f4857e59"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2136f64fbb86451dbbf70223635a468272dd20075f988a102bf8a3f194a411dc"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e8918973fbd34e7814f59143c5f600ecd38b8038161239fd1a3d33d5817a38b8"}, + {file = "pyzmq-26.0.3-cp310-cp310-win32.whl", hash = "sha256:0aaf982e68a7ac284377d051c742610220fd06d330dcd4c4dbb4cdd77c22a537"}, + {file = "pyzmq-26.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:f1a9b7d00fdf60b4039f4455afd031fe85ee8305b019334b72dcf73c567edc47"}, + {file = "pyzmq-26.0.3-cp310-cp310-win_arm64.whl", hash = "sha256:80b12f25d805a919d53efc0a5ad7c0c0326f13b4eae981a5d7b7cc343318ebb7"}, + {file = "pyzmq-26.0.3-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:a72a84570f84c374b4c287183debc776dc319d3e8ce6b6a0041ce2e400de3f32"}, + {file = "pyzmq-26.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ca684ee649b55fd8f378127ac8462fb6c85f251c2fb027eb3c887e8ee347bcd"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e222562dc0f38571c8b1ffdae9d7adb866363134299264a1958d077800b193b7"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f17cde1db0754c35a91ac00b22b25c11da6eec5746431d6e5092f0cd31a3fea9"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b7c0c0b3244bb2275abe255d4a30c050d541c6cb18b870975553f1fb6f37527"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:ac97a21de3712afe6a6c071abfad40a6224fd14fa6ff0ff8d0c6e6cd4e2f807a"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:88b88282e55fa39dd556d7fc04160bcf39dea015f78e0cecec8ff4f06c1fc2b5"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:72b67f966b57dbd18dcc7efbc1c7fc9f5f983e572db1877081f075004614fcdd"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f4b6cecbbf3b7380f3b61de3a7b93cb721125dc125c854c14ddc91225ba52f83"}, + {file = "pyzmq-26.0.3-cp311-cp311-win32.whl", hash = "sha256:eed56b6a39216d31ff8cd2f1d048b5bf1700e4b32a01b14379c3b6dde9ce3aa3"}, + {file = "pyzmq-26.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:3191d312c73e3cfd0f0afdf51df8405aafeb0bad71e7ed8f68b24b63c4f36500"}, + {file = "pyzmq-26.0.3-cp311-cp311-win_arm64.whl", hash = "sha256:b6907da3017ef55139cf0e417c5123a84c7332520e73a6902ff1f79046cd3b94"}, + {file = "pyzmq-26.0.3-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:068ca17214038ae986d68f4a7021f97e187ed278ab6dccb79f837d765a54d753"}, + {file = "pyzmq-26.0.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7821d44fe07335bea256b9f1f41474a642ca55fa671dfd9f00af8d68a920c2d4"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eeb438a26d87c123bb318e5f2b3d86a36060b01f22fbdffd8cf247d52f7c9a2b"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:69ea9d6d9baa25a4dc9cef5e2b77b8537827b122214f210dd925132e34ae9b12"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7daa3e1369355766dea11f1d8ef829905c3b9da886ea3152788dc25ee6079e02"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:6ca7a9a06b52d0e38ccf6bca1aeff7be178917893f3883f37b75589d42c4ac20"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1b7d0e124948daa4d9686d421ef5087c0516bc6179fdcf8828b8444f8e461a77"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e746524418b70f38550f2190eeee834db8850088c834d4c8406fbb9bc1ae10b2"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:6b3146f9ae6af82c47a5282ac8803523d381b3b21caeae0327ed2f7ecb718798"}, + {file = "pyzmq-26.0.3-cp312-cp312-win32.whl", hash = "sha256:2b291d1230845871c00c8462c50565a9cd6026fe1228e77ca934470bb7d70ea0"}, + {file = "pyzmq-26.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:926838a535c2c1ea21c903f909a9a54e675c2126728c21381a94ddf37c3cbddf"}, + {file = "pyzmq-26.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:5bf6c237f8c681dfb91b17f8435b2735951f0d1fad10cc5dfd96db110243370b"}, + {file = "pyzmq-26.0.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0c0991f5a96a8e620f7691e61178cd8f457b49e17b7d9cfa2067e2a0a89fc1d5"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:dbf012d8fcb9f2cf0643b65df3b355fdd74fc0035d70bb5c845e9e30a3a4654b"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:01fbfbeb8249a68d257f601deb50c70c929dc2dfe683b754659569e502fbd3aa"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c8eb19abe87029c18f226d42b8a2c9efdd139d08f8bf6e085dd9075446db450"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:5344b896e79800af86ad643408ca9aa303a017f6ebff8cee5a3163c1e9aec987"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:204e0f176fd1d067671157d049466869b3ae1fc51e354708b0dc41cf94e23a3a"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a42db008d58530efa3b881eeee4991146de0b790e095f7ae43ba5cc612decbc5"}, + {file = "pyzmq-26.0.3-cp37-cp37m-win32.whl", hash = "sha256:8d7a498671ca87e32b54cb47c82a92b40130a26c5197d392720a1bce1b3c77cf"}, + {file = "pyzmq-26.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:3b4032a96410bdc760061b14ed6a33613ffb7f702181ba999df5d16fb96ba16a"}, + {file = "pyzmq-26.0.3-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:2cc4e280098c1b192c42a849de8de2c8e0f3a84086a76ec5b07bfee29bda7d18"}, + {file = "pyzmq-26.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5bde86a2ed3ce587fa2b207424ce15b9a83a9fa14422dcc1c5356a13aed3df9d"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:34106f68e20e6ff253c9f596ea50397dbd8699828d55e8fa18bd4323d8d966e6"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ebbbd0e728af5db9b04e56389e2299a57ea8b9dd15c9759153ee2455b32be6ad"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6b1d1c631e5940cac5a0b22c5379c86e8df6a4ec277c7a856b714021ab6cfad"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e891ce81edd463b3b4c3b885c5603c00141151dd9c6936d98a680c8c72fe5c67"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:9b273ecfbc590a1b98f014ae41e5cf723932f3b53ba9367cfb676f838038b32c"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b32bff85fb02a75ea0b68f21e2412255b5731f3f389ed9aecc13a6752f58ac97"}, + {file = "pyzmq-26.0.3-cp38-cp38-win32.whl", hash = "sha256:f6c21c00478a7bea93caaaef9e7629145d4153b15a8653e8bb4609d4bc70dbfc"}, + {file = "pyzmq-26.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:3401613148d93ef0fd9aabdbddb212de3db7a4475367f49f590c837355343972"}, + {file = "pyzmq-26.0.3-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:2ed8357f4c6e0daa4f3baf31832df8a33334e0fe5b020a61bc8b345a3db7a606"}, + {file = "pyzmq-26.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c1c8f2a2ca45292084c75bb6d3a25545cff0ed931ed228d3a1810ae3758f975f"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b63731993cdddcc8e087c64e9cf003f909262b359110070183d7f3025d1c56b5"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b3cd31f859b662ac5d7f4226ec7d8bd60384fa037fc02aee6ff0b53ba29a3ba8"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:115f8359402fa527cf47708d6f8a0f8234f0e9ca0cab7c18c9c189c194dbf620"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:715bdf952b9533ba13dfcf1f431a8f49e63cecc31d91d007bc1deb914f47d0e4"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e1258c639e00bf5e8a522fec6c3eaa3e30cf1c23a2f21a586be7e04d50c9acab"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:15c59e780be8f30a60816a9adab900c12a58d79c1ac742b4a8df044ab2a6d920"}, + {file = "pyzmq-26.0.3-cp39-cp39-win32.whl", hash = "sha256:d0cdde3c78d8ab5b46595054e5def32a755fc028685add5ddc7403e9f6de9879"}, + {file = "pyzmq-26.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:ce828058d482ef860746bf532822842e0ff484e27f540ef5c813d516dd8896d2"}, + {file = "pyzmq-26.0.3-cp39-cp39-win_arm64.whl", hash = "sha256:788f15721c64109cf720791714dc14afd0f449d63f3a5487724f024345067381"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2c18645ef6294d99b256806e34653e86236eb266278c8ec8112622b61db255de"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e6bc96ebe49604df3ec2c6389cc3876cabe475e6bfc84ced1bf4e630662cb35"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:971e8990c5cc4ddcff26e149398fc7b0f6a042306e82500f5e8db3b10ce69f84"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8416c23161abd94cc7da80c734ad7c9f5dbebdadfdaa77dad78244457448223"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:082a2988364b60bb5de809373098361cf1dbb239623e39e46cb18bc035ed9c0c"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d57dfbf9737763b3a60d26e6800e02e04284926329aee8fb01049635e957fe81"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:77a85dca4c2430ac04dc2a2185c2deb3858a34fe7f403d0a946fa56970cf60a1"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4c82a6d952a1d555bf4be42b6532927d2a5686dd3c3e280e5f63225ab47ac1f5"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4496b1282c70c442809fc1b151977c3d967bfb33e4e17cedbf226d97de18f709"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:e4946d6bdb7ba972dfda282f9127e5756d4f299028b1566d1245fa0d438847e6"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:03c0ae165e700364b266876d712acb1ac02693acd920afa67da2ebb91a0b3c09"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:3e3070e680f79887d60feeda051a58d0ac36622e1759f305a41059eff62c6da7"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6ca08b840fe95d1c2bd9ab92dac5685f949fc6f9ae820ec16193e5ddf603c3b2"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e76654e9dbfb835b3518f9938e565c7806976c07b37c33526b574cc1a1050480"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:871587bdadd1075b112e697173e946a07d722459d20716ceb3d1bd6c64bd08ce"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d0a2d1bd63a4ad79483049b26514e70fa618ce6115220da9efdff63688808b17"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0270b49b6847f0d106d64b5086e9ad5dc8a902413b5dbbb15d12b60f9c1747a4"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:703c60b9910488d3d0954ca585c34f541e506a091a41930e663a098d3b794c67"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:74423631b6be371edfbf7eabb02ab995c2563fee60a80a30829176842e71722a"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4adfbb5451196842a88fda3612e2c0414134874bffb1c2ce83ab4242ec9e027d"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:3516119f4f9b8671083a70b6afaa0a070f5683e431ab3dc26e9215620d7ca1ad"}, + {file = "pyzmq-26.0.3.tar.gz", hash = "sha256:dba7d9f2e047dfa2bca3b01f4f84aa5246725203d6284e3790f2ca15fba6b40a"}, ] [package.dependencies] cffi = {version = "*", markers = "implementation_name == \"pypy\""} +[[package]] +name = "random-user-agent" +version = "1.0.1" +description = "A package to get random user agents based filters provided by user" +optional = false +python-versions = "*" +files = [ + {file = "random_user_agent-1.0.1-py3-none-any.whl", hash = "sha256:535636a55fb63fe3d74fd0260d854c241d9f2946447026464e578e68eac17dac"}, + {file = "random_user_agent-1.0.1.tar.gz", hash = "sha256:8f8ca26ec8cb1d24ad1758d8b8f700d154064d641dbe9a255cfec42960fbd012"}, +] + [[package]] name = "rapidfuzz" -version = "3.8.1" +version = "3.9.0" description = "rapid fuzzy string matching" optional = false python-versions = ">=3.8" files = [ - {file = "rapidfuzz-3.8.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1b176f01490b48337183da5b4223005bc0c2354a4faee5118917d2fba0bedc1c"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0798e32304b8009d215026bf7e1c448f1831da0a03987b7de30059a41bee92f3"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ad4dbd06c1f579eb043b2dcfc635bc6c9fb858240a70f0abd3bed84d8ac79994"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e6ec696a268e8d730b42711537e500f7397afc06125c0e8fa9c8211386d315a5"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a8a007fdc5cf646e48e361a39eabe725b93af7673c5ab90294e551cae72ff58"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:68b185a0397aebe78bcc5d0e1efd96509d4e2f3c4a05996e5c843732f547e9ef"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:267ff42370e031195e3020fff075420c136b69dc918ecb5542ec75c1e36af81f"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:987cd277d27d14301019fdf61c17524f6127f5d364be5482228726049d8e0d10"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:bc5a1ec3bd05b55d3070d557c0cdd4412272d51b4966c79aa3e9da207bd33d65"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa223c73c59cc45c12eaa9c439318084003beced0447ff92b578a890288e19eb"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:d4276c7ee061db0bac54846933b40339f60085523675f917f37de24a4b3ce0ee"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:2ba0e43e9a94d256a704a674c7010e6f8ef9225edf7287cf3e7f66c9894b06cd"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c22b32a57ab47afb207e8fe4bd7bb58c90f9291a63723cafd4e704742166e368"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-win32.whl", hash = "sha256:50db3867864422bf6a6435ea65b9ac9de71ef52ed1e05d62f498cd430189eece"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-win_amd64.whl", hash = "sha256:bca5acf77508d1822023a85118c2dd8d3c16abdd56d2762359a46deb14daa5e0"}, - {file = "rapidfuzz-3.8.1-cp310-cp310-win_arm64.whl", hash = "sha256:c763d99cf087e7b2c5be0cf34ae9a0e1b031f5057d2341a0a0ed782458645b7e"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:30c282612b7ebf2d7646ebebfd98dd308c582246a94d576734e4b0162f57baf4"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c6a43446f0cd8ff347b1fbb918dc0d657bebf484ddfa960ee069e422a477428"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4969fe0eb179aedacee53ca8f8f1be3c655964a6d62db30f247fee444b9c52b4"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:799f5f221d639d1c2ed8a2348d1edf5e22aa489b58b2cc99f5bf0c1917e2d0f2"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e62bde7d5df3312acc528786ee801c472cae5078b1f1e42761c853ba7fe1072a"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9ea3d2e41d8fac71cb63ee72f75bee0ed1e9c50709d4c58587f15437761c1858"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f34a541895627c2bc9ef7757f16f02428a08d960d33208adfb96b33338d0945"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0643a25937fafe8d117f2907606e9940cd1cc905c66f16ece9ab93128299994"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:63044a7b6791a2e945dce9d812a6886e93159deb0464984eb403617ded257f08"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bbc15985c5658691f637a6b97651771147744edfad2a4be56b8a06755e3932fa"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:48b6e5a337a814aec7c6dda5d6460f947c9330860615301f35b519e16dde3c77"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:8c40da44ca20235cda05751d6e828b6b348e7a7c5de2922fa0f9c63f564fd675"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c21d5c7cfa6078c79897e5e482a7e84ff927143d2f3fb020dd6edd27f5469574"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-win32.whl", hash = "sha256:209bb712c448cdec4def6260b9f059bd4681ec61a01568f5e70e37bfe9efe830"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f7641992de44ec2ca54102422be44a8e3fb75b9690ccd74fff72b9ac7fc00ee"}, - {file = "rapidfuzz-3.8.1-cp311-cp311-win_arm64.whl", hash = "sha256:c458085e067c766112f089f78ce39eab2b69ba027d7bbb11d067a0b085774367"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1905d9319a97bed29f21584ca641190dbc9218a556202b77876f1e37618d2e03"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f176867f438ff2a43e6a837930153ca78fddb3ca94e378603a1e7b860d7869bf"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:25498650e30122f4a5ad6b27c7614b4af8628c1d32b19d406410d33f77a86c80"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16153a97efacadbd693ccc612a3285df2f072fd07c121f30c2c135a709537075"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1c0264d03dcee1bb975975b77c2fe041820fb4d4a25a99e3cb74ddd083d671ca"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:17d79398849c1244f646425cf31d856eab9ebd67b7d6571273e53df724ca817e"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e08b01dc9369941a24d7e512b0d81bf514e7d6add1b93d8aeec3c8fa08a824e"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97c13f156f14f10667e1cfc4257069b775440ce005e896c09ce3aff21c9ae665"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8b76abfec195bf1ee6f9ec56c33ba5e9615ff2d0a9530a54001ed87e5a6ced3b"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:b0ba20be465566264fa5580d874ccf5eabba6975dba45857e2c76e2df3359c6d"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:4d5cd86aca3f12e73bfc70015db7e8fc44122da03aa3761138b95112e83f66e4"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:9a16ef3702cecf16056c5fd66398b7ea8622ff4e3afeb00a8db3e74427e850af"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:392582aa784737d95255ca122ebe7dca3c774da900d100c07b53d32cd221a60e"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-win32.whl", hash = "sha256:ceb10039e7346927cec47eaa490b34abb602b537e738ee9914bb41b8de029fbc"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-win_amd64.whl", hash = "sha256:cc4af7090a626c902c48db9b5d786c1faa0d8e141571e8a63a5350419ea575bd"}, - {file = "rapidfuzz-3.8.1-cp312-cp312-win_arm64.whl", hash = "sha256:3aff3b829b0b04bdf78bd780ec9faf5f26eac3591df98c35a0ae216c925ae436"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:78a0d2a11bb3936463609777c6d6d4984a27ebb2360b58339c699899d85db036"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f8af980695b866255447703bf634551e67e1a4e1c2d2d26501858d9233d886d7"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d1a15fef1938b43468002f2d81012dbc9e7b50eb8533af202b0559c2dc7865d9"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4dbb1ebc9a811f38da33f32ed2bb5f58b149289b89eb11e384519e9ba7ca881"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:41219536634bd6f85419f38450ef080cfb519638125d805cf8626443e677dc61"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e3f882110f2f4894942e314451773c47e8b1b4920b5ea2b6dd2e2d4079dd3135"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c754ce1fab41b731259f100d5d46529a38aa2c9b683c92aeb7e96ef5b2898cd8"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:718ea99f84b16c4bdbf6a93e53552cdccefa18e12ff9a02c5041e621460e2e61"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9441aca94b21f7349cdb231cd0ce9ca251b2355836e8a02bf6ccbea5b442d7a9"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:90167a48de3ed7f062058826608a80242b8561d0fb0cce2c610d741624811a61"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:8e02425bfc7ebed617323a674974b70eaecd8f07b64a7d16e0bf3e766b93e3c9"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:d48657a404fab82b2754faa813a10c5ad6aa594cb1829dca168a49438b61b4ec"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6f8b62fdccc429e6643cefffd5df9c7bca65588d06e8925b78014ad9ad983bf5"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-win32.whl", hash = "sha256:63db612bb6da1bb9f6aa7412739f0e714b1910ec07bc675943044fe683ef192c"}, - {file = "rapidfuzz-3.8.1-cp38-cp38-win_amd64.whl", hash = "sha256:bb571dbd4cc93342be0ba632f0b8d7de4cbd9d959d76371d33716d2216090d41"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b27cea618601ca5032ea98ee116ca6e0fe67be7b286bcb0b9f956d64db697472"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1d5592b08e3cadc9e06ef3af6a9d66b6ef1bf871ed5acd7f9b1e162d78806a65"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:58999b21d01dd353f49511a61937eac20c7a5b22eab87612063947081855d85f"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2ee3909f611cc5860cc8d9f92d039fd84241ce7360b49ea88e657181d2b45f6"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00b5ee47b387fa3805f4038362a085ec58149135dc5bc640ca315a9893a16f9e"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4c647795c5b901091a68e210c76b769af70a33a8624ac496ac3e34d33366c0d"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:77ea62879932b32aba77ab23a9296390a67d024bf2f048dee99143be80a4ce26"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3fee62ae76e3b8b9fff8aa2ca4061575ee358927ffbdb2919a8c84a98da59f78"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:231dc1cb63b1c8dd78c0597aa3ad3749a86a2b7e76af295dd81609522699a558"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:827ddf2d5d157ac3d1001b52e84c9e20366237a742946599ffc435af7fdd26d0"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:c04ef83c9ca3162d200df36e933b3ea0327a2626cee2e01bbe55acbc004ce261"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:747265f39978bbaad356f5c6b6c808f0e8f5e8994875af0119b82b4700c55387"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:14791324f0c753f5a0918df1249b91515f5ddc16281fbaa5ec48bff8fa659229"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-win32.whl", hash = "sha256:b7b9cbc60e3eb08da6d18636c62c6eb6206cd9d0c7ad73996f7a1df3fc415b27"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-win_amd64.whl", hash = "sha256:2084193fd8fd346db496a2220363437eb9370a06d1d5a7a9dba00a64390c6a28"}, - {file = "rapidfuzz-3.8.1-cp39-cp39-win_arm64.whl", hash = "sha256:c9597a05d08e8103ad59ebdf29e3fbffb0d0dbf3b641f102cfbeadc3a77bde51"}, - {file = "rapidfuzz-3.8.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5f4174079dfe8ed1f13ece9bde7660f19f98ab17e0c0d002d90cc845c3a7e238"}, - {file = "rapidfuzz-3.8.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07d7d4a3c49a15146d65f06e44d7545628ca0437c929684e32ef122852f44d95"}, - {file = "rapidfuzz-3.8.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1ef119fc127c982053fb9ec638dcc3277f83b034b5972eb05941984b9ec4a290"}, - {file = "rapidfuzz-3.8.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e57f9c2367706a320b78e91f8bf9a3b03bf9069464eb7b54455fa340d03e4c"}, - {file = "rapidfuzz-3.8.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:6d4f1956fe1fc618e34ac79a6ed84fff5a6f23e41a8a476dd3e8570f0b12f02b"}, - {file = "rapidfuzz-3.8.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:313bdcd16e9cd5e5568b4a31d18a631f0b04cc10a3fd916e4ef75b713e6f177e"}, - {file = "rapidfuzz-3.8.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a02def2eb526cc934d2125533cf2f15aa71c72ed4397afca38427ab047901e88"}, - {file = "rapidfuzz-3.8.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9d5d924970b07128c61c08eebee718686f4bd9838ef712a50468169520c953f"}, - {file = "rapidfuzz-3.8.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1edafc0a2737df277d3ddf401f3a73f76e246b7502762c94a3916453ae67e9b1"}, - {file = "rapidfuzz-3.8.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:81fd28389bedab28251f0535b3c034b0e63a618efc3ff1d338c81a3da723adb3"}, - {file = "rapidfuzz-3.8.1.tar.gz", hash = "sha256:a357aae6791118011ad3ab4f2a4aa7bd7a487e5f9981b390e9f3c2c5137ecadf"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:bd375c4830fee11d502dd93ecadef63c137ae88e1aaa29cc15031fa66d1e0abb"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:55e2c5076f38fc1dbaacb95fa026a3e409eee6ea5ac4016d44fb30e4cad42b20"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:488f74126904db6b1bea545c2f3567ea882099f4c13f46012fe8f4b990c683df"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e3f2d1ea7cd57dfcd34821e38b4924c80a31bcf8067201b1ab07386996a9faee"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b11e602987bcb4ea22b44178851f27406fca59b0836298d0beb009b504dba266"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3083512e9bf6ed2bb3d25883922974f55e21ae7f8e9f4e298634691ae1aee583"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b33c6d4b3a1190bc0b6c158c3981535f9434e8ed9ffa40cf5586d66c1819fb4b"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dcb95fde22f98e6d0480db8d6038c45fe2d18a338690e6f9bba9b82323f3469"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:08d8b49b3a4fb8572e480e73fcddc750da9cbb8696752ee12cca4bf8c8220d52"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e721842e6b601ebbeb8cc5e12c75bbdd1d9e9561ea932f2f844c418c31256e82"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:7988363b3a415c5194ce1a68d380629247f8713e669ad81db7548eb156c4f365"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:2d267d4c982ab7d177e994ab1f31b98ff3814f6791b90d35dda38307b9e7c989"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0bb28ab5300cf974c7eb68ea21125c493e74b35b1129e629533468b2064ae0a2"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-win32.whl", hash = "sha256:1b1f74997b6d94d66375479fa55f70b1c18e4d865d7afcd13f0785bfd40a9d3c"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:c56d2efdfaa1c642029f3a7a5bb76085c5531f7a530777be98232d2ce142553c"}, + {file = "rapidfuzz-3.9.0-cp310-cp310-win_arm64.whl", hash = "sha256:6a83128d505cac76ea560bb9afcb3f6986e14e50a6f467db9a31faef4bd9b347"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e2218d62ab63f3c5ad48eced898854d0c2c327a48f0fb02e2288d7e5332a22c8"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:36bf35df2d6c7d5820da20a6720aee34f67c15cd2daf8cf92e8141995c640c25"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:905b01a9b633394ff6bb5ebb1c5fd660e0e180c03fcf9d90199cc6ed74b87cf7"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:33cfabcb7fd994938a6a08e641613ce5fe46757832edc789c6a5602e7933d6fa"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1179dcd3d150a67b8a678cd9c84f3baff7413ff13c9e8fe85e52a16c97e24c9b"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:47d97e28c42f1efb7781993b67c749223f198f6653ef177a0c8f2b1c516efcaf"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28da953eb2ef9ad527e536022da7afff6ace7126cdd6f3e21ac20f8762e76d2c"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:182b4e11de928fb4834e8f8b5ecd971b5b10a86fabe8636ab65d3a9b7e0e9ca7"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c74f2da334ce597f31670db574766ddeaee5d9430c2c00e28d0fbb7f76172036"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:014ac55b03f4074f903248ded181f3000f4cdbd134e6155cbf643f0eceb4f70f"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:c4ef34b2ddbf448f1d644b4ec6475df8bbe5b9d0fee173ff2e87322a151663bd"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:fc02157f521af15143fae88f92ef3ddcc4e0cff05c40153a9549dc0fbdb9adb3"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ff08081c49b18ba253a99e6a47f492e6ee8019e19bbb6ddc3ed360cd3ecb2f62"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-win32.whl", hash = "sha256:b9bf90b3d96925cbf8ef44e5ee3cf39ef0c422f12d40f7a497e91febec546650"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:d5d5684f54d82d9b0cf0b2701e55a630527a9c3dd5ddcf7a2e726a475ac238f2"}, + {file = "rapidfuzz-3.9.0-cp311-cp311-win_arm64.whl", hash = "sha256:a2de844e0e971d7bd8aa41284627dbeacc90e750b90acfb016836553c7a63192"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f81fe99a69ac8ee3fd905e70c62f3af033901aeb60b69317d1d43d547b46e510"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:633b9d03fc04abc585c197104b1d0af04b1f1db1abc99f674d871224cd15557a"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ab872cb57ae97c54ba7c71a9e3c9552beb57cb907c789b726895576d1ea9af6f"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bdd8c15c3a14e409507fdf0c0434ec481d85c6cbeec8bdcd342a8cd1eda03825"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2444d8155d9846f206e2079bb355b85f365d9457480b0d71677a112d0a7f7128"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f83bd3d01f04061c3660742dc85143a89d49fd23eb31eccbf60ad56c4b955617"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ca799f882364e69d0872619afb19efa3652b7133c18352e4a3d86a324fb2bb1"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6993d361f28b9ef5f0fa4e79b8541c2f3507be7471b9f9cb403a255e123b31e1"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:170822a1b1719f02b58e3dce194c8ad7d4c5b39be38c0fdec603bd19c6f9cf81"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:0e86e39c1c1a0816ceda836e6f7bd3743b930cbc51a43a81bb433b552f203f25"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:731269812ea837e0b93d913648e404736407408e33a00b75741e8f27c590caa2"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:8e5ff882d3a3d081157ceba7e0ebc7fac775f95b08cbb143accd4cece6043819"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2003071aa633477a01509890c895f9ef56cf3f2eaa72c7ec0b567f743c1abcba"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-win32.whl", hash = "sha256:13857f9070600ea1f940749f123b02d0b027afbaa45e72186df0f278915761d0"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:134b7098ac109834eeea81424b6822f33c4c52bf80b81508295611e7a21be12a"}, + {file = "rapidfuzz-3.9.0-cp312-cp312-win_arm64.whl", hash = "sha256:2a96209f046fe328be30fc43f06e3d4b91f0d5b74e9dcd627dbfd65890fa4a5e"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:544b0bf9d17170720809918e9ccd0d482d4a3a6eca35630d8e1459f737f71755"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d536f8beb8dd82d6efb20fe9f82c2cfab9ffa0384b5d184327e393a4edde91d"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:30f7609da871510583f87484a10820b26555a473a90ab356cdda2f3b4456256c"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f4a2468432a1db491af6f547fad8f6d55fa03e57265c2f20e5eaceb68c7907e"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11a7ec4676242c8a430509cff42ce98bca2fbe30188a63d0f60fdcbfd7e84970"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dcb523243e988c849cf81220164ec3bbed378a699e595a8914fffe80596dc49f"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4eea3bf72c4fe68e957526ffd6bcbb403a21baa6b3344aaae2d3252313df6199"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4514980a5d204c076dd5b756960f6b1b7598f030009456e6109d76c4c331d03c"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9a06a99f1335fe43464d7121bc6540de7cd9c9475ac2025babb373fe7f27846b"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6c1ed63345d1581c39d4446b1a8c8f550709656ce2a3c88c47850b258167f3c2"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:cd2e6e97daf17ebb3254285cf8dd86c60d56d6cf35c67f0f9a557ef26bd66290"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:9bc0f7e6256a9c668482c41c8a3de5d0aa12e8ca346dcc427b97c7edb82cba48"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7c09f4e87e82a164c9db769474bc61f8c8b677f2aeb0234b8abac73d2ecf9799"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-win32.whl", hash = "sha256:e65b8f7921bf60cbb207c132842a6b45eefef48c4c3b510eb16087d6c08c70af"}, + {file = "rapidfuzz-3.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:9d6478957fb35c7844ad08f2442b62ba76c1857a56370781a707eefa4f4981e1"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:65d9250a4b0bf86320097306084bc3ca479c8f5491927c170d018787793ebe95"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:47b7c0840afa724db3b1a070bc6ed5beab73b4e659b1d395023617fc51bf68a2"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3a16c48c6df8fb633efbbdea744361025d01d79bca988f884a620e63e782fe5b"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48105991ff6e4a51c7f754df500baa070270ed3d41784ee0d097549bc9fcb16d"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a7f273906b3c7cc6d63a76e088200805947aa0bc1ada42c6a0e582e19c390d7"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5c396562d304e974b4b0d5cd3afc4f92c113ea46a36e6bc62e45333d6aa8837e"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:68da1b70458fea5290ec9a169fcffe0c17ff7e5bb3c3257e63d7021a50601a8e"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c5b8f9a7b177af6ce7c6ad5b95588b4b73e37917711aafa33b2e79ee80fe709"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3c42a238bf9dd48f4ccec4c6934ac718225b00bb3a438a008c219e7ccb3894c7"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a365886c42177b2beab475a50ba311b59b04f233ceaebc4c341f6f91a86a78e2"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:ce897b5dafb7fb7587a95fe4d449c1ea0b6d9ac4462fbafefdbbeef6eee4cf6a"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:413ac49bae291d7e226a5c9be65c71b2630b3346bce39268d02cb3290232e4b7"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8982fc3bd49d55a91569fc8a3feba0de4cef0b391ff9091be546e9df075b81"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-win32.whl", hash = "sha256:3904d0084ab51f82e9f353031554965524f535522a48ec75c30b223eb5a0a488"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:3733aede16ea112728ffeafeb29ccc62e095ed8ec816822fa2a82e92e2c08696"}, + {file = "rapidfuzz-3.9.0-cp39-cp39-win_arm64.whl", hash = "sha256:fc4e26f592b51f97acf0a3f8dfed95e4d830c6a8fbf359361035df836381ab81"}, + {file = "rapidfuzz-3.9.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e33362e98c7899b5f60dcb06ada00acd8673ce0d59aefe9a542701251fd00423"}, + {file = "rapidfuzz-3.9.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb67cf43ad83cb886cbbbff4df7dcaad7aedf94d64fca31aea0da7d26684283c"}, + {file = "rapidfuzz-3.9.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e2e106cc66453bb80d2ad9c0044f8287415676df5c8036d737d05d4b9cdbf8e"}, + {file = "rapidfuzz-3.9.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1256915f7e7a5cf2c151c9ac44834b37f9bd1c97e8dec6f936884f01b9dfc7d"}, + {file = "rapidfuzz-3.9.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:ae643220584518cbff8bf2974a0494d3e250763af816b73326a512c86ae782ce"}, + {file = "rapidfuzz-3.9.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:491274080742110427f38a6085bb12dffcaff1eef12dccf9e8758398c7e3957e"}, + {file = "rapidfuzz-3.9.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2bc5559b9b94326922c096b30ae2d8e5b40b2e9c2c100c2cc396ad91bcb84d30"}, + {file = "rapidfuzz-3.9.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:849160dc0f128acb343af514ca827278005c1d00148d025e4035e034fc2d8c7f"}, + {file = "rapidfuzz-3.9.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:623883fb78e692d54ed7c43b09beec52c6685f10a45a7518128e25746667403b"}, + {file = "rapidfuzz-3.9.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d20ab9abc7e19767f1951772a6ab14cb4eddd886493c2da5ee12014596ad253f"}, + {file = "rapidfuzz-3.9.0.tar.gz", hash = "sha256:b182f0fb61f6ac435e416eb7ab330d62efdbf9b63cf0c7fa12d1f57c2eaaf6f3"}, ] [package.extras] @@ -3858,13 +4517,13 @@ full = ["numpy"] [[package]] name = "referencing" -version = "0.35.0" +version = "0.35.1" description = "JSON Referencing + Python" optional = false python-versions = ">=3.8" files = [ - {file = "referencing-0.35.0-py3-none-any.whl", hash = "sha256:8080727b30e364e5783152903672df9b6b091c926a146a759080b62ca3126cd6"}, - {file = "referencing-0.35.0.tar.gz", hash = "sha256:191e936b0c696d0af17ad7430a3dc68e88bc11be6514f4757dc890f04ab05889"}, + {file = "referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de"}, + {file = "referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"}, ] [package.dependencies] @@ -3977,110 +4636,110 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] [[package]] name = "rpds-py" -version = "0.18.0" +version = "0.18.1" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false python-versions = ">=3.8" files = [ - {file = "rpds_py-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5b4e7d8d6c9b2e8ee2d55c90b59c707ca59bc30058269b3db7b1f8df5763557e"}, - {file = "rpds_py-0.18.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c463ed05f9dfb9baebef68048aed8dcdc94411e4bf3d33a39ba97e271624f8f7"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01e36a39af54a30f28b73096dd39b6802eddd04c90dbe161c1b8dbe22353189f"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d62dec4976954a23d7f91f2f4530852b0c7608116c257833922a896101336c51"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd18772815d5f008fa03d2b9a681ae38d5ae9f0e599f7dda233c439fcaa00d40"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:923d39efa3cfb7279a0327e337a7958bff00cc447fd07a25cddb0a1cc9a6d2da"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39514da80f971362f9267c600b6d459bfbbc549cffc2cef8e47474fddc9b45b1"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a34d557a42aa28bd5c48a023c570219ba2593bcbbb8dc1b98d8cf5d529ab1434"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93df1de2f7f7239dc9cc5a4a12408ee1598725036bd2dedadc14d94525192fc3"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:34b18ba135c687f4dac449aa5157d36e2cbb7c03cbea4ddbd88604e076aa836e"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c0b5dcf9193625afd8ecc92312d6ed78781c46ecbf39af9ad4681fc9f464af88"}, - {file = "rpds_py-0.18.0-cp310-none-win32.whl", hash = "sha256:c4325ff0442a12113a6379af66978c3fe562f846763287ef66bdc1d57925d337"}, - {file = "rpds_py-0.18.0-cp310-none-win_amd64.whl", hash = "sha256:7223a2a5fe0d217e60a60cdae28d6949140dde9c3bcc714063c5b463065e3d66"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3a96e0c6a41dcdba3a0a581bbf6c44bb863f27c541547fb4b9711fd8cf0ffad4"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30f43887bbae0d49113cbaab729a112251a940e9b274536613097ab8b4899cf6"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcb25daa9219b4cf3a0ab24b0eb9a5cc8949ed4dc72acb8fa16b7e1681aa3c58"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d68c93e381010662ab873fea609bf6c0f428b6d0bb00f2c6939782e0818d37bf"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b34b7aa8b261c1dbf7720b5d6f01f38243e9b9daf7e6b8bc1fd4657000062f2c"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e6d75ab12b0bbab7215e5d40f1e5b738aa539598db27ef83b2ec46747df90e1"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8612cd233543a3781bc659c731b9d607de65890085098986dfd573fc2befe5"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aec493917dd45e3c69d00a8874e7cbed844efd935595ef78a0f25f14312e33c6"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:661d25cbffaf8cc42e971dd570d87cb29a665f49f4abe1f9e76be9a5182c4688"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1df3659d26f539ac74fb3b0c481cdf9d725386e3552c6fa2974f4d33d78e544b"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a1ce3ba137ed54f83e56fb983a5859a27d43a40188ba798993812fed73c70836"}, - {file = "rpds_py-0.18.0-cp311-none-win32.whl", hash = "sha256:69e64831e22a6b377772e7fb337533c365085b31619005802a79242fee620bc1"}, - {file = "rpds_py-0.18.0-cp311-none-win_amd64.whl", hash = "sha256:998e33ad22dc7ec7e030b3df701c43630b5bc0d8fbc2267653577e3fec279afa"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7f2facbd386dd60cbbf1a794181e6aa0bd429bd78bfdf775436020172e2a23f0"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d9a5be316c15ffb2b3c405c4ff14448c36b4435be062a7f578ccd8b01f0c4d8"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd5bf1af8efe569654bbef5a3e0a56eca45f87cfcffab31dd8dde70da5982475"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5417558f6887e9b6b65b4527232553c139b57ec42c64570569b155262ac0754f"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56a737287efecafc16f6d067c2ea0117abadcd078d58721f967952db329a3e5c"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f03bccbd8586e9dd37219bce4d4e0d3ab492e6b3b533e973fa08a112cb2ffc9"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4457a94da0d5c53dc4b3e4de1158bdab077db23c53232f37a3cb7afdb053a4e3"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0ab39c1ba9023914297dd88ec3b3b3c3f33671baeb6acf82ad7ce883f6e8e157"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d54553c1136b50fd12cc17e5b11ad07374c316df307e4cfd6441bea5fb68496"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0af039631b6de0397ab2ba16eaf2872e9f8fca391b44d3d8cac317860a700a3f"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84ffab12db93b5f6bad84c712c92060a2d321b35c3c9960b43d08d0f639d60d7"}, - {file = "rpds_py-0.18.0-cp312-none-win32.whl", hash = "sha256:685537e07897f173abcf67258bee3c05c374fa6fff89d4c7e42fb391b0605e98"}, - {file = "rpds_py-0.18.0-cp312-none-win_amd64.whl", hash = "sha256:e003b002ec72c8d5a3e3da2989c7d6065b47d9eaa70cd8808b5384fbb970f4ec"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:08f9ad53c3f31dfb4baa00da22f1e862900f45908383c062c27628754af2e88e"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0013fe6b46aa496a6749c77e00a3eb07952832ad6166bd481c74bda0dcb6d58"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e32a92116d4f2a80b629778280103d2a510a5b3f6314ceccd6e38006b5e92dcb"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e541ec6f2ec456934fd279a3120f856cd0aedd209fc3852eca563f81738f6861"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bed88b9a458e354014d662d47e7a5baafd7ff81c780fd91584a10d6ec842cb73"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2644e47de560eb7bd55c20fc59f6daa04682655c58d08185a9b95c1970fa1e07"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e8916ae4c720529e18afa0b879473049e95949bf97042e938530e072fde061d"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:465a3eb5659338cf2a9243e50ad9b2296fa15061736d6e26240e713522b6235c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ea7d4a99f3b38c37eac212dbd6ec42b7a5ec51e2c74b5d3223e43c811609e65f"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:67071a6171e92b6da534b8ae326505f7c18022c6f19072a81dcf40db2638767c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:41ef53e7c58aa4ef281da975f62c258950f54b76ec8e45941e93a3d1d8580594"}, - {file = "rpds_py-0.18.0-cp38-none-win32.whl", hash = "sha256:fdea4952db2793c4ad0bdccd27c1d8fdd1423a92f04598bc39425bcc2b8ee46e"}, - {file = "rpds_py-0.18.0-cp38-none-win_amd64.whl", hash = "sha256:7cd863afe7336c62ec78d7d1349a2f34c007a3cc6c2369d667c65aeec412a5b1"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5307def11a35f5ae4581a0b658b0af8178c65c530e94893345bebf41cc139d33"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:77f195baa60a54ef9d2de16fbbfd3ff8b04edc0c0140a761b56c267ac11aa467"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39f5441553f1c2aed4de4377178ad8ff8f9d733723d6c66d983d75341de265ab"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a00312dea9310d4cb7dbd7787e722d2e86a95c2db92fbd7d0155f97127bcb40"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f2fc11e8fe034ee3c34d316d0ad8808f45bc3b9ce5857ff29d513f3ff2923a1"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:586f8204935b9ec884500498ccc91aa869fc652c40c093bd9e1471fbcc25c022"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ddc2f4dfd396c7bfa18e6ce371cba60e4cf9d2e5cdb71376aa2da264605b60b9"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ddcba87675b6d509139d1b521e0c8250e967e63b5909a7e8f8944d0f90ff36f"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7bd339195d84439cbe5771546fe8a4e8a7a045417d8f9de9a368c434e42a721e"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:d7c36232a90d4755b720fbd76739d8891732b18cf240a9c645d75f00639a9024"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6b0817e34942b2ca527b0e9298373e7cc75f429e8da2055607f4931fded23e20"}, - {file = "rpds_py-0.18.0-cp39-none-win32.whl", hash = "sha256:99f70b740dc04d09e6b2699b675874367885217a2e9f782bdf5395632ac663b7"}, - {file = "rpds_py-0.18.0-cp39-none-win_amd64.whl", hash = "sha256:6ef687afab047554a2d366e112dd187b62d261d49eb79b77e386f94644363294"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad36cfb355e24f1bd37cac88c112cd7730873f20fb0bdaf8ba59eedf8216079f"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:36b3ee798c58ace201289024b52788161e1ea133e4ac93fba7d49da5fec0ef9e"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8a2f084546cc59ea99fda8e070be2fd140c3092dc11524a71aa8f0f3d5a55ca"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e4461d0f003a0aa9be2bdd1b798a041f177189c1a0f7619fe8c95ad08d9a45d7"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8db715ebe3bb7d86d77ac1826f7d67ec11a70dbd2376b7cc214199360517b641"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:793968759cd0d96cac1e367afd70c235867831983f876a53389ad869b043c948"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66e6a3af5a75363d2c9a48b07cb27c4ea542938b1a2e93b15a503cdfa8490795"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ef0befbb5d79cf32d0266f5cff01545602344eda89480e1dd88aca964260b18"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d4acf42190d449d5e89654d5c1ed3a4f17925eec71f05e2a41414689cda02d1"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a5f446dd5055667aabaee78487f2b5ab72e244f9bc0b2ffebfeec79051679984"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9dbbeb27f4e70bfd9eec1be5477517365afe05a9b2c441a0b21929ee61048124"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:22806714311a69fd0af9b35b7be97c18a0fc2826e6827dbb3a8c94eac6cf7eeb"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b34ae4636dfc4e76a438ab826a0d1eed2589ca7d9a1b2d5bb546978ac6485461"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c8370641f1a7f0e0669ddccca22f1da893cef7628396431eb445d46d893e5cd"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8362467a0fdeccd47935f22c256bec5e6abe543bf0d66e3d3d57a8fb5731863"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11a8c85ef4a07a7638180bf04fe189d12757c696eb41f310d2426895356dcf05"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b316144e85316da2723f9d8dc75bada12fa58489a527091fa1d5a612643d1a0e"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf1ea2e34868f6fbf070e1af291c8180480310173de0b0c43fc38a02929fc0e3"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e546e768d08ad55b20b11dbb78a745151acbd938f8f00d0cfbabe8b0199b9880"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4901165d170a5fde6f589acb90a6b33629ad1ec976d4529e769c6f3d885e3e80"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:618a3d6cae6ef8ec88bb76dd80b83cfe415ad4f1d942ca2a903bf6b6ff97a2da"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ed4eb745efbff0a8e9587d22a84be94a5eb7d2d99c02dacf7bd0911713ed14dd"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c81e5f372cd0dc5dc4809553d34f832f60a46034a5f187756d9b90586c2c307"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:43fbac5f22e25bee1d482c97474f930a353542855f05c1161fd804c9dc74a09d"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d7faa6f14017c0b1e69f5e2c357b998731ea75a442ab3841c0dbbbfe902d2c4"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:08231ac30a842bd04daabc4d71fddd7e6d26189406d5a69535638e4dcb88fe76"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:044a3e61a7c2dafacae99d1e722cc2d4c05280790ec5a05031b3876809d89a5c"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f26b5bd1079acdb0c7a5645e350fe54d16b17bfc5e71f371c449383d3342e17"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:482103aed1dfe2f3b71a58eff35ba105289b8d862551ea576bd15479aba01f66"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1374f4129f9bcca53a1bba0bb86bf78325a0374577cf7e9e4cd046b1e6f20e24"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:635dc434ff724b178cb192c70016cc0ad25a275228f749ee0daf0eddbc8183b1"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:bc362ee4e314870a70f4ae88772d72d877246537d9f8cb8f7eacf10884862432"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:4832d7d380477521a8c1644bbab6588dfedea5e30a7d967b5fb75977c45fd77f"}, - {file = "rpds_py-0.18.0.tar.gz", hash = "sha256:42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"}, + {file = "rpds_py-0.18.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:d31dea506d718693b6b2cffc0648a8929bdc51c70a311b2770f09611caa10d53"}, + {file = "rpds_py-0.18.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:732672fbc449bab754e0b15356c077cc31566df874964d4801ab14f71951ea80"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a98a1f0552b5f227a3d6422dbd61bc6f30db170939bd87ed14f3c339aa6c7c9"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7f1944ce16401aad1e3f7d312247b3d5de7981f634dc9dfe90da72b87d37887d"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38e14fb4e370885c4ecd734f093a2225ee52dc384b86fa55fe3f74638b2cfb09"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08d74b184f9ab6289b87b19fe6a6d1a97fbfea84b8a3e745e87a5de3029bf944"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d70129cef4a8d979caa37e7fe957202e7eee8ea02c5e16455bc9808a59c6b2f0"}, + {file = "rpds_py-0.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ce0bb20e3a11bd04461324a6a798af34d503f8d6f1aa3d2aa8901ceaf039176d"}, + {file = "rpds_py-0.18.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:81c5196a790032e0fc2464c0b4ab95f8610f96f1f2fa3d4deacce6a79852da60"}, + {file = "rpds_py-0.18.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:f3027be483868c99b4985fda802a57a67fdf30c5d9a50338d9db646d590198da"}, + {file = "rpds_py-0.18.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d44607f98caa2961bab4fa3c4309724b185b464cdc3ba6f3d7340bac3ec97cc1"}, + {file = "rpds_py-0.18.1-cp310-none-win32.whl", hash = "sha256:c273e795e7a0f1fddd46e1e3cb8be15634c29ae8ff31c196debb620e1edb9333"}, + {file = "rpds_py-0.18.1-cp310-none-win_amd64.whl", hash = "sha256:8352f48d511de5f973e4f2f9412736d7dea76c69faa6d36bcf885b50c758ab9a"}, + {file = "rpds_py-0.18.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:6b5ff7e1d63a8281654b5e2896d7f08799378e594f09cf3674e832ecaf396ce8"}, + {file = "rpds_py-0.18.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8927638a4d4137a289e41d0fd631551e89fa346d6dbcfc31ad627557d03ceb6d"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:154bf5c93d79558b44e5b50cc354aa0459e518e83677791e6adb0b039b7aa6a7"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:07f2139741e5deb2c5154a7b9629bc5aa48c766b643c1a6750d16f865a82c5fc"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8c7672e9fba7425f79019db9945b16e308ed8bc89348c23d955c8c0540da0a07"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:489bdfe1abd0406eba6b3bb4fdc87c7fa40f1031de073d0cfb744634cc8fa261"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c20f05e8e3d4fc76875fc9cb8cf24b90a63f5a1b4c5b9273f0e8225e169b100"}, + {file = "rpds_py-0.18.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:967342e045564cef76dfcf1edb700b1e20838d83b1aa02ab313e6a497cf923b8"}, + {file = "rpds_py-0.18.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:2cc7c1a47f3a63282ab0f422d90ddac4aa3034e39fc66a559ab93041e6505da7"}, + {file = "rpds_py-0.18.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:f7afbfee1157e0f9376c00bb232e80a60e59ed716e3211a80cb8506550671e6e"}, + {file = "rpds_py-0.18.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:9e6934d70dc50f9f8ea47081ceafdec09245fd9f6032669c3b45705dea096b88"}, + {file = "rpds_py-0.18.1-cp311-none-win32.whl", hash = "sha256:c69882964516dc143083d3795cb508e806b09fc3800fd0d4cddc1df6c36e76bb"}, + {file = "rpds_py-0.18.1-cp311-none-win_amd64.whl", hash = "sha256:70a838f7754483bcdc830444952fd89645569e7452e3226de4a613a4c1793fb2"}, + {file = "rpds_py-0.18.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:3dd3cd86e1db5aadd334e011eba4e29d37a104b403e8ca24dcd6703c68ca55b3"}, + {file = "rpds_py-0.18.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:05f3d615099bd9b13ecf2fc9cf2d839ad3f20239c678f461c753e93755d629ee"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35b2b771b13eee8729a5049c976197ff58a27a3829c018a04341bcf1ae409b2b"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ee17cd26b97d537af8f33635ef38be873073d516fd425e80559f4585a7b90c43"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b646bf655b135ccf4522ed43d6902af37d3f5dbcf0da66c769a2b3938b9d8184"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19ba472b9606c36716062c023afa2484d1e4220548751bda14f725a7de17b4f6"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e30ac5e329098903262dc5bdd7e2086e0256aa762cc8b744f9e7bf2a427d3f8"}, + {file = "rpds_py-0.18.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d58ad6317d188c43750cb76e9deacf6051d0f884d87dc6518e0280438648a9ac"}, + {file = "rpds_py-0.18.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e1735502458621921cee039c47318cb90b51d532c2766593be6207eec53e5c4c"}, + {file = "rpds_py-0.18.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:f5bab211605d91db0e2995a17b5c6ee5edec1270e46223e513eaa20da20076ac"}, + {file = "rpds_py-0.18.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2fc24a329a717f9e2448f8cd1f960f9dac4e45b6224d60734edeb67499bab03a"}, + {file = "rpds_py-0.18.1-cp312-none-win32.whl", hash = "sha256:1805d5901779662d599d0e2e4159d8a82c0b05faa86ef9222bf974572286b2b6"}, + {file = "rpds_py-0.18.1-cp312-none-win_amd64.whl", hash = "sha256:720edcb916df872d80f80a1cc5ea9058300b97721efda8651efcd938a9c70a72"}, + {file = "rpds_py-0.18.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:c827576e2fa017a081346dce87d532a5310241648eb3700af9a571a6e9fc7e74"}, + {file = "rpds_py-0.18.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:aa3679e751408d75a0b4d8d26d6647b6d9326f5e35c00a7ccd82b78ef64f65f8"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0abeee75434e2ee2d142d650d1e54ac1f8b01e6e6abdde8ffd6eeac6e9c38e20"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed402d6153c5d519a0faf1bb69898e97fb31613b49da27a84a13935ea9164dfc"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:338dee44b0cef8b70fd2ef54b4e09bb1b97fc6c3a58fea5db6cc083fd9fc2724"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7750569d9526199c5b97e5a9f8d96a13300950d910cf04a861d96f4273d5b104"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:607345bd5912aacc0c5a63d45a1f73fef29e697884f7e861094e443187c02be5"}, + {file = "rpds_py-0.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:207c82978115baa1fd8d706d720b4a4d2b0913df1c78c85ba73fe6c5804505f0"}, + {file = "rpds_py-0.18.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:6d1e42d2735d437e7e80bab4d78eb2e459af48c0a46e686ea35f690b93db792d"}, + {file = "rpds_py-0.18.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:5463c47c08630007dc0fe99fb480ea4f34a89712410592380425a9b4e1611d8e"}, + {file = "rpds_py-0.18.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:06d218939e1bf2ca50e6b0ec700ffe755e5216a8230ab3e87c059ebb4ea06afc"}, + {file = "rpds_py-0.18.1-cp38-none-win32.whl", hash = "sha256:312fe69b4fe1ffbe76520a7676b1e5ac06ddf7826d764cc10265c3b53f96dbe9"}, + {file = "rpds_py-0.18.1-cp38-none-win_amd64.whl", hash = "sha256:9437ca26784120a279f3137ee080b0e717012c42921eb07861b412340f85bae2"}, + {file = "rpds_py-0.18.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:19e515b78c3fc1039dd7da0a33c28c3154458f947f4dc198d3c72db2b6b5dc93"}, + {file = "rpds_py-0.18.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a7b28c5b066bca9a4eb4e2f2663012debe680f097979d880657f00e1c30875a0"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:673fdbbf668dd958eff750e500495ef3f611e2ecc209464f661bc82e9838991e"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d960de62227635d2e61068f42a6cb6aae91a7fe00fca0e3aeed17667c8a34611"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:352a88dc7892f1da66b6027af06a2e7e5d53fe05924cc2cfc56495b586a10b72"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e0ee01ad8260184db21468a6e1c37afa0529acc12c3a697ee498d3c2c4dcaf3"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4c39ad2f512b4041343ea3c7894339e4ca7839ac38ca83d68a832fc8b3748ab"}, + {file = "rpds_py-0.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aaa71ee43a703c321906813bb252f69524f02aa05bf4eec85f0c41d5d62d0f4c"}, + {file = "rpds_py-0.18.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6cd8098517c64a85e790657e7b1e509b9fe07487fd358e19431cb120f7d96338"}, + {file = "rpds_py-0.18.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:4adec039b8e2928983f885c53b7cc4cda8965b62b6596501a0308d2703f8af1b"}, + {file = "rpds_py-0.18.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:32b7daaa3e9389db3695964ce8e566e3413b0c43e3394c05e4b243a4cd7bef26"}, + {file = "rpds_py-0.18.1-cp39-none-win32.whl", hash = "sha256:2625f03b105328729f9450c8badda34d5243231eef6535f80064d57035738360"}, + {file = "rpds_py-0.18.1-cp39-none-win_amd64.whl", hash = "sha256:bf18932d0003c8c4d51a39f244231986ab23ee057d235a12b2684ea26a353590"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cbfbea39ba64f5e53ae2915de36f130588bba71245b418060ec3330ebf85678e"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:a3d456ff2a6a4d2adcdf3c1c960a36f4fd2fec6e3b4902a42a384d17cf4e7a65"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7700936ef9d006b7ef605dc53aa364da2de5a3aa65516a1f3ce73bf82ecfc7ae"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:51584acc5916212e1bf45edd17f3a6b05fe0cbb40482d25e619f824dccb679de"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:942695a206a58d2575033ff1e42b12b2aece98d6003c6bc739fbf33d1773b12f"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b906b5f58892813e5ba5c6056d6a5ad08f358ba49f046d910ad992196ea61397"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6f8e3fecca256fefc91bb6765a693d96692459d7d4c644660a9fff32e517843"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7732770412bab81c5a9f6d20aeb60ae943a9b36dcd990d876a773526468e7163"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:bd1105b50ede37461c1d51b9698c4f4be6e13e69a908ab7751e3807985fc0346"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:618916f5535784960f3ecf8111581f4ad31d347c3de66d02e728de460a46303c"}, + {file = "rpds_py-0.18.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:17c6d2155e2423f7e79e3bb18151c686d40db42d8645e7977442170c360194d4"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c4c4c3f878df21faf5fac86eda32671c27889e13570645a9eea0a1abdd50922"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:fab6ce90574645a0d6c58890e9bcaac8d94dff54fb51c69e5522a7358b80ab64"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:531796fb842b53f2695e94dc338929e9f9dbf473b64710c28af5a160b2a8927d"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:740884bc62a5e2bbb31e584f5d23b32320fd75d79f916f15a788d527a5e83644"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:998125738de0158f088aef3cb264a34251908dd2e5d9966774fdab7402edfab7"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e2be6e9dd4111d5b31ba3b74d17da54a8319d8168890fbaea4b9e5c3de630ae5"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d0cee71bc618cd93716f3c1bf56653740d2d13ddbd47673efa8bf41435a60daa"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2c3caec4ec5cd1d18e5dd6ae5194d24ed12785212a90b37f5f7f06b8bedd7139"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:27bba383e8c5231cd559affe169ca0b96ec78d39909ffd817f28b166d7ddd4d8"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:a888e8bdb45916234b99da2d859566f1e8a1d2275a801bb8e4a9644e3c7e7909"}, + {file = "rpds_py-0.18.1-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:6031b25fb1b06327b43d841f33842b383beba399884f8228a6bb3df3088485ff"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:48c2faaa8adfacefcbfdb5f2e2e7bdad081e5ace8d182e5f4ade971f128e6bb3"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:d85164315bd68c0806768dc6bb0429c6f95c354f87485ee3593c4f6b14def2bd"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6afd80f6c79893cfc0574956f78a0add8c76e3696f2d6a15bca2c66c415cf2d4"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fa242ac1ff583e4ec7771141606aafc92b361cd90a05c30d93e343a0c2d82a89"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d21be4770ff4e08698e1e8e0bce06edb6ea0626e7c8f560bc08222880aca6a6f"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c45a639e93a0c5d4b788b2613bd637468edd62f8f95ebc6fcc303d58ab3f0a8"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:910e71711d1055b2768181efa0a17537b2622afeb0424116619817007f8a2b10"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b9bb1f182a97880f6078283b3505a707057c42bf55d8fca604f70dedfdc0772a"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d54f74f40b1f7aaa595a02ff42ef38ca654b1469bef7d52867da474243cc633"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:8d2e182c9ee01135e11e9676e9a62dfad791a7a467738f06726872374a83db49"}, + {file = "rpds_py-0.18.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:636a15acc588f70fda1661234761f9ed9ad79ebed3f2125d44be0862708b666e"}, + {file = "rpds_py-0.18.1.tar.gz", hash = "sha256:dc48b479d540770c811fbd1eb9ba2bb66951863e448efec2e2c102625328e92f"}, ] [[package]] @@ -4123,6 +4782,53 @@ files = [ {file = "ruff-0.1.15.tar.gz", hash = "sha256:f6dfa8c1b21c913c326919056c390966648b680966febcb796cc9d1aaab8564e"}, ] +[[package]] +name = "scikit-learn" +version = "1.3.2" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scikit-learn-1.3.2.tar.gz", hash = "sha256:a2f54c76accc15a34bfb9066e6c7a56c1e7235dda5762b990792330b52ccfb05"}, + {file = "scikit_learn-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e326c0eb5cf4d6ba40f93776a20e9a7a69524c4db0757e7ce24ba222471ee8a1"}, + {file = "scikit_learn-1.3.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:535805c2a01ccb40ca4ab7d081d771aea67e535153e35a1fd99418fcedd1648a"}, + {file = "scikit_learn-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1215e5e58e9880b554b01187b8c9390bf4dc4692eedeaf542d3273f4785e342c"}, + {file = "scikit_learn-1.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ee107923a623b9f517754ea2f69ea3b62fc898a3641766cb7deb2f2ce450161"}, + {file = "scikit_learn-1.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:35a22e8015048c628ad099da9df5ab3004cdbf81edc75b396fd0cff8699ac58c"}, + {file = "scikit_learn-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6fb6bc98f234fda43163ddbe36df8bcde1d13ee176c6dc9b92bb7d3fc842eb66"}, + {file = "scikit_learn-1.3.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:18424efee518a1cde7b0b53a422cde2f6625197de6af36da0b57ec502f126157"}, + {file = "scikit_learn-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3271552a5eb16f208a6f7f617b8cc6d1f137b52c8a1ef8edf547db0259b2c9fb"}, + {file = "scikit_learn-1.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4144a5004a676d5022b798d9e573b05139e77f271253a4703eed295bde0433"}, + {file = "scikit_learn-1.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:67f37d708f042a9b8d59551cf94d30431e01374e00dc2645fa186059c6c5d78b"}, + {file = "scikit_learn-1.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8db94cd8a2e038b37a80a04df8783e09caac77cbe052146432e67800e430c028"}, + {file = "scikit_learn-1.3.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:61a6efd384258789aa89415a410dcdb39a50e19d3d8410bd29be365bcdd512d5"}, + {file = "scikit_learn-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb06f8dce3f5ddc5dee1715a9b9f19f20d295bed8e3cd4fa51e1d050347de525"}, + {file = "scikit_learn-1.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b2de18d86f630d68fe1f87af690d451388bb186480afc719e5f770590c2ef6c"}, + {file = "scikit_learn-1.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:0402638c9a7c219ee52c94cbebc8fcb5eb9fe9c773717965c1f4185588ad3107"}, + {file = "scikit_learn-1.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a19f90f95ba93c1a7f7924906d0576a84da7f3b2282ac3bfb7a08a32801add93"}, + {file = "scikit_learn-1.3.2-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:b8692e395a03a60cd927125eef3a8e3424d86dde9b2370d544f0ea35f78a8073"}, + {file = "scikit_learn-1.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15e1e94cc23d04d39da797ee34236ce2375ddea158b10bee3c343647d615581d"}, + {file = "scikit_learn-1.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:785a2213086b7b1abf037aeadbbd6d67159feb3e30263434139c98425e3dcfcf"}, + {file = "scikit_learn-1.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:64381066f8aa63c2710e6b56edc9f0894cc7bf59bd71b8ce5613a4559b6145e0"}, + {file = "scikit_learn-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6c43290337f7a4b969d207e620658372ba3c1ffb611f8bc2b6f031dc5c6d1d03"}, + {file = "scikit_learn-1.3.2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:dc9002fc200bed597d5d34e90c752b74df516d592db162f756cc52836b38fe0e"}, + {file = "scikit_learn-1.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d08ada33e955c54355d909b9c06a4789a729977f165b8bae6f225ff0a60ec4a"}, + {file = "scikit_learn-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:763f0ae4b79b0ff9cca0bf3716bcc9915bdacff3cebea15ec79652d1cc4fa5c9"}, + {file = "scikit_learn-1.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:ed932ea780517b00dae7431e031faae6b49b20eb6950918eb83bd043237950e0"}, +] + +[package.dependencies] +joblib = ">=1.1.1" +numpy = ">=1.17.3,<2.0" +scipy = ">=1.5.0" +threadpoolctl = ">=2.0.0" + +[package.extras] +benchmark = ["matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "pandas (>=1.0.5)"] +docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)", "sphinx (>=6.0.0)", "sphinx-copybutton (>=0.5.2)", "sphinx-gallery (>=0.10.1)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=3.1.3)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)"] +tests = ["black (>=23.3.0)", "matplotlib (>=3.1.3)", "mypy (>=1.3)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.0.272)", "scikit-image (>=0.16.2)"] + [[package]] name = "scipy" version = "1.10.1" @@ -4424,8 +5130,8 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.22.3,<2", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}, {version = ">=1.18,<2", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, + {version = ">=1.22.3,<2", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}, ] packaging = ">=21.3" pandas = ">=1.0,<2.1.0 || >2.1.0" @@ -4469,17 +5175,29 @@ tinycss2 = ">=0.6.0" [[package]] name = "tenacity" -version = "8.2.3" +version = "8.3.0" description = "Retry code until it succeeds" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, - {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, + {file = "tenacity-8.3.0-py3-none-any.whl", hash = "sha256:3649f6443dbc0d9b01b9d8020a9c4ec7a1ff5f6f3c6c8a036ef371f573fe9185"}, + {file = "tenacity-8.3.0.tar.gz", hash = "sha256:953d4e6ad24357bceffbc9707bc74349aca9d245f68eb65419cf0c249a1949a2"}, ] [package.extras] -doc = ["reno", "sphinx", "tornado (>=4.5)"] +doc = ["reno", "sphinx"] +test = ["pytest", "tornado (>=4.5)", "typeguard"] + +[[package]] +name = "threadpoolctl" +version = "3.5.0" +description = "threadpoolctl" +optional = false +python-versions = ">=3.8" +files = [ + {file = "threadpoolctl-3.5.0-py3-none-any.whl", hash = "sha256:56c1e26c150397e58c4926da8eeee87533b1e32bef131bd4bf6a2f45f3185467"}, + {file = "threadpoolctl-3.5.0.tar.gz", hash = "sha256:082433502dd922bf738de0d8bcc4fdcbf0979ff44c42bd40f5af8a282f6fa107"}, +] [[package]] name = "tinycss2" @@ -4512,13 +5230,24 @@ files = [ [[package]] name = "tomlkit" -version = "0.12.4" +version = "0.12.5" description = "Style preserving TOML library" optional = false python-versions = ">=3.7" files = [ - {file = "tomlkit-0.12.4-py3-none-any.whl", hash = "sha256:5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"}, - {file = "tomlkit-0.12.4.tar.gz", hash = "sha256:7ca1cfc12232806517a8515047ba66a19369e71edf2439d0f5824f91032b6cc3"}, + {file = "tomlkit-0.12.5-py3-none-any.whl", hash = "sha256:af914f5a9c59ed9d0762c7b64d3b5d5df007448eb9cd2edc8a46b1eafead172f"}, + {file = "tomlkit-0.12.5.tar.gz", hash = "sha256:eef34fba39834d4d6b73c9ba7f3e4d1c417a4e56f89a7e96e090dd0d24b8fb3c"}, +] + +[[package]] +name = "toolz" +version = "0.12.1" +description = "List processing tools and functional utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "toolz-0.12.1-py3-none-any.whl", hash = "sha256:d22731364c07d72eea0a0ad45bafb2c2937ab6fd38a3507bf55eae8744aa7d85"}, + {file = "toolz-0.12.1.tar.gz", hash = "sha256:ecca342664893f177a13dac0e6b41cbd8ac25a358e5f215316d43e2100224f4d"}, ] [[package]] @@ -4543,13 +5272,13 @@ files = [ [[package]] name = "tox" -version = "4.14.2" +version = "4.15.0" description = "tox is a generic virtualenv management and test command line tool" optional = false python-versions = ">=3.8" files = [ - {file = "tox-4.14.2-py3-none-any.whl", hash = "sha256:2900c4eb7b716af4a928a7fdc2ed248ad6575294ed7cfae2ea41203937422847"}, - {file = "tox-4.14.2.tar.gz", hash = "sha256:0defb44f6dafd911b61788325741cc6b2e12ea71f987ac025ad4d649f1f1a104"}, + {file = "tox-4.15.0-py3-none-any.whl", hash = "sha256:300055f335d855b2ab1b12c5802de7f62a36d4fd53f30bd2835f6a201dda46ea"}, + {file = "tox-4.15.0.tar.gz", hash = "sha256:7a0beeef166fbe566f54f795b4906c31b428eddafc0102ac00d20998dd1933f6"}, ] [package.dependencies] @@ -4701,13 +5430,13 @@ standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", [[package]] name = "virtualenv" -version = "20.26.0" +version = "20.26.1" description = "Virtual Python Environment builder" optional = false python-versions = ">=3.7" files = [ - {file = "virtualenv-20.26.0-py3-none-any.whl", hash = "sha256:0846377ea76e818daaa3e00a4365c018bc3ac9760cbb3544de542885aad61fb3"}, - {file = "virtualenv-20.26.0.tar.gz", hash = "sha256:ec25a9671a5102c8d2657f62792a27b48f016664c6873f6beed3800008577210"}, + {file = "virtualenv-20.26.1-py3-none-any.whl", hash = "sha256:7aa9982a728ae5892558bff6a2839c00b9ed145523ece2274fad6f414690ae75"}, + {file = "virtualenv-20.26.1.tar.gz", hash = "sha256:604bfdceaeece392802e6ae48e69cec49168b9c5f4a44e483963f9242eb0e78b"}, ] [package.dependencies] @@ -4822,6 +5551,85 @@ files = [ {file = "websockets-12.0.tar.gz", hash = "sha256:81df9cbcbb6c260de1e007e58c011bfebe2dafc8435107b0537f393dd38c8b1b"}, ] +[[package]] +name = "wrapt" +version = "1.16.0" +description = "Module for decorators, wrappers and monkey patching." +optional = false +python-versions = ">=3.6" +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"}, +] + [[package]] name = "xattr" version = "1.1.0" @@ -5052,7 +5860,60 @@ files = [ docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +[[package]] +name = "zope-interface" +version = "6.3" +description = "Interfaces for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "zope.interface-6.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2f32010ffb87759c6a3ad1c65ed4d2e38e51f6b430a1ca11cee901ec2b42e021"}, + {file = "zope.interface-6.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e78a183a3c2f555c2ad6aaa1ab572d1c435ba42f1dc3a7e8c82982306a19b785"}, + {file = "zope.interface-6.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa0491a9f154cf8519a02026dc85a416192f4cb1efbbf32db4a173ba28b289a"}, + {file = "zope.interface-6.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62e32f02b3f26204d9c02c3539c802afc3eefb19d601a0987836ed126efb1f21"}, + {file = "zope.interface-6.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c40df4aea777be321b7e68facb901bc67317e94b65d9ab20fb96e0eb3c0b60a1"}, + {file = "zope.interface-6.3-cp310-cp310-win_amd64.whl", hash = "sha256:46034be614d1f75f06e7dcfefba21d609b16b38c21fc912b01a99cb29e58febb"}, + {file = "zope.interface-6.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:600101f43a7582d5b9504a7c629a1185a849ce65e60fca0f6968dfc4b76b6d39"}, + {file = "zope.interface-6.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4d6b229f5e1a6375f206455cc0a63a8e502ed190fe7eb15e94a312dc69d40299"}, + {file = "zope.interface-6.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10cde8dc6b2fd6a1d0b5ca4be820063e46ddba417ab82bcf55afe2227337b130"}, + {file = "zope.interface-6.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:40aa8c8e964d47d713b226c5baf5f13cdf3a3169c7a2653163b17ff2e2334d10"}, + {file = "zope.interface-6.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d165d7774d558ea971cb867739fb334faf68fc4756a784e689e11efa3becd59e"}, + {file = "zope.interface-6.3-cp311-cp311-win_amd64.whl", hash = "sha256:69dedb790530c7ca5345899a1b4cb837cc53ba669051ea51e8c18f82f9389061"}, + {file = "zope.interface-6.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8d407e0fd8015f6d5dfad481309638e1968d70e6644e0753f229154667dd6cd5"}, + {file = "zope.interface-6.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:72d5efecad16c619a97744a4f0b67ce1bcc88115aa82fcf1dc5be9bb403bcc0b"}, + {file = "zope.interface-6.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:567d54c06306f9c5b6826190628d66753b9f2b0422f4c02d7c6d2b97ebf0a24e"}, + {file = "zope.interface-6.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:483e118b1e075f1819b3c6ace082b9d7d3a6a5eb14b2b375f1b80a0868117920"}, + {file = "zope.interface-6.3-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb78c12c1ad3a20c0d981a043d133299117b6854f2e14893b156979ed4e1d2c"}, + {file = "zope.interface-6.3-cp312-cp312-win_amd64.whl", hash = "sha256:ad4524289d8dbd6fb5aa17aedb18f5643e7d48358f42c007a5ee51a2afc2a7c5"}, + {file = "zope.interface-6.3-cp37-cp37m-macosx_11_0_x86_64.whl", hash = "sha256:a56fe1261230093bfeedc1c1a6cd6f3ec568f9b07f031c9a09f46b201f793a85"}, + {file = "zope.interface-6.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:014bb94fe6bf1786da1aa044eadf65bc6437bcb81c451592987e5be91e70a91e"}, + {file = "zope.interface-6.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22e8a218e8e2d87d4d9342aa973b7915297a08efbebea5b25900c73e78ed468e"}, + {file = "zope.interface-6.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f95bebd0afe86b2adc074df29edb6848fc4d474ff24075e2c263d698774e108d"}, + {file = "zope.interface-6.3-cp37-cp37m-win_amd64.whl", hash = "sha256:d0e7321557c702bd92dac3c66a2f22b963155fdb4600133b6b29597f62b71b12"}, + {file = "zope.interface-6.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:187f7900b63845dcdef1be320a523dbbdba94d89cae570edc2781eb55f8c2f86"}, + {file = "zope.interface-6.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a058e6cf8d68a5a19cb5449f42a404f0d6c2778b897e6ce8fadda9cea308b1b0"}, + {file = "zope.interface-6.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8fa0fb05083a1a4216b4b881fdefa71c5d9a106e9b094cd4399af6b52873e91"}, + {file = "zope.interface-6.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:26c9a37fb395a703e39b11b00b9e921c48f82b6e32cc5851ad5d0618cd8876b5"}, + {file = "zope.interface-6.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1b0c4c90e5eefca2c3e045d9f9ed9f1e2cdbe70eb906bff6b247e17119ad89a1"}, + {file = "zope.interface-6.3-cp38-cp38-win_amd64.whl", hash = "sha256:5683aa8f2639016fd2b421df44301f10820e28a9b96382a6e438e5c6427253af"}, + {file = "zope.interface-6.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2c3cfb272bcb83650e6695d49ae0d14dd06dc694789a3d929f23758557a23d92"}, + {file = "zope.interface-6.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:01a0b3dd012f584afcf03ed814bce0fc40ed10e47396578621509ac031be98bf"}, + {file = "zope.interface-6.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4137025731e824eee8d263b20682b28a0bdc0508de9c11d6c6be54163e5b7c83"}, + {file = "zope.interface-6.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c8731596198198746f7ce2a4487a0edcbc9ea5e5918f0ab23c4859bce56055c"}, + {file = "zope.interface-6.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf34840e102d1d0b2d39b1465918d90b312b1119552cebb61a242c42079817b9"}, + {file = "zope.interface-6.3-cp39-cp39-win_amd64.whl", hash = "sha256:a1adc14a2a9d5e95f76df625a9b39f4709267a483962a572e3f3001ef90ea6e6"}, + {file = "zope.interface-6.3.tar.gz", hash = "sha256:f83d6b4b22262d9a826c3bd4b2fbfafe1d0000f085ef8e44cd1328eea274ae6a"}, +] + +[package.dependencies] +setuptools = "*" + +[package.extras] +docs = ["Sphinx", "repoze.sphinx.autointerface", "sphinx-rtd-theme"] +test = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] +testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] + [metadata] lock-version = "2.0" python-versions = "^3.8.1,<3.12" -content-hash = "7dc546f808d5c75fc49d06a176cb053560ec0eaaf9da24e95716e8334672ae50" +content-hash = "e282483545e285ecd43a23ed052348d61e0693a273dfb5faad5c3429f153c44a" diff --git a/cli/pyproject.toml b/cli/pyproject.toml index 1ff6afa4d21d..da0a26c1f272 100644 --- a/cli/pyproject.toml +++ b/cli/pyproject.toml @@ -17,13 +17,13 @@ openbb = 'openbb_cli.cli:main' python = "^3.8.1,<3.12" # OpenBB dependencies -openbb = "^4.1.6" -openbb-charting = "^2.0.2" +openbb = { version = "^4.1.7", extras = ["all"] } # Terminal dependencies prompt-toolkit = "^3.0.16" rich = "^13" python-dotenv = "^1.0.0" +openpyxl = "^3.1.2" [tool.poetry.group.dev.dependencies] openbb-devtools = "^1.1.3" From b99655a9733599c45588a3c6fd4d0c436a8ca3b2 Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Mon, 13 May 2024 10:21:11 +0200 Subject: [PATCH 22/44] [BugFix] - Remove unused old code (#6395) * Remove unused old code * Remvove from settings choices * Fix CLI exit when FileNotFound error on routine --------- Co-authored-by: Henrique Joaquim --- cli/openbb_cli/controllers/cli_controller.py | 20 ++--- .../controllers/settings_controller.py | 1 - cli/openbb_cli/controllers/utils.py | 90 ------------------- 3 files changed, 9 insertions(+), 102 deletions(-) diff --git a/cli/openbb_cli/controllers/cli_controller.py b/cli/openbb_cli/controllers/cli_controller.py index aec72410a84e..5f16f0702298 100644 --- a/cli/openbb_cli/controllers/cli_controller.py +++ b/cli/openbb_cli/controllers/cli_controller.py @@ -16,7 +16,6 @@ from types import MethodType from typing import Any, Dict, List, Optional -import certifi import pandas as pd import requests from openbb import obb @@ -37,7 +36,6 @@ bootup, first_time_user, get_flair_and_username, - is_installer, parse_and_split_input, print_goodbye, print_rich_table, @@ -66,13 +64,6 @@ env_file = str(ENV_FILE_SETTINGS) session = Session() -if is_installer(): - # Necessary for installer so that it can locate the correct certificates for - # API calls and https - # https://stackoverflow.com/questions/27835619/urllib-and-ssl-certificate-verify-failed-error/73270162#73270162 - os.environ["REQUESTS_CA_BUNDLE"] = certifi.where() - os.environ["SSL_CERT_FILE"] = certifi.where() - class CLIController(BaseController): """CLI Controller class.""" @@ -432,8 +423,9 @@ def call_exe(self, other_args: List[str]): else: return - with open(routine_path) as fp: - raw_lines = list(fp) + try: + with open(routine_path) as fp: + raw_lines = list(fp) # Capture ARGV either as list if args separated by commas or as single value if ns_parser.routine_args: @@ -487,6 +479,12 @@ def call_exe(self, other_args: List[str]): ) self.queue = self.queue[1:] + except FileNotFoundError: + session.console.print( + f"[red]File '{routine_path}' doesn't exist.[/red]\n" + ) + return + def handle_job_cmds(jobs_cmds: Optional[List[str]]) -> Optional[List[str]]: """Handle job commands.""" diff --git a/cli/openbb_cli/controllers/settings_controller.py b/cli/openbb_cli/controllers/settings_controller.py index f01742f6cb20..8783ef47e1b7 100644 --- a/cli/openbb_cli/controllers/settings_controller.py +++ b/cli/openbb_cli/controllers/settings_controller.py @@ -19,7 +19,6 @@ class SettingsController(BaseController): """Settings Controller class.""" CHOICES_COMMANDS: List[str] = [ - "tab", "interactive", "cls", "watermark", diff --git a/cli/openbb_cli/controllers/utils.py b/cli/openbb_cli/controllers/utils.py index cfeb7cbadab8..333ad0b0cc60 100644 --- a/cli/openbb_cli/controllers/utils.py +++ b/cli/openbb_cli/controllers/utils.py @@ -21,7 +21,6 @@ from openbb_cli.config.constants import AVAILABLE_FLAIRS, ENV_FILE_SETTINGS from openbb_cli.session import Session from openbb_core.app.model.charts.charting_settings import ChartingSettings -from packaging import version from pytz import all_timezones, timezone from rich.table import Table @@ -91,24 +90,6 @@ def print_goodbye(): Session().console.print(text) -def hide_splashscreen(): - """Hide the splashscreen on Windows bundles. - - `pyi_splash` is a PyInstaller "fake-package" that's used to communicate - with the splashscreen on Windows. - Sending the `close` signal to the splash screen is required. - The splash screen remains open until this function is called or the Python - program is terminated. - """ - try: - import pyi_splash # type: ignore # pylint: disable=import-outside-toplevel - - pyi_splash.update_text("CLI Loaded!") - pyi_splash.close() - except Exception as e: - Session().console.print(f"Error: Unable to hide splashscreen: {e}") - - def print_guest_block_msg(): """Block guest users from using the cli.""" if Session().is_local(): @@ -120,19 +101,11 @@ def print_guest_block_msg(): ) -def is_installer() -> bool: - """Check whether or not it is a packaged version (Windows or Mac installer.""" - return getattr(sys, "frozen", False) and hasattr(sys, "_MEIPASS") - - def bootup(): """Bootup the cli.""" if sys.platform == "win32": # Enable VT100 Escape Sequence for WINDOWS 10 Ver. 1607 os.system("") # nosec # noqa: S605,S607 - # Hide splashscreen loader of the packaged app - if is_installer(): - hide_splashscreen() try: if os.name == "nt": @@ -144,69 +117,6 @@ def bootup(): Session().console.print(e, "\n") -def check_for_updates() -> None: - """Check if the latest version is running. - - Checks github for the latest release version and compares it to cfg.VERSION. - """ - # The commit has was commented out because the terminal was crashing due to git import for multiple users - # ({str(git.Repo('.').head.commit)[:7]}) - try: - r = request( - "https://api.github.com/repos/openbb-finance/openbbterminal/releases/latest" - ) - except Exception: - r = None - - if r and r.status_code == 200: - latest_tag_name = r.json()["tag_name"] - latest_version = version.parse(latest_tag_name) - current_version = version.parse(Session().settings.VERSION) - - if check_valid_versions(latest_version, current_version): - if current_version == latest_version: - Session().console.print( - "[green]You are using the latest stable version[/green]" - ) - else: - Session().console.print( - "[yellow]You are not using the latest stable version[/yellow]" - ) - if current_version < latest_version: - Session().console.print( - "[yellow]Check for updates at https://my.openbb.co/app/terminal/download[/yellow]" - ) - - else: - Session().console.print( - "[yellow]You are using an unreleased version[/yellow]" - ) - - else: - Session().console.print("[red]You are using an unrecognized version.[/red]") - else: - Session().console.print( - "[yellow]Unable to check for updates... " - + "Check your internet connection and try again...[/yellow]" - ) - Session().console.print("\n") - - -def check_valid_versions( - latest_version: version.Version, - current_version: version.Version, -) -> bool: - """Check if the versions are valid.""" - if ( - not latest_version - or not current_version - or not isinstance(latest_version, version.Version) - or not isinstance(current_version, version.Version) - ): - return False - return True - - def welcome_message(): """Print the welcome message. From 6f9d46d5f90d075578f8165082a50d399a935cfe Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Mon, 13 May 2024 10:21:41 +0100 Subject: [PATCH 23/44] remove hold command and its references (#6399) * remove hold command and its references * remove --local flag as we don't use it anymore @IgorWounds * reset package folder * reset reference * unnecessary line break removed --- cli/openbb_cli/config/setup.py | 62 --------- cli/openbb_cli/controllers/base_controller.py | 124 ------------------ cli/openbb_cli/controllers/cli_controller.py | 6 +- 3 files changed, 1 insertion(+), 191 deletions(-) diff --git a/cli/openbb_cli/config/setup.py b/cli/openbb_cli/config/setup.py index 4d3eece690bf..4e682a535e80 100644 --- a/cli/openbb_cli/config/setup.py +++ b/cli/openbb_cli/config/setup.py @@ -1,71 +1,9 @@ """Configuration for the CLI.""" -import copy from pathlib import Path -from typing import TYPE_CHECKING, List, Optional, TypeVar from openbb_cli.config.constants import ENV_FILE_SETTINGS, SETTINGS_DIRECTORY -if TYPE_CHECKING: - from openbb_charting.core.openbb_figure import OpenBBFigure - -# ruff: noqa:PLW0603 - -OpenBBFigureT = TypeVar("OpenBBFigureT", bound="OpenBBFigure") -HOLD: bool = False -COMMAND_ON_CHART: bool = True -current_figure: Optional[OpenBBFigureT] = None # type: ignore -new_axis: bool = True -legends: List = [] -last_legend = "" - - -# pylint: disable=global-statement -def set_last_legend(leg: str): - """Set the last legend.""" - global last_legend - last_legend = copy.deepcopy(leg) - - -def reset_legend() -> None: - """Reset the legend.""" - global legends - legends = [] - - -def get_legends() -> list: - """Get the legends.""" - return legends - - -def set_same_axis() -> None: - """Set the same axis.""" - global new_axis - new_axis = False - - -def set_new_axis() -> None: - """Set the new axis.""" - global new_axis - new_axis = True - - -def make_new_axis() -> bool: - """Make a new axis.""" - return new_axis - - -def get_current_figure() -> Optional["OpenBBFigure"]: - """Get the current figure.""" - return current_figure - - -def set_current_figure(fig: Optional[OpenBBFigureT] = None): - """Set the current figure.""" - # pylint: disable=global-statement - global current_figure - current_figure = fig - def bootstrap(): """Setup pre-launch configurations for the CLI.""" diff --git a/cli/openbb_cli/controllers/base_controller.py b/cli/openbb_cli/controllers/base_controller.py index 9db39807a093..5c644f479c9b 100644 --- a/cli/openbb_cli/controllers/base_controller.py +++ b/cli/openbb_cli/controllers/base_controller.py @@ -10,7 +10,6 @@ from typing import Any, Dict, List, Literal, Optional, Union import pandas as pd -from openbb_cli.config import setup from openbb_cli.config.completer import NestedCompleter from openbb_cli.config.constants import SCRIPT_TAGS from openbb_cli.controllers.choices import build_controller_choice_map @@ -63,14 +62,12 @@ class BaseController(metaclass=ABCMeta): "r", "reset", "stop", - "hold", "whoami", "results", ] CHOICES_COMMANDS: List[str] = [] CHOICES_MENUS: List[str] = [] - HOLD_CHOICES: dict = {} NEWS_CHOICES: dict = {} COMMAND_SEPARATOR = "/" KEYS_MENU = "keys" + COMMAND_SEPARATOR @@ -166,113 +163,6 @@ def load_class(self, class_ins, *args, **kwargs): return old_class.menu() return class_ins(*args, **kwargs).menu() - def call_hold(self, other_args: List[str]) -> None: - """Process hold command.""" - self.save_class() - parser = argparse.ArgumentParser( - add_help=False, - formatter_class=argparse.ArgumentDefaultsHelpFormatter, - prog="hold", - description="Turn on figure holding. This will stop showing images until hold off is run.", - ) - parser.add_argument( - "-o", - "--option", - choices=["on", "off"], - type=str, - default="off", - dest="option", - ) - parser.add_argument( - "-s", - "--sameaxis", - action="store_true", - default=False, - help="Put plots on the same axis. Best when numbers are on similar scales", - dest="axes", - ) - parser.add_argument( - "--title", - type=str, - default="", - dest="title", - nargs="+", - help="When using hold off, this sets the title for the figure.", - ) - if other_args and "-" not in other_args[0][0]: - other_args.insert(0, "-o") - - ns_parser = self.parse_known_args_and_warn( - parser, - other_args, - ) - if ns_parser: - if ns_parser.option == "on": - setup.HOLD = True - setup.COMMAND_ON_CHART = False - if ns_parser.axes: - setup.set_same_axis() - else: - setup.set_new_axis() - if ns_parser.option == "off": - setup.HOLD = False - if setup.get_current_figure() is not None: - # create a subplot - fig = setup.get_current_figure() - if fig is None: - return - if not fig.has_subplots and not setup.make_new_axis(): - fig.set_subplots(1, 1, specs=[[{"secondary_y": True}]]) - - if setup.make_new_axis(): - for i, trace in enumerate(fig.select_traces()): - trace.yaxis = f"y{i+1}" - - if i != 0: - fig.update_layout( - { - f"yaxis{i+1}": dict( - side="left", - overlaying="y", - showgrid=True, - showline=False, - zeroline=False, - automargin=True, - ticksuffix=( - " " * (i - 1) if i > 1 else "" - ), - tickfont=dict( - size=18, - ), - title=dict( - font=dict( - size=15, - ), - standoff=0, - ), - ), - } - ) - # pylint: disable=undefined-loop-variable - fig.update_layout(margin=dict(l=30 * i)) - - else: - fig.update_yaxes(title="") - - if any(setup.get_legends()): - for trace, new_name in zip( - fig.select_traces(), setup.get_legends() - ): - if new_name: - trace.name = new_name - - fig.update_layout(title=" ".join(ns_parser.title)) - fig.show() - setup.COMMAND_ON_CHART = True - - setup.set_current_figure(None) - setup.reset_legend() - def save_class(self) -> None: """Save the current instance of the class to be loaded later.""" if session.settings.REMEMBER_CONTEXTS: @@ -832,16 +722,6 @@ def parse_known_args_and_warn( "-h", "--help", action="store_true", help="show this help message" ) - if setup.HOLD: - parser.add_argument( - "--legend", - type=str, - dest="hold_legend_str", - default="", - nargs="+", - help="Label for legend when hold is on.", - ) - if export_allowed != "no_export": choices_export = [] help_export = "Does not export!" @@ -925,10 +805,6 @@ def parse_known_args_and_warn( return None - # This protects against the hidden loads in stocks/fa - if parser.prog != "load" and setup.HOLD: - setup.set_last_legend(" ".join(ns_parser.hold_legend_str)) - if l_unknown_args: session.console.print( f"The following args couldn't be interpreted: {l_unknown_args}" diff --git a/cli/openbb_cli/controllers/cli_controller.py b/cli/openbb_cli/controllers/cli_controller.py index 5f16f0702298..2a98389067b6 100644 --- a/cli/openbb_cli/controllers/cli_controller.py +++ b/cli/openbb_cli/controllers/cli_controller.py @@ -160,8 +160,6 @@ def update_runtime_choices(self): if session.prompt_session and session.settings.USE_PROMPT_TOOLKIT: # choices: dict = self.choices_default choices: dict = {c: {} for c in self.controller_choices} # type: ignore - choices["hold"] = {c: None for c in ["on", "off", "-s", "--sameaxis"]} - choices["hold"]["off"] = {"--title": None} self.ROUTINE_FILES = { filepath.name: filepath # type: ignore @@ -199,8 +197,6 @@ def update_runtime_choices(self): "-d": "--description", "--public": None, "-p": "--public", - "--local": None, - "-l": "--local", "--tag1": {c: None for c in constants.SCRIPT_TAGS}, "--tag2": {c: None for c in constants.SCRIPT_TAGS}, "--tag3": {c: None for c in constants.SCRIPT_TAGS}, @@ -481,7 +477,7 @@ def call_exe(self, other_args: List[str]): except FileNotFoundError: session.console.print( - f"[red]File '{routine_path}' doesn't exist.[/red]\n" + f"[red]File '{routine_path}' doesn't exist.[/red]" ) return From 1dd8bf39c93fa6fddd14d95ebd246a6cfe9ce801 Mon Sep 17 00:00:00 2001 From: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Date: Mon, 13 May 2024 12:01:19 +0100 Subject: [PATCH 24/44] fix: alias credentials with uppercase (#6400) --- assets/extensions/provider.json | 2 +- openbb_platform/core/openbb_core/app/model/credentials.py | 4 ++-- openbb_platform/core/openbb_core/app/service/hub_service.py | 2 +- openbb_platform/providers/polygon/openbb_polygon/__init__.py | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/assets/extensions/provider.json b/assets/extensions/provider.json index 3e5b5c4ebb9c..ebc981853806 100644 --- a/assets/extensions/provider.json +++ b/assets/extensions/provider.json @@ -160,7 +160,7 @@ }, { "packageName": "openbb-polygon", - "reprName": "Polygon", + "reprName": "Polygon.io", "description": "The Polygon.io Stocks API provides REST endpoints that let you query\nthe latest market data from all US stock exchanges. You can also find data on\ncompany financials, stock market holidays, corporate actions, and more.", "credentials": [ "polygon_api_key" diff --git a/openbb_platform/core/openbb_core/app/model/credentials.py b/openbb_platform/core/openbb_core/app/model/credentials.py index 5ed7684e351e..a1d7792bd0e0 100644 --- a/openbb_platform/core/openbb_core/app/model/credentials.py +++ b/openbb_platform/core/openbb_core/app/model/credentials.py @@ -52,7 +52,7 @@ def prepare( formatted[c] = ( Optional[OBBSecretStr], Field( - default=None, description=origin + default=None, description=origin, alias=c.upper() ), # register the credential origin (obbject, providers) ) @@ -88,7 +88,7 @@ def load(self) -> BaseModel: self.from_obbject() return create_model( # type: ignore "Credentials", - __config__=ConfigDict(validate_assignment=True), + __config__=ConfigDict(validate_assignment=True, populate_by_name=True), **self.prepare(self.credentials), ) diff --git a/openbb_platform/core/openbb_core/app/service/hub_service.py b/openbb_platform/core/openbb_core/app/service/hub_service.py index bc932699ed57..e60b667ae0d6 100644 --- a/openbb_platform/core/openbb_core/app/service/hub_service.py +++ b/openbb_platform/core/openbb_core/app/service/hub_service.py @@ -253,7 +253,7 @@ def platform2hub(self, credentials: Credentials) -> HubUserSettings: settings = self._hub_user_settings or HubUserSettings() for v4_k, v in sorted(credentials.items()): v3_k = self.V4TOV3.get(v4_k, None) - # If v3 key was there, we keep it + # If v3 key was in the hub already, we keep it k = v3_k if v3_k in settings.features_keys else v4_k settings.features_keys[k] = v return settings diff --git a/openbb_platform/providers/polygon/openbb_polygon/__init__.py b/openbb_platform/providers/polygon/openbb_polygon/__init__.py index 85d5b209a4ea..917c121f9b27 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/__init__.py +++ b/openbb_platform/providers/polygon/openbb_polygon/__init__.py @@ -39,7 +39,7 @@ "MarketIndices": PolygonIndexHistoricalFetcher, "MarketSnapshots": PolygonMarketSnapshotsFetcher, }, - repr_name="Polygon", + repr_name="Polygon.io", v3_credentials=["API_POLYGON_KEY"], instructions='Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, "Get your Free API Key".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)', # noqa: E501 pylint: disable=line-too-long logo_url="https://polygon.io/_next/image?url=%2Flogo.svg&w=640&q=75", From f47e7ad90da98ffbec1ca6e26fb71c1653580733 Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Mon, 13 May 2024 13:34:45 +0200 Subject: [PATCH 25/44] Fix Excel Data Slicer page. (#6396) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- website/content/excel/data-slicer.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/website/content/excel/data-slicer.md b/website/content/excel/data-slicer.md index 74b4ff77c4e1..a9714c862029 100644 --- a/website/content/excel/data-slicer.md +++ b/website/content/excel/data-slicer.md @@ -22,11 +22,11 @@ To help you slice parts of data, we provide the [OBB.GET](https://docs.openbb.co - Suppose you called an `OBB.` function and it returned the following data at cells A1:D3: -| period_ending | revenue | cost_of_revenue | gross_profit | -|---|---|---|---|---| -| 2023/09/30 | 383 285 000 000.00 | 214 137 000 000.00 | 169 148 000 000.00 | -| 2022/09/24 | 394 328 000 000.00 | 223 546 000 000.00 | 170 782 000 000.00 | -| 2021/09/25 | 365 817 000 000.00 | 212 981 000 000.00 | 152 836 000 000.00 | +| period_ending | revenue | cost_of_revenue | gross_profit | +|---------------|--------------------|--------------------|--------------------| +| 2023/09/30 | 383 285 000 000.00 | 214 137 000 000.00 | 169 148 000 000.00 | +| 2022/09/24 | 394 328 000 000.00 | 223 546 000 000.00 | 170 782 000 000.00 | +| 2021/09/25 | 365 817 000 000.00 | 212 981 000 000.00 | 152 836 000 000.00 | - Slicing a single row: From 627f7f9a779eb331c60b5e6f39e416ca2b63339b Mon Sep 17 00:00:00 2001 From: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Date: Mon, 13 May 2024 18:13:34 +0100 Subject: [PATCH 26/44] [BugFix] - Remove logos (#6404) * fix: remove logos * fix: remove from provider * feat: add extra field * rename --- assets/extensions/obbject.json | 1 + assets/extensions/provider.json | 97 ++++++++++--------- assets/extensions/router.json | 14 +++ assets/scripts/generate_extension_data.py | 51 +++++----- .../openbb_core/app/service/hub_service.py | 2 +- .../openbb_core/provider/abstract/provider.py | 4 - .../benzinga/openbb_benzinga/__init__.py | 1 - .../biztoc/openbb_biztoc/__init__.py | 1 - .../providers/cboe/openbb_cboe/__init__.py | 1 - .../providers/ecb/openbb_ecb/__init__.py | 1 - .../econdb/openbb_econdb/__init__.py | 1 - .../openbb_federal_reserve/__init__.py | 1 - .../providers/finra/openbb_finra/__init__.py | 1 - .../finviz/openbb_finviz/__init__.py | 1 - .../providers/fmp/openbb_fmp/__init__.py | 1 - .../providers/fred/openbb_fred/__init__.py | 1 - .../openbb_government_us/__init__.py | 1 - .../intrinio/openbb_intrinio/__init__.py | 1 - .../nasdaq/openbb_nasdaq/__init__.py | 1 - .../providers/oecd/openbb_oecd/__init__.py | 1 - .../polygon/openbb_polygon/__init__.py | 1 - .../providers/sec/openbb_sec/__init__.py | 1 - .../openbb_seeking_alpha/__init__.py | 1 - .../stockgrid/openbb_stockgrid/__init__.py | 1 - .../tiingo/openbb_tiingo/__init__.py | 1 - .../providers/tmx/openbb_tmx/__init__.py | 1 - .../tradier/openbb_tradier/__init__.py | 1 - .../openbb_tradingeconomics/__init__.py | 1 - .../providers/wsj/openbb_wsj/__init__.py | 1 - .../yfinance/openbb_yfinance/__init__.py | 1 - 30 files changed, 94 insertions(+), 99 deletions(-) diff --git a/assets/extensions/obbject.json b/assets/extensions/obbject.json index ce70c67916b0..5c168e67db80 100644 --- a/assets/extensions/obbject.json +++ b/assets/extensions/obbject.json @@ -1,6 +1,7 @@ [ { "packageName": "openbb-charting", + "optional": true, "description": "Create custom charts from OBBject data." } ] \ No newline at end of file diff --git a/assets/extensions/provider.json b/assets/extensions/provider.json index ebc981853806..92a2cd842969 100644 --- a/assets/extensions/provider.json +++ b/assets/extensions/provider.json @@ -1,6 +1,7 @@ [ { "packageName": "openbb-alpha-vantage", + "optional": true, "reprName": "Alpha Vantage", "description": "Alpha Vantage provides realtime and historical\nfinancial market data through a set of powerful and developer-friendly data APIs\nand spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds)\nto economic indicators, from foreign exchange rates to commodities,\nfrom fundamental data to technical indicators, Alpha Vantage\nis your one-stop-shop for enterprise-grade global market data delivered through\ncloud-based APIs, Excel, and Google Sheets. ", "credentials": [ @@ -14,16 +15,17 @@ }, { "packageName": "openbb-benzinga", + "optional": false, "reprName": "Benzinga", "description": "Benzinga is a financial data provider that offers an API\nfocused on information that moves the market.", "credentials": [ "benzinga_api_key" ], - "website": "https://www.benzinga.com", - "logoUrl": "https://www.benzinga.com/sites/all/themes/bz2/images/Benzinga-logo-navy.svg" + "website": "https://www.benzinga.com" }, { "packageName": "openbb-biztoc", + "optional": true, "reprName": "BizToc", "description": "BizToc uses Rapid API for its REST API.\nYou may sign up for your free account at https://rapidapi.com/thma/api/biztoc.\n\nThe Base URL for all requests is:\n\n https://biztoc.p.rapidapi.com/\n\nIf you're not a developer but would still like to use Biztoc outside of the main website,\nwe've partnered with OpenBB, allowing you to pull in BizToc's news stream in their Terminal.", "credentials": [ @@ -33,61 +35,61 @@ "API_BIZTOC_TOKEN" ], "website": "https://api.biztoc.com", - "instructions": "The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)", - "logoUrl": "https://c.biztoc.com/274/logo.svg" + "instructions": "The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)" }, { "packageName": "openbb-cboe", + "optional": true, "reprName": "Chicago Board Options Exchange (CBOE)", "description": "Cboe is the world's go-to derivatives and exchange network,\ndelivering cutting-edge trading, clearing and investment solutions to people\naround the world.", "credentials": [], - "website": "https://www.cboe.com", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Cboe_Global_Markets_Logo.svg/2880px-Cboe_Global_Markets_Logo.svg.png" + "website": "https://www.cboe.com" }, { "packageName": "openbb-ecb", + "optional": true, "reprName": "European Central Bank (ECB)", "description": "The ECB Data Portal provides access to all official ECB statistics.\nThe portal also provides options to download data and comprehensive metadata for each dataset.\nStatistical publications and dashboards offer a compilation of key data on selected topics.", "credentials": [], - "website": "https://data.ecb.europa.eu", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Logo_European_Central_Bank.svg/720px-Logo_European_Central_Bank.svg.png" + "website": "https://data.ecb.europa.eu" }, { "packageName": "openbb-econdb", + "optional": false, "reprName": "EconDB", "description": "The mission of the company is to process information in ways that\nfacilitate understanding of the economic situation at different granularity levels.\n\nThe sources of data include official statistics agencies and so-called alternative\ndata sources where we collect direct observations of the market and generate\naggregate statistics.", "credentials": [ "econdb_api_key" ], - "website": "https://econdb.com", - "logoUrl": "https://avatars.githubusercontent.com/u/21289885?v=4" + "website": "https://econdb.com" }, { "packageName": "openbb-federal-reserve", + "optional": false, "reprName": "Federal Reserve (FED)", "description": "Access data provided by the Federal Reserve System,\nthe Central Bank of the United States.", "credentials": [], - "website": "https://www.federalreserve.gov/data.htm", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Seal_of_the_United_States_Federal_Reserve_System.svg/498px-Seal_of_the_United_States_Federal_Reserve_System.svg.png" + "website": "https://www.federalreserve.gov/data.htm" }, { "packageName": "openbb-finra", + "optional": true, "reprName": "Financial Industry Regulatory Authority (FINRA)", "description": "FINRA Data provides centralized access to the abundance of data FINRA\nmakes available to the public, media, researchers and member firms.", "credentials": [], - "website": "https://www.finra.org/finra-data", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/9/95/FINRA_logo.svg/1024px-FINRA_logo.svg.png" + "website": "https://www.finra.org/finra-data" }, { "packageName": "openbb-finviz", + "optional": true, "reprName": "FinViz", "description": "Unofficial Finviz API - https://github.com/lit26/finvizfinance/releases", "credentials": [], - "website": "https://finviz.com", - "logoUrl": "https://finviz.com/img/logo_3_2x.png" + "website": "https://finviz.com" }, { "packageName": "openbb-fmp", + "optional": false, "reprName": "Financial Modeling Prep (FMP)", "description": "Financial Modeling Prep is a new concept that informs you about\nstock market information (news, currencies, and stock prices).", "credentials": [ @@ -97,11 +99,11 @@ "API_KEY_FINANCIALMODELINGPREP" ], "website": "https://financialmodelingprep.com", - "instructions": "Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, \"Get my API KEY here\", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the \"Dashboard\" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)", - "logoUrl": "https://intelligence.financialmodelingprep.com//images/fmp-brain-original.svg" + "instructions": "Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, \"Get my API KEY here\", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the \"Dashboard\" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)" }, { "packageName": "openbb-fred", + "optional": false, "reprName": "Federal Reserve Economic Data | St. Louis FED (FRED)", "description": "Federal Reserve Economic Data is a database maintained by the\nResearch division of the Federal Reserve Bank of St. Louis that has more than\n816,000 economic time series from various sources.", "credentials": [ @@ -111,19 +113,19 @@ "API_FRED_KEY" ], "website": "https://fred.stlouisfed.org", - "instructions": "Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, \"My Account\", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to \"My Account\", and select \"API Keys\". Then, click on, \"Request API Key\".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, \"Request API key\", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)", - "logoUrl": "https://fred.stlouisfed.org/images/fred-logo-2x.png" + "instructions": "Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, \"My Account\", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to \"My Account\", and select \"API Keys\". Then, click on, \"Request API Key\".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, \"Request API key\", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)" }, { "packageName": "openbb-government-us", + "optional": true, "reprName": "Data.gov | United States Government", "description": "Data.gov is the United States government's open data website.\nIt provides access to datasets published by agencies across the federal government.\nData.gov is intended to provide access to government open data to the public, achieve\nagency missions, drive innovation, fuel economic activity, and uphold the ideals of\nan open and transparent government.", "credentials": [], - "website": "https://data.gov", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/0/06/Muq55HrN_400x400.png" + "website": "https://data.gov" }, { "packageName": "openbb-intrinio", + "optional": false, "reprName": "Intrinio", "description": "Intrinio is a financial data platform that provides real-time and\nhistorical financial market data to businesses and developers through an API.", "credentials": [ @@ -133,11 +135,11 @@ "API_INTRINIO_KEY" ], "website": "https://intrinio.com", - "instructions": "Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard.", - "logoUrl": "https://assets-global.website-files.com/617960145ff34fe4a9fe7240/617960145ff34f9a97fe72c8_Intrinio%20Logo%20-%20Dark.svg" + "instructions": "Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard." }, { "packageName": "openbb-nasdaq", + "optional": true, "reprName": "NASDAQ", "description": "Positioned at the nexus of technology and the capital markets, Nasdaq\nprovides premier platforms and services for global capital markets and beyond with\nunmatched technology, insights and markets expertise.", "credentials": [ @@ -147,19 +149,19 @@ "API_KEY_QUANDL" ], "website": "https://data.nasdaq.com", - "instructions": "Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, \"Sign Up\", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/NASDAQ_logo.svg/1600px-NASDAQ_logo.svg.png" + "instructions": "Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, \"Sign Up\", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)" }, { "packageName": "openbb-oecd", + "optional": false, "reprName": "Organization for Economic Co-operation and Development (OECD)", "description": "OECD.Stat includes data and metadata for OECD countries and selected\nnon-member economies.", "credentials": [], - "website": "https://stats.oecd.org", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/OECD_logo.svg/400px-OECD_logo.svg.png" + "website": "https://stats.oecd.org" }, { "packageName": "openbb-polygon", + "optional": false, "reprName": "Polygon.io", "description": "The Polygon.io Stocks API provides REST endpoints that let you query\nthe latest market data from all US stock exchanges. You can also find data on\ncompany financials, stock market holidays, corporate actions, and more.", "credentials": [ @@ -169,53 +171,53 @@ "API_POLYGON_KEY" ], "website": "https://polygon.io", - "instructions": "Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, \"Get your Free API Key\".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)", - "logoUrl": "https://polygon.io/_next/image?url=%2Flogo.svg&w=640&q=75" + "instructions": "Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, \"Get your Free API Key\".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)" }, { "packageName": "openbb-sec", + "optional": false, "reprName": "Securities and Exchange Commission (SEC)", "description": "SEC is the public listings regulatory body for the United States.", "credentials": [], - "website": "https://www.sec.gov/data", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Seal_of_the_United_States_Securities_and_Exchange_Commission.svg/1920px-Seal_of_the_United_States_Securities_and_Exchange_Commission.svg.png" + "website": "https://www.sec.gov/data" }, { "packageName": "openbb-seeking-alpha", + "optional": true, "reprName": "Seeking Alpha", "description": "Seeking Alpha is a data provider with access to news, analysis, and\nreal-time alerts on stocks.", "credentials": [], - "website": "https://seekingalpha.com", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Seeking_Alpha_Logo.svg/280px-Seeking_Alpha_Logo.svg.png" + "website": "https://seekingalpha.com" }, { "packageName": "openbb-stockgrid", + "optional": true, "reprName": "Stockgrid", "description": "Stockgrid gives you a detailed view of what smart money is doing.\nGet in depth data about large option blocks being traded, including\nthe sentiment score, size, volume and order type. Stop guessing and\nbuild a strategy around the number 1 factor moving the market: money.", "credentials": [], - "website": "https://www.stockgrid.io", - "logoUrl": "https://www.stockgrid.io/img/logo_white2.41ee5250.svg" + "website": "https://www.stockgrid.io" }, { "packageName": "openbb-tiingo", + "optional": false, "reprName": "Tiingo", "description": "A Reliable, Enterprise-Grade Financial Markets API. Tiingo's APIs\npower hedge funds, tech companies, and individuals.", "credentials": [ "tiingo_token" ], - "website": "https://tiingo.com", - "logoUrl": "https://www.tiingo.com/dist/images/tiingo/logos/tiingo_full_light_color.svg" + "website": "https://tiingo.com" }, { "packageName": "openbb-tmx", + "optional": true, "reprName": "TMX", "description": "Unofficial TMX Data Provider Extension\n TMX Group Companies\n - Toronto Stock Exchange\n - TSX Venture Exchange\n - TSX Trust\n - Montr\u00e9al Exchange\n - TSX Alpha Exchange\n - Shorcan\n - CDCC\n - CDS\n - TMX Datalinx\n - Trayport\n ", "credentials": [], - "website": "https://www.tmx.com", - "logoUrl": "https://www.tmx.com/assets/application/img/tmx_logo_en.1593799726.svg" + "website": "https://www.tmx.com" }, { "packageName": "openbb-tradier", + "optional": true, "reprName": "Tradier", "description": "Tradier provides a full range of services in a scalable, secure,\nand easy-to-use REST-based API for businesses and individual developers.\nFast, secure, simple. Start in minutes.\nGet access to trading, account management, and market-data for\nTradier Brokerage accounts through our APIs.", "credentials": [ @@ -226,33 +228,32 @@ "API_TRADIER_TOKEN" ], "website": "https://tradier.com", - "instructions": "Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, \"Open Account\", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token.", - "logoUrl": "https://tradier.com/assets/images/tradier-logo.svg" + "instructions": "Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, \"Open Account\", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token." }, { "packageName": "openbb-tradingeconomics", + "optional": false, "reprName": "Trading Economics", "description": "Trading Economics provides its users with accurate information for\n196 countries including historical data and forecasts for more than 20 million economic\nindicators, exchange rates, stock market indexes, government bond yields and commodity\nprices. Our data for economic indicators is based on official sources, not third party\ndata providers, and our facts are regularly checked for inconsistencies.\nTrading Economics has received nearly 2 billion page views from all around the\nworld.", "credentials": [ "tradingeconomics_api_key" ], - "website": "https://tradingeconomics.com", - "logoUrl": "https://developer.tradingeconomics.com/Content/Images/logo.svg" + "website": "https://tradingeconomics.com" }, { "packageName": "openbb-wsj", + "optional": true, "reprName": "Wall Street Journal (WSJ)", "description": "WSJ (Wall Street Journal) is a business-focused, English-language\ninternational daily newspaper based in New York City. The Journal is published six\ndays a week by Dow Jones & Company, a division of News Corp, along with its Asian\nand European editions. The newspaper is published in the broadsheet format and\nonline. The Journal has been printed continuously since its inception on\nJuly 8, 1889, by Charles Dow, Edward Jones, and Charles Bergstresser.\nThe WSJ is the largest newspaper in the United States, by circulation.\n ", "credentials": [], - "website": "https://www.wsj.com", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/WSJ_Logo.svg/1594px-WSJ_Logo.svg.png" + "website": "https://www.wsj.com" }, { "packageName": "openbb-yfinance", + "optional": false, "reprName": "Yahoo Finance", "description": "Yahoo! Finance is a web-based platform that offers financial news,\ndata, and tools for investors and individuals interested in tracking and analyzing\nfinancial markets and assets.", "credentials": [], - "website": "https://finance.yahoo.com", - "logoUrl": "https://upload.wikimedia.org/wikipedia/commons/8/8f/Yahoo%21_Finance_logo_2021.png" + "website": "https://finance.yahoo.com" } ] \ No newline at end of file diff --git a/assets/extensions/router.json b/assets/extensions/router.json index 2f88caa82cf8..2c1fb008cac2 100644 --- a/assets/extensions/router.json +++ b/assets/extensions/router.json @@ -1,58 +1,72 @@ [ { "packageName": "openbb-commodity", + "optional": false, "description": "Commodity market data." }, { "packageName": "openbb-crypto", + "optional": false, "description": "Cryptocurrency market data." }, { "packageName": "openbb-currency", + "optional": false, "description": "Foreign exchange (FX) market data." }, { "packageName": "openbb-derivatives", + "optional": false, "description": "Derivatives market data." }, { "packageName": "openbb-econometrics", + "optional": true, "description": "Econometrics analysis tools." }, { "packageName": "openbb-economy", + "optional": false, "description": "Economic data." }, { "packageName": "openbb-equity", + "optional": false, "description": "Equity market data." }, { "packageName": "openbb-etf", + "optional": false, "description": "Exchange Traded Funds market data." }, { "packageName": "openbb-fixedincome", + "optional": false, "description": "Fixed Income market data." }, { "packageName": "openbb-index", + "optional": false, "description": "Indices data." }, { "packageName": "openbb-news", + "optional": false, "description": "Financial market news data." }, { "packageName": "openbb-quantitative", + "optional": true, "description": "Quantitative analysis tools." }, { "packageName": "openbb-regulators", + "optional": false, "description": "Financial market regulators data." }, { "packageName": "openbb-technical", + "optional": true, "description": "Technical Analysis tools." } ] \ No newline at end of file diff --git a/assets/scripts/generate_extension_data.py b/assets/scripts/generate_extension_data.py index 1949cafea4ed..55bb35d9545b 100644 --- a/assets/scripts/generate_extension_data.py +++ b/assets/scripts/generate_extension_data.py @@ -8,11 +8,12 @@ from poetry.core.pyproject.toml import PyProjectTOML THIS_DIR = Path(__file__).parent -PROVIDERS_PATH = Path(THIS_DIR, "..", "..", "openbb_platform/providers") -EXTENSIONS_PATH = Path(THIS_DIR, "..", "..", "openbb_platform/extensions") -OBBJECT_EXTENSIONS_PATH = Path( - THIS_DIR, "..", "..", "openbb_platform/obbject_extensions" -) +OPENBB_PLATFORM_PATH = Path(THIS_DIR, "..", "..", "openbb_platform") +PROVIDERS_PATH = OPENBB_PLATFORM_PATH / "providers" +EXTENSIONS_PATH = OPENBB_PLATFORM_PATH / "extensions" +OBBJECT_EXTENSIONS_PATH = OPENBB_PLATFORM_PATH / "obbject_extensions" + +OPENBB_PLATFORM_TOML = PyProjectTOML(OPENBB_PLATFORM_PATH / "pyproject.toml") def to_title(string: str) -> str: @@ -30,7 +31,7 @@ def get_packages(path: Path, plugin_key: str) -> Dict[str, Any]: poetry = pyproject.data["tool"]["poetry"] name = poetry["name"] plugin = poetry.get("plugins", {}).get(plugin_key) - packages[name] = list(plugin.values())[0] if plugin else "" + packages[name] = {"plugin": list(plugin.values())[0] if plugin else ""} return packages @@ -46,11 +47,15 @@ def to_camel(string: str): return components[0] + "".join(x.title() for x in components[1:]) -def createItem(package_name: str, obj: object, attrs: List[str]) -> Dict[str, str]: +def createItem(package_name: str, obj: object, obj_attrs: List[str]) -> Dict[str, Any]: """Create dictionary item from object attributes.""" - item = {"packageName": package_name} + pkg_spec = OPENBB_PLATFORM_TOML.data["tool"]["poetry"]["dependencies"].get( + package_name + ) + optional = pkg_spec.get("optional", False) if isinstance(pkg_spec, dict) else False + item = {"packageName": package_name, "optional": optional} item.update( - {to_camel(a): getattr(obj, a) for a in attrs if getattr(obj, a) is not None} + {to_camel(a): getattr(obj, a) for a in obj_attrs if getattr(obj, a) is not None} ) return item @@ -58,54 +63,56 @@ def createItem(package_name: str, obj: object, attrs: List[str]) -> Dict[str, st def generate_provider_extensions() -> None: """Generate providers_extensions.json.""" packages = get_packages(PROVIDERS_PATH, "openbb_provider_extension") - data: List[Dict[str, str]] = [] - attrs = [ + data: List[Dict[str, Any]] = [] + obj_attrs = [ "repr_name", "description", "credentials", "v3_credentials", "website", "instructions", - "logo_url", ] - for pkg_name, plugin in sorted(packages.items()): + for pkg_name, details in sorted(packages.items()): + plugin = details.get("plugin", "") file_obj = plugin.split(":") if len(file_obj) == 2: file, obj = file_obj[0], file_obj[1] module = import_module(file) provider_obj = getattr(module, obj) - data.append(createItem(pkg_name, provider_obj, attrs)) + data.append(createItem(pkg_name, provider_obj, obj_attrs)) write("provider", data) def generate_router_extensions() -> None: """Generate router_extensions.json.""" packages = get_packages(EXTENSIONS_PATH, "openbb_core_extension") - data: List[Dict[str, str]] = [] - attrs = ["description"] - for pkg_name, plugin in sorted(packages.items()): + data: List[Dict[str, Any]] = [] + obj_attrs = ["description"] + for pkg_name, details in sorted(packages.items()): + plugin = details.get("plugin", "") file_obj = plugin.split(":") if len(file_obj) == 2: file, obj = file_obj[0], file_obj[1] module = import_module(file) router_obj = getattr(module, obj) - data.append(createItem(pkg_name, router_obj, attrs)) + data.append(createItem(pkg_name, router_obj, obj_attrs)) write("router", data) def generate_obbject_extensions() -> None: """Generate obbject_extensions.json.""" packages = get_packages(OBBJECT_EXTENSIONS_PATH, "openbb_obbject_extension") - data: List[Dict[str, str]] = [] - attrs = ["description"] - for pkg_name, plugin in sorted(packages.items()): + data: List[Dict[str, Any]] = [] + obj_attrs = ["description"] + for pkg_name, details in sorted(packages.items()): + plugin = details.get("plugin", "") file_obj = plugin.split(":") if len(file_obj) == 2: file, obj = file_obj[0], file_obj[1] module = import_module(file) ext_obj = getattr(module, obj) - data.append(createItem(pkg_name, ext_obj, attrs)) + data.append(createItem(pkg_name, ext_obj, obj_attrs)) write("obbject", data) diff --git a/openbb_platform/core/openbb_core/app/service/hub_service.py b/openbb_platform/core/openbb_core/app/service/hub_service.py index e60b667ae0d6..419eef955dd1 100644 --- a/openbb_platform/core/openbb_core/app/service/hub_service.py +++ b/openbb_platform/core/openbb_core/app/service/hub_service.py @@ -233,7 +233,7 @@ def hub2platform(self, settings: HubUserSettings) -> Credentials: } msg = "" for k, v in deprecated.items(): - msg += f"\n'{k}' -> '{v}', " + msg += f"\n'{k}' -> '{v.upper()}', " msg = msg.strip(", ") warn( message=f"\nDeprecated v3 credentials found.\n{msg}" diff --git a/openbb_platform/core/openbb_core/provider/abstract/provider.py b/openbb_platform/core/openbb_core/provider/abstract/provider.py index 6da989d807a8..756060ba59bc 100644 --- a/openbb_platform/core/openbb_core/provider/abstract/provider.py +++ b/openbb_platform/core/openbb_core/provider/abstract/provider.py @@ -19,7 +19,6 @@ def __init__( repr_name: Optional[str] = None, v3_credentials: Optional[List[str]] = None, instructions: Optional[str] = None, - logo_url: Optional[str] = None, ) -> None: """Initialize the provider. @@ -41,8 +40,6 @@ def __init__( List of corresponding v3 credentials, by default None. instructions: Optional[str] Instructions on how to setup the provider. For example, how to get an API key. - logo_url: Optional[str] - Provider logo URL. """ self.name = name self.description = description @@ -57,4 +54,3 @@ def __init__( self.repr_name = repr_name self.v3_credentials = v3_credentials self.instructions = instructions - self.logo_url = logo_url diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py b/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py index 279f6a90b499..91cd544c3784 100644 --- a/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py +++ b/openbb_platform/providers/benzinga/openbb_benzinga/__init__.py @@ -19,5 +19,4 @@ "PriceTarget": BenzingaPriceTargetFetcher, }, repr_name="Benzinga", - logo_url="https://www.benzinga.com/sites/all/themes/bz2/images/Benzinga-logo-navy.svg", ) diff --git a/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py b/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py index b3449af194d6..8fc02244e207 100644 --- a/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py +++ b/openbb_platform/providers/biztoc/openbb_biztoc/__init__.py @@ -22,5 +22,4 @@ repr_name="BizToc", v3_credentials=["API_BIZTOC_TOKEN"], instructions="The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.\n\n![biztoc0](https://github.com/marban/OpenBBTerminal/assets/18151143/04cdd423-f65e-4ad8-ad5a-4a59b0f5ddda)\n\nIn the top right, select 'Sign Up'. After answering some questions, you will be prompted to select one of their plans.\n\n![biztoc1](https://github.com/marban/OpenBBTerminal/assets/18151143/9f3b72ea-ded7-48c5-aa33-bec5c0de8422)\n\nAfter signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.\n\n![biztoc2](https://github.com/marban/OpenBBTerminal/assets/18151143/0f3b6c91-07e0-447a-90cd-a9e23522929f)", # noqa: E501 pylint: disable=line-too-long - logo_url="https://c.biztoc.com/274/logo.svg", ) diff --git a/openbb_platform/providers/cboe/openbb_cboe/__init__.py b/openbb_platform/providers/cboe/openbb_cboe/__init__.py index 612d8a3e41f8..9179377acec1 100644 --- a/openbb_platform/providers/cboe/openbb_cboe/__init__.py +++ b/openbb_platform/providers/cboe/openbb_cboe/__init__.py @@ -38,5 +38,4 @@ "OptionsChains": CboeOptionsChainsFetcher, }, repr_name="Chicago Board Options Exchange (CBOE)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Cboe_Global_Markets_Logo.svg/2880px-Cboe_Global_Markets_Logo.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/ecb/openbb_ecb/__init__.py b/openbb_platform/providers/ecb/openbb_ecb/__init__.py index a339718e1758..e828ea75a1aa 100644 --- a/openbb_platform/providers/ecb/openbb_ecb/__init__.py +++ b/openbb_platform/providers/ecb/openbb_ecb/__init__.py @@ -17,5 +17,4 @@ "EUYieldCurve": ECBEUYieldCurveFetcher, }, repr_name="European Central Bank (ECB)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Logo_European_Central_Bank.svg/720px-Logo_European_Central_Bank.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/econdb/openbb_econdb/__init__.py b/openbb_platform/providers/econdb/openbb_econdb/__init__.py index edde522a9eed..a0a0e9f18c89 100644 --- a/openbb_platform/providers/econdb/openbb_econdb/__init__.py +++ b/openbb_platform/providers/econdb/openbb_econdb/__init__.py @@ -23,5 +23,4 @@ "EconomicIndicators": EconDbEconomicIndicatorsFetcher, }, repr_name="EconDB", - logo_url="https://avatars.githubusercontent.com/u/21289885?v=4", ) diff --git a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py index 749e3e1ad3e4..4e1b249ec798 100644 --- a/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py +++ b/openbb_platform/providers/federal_reserve/openbb_federal_reserve/__init__.py @@ -20,5 +20,4 @@ "FEDFUNDS": FederalReserveFEDFetcher, }, repr_name="Federal Reserve (FED)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Seal_of_the_United_States_Federal_Reserve_System.svg/498px-Seal_of_the_United_States_Federal_Reserve_System.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/finra/openbb_finra/__init__.py b/openbb_platform/providers/finra/openbb_finra/__init__.py index 4428b0f7e152..6654ee44b0a8 100644 --- a/openbb_platform/providers/finra/openbb_finra/__init__.py +++ b/openbb_platform/providers/finra/openbb_finra/__init__.py @@ -15,5 +15,4 @@ "EquityShortInterest": FinraShortInterestFetcher, }, repr_name="Financial Industry Regulatory Authority (FINRA)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/9/95/FINRA_logo.svg/1024px-FINRA_logo.svg.png", ) diff --git a/openbb_platform/providers/finviz/openbb_finviz/__init__.py b/openbb_platform/providers/finviz/openbb_finviz/__init__.py index 75da4ea6c342..8862746c64bb 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/__init__.py +++ b/openbb_platform/providers/finviz/openbb_finviz/__init__.py @@ -21,5 +21,4 @@ "PriceTarget": FinvizPriceTargetFetcher, }, repr_name="FinViz", - logo_url="https://finviz.com/img/logo_3_2x.png", ) diff --git a/openbb_platform/providers/fmp/openbb_fmp/__init__.py b/openbb_platform/providers/fmp/openbb_fmp/__init__.py index c4d372a4541a..01f9a5019e54 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/__init__.py +++ b/openbb_platform/providers/fmp/openbb_fmp/__init__.py @@ -138,5 +138,4 @@ repr_name="Financial Modeling Prep (FMP)", v3_credentials=["API_KEY_FINANCIALMODELINGPREP"], instructions='Go to: https://site.financialmodelingprep.com/developer/docs\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207821920-64553d05-d461-4984-b0fe-be0368c71186.png)\n\nClick on, "Get my API KEY here", and sign up for a free account.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207822184-a723092e-ef42-4f87-8c55-db150f09741b.png)\n\nWith an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the "Dashboard" button which will show the API key.\n\n![FinancialModelingPrep](https://user-images.githubusercontent.com/46355364/207823170-dd8191db-e125-44e5-b4f3-2df0e115c91d.png)', # noqa: E501 pylint: disable=line-too-long - logo_url="https://intelligence.financialmodelingprep.com//images/fmp-brain-original.svg", ) diff --git a/openbb_platform/providers/fred/openbb_fred/__init__.py b/openbb_platform/providers/fred/openbb_fred/__init__.py index ccf1f046a6b2..b6efbd173a6c 100644 --- a/openbb_platform/providers/fred/openbb_fred/__init__.py +++ b/openbb_platform/providers/fred/openbb_fred/__init__.py @@ -62,5 +62,4 @@ repr_name="Federal Reserve Economic Data | St. Louis FED (FRED)", v3_credentials=["API_FRED_KEY"], instructions='Go to: https://fred.stlouisfed.org\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827137-d143ba4c-72cb-467d-a7f4-5cc27c597aec.png)\n\nClick on, "My Account", create a new account or sign in with Google:\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827011-65cdd501-27e3-436f-bd9d-b0d8381d46a7.png)\n\nAfter completing the sign-up, go to "My Account", and select "API Keys". Then, click on, "Request API Key".\n\n![FRED](https://user-images.githubusercontent.com/46355364/207827577-c869f989-4ef4-4949-ab57-6f3931f2ae9d.png)\n\nFill in the box for information about the use-case for FRED, and by clicking, "Request API key", at the bottom of the page, the API key will be issued.\n\n![FRED](https://user-images.githubusercontent.com/46355364/207828032-0a32d3b8-1378-4db2-9064-aa1eb2111632.png)', # noqa: E501 pylint: disable=line-too-long - logo_url="https://fred.stlouisfed.org/images/fred-logo-2x.png", ) diff --git a/openbb_platform/providers/government_us/openbb_government_us/__init__.py b/openbb_platform/providers/government_us/openbb_government_us/__init__.py index 5b1ed1aafaed..2a15283a7a9e 100644 --- a/openbb_platform/providers/government_us/openbb_government_us/__init__.py +++ b/openbb_platform/providers/government_us/openbb_government_us/__init__.py @@ -21,5 +21,4 @@ "TreasuryPrices": GovernmentUSTreasuryPricesFetcher, }, repr_name="Data.gov | United States Government", - logo_url="https://upload.wikimedia.org/wikipedia/commons/0/06/Muq55HrN_400x400.png", ) diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py index 276873d94604..ae473c72e5c3 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py @@ -100,5 +100,4 @@ repr_name="Intrinio", v3_credentials=["API_INTRINIO_KEY"], instructions="Go to: https://intrinio.com/starter-plan\n\n![Intrinio](https://user-images.githubusercontent.com/85772166/219207556-fcfee614-59f1-46ae-bff4-c63dd2f6991d.png)\n\nAn API key will be issued with a subscription. Find the token value within the account dashboard.", # noqa: E501 pylint: disable=line-too-long - logo_url="https://assets-global.website-files.com/617960145ff34fe4a9fe7240/617960145ff34f9a97fe72c8_Intrinio%20Logo%20-%20Dark.svg", ) diff --git a/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py b/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py index f365f02c9255..28babefdc607 100644 --- a/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py +++ b/openbb_platform/providers/nasdaq/openbb_nasdaq/__init__.py @@ -36,5 +36,4 @@ repr_name="NASDAQ", v3_credentials=["API_KEY_QUANDL"], instructions='Go to: https://www.quandl.com\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207823899-208a3952-f557-4b73-aee6-64ac00faedb7.png)\n\nClick on, "Sign Up", and register a new account.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824214-4b6b2b74-e709-4ed4-adf2-14803e6f3568.png)\n\nFollow the sign-up instructions, and upon completion the API key will be assigned.\n\n![Quandl](https://user-images.githubusercontent.com/46355364/207824664-3c82befb-9c69-42df-8a82-510d85c19a97.png)', # noqa: E501 pylint: disable=line-too-long - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/NASDAQ_logo.svg/1600px-NASDAQ_logo.svg.png", ) diff --git a/openbb_platform/providers/oecd/openbb_oecd/__init__.py b/openbb_platform/providers/oecd/openbb_oecd/__init__.py index 2d5e58463b87..49b94a9e703e 100644 --- a/openbb_platform/providers/oecd/openbb_oecd/__init__.py +++ b/openbb_platform/providers/oecd/openbb_oecd/__init__.py @@ -24,5 +24,4 @@ "LTIR": OECDLTIRFetcher, }, repr_name="Organization for Economic Co-operation and Development (OECD)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/OECD_logo.svg/400px-OECD_logo.svg.png", ) diff --git a/openbb_platform/providers/polygon/openbb_polygon/__init__.py b/openbb_platform/providers/polygon/openbb_polygon/__init__.py index 917c121f9b27..27b715652c17 100644 --- a/openbb_platform/providers/polygon/openbb_polygon/__init__.py +++ b/openbb_platform/providers/polygon/openbb_polygon/__init__.py @@ -42,5 +42,4 @@ repr_name="Polygon.io", v3_credentials=["API_POLYGON_KEY"], instructions='Go to: https://polygon.io\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825623-fcd7f0a3-131a-4294-808c-754c13e38e2a.png)\n\nClick on, "Get your Free API Key".\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207825952-ca5540ec-6ed2-4cef-a0ed-bb50b813932c.png)\n\nAfter signing up, the API Key is found at the bottom of the account dashboard page.\n\n![Polygon](https://user-images.githubusercontent.com/46355364/207826258-b1f318fa-fd9c-41d9-bf5c-fe16722e6601.png)', # noqa: E501 pylint: disable=line-too-long - logo_url="https://polygon.io/_next/image?url=%2Flogo.svg&w=640&q=75", ) diff --git a/openbb_platform/providers/sec/openbb_sec/__init__.py b/openbb_platform/providers/sec/openbb_sec/__init__.py index e45329a720ae..d130dd64cf9c 100644 --- a/openbb_platform/providers/sec/openbb_sec/__init__.py +++ b/openbb_platform/providers/sec/openbb_sec/__init__.py @@ -33,5 +33,4 @@ "SymbolMap": SecSymbolMapFetcher, }, repr_name="Securities and Exchange Commission (SEC)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Seal_of_the_United_States_Securities_and_Exchange_Commission.svg/1920px-Seal_of_the_United_States_Securities_and_Exchange_Commission.svg.png", # noqa: E501 pylint: disable=line-too-long ) diff --git a/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py b/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py index 4195a6642e1a..e4022980de84 100644 --- a/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py +++ b/openbb_platform/providers/seeking_alpha/openbb_seeking_alpha/__init__.py @@ -14,5 +14,4 @@ "UpcomingReleaseDays": SAUpcomingReleaseDaysFetcher, }, repr_name="Seeking Alpha", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Seeking_Alpha_Logo.svg/280px-Seeking_Alpha_Logo.svg.png", ) diff --git a/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py b/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py index fc3e6c3288b0..ecba54bb5331 100644 --- a/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py +++ b/openbb_platform/providers/stockgrid/openbb_stockgrid/__init__.py @@ -14,5 +14,4 @@ "ShortVolume": StockgridShortVolumeFetcher, }, repr_name="Stockgrid", - logo_url="https://www.stockgrid.io/img/logo_white2.41ee5250.svg", ) diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py index 1b122816d80d..029f57a13c47 100644 --- a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py +++ b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py @@ -24,5 +24,4 @@ "TrailingDividendYield": TiingoTrailingDivYieldFetcher, }, repr_name="Tiingo", - logo_url="https://www.tiingo.com/dist/images/tiingo/logos/tiingo_full_light_color.svg", ) diff --git a/openbb_platform/providers/tmx/openbb_tmx/__init__.py b/openbb_platform/providers/tmx/openbb_tmx/__init__.py index 7377d9a7598e..72f31fabdeab 100644 --- a/openbb_platform/providers/tmx/openbb_tmx/__init__.py +++ b/openbb_platform/providers/tmx/openbb_tmx/__init__.py @@ -68,5 +68,4 @@ "TreasuryPrices": TmxTreasuryPricesFetcher, }, repr_name="TMX", - logo_url="https://www.tmx.com/assets/application/img/tmx_logo_en.1593799726.svg", ) diff --git a/openbb_platform/providers/tradier/openbb_tradier/__init__.py b/openbb_platform/providers/tradier/openbb_tradier/__init__.py index a8d332166ecf..85b5d219ec82 100644 --- a/openbb_platform/providers/tradier/openbb_tradier/__init__.py +++ b/openbb_platform/providers/tradier/openbb_tradier/__init__.py @@ -28,5 +28,4 @@ repr_name="Tradier", v3_credentials=["API_TRADIER_TOKEN"], instructions='Go to: https://documentation.tradier.com\n\n![Tradier](https://user-images.githubusercontent.com/46355364/207829178-a8bba770-f2ea-4480-b28e-efd81cf30980.png)\n\nClick on, "Open Account", to start the sign-up process. After the account has been setup, navigate to [Tradier Broker Dash](https://dash.tradier.com/login?redirect=settings.api) and create the application. Request a sandbox access token.', # noqa: E501 pylint: disable=line-too-long - logo_url="https://tradier.com/assets/images/tradier-logo.svg", ) diff --git a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py index f87a720feb7b..ae82a774f70f 100644 --- a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py +++ b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/__init__.py @@ -16,5 +16,4 @@ credentials=["api_key"], fetcher_dict={"EconomicCalendar": TEEconomicCalendarFetcher}, repr_name="Trading Economics", - logo_url="https://developer.tradingeconomics.com/Content/Images/logo.svg", ) diff --git a/openbb_platform/providers/wsj/openbb_wsj/__init__.py b/openbb_platform/providers/wsj/openbb_wsj/__init__.py index 5d413b2045c4..c27e000e2daf 100644 --- a/openbb_platform/providers/wsj/openbb_wsj/__init__.py +++ b/openbb_platform/providers/wsj/openbb_wsj/__init__.py @@ -22,5 +22,4 @@ "ETFActive": WSJActiveFetcher, }, repr_name="Wall Street Journal (WSJ)", - logo_url="https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/WSJ_Logo.svg/1594px-WSJ_Logo.svg.png", ) diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py index 0cb4df8b9147..fe6e2934de8e 100644 --- a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py +++ b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py @@ -73,5 +73,4 @@ "ShareStatistics": YFinanceShareStatisticsFetcher, }, repr_name="Yahoo Finance", - logo_url="https://upload.wikimedia.org/wikipedia/commons/8/8f/Yahoo%21_Finance_logo_2021.png", ) From 4ed5f054caa0ce1f60f8fde2ebdbfc6479df4c04 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Mon, 13 May 2024 18:14:18 +0100 Subject: [PATCH 27/44] [Feature] CLI README (#6402) * cli readme * Update README.md * suggestions @IgorWounds --- cli/CONTRIBUTING.md | 1723 ------------------------------------- cli/README.md | 68 +- openbb_platform/README.md | 2 +- 3 files changed, 67 insertions(+), 1726 deletions(-) delete mode 100644 cli/CONTRIBUTING.md diff --git a/cli/CONTRIBUTING.md b/cli/CONTRIBUTING.md deleted file mode 100644 index 5a65b709b688..000000000000 --- a/cli/CONTRIBUTING.md +++ /dev/null @@ -1,1723 +0,0 @@ -# CONTRIBUTING - -First off, thanks for taking the time to contribute (or at least read the Contributing Guidelines)! 🚀 - -The following is a set of guidelines for contributing to OpenBB Terminal. These are mostly guidelines, not rules. -Use your best judgment, and feel free to propose changes to this document in a pull request. - -- [CONTRIBUTING](#contributing) -- [BASIC](#basic) - - [Adding a new command](#adding-a-new-command) - - [Select Feature](#select-feature) - - [Model](#model) - - [Data sources](#data-sources) - - [View](#view) - - [Controller](#controller) - - [Add SDK endpoint (V3)](#add-sdk-endpoint-v3) - - [Add OpenBB Platform endpoint (V4)](#add-openbb-platform-endpoint-v4) - - [Add Unit Tests](#add-unit-tests) - - [Open a Pull Request](#open-a-pull-request) - - [Review Process](#review-process) - - [Understand Code Structure](#understand-code-structure) - - [Backend](#backend) - - [Frontend](#frontend) - - [Follow Coding Guidelines](#follow-coding-guidelines) - - [General Code Requirements](#general-code-requirements) - - [File Specific Requirements](#file-specific-requirements) - - [Coding Style](#coding-style) - - [OpenBB Style Guide](#openbb-style-guide) - - [Flags](#flags) - - [Output format](#output-format) - - [Time-related](#time-related) - - [Data selection and manipulation](#data-selection-and-manipulation) - - [Financial instrument characteristics](#financial-instrument-characteristics) - - [Naming Convention](#naming-convention) - - [Docstrings](#docstrings) - - [Linters](#linters) - - [Command names](#command-names) - - [UI and UX](#ui-and-ux) - - [External API Keys](#external-api-keys) - - [Creating API key](#creating-api-key) - - [Setting and checking API key](#setting-and-checking-api-key) -- [ADVANCED](#advanced) - - [Important functions and classes](#important-functions-and-classes) - - [Base controller class](#base-controller-class) - - [Default Data Sources](#default-data-sources) - - [Export Data](#export-data) - - [Queue and pipeline](#queue-and-pipeline) - - [Auto Completer](#auto-completer) - - [Logging](#logging) - - [Internationalization](#internationalization) - - [Settings](#settings) - - [Write Code and Commit](#write-code-and-commit) - - [Pre Commit Hooks](#pre-commit-hooks) - - [Coding](#coding) - - [Git Process](#git-process) - - [Branch Naming Conventions](#branch-naming-conventions) - - [Installers](#installers) - -# BASIC - -## Adding a new command - -Before implementing a new command we highly recommend that you go through [Understand Code Structure](#understand-code-structure) and [Follow Coding Guidelines](#follow-coding-guidelines). This will allow you to get your PR merged faster and maintain consistency in our code base. - -In the next sections we describe the process to add a new command. -We will be adding a function to get price targets from the Financial Modeling Prep API. Note that there already exists a function to get price targets from the Business Insider website, `stocks/fa/pt`, so we will be adding a new function to get price targets from the Financial Modeling Prep API, and go through adding sources. - -### Select Feature - -- Pick a feature you want to implement or a bug you want to fix from [our issues](https://github.com/OpenBB-finance/OpenBBTerminal/issues). -- Feel free to discuss what you'll be working on either directly on [the issue](https://github.com/OpenBB-finance/OpenBBTerminal/issues) or on [our Discord](https://openbb.co/discord). - - This ensures someone from the team can help you and there isn't duplicated work. - -Before writing any code, it is good to understand what the data will look like. In this case, we will be getting the price targets from the Financial Modeling Prep API, and the data will look like this: - -```json -[ - { - "symbol": "AAPL", - "publishedDate": "2023-02-03T16:19:00.000Z", - "newsURL": "https://pulse2.com/apple-stock-receives-a-195-price-target-aapl/", - "newsTitle": "Apple Stock Receives A $195 Price Target (AAPL)", - "analystName": "Cowen Cowen", - "priceTarget": 195, - "adjPriceTarget": 195, - "priceWhenPosted": 154.5, - "newsPublisher": "Pulse 2.0", - "newsBaseURL": "pulse2.com", - "analystCompany": "Cowen & Co." - } -``` - -### Model - -1. Create a file with the source of data as the name followed by `_model` if it doesn't exist. In this case, the file `openbb_terminal/stocks/fundamental_analysis/fmp_model.py` already exists, so we will add the function to that file. -2. Add the documentation header -3. Do the necessary imports to get the data -4. Define a function starting with `get_` -5. In this function: - 1. Use type hinting - 2. Write a descriptive description where at the end the source is specified. - 3. Utilize an official API, get and return the data. - -```python -""" Financial Modeling Prep Model """ -__docformat__ = "numpy" - -import logging - -import pandas as pd - -from src.current_user import get_current_user -from openbb_terminal.decorators import check_api_key, log_start_end -from openbb_terminal.helpers import request - -logger = logging.getLogger(__name__) - - -@check_api_key(["API_KEY_FINANCIALMODELINGPREP"]) -def get_price_targets(cls, symbol: str) -> pd.DataFrame: - """Get price targets for a company [Source: Financial Modeling Prep] - - Parameters - ---------- - symbol : str - Symbol to get data for - - Returns - ------- - pd.DataFrame - DataFrame of price targets - """ - current_user = get_current_user() - - url = f"https://financialmodelingprep.com/api/v4/price-target?symbol={symbol}&apikey={current_user.credentials.API_KEY_FINANCIALMODELINGPREP}" - response = request(url) - - # Check if the response is valid - if response.status_code != 200 or "Error Message" in response.json(): - message = f"Error, Status Code: {response.status_code}." - message = ( - message - if "Error Message" not in response.json() - else message + "\n" + response.json()["Error Message"] + ".\n" - ) - console.print(message) - return pd.DataFrame() - - return pd.DataFrame(response.json()) -``` - -In this function: - -- We import the current user object and, consequently, preferences using the `get_current_user` function. API keys are stored in `current_user.credentials` -- We use the `@log_start_end` decorator to add the function to our logs for debugging purposes. -- We add the `@check_api_key` decorator to confirm the API key is valid. -- We have type hinting and a docstring describing the function. -- We use the openbb_terminal helper function `request`, which is an abstracted version of the requests library, which allows us to add user agents, timeouts, caches, etc. to any HTTP request in the terminal. -- We check for different error messages. This will depend on the API provider and usually requires some trial and error. With the FMP API, if there is an invalid symbol, we get a response code of 200, but the json response has an error message field. Same with an invalid API key. -- When an error is caught, we still return an empty dataframe. -- We return the json response as a pandas dataframe. Most functions in the terminal should return a dataframe, but if not, make sure that the return type is specified. - -Note: - -1. If the function is applicable to many asset classes, it is possible that this file needs to be created under `common/` directory rather than `stocks/`, which means the function should be written in a generic way, i.e. not mentioning stocks or a specific context. -2. If the model requires an API key, make sure to handle the error and output relevant message. -3. If the data provider is not yet supported, you'll most likely need to do some extra steps in order to add it to the `keys` menu. See [this section](#external-api-keys) for more details. - -Some of the most common error messages are: - -- Error in the request (HTTP error) -- Invalid API Keys -- API Keys not authorized for Premium feature -- Empty return payload -- Invalid arguments (Optional) - -In the example below, you can see that we explicitly handle some of them. -It's not always possible to distinguish error types using `status_code`. So depending on the API provider, you can use either error messages or exceptions. - -```python - -@check_api_key(["API_NEWS_TOKEN"]) -def get_news( - query: str, - limit: int = 10, - start_date: Optional[str] = None, - show_newest: bool = True, - sources: str = "", -) -> pd.DataFrame: - - ... - - link += f"&apiKey={get_current_user().credentials.API_NEWS_TOKEN}" - response = request(link) - articles = {} - - if response.status_code == 200: - response_json = response.json() - articles = (response_json["articles"] if show_newest else response_json["articles"][::-1]) - - elif response.status_code == 426: - console.print(f"Error in request: {response.json()['message']}", "\n") - elif response.status_code == 401: - console.print("[red]Invalid API Key[/red]\n") - elif response.status_code == 429: - console.print("[red]Exceeded number of calls per minute[/red]\n") - else: - console.print(f"Error in request: {response.json()['message']}", "\n") - - ... -``` - -> Click [here](openbb_terminal/common/newsapi_model.py) to see the example in detail. - -### Data sources - -Now that we have added the model function getting, we need to specify that this is an available data source. To do so, we edit the `openbb_terminal/miscellaneous/sources/openbb_default.json` file. This file, described below, uses a dictionary structure to identify available sources. Since we are adding FMP to `stocks/fa/pt`, we find that entry and append it: - -```json - "fa": { - "pt": ["BusinessInsider", "FinancialModelingPrep"], -``` - -If you are adding a new function with a new data source, make a new value in the file. If the data source requires an -API key, please refer to the guide below for adding them. Instructions for obtaining the new api key -should be included in the file `OpenBBTerminal/website/content/terminal/usage/data/api-keys.md`. - -### View - -1. Create a file with the source of data as the name followed by `_view` if it doesn't exist, e.g. `fmp_view` -2. Add the documentation header -3. Do the necessary imports to display the data. One of these is the `_model` associated with this `_view`. I.e. from same data source. -4. Define a function starting with `display_` -5. In this function: - - Use typing hints - - Write a descriptive description where at the end the source is specified - - Get the data from the `_model` and parse it to be output in a more meaningful way. - - Do not degrade the main data dataframe coming from model if there's an export flag. This is so that the export can have all the data rather than the short amount of information we may show to the user. Thus, in order to do so `df_data = df.copy()` can be useful as if you change `df_data`, `df` remains intact. -6. If the source requires an API Key or some sort of tokens, add `check_api_key` decorator on that specific view. This will throw a warning if users forget to set their API Keys -7. Finally, call `export_data` where the variables are export variable, current filename, command name, and dataframe. - -```python - -@check_api_key(["API_KEY_FINANCIALMODELINGPREP"]) -def display_price_targets( - symbol: str, limit: int = 10, export: str = "", sheet_name: Optional[str] = None -): - """Display price targets for a given ticker. [Source: Financial Modeling Prep] - - Parameters - ---------- - symbol : str - Symbol - limit: int - Number of last days ratings to display - export: str - Export dataframe data to csv,json,xlsx file - sheet_name: str - Optionally specify the name of the sheet the data is exported to. - """ - columns_to_show = [ - "publishedDate", - "analystCompany", - "adjPriceTarget", - "priceWhenPosted", - ] - price_targets = fmp_model.get_price_targets(symbol) - if price_targets.empty: - console.print(f"[red]No price targets found for {symbol}[/red]\n") - return - price_targets["publishedDate"] = price_targets["publishedDate"].apply( - lambda x: datetime.strptime(x, "%Y-%m-%dT%H:%M:%S.%fZ").strftime("%Y-%m-%d %H:%M") - ) - export_data( - export, - os.path.dirname(os.path.abspath(__file__)), - "pt", - price_targets, - sheet_name, - ) - - print_rich_table( - price_targets[columns_to_show].head(limit), - headers=["Date", "Company", "Target", "Posted Price"], - show_index=False, - title=f"{symbol.upper()} Price Targets", - ) -``` - -In this function: - -- We use the same log and API decorators as in the model. -- We define the columns we want to show to the user. -- We get the data from the fmp_model function -- We check if there is data. If something went wrong, we don't want to show it, so we print a message and return. Note that because we have error messages in both the model and view, there will be two print outs. If you wish to just show one, it is better to handle in the model. -- We do some parsing of the data to make it more readable. In this case, the output from FMP is not very clear at quick glance, we we put it into something more readable. -- We export the data. In this function, I decided to export after doing the manipulation. If we do any removing of columns, we should copy the dataframe before exporting. -- We print the data in table form using our `print_rich_table`. This provides a nice console print using the rich library. Note that here I show the top `limit` rows of the dataframe. Care should be taken to make sure that things are sorted. If a sort is required, there is a `reverse` argument that can be added to sort in reverse order. - -### Controller - -Now that we have the model and views, it is time to add to the controller. - -1. Import the associated `_view` function to the controller. -2. Add command name to variable `CHOICES_COMMANDS` from `FundamentalAnalysisController` class. -3. Add command and source to `print_help()`. - - ```python - def print_help(self): - """Print help.""" - mt = MenuText("stocks/fa/") - mt.add_cmd("load") - mt.add_raw("\n") - mt.add_param("_ticker", self.ticker.upper()) - mt.add_raw("\n") - mt.add_info("_company_overview") - mt.add_cmd("mktcap") - mt.add_cmd("overview") - mt.add_cmd("divs", not self.suffix) - - ... - - mt.add_cmd("pt") - mt.add_cmd("dcf") - mt.add_cmd("dcfc") - console.print(text=mt.menu_text, menu="Stocks - Fundamental Analysis") - ``` - -4. If there is a condition to display or not the command, this is something that can be leveraged through the `add_cmd` method, e.g. `mt.add_cmd("divs", not self.suffix)`. - -5. Add command description to file `i18n/en.yml`. Use the path and command name as key, e.g. `stocks/fa/pt` and the value as description. Please fill in other languages if this is something that you know. - -6. Add a method to `FundamentalAnalysisController` class with name: `call_` followed by command name. - - This method must start defining a parser with arguments `add_help=False` and - `formatter_class=argparse.ArgumentDefaultsHelpFormatter`. In addition `prog` must have the same name as the command, and `description` should be self-explanatory ending with a mention of the data source. - - Add parser arguments after defining parser. One important argument to add is the export capability. All commands should be able to export data. - - If there is a single or even a main argument, a block of code must be used to insert a fake argument on the list of args provided by the user. This makes the terminal usage being faster. - - ```python - if other_args and "-" not in other_args[0][0]: - other_args.insert(0, "-l") - ``` - - - Parse known args from list of arguments and values provided by the user. - - Call the function contained in a `_view.py` file with the arguments parsed by argparse. - -Note that the function self.parse_known_args_and_warn() has some additional options we can add. If the function is showing a chart, but we want the option to show raw data, we can add the `raw=True` keyword and the resulting namespace will have the `raw` attribute. -Same with limit, we can pass limit=10 to add the `-l` flag with default=10. Here we also specify the export, and whether it is data only, plots only or anything else. This function also adds the `source` attribute to the namespace. In our example, this is important because we added an additional source. - -Our new function will be: - -```python - - def call_pt(self, other_args: List[str]): - """Process pt command""" - parser = argparse.ArgumentParser( - add_help=False, - prog="pt", - description="""Prints price target from analysts. [Source: Business Insider and Financial Modeling Prep]""", - ) - parser.add_argument( - "-t", - "--ticker", - dest="ticker", - help="Ticker to analyze", - type=str, - default=None, - ) - if other_args and "-" not in other_args[0][0]: - other_args.insert(0, "-t") - ns_parser = self.parse_known_args_and_warn( - parser, other_args, EXPORT_BOTH_RAW_DATA_AND_FIGURES, raw=True, limit=10 - ) - if ns_parser: - if ns_parser.ticker: - self.ticker = ns_parser.ticker - self.custom_load_wrapper([self.ticker]) - - if ns_parser.source == "BusinessInsider": - business_insider_view.display_price_target_from_analysts( - symbol=self.ticker, - data=self.stock, - start_date=self.start, - limit=ns_parser.limit, - raw=ns_parser.raw, - export=ns_parser.export, - sheet_name=" ".join(ns_parser.sheet_name) - if ns_parser.sheet_name - else None, - ) - elif ns_parser.source == "FinancialModelingPrep": - fmp_view.display_price_targets( - symbol=self.ticker, - limit=ns_parser.limit, - export=ns_parser.export, - sheet_name=" ".join(ns_parser.sheet_name) - if ns_parser.sheet_name - else None, - ) -``` - -Here, we make the parser, add the arguments, and then parse the arguments. In order to use the fact that we had a new source, we add the logic to access the correct view function. In this specific menu, we also allow the user to specify the symbol with -t, which is what the first block is doing. - -Note that in the `fa` submenu, we allow the function to be run by specifying a ticker, ie `pt -t AAPL`. In this submenu we do a `load` behind the scenes with the ticker selected so that other functions can be run without specifying the ticker. - -Now from the terminal, this function can be run as desired: - -```bash -2023 Mar 03, 11:37 (🦋) /stocks/fa/ $ pt -t aapl --source FinancialModelingPrep - - AAPL Price Targets -┏━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┓ -┃ Date ┃ Company ┃ Target ┃ Posted Price ┃ -┡━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━┩ -│ 2023-02-03 16:19 │ Cowen & Co. │ 195.00 │ 154.50 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 09:31 │ D.A. Davidson │ 173.00 │ 157.09 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 08:30 │ Rosenblatt Securities │ 173.00 │ 150.82 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 08:29 │ Wedbush │ 180.00 │ 150.82 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 07:21 │ Raymond James │ 170.00 │ 150.82 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 07:05 │ Barclays │ 145.00 │ 150.82 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-03 03:08 │ KeyBanc │ 177.00 │ 150.82 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-02 02:08 │ Rosenblatt Securities │ 165.00 │ 145.43 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-02 02:08 │ Deutsche Bank │ 160.00 │ 145.43 │ -├──────────────────┼───────────────────────┼────────┼──────────────┤ -│ 2023-02-02 02:08 │ J.P. Morgan │ 180.00 │ 145.43 │ -└──────────────────┴───────────────────────┴────────┴──────────────┘ -``` - -When adding a new menu, the code looks like this: - -```python - -def call_fa(self, _): - """Process fa command""" - from openbb_terminal.stocks.fundamental_analysis.fa_controller import ( - FundamentalAnalysisController, - ) - - self.queue = self.load_class( - FundamentalAnalysisController, self.ticker, self.start, self.stock, self.queue - ) -``` - -The **import only occurs inside this menu call**, this is so that the loading time only happens here and not at the terminal startup. This is to avoid slow loading times for users that are not interested in `stocks/fa` menu. - -In addition, note the `self.load_class` which allows to not create a new `FundamentalAnalysisController` instance but re-load the previous created one. Unless the arguments `self.ticker`, `self.start` or `self.stock` have changed since. The `self.queue` list of commands is passed around as it contains the commands that the terminal must perform. - -### Add SDK endpoint (V3) - -In order to add a command to the SDK, follow these steps: - -1. If you've created a new model or view file, add the import with an alias to `openbb_terminal/core/sdk/sdk_init.py` following this structure: - - ```python - # Stocks - Fundamental Analysis - from openbb_terminal.stocks.fundamental_analysis import ( - finviz_model as stocks_fa_finviz_model, - finnhub_model as stocks_fa_finnhub_model, - finnhub_view as stocks_fa_finnhub_view, - ) - ``` - -2. Go to the `trail_map.csv` file located in `openbb_terminal/core/sdk`, which should look like this: - - ```csv - trail,model,view - stocks.fa.analyst,stocks_fa_finviz_model.get_analyst_data, - stocks.fa.rot,stocks_fa_finnhub_model.get_rating_over_time,stocks_fa_finnhub_view.rating_over_time - - ... - - ``` - - In this file, the trail represents the path to the function to be called. The model represents the import alias we gave to the `_model` file. The view represents the import alias we gave to the `_view` file. - -3. Add your new function to this structure. In the below example of the `pt` function, our trail would be `stocks.fa.pt`. - - Our naming convention is such that the data source should not be included in the trail. In this example, calling a new function `pt_fmp` would not be allowed. - For functions with multiple sources, there should be a single `pt` function that takes in the source as an argument. - In the following example, we will stick with showing how the business_insider was initially added to the sdk. - - The model is the import alias to the `_model` function that was written: - - - `stocks_fa_business_insider_model.get_price_target_from_analysts` - - The view is the import alias to the `_view` function that was written: - - - `stocks_fa_business_insider_view.display_price_target_from_analysts` - - The added line of the file should look like this: - - ```csv - stocks.fa.pt,stocks_fa_business_insider_model.get_price_target_from_analysts,stocks_fa_business_insider_view.display_price_target_from_analysts - ``` - -4. Generate the SDK files by running `python generate_sdk.py` from the root of the project. This will automatically generate the SDK `openbb_terminal/sdk.py`, corresponding `openbb_terminal/core/sdk/controllers/` and `openbb_terminal/core/sdk/models/` class files. - - To sort the `trail_map.csv` file and generate the SDK files, run the following command - - ```bash - python generate_sdk.py sort - ``` - -### Add OpenBB Platform endpoint (V4) - -Refer to the documentation [here](https://docs.openbb.co/platform/development). - -### Add Unit Tests - -This is a vital part of the contribution process. We have a set of unit tests that are run on every Pull Request. These tests are located in the `tests` folder. - -Unit tests minimize errors in code and quickly find errors when they do arise. Integration tests are standard usage examples, which are also used to identify errors. - -A thorough introduction on the usage of unit tests and integration tests in OpenBBTerminal can be found on the following page: - -[Unit Test README](tests/README.md) - -[Integration Test README](openbb_terminal/miscellaneous/integration_tests_scripts/README.MD) - -Any new features that do not contain unit tests will not be accepted. - -### Open a Pull Request - -For starters, you should ensure that your branch is up to date with the `develop` branch. To do that, one can run the following commands: - -```bash -git fetch upstream -git checkout develop -git merge upstream/develop -``` - -After that, you can create a new branch for your feature. E.g. `git checkout -b feature/AmazingFeature`. - -Once you're happy with what you have, push your branch to remote. E.g. `git push origin feature/AmazingFeature`. - -> Note that we follow gitflow naming convention, so your branch name should be prefixed with `feature/` or `hotfix/` depending on the type of work you are doing. To learn more, please refer to [Branch Naming Conventions](#branch-naming-conventions). - -A user may create a **Draft Pull Request** when there is the intention to discuss implementation with the team. - -### Review Process - -As soon as the Pull Request is opened, our repository has a specific set of github actions that will not only run -linters on the branch just pushed, but also run `pytest` on it. This allows for another layer of safety on the code developed. - -In addition, our team is known for performing `diligent` code reviews. This not only allows us to reduce the amount of iterations on that code and have it to be more future proof, but also allows the developer to learn/improve his coding skills. - -Often in the past the reviewers have suggested better coding practices, e.g. using `1_000_000` instead of `1000000` for better visibility, or suggesting a speed optimization improvement. - -## Understand Code Structure - -### Backend - -CLI :computer: → `_controller.py` :robot: → `_view.py` :art:     →      `_model.py` :brain:
    -                         -                          -     -`chart=True` -                 -`chart=False` -
    -                           -                           -                 - ↑ -    -`sdk.py` :factory: -   - ↑ - -| **File                           ** | **Role** | **Description** | -| :------------------------- | :------------- | :----------------------------------------------------- | -| **_controller.py** :robot: | The router/input validator | The controller file should hold the least amount of logic possible. Its role is to be a stupid (no logic) router and redirect the command correctly while checking the input with argparser. | -| **_view.py** :art: | The artist | The view file should only output or visualize the data it gets from the `_model` file! The `_view` can limit the data coming from the `_model`, otherwise the data object should be identical in the `_view` and the `_model` files. | -| **_model.py** 🧠 |The brain | The model file is where everything fun happens. The data is gathered (external APIs), processed and returned here. | -| **sdk.py** 🏭 |The SDK Factory | The SDK file is where the callable functions are created for the SDK. There is only one SDK file in the openbb_terminal folder. | - -### Frontend - -| **Item** | **Description** | **Example** | -| :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------- | -| **CONTEXT** | Specific instrument _world_ to analyse. | `stocks`, `crypto`, `economy` | -| **CATEGORY** | Group of similar COMMANDS to do on the instrument
    There are specialized categories, specific to each CONTEXT and there are common categories which are not specific to one CONTEXT. | `due_diligence`, `technical_analysis`, `insider` | -| **COMMAND** | Operation on one or no instrument that retrieves data in form of string, table or plot. | `rating`, `supplier`, `sentiment` | - -The following layout is expected: `///` - -If there are sub-categories, the layout will be: `////` - -**Example:** - -```text -openbb_terminal/stocks/stocks_controller.py - /stocks_helper.py - /technical_analysis/ta_controller.py - /tradingview_view.py - /tradingview_model.py - /common/technical_analysis/overlap_view.py - /overlap_model.py - /crypto/crypto_controller.py - /crypto_helper.py - /due_diligence/dd_controller.py - /binance_view.py - /binance_model.py - /technical_analysis/ta_controller.py -``` - -With: - -| **Context** | **Category** | **File** | **Description** | -| :---------- | :-------------------- | :--------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `stocks/` | | `stocks_controller.py` | Manages **stocks** _context_ from a user perspective, i.e. routing _commands_ and arguments to output data, or, more importantly, redirecting to the selected _category_. | -| `stocks/` | | `stocks_helper.py` | Helper to `stocks` menu. This file is meant to hold generic purpose `stocks` functionalities. | -| `stocks/` | `technical_analysis/` | `ta_controller.py` | Manages **technical_analysis** _category_ from **stocks** _context_ from a user perspective, i.e. routing _commands_ and arguments to output data. -| `stocks/` | `technical_analysis/` | `tradingview_view.py` | This file contains functions that rely on **TradingView** data. These functions represent _commands_ that belong to **technical_analysis** _category_ from **stocks** _context_. These functions are called by `ta_controller.py` using the arguments given by the user and will output either a string, table or plot. | -| `stocks/` | `technical_analysis/` | `tradingview_model.py` | This file contains functions that rely on **TradingView** data. These functions represent _commands_ that belong to **technical_analysis** _category_ from **stocks** _context_. These functions are called by `tradingview_view.py` and will return data to be processed in either a string, dictionary or dataframe format. | -| `common/` | `technical_analysis/` | `overlap_view.py` | This file contains functions that rely on **overlap** data. In this case **overlap** is not a data source, but the type of technical analysis performed. These functions represent _commands_ that belong to **technical_analysis** _category_ from **MULTIPLE** _contexts_. These functions are called by `ta_controller.py`, from **MULTIPLE** _contexts_, using the arguments given by the user and will output either a string, table or plot. Due to the fact that this file is **common** to multiple _contexts_ the functions need to be generic enough to accommodate for this. E.g. if we are providing a dataframe to these functions, we should make sure that `stocks/ta_controller.py` and `crypto/ta_controller` use the same formatting. | -| `common/` | `technical_analysis/` | `overlap_model.py` | This file contains functions that rely on **overlap** data. In this case **overlap** is not a data source, but the type of technical analysis performed. These functions represent _commands_ that belong to **technical_analysis** _category_ from **MULTIPLE** _contexts_. These functions are called by `overlap_view.py`, and will return data to be processed in either a string, dictionary or dataframe format. Due to the fact that this file is **common** to multiple _contexts_ the functions need to be generic enough to accommodate for this. E.g. if we are getting the sentiment of an instrument, we should ensure that these functions accept both a "GME" or a "BTC", for `stocks` and `crypto`, respectively. | - -## Follow Coding Guidelines - -### General Code Requirements - -1. Each function should have default values for non critical kwargs - - - Why? It increases code readability and acts as an input example for the function's arguments. This increases the ease of use of the functions through the SDK, but also just generally. - - > Watch out, add default values whenever possible, but take care for not adding mutable default arguments! [More info](https://docs.python-guide.org/writing/gotchas/#mutable-default-arguments) - -
    - - - - - - - - - -
    Good code :white_check_mark: Bad code :x:
    - - ```python - def display_last_uni_swaps( - top: int = 10, - sortby: str = "timestamp", - descend: bool = False, - export: str = "",) -> None: - ``` - - - - ```python - def display_last_uni_swaps( - top: int, - sortby: str, - descend: bool, - export: str,) -> None: - ``` - -
    - -
    - -2. Simple and understandable input objects; avoid for example weird dictionaries packed with data: {“title”: DataFrame} - - - Why? Ease of use and often these complex formats are clumsy, prone to error and the formatting required for complex parameters is time consuming and unneeded. - -
    - - - - - - - - - -
    Good code :white_check_mark: Bad code :x:
    - - ```python - def get_coins( - top: int = 250, - category: str = "") -> pd.DataFrame: - ``` - - - - ```python - def load( - file: str, - file_types: list, - data_files: Dict[Any, Any], - data_examples: Dict[Any, Any],) -> pd.DataFrame: - ``` - -
    - -
    - -3. Each function needs to have a docstring explaining what it does, its parameters and what it returns. - - - Why? You can use the function without reading its source code. This improves the developing experience and SDK usage. The SDK factory also can’t handle functions without docstrings. - -
    - -4. Consistent and clear argument naming; not `symbol` in `_view` and then `ticker` in `_file` -> ticker everywhere; the name should be descriptive of what information it holds (see Style Guide section below) - - - Why? You can quickly understand what the input should be; example: tickers and stock names are fundamentally different, but they’re both strings so they should be named accordingly. - -
    - - - - - - - - - -
    Good code :white_check_mark: Bad code :x:
    - - ```python - data: pd.Series, dataset_name: str, y_label: str, - ``` - - - - ```python - data: pd.Series, dataset: str, column: str, - ``` - -
    - -
    - -5. Classes (for example the portfolio class) should hold the relevant data and perform no other calculations, these calculations should be done in an independent function. - - - Why? Two reasons: - - These calculations can then be used outside of the class with custom data; for example via the sdk or for tests. - - ```python - from openbb_terminal.portfolio.portfolio_helper import get_gaintopain_ratio - - # Direct function access - get_gaintopain_ratio(historical_trade_data, benchmark_trades, benchmark_returns) - ``` - - The function can be loaded in SDK factory as an endpoint and user can get result by passing the class instance. - - ```python - from openbb_terminal.sdk import openbb - from openbb_terminal.sdk import Portfolio - - transactions = Portfolio.read_orderbook("../../portfolio/holdings/example.csv") - P = Portfolio(transactions) - P.generate_portfolio_data() - P.set_benchmark() - - # SDK endpoint access - openbb.portfolio.gaintopain(P) - ``` - - - - - - - - - -
    Good code :white_check_mark: Bad code :x:
    - - ```python - def get_gaintopain_ratio(portfolio: PortfolioEngine) -> pd.DataFrame: - - """...""" - - gtp_period_df = portfolio_helper.get_gaintopain_ratio( - portfolio.historical_trade_data, - portfolio.benchmark_trades, - portfolio.benchmark_returns) - - return gtp_period_df - ``` - - - - ```python - def get_gaintopain_ratio(self) -> pd.DataFrame: - - """...""" - - vals = list() - - for period in portfolio_helper.PERIODS: - port_rets = portfolio_helper.filter_df_by_period(self.portfolio_returns, period) - bench_rets = portfolio_helper.filter_df_by_period(self.benchmark_returns, period) - - ... - ``` - -
    - -
    - -6. Naming among related model and view functions should be obvious; just different prefix if possible - - - Why? Eases SDK factory mapping and keeps code clean. - -
    - - - - - - - - - -
    Good code :white_check_mark: Bad code :x:
    - - ```python - # [fred_view.py] - - def display_yieldcurve(country: str): - - df = fred_model.get_yieldcurve(country) - - … - - # [fred_model.py] - - def get_yieldcurve(country: str) -> pd.Dataframe: - - … - ``` - - - - ```python - # [fred_view.py] - - def display_bondscrv(country: str): - - df = fred_model.get_yieldcurve(country) - - … - - # [fred_model.py] - - def get_yldcurve(country: str) -> pd.Dataframe: - - … - ``` - -
    - -
    - -### File Specific Requirements - -1. No data altering in the view file or controller file (view and model with same args) - - - Why? Consistency and good code structure. This also improves the SDK user experience. Thus follows that view and model files will have the same arguments (except for output options like raw, export, external_axes), since no data changes shall be done in the view file. - -
    - -2. Each model (get_) should almost always have its own view function (display_) - - - Why? To respect the principles laid out in Code Structure and the previous bullet point. If your code does not have this `get_` → `display_` map it’s likely that i. and/or ii. fail to hold. - - i. Data is processed in `_model` files and displayed in `_view` files - - ii. `_view` and `_model` files will have the same arguments (except for output options) - -
    - -### Coding Style - -When in doubt, follow . - -#### OpenBB Style Guide - -The style guide is a reverse dictionary for argument names, where a brief definition is mapped to an OpenBB recommended argument name and type. When helpful a code snippet example is added below. Following this guide will help keep argument naming consistent and improve SDK users experience. - -Style guide structure: - -```python - : e.g. - -def func(..., argument_name: argument_type = default, ...): - ... -``` - -
    - -#### Flags - -Show raw data : `raw` _(bool)_ - -```python -def display_data(..., raw: bool = False, ...): - ... - if raw: - print_rich_table(...) -``` - -Sort in ascending order : `ascend` _(bool)_ - -```python -def display_data(..., sortby: str = "", ascend: bool = False, ...): - ... - if sortby: - data = data.sort_values(by=sortby, ascend=ascend) -``` - -Show plot : `plot` _(bool)_ - -```python -def display_data(..., plot: bool = False, ...): - ... - if plot: - ... - fig.add_scatter(...) -``` - -
    - -#### Output format - -Format to export data : `export` _(str), e.g. csv, json, xlsx_ - -```python -def display_data(..., export: str = "", ...): - ... - export_data(export, os.path.dirname(os.path.abspath(__file__)), "func", data) -``` - -Whether to display plot or return figure _(False: display, True: return)_ : `external_axes` _(bool)_ - -```python -def display_data(..., external_axes: bool = False, ...): - ... - fig = OpenBBFigure() - fig.add_scatter(...) - return fig.show(external=external_axes) -``` - -Field by which to sort : `sortby` _(str), e.g. "Volume"_ - -```python -def display_data(..., sortby: str = "col", ...): - ... - if sortby: - data = data.sort_values(by=sortby) -``` - -Maximum limit number of output items : `limit` _(int)_ - -```python -def display_data(..., limit = 10, ...): - ... - print_rich_table( - data[:limit], - ... - ) -``` - -
    - -#### Time-related - -Date from which data is fetched (YYYY-MM-DD) : `start_date` _(str), e.g. 2022-01-01_ - -Date up to which data is fetched (YYYY-MM-DD) : `end_date` _(str), e.g. 2022-12-31_ - -Note: We want to accept dates in string because it is easier to deal from user standpoint. Inside the function you can convert it to datetime and check its validity. Please specify date format in docstring. - -```python -def get_historical_data(..., start_date: str = "2022-01-01", end_date: str = "2022-12-31",): - """ - ... - Parameters - ---------- - start_date: str - Date from which data is fetched in format YYYY-MM-DD - end_date: str - Date up to which data is fetched in format YYYY-MM-DD - ... - """ - data = source_model.get_data(data_name, start_date, end_date, ...) -``` - -Year from which data is fetched (YYYY) : `start_year` _(str), e.g. 2022_ - -Year up to which data is fetched (YYYY) : `end_year` _(str), e.g. 2023_ - -```python -def get_historical_data(..., start_year: str = "2022", end_year str = "2023", ...): - ... - data = source_model.get_data(data_name, start_year, end_year, ...) -``` - -Interval for data observations : `interval` _(str), e.g. 60m, 90m, 1h_ - -```python -def get_prices(interval: str = "60m", ...): - ... - data = source.download( - ..., - interval=interval, - ... - ) -``` - -Rolling window length : `window` _(int/str), e.g. 252, 252d_ - -```python -def get_rolling_sum(returns: pd.Series, window: str = "252d"): - rolling_sum = returns.rolling(window=window).sum() -``` - -
    - -#### Data selection and manipulation - -Search term used to query : `query` (str) - -Maximum limit of search items/periods in data source: `limit` _(int)_ - -Note: please specify limit application in docstring - -```python -def get_data_from_source(..., limit: int = 10, ...): - """ - Parameters - ---------- - ... - limit: int - Number of results to fetch from source - ... - """ - data = source.get_data(data_name, n_results=limit, ...) -``` - -Dictionary of input datasets : `datasets` _(Dict[str, pd.DataFrame])_ - -Note: Most occurrences are on the econometrics menu and might be refactored in near future - -Input dataset : `data` _(pd.DataFrame)_ - -```python -def process_data(..., data: pd.DataFrame, ...): - """ - ... - Parameters - ---------- - ... - data : pd.DataFrame - Dataframe of ... - ... - """ - col_data = pd.DataFrame(data["Col"]) -``` - -Dataset name : `dataset_name` _(str)_ - -Input series : `data` _(pd.Series)_ - -Dependent variable series : `dependent_series` _(pd.Series)_ - -Independent variable series : `independent_series` _(pd.Series)_ - -```python -def get_econometric_test(dependent_series, independent_series, ...): - ... - dataset = pd.concat([dependent_series, independent_series], axis=1) - result = econometric_test(dataset, ...) -``` - -Country name : `country` _(str), e.g. United States, Portugal_ - -Country initials or abbreviation : `country_code` _(str) e.g. US, PT, USA, POR_ - -Currency to convert data : `currency` _(str) e.g. EUR, USD_ - -
    - -#### Financial instrument characteristics - -Instrument ticker, name or currency pair : `symbol` _(str), e.g. AAPL, ethereum, ETH, ETH-USD_ - -```python -def get_prices(symbol: str = "AAPL", ...): - ... - data = source.download( - tickers=symbol, - ... - ) -``` - -Instrument name: `name` _(str)_ - -Note: If a function has both name and symbol as parameter, we should distinguish them and call it name - -List of instrument tickers, names or currency pairs : `symbols` _(List/List[str]), e.g. ["AAPL", "MSFT"]_ - -Base currency under ***BASE***-QUOTE → ***XXX***-YYY convention : `from_symbol` _(str), e.g. ETH in ETH-USD_ - -Quote currency under BASE-***QUOTE*** → XXX-***YYY*** convention : `to_symbol` _(str), e.g. USD in ETH-USD_ - -```python -def get_exchange_rate(from_symbol: str = "", to_symbol: str = "", ...): - ... - df = source.get_quotes(from_symbol, to_symbol, ...) -``` - -Instrument price : `price` _(float)_ - -Instrument implied volatility : `implied_volatility` _(float)_ - -Option strike price : `strike_price` _(float)_ - -Option days until expiration : `time_to_expiration` _(float/str)_ - -Risk free rate : `risk_free_rate` _(float)_ - -Options expiry date : `expiry` _(str)_ - -
    - -#### Naming Convention - -- The name of the variables must be descriptive of what they stand for. I.e. `ticker` is descriptive, `aux` is not. -- Single character variables **must** be avoided. Except if they correspond to the iterator of a loop. - -#### Docstrings - -The docstring format used in **numpy**, an example is shown below: - -```python -def command_foo(var1: str, var2: List[int], var3: bool = False) -> Tuple[int, pd.DataFrame]: -"""Small description - -[Optional: Longer description] - -Parameters ----------- -var1 : str - var1 description -var2 : List[int] - var2 description -var3 : bool, optional - var3 description - -Returns -------- -foo : int - returned foo description -pd.DataFrame - dataframe returned -""" -``` - -#### Linters - -The following linters are used by our codebase: - -| Linter | Description | -| ------------ | --------------------------------- | -| bandit | security analyzer | -| black | code formatter | -| codespell | spelling checker | -| ruff | a fast python linter | -| mypy | static typing checker | -| pylint | static code analysis | -| markdownlint | markdown linter | - -#### Command names - -- The command name should be as short as possible. -- The command name should allow the user to know what the command refers to without needing to read description. (e.g. `earn`) - - - If this is not possible, then the command name should be an abbreviation of what the functionality corresponds to (e.g. `ycrv` for `yield curve`) - -- The command name **should not** have the data source explicit - -#### UI and UX - -Screenshot 2022-10-26 at 12 17 19 - -It is important to keep a coherent UI/UX throughout the terminal. These are the rules we must abide: - -- There is 1 single empty line between user input and start of the command output. -- There is 1 single empty line between command output and the user input. -- The menu help has 1 empty line above text and 1 empty line below. Both still within the rectangular panel. -- From menu help rectangular panel there's no empty line below - this makes it more clear to the user that they are inside such menu. - -## External API Keys - -### Creating API key - -OpenBB Terminal currently has over 100 different data sources. Most of these require an API key that allows access to some free tier features from the data provider, but also paid ones. - -When a new API data source is added to the platform, it must be added through [credentials_model.py](/openbb_terminal/core/models/credentials_model.py). - -In order to do that, you'll simply need to choose from one the following files: - -1. [local_credentials.json](openbb_terminal/miscellaneous/models/local_credentials.json) --> credentials that should only be stored locally and not pushed to the [OpenBB Hub](https://my.openbb.co/) like brokerage keys or other very sensitive or personal to the user. -2. [hub_credentials.json](openbb_terminal/miscellaneous/models/hub_credentials.json) --> credentials that should be stored in the [OpenBB Hub](https://my.openbb.co/) like API keys to access your favorite providers. - -Then just update [all_api_keys.json](openbb_terminal/miscellaneous/models/all_api_keys.json) with the instructions to get -the api key from the data source website. Make sure that this file has the correct `.json` format, otherwise the API keys page in the Hub will break (e.g. in json the last element key-value pair shouldn't be followed by a comma, and the last object in a list of dictionaries should also not be followed by a comma). - -> Note: By differentiating between local and hub credentials, we can ensure that the user's credentials are not pushed to the [OpenBB Hub](https://my.openbb.co/) and are only stored locally. This does not mean that the credentials are not secure in the OpenBB Hub, but rather that the user can choose to store them locally if they wish. - -### Setting and checking API key - -One of the first steps once adding a new data source that requires an API key is to add that key to our [keys_controller.py](/openbb_terminal/keys_controller.py). This menu allows the user to set API keys and check their validity. - -The following code allows to check the validity of the Polygon API key. - -```python - -def check_polygon_key(show_output: bool = False) -> str: - """Check Polygon key - - Parameters - ---------- - show_output: bool - Display status string or not. By default, False. - - Returns - ------- - str - Status of key set - """ - - current_user = get_current_user() - - if current_user.credentials.API_POLYGON_KEY == "REPLACE_ME": - logger.info("Polygon key not defined") - status = KeyStatus.NOT_DEFINED - else: - r = request( - "https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2020-06-01/2020-06-17" - f"?apiKey={current_user.credentials.API_POLYGON_KEY}" - ) - if r.status_code in [403, 401]: - logger.warning("Polygon key defined, test failed") - status = KeyStatus.DEFINED_TEST_FAILED - elif r.status_code == 200: - logger.info("Polygon key defined, test passed") - status = KeyStatus.DEFINED_TEST_PASSED - else: - logger.warning("Polygon key defined, test inconclusive") - status = KeyStatus.DEFINED_TEST_INCONCLUSIVE - - if show_output: - console.print(status.colorize()) - - return str(status) -``` - -Note that there are usually 3 states: - -- **defined, test passed**: The user has set their API key and it is valid. -- **defined, test failed**: The user has set their API key but it is not valid. -- **not defined**: The user has not defined any API key. - -Note: Sometimes the user may have the correct API key but still not have access to a feature from that data source, and that may be because such feature required an API key of a higher level. - -A function can then be created with the following format to allow the user to change its environment key directly from the terminal. - -```python -def call_polygon(self, other_args: List[str]): - """Process polygon command""" - parser = argparse.ArgumentParser( - add_help=False, - formatter_class=argparse.ArgumentDefaultsHelpFormatter, - prog="polygon", - description="Set Polygon API key.", - ) - parser.add_argument( - "-k", - "--key", - type=str, - dest="key", - help="key", - ) - if not other_args: - console.print("For your API Key, visit: https://polygon.io") - return - - if other_args and "-" not in other_args[0][0]: - other_args.insert(0, "-k") - ns_parser = self.parse_simple_args(parser, other_args) - if ns_parser: - self.status_dict["polygon"] = keys_model.set_polygon_key( - key=ns_parser.key, persist=True, show_output=True - ) -``` - -# ADVANCED - -## Important functions and classes - -### Base controller class - -This `BaseController` class is inherited by all controllers on the terminal. - -This class contains both important variables and methods that are common across all terminal controllers. - -**CHOICES_COMMON**: List of common commands across all controllers - -- `cls`: clear screen -- `home`: go back to the main root -- `h`, `?` and `help`: display the help menu the user is in -- `q`, `quit` and `..`: go back to one menu above -- `exit`: exit the platform -- `r` and `reset`: reset the platform (reading code and settings again but going into the same state) -- `support`: create a support request ticket - -All of these variables have a `call_FUNCTION` associated with them. - -Worthy methods to mention are: - -- `load_class`: Checks for an existing instance of the controller before creating a new one to speed up access to that menu. -- `custom_reset`: Should be used by controllers that rely on a state variable - meant to be overridden. They should add the commands necessary to have the same data loaded. -- `print_help`: Meant to be overridden by each controller -- `parse_input`: Processes the string the user inputs into a list of actionable commands -- `switch`: Acts upon the command action received -- `parse_known_args_and_warn`: Parses the command with the `-` and `--` flags and variables. Some built-in flags are: - - `export_allowed`: Which can be set to `_NO_EXPORT_`, `_EXPORT_ONLY_RAW_DATA_ALLOWED_`, `_EXPORT_ONLY_FIGURES_ALLOWED_` and `_EXPORT_BOTH_RAW_DATA_AND_FIGURES_` - - `raw`: Displaying the data raw - - `limit`: Number of rows to display -- `menu`: Most important method. When a menu is executed, the way to call it is through `stocks_menu.menu()` - -## Default Data Sources - -The document [openbb_default.json](openbb_terminal/miscellaneous/sources/openbb_default.json) contains all data sources that the terminal has access to and specifies the data source utilized by default for each command. - -The convention is as follows: - -```python -{ - "stocks": { - "search": [ - "FinanceDatabase" - ], - "quote": [ - "FinancialModelingPrep" - ], - "tob": [ - "CBOE" - ], - "candle": [], - "codes": [ - "Polygon" - ], - "news": [ - "Feedparser", - "NewsApi", - ], - ... -``` - -The way to interpret this file is by following the path to a data source, e.g. - -- `stocks/search` relies on `FinanceDatabase` -- `stocks/candle` does not rely on any data source. This means that it relies on data that has been loaded before. -- `stocks/load` relies on `YahooFinance`, `AlphaVantage`, `Polygon` or `EODHD`. - - **The order is important as the first data source is the one utilized by default.** -- `stocks/options/unu` relies on `FDScanner`. -- `stocks/options/exp` relies on `YahooFinance` by default but `Tradier` and `Nasdaq` sources are allowed. - -> Note: The default data sources can be changed directly in the [OpenBB Hub](https://my.openbb.co/) by the user and automatically synchronized with the terminal on login. - -## Export Data - -In the `_view.py` files it is common having at the end of each function `export_data` being called. This typically looks like: - -```python - export_data( - export, - os.path.dirname(os.path.abspath(__file__)), - "pt", - df_analyst_data, - sheet_name, - fig, - ) -``` - -Let's go into each of these arguments: - -- `export` corresponds to the type of file we are exporting. - - If the user doesn't have anything selected, then this function doesn't do anything. - - The user can export multiple files and even name the files. - - The allowed type of files `json,csv,xlsx` for raw data and `jpg,pdf,png,svg` for figures depends on the `export_allowed` variable defined in `parse_known_args_and_warn`. -- `os.path.dirname(os.path.abspath(__file__))` corresponds to the directory path - - This is important when `export folder` selected is the default because the data gets stored based on where it is called. - - If this is called from a `common` folder, we can use `os.path.dirname(os.path.abspath(__file__)).replace("common", "stocks")` instead -- `"pt"` corresponds to the name of the exported file (+ unique datetime) if the user doesn't provide one -- `df_analyst_data` corresponds to the dataframe with data. -- `sheet_name` corresponds to the name of the sheet in the excel file. -- `fig` corresponds to the figure to be exported as an image or pdf. - -If `export_allowed=EXPORT_BOTH_RAW_DATA_AND_FIGURES` in `parse_known_args_and_warn`, valid examples are: - -- `cmd --export csv` -- `cmd --export csv,png,jpg` -- `cmd --export mydata.csv` -- `cmd --export mydata.txt,alsomydata.csv,alsoalsomydata.png` - -Note that these files are saved on a location based on the environment variable: `EXPORT_FOLDER_PATH`. Which can be set in `settings/export`. - -The default location is the `exports` folder and the data will be stored with the same organization of the terminal. But, if the user specifies the name of the file, then that will be dropped onto the folder as is with the datetime attached. - -## Queue and pipeline - -The variable `self.queue` contains a list of all actions to be run on the platform. That is the reason why this variable is always passed as an argument to a new controller class and received back. - -```python - self.queue = self.load_class( - DarkPoolShortsController, self.ticker, self.start, self.stock, self.queue - ) -``` - -Example: - -If a user is in the root of the terminal and runs: - -```shell -stocks/load AAPL/dps/psi -l 90 -``` - -The queue created becomes: -`self.queue = ["stocks", "load AAPL", "dps", "psi -l 90"]` - -And the user goes into the `stocks` menu and runs `load AAPL`. Then the queue is updated to -`self.queue = ["dps", "psi -l 90"]` - -At that point the user goes into the `dps` menu and runs the command `psi` with the argument `-l 90` therefore displaying price vs short interest of the past 90 days. - -## Auto Completer - -In order to help users with a powerful autocomplete, we have implemented our own (which can be found [here](/openbb_terminal/custom_prompt_toolkit.py)). - -The queue, discussed in the previous section [Queue and pipeline](#queue-and-pipeline), is expected to link together with the autocompletion in order to provide the user with the available options for each command. -Here is an example of how it will look like: - -```bash -2023 Apr 11, 11:41 (🦋) /stocks/dps/ $ psi - --nyse - --help - -h - --export - --raw - --limit - -l - --source -``` - -> Where `nyse`, `help`, `h`, `export`, `raw`, `limit`, `l` and `source` are the available options for the `psi` command. -> Those are selectable using the arrow keys and the `tab` key. - -The list of options for each command is automatically generated, if you're interested take a look at its implementation [here](/openbb_terminal/core/completer/choices.py). - -To leverage this functionality, you need to add the following line to the top of the desired controller: - -```python -CHOICES_GENERATION = True -``` - -Here's an example of how to use it, on the [`forex` controller](/openbb_terminal/forex/forex_controller.py): - -```python -class ForexController(BaseController): - """Forex Controller class.""" - - CHOICES_COMMANDS = [ - "fwd", - "candle", - "load", - "quote", - ] - CHOICES_MENUS = [ - "forecast", - "qa", - "ta", - ] - RESOLUTION = ["i", "d", "w", "m"] - - PATH = "/forex/" - FILE_PATH = os.path.join(os.path.dirname(__file__), "README.md") - CHOICES_GENERATION = True - - def __init__(self, queue: Optional[List[str]] = None): - """Construct Data.""" - super().__init__(queue) - - self.fx_pair = "" - self.from_symbol = "" - self.to_symbol = "" - self.source = get_ordered_list_sources(f"{self.PATH}load")[0] - self.data = pd.DataFrame() - - if session and get_current_user().preferences.USE_PROMPT_TOOLKIT: - choices: dict = self.choices_default - choices["load"].update({c: {} for c in FX_TICKERS}) - - self.completer = NestedCompleter.from_nested_dict(choices) - - - ... -``` - -In case the user is interested in a **DYNAMIC** list of options which changes based on user's state, then a class method must be defined. - -The example below shows an excerpt from `update_runtime_choices` method in the [`options` controller](/openbb_terminal/stocks/options/options_controller.py). - -```python -def update_runtime_choices(self): - """Update runtime choices""" - if session and get_current_user().preferences.USE_PROMPT_TOOLKIT: - if not self.chain.empty: - strike = set(self.chain["strike"]) - - self.choices["hist"]["--strike"] = {str(c): {} for c in strike} - self.choices["grhist"]["-s"] = "--strike" - self.choices["grhist"]["--strike"] = {str(c): {} for c in strike} - self.choices["grhist"]["-s"] = "--strike" - self.choices["binom"]["--strike"] = {str(c): {} for c in strike} - self.choices["binom"]["-s"] = "--strike" -``` - -This method should only be called when the user's state changes leads to the auto-complete not being accurate. - -In this case, this method is called as soon as the user successfully loads a new ticker since the options expiry dates vary based on the ticker. Note that the completer is recreated from it. - -## Logging - -A logging system is used to help tracking errors inside the OpenBBTerminal. - -This is storing every logged message inside the following location : - -`$HOME/OpenBBUserData/logs` - -Where $HOME is the user home directory, for instance: - -- `C:\Users\foo` if you are in Windows and your name is foo -- `/home/bar/` if you are in macOS or Linux and your name is bar - -The user can override this location using the settings key `OPENBB_USER_DATA_DIRECTORY`. - -If you want to log a particular message inside a function you can do like so: - -```python -import logging - -logger = logging.getLogger(__name__) - -def your_function() -> pd.DataFrame: - logger.info("Some log message with the level INFO") - logger.warning("Some log message with the level WARNING") - logger.fatal("Some log message with the level FATAL") -``` - -You can also use the decorator `@log_start_end` to automatically record a message every time a function starts and ends, like this: - -```python -import logging - - - -logger = logging.getLogger(__name__) - - -def your_function() -> pd.DataFrame: - pass -``` - -> **Note**: if you don't want your logs to be collected, you can set the `OPENBB_LOG_COLLECT` environment variable on your `.env` file to `False`. -> -> **Disclaimer**: all the user paths, names, IPs, credentials and other sensitive information are anonymized, [take a look at how we do it](/openbb_terminal/core/log/generation/formatter_with_exceptions.py). - -## Internationalization - -WORK IN PROGRESS - The menu can be internationalised BUT we do not support yet help commands`-h` internationalization. - -In order to add support for a new language, the best approach is to: - -1. Copy-paste `i18n/en.yml` -2. Rename that file to a short version of language you are translating to, e.g. `i18n/pt.yml` for portuguese -3. Then just update the text on the right. E.g. - -```text - stocks/NEWS: latest news of the company -``` - -becomes - -```text - stocks/NEWS: mais recentes notícias da empresa -``` - -Note: To speed up translation, the team developed a [script](/i18n/help_translation.ipynb) that uses Google translator API to help translating the entire `en.yml` document to the language of choice. Then the output still needs to be reviewed, but this can be a useful bootstrap. - -This is the convention in use for creating a new key/value pair: - -- `stocks/search` - Under `stocks` context, short command `search` description on the `help menu` -- `stocks/SEARCH` - Under `stocks` context, long command `search` description, when `search -h` -- `stocks/SEARCH_query` - Under `stocks` context, `query` description when inquiring about `search` command with `search -h` -- `stocks/_ticker` - Under `stocks` context, `_ticker` is used as a key of a parameter, and the displayed parameter description is given as value -- `crypto/dd/_tokenomics_` - Under `crypto` context and under `dd` menu, `_tokenomics_` is used as a key of an additional information, and the displayed information is given as value - -## Settings - -The majority of the settings used in the OpenBB Terminal are handled using [Pydantic Dataclasses](https://docs.pydantic.dev/usage/dataclasses/). -Some examples are: - -1. [SystemModel](openbb_terminal/core/models/system_model.py) -2. [UserModel](openbb_terminal/core/models/user_model.py) -3. [CredentialsModel](openbb_terminal/core/models/credentials_model.py) -4. ... - -This means that the settings are pretty much validated and documented automatically, as well as centralized in a single place. -This allows us to develop faster, efficiantly and with predictability. -Depending on your use case you'll most likely need to interact with these dataclasses or expand them with new settings. - -**Disclaimer**: avoid at all costs to use the `os.environ` or `os.getenv` methods to retrieve settings. Settings should be retrieved using the appropriate methods from the respective class. - -Here is an example of **accessing** a setting: - -```python - -from src.current_system import get_current_system - -system = get_current_system() -system = get_current_system() -print(system.VERSION) - -# 3.0.0 - -``` - -And here is an example of **changing** a setting: - -```python - -from src.current_system import get_current_system - -set_system_variable("TEST_MODE", True) - -``` - -## Write Code and Commit - -At this stage it is assumed that you have already forked the project and are ready to start working. - -### Pre Commit Hooks - -Git hook scripts are useful for identifying simple issues before submission to code review. We run our hooks on every -commit to automatically point out issues in code such as missing semicolons, trailing whitespace, and debug statements. -By pointing these issues out before code review, this allows a code reviewer to focus on the architecture of a change -while not wasting time with trivial style nitpicks. - -Install the pre-commit hooks by running: `pre-commit install`. - -### Coding - -Although the Coding Guidelines section has been already explained, it is worth mentioning that if you want to be faster -at developing a new feature, you may implement it first on a `jupyter notebook` and then carry it across to the -terminal. This is mostly useful when the feature relies on scraping data from a website, or implementing a Neural -Network model. - -### Git Process - -1. Create your Feature Branch, e.g. `git checkout -b feature/AmazingFeature` -2. Check the files you have touched using `git status` -3. Stage the files you want to commit, e.g. - `git add openbb_terminal/stocks/stocks_controller.py openbb_terminal/stocks/stocks_helper.py`. - Note: **DON'T** add `config_terminal.py` or `.env` files with personal information, or even `feature_flags.py` which is user-dependent. -4. Write a concise commit message under 50 characters, e.g. `git commit -m "meaningful commit message"`. If your PR - solves an issue raised by a user, you may specify such issue by adding #ISSUE_NUMBER to the commit message, so that - these get linked. Note: If you installed pre-commit hooks and one of the formatters re-formats your code, you'll need - to go back to step 3 to add these. - -### Branch Naming Conventions - -The accepted branch naming conventions are: - -- `feature/feature-name` -- `hotfix/hotfix-name` -- `release/2.1.0` or `release/2.1.0rc0`. -- `bugfix/bugfix-name` -- `docs/docs-name` - -All `feature/feature-name` and `bugfix/bugfix-name` related branches can only have PRs pointing to `develop` branch. `release/*` branches can only have PRs pointing to `main` branch, while `hotfix/hotfix-name` should first be merged to `main` and then into `develop` to sync the hotfix changes. - -When `develop` branch is merged to `main`, a GitHub action will run scripts that generate documentation content (reference sections, data models, etc.) and trigger the website deployment. Those scripts can be found in the following path `website/generate_*.py`. - -The `develop` branch is only merged to `main` right before a new release, but sometimes you might need to update the website in-between releases. To do this follow these steps: - -1. create `docs/[my-update]` branch from `main` -2. commit your changes to `docs/[my-update]` -3. merge `docs/[my-update]` into `main` -> website deployment triggered -4. merge `docs/[my-update]` into `develop` -> NO website deployment, just to sync branches - -## Installers - -When implementing a new feature or fixing something within the codebase, it is necessary to ensure that it is working -appropriately on the terminal. However, it is equally as important to ensure that new features or fixes work on the -installer terminal too. This is because a large portion of users utilize the installer to use OpenBB Terminal. -More information on how to build an installer can be found [here](build/README.md). diff --git a/cli/README.md b/cli/README.md index 28bcbff336d2..2ab4656c0fa1 100644 --- a/cli/README.md +++ b/cli/README.md @@ -1,3 +1,67 @@ -# OpenBB CLI +# OpenBB Platform CLI -Work in progress. +[![Downloads](https://static.pepy.tech/badge/openbb)](https://pepy.tech/project/openbb) +[![LatestRelease](https://badge.fury.io/py/openbb.svg)](https://github.com/OpenBB-finance/OpenBBTerminal) + +| OpenBB is committed to build the future of investment research by focusing on an open source infrastructure accessible to everyone, everywhere. | +| :---------------------------------------------------------------------------------------------------------------------------------------------: | +| ![OpenBBLogo](https://user-images.githubusercontent.com/25267873/218899768-1f0964b8-326c-4f35-af6f-ea0946ac970b.png) | +| Check our website at [openbb.co](www.openbb.co) | + +## Overview + +The OpenBB CLI is a command line interface that wraps [OpenBB Platform](https://docs.openbb.co/platform). + +It offers a convenient way to interact with the OpenBB Platform and its extensions, as well as automate data collection via OpenBB Routine Scripts. + +Find the most complete documentation, examples, and usage guides for the OpenBB Platform CLI [here](https://my.openbb.co/app/cli). + +## Installation + +The command below provides access to the all the available OpenBB extensions behind the OpenBB Platform, find the complete list [here](https://my.openbb.co/app/platform/extensions). + +```bash +pip install openbb-cli +``` + +> Note: Find the most complete installation hints and tips [here](https://my.openbb.co/app/cli/installation). + +After the installation is complete, you can deploy the OpenBB CLI by running the following command: + +```bash +openbb +``` + +Which should result in the following output: + +![image](https://github.com/OpenBB-finance/OpenBBTerminal/assets/48914296/f606bb6e-fa00-4fc8-bad2-8269bb4fc38e) + +## API keys + +To fully leverage the OpenBB Platform you need to get some API keys to connect with data providers. Here are the 3 options on where to set them: + +1. OpenBB Hub +2. Local file + +### 1. OpenBB Hub + +Set your keys at [OpenBB Hub](https://my.openbb.co/app/platform/credentials) and get your personal access token from to connect with your account. + +> Once you log in, on the Platform CLI (through the `/account` menu, all your credentials will be in sync with the OpenBB Hub.) + +### 2. Local file + +You can specify the keys directly in the `~/.openbb_platform/user_settings.json` file. + +Populate this file with the following template and replace the values with your keys: + +```json +{ + "credentials": { + "fmp_api_key": "REPLACE_ME", + "polygon_api_key": "REPLACE_ME", + "benzinga_api_key": "REPLACE_ME", + "fred_api_key": "REPLACE_ME" + } +} +``` diff --git a/openbb_platform/README.md b/openbb_platform/README.md index 40bf3f7fc747..c3c2084fc38f 100644 --- a/openbb_platform/README.md +++ b/openbb_platform/README.md @@ -80,7 +80,7 @@ To fully leverage the OpenBB Platform you need to get some API keys to connect w ### 1. OpenBB Hub -Set your keys at [OpenBB Hub](https://my.openbb.co/app/sdk/api-keys) and get your personal access token from to connect with your account. +Set your keys at [OpenBB Hub](https://my.openbb.co/app/platform/credentials) and get your personal access token from to connect with your account. ```python >>> from openbb import obb From 10dddfd893680d5aa230ffab7ff6b0ed1c8f3f8b Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Mon, 13 May 2024 20:34:55 +0200 Subject: [PATCH 28/44] [BugFix] - Explicit error message when return type is not an OBBject (#6394) * Send an explicit message when return type isn't an OBBject * Update package_builder.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * lint --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- openbb_platform/core/openbb_core/app/static/package_builder.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openbb_platform/core/openbb_core/app/static/package_builder.py b/openbb_platform/core/openbb_core/app/static/package_builder.py index 5db17483a191..11fcc5766b0a 100644 --- a/openbb_platform/core/openbb_core/app/static/package_builder.py +++ b/openbb_platform/core/openbb_core/app/static/package_builder.py @@ -319,6 +319,8 @@ def get_function_hint_type_list(cls, func: Callable) -> List[Type]: hint_type_list.append(parameter.annotation) if return_type: + if not issubclass(return_type, OBBject): + raise ValueError("Return type must be an OBBject.") hint_type = get_args(get_type_hints(return_type)["results"])[0] hint_type_list.append(hint_type) From 922fc547f5e77e32695970923d35e53c8a6a8521 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 08:03:17 +0100 Subject: [PATCH 29/44] [BugFix] Fix broken `--sheet-name` argument (#6401) * remove hold command and its references * remove --local flag as we don't use it anymore @IgorWounds * reset package folder * reset reference * unnecessary line break removed * better handling of obbjects before printing/table/chart also fixes the sheet_name issue when writing to excel * fix linting; also, dataframe creation in the right place * proper handling of sheet name * orient to columns instead --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../argparse_translator/obbject_registry.py | 4 +- .../controllers/base_platform_controller.py | 94 ++++++++++--------- 2 files changed, 54 insertions(+), 44 deletions(-) diff --git a/cli/openbb_cli/argparse_translator/obbject_registry.py b/cli/openbb_cli/argparse_translator/obbject_registry.py index 1c4cbf80dd9d..e1c73fd0c127 100644 --- a/cli/openbb_cli/argparse_translator/obbject_registry.py +++ b/cli/openbb_cli/argparse_translator/obbject_registry.py @@ -18,12 +18,14 @@ def _contains_obbject(uuid: str, obbjects: List[OBBject]) -> bool: """Check if obbject with uuid is in the registry.""" return any(obbject.id == uuid for obbject in obbjects) - def register(self, obbject: OBBject): + def register(self, obbject: OBBject) -> bool: """Designed to add an OBBject instance to the registry.""" if isinstance(obbject, OBBject) and not self._contains_obbject( obbject.id, self._obbjects ): self._obbjects.append(obbject) + return True + return False def get(self, idx: int) -> OBBject: """Return the obbject at index idx.""" diff --git a/cli/openbb_cli/controllers/base_platform_controller.py b/cli/openbb_cli/controllers/base_platform_controller.py index c154baa56cd0..8ac12f4ed569 100644 --- a/cli/openbb_cli/controllers/base_platform_controller.py +++ b/cli/openbb_cli/controllers/base_platform_controller.py @@ -153,54 +153,65 @@ def method(self, other_args: List[str], translator=translator): ns_parser = self._intersect_data_processing_commands(ns_parser) obbject = translator.execute_func(parsed_args=ns_parser) - df: pd.DataFrame = None + df: pd.DataFrame = pd.DataFrame() fig: OpenBBFigure = None title = f"{self.PATH}{translator.func.__name__}" if obbject: - if session.max_obbjects_exceeded(): - session.obbject_registry.remove() - - # use the obbject to store the command so we can display it later on results - obbject.extra["command"] = f"{title} {' '.join(other_args)}" - - session.obbject_registry.register(obbject) - # we need to force to re-link so that the new obbject - # is immediately available for data processing commands - self._link_obbject_to_data_processing_commands() - # also update the completer - self.update_completer(self.choices_default) - - if session.settings.SHOW_MSG_OBBJECT_REGISTRY and isinstance( - obbject, OBBject - ): - session.console.print("Added OBBject to registry.") - - if hasattr(ns_parser, "chart") and ns_parser.chart: - obbject.show() - fig = obbject.chart.fig - if hasattr(obbject, "to_dataframe"): + + if isinstance(obbject, OBBject) and obbject.results: + if session.max_obbjects_exceeded(): + session.obbject_registry.remove() + session.console.print( + "[yellow]Maximum number of OBBjects reached. The oldest entry was removed.[yellow]" + ) + + # use the obbject to store the command so we can display it later on results + obbject.extra["command"] = f"{title} {' '.join(other_args)}" + + register_result = session.obbject_registry.register(obbject) + + # we need to force to re-link so that the new obbject + # is immediately available for data processing commands + self._link_obbject_to_data_processing_commands() + # also update the completer + self.update_completer(self.choices_default) + + if ( + session.settings.SHOW_MSG_OBBJECT_REGISTRY + and register_result + ): + session.console.print("Added OBBject to registry.") + + # making the dataframe available + # either for printing or exporting (or both) df = obbject.to_dataframe() - elif isinstance(obbject, dict): - df = pd.DataFrame.from_dict(obbject, orient="index") - else: - df = None - elif hasattr(obbject, "to_dataframe"): - df = obbject.to_dataframe() - if isinstance(df.columns, pd.RangeIndex): - df.columns = [str(i) for i in df.columns] - print_rich_table(df=df, show_index=True, title=title) + if hasattr(ns_parser, "chart") and ns_parser.chart: + obbject.show() + fig = obbject.chart.fig if obbject.chart else None + else: + if isinstance(df.columns, pd.RangeIndex): + df.columns = [str(i) for i in df.columns] + + print_rich_table(df=df, show_index=True, title=title) - elif isinstance(obbject, dict): - df = pd.DataFrame.from_dict(obbject, orient="index") - print_rich_table(df=df, show_index=True, title=title) + elif isinstance(obbject, dict): + df = pd.DataFrame.from_dict(obbject, orient="columns") + print_rich_table(df=df, show_index=True, title=title) - elif obbject: - session.console.print(obbject) + elif not isinstance(obbject, OBBject): + session.console.print(obbject) - if hasattr(ns_parser, "export") and ns_parser.export: + if ( + hasattr(ns_parser, "export") + and ns_parser.export + and not df.empty + ): sheet_name = getattr(ns_parser, "sheet_name", None) + if sheet_name and isinstance(sheet_name, list): + sheet_name = sheet_name[0] + export_data( export_type=",".join(ns_parser.export), dir_path=os.path.dirname(os.path.abspath(__file__)), @@ -209,11 +220,8 @@ def method(self, other_args: List[str], translator=translator): sheet_name=sheet_name, figure=fig, ) - - if session.max_obbjects_exceeded(): - session.console.print( - "[yellow]\nMaximum number of OBBjects reached. The oldest entry was removed.[yellow]" - ) + elif hasattr(ns_parser, "export") and ns_parser.export and df.empty: + session.console.print("[yellow]No data to export.[/yellow]") except Exception as e: session.console.print(f"[red]{e}[/]\n") From 29dfc7b133d44e0c8627ceb29103acada4257f9b Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 14 May 2024 01:11:37 -0700 Subject: [PATCH 30/44] expose error message on request fail (#6406) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../models/historical_eps.py | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py index dc1a7d23c075..efc27de80e8f 100644 --- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py +++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/historical_eps.py @@ -2,9 +2,9 @@ # pylint: disable=unused-argument -import warnings from datetime import date as dateType from typing import Any, Dict, List, Literal, Optional, Union +from warnings import warn from openbb_core.provider.abstract.fetcher import Fetcher from openbb_core.provider.standard_models.historical_eps import ( @@ -20,8 +20,6 @@ ) from pydantic import Field, field_validator -_warn = warnings.warn - class AlphaVantageHistoricalEpsQueryParams(HistoricalEpsQueryParams): """ @@ -103,17 +101,13 @@ async def aextract_data( **kwargs: Any, ) -> List[Dict]: """Return the raw data from the AlphaVantage endpoint.""" - api_key = credentials.get("alpha_vantage_api_key") if credentials else "" - BASE_URL = "https://www.alphavantage.co/query?function=EARNINGS&" - # We are allowing multiple symbols to be passed in the query, so we need to handle that. symbols = query.symbol.split(",") - urls = [f"{BASE_URL}symbol={symbol}&apikey={api_key}" for symbol in symbols] - - results = [] + results: List = [] + messages: List = [] # We need to make a custom callback function for this async request. async def response_callback(response: ClientResponse, _: ClientSession): @@ -123,7 +117,11 @@ async def response_callback(response: ClientResponse, _: ClientSession): target = ( "annualEarnings" if query.period == "annual" else "quarterlyEarnings" ) - result = [] + message = data.get("Information", "") + if message: + messages.append(message) + warn(f"Symbol Error for {symbol}: {message}") + result: List = [] # If data is returned, append it to the results list. if data: result = [ @@ -137,13 +135,15 @@ async def response_callback(response: ClientResponse, _: ClientSession): results.extend(result[: query.limit]) else: results.extend(result) - # If no data is returned, raise a warning and move on to the next symbol. if not data: - _warn(f"Symbol Error: No data found for {symbol}") + warn(f"Symbol Error: No data found for {symbol}") await amake_requests(urls, response_callback, **kwargs) # type: ignore + if not results: + raise EmptyDataError(f"No data was returned -> \n{messages[-1]}") + return results @staticmethod From 2ac1af3f265d7b6c863d9b2bb86ba643819cc969 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 14 May 2024 03:11:59 -0700 Subject: [PATCH 31/44] [BugFix] Make `paper_bgcolor` transparent in PyWry backend (#6385) * make paper_bgcolor transparent in PyWry backend * black --------- Co-authored-by: Henrique Joaquim --- .../charting/openbb_charting/core/backend.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/openbb_platform/obbject_extensions/charting/openbb_charting/core/backend.py b/openbb_platform/obbject_extensions/charting/openbb_charting/core/backend.py index 79d4c56e18b5..fb2503afe864 100644 --- a/openbb_platform/obbject_extensions/charting/openbb_charting/core/backend.py +++ b/openbb_platform/obbject_extensions/charting/openbb_charting/core/backend.py @@ -198,6 +198,12 @@ def send_figure( self.check_backend() # pylint: disable=C0415 + paper_bg = ( + "rgba(0,0,0,0)" + if self.charting_settings.chart_style == "dark" + else "rgba(255,255,255,0)" + ) + title = "Interactive Chart" fig.layout.title.text = re.sub( @@ -210,9 +216,8 @@ def send_figure( export_image = Path(export_image).resolve() json_data = json.loads(fig.to_json()) - json_data.update(self.get_json_update(command_location)) - + json_data["layout"]["paper_bgcolor"] = paper_bg outgoing = dict( html=self.get_plotly_html(), json_data=json_data, From 17a7e7d263eeab112bc478938afdaacfe4cb5e40 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 14 May 2024 03:34:48 -0700 Subject: [PATCH 32/44] [BugFix] Econ Calendar (#6392) * fix econ calendar * black * more black * pylint * add 1 to n_urls * set default dates in transform query * missing decorator * add None to literal * literals --------- Co-authored-by: Henrique Joaquim Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- .../standard_models/economic_calendar.py | 30 +- .../economy/integration/test_economy_api.py | 5 +- .../integration/test_economy_python.py | 11 +- openbb_platform/openbb/assets/reference.json | 140 +- openbb_platform/openbb/package/economy.py | 64 +- .../openbb_fmp/models/economic_calendar.py | 99 +- .../test_fmp_economic_calendar_fetcher.yaml | 2813 +++++++++++++++-- .../providers/fmp/tests/test_fmp_fetchers.py | 2 +- .../models/economic_calendar.py | 137 +- .../utils/url_generator.py | 7 + 10 files changed, 2971 insertions(+), 337 deletions(-) diff --git a/openbb_platform/core/openbb_core/provider/standard_models/economic_calendar.py b/openbb_platform/core/openbb_core/provider/standard_models/economic_calendar.py index 46aa718024b4..67a268ce2b2f 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/economic_calendar.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/economic_calendar.py @@ -4,7 +4,7 @@ date as dateType, datetime, ) -from typing import Literal, Optional, Union +from typing import Optional, Union from pydantic import Field @@ -36,30 +36,26 @@ class EconomicCalendarData(Data): default=None, description=DATA_DESCRIPTIONS.get("date", "") ) country: Optional[str] = Field(default=None, description="Country of event.") + category: Optional[str] = Field(default=None, description="Category of event.") event: Optional[str] = Field(default=None, description="Event name.") - reference: Optional[str] = Field( - default=None, - description="Abbreviated period for which released data refers to.", + importance: Optional[str] = Field( + default=None, description="The importance level for the event." ) source: Optional[str] = Field(default=None, description="Source of the data.") - sourceurl: Optional[str] = Field(default=None, description="Source URL.") - actual: Optional[Union[str, float]] = Field( - default=None, description="Latest released value." + currency: Optional[str] = Field(default=None, description="Currency of the data.") + unit: Optional[str] = Field(default=None, description="Unit of the data.") + consensus: Optional[Union[str, float]] = Field( + default=None, + description="Average forecast among a representative group of economists.", ) previous: Optional[Union[str, float]] = Field( default=None, description="Value for the previous period after the revision (if revision is applicable).", ) - consensus: Optional[Union[str, float]] = Field( + revised: Optional[Union[str, float]] = Field( default=None, - description="Average forecast among a representative group of economists.", + description="Revised previous value, if applicable.", ) - forecast: Optional[Union[str, float]] = Field( - default=None, description="Trading Economics projections" - ) - url: Optional[str] = Field(default=None, description="Trading Economics URL") - importance: Optional[Union[Literal[0, 1, 2, 3], str]] = Field( - default=None, description="Importance of the event. 1-Low, 2-Medium, 3-High" + actual: Optional[Union[str, float]] = Field( + default=None, description="Latest released value." ) - currency: Optional[str] = Field(default=None, description="Currency of the data.") - unit: Optional[str] = Field(default=None, description="Unit of the data.") diff --git a/openbb_platform/extensions/economy/integration/test_economy_api.py b/openbb_platform/extensions/economy/integration/test_economy_api.py index 54ea5f6148f4..f8de0ee5ca12 100644 --- a/openbb_platform/extensions/economy/integration/test_economy_api.py +++ b/openbb_platform/extensions/economy/integration/test_economy_api.py @@ -39,13 +39,16 @@ def headers(): "start_date": "2023-01-01", "end_date": "2023-06-06", "country": "mexico,sweden", - "importance": "Low", + "importance": "low", "group": "gdp", + "calendar_id": None, } ), ( { "provider": "fmp", + "start_date": "2023-10-24", + "end_date": "2023-11-03", } ), ], diff --git a/openbb_platform/extensions/economy/integration/test_economy_python.py b/openbb_platform/extensions/economy/integration/test_economy_python.py index 9a9eb1e35bd4..dec33dacb6ee 100644 --- a/openbb_platform/extensions/economy/integration/test_economy_python.py +++ b/openbb_platform/extensions/economy/integration/test_economy_python.py @@ -21,7 +21,6 @@ def obb(pytestconfig): # pylint: disable=inconsistent-return-statements @parametrize( "params", [ - ({"start_date": "2023-01-01", "end_date": "2023-06-06", "provider": "fmp"}), ( { "provider": "nasdaq", @@ -36,8 +35,16 @@ def obb(pytestconfig): # pylint: disable=inconsistent-return-statements "start_date": "2023-01-01", "end_date": "2023-06-06", "country": "mexico,sweden", - "importance": "Medium", + "importance": "low", "group": "gdp", + "calendar_id": None, + } + ), + ( + { + "provider": "fmp", + "start_date": "2023-10-24", + "end_date": "2023-11-03", } ), ], diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 5ff26093f056..febb1baad07d 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -2211,15 +2211,22 @@ }, { "name": "importance", - "type": "Literal['Low', 'Medium', 'High']", + "type": "Literal['low', 'medium', 'high']", "description": "Importance of the event.", "default": null, "optional": true }, { "name": "group", - "type": "Literal['interest rate', 'inflation', 'bonds', 'consumer', 'gdp', 'government', 'housing', 'labour', 'markets', 'money', 'prices', 'trade', 'business']", - "description": "Grouping of events", + "type": "Literal['interest_rate', 'inflation', 'bonds', 'consumer', 'gdp', 'government', 'housing', 'labour', 'markets', 'money', 'prices', 'trade', 'business']", + "description": "Grouping of events.", + "default": null, + "optional": true + }, + { + "name": "calendar_id", + "type": "Union[Union[int, str], List[Union[int, str]]]", + "description": "Get events by TradingEconomics Calendar ID. Multiple items allowed for provider(s): tradingeconomics.", "default": null, "optional": true } @@ -2270,6 +2277,13 @@ "default": null, "optional": true }, + { + "name": "category", + "type": "str", + "description": "Category of event.", + "default": null, + "optional": true + }, { "name": "event", "type": "str", @@ -2278,9 +2292,9 @@ "optional": true }, { - "name": "reference", + "name": "importance", "type": "str", - "description": "Abbreviated period for which released data refers to.", + "description": "The importance level for the event.", "default": null, "optional": true }, @@ -2292,16 +2306,23 @@ "optional": true }, { - "name": "sourceurl", + "name": "currency", "type": "str", - "description": "Source URL.", + "description": "Currency of the data.", "default": null, "optional": true }, { - "name": "actual", + "name": "unit", + "type": "str", + "description": "Unit of the data.", + "default": null, + "optional": true + }, + { + "name": "consensus", "type": "Union[str, float]", - "description": "Latest released value.", + "description": "Average forecast among a representative group of economists.", "default": null, "optional": true }, @@ -2313,79 +2334,122 @@ "optional": true }, { - "name": "consensus", + "name": "revised", "type": "Union[str, float]", - "description": "Average forecast among a representative group of economists.", + "description": "Revised previous value, if applicable.", "default": null, "optional": true }, + { + "name": "actual", + "type": "Union[str, float]", + "description": "Latest released value.", + "default": null, + "optional": true + } + ], + "fmp": [ + { + "name": "change", + "type": "float", + "description": "Value change since previous.", + "default": null, + "optional": true + }, + { + "name": "change_percent", + "type": "float", + "description": "Percentage change since previous.", + "default": null, + "optional": true + }, + { + "name": "last_updated", + "type": "datetime", + "description": "Last updated timestamp.", + "default": null, + "optional": true + }, + { + "name": "created_at", + "type": "datetime", + "description": "Created at timestamp.", + "default": null, + "optional": true + } + ], + "tradingeconomics": [ { "name": "forecast", "type": "Union[str, float]", - "description": "Trading Economics projections", + "description": "TradingEconomics projections.", "default": null, "optional": true }, { - "name": "url", + "name": "reference", "type": "str", - "description": "Trading Economics URL", + "description": "Abbreviated period for which released data refers to.", "default": null, "optional": true }, { - "name": "importance", - "type": "Union[Literal[0, 1, 2, 3], str]", - "description": "Importance of the event. 1-Low, 2-Medium, 3-High", + "name": "reference_date", + "type": "date", + "description": "Date for the reference period.", "default": null, "optional": true }, { - "name": "currency", - "type": "str", - "description": "Currency of the data.", + "name": "calendar_id", + "type": "int", + "description": "TradingEconomics Calendar ID.", "default": null, "optional": true }, { - "name": "unit", + "name": "date_span", + "type": "int", + "description": "Date span of the event.", + "default": null, + "optional": true + }, + { + "name": "symbol", "type": "str", - "description": "Unit of the data.", + "description": "TradingEconomics Symbol.", "default": null, "optional": true - } - ], - "fmp": [ + }, { - "name": "change", - "type": "float", - "description": "Value change since previous.", + "name": "ticker", + "type": "str", + "description": "TradingEconomics Ticker symbol.", "default": null, "optional": true }, { - "name": "change_percent", - "type": "float", - "description": "Percentage change since previous.", + "name": "te_url", + "type": "str", + "description": "TradingEconomics URL path.", "default": null, "optional": true }, { - "name": "updated_at", - "type": "datetime", - "description": "Last updated timestamp.", + "name": "source_url", + "type": "str", + "description": "Source URL.", "default": null, "optional": true }, { - "name": "created_at", + "name": "last_updated", "type": "datetime", - "description": "Created at timestamp.", + "description": "Last update of the data.", "default": null, "optional": true } - ], - "tradingeconomics": [] + ] }, "model": "EconomicCalendar" }, diff --git a/openbb_platform/openbb/package/economy.py b/openbb_platform/openbb/package/economy.py index dca7a2a489c4..fcf6f22d4c80 100644 --- a/openbb_platform/openbb/package/economy.py +++ b/openbb_platform/openbb/package/economy.py @@ -156,10 +156,12 @@ def calendar( no default. country : Optional[str] Country of the event. Multiple comma separated items allowed. (provider: tradingeconomics) - importance : Optional[Literal['Low', 'Medium', 'High']] + importance : Optional[Literal['low', 'medium', 'high']] Importance of the event. (provider: tradingeconomics) - group : Optional[Literal['interest rate', 'inflation', 'bonds', 'consumer', 'gdp', 'government', 'housing', 'labour', 'markets', 'money', 'prices', 'trade', 'business']] - Grouping of events (provider: tradingeconomics) + group : Optional[Literal['interest_rate', 'inflation', 'bonds', 'consumer', 'gdp', 'government', 'housing', 'labour', 'markets', 'money', 'prices', 'trade', 'business']] + Grouping of events. (provider: tradingeconomics) + calendar_id : Optional[Union[int, str]] + Get events by TradingEconomics Calendar ID. Multiple comma separated items allowed. (provider: tradingeconomics) Returns ------- @@ -181,38 +183,53 @@ def calendar( The date of the data. country : Optional[str] Country of event. + category : Optional[str] + Category of event. event : Optional[str] Event name. - reference : Optional[str] - Abbreviated period for which released data refers to. + importance : Optional[str] + The importance level for the event. source : Optional[str] Source of the data. - sourceurl : Optional[str] - Source URL. - actual : Optional[Union[str, float]] - Latest released value. - previous : Optional[Union[str, float]] - Value for the previous period after the revision (if revision is applicable). - consensus : Optional[Union[str, float]] - Average forecast among a representative group of economists. - forecast : Optional[Union[str, float]] - Trading Economics projections - url : Optional[str] - Trading Economics URL - importance : Optional[Union[Literal[0, 1, 2, 3], str]] - Importance of the event. 1-Low, 2-Medium, 3-High currency : Optional[str] Currency of the data. unit : Optional[str] Unit of the data. + consensus : Optional[Union[str, float]] + Average forecast among a representative group of economists. + previous : Optional[Union[str, float]] + Value for the previous period after the revision (if revision is applicable). + revised : Optional[Union[str, float]] + Revised previous value, if applicable. + actual : Optional[Union[str, float]] + Latest released value. change : Optional[float] Value change since previous. (provider: fmp) change_percent : Optional[float] Percentage change since previous. (provider: fmp) - updated_at : Optional[datetime] - Last updated timestamp. (provider: fmp) + last_updated : Optional[datetime] + Last updated timestamp. (provider: fmp); + Last update of the data. (provider: tradingeconomics) created_at : Optional[datetime] Created at timestamp. (provider: fmp) + forecast : Optional[Union[str, float]] + TradingEconomics projections. (provider: tradingeconomics) + reference : Optional[str] + Abbreviated period for which released data refers to. (provider: tradingeconomics) + reference_date : Optional[date] + Date for the reference period. (provider: tradingeconomics) + calendar_id : Optional[int] + TradingEconomics Calendar ID. (provider: tradingeconomics) + date_span : Optional[int] + Date span of the event. (provider: tradingeconomics) + symbol : Optional[str] + TradingEconomics Symbol. (provider: tradingeconomics) + ticker : Optional[str] + TradingEconomics Ticker symbol. (provider: tradingeconomics) + te_url : Optional[str] + TradingEconomics URL path. (provider: tradingeconomics) + source_url : Optional[str] + Source URL. (provider: tradingeconomics) Examples -------- @@ -238,7 +255,10 @@ def calendar( }, extra_params=kwargs, info={ - "country": {"tradingeconomics": {"multiple_items_allowed": True}} + "country": {"tradingeconomics": {"multiple_items_allowed": True}}, + "calendar_id": { + "tradingeconomics": {"multiple_items_allowed": True} + }, }, ) ) diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/economic_calendar.py b/openbb_platform/providers/fmp/openbb_fmp/models/economic_calendar.py index ba7b33065485..135aaa043144 100644 --- a/openbb_platform/providers/fmp/openbb_fmp/models/economic_calendar.py +++ b/openbb_platform/providers/fmp/openbb_fmp/models/economic_calendar.py @@ -1,7 +1,11 @@ """FMP Economic Calendar Model.""" -from datetime import datetime +# pylint: disable=unused-argument + +import asyncio +from datetime import datetime, timedelta from typing import Any, Dict, List, Optional +from warnings import warn from openbb_core.provider.abstract.fetcher import Fetcher from openbb_core.provider.standard_models.economic_calendar import ( @@ -9,7 +13,7 @@ EconomicCalendarQueryParams, ) from openbb_core.provider.utils.helpers import amake_request -from pydantic import Field, field_validator +from pydantic import Field, field_validator, model_validator class FMPEconomicCalendarQueryParams(EconomicCalendarQueryParams): @@ -25,7 +29,13 @@ class FMPEconomicCalendarData(EconomicCalendarData): Source: https://site.financialmodelingprep.com/developer/docs/economic-calendar-api """ - __alias_dict__ = {"consensus": "estimate", "importance": "impact"} + __alias_dict__ = { + "consensus": "estimate", + "importance": "impact", + "last_updated": "updatedAt", + "created_at": "createdAt", + "change_percent": "changePercentage", + } change: Optional[float] = Field( description="Value change since previous.", @@ -34,29 +44,31 @@ class FMPEconomicCalendarData(EconomicCalendarData): change_percent: Optional[float] = Field( description="Percentage change since previous.", default=None, - alias="changePercentage", ) - updated_at: Optional[datetime] = Field( - description="Last updated timestamp.", default=None, alias="updatedAt" + last_updated: Optional[datetime] = Field( + description="Last updated timestamp.", default=None ) created_at: Optional[datetime] = Field( - description="Created at timestamp.", default=None, alias="createdAt" + description="Created at timestamp.", default=None ) - @field_validator("date", mode="before", check_fields=False) - def date_validate(cls, v: str): # pylint: disable=E0213 - """Return the date as a datetime object.""" - return datetime.strptime(v, "%Y-%m-%d %H:%M:%S") if v else None - - @field_validator("updatedAt", mode="before", check_fields=False) - def updated_at_validate(cls, v: str): # pylint: disable=E0213 + @field_validator( + "date", "last_updated", "created_at", mode="before", check_fields=False + ) + @classmethod + def date_validate(cls, v: str): """Return the date as a datetime object.""" return datetime.strptime(v, "%Y-%m-%d %H:%M:%S") if v else None - @field_validator("createdAt", mode="before", check_fields=False) - def created_at_validate(cls, v: str): # pylint: disable=E0213 - """Return the date ending as a datetime object.""" - return datetime.strptime(v, "%Y-%m-%d %H:%M:%S") if v else None + @model_validator(mode="before") + @classmethod + def empty_strings(cls, values): + """Replace empty values with None.""" + return ( + {k: (None if v in ("", 0) else v) for k, v in values.items()} + if isinstance(values, dict) + else values + ) class FMPEconomicCalendarFetcher( @@ -70,13 +82,12 @@ class FMPEconomicCalendarFetcher( @staticmethod def transform_query(params: Dict[str, Any]) -> FMPEconomicCalendarQueryParams: """Transform the query.""" - if params: - if params["start_date"] is None: - params["start_date"] = datetime.now().strftime("%Y-%m-%d") - if params["end_date"] is None: - params["end_date"] = datetime.now().strftime("%Y-%m-%d") - - return FMPEconomicCalendarQueryParams(**params) + transformed_params = params + if not transformed_params.get("start_date"): + transformed_params["start_date"] = datetime.now().date() + if not transformed_params.get("end_date"): + transformed_params["end_date"] = (datetime.now() + timedelta(days=7)).date() + return FMPEconomicCalendarQueryParams(**transformed_params) @staticmethod async def aextract_data( @@ -89,11 +100,41 @@ async def aextract_data( base_url = "https://financialmodelingprep.com/api/v3/economic_calendar?" - url = f"{base_url}from={query.start_date}&to={query.end_date}&apikey={api_key}" - - return await amake_request(url, **kwargs) + # FMP allows only 3-month windows to be queried, we need to chunk to request. + def date_range(start_date, end_date): + """Yield start and end dates for each 90-day period between start_date and end_date.""" + delta = timedelta(days=90) + current_date = start_date + while current_date < end_date: + next_date = min(current_date + delta, end_date) + yield current_date, next_date + current_date = next_date + timedelta(days=1) + + date_ranges = list(date_range(query.start_date, query.end_date)) + urls = [ + f"{base_url}from={start_date.strftime('%Y-%m-%d')}&to={end_date.strftime('%Y-%m-%d')}&apikey={api_key}" + for start_date, end_date in date_ranges + ] + results: List[Dict] = [] + + # We need to do this because Pytest does not seem to be able to handle `amake_requests`. + async def get_one(url): + """Get data for one URL.""" + n_urls = 1 + try: + result = await amake_request(url, **kwargs) + if result: + results.extend(result) + except Exception as e: + if len(urls) == 1 or (len(urls) > 1 and n_urls == len(urls)): + raise e from e + warn(f"Error in fetching part of the data from FMP -> {e}") + n_urls += 1 + + await asyncio.gather(*[get_one(url) for url in urls]) + + return results - # pylint: disable=unused-argument @staticmethod def transform_data( query: FMPEconomicCalendarQueryParams, diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_economic_calendar_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_economic_calendar_fetcher.yaml index ecc1f2aa9373..c5f7c0682dc2 100644 --- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_economic_calendar_fetcher.yaml +++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_economic_calendar_fetcher.yaml @@ -3,221 +3,2622 @@ interactions: body: null headers: Accept: - - '*/*' + - application/json Accept-Encoding: - - gzip, deflate, br + - gzip, deflate Connection: - keep-alive method: GET - uri: https://financialmodelingprep.com/api/v3/economic_calendar?apikey=MOCK_API_KEY&from=None&to=None + uri: https://financialmodelingprep.com/api/v3/economic_calendar?apikey=MOCK_API_KEY&from=2024-01-01&to=2024-03-30 response: body: string: !!binary | - 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 - IxKKoscjIQb4t//x33y9B2LyhAIA + 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 headers: Access-Control-Allow-Credentials: - 'true' Access-Control-Allow-Headers: - X-Requested-With, content-type, auth-token, Authorization, stripe-signature, - APPS + APPS, publicauthkey, privateauthkey Access-Control-Allow-Methods: - GET, POST, OPTIONS Access-Control-Allow-Origin: @@ -231,9 +2632,9 @@ interactions: Content-Type: - application/json; charset=utf-8 Date: - - Wed, 18 Oct 2023 22:40:55 GMT - ETag: - - W/"284f2-FW6cFRSgarMvF+hXnmvDQcv3XUE" + - Fri, 10 May 2024 20:03:01 GMT + Etag: + - W/"16694f-36I863eGyYRjhoSr6dcFYlERS4o" Server: - nginx/1.18.0 (Ubuntu) Transfer-Encoding: diff --git a/openbb_platform/providers/fmp/tests/test_fmp_fetchers.py b/openbb_platform/providers/fmp/tests/test_fmp_fetchers.py index f64d42875797..b740b6e8050f 100644 --- a/openbb_platform/providers/fmp/tests/test_fmp_fetchers.py +++ b/openbb_platform/providers/fmp/tests/test_fmp_fetchers.py @@ -562,7 +562,7 @@ def test_fmp_financial_ratios_fetcher(credentials=test_credentials): @pytest.mark.record_http def test_fmp_economic_calendar_fetcher(credentials=test_credentials): """Test FMP economic calendar fetcher.""" - params = {} + params = {"start_date": date(2024, 1, 1), "end_date": date(2024, 3, 30)} fetcher = FMPEconomicCalendarFetcher() result = fetcher.test(params, credentials) diff --git a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py index 25a2a0457986..e19cd3eb1f4a 100644 --- a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py +++ b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/models/economic_calendar.py @@ -1,6 +1,11 @@ """Trading Economics Economic Calendar Model.""" -from datetime import datetime +# pylint: disable=unused-argument + +from datetime import ( + date as dateType, + datetime, +) from typing import Any, Dict, List, Literal, Optional, Union from warnings import warn @@ -13,12 +18,30 @@ from openbb_tradingeconomics.utils import url_generator from openbb_tradingeconomics.utils.countries import COUNTRIES from pandas import to_datetime -from pydantic import Field, field_validator +from pydantic import Field, field_validator, model_validator + +IMPORTANCE_CHOICES = ["low", "medium", "high"] -IMPORTANCE = Literal["Low", "Medium", "High"] +IMPORTANCE = Literal["low", "medium", "high"] + +GROUPS_CHOICES = [ + "interest_rate", + "inflation", + "bonds", + "consumer", + "gdp", + "government", + "housing", + "labour", + "markets", + "money", + "prices", + "trade", + "business", +] GROUPS = Literal[ - "interest rate", + "interest_rate", "inflation", "bonds", "consumer", @@ -32,6 +55,7 @@ "trade", "business", ] + TE_COUNTRY_LIMIT = 28 @@ -41,15 +65,28 @@ class TEEconomicCalendarQueryParams(EconomicCalendarQueryParams): Source: https://docs.tradingeconomics.com/economic_calendar/ """ - __json_schema_extra__ = {"country": {"multiple_items_allowed": True}} - - # TODO: Probably want to figure out the list we can use. - country: Optional[str] = Field(default=None, description="Country of the event.") + __json_schema_extra__ = { + "country": {"multiple_items_allowed": True}, + "calendar_id": {"multiple_items_allowed": True}, + } + country: Optional[str] = Field( + default=None, + description="Country of the event.", + json_schema_extra={"choices": COUNTRIES}, # type: ignore[dict-item] + ) importance: Optional[IMPORTANCE] = Field( - default=None, description="Importance of the event." + default=None, + description="Importance of the event.", + json_schema_extra={"choices": IMPORTANCE_CHOICES}, # type: ignore[dict-item] + ) + group: Optional[GROUPS] = Field( + default=None, + description="Grouping of events.", + json_schema_extra={"choices": GROUPS_CHOICES}, # type: ignore[dict-item] + ) + calendar_id: Optional[Union[int, str]] = Field( + default=None, description="Get events by TradingEconomics Calendar ID." ) - group: Optional[GROUPS] = Field(default=None, description="Grouping of events") - _number_of_countries: int = 0 @field_validator("country", mode="before", check_fields=False) @@ -70,12 +107,12 @@ def validate_country(cls, c: str): # pylint: disable=E0213 return ",".join(result) - @field_validator("importance") + @field_validator("importance", mode="after", check_fields=False) @classmethod def importance_to_number(cls, v): """Convert importance to number.""" - string_to_value = {"Low": 1, "Medium": 2, "High": 3} - return string_to_value.get(v, None) + string_to_value = {"low": 1, "medium": 2, "high": 3} + return string_to_value.get(v.lower(), None) if v else None class TEEconomicCalendarData(EconomicCalendarData): @@ -87,12 +124,13 @@ class TEEconomicCalendarData(EconomicCalendarData): "category": "Category", "event": "Event", "reference": "Reference", + "reference_date": "ReferenceDate", "source": "Source", - "sourceurl": "SourceURL", + "source_url": "SourceURL", "actual": "Actual", "consensus": "Forecast", "forecast": "TEForecast", - "url": "URL", + "te_url": "URL", "importance": "Importance", "currency": "Currency", "unit": "Unit", @@ -100,13 +138,70 @@ class TEEconomicCalendarData(EconomicCalendarData): "symbol": "Symbol", "previous": "Previous", "revised": "Revised", + "last_updated": "LastUpdate", + "calendar_id": "CalendarId", + "date_span": "DateSpan", } + forecast: Optional[Union[str, float]] = Field( + default=None, description="TradingEconomics projections." + ) + reference: Optional[str] = Field( + default=None, + description="Abbreviated period for which released data refers to.", + ) + reference_date: Optional[dateType] = Field( + default=None, description="Date for the reference period." + ) + calendar_id: Optional[int] = Field( + default=None, description="TradingEconomics Calendar ID." + ) + date_span: Optional[int] = Field( + default=None, description="Date span of the event." + ) + symbol: Optional[str] = Field(default=None, description="TradingEconomics Symbol.") + ticker: Optional[str] = Field( + default=None, description="TradingEconomics Ticker symbol." + ) + te_url: Optional[str] = Field( + default=None, description="TradingEconomics URL path." + ) + source_url: Optional[str] = Field(default=None, description="Source URL.") + last_updated: Optional[datetime] = Field( + default=None, description="Last update of the data." + ) + + @field_validator("importance", mode="before", check_fields=False) + @classmethod + def importance_to_number(cls, v): + """Convert importance to number.""" + value_to_string = {1: "Low", 2: "Medium", 3: "High"} + return value_to_string.get(v, None) if v else None - @field_validator("date", mode="before") + @field_validator("date", "last_updated", mode="before", check_fields=False) @classmethod - def validate_date(cls, v: str) -> datetime: + def validate_datetime(cls, v: str) -> datetime: + """Validate the datetime values.""" + dt = to_datetime(v, utc=True) + return dt.replace(microsecond=0) + + @field_validator("reference_date", mode="before", check_fields=False) + @classmethod + def validate_date(cls, v: str) -> dateType: """Validate the date.""" - return to_datetime(v, utc=True) + return to_datetime(v, utc=True).date() if v else None + + @model_validator(mode="before") + @classmethod + def empty_strings(cls, values): # pylint: disable=no-self-argument + """Replace empty strings with None.""" + return ( + { + k: None if isinstance(v, str) and v == "" else v + for k, v in values.items() + } + if isinstance(values, dict) + else values + ) class TEEconomicCalendarFetcher( @@ -130,7 +225,8 @@ async def aextract_data( ) -> Union[dict, List[dict]]: """Return the raw data from the TE endpoint.""" api_key = credentials.get("tradingeconomics_api_key") if credentials else "" - + if query.group is not None: + query.group = query.group.replace("_", " ") # type: ignore url = url_generator.generate_url(query) if not url: raise RuntimeError( @@ -149,7 +245,6 @@ async def callback(response: ClientResponse, _: Any) -> Union[dict, List[dict]]: return await amake_request(url, response_callback=callback, **kwargs) - # pylint: disable=unused-argument @staticmethod def transform_data( query: TEEconomicCalendarQueryParams, data: List[Dict], **kwargs: Any diff --git a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/utils/url_generator.py b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/utils/url_generator.py index f9063ecd2594..7ec2bb20105b 100644 --- a/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/utils/url_generator.py +++ b/openbb_platform/providers/tradingeconomics/openbb_tradingeconomics/utils/url_generator.py @@ -16,6 +16,7 @@ def check_args(query_args: Dict, to_include: List[str]): ) +# pylint: disable = R0912 def generate_url(in_query): """Generate the url for trading economimcs. @@ -62,6 +63,9 @@ def generate_url(in_query): # Country + Group + Date elif check_args(query, ["country", "group", "start_date", "end_date"]): url = f'{base_url}/country/{country}/group/{group}/{query["start_date"]}/{query["end_date"]}?c=' + # Country + Date + Importance + elif check_args(query, ["country", "importance", "start_date", "end_date"]): + url = f'{base_url}/country/{country}/{query["start_date"]}/{query["end_date"]}?{urlencode(query)}&c=' # By date only elif check_args(query, ["start_date", "end_date"]): url = f'{base_url}/country/All/{query["start_date"]}/{query["end_date"]}?c=' @@ -84,5 +88,8 @@ def generate_url(in_query): start_date = query["start_date"] end_date = query["end_date"] url = f"{base_url}/country/{country}/group/{group}/{start_date}/{end_date}?{urlencode(query)}&c=" + # Calendar IDs + elif check_args(query, ["calendar_id"]): + url = f'{base_url}/calendarid/{str(query["calendar_id"])}?c=' return url if url else "" From 0eee602098d9b783ec0df03c464ee6bc1da4d9bf Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 14 May 2024 03:49:29 -0700 Subject: [PATCH 33/44] [Feature] Add Forward PE Estimates (#6398) * forward_pe * ruff * merge branch develop * mypy * typo --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- .../standard_models/forward_pe_estimates.py | 54 +++++++ .../equity/integration/test_equity_api.py | 29 ++++ .../equity/integration/test_equity_python.py | 28 ++++ .../estimates/estimates_router.py | 22 +++ openbb_platform/openbb/assets/reference.json | 133 +++++++++++++++++ .../openbb/package/equity_estimates.py | 92 ++++++++++++ .../intrinio/openbb_intrinio/__init__.py | 4 + .../models/forward_pe_estimates.py | 141 ++++++++++++++++++ .../test_intrinio_forward_pe_fetcher.yaml | 70 +++++++++ .../intrinio/tests/test_intrinio_fetchers.py | 13 ++ 10 files changed, 586 insertions(+) create mode 100644 openbb_platform/core/openbb_core/provider/standard_models/forward_pe_estimates.py create mode 100644 openbb_platform/providers/intrinio/openbb_intrinio/models/forward_pe_estimates.py create mode 100644 openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_forward_pe_fetcher.yaml diff --git a/openbb_platform/core/openbb_core/provider/standard_models/forward_pe_estimates.py b/openbb_platform/core/openbb_core/provider/standard_models/forward_pe_estimates.py new file mode 100644 index 000000000000..8888ce2ce2b6 --- /dev/null +++ b/openbb_platform/core/openbb_core/provider/standard_models/forward_pe_estimates.py @@ -0,0 +1,54 @@ +"""Forward PE Estimates Standard Model.""" + +from typing import Optional + +from pydantic import Field, field_validator + +from openbb_core.provider.abstract.data import Data +from openbb_core.provider.abstract.query_params import QueryParams +from openbb_core.provider.utils.descriptions import ( + DATA_DESCRIPTIONS, + QUERY_DESCRIPTIONS, +) + + +class ForwardPeEstimatesQueryParams(QueryParams): + """Forward PE Estimates Query Parameters.""" + + symbol: Optional[str] = Field( + default=None, + description=QUERY_DESCRIPTIONS["symbol"], + ) + + @field_validator("symbol", mode="before", check_fields=False) + @classmethod + def to_upper(cls, v): + """Convert field to uppercase.""" + return v.upper() if v else None + + +class ForwardPeEstimatesData(Data): + """Forward PE Estimates Data.""" + + symbol: str = Field(description=DATA_DESCRIPTIONS.get("symbol", "")) + name: Optional[str] = Field(default=None, description="Name of the entity.") + year1: Optional[float] = Field( + default=None, + description="Estimated PE ratio for the next fiscal year.", + ) + year2: Optional[float] = Field( + default=None, + description="Estimated PE ratio two fiscal years from now.", + ) + year3: Optional[float] = Field( + default=None, + description="Estimated PE ratio three fiscal years from now.", + ) + year4: Optional[float] = Field( + default=None, + description="Estimated PE ratio four fiscal years from now.", + ) + year5: Optional[float] = Field( + default=None, + description="Estimated PE ratio five fiscal years from now.", + ) diff --git a/openbb_platform/extensions/equity/integration/test_equity_api.py b/openbb_platform/extensions/equity/integration/test_equity_api.py index 8159874b4374..ad38630c0693 100644 --- a/openbb_platform/extensions/equity/integration/test_equity_api.py +++ b/openbb_platform/extensions/equity/integration/test_equity_api.py @@ -1953,3 +1953,32 @@ def test_equity_ownership_form_13f(params, headers): result = requests.get(url, headers=headers, timeout=10) assert isinstance(result, requests.Response) assert result.status_code == 200 + + +@parametrize( + "params", + [ + ( + { + "symbol": "NVDA,MSFT", + "provider": "intrinio", + } + ), + ( + { + "symbol": None, + "provider": "intrinio", + } + ), + ], +) +@pytest.mark.integration +def test_equity_estimates_forward_pe(params, headers): + """Test the equity estimates forward_pe endpoint.""" + params = {p: v for p, v in params.items() if v} + + query_str = get_querystring(params, []) + url = f"http://0.0.0.0:8000/api/v1/equity/estimates/forward_pe?{query_str}" + result = requests.get(url, headers=headers, timeout=10) + assert isinstance(result, requests.Response) + assert result.status_code == 200 diff --git a/openbb_platform/extensions/equity/integration/test_equity_python.py b/openbb_platform/extensions/equity/integration/test_equity_python.py index 67ce1c92fca8..f13df3df5585 100644 --- a/openbb_platform/extensions/equity/integration/test_equity_python.py +++ b/openbb_platform/extensions/equity/integration/test_equity_python.py @@ -1819,3 +1819,31 @@ def test_equity_ownership_form_13f(params, obb): assert result assert isinstance(result, OBBject) assert len(result.results) > 0 + + +@parametrize( + "params", + [ + ( + { + "symbol": "NVDA,MSFT", + "provider": "intrinio", + } + ), + ( + { + "symbol": None, + "provider": "intrinio", + } + ), + ], +) +@pytest.mark.integration +def test_equity_estimates_forward_pe(params, obb): + """Test the equity estimates forward_pe endpoint.""" + params = {p: v for p, v in params.items() if v} + + result = obb.equity.estimates.forward_pe(**params) + assert result + assert isinstance(result, OBBject) + assert len(result.results) > 0 diff --git a/openbb_platform/extensions/equity/openbb_equity/estimates/estimates_router.py b/openbb_platform/extensions/equity/openbb_equity/estimates/estimates_router.py index d321c3a9d316..36aae0761b81 100644 --- a/openbb_platform/extensions/equity/openbb_equity/estimates/estimates_router.py +++ b/openbb_platform/extensions/equity/openbb_equity/estimates/estimates_router.py @@ -137,3 +137,25 @@ async def forward_eps( ) -> OBBject: """Get forward EPS estimates.""" return await OBBject.from_query(Query(**locals())) + + +@router.command( + model="ForwardPeEstimates", + examples=[ + APIEx(parameters={"provider": "intrinio"}), + APIEx( + parameters={ + "symbol": "AAPL,MSFT,GOOG", + "provider": "intrinio", + } + ), + ], +) +async def forward_pe( + cc: CommandContext, + provider_choices: ProviderChoices, + standard_params: StandardParams, + extra_params: ExtraParams, +) -> OBBject: + """Get forward PE estimates.""" + return await OBBject.from_query(Query(**locals())) diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index febb1baad07d..91095c1bd2ab 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -6750,6 +6750,139 @@ }, "model": "ForwardEpsEstimates" }, + "/equity/estimates/forward_pe": { + "deprecated": { + "flag": null, + "message": null + }, + "description": "Get forward PE estimates.", + "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.equity.estimates.forward_pe(provider='intrinio')\nobb.equity.estimates.forward_pe(symbol='AAPL,MSFT,GOOG', provider='intrinio')\n```\n\n", + "parameters": { + "standard": [ + { + "name": "symbol", + "type": "Union[str, List[str]]", + "description": "Symbol to get data for. Multiple items allowed for provider(s): intrinio.", + "default": null, + "optional": true + }, + { + "name": "provider", + "type": "Literal['intrinio']", + "description": "The provider to use for the query, by default None. If None, the provider specified in defaults is selected or 'intrinio' if there is no default.", + "default": "intrinio", + "optional": true + } + ], + "intrinio": [] + }, + "returns": { + "OBBject": [ + { + "name": "results", + "type": "List[ForwardPeEstimates]", + "description": "Serializable results." + }, + { + "name": "provider", + "type": "Optional[Literal['intrinio']]", + "description": "Provider name." + }, + { + "name": "warnings", + "type": "Optional[List[Warning_]]", + "description": "List of warnings." + }, + { + "name": "chart", + "type": "Optional[Chart]", + "description": "Chart object." + }, + { + "name": "extra", + "type": "Dict[str, Any]", + "description": "Extra info." + } + ] + }, + "data": { + "standard": [ + { + "name": "symbol", + "type": "str", + "description": "Symbol representing the entity requested in the data.", + "default": "", + "optional": false + }, + { + "name": "name", + "type": "str", + "description": "Name of the entity.", + "default": null, + "optional": true + }, + { + "name": "year1", + "type": "float", + "description": "Estimated PE ratio for the next fiscal year.", + "default": null, + "optional": true + }, + { + "name": "year2", + "type": "float", + "description": "Estimated PE ratio two fiscal years from now.", + "default": null, + "optional": true + }, + { + "name": "year3", + "type": "float", + "description": "Estimated PE ratio three fiscal years from now.", + "default": null, + "optional": true + }, + { + "name": "year4", + "type": "float", + "description": "Estimated PE ratio four fiscal years from now.", + "default": null, + "optional": true + }, + { + "name": "year5", + "type": "float", + "description": "Estimated PE ratio five fiscal years from now.", + "default": null, + "optional": true + } + ], + "intrinio": [ + { + "name": "peg_ratio_year1", + "type": "float", + "description": "Estimated Forward PEG ratio for the next fiscal year.", + "default": null, + "optional": true + }, + { + "name": "eps_ttm", + "type": "float", + "description": "The latest trailing twelve months earnings per share.", + "default": null, + "optional": true + }, + { + "name": "last_udpated", + "type": "date", + "description": "The date the data was last updated.", + "default": null, + "optional": true + } + ] + }, + "model": "ForwardPeEstimates" + }, "/equity/discovery/gainers": { "deprecated": { "flag": null, diff --git a/openbb_platform/openbb/package/equity_estimates.py b/openbb_platform/openbb/package/equity_estimates.py index 01b95add7a5d..efa40206a14c 100644 --- a/openbb_platform/openbb/package/equity_estimates.py +++ b/openbb_platform/openbb/package/equity_estimates.py @@ -15,6 +15,7 @@ class ROUTER_equity_estimates(Container): analyst_search consensus forward_eps + forward_pe forward_sales historical price_target @@ -468,6 +469,97 @@ def forward_eps( ) ) + @exception_handler + @validate + def forward_pe( + self, + symbol: Annotated[ + Union[str, None, List[Optional[str]]], + OpenBBField( + description="Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio." + ), + ] = None, + provider: Annotated[ + Optional[Literal["intrinio"]], + OpenBBField( + description="The provider to use for the query, by default None.\n If None, the provider specified in defaults is selected or 'intrinio' if there is\n no default." + ), + ] = None, + **kwargs + ) -> OBBject: + """Get forward PE estimates. + + Parameters + ---------- + symbol : Union[str, None, List[Optional[str]]] + Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio. + provider : Optional[Literal['intrinio']] + The provider to use for the query, by default None. + If None, the provider specified in defaults is selected or 'intrinio' if there is + no default. + + Returns + ------- + OBBject + results : List[ForwardPeEstimates] + Serializable results. + provider : Optional[Literal['intrinio']] + Provider name. + warnings : Optional[List[Warning_]] + List of warnings. + chart : Optional[Chart] + Chart object. + extra : Dict[str, Any] + Extra info. + + ForwardPeEstimates + ------------------ + symbol : str + Symbol representing the entity requested in the data. + name : Optional[str] + Name of the entity. + year1 : Optional[float] + Estimated PE ratio for the next fiscal year. + year2 : Optional[float] + Estimated PE ratio two fiscal years from now. + year3 : Optional[float] + Estimated PE ratio three fiscal years from now. + year4 : Optional[float] + Estimated PE ratio four fiscal years from now. + year5 : Optional[float] + Estimated PE ratio five fiscal years from now. + peg_ratio_year1 : Optional[float] + Estimated Forward PEG ratio for the next fiscal year. (provider: intrinio) + eps_ttm : Optional[float] + The latest trailing twelve months earnings per share. (provider: intrinio) + last_udpated : Optional[date] + The date the data was last updated. (provider: intrinio) + + Examples + -------- + >>> from openbb import obb + >>> obb.equity.estimates.forward_pe(provider='intrinio') + >>> obb.equity.estimates.forward_pe(symbol='AAPL,MSFT,GOOG', provider='intrinio') + """ # noqa: E501 + + return self._run( + "/equity/estimates/forward_pe", + **filter_inputs( + provider_choices={ + "provider": self._get_provider( + provider, + "/equity/estimates/forward_pe", + ("intrinio",), + ) + }, + standard_params={ + "symbol": symbol, + }, + extra_params=kwargs, + info={"symbol": {"intrinio": {"multiple_items_allowed": True}}}, + ) + ) + @exception_handler @validate def forward_sales( diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py index ae473c72e5c3..370069557f00 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py @@ -21,6 +21,9 @@ from openbb_intrinio.models.forward_eps_estimates import ( IntrinioForwardEpsEstimatesFetcher, ) +from openbb_intrinio.models.forward_pe_estimates import ( + IntrinioForwardPeEstimatesFetcher, +) from openbb_intrinio.models.forward_sales_estimates import ( IntrinioForwardSalesEstimatesFetcher, ) @@ -77,6 +80,7 @@ "EtfSearch": IntrinioEtfSearchFetcher, "FinancialRatios": IntrinioFinancialRatiosFetcher, "ForwardEpsEstimates": IntrinioForwardEpsEstimatesFetcher, + "ForwardPeEstimates": IntrinioForwardPeEstimatesFetcher, "ForwardSalesEstimates": IntrinioForwardSalesEstimatesFetcher, "FredSeries": IntrinioFredSeriesFetcher, "HistoricalAttributes": IntrinioHistoricalAttributesFetcher, diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_pe_estimates.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_pe_estimates.py new file mode 100644 index 000000000000..552db46a76ff --- /dev/null +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/forward_pe_estimates.py @@ -0,0 +1,141 @@ +"""Intrinio Forward PE Estimates Model.""" + +# pylint: disable=unused-argument + +import asyncio +from datetime import date as dateType +from typing import Any, Dict, List, Optional +from warnings import warn + +from openbb_core.provider.abstract.fetcher import Fetcher +from openbb_core.provider.standard_models.forward_pe_estimates import ( + ForwardPeEstimatesData, + ForwardPeEstimatesQueryParams, +) +from openbb_core.provider.utils.errors import EmptyDataError +from openbb_core.provider.utils.helpers import amake_request +from openbb_intrinio.utils.helpers import response_callback +from pydantic import Field + + +class IntrinioForwardPeEstimatesQueryParams(ForwardPeEstimatesQueryParams): + """Intrinio Forward PE Estimates Query. + + https://api-v2.intrinio.com/zacks/forward_pe? + """ + + __json_schema_extra__ = {"symbol": {"multiple_items_allowed": True}} + + +class IntrinioForwardPeEstimatesData(ForwardPeEstimatesData): + """Intrinio Forward PE Estimates Data.""" + + __alias_dict__ = { + "symbol": "ticker", + "name": "company_name", + "year1": "forward_pe_year1", + "year2": "forward_pe_year2", + "year3": "forward_pe_year3", + "year4": "forward_pe_year4", + "year5": "forward_pe_year5", + "peg_ratio_year1": "forward_peg_ratio_year1", + "eps_ttm": "latest_ttm_eps", + "last_udpated": "updated_date", + } + + peg_ratio_year1: Optional[float] = Field( + default=None, + description="Estimated Forward PEG ratio for the next fiscal year.", + ) + eps_ttm: Optional[float] = Field( + default=None, + description="The latest trailing twelve months earnings per share.", + ) + last_udpated: Optional[dateType] = Field( + default=None, + description="The date the data was last updated.", + ) + + +class IntrinioForwardPeEstimatesFetcher( + Fetcher[IntrinioForwardPeEstimatesQueryParams, List[IntrinioForwardPeEstimatesData]] +): + """Intrinio Forward PE Estimates Fetcher.""" + + @staticmethod + def transform_query( + params: Dict[str, Any] + ) -> IntrinioForwardPeEstimatesQueryParams: + """Transform the query params.""" + return IntrinioForwardPeEstimatesQueryParams(**params) + + @staticmethod + async def aextract_data( + query: IntrinioForwardPeEstimatesQueryParams, + credentials: Optional[Dict[str, str]], + **kwargs: Any, + ) -> List[Dict]: + """Return the raw data from the Intrinio endpoint.""" + api_key = credentials.get("intrinio_api_key") if credentials else "" + BASE_URL = "https://api-v2.intrinio.com/zacks/forward_pe" + symbols = query.symbol.split(",") if query.symbol else None + results: List[Dict] = [] + + async def get_one(symbol): + """Get the data for one symbol.""" + url = f"{BASE_URL}/{symbol}?api_key={api_key}" + try: + data = await amake_request( + url, response_callback=response_callback, **kwargs + ) + except Exception as e: + warn(f"Symbol Error: {symbol} --> {e}") + else: + if data: + results.append(data) # type: ignore + + if symbols: + await asyncio.gather(*[get_one(symbol) for symbol in symbols]) + if not results: + raise EmptyDataError( + f"There were no results found for any of the given symbols. -> {symbols}" + ) + return results + + async def fetch_callback(response, session): + """Use callback for pagination.""" + data = await response.json() + error = data.get("error", None) + if error: + message = data.get("message", None) + raise RuntimeError(f"Error: {error} -> {message}") + forward_pe = data.get("forward_pe") + if forward_pe and len(forward_pe) > 0: # type: ignore + results.extend(forward_pe) # type: ignore + return results + + url = f"{BASE_URL}?page_size=10000&api_key={api_key}" + results = await amake_request(url, response_callback=fetch_callback, **kwargs) # type: ignore + + if not results: + raise EmptyDataError("The request was successful but was returned empty.") + + return results + + @staticmethod + def transform_data( + query: IntrinioForwardPeEstimatesQueryParams, + data: List[Dict], + **kwargs: Any, + ) -> List[IntrinioForwardPeEstimatesData]: + """Transform the raw data into the standard format.""" + symbols = query.symbol.split(",") if query.symbol else [] + if symbols: + data.sort( + key=lambda item: ( + symbols.index(item.get("ticker")) # type: ignore + if item.get("ticker") in symbols + else len(symbols) + ) + ) + return [IntrinioForwardPeEstimatesData.model_validate(d) for d in data] diff --git a/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_forward_pe_fetcher.yaml b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_forward_pe_fetcher.yaml new file mode 100644 index 000000000000..dd99f2c9269a --- /dev/null +++ b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_forward_pe_fetcher.yaml @@ -0,0 +1,70 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://api-v2.intrinio.com/zacks/forward_pe/MSFT?api_key=MOCK_API_KEY + response: + body: + string: !!binary | + H4sIAGSBQWYAA2TOMQuDMBAF4L9Sbq5HcpoWswpCh2JR9xA0LdKqIaYUKf3vjUOHkuWG93GP9wY/ + dHfjQMK5KVvYQzePVk+rmvRotvRU1FVTle2uqOpL8KfttTe92m5wYpQlTCScBbvO7qVdr6xRq9GO + g0wF0iECCsAxExGkIOmILMqzkBPGRQIkz5H9Fd2U036YfwsIeb6HR1i7eOX9qIxdwhdHIT5fAAAA + //8DADhyNhP+AAAA + headers: + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Mon, 13 May 2024 02:56:36 GMT + Transfer-Encoding: + - chunked + Vary: + - Origin,Accept-Encoding + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://api-v2.intrinio.com/zacks/forward_pe/AAPL?api_key=MOCK_API_KEY + response: + body: + string: !!binary | + H4sIAGSBQWYAA2zOywrCMBQE0F+Ru25DkiY+siviQiiSP7iEJkqxj5CmSBH/3dSFCHUzizkMzBNi + U99dAAVlqSvIoB46b/oZe9O5pdW6Om3Ol2OiyVsTncUlE3HKRU5lzmiy6xAeJlj0DmdnAgPFd2Qv + V8ATSCLYCooE/N9CfOAgViBB9VPb/vY3DCY2w/cC4Rm06e0YMcYOnR9BbYkoXm8AAAD//wMALdic + IvgAAAA= + headers: + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Mon, 13 May 2024 02:56:36 GMT + Transfer-Encoding: + - chunked + Vary: + - Origin,Accept-Encoding + status: + code: 200 + message: OK +version: 1 diff --git a/openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py b/openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py index b319d94ca37d..8c2217c92c73 100644 --- a/openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py +++ b/openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py @@ -25,6 +25,9 @@ from openbb_intrinio.models.forward_eps_estimates import ( IntrinioForwardEpsEstimatesFetcher, ) +from openbb_intrinio.models.forward_pe_estimates import ( + IntrinioForwardPeEstimatesFetcher, +) from openbb_intrinio.models.forward_sales_estimates import ( IntrinioForwardSalesEstimatesFetcher, ) @@ -505,3 +508,13 @@ def test_intrinio_price_target_consensus_fetcher(credentials=test_credentials): fetcher = IntrinioPriceTargetConsensusFetcher() result = fetcher.test(params, credentials) assert result is None + + +@pytest.mark.record_http +def test_intrinio_forward_pe_fetcher(credentials=test_credentials): + """Test forward pe fetcher.""" + params = {"symbol": "AAPL,MSFT"} + + fetcher = IntrinioForwardPeEstimatesFetcher() + result = fetcher.test(params, credentials) + assert result is None From 88cdd75a6d14f3f0143c5b8dcc94417c0968b02d Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 13:15:33 +0100 Subject: [PATCH 34/44] [Feature] Custom Provider choices available on the `reference.json` (#6409) * change package builder and argparse translator to account for custom chocies defined in providers * default reference --- .../argparse_translator.py | 14 +- .../openbb_core/app/static/package_builder.py | 5 +- openbb_platform/openbb/assets/reference.json | 9410 +++++++++++------ 3 files changed, 6375 insertions(+), 3054 deletions(-) diff --git a/cli/openbb_cli/argparse_translator/argparse_translator.py b/cli/openbb_cli/argparse_translator/argparse_translator.py index 724c2bea3060..7931b22304f7 100644 --- a/cli/openbb_cli/argparse_translator/argparse_translator.py +++ b/cli/openbb_cli/argparse_translator/argparse_translator.py @@ -42,7 +42,7 @@ class CustomArgument(BaseModel): action: Literal["store_true", "store"] help: str nargs: Optional[Literal["+"]] - choices: Optional[Any] + choices: Optional[Tuple] @model_validator(mode="after") # type: ignore @classmethod @@ -117,7 +117,7 @@ def _get_nargs(self, type_: type) -> Optional[Union[int, str]]: return "+" return None - def _get_choices(self, type_: str) -> Tuple: + def _get_choices(self, type_: str, custom_choices: Any) -> Tuple: """Get the choices for the given type.""" type_ = self._make_type_parsable(type_) # type: ignore type_origin = get_origin(type_) @@ -126,14 +126,12 @@ def _get_choices(self, type_: str) -> Tuple: if type_origin is Literal: choices = get_args(type_) - # param_type = type(choices[0]) if type_origin is list: type_ = get_args(type_)[0] if get_origin(type_) is Literal: choices = get_args(type_) - # param_type = type(choices[0]) if type_origin is Union and type(None) in get_args(type_): # remove NoneType from the args @@ -145,7 +143,9 @@ def _get_choices(self, type_: str) -> Tuple: if get_origin(type_) is Literal: choices = get_args(type_) - # param_type = type(choices[0]) + + if custom_choices: + return tuple(custom_choices) return choices @@ -174,7 +174,9 @@ def build_custom_groups(self): action="store" if type_ != bool else "store_true", help=arg["description"], nargs=self._get_nargs(type_), # type: ignore - choices=self._get_choices(arg["type"]), + choices=self._get_choices( + arg["type"], custom_choices=arg["choices"] + ), ) ) diff --git a/openbb_platform/core/openbb_core/app/static/package_builder.py b/openbb_platform/core/openbb_core/app/static/package_builder.py index 11fcc5766b0a..feb3803f6ed9 100644 --- a/openbb_platform/core/openbb_core/app/static/package_builder.py +++ b/openbb_platform/core/openbb_core/app/static/package_builder.py @@ -1483,8 +1483,10 @@ def _get_provider_field_params( .strip().replace("\n", " ").replace(" ", " ").replace('"', "'") ) # fmt: skip + extra = field_info.json_schema_extra or {} + # Add information for the providers supporting multiple symbols - if params_type == "QueryParams" and (extra := field_info.json_schema_extra): + if params_type == "QueryParams" and extra: providers = [] for p, v in extra.items(): # type: ignore[union-attr] @@ -1512,6 +1514,7 @@ def _get_provider_field_params( "description": cleaned_description, "default": default_value, "optional": not is_required, + "choices": extra.get("choices"), } ) diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json index 91095c1bd2ab..f184e92a4c47 100644 --- a/openbb_platform/openbb/assets/reference.json +++ b/openbb_platform/openbb/assets/reference.json @@ -50,21 +50,24 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -80,7 +83,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -89,21 +93,24 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -112,14 +119,16 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "exchanges", "type": "List[str]", "description": "To limit the query to a subset of exchanges e.g. ['POLONIEX', 'GDAX']", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -128,7 +137,8 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ] }, @@ -168,49 +178,56 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "vwap", "type": "Annotated[float, Gt(gt=0)]", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -219,21 +236,24 @@ "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -242,7 +262,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -251,14 +272,16 @@ "type": "int", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_notional", "type": "float", "description": "The last size done for the asset on the specific date in the quote currency. The volume of the asset on the specific date in the quote currency.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -279,7 +302,8 @@ "type": "str", "description": "Search query.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -327,14 +351,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data. (Crypto)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the crypto.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -343,21 +369,24 @@ "type": "str", "description": "The currency the crypto trades for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange code the crypto trades on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_name", "type": "str", "description": "The short name of the exchange the crypto trades on.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -377,21 +406,24 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -407,7 +439,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -416,21 +449,24 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -439,7 +475,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -448,7 +485,8 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ] }, @@ -488,49 +526,56 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "vwap", "type": "Annotated[float, Gt(gt=0)]", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -539,21 +584,24 @@ "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -562,7 +610,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [], @@ -584,7 +633,8 @@ "type": "str", "description": "Query to search for currency pairs.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -634,14 +684,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the currency pair.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -650,28 +702,32 @@ "type": "str", "description": "Symbol of the currency pair.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "currency", "type": "str", "description": "Base currency of the currency pair.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "stock_exchange", "type": "str", "description": "Stock exchange of the currency pair.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_short_name", "type": "str", "description": "Short name of the stock exchange of the currency pair.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -680,14 +736,16 @@ "type": "str", "description": "ISO 4217 currency code of the base currency.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "quote_currency", "type": "str", "description": "ISO 4217 currency code of the quote currency.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "polygon": [ @@ -696,49 +754,56 @@ "type": "str", "description": "The symbol of the quote currency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "base_currency_symbol", "type": "str", "description": "The symbol of the base currency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "base_currency_name", "type": "str", "description": "Name of the base currency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market", "type": "str", "description": "Name of the trading market. Always 'fx'.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "locale", "type": "str", "description": "Locale of the currency pair.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_updated", "type": "date", "description": "The date the reference data was last updated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "delisted", "type": "date", "description": "The date the item was delisted.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -758,21 +823,24 @@ "type": "Union[str, List[str]]", "description": "The base currency symbol. Multiple items allowed for provider(s): fmp, polygon.", "default": "usd", - "optional": true + "optional": true, + "choices": null }, { "name": "quote_type", "type": "Literal['direct', 'indirect']", "description": "Whether the quote is direct or indirect. Selecting 'direct' will return the exchange rate as the amount of domestic currency required to buy one unit of the foreign currency. Selecting 'indirect' (default) will return the exchange rate as the amount of foreign currency required to buy one unit of the domestic currency.", "default": "indirect", - "optional": true + "optional": true, + "choices": null }, { "name": "counter_currencies", "type": "Union[List[str], str]", "description": "An optional list of counter currency symbols to filter for. None returns all.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -821,63 +889,72 @@ "type": "str", "description": "The base, or domestic, currency.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "counter_currency", "type": "str", "description": "The counter, or foreign, currency.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_rate", "type": "float", "description": "The exchange rate, relative to the base currency. Rates are expressed as the amount of foreign currency received from selling one unit of the base currency, or the quantity of foreign currency required to purchase one unit of the domestic currency. To inverse the perspective, set the 'quote_type' parameter as 'direct'.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_close", "type": "float", "description": "The previous close price.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -886,49 +963,56 @@ "type": "float", "description": "The change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "The change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma50", "type": "float", "description": "The 50-day moving average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma200", "type": "float", "description": "The 200-day moving average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The 52-week high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The 52-week low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_rate_timestamp", "type": "datetime", "description": "The timestamp of the last rate.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -937,140 +1021,160 @@ "type": "float", "description": "The volume-weighted average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "The change in price from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "The percentage change in price from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_open", "type": "float", "description": "The previous day's opening price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_high", "type": "float", "description": "The previous day's high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_low", "type": "float", "description": "The previous day's low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_volume", "type": "float", "description": "The previous day's volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_vwap", "type": "float", "description": "The previous day's VWAP.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid", "type": "float", "description": "The current bid price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask", "type": "float", "description": "The current ask price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_open", "type": "float", "description": "The open price from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_high", "type": "float", "description": "The high price from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_low", "type": "float", "description": "The low price from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_close", "type": "float", "description": "The close price from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_volume", "type": "float", "description": "The volume from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_vwap", "type": "float", "description": "The VWAP from the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_transactions", "type": "float", "description": "The number of transactions in the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quote_timestamp", "type": "datetime", "description": "The timestamp of the last quote.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minute_timestamp", "type": "datetime", "description": "The timestamp for the start of the most recent minute bar.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "The last time the data was updated.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -1090,7 +1194,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -1106,7 +1211,8 @@ "type": "Union[date, str]", "description": "The end-of-day date for options chains data.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -1146,301 +1252,344 @@ "type": "str", "description": "Symbol representing the entity requested in the data. Here, it is the underlying symbol for the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "contract_symbol", "type": "str", "description": "Contract symbol for the option.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "eod_date", "type": "date", "description": "Date for which the options chains are returned.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "expiration", "type": "date", "description": "Expiration date of the contract.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "strike", "type": "float", "description": "Strike price of the contract.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "option_type", "type": "str", "description": "Call or Put.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open_interest", "type": "int", "description": "Open interest on the contract.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "theoretical_price", "type": "float", "description": "Theoretical value of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_price", "type": "float", "description": "Last trade price of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tick", "type": "str", "description": "Whether the last tick was up or down in price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid", "type": "float", "description": "Current bid price for the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_size", "type": "int", "description": "Bid size for the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask", "type": "float", "description": "Current ask price for the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_size", "type": "int", "description": "Ask size for the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mark", "type": "float", "description": "The mid-price between the latest bid and ask.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open_bid", "type": "float", "description": "The opening bid price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open_ask", "type": "float", "description": "The opening ask price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_high", "type": "float", "description": "The highest bid price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_high", "type": "float", "description": "The highest ask price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_low", "type": "float", "description": "The lowest bid price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_low", "type": "float", "description": "The lowest ask price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_size", "type": "int", "description": "The closing trade size for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_time", "type": "datetime", "description": "The time of the closing price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_bid", "type": "float", "description": "The closing bid price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_bid_size", "type": "int", "description": "The closing bid size for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_bid_time", "type": "datetime", "description": "The time of the bid closing price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_ask", "type": "float", "description": "The closing ask price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_ask_size", "type": "int", "description": "The closing ask size for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_ask_time", "type": "datetime", "description": "The time of the ask closing price for the option that day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_close", "type": "float", "description": "The previous close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "The change in the price of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change, in normalizezd percentage points, of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "implied_volatility", "type": "float", "description": "Implied volatility of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "delta", "type": "float", "description": "Delta of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gamma", "type": "float", "description": "Gamma of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "theta", "type": "float", "description": "Theta of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "vega", "type": "float", "description": "Vega of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rho", "type": "float", "description": "Rho of the option.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -1449,7 +1598,8 @@ "type": "str", "description": "The exercise style of the option, American or European.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -1469,7 +1619,8 @@ "type": "str", "description": "Symbol to get data for. (the underlying symbol)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -1485,56 +1636,64 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format. If no symbol is supplied, requests are only allowed for a single date. Use the start_date for the target date. Intrinio appears to have data beginning Feb/2022, but is unclear when it actually began.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format. If a symbol is not supplied, do not include an end date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trade_type", "type": "Literal['block', 'sweep', 'large']", "description": "The type of unusual activity to query for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment", "type": "Literal['bullish', 'bearish', 'neutral']", "description": "The sentiment type to query for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "min_value", "type": "Union[int, float]", "description": "The inclusive minimum total value for the unusual activity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "max_value", "type": "Union[int, float]", "description": "The inclusive maximum total value for the unusual activity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return. A typical day for all symbols will yield 50-80K records. The API will paginate at 1000 records. The high default limit (100K) is to be able to reliably capture the most days. The high absolute limit (1.25M) is to allow for outlier days. Queries at the absolute limit will take a long time, and might be unreliable. Apply filters to improve performance.", "default": 100000, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "Literal['delayed', 'realtime']", "description": "The source of the data. Either realtime or delayed.", "default": "delayed", - "optional": true + "optional": true, + "choices": null } ] }, @@ -1574,14 +1733,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data. (the underlying symbol)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "contract_symbol", "type": "str", "description": "Contract symbol for the option.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "intrinio": [ @@ -1590,63 +1751,72 @@ "type": "datetime", "description": "The datetime of order placement.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "trade_type", "type": "Literal['block', 'sweep', 'large']", "description": "The type of unusual trade.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "sentiment", "type": "Literal['bullish', 'bearish', 'neutral']", "description": "Bullish, Bearish, or Neutral Sentiment is estimated based on whether the trade was executed at the bid, ask, or mark price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "bid_at_execution", "type": "float", "description": "Bid price at execution.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ask_at_execution", "type": "float", "description": "Ask price at execution.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "average_price", "type": "float", "description": "The average premium paid per option contract.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "underlying_price_at_execution", "type": "float", "description": "Price of the underlying security at execution of trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_size", "type": "int", "description": "The total number of contracts involved in a single transaction.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_value", "type": "Union[int, float]", "description": "The aggregated value of all option contract premiums included in the trade.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -1666,28 +1836,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "expiration", "type": "str", "description": "Future expiry date with format YYYY-MM", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -1703,7 +1877,8 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ] }, @@ -1743,42 +1918,48 @@ "type": "datetime", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [] @@ -1799,14 +1980,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -1854,14 +2037,16 @@ "type": "str", "description": "Futures expiration month.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -1882,28 +2067,32 @@ "type": "Literal['quarter', 'annual']", "description": "Time period of the data to return. Units for nominal GDP period. Either quarter or annual.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "type", "type": "Literal['nominal', 'real']", "description": "Type of GDP to get forecast of. Either nominal or real.", "default": "real", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -1919,7 +2108,8 @@ "type": "Literal['argentina', 'asia', 'australia', 'austria', 'belgium', 'brazil', 'bulgaria', 'canada', 'chile', 'china', 'colombia', 'costa_rica', 'croatia', 'czech_republic', 'denmark', 'estonia', 'euro_area_17', 'finland', 'france', 'germany', 'greece', 'hungary', 'iceland', 'india', 'indonesia', 'ireland', 'israel', 'italy', 'japan', 'korea', 'latvia', 'lithuania', 'luxembourg', 'mexico', 'netherlands', 'new_zealand', 'non-oecd', 'norway', 'oecd_total', 'peru', 'poland', 'portugal', 'romania', 'russia', 'slovak_republic', 'slovenia', 'south_africa', 'spain', 'sweden', 'switzerland', 'turkey', 'united_kingdom', 'united_states', 'world']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null } ] }, @@ -1959,14 +2149,16 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Nominal GDP value on the date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -1987,21 +2179,24 @@ "type": "Literal['usd', 'usd_cap']", "description": "The unit of measurement for the data. Units to get nominal GDP in. Either usd or usd_cap indicating per capita.", "default": "usd", - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2017,7 +2212,8 @@ "type": "Literal['australia', 'austria', 'belgium', 'brazil', 'canada', 'chile', 'colombia', 'costa_rica', 'czech_republic', 'denmark', 'estonia', 'euro_area', 'european_union', 'finland', 'france', 'germany', 'greece', 'hungary', 'iceland', 'indonesia', 'ireland', 'israel', 'italy', 'japan', 'korea', 'latvia', 'lithuania', 'luxembourg', 'mexico', 'netherlands', 'new_zealand', 'norway', 'poland', 'portugal', 'russia', 'slovak_republic', 'slovenia', 'south_africa', 'spain', 'sweden', 'switzerland', 'turkey', 'united_kingdom', 'united_states', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null } ] }, @@ -2057,14 +2253,16 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Nominal GDP value on the date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -2085,21 +2283,24 @@ "type": "Literal['idx', 'qoq', 'yoy']", "description": "The unit of measurement for the data. Either idx (indicating 2015=100), qoq (previous period) or yoy (same period, previous year).)", "default": "yoy", - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2115,7 +2316,8 @@ "type": "Literal['G20', 'G7', 'argentina', 'australia', 'austria', 'belgium', 'brazil', 'bulgaria', 'canada', 'chile', 'china', 'colombia', 'costa_rica', 'croatia', 'czech_republic', 'denmark', 'estonia', 'euro_area_19', 'europe', 'european_union_27', 'finland', 'france', 'germany', 'greece', 'hungary', 'iceland', 'india', 'indonesia', 'ireland', 'israel', 'italy', 'japan', 'korea', 'latvia', 'lithuania', 'luxembourg', 'mexico', 'netherlands', 'new_zealand', 'norway', 'oecd_total', 'poland', 'portugal', 'romania', 'russia', 'saudi_arabia', 'slovak_republic', 'slovenia', 'south_africa', 'spain', 'sweden', 'switzerland', 'turkey', 'united_kingdom', 'united_states', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null } ] }, @@ -2155,14 +2357,16 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Nominal GDP value on the date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -2183,14 +2387,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2207,28 +2413,248 @@ "type": "Union[str, List[str]]", "description": "Country of the event. Multiple items allowed for provider(s): tradingeconomics.", "default": null, - "optional": true + "optional": true, + "choices": [ + "brazil", + "isle_of_man", + "belgium", + "ukraine", + "liechtenstein", + "malawi", + "tunisia", + "jamaica", + "guinea", + "sri_lanka", + "united_states", + "mauritania", + "pakistan", + "new_zealand", + "mauritius", + "namibia", + "nepal", + "yemen", + "bhutan", + "benin", + "malta", + "georgia", + "east_timor", + "switzerland", + "trinidad_and_tobago", + "south_sudan", + "austria", + "cyprus", + "suriname", + "egypt", + "latvia", + "luxembourg", + "nicaragua", + "ghana", + "panama", + "north_macedonia", + "equatorial_guinea", + "cambodia", + "iraq", + "south_africa", + "serbia", + "zambia", + "republic_of_the_congo", + "sudan", + "guinea_bissau", + "sao_tome_and_principe", + "seychelles", + "singapore", + "greece", + "slovakia", + "maldives", + "australia", + "togo", + "czech_republic", + "guatemala", + "finland", + "mexico", + "iran", + "taiwan", + "north_korea", + "ireland", + "el_salvador", + "brunei", + "bahrain", + "south_korea", + "hong_kong", + "liberia", + "vanuatu", + "slovenia", + "qatar", + "united_arab_emirates", + "antigua_and_barbuda", + "estonia", + "ecuador", + "kenya", + "kiribati", + "israel", + "kosovo", + "eritrea", + "niger", + "sierra_leone", + "thailand", + "lesotho", + "puerto_rico", + "croatia", + "andorra", + "denmark", + "congo", + "aruba", + "tonga", + "germany", + "france", + "norway", + "tajikistan", + "azerbaijan", + "chad", + "spain", + "madagascar", + "palestine", + "algeria", + "ivory_coast", + "somalia", + "bermuda", + "romania", + "belize", + "costa_rica", + "argentina", + "tanzania", + "dominican_republic", + "uruguay", + "belarus", + "botswana", + "peru", + "libya", + "bosnia_and_herzegovina", + "swaziland", + "jordan", + "bolivia", + "kazakhstan", + "macao", + "chile", + "zimbabwe", + "moldova", + "burundi", + "honduras", + "grenada", + "gambia", + "indonesia", + "italy", + "burkina_faso", + "venezuela", + "myanmar", + "senegal", + "guyana", + "turkey", + "fiji", + "new_caledonia", + "netherlands", + "montenegro", + "angola", + "mongolia", + "central_african_republic", + "china", + "gabon", + "djibouti", + "vietnam", + "papua_new_guinea", + "saudi_arabia", + "mali", + "philippines", + "turkmenistan", + "nigeria", + "laos", + "euro_area", + "bangladesh", + "armenia", + "morocco", + "afghanistan", + "monaco", + "lithuania", + "lebanon", + "canada", + "russia", + "cuba", + "samoa", + "rwanda", + "hungary", + "kuwait", + "sweden", + "mozambique", + "albania", + "solomon_islands", + "cameroon", + "malaysia", + "haiti", + "colombia", + "faroe_islands", + "iceland", + "comoros", + "kyrgyzstan", + "poland", + "bahamas", + "ethiopia", + "dominica", + "uganda", + "portugal", + "barbados", + "oman", + "bulgaria", + "india", + "japan", + "cayman_islands", + "paraguay", + "uzbekistan", + "cape_verde", + "united_kingdom", + "syria" + ] }, { "name": "importance", "type": "Literal['low', 'medium', 'high']", "description": "Importance of the event.", "default": null, - "optional": true + "optional": true, + "choices": [ + "low", + "medium", + "high" + ] }, { "name": "group", "type": "Literal['interest_rate', 'inflation', 'bonds', 'consumer', 'gdp', 'government', 'housing', 'labour', 'markets', 'money', 'prices', 'trade', 'business']", "description": "Grouping of events.", "default": null, - "optional": true + "optional": true, + "choices": [ + "interest_rate", + "inflation", + "bonds", + "consumer", + "gdp", + "government", + "housing", + "labour", + "markets", + "money", + "prices", + "trade", + "business" + ] }, { "name": "calendar_id", "type": "Union[Union[int, str], List[Union[int, str]]]", "description": "Get events by TradingEconomics Calendar ID. Multiple items allowed for provider(s): tradingeconomics.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -2268,84 +2694,96 @@ "type": "datetime", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country of event.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "category", "type": "str", "description": "Category of event.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "event", "type": "str", "description": "Event name.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "importance", "type": "str", "description": "The importance level for the event.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "str", "description": "Source of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unit", "type": "str", "description": "Unit of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "consensus", "type": "Union[str, float]", "description": "Average forecast among a representative group of economists.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "previous", "type": "Union[str, float]", "description": "Value for the previous period after the revision (if revision is applicable).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revised", "type": "Union[str, float]", "description": "Revised previous value, if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "actual", "type": "Union[str, float]", "description": "Latest released value.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -2354,28 +2792,32 @@ "type": "float", "description": "Value change since previous.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Percentage change since previous.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "Last updated timestamp.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "created_at", "type": "datetime", "description": "Created at timestamp.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tradingeconomics": [ @@ -2384,70 +2826,80 @@ "type": "Union[str, float]", "description": "TradingEconomics projections.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reference", "type": "str", "description": "Abbreviated period for which released data refers to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reference_date", "type": "date", "description": "Date for the reference period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_id", "type": "int", "description": "TradingEconomics Calendar ID.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date_span", "type": "int", "description": "Date span of the event.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "TradingEconomics Symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ticker", "type": "str", "description": "TradingEconomics Ticker symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "te_url", "type": "str", "description": "TradingEconomics URL path.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "source_url", "type": "str", "description": "Source URL.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "Last update of the data.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -2467,42 +2919,98 @@ "type": "Union[str, List[str]]", "description": "The country to get data. Multiple items allowed for provider(s): fred.", "default": "", - "optional": false + "optional": false, + "choices": [ + "australia", + "austria", + "belgium", + "brazil", + "bulgaria", + "canada", + "chile", + "china", + "croatia", + "cyprus", + "czech_republic", + "denmark", + "estonia", + "euro_area", + "finland", + "france", + "germany", + "greece", + "hungary", + "iceland", + "india", + "indonesia", + "ireland", + "israel", + "italy", + "japan", + "korea", + "latvia", + "lithuania", + "luxembourg", + "malta", + "mexico", + "netherlands", + "new_zealand", + "norway", + "poland", + "portugal", + "romania", + "russian_federation", + "slovak_republic", + "slovakia", + "slovenia", + "south_africa", + "spain", + "sweden", + "switzerland", + "turkey", + "united_kingdom", + "united_states" + ] }, { "name": "units", "type": "Literal['growth_previous', 'growth_same', 'index_2015']", "description": "The unit of measurement for the data. Options: - `growth_previous`: Percent growth from the previous period. If monthly data, this is month-over-month, etc - `growth_same`: Percent growth from the same period in the previous year. If looking at monthly data, this would be year-over-year, etc. - `index_2015`: Rescaled index value, such that the value in 2015 is 100.", "default": "growth_same", - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['monthly', 'quarter', 'annual']", "description": "The frequency of the data. Options: `monthly`, `quarter`, and `annual`.", "default": "monthly", - "optional": true + "optional": true, + "choices": null }, { "name": "harmonized", "type": "bool", "description": "Whether you wish to obtain harmonized data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2550,7 +3058,8 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -2612,28 +3121,32 @@ "type": "str", "description": "Market country.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "continent", "type": "str", "description": "Continent of the country.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_equity_risk_premium", "type": "Annotated[float, Gt(gt=0)]", "description": "Total equity risk premium for the country.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country_risk_premium", "type": "Annotated[float, Ge(ge=0)]", "description": "Country-specific risk premium.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -2654,7 +3167,8 @@ "type": "str", "description": "The search word(s).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2670,63 +3184,72 @@ "type": "bool", "description": "Is release? If True, other search filter variables are ignored. If no query text or release_id is supplied, this defaults to True.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "release_id", "type": "Union[int, str]", "description": "A specific release ID to target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return. (1-1000)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "offset", "type": "Annotated[int, Ge(ge=0)]", "description": "Offset the results in conjunction with limit.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "filter_variable", "type": "Literal['frequency', 'units', 'seasonal_adjustment']", "description": "Filter by an attribute.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filter_value", "type": "str", "description": "String value to filter the variable by. Used in conjunction with filter_variable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tag_names", "type": "str", "description": "A semicolon delimited list of tag names that series match all of. Example: 'japan;imports'", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exclude_tag_names", "type": "str", "description": "A semicolon delimited list of tag names that series match none of. Example: 'imports;services'. Requires that variable tag_names also be set to limit the number of matching series.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "series_id", "type": "str", "description": "A FRED Series ID to return series group information for. This returns the required information to query for regional data. Not all series that are in FRED have geographical data. Entering a value for series_id will override all other parameters. Multiple series_ids can be separated by commas.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -2766,112 +3289,128 @@ "type": "Union[int, str]", "description": "The release ID for queries.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "series_id", "type": "str", "description": "The series ID for the item in the release.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "The name of the release.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "title", "type": "str", "description": "The title of the series.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "observation_start", "type": "date", "description": "The date of the first observation in the series.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "observation_end", "type": "date", "description": "The date of the last observation in the series.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "str", "description": "The frequency of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency_short", "type": "str", "description": "Short form of the data frequency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "units", "type": "str", "description": "The units of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "units_short", "type": "str", "description": "Short form of the data units.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "seasonal_adjustment", "type": "str", "description": "The seasonal adjustment of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "seasonal_adjustment_short", "type": "str", "description": "Short form of the data seasonal adjustment.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "The datetime of the last update to the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "notes", "type": "str", "description": "Description of the release.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "press_release", "type": "bool", "description": "If the release is a press release.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url", "type": "str", "description": "URL to the release.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fred": [ @@ -2880,28 +3419,32 @@ "type": "int", "description": "Popularity of the series", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "group_popularity", "type": "int", "description": "Group popularity of the release", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "region_type", "type": "str", "description": "The region type of the series.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "series_group", "type": "Union[int, str]", "description": "The series group ID of the series. This value is used to query for regional data.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -2921,28 +3464,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fred.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100000, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -2958,28 +3505,32 @@ "type": "int", "description": "The number of data entries to return.", "default": 100000, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['a', 'q', 'm', 'w', 'd', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']", "description": "Frequency aggregation to convert high frequency data to lower frequency. None = No change a = Annual q = Quarterly m = Monthly w = Weekly d = Daily wef = Weekly, Ending Friday weth = Weekly, Ending Thursday wew = Weekly, Ending Wednesday wetu = Weekly, Ending Tuesday wem = Weekly, Ending Monday wesu = Weekly, Ending Sunday wesa = Weekly, Ending Saturday bwew = Biweekly, Ending Wednesday bwem = Biweekly, Ending Monday", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "aggregation_method", "type": "Literal['avg', 'sum', 'eop']", "description": "A key that indicates the aggregation method used for frequency aggregation. This parameter has no affect if the frequency parameter is not set. avg = Average sum = Sum eop = End of Period", "default": "eop", - "optional": true + "optional": true, + "choices": null }, { "name": "transform", "type": "Literal['chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']", "description": "Transformation type None = No transformation chg = Change ch1 = Change from Year Ago pch = Percent Change pc1 = Percent Change from Year Ago pca = Compounded Annual Rate of Change cch = Continuously Compounded Rate of Change cca = Continuously Compounded Annual Rate of Change log = Natural Log", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -2988,14 +3539,16 @@ "type": "bool", "description": "Returns all pages of data from the API call at once.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "sleep", "type": "float", "description": "Time to sleep between requests to avoid rate limiting.", "default": 1.0, - "optional": true + "optional": true, + "choices": null } ] }, @@ -3035,7 +3588,8 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [], @@ -3045,7 +3599,8 @@ "type": "float", "description": "Value of the index.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -3065,21 +3620,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adjusted", "type": "bool", "description": "Whether to return seasonally adjusted data.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3127,56 +3685,64 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "M1", "type": "float", "description": "Value of the M1 money supply in billions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "M2", "type": "float", "description": "Value of the M2 money supply in billions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "currency", "type": "float", "description": "Value of currency in circulation in billions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "demand_deposits", "type": "float", "description": "Value of demand deposits in billions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "retail_money_market_funds", "type": "float", "description": "Value of retail money market funds in billions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_liquid_deposits", "type": "float", "description": "Value of other liquid deposits in billions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "small_denomination_time_deposits", "type": "float", "description": "Value of small denomination time deposits in billions.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "federal_reserve": [] @@ -3197,14 +3763,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3220,35 +3788,40 @@ "type": "Literal['colombia', 'new_zealand', 'united_kingdom', 'italy', 'luxembourg', 'euro_area19', 'sweden', 'oecd', 'south_africa', 'denmark', 'canada', 'switzerland', 'slovakia', 'hungary', 'portugal', 'spain', 'france', 'czech_republic', 'costa_rica', 'japan', 'slovenia', 'russia', 'austria', 'latvia', 'netherlands', 'israel', 'iceland', 'united_states', 'ireland', 'mexico', 'germany', 'greece', 'turkey', 'australia', 'poland', 'south_korea', 'chile', 'finland', 'european_union27_2020', 'norway', 'lithuania', 'euro_area20', 'estonia', 'belgium', 'brazil', 'indonesia', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null }, { "name": "sex", "type": "Literal['total', 'male', 'female']", "description": "Sex to get unemployment for.", "default": "total", - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['monthly', 'quarterly', 'annual']", "description": "Frequency to get unemployment for.", "default": "monthly", - "optional": true + "optional": true, + "choices": null }, { "name": "age", "type": "Literal['total', '15-24', '15-64', '25-54', '55-64']", "description": "Age group to get unemployment for. Total indicates 15 years or over", "default": "total", - "optional": true + "optional": true, + "choices": null }, { "name": "seasonal_adjustment", "type": "bool", "description": "Whether to get seasonally adjusted unemployment. Defaults to False.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -3288,21 +3861,24 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Unemployment rate (given as a whole number, i.e 10=10%)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country for which unemployment rate is given", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -3323,14 +3899,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3346,7 +3924,8 @@ "type": "Literal['united_states', 'united_kingdom', 'japan', 'mexico', 'indonesia', 'australia', 'brazil', 'canada', 'italy', 'germany', 'turkey', 'france', 'south_africa', 'south_korea', 'spain', 'india', 'china', 'g7', 'g20', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null } ] }, @@ -3386,21 +3965,24 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "CLI value", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country for which CLI is given", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -3421,14 +4003,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3444,14 +4028,16 @@ "type": "Literal['belgium', 'ireland', 'mexico', 'indonesia', 'new_zealand', 'japan', 'united_kingdom', 'france', 'chile', 'canada', 'netherlands', 'united_states', 'south_korea', 'norway', 'austria', 'south_africa', 'denmark', 'switzerland', 'hungary', 'luxembourg', 'australia', 'germany', 'sweden', 'iceland', 'turkey', 'greece', 'israel', 'czech_republic', 'latvia', 'slovenia', 'poland', 'estonia', 'lithuania', 'portugal', 'costa_rica', 'slovakia', 'finland', 'spain', 'russia', 'euro_area19', 'colombia', 'italy', 'india', 'china', 'croatia', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['monthly', 'quarterly', 'annual']", "description": "Frequency to get interest rate for for.", "default": "monthly", - "optional": true + "optional": true, + "choices": null } ] }, @@ -3491,21 +4077,24 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Interest rate (given as a whole number, i.e 10=10%)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country for which interest rate is given", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -3526,14 +4115,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3549,14 +4140,16 @@ "type": "Literal['belgium', 'ireland', 'mexico', 'indonesia', 'new_zealand', 'japan', 'united_kingdom', 'france', 'chile', 'canada', 'netherlands', 'united_states', 'south_korea', 'norway', 'austria', 'south_africa', 'denmark', 'switzerland', 'hungary', 'luxembourg', 'australia', 'germany', 'sweden', 'iceland', 'turkey', 'greece', 'israel', 'czech_republic', 'latvia', 'slovenia', 'poland', 'estonia', 'lithuania', 'portugal', 'costa_rica', 'slovakia', 'finland', 'spain', 'russia', 'euro_area19', 'colombia', 'italy', 'india', 'china', 'croatia', 'all']", "description": "Country to get GDP for.", "default": "united_states", - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['monthly', 'quarterly', 'annual']", "description": "Frequency to get interest rate for for.", "default": "monthly", - "optional": true + "optional": true, + "choices": null } ] }, @@ -3596,21 +4189,24 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "Interest rate (given as a whole number, i.e 10=10%)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country for which interest rate is given", "default": null, - "optional": true + "optional": true, + "choices": null } ], "oecd": [] @@ -3631,28 +4227,32 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100000, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -3668,56 +4268,64 @@ "type": "str", "description": "For this function, it is the series_group ID or series ID. If the symbol provided is for a series_group, set the `is_series_group` parameter to True. Not all series that are in FRED have geographical data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_series_group", "type": "bool", "description": "When True, the symbol provided is for a series_group, else it is for a series ID.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "region_type", "type": "Literal['bea', 'msa', 'frb', 'necta', 'state', 'country', 'county', 'censusregion']", "description": "The type of regional data. Parameter is only valid when `is_series_group` is True.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "season", "type": "Literal['SA', 'NSA', 'SSA']", "description": "The seasonal adjustments to the data. Parameter is only valid when `is_series_group` is True.", "default": "NSA", - "optional": true + "optional": true, + "choices": null }, { "name": "units", "type": "str", "description": "The units of the data. This should match the units returned from searching by series ID. An incorrect field will not necessarily return an error. Parameter is only valid when `is_series_group` is True.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['d', 'w', 'bw', 'm', 'q', 'sa', 'a', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']", "description": "Frequency aggregation to convert high frequency data to lower frequency. Parameter is only valid when `is_series_group` is True. a = Annual sa= Semiannual q = Quarterly m = Monthly w = Weekly d = Daily wef = Weekly, Ending Friday weth = Weekly, Ending Thursday wew = Weekly, Ending Wednesday wetu = Weekly, Ending Tuesday wem = Weekly, Ending Monday wesu = Weekly, Ending Sunday wesa = Weekly, Ending Saturday bwew = Biweekly, Ending Wednesday bwem = Biweekly, Ending Monday", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "aggregation_method", "type": "Literal['avg', 'sum', 'eop']", "description": "A key that indicates the aggregation method used for frequency aggregation. This parameter has no affect if the frequency parameter is not set. Only valid when `is_series_group` is True. avg = Average sum = Sum eop = End of Period", "default": "avg", - "optional": true + "optional": true, + "choices": null }, { "name": "transform", "type": "Literal['lin', 'chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']", "description": "Transformation type. Only valid when `is_series_group` is True. lin = Levels (No transformation) chg = Change ch1 = Change from Year Ago pch = Percent Change pc1 = Percent Change from Year Ago pca = Compounded Annual Rate of Change cch = Continuously Compounded Rate of Change cca = Continuously Compounded Annual Rate of Change log = Natural Log", "default": "lin", - "optional": true + "optional": true, + "choices": null } ] }, @@ -3757,7 +4365,8 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [ @@ -3766,28 +4375,32 @@ "type": "str", "description": "The name of the region.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "code", "type": "Union[str, int]", "description": "The code of the region.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "value", "type": "Union[int, float]", "description": "The obersvation value. The units are defined in the search results by series ID.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "series_id", "type": "str", "description": "The individual series ID for the region.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -3807,7 +4420,8 @@ "type": "Union[str, List[str]]", "description": "The country to get data. Multiple items allowed for provider(s): econdb.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -3823,14 +4437,16 @@ "type": "bool", "description": "If True, return only the latest data. If False, return all available data for each indicator.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "If True, the request will be cached for one day.Using cache is recommended to avoid needlessly requesting the same data.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -3870,98 +4486,112 @@ "type": "str", "description": "", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "population", "type": "int", "description": "Population.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gdp_usd", "type": "float", "description": "Gross Domestic Product, in billions of USD.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gdp_qoq", "type": "float", "description": "GDP growth quarter-over-quarter change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gdp_yoy", "type": "float", "description": "GDP growth year-over-year change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cpi_yoy", "type": "float", "description": "Consumer Price Index year-over-year change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "core_yoy", "type": "float", "description": "Core Consumer Price Index year-over-year change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "retail_sales_yoy", "type": "float", "description": "Retail Sales year-over-year change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industrial_production_yoy", "type": "float", "description": "Industrial Production year-over-year change, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "policy_rate", "type": "float", "description": "Short term policy rate, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "yield_10y", "type": "float", "description": "10-year government bond yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "govt_debt_gdp", "type": "float", "description": "Government debt as a percent (normalized) of GDP.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_account_gdp", "type": "float", "description": "Current account balance as a percent (normalized) of GDP.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "jobless_rate", "type": "float", "description": "Unemployment rate, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "econdb": [] @@ -3991,7 +4621,8 @@ "type": "bool", "description": "Whether to use cache or not, by default is True The cache of indicator symbols will persist for one week.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4031,42 +4662,48 @@ "type": "str", "description": "The root symbol representing the indicator.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data. The root symbol with additional codes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The name of the country, region, or entity represented by the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "iso", "type": "str", "description": "The ISO code of the country, region, or entity represented by the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "description", "type": "str", "description": "The description of the indicator.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "str", "description": "The frequency of the indicator data.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "econdb": [ @@ -4075,56 +4712,64 @@ "type": "str", "description": "The currency, or unit, the data is based in.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "scale", "type": "str", "description": "The scale of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "multiplier", "type": "int", "description": "The multiplier of the data to arrive at whole units.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "transformation", "type": "str", "description": "Transformation type.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "source", "type": "str", "description": "The original source of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "first_date", "type": "date", "description": "The first date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_date", "type": "date", "description": "The last date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_insert_timestamp", "type": "datetime", "description": "The time of the last update. Data is typically reported with a lag.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4144,28 +4789,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. The base symbol for the indicator (e.g. GDP, CPI, etc.). Multiple items allowed for provider(s): econdb.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "country", "type": "Union[str, List[str]]", "description": "The country to get data. The country represented by the indicator, if available. Multiple items allowed for provider(s): econdb.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -4181,21 +4830,24 @@ "type": "Literal['toya', 'tpop', 'tusd', 'tpgp']", "description": "The transformation to apply to the data, default is None. tpop: Change from previous period toya: Change from one year ago tusd: Values as US dollars tpgp: Values as a percent of GDP Only 'tpop' and 'toya' are applicable to all indicators. Applying transformations across multiple indicators/countries may produce unexpected results. This is because not all indicators are compatible with all transformations, and the original units and scale differ between entities. `tusd` should only be used where values are currencies.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['annual', 'quarter', 'month']", "description": "The frequency of the data, default is 'quarter'. Only valid when 'symbol' is 'main'.", "default": "quarter", - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "If True, the request will be cached for one day. Using cache is recommended to avoid needlessly requesting the same data.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4235,35 +4887,40 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol_root", "type": "str", "description": "The root symbol for the indicator (e.g. GDP).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The country represented by the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "Union[int, float]", "description": "", "default": null, - "optional": true + "optional": true, + "choices": null } ], "econdb": [] @@ -4284,28 +4941,32 @@ "type": "str", "description": "Symbol to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -4321,21 +4982,24 @@ "type": "Literal['upcoming', 'priced', 'withdrawn']", "description": "Status of the IPO. [upcoming, priced, or withdrawn]", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "min_value", "type": "int", "description": "Return IPOs with an offer dollar amount greater than the given amount.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "max_value", "type": "int", "description": "Return IPOs with an offer dollar amount less than the given amount.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4375,14 +5039,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ipo_date", "type": "date", "description": "The date of the IPO, when the stock first trades on a major exchange.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -4391,140 +5057,160 @@ "type": "Literal['upcoming', 'priced', 'withdrawn']", "description": "The status of the IPO. Upcoming IPOs have not taken place yet but are expected to. Priced IPOs have taken place. Withdrawn IPOs were expected to take place, but were subsequently withdrawn.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The acronym of the stock exchange that the company is going to trade publicly on. Typically NYSE or NASDAQ.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "offer_amount", "type": "float", "description": "The total dollar amount of shares offered in the IPO. Typically this is share price * share count", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_price", "type": "float", "description": "The price per share at which the IPO was offered.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_price_lowest", "type": "float", "description": "The expected lowest price per share at which the IPO will be offered. Before an IPO is priced, companies typically provide a range of prices per share at which they expect to offer the IPO (typically available for upcoming IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_price_highest", "type": "float", "description": "The expected highest price per share at which the IPO will be offered. Before an IPO is priced, companies typically provide a range of prices per share at which they expect to offer the IPO (typically available for upcoming IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_count", "type": "int", "description": "The number of shares offered in the IPO.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_count_lowest", "type": "int", "description": "The expected lowest number of shares that will be offered in the IPO. Before an IPO is priced, companies typically provide a range of shares that they expect to offer in the IPO (typically available for upcoming IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_count_highest", "type": "int", "description": "The expected highest number of shares that will be offered in the IPO. Before an IPO is priced, companies typically provide a range of shares that they expect to offer in the IPO (typically available for upcoming IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "announcement_url", "type": "str", "description": "The URL to the company's announcement of the IPO", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sec_report_url", "type": "str", "description": "The URL to the company's S-1, S-1/A, F-1, or F-1/A SEC filing, which is required to be filed before an IPO takes place.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open_price", "type": "float", "description": "The opening price at the beginning of the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_price", "type": "float", "description": "The closing price at the end of the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The volume at the end of the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "day_change", "type": "float", "description": "The percentage change between the open price and the close price on the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "week_change", "type": "float", "description": "The percentage change between the open price on the first trading day and the close price approximately a week after the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_change", "type": "float", "description": "The percentage change between the open price on the first trading day and the close price approximately a month after the first trading day (only available for priced IPOs).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "The Intrinio ID of the IPO.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company", "type": "IntrinioCompany", "description": "The company that is going public via the IPO.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "security", "type": "IntrinioSecurity", "description": "The primary Security for the Company that is going public via the IPO", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4544,14 +5230,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -4599,49 +5287,56 @@ "type": "date", "description": "The ex-dividend date - the date on which the stock begins trading without rights to the dividend.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "amount", "type": "float", "description": "The dividend amount per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "record_date", "type": "date", "description": "The record date of ownership for eligibility.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payment_date", "type": "date", "description": "The payment date of the dividend.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "declaration_date", "type": "date", "description": "Declaration date of the dividend.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -4650,14 +5345,16 @@ "type": "float", "description": "The adjusted-dividend amount.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "label", "type": "str", "description": "Ex-dividend date formatted for display.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4677,14 +5374,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -4732,35 +5431,40 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "label", "type": "str", "description": "Label of the stock splits.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "numerator", "type": "float", "description": "Numerator of the stock splits.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "denominator", "type": "float", "description": "Denominator of the stock splits.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -4781,14 +5485,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -4836,35 +5542,40 @@ "type": "date", "description": "The date of the earnings report.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_previous", "type": "float", "description": "The earnings-per-share from the same previously reported period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_consensus", "type": "float", "description": "The analyst conesus earnings-per-share estimate.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -4873,42 +5584,48 @@ "type": "float", "description": "The actual earnings per share announced.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_actual", "type": "float", "description": "The actual reported revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_consensus", "type": "float", "description": "The revenue forecast consensus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_ending", "type": "date", "description": "The fiscal period end date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reporting_time", "type": "str", "description": "The reporting time - e.g. after market close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated_date", "type": "date", "description": "The date the data was updated last.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -4928,7 +5645,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -4976,7 +5694,8 @@ "type": "List[str]", "description": "A list of equity peers based on sector, exchange and market cap.", "default": "", - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -4997,14 +5716,16 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): benzinga, fmp.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 200, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -5020,70 +5741,80 @@ "type": "int", "description": "Page offset. For optimization, performance and technical reasons, page offsets are limited from 0 - 100000. Limit the query results by other parameters such as date. Used in conjunction with the limit and date parameters.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "Date for calendar data, shorthand for date_from and date_to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "Union[date, int]", "description": "Records last Updated Unix timestamp (UTC). This will force the sort order to be Greater Than or Equal to the timestamp indicated. The date can be a date string or a Unix timestamp. The date string must be in the format of YYYY-MM-DD.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "importance", "type": "int", "description": "Importance level to filter by. Uses Greater Than or Equal To the importance indicated", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "action", "type": "Literal['downgrades', 'maintains', 'reinstates', 'reiterates', 'upgrades', 'assumes', 'initiates', 'terminates', 'removes', 'suspends', 'firm_dissolved']", "description": "Filter by a specific action_company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "analyst_ids", "type": "Union[List[str], str]", "description": "Comma-separated list of analyst (person) IDs. Omitting will bring back all available analysts.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firm_ids", "type": "Union[List[str], str]", "description": "Comma-separated list of firm IDs.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fields", "type": "Union[List[str], str]", "description": "Comma-separated list of fields to include in the response. See https://docs.benzinga.io/benzinga-apis/calendar/get-ratings to learn about the available fields.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -5092,7 +5823,8 @@ "type": "bool", "description": "Include upgrades and downgrades in the response.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -5132,112 +5864,128 @@ "type": "Union[date, datetime]", "description": "Published date of the price target.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "published_time", "type": "datetime.time", "description": "Time of the original rating, UTC.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "exchange", "type": "str", "description": "Exchange where the company is traded.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_name", "type": "str", "description": "Name of company that is the subject of rating.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "analyst_name", "type": "str", "description": "Analyst name.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "analyst_firm", "type": "str", "description": "Name of the analyst firm that published the price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency the data is denominated in.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_target", "type": "float", "description": "The current price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_price_target", "type": "float", "description": "Adjusted price target for splits and stock dividends.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_target_previous", "type": "float", "description": "Previous price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "previous_adj_price_target", "type": "float", "description": "Previous adjusted price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_when_posted", "type": "float", "description": "Price when posted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rating_current", "type": "str", "description": "The analyst's rating for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rating_previous", "type": "str", "description": "Previous analyst rating for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "action", "type": "str", "description": "Description of the change in rating from firm's last rating.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "benzinga": [ @@ -5246,63 +5994,72 @@ "type": "Literal['Downgrades', 'Maintains', 'Reinstates', 'Reiterates', 'Upgrades', 'Assumes', 'Initiates Coverage On', 'Terminates Coverage On', 'Removes', 'Suspends', 'Firm Dissolved']", "description": "Description of the change in rating from firm's last rating.Note that all of these terms are precisely defined.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "action_change", "type": "Literal['Announces', 'Maintains', 'Lowers', 'Raises', 'Removes', 'Adjusts']", "description": "Description of the change in price target from firm's last price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "importance", "type": "Literal[0, 1, 2, 3, 4, 5]", "description": "Subjective Basis of How Important Event is to Market. 5 = High", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "notes", "type": "str", "description": "Notes of the price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "analyst_id", "type": "str", "description": "Id of the analyst.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url_news", "type": "str", "description": "URL for analyst ratings news articles for this ticker on Benzinga.com.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url_analyst", "type": "str", "description": "URL for analyst ratings page for this ticker on Benzinga.com.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "Unique ID of this entry.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "Last updated timestamp, UTC.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -5311,28 +6068,32 @@ "type": "str", "description": "News URL of the price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "news_title", "type": "str", "description": "News title of the price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "news_publisher", "type": "str", "description": "News publisher of the price target.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "news_base_url", "type": "str", "description": "News base URL of the price target.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -5352,7 +6113,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -5368,14 +6130,16 @@ "type": "Literal['quarter', 'annual']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -5415,154 +6179,176 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "estimated_revenue_low", "type": "int", "description": "Estimated revenue low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_revenue_high", "type": "int", "description": "Estimated revenue high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_revenue_avg", "type": "int", "description": "Estimated revenue average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_sga_expense_low", "type": "int", "description": "Estimated SGA expense low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_sga_expense_high", "type": "int", "description": "Estimated SGA expense high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_sga_expense_avg", "type": "int", "description": "Estimated SGA expense average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebitda_low", "type": "int", "description": "Estimated EBITDA low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebitda_high", "type": "int", "description": "Estimated EBITDA high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebitda_avg", "type": "int", "description": "Estimated EBITDA average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebit_low", "type": "int", "description": "Estimated EBIT low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebit_high", "type": "int", "description": "Estimated EBIT high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_ebit_avg", "type": "int", "description": "Estimated EBIT average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_net_income_low", "type": "int", "description": "Estimated net income low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_net_income_high", "type": "int", "description": "Estimated net income high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_net_income_avg", "type": "int", "description": "Estimated net income average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_eps_avg", "type": "float", "description": "Estimated EPS average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_eps_high", "type": "float", "description": "Estimated EPS high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "estimated_eps_low", "type": "float", "description": "Estimated EPS low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_analyst_estimated_revenue", "type": "int", "description": "Number of analysts who estimated revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_analysts_estimated_eps", "type": "int", "description": "Number of analysts who estimated EPS.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -5583,7 +6369,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, yfinance.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -5600,7 +6387,8 @@ "type": "int", "description": "The Zacks industry group number.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -5641,42 +6429,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "The company name", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "target_high", "type": "float", "description": "High target of the price target consensus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "target_low", "type": "float", "description": "Low target of the price target consensus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "target_consensus", "type": "float", "description": "Consensus target of the price target consensus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "target_median", "type": "float", "description": "Median target of the price target consensus.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [], @@ -5686,42 +6480,48 @@ "type": "float", "description": "The standard deviation of target price estimates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_anaylsts", "type": "int", "description": "The total number of target price estimates in consensus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "raised", "type": "int", "description": "The number of analysts that have raised their target price estimates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "lowered", "type": "int", "description": "The number of analysts that have lowered their target price estimates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "most_recent_date", "type": "date", "description": "The date of the most recent estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry_group_number", "type": "int", "description": "The Zacks industry group number.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -5730,35 +6530,40 @@ "type": "str", "description": "Recommendation - buy, sell, etc.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "recommendation_mean", "type": "float", "description": "Mean recommendation score where 1 is strong buy and 5 is strong sell.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_of_analysts", "type": "int", "description": "Number of analysts providing opinions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_price", "type": "float", "description": "Current price of the stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency the stock is priced in.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -5778,14 +6583,16 @@ "type": "Union[str, List[str]]", "description": "Analyst names to return. Omitting will return all available analysts. Multiple items allowed for provider(s): benzinga.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firm_name", "type": "Union[str, List[str]]", "description": "Firm names to return. Omitting will return all available firms. Multiple items allowed for provider(s): benzinga.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -5801,35 +6608,40 @@ "type": "Union[str, List[str]]", "description": "List of analyst IDs to return. Multiple items allowed for provider(s): benzinga.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firm_ids", "type": "Union[str, List[str]]", "description": "Firm IDs to return. Multiple items allowed for provider(s): benzinga.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "Number of results returned. Limit 1000.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "page", "type": "int", "description": "Page offset. For optimization, performance and technical reasons, page offsets are limited from 0 - 100000. Limit the query results by other parameters such as date.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "fields", "type": "Union[str, List[str]]", "description": "Fields to include in the response. See https://docs.benzinga.io/benzinga-apis/calendar/get-ratings to learn about the available fields. Multiple items allowed for provider(s): benzinga.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -5869,35 +6681,40 @@ "type": "datetime", "description": "Date of the last update.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firm_name", "type": "str", "description": "Firm name of the analyst.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name_first", "type": "str", "description": "Analyst first name.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name_last", "type": "str", "description": "Analyst last name.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name_full", "type": "str", "description": "Analyst full name.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "benzinga": [ @@ -5906,357 +6723,408 @@ "type": "str", "description": "ID of the analyst.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firm_id", "type": "str", "description": "ID of the analyst firm.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score", "type": "float", "description": "A weighted average of the total_ratings_percentile, overall_avg_return_percentile, and overall_success_rate", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_success_rate", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain overall.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_avg_return_percentile", "type": "float", "description": "The percentile (normalized) of this analyst's overall average return per rating in comparison to other analysts' overall average returns per rating.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_ratings_percentile", "type": "float", "description": "The percentile (normalized) of this analyst's total number of ratings in comparison to the total number of ratings published by all other analysts", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_ratings", "type": "int", "description": "Number of recommendations made by this analyst.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_gain_count", "type": "int", "description": "The number of ratings that have gained value since the date of recommendation", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_loss_count", "type": "int", "description": "The number of ratings that have lost value since the date of recommendation", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_average_return", "type": "float", "description": "The average percent (normalized) price difference per rating since the date of recommendation", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_std_dev", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings since the date of recommendation", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_1m", "type": "int", "description": "The number of ratings that have gained value over the last month", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_1m", "type": "int", "description": "The number of ratings that have lost value over the last month", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_1m", "type": "float", "description": "The average percent (normalized) price difference per rating over the last month", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_1m", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last month", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_1m", "type": "float", "description": "A weighted average smart score over the last month.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_1m", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last month", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_3m", "type": "int", "description": "The number of ratings that have gained value over the last 3 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_3m", "type": "int", "description": "The number of ratings that have lost value over the last 3 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_3m", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 3 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_3m", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 3 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_3m", "type": "float", "description": "A weighted average smart score over the last 3 months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_3m", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 3 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_6m", "type": "int", "description": "The number of ratings that have gained value over the last 6 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_6m", "type": "int", "description": "The number of ratings that have lost value over the last 6 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_6m", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 6 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_6m", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 6 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_9m", "type": "int", "description": "The number of ratings that have gained value over the last 9 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_9m", "type": "int", "description": "The number of ratings that have lost value over the last 9 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_9m", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 9 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_9m", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 9 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_9m", "type": "float", "description": "A weighted average smart score over the last 9 months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_9m", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 9 months", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_1y", "type": "int", "description": "The number of ratings that have gained value over the last 1 year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_1y", "type": "int", "description": "The number of ratings that have lost value over the last 1 year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_1y", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 1 year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_1y", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 1 year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_1y", "type": "float", "description": "A weighted average smart score over the last 1 year.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_1y", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 1 year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_2y", "type": "int", "description": "The number of ratings that have gained value over the last 2 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_2y", "type": "int", "description": "The number of ratings that have lost value over the last 2 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_2y", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 2 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_2y", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 2 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_2y", "type": "float", "description": "A weighted average smart score over the last 3 years.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_2y", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 2 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gain_count_3y", "type": "int", "description": "The number of ratings that have gained value over the last 3 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loss_count_3y", "type": "int", "description": "The number of ratings that have lost value over the last 3 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_return_3y", "type": "float", "description": "The average percent (normalized) price difference per rating over the last 3 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "std_dev_3y", "type": "float", "description": "The standard deviation in percent (normalized) price difference in the analyst's ratings over the last 3 years", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "smart_score_3y", "type": "float", "description": "A weighted average smart score over the last 3 years.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "success_rate_3y", "type": "float", "description": "The percentage (normalized) of gain/loss ratings that resulted in a gain over the last 3 years", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6276,7 +7144,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): intrinio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -6292,28 +7161,32 @@ "type": "int", "description": "The future fiscal year to retrieve estimates for. When no symbol and year is supplied the current calendar year is used.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_period", "type": "Literal['fy', 'q1', 'q2', 'q3', 'q4']", "description": "The future fiscal period to retrieve estimates for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_year", "type": "int", "description": "The future calendar year to retrieve estimates for. When no symbol and year is supplied the current calendar year is used.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_period", "type": "Literal['q1', 'q2', 'q3', 'q4']", "description": "The future calendar period to retrieve estimates for.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6353,91 +7226,104 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "Fiscal year for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "Fiscal quarter for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_year", "type": "int", "description": "Calendar year for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_period", "type": "str", "description": "Calendar quarter for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low_estimate", "type": "int", "description": "The sales estimate low for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high_estimate", "type": "int", "description": "The sales estimate high for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean", "type": "int", "description": "The sales estimate mean for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "median", "type": "int", "description": "The sales estimate median for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "standard_deviation", "type": "int", "description": "The sales estimate standard deviation for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_of_analysts", "type": "int", "description": "Number of analysts providing estimates for the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -6446,63 +7332,72 @@ "type": "int", "description": "Number of revisions up in the last week.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_1w_down", "type": "int", "description": "Number of revisions down in the last week.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_1w_change_percent", "type": "float", "description": "The analyst revisions percent change in estimate for the period of 1 week.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_1m_up", "type": "int", "description": "Number of revisions up in the last month.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_1m_down", "type": "int", "description": "Number of revisions down in the last month.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_1m_change_percent", "type": "float", "description": "The analyst revisions percent change in estimate for the period of 1 month.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_3m_up", "type": "int", "description": "Number of revisions up in the last 3 months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_3m_down", "type": "int", "description": "Number of revisions down in the last 3 months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revisions_3m_change_percent", "type": "float", "description": "The analyst revisions percent change in estimate for the period of 3 months.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6522,7 +7417,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -6538,21 +7434,24 @@ "type": "Literal['annual', 'quarter']", "description": "The future fiscal period to retrieve estimates for.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "include_historical", "type": "bool", "description": "If True, the data will include all past data and the limit will be ignored.", "default": false, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -6561,28 +7460,32 @@ "type": "int", "description": "The future fiscal year to retrieve estimates for. When no symbol and year is supplied the current calendar year is used.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_period", "type": "Literal['fy', 'q1', 'q2', 'q3', 'q4']", "description": "The future fiscal period to retrieve estimates for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_year", "type": "int", "description": "The future calendar year to retrieve estimates for. When no symbol and year is supplied the current calendar year is used.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_period", "type": "Literal['q1', 'q2', 'q3', 'q4']", "description": "The future calendar period to retrieve estimates for.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6622,91 +7525,104 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "Fiscal year for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "Fiscal quarter for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_year", "type": "int", "description": "Calendar year for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "calendar_period", "type": "str", "description": "Calendar quarter for the estimate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low_estimate", "type": "float", "description": "Estimated EPS low for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high_estimate", "type": "float", "description": "Estimated EPS high for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean", "type": "float", "description": "Estimated EPS mean for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "median", "type": "float", "description": "Estimated EPS median for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "standard_deviation", "type": "float", "description": "Estimated EPS standard deviation for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_of_analysts", "type": "int", "description": "Number of analysts providing estimates for the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [], @@ -6716,35 +7632,40 @@ "type": "float", "description": "The earnings per share (EPS) percent change in estimate for the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean_1w", "type": "float", "description": "The mean estimate for the period one week ago.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean_1m", "type": "float", "description": "The mean estimate for the period one month ago.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean_2m", "type": "float", "description": "The mean estimate for the period two months ago.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mean_3m", "type": "float", "description": "The mean estimate for the period three months ago.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6764,7 +7685,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): intrinio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -6812,49 +7734,56 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year1", "type": "float", "description": "Estimated PE ratio for the next fiscal year.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year2", "type": "float", "description": "Estimated PE ratio two fiscal years from now.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year3", "type": "float", "description": "Estimated PE ratio three fiscal years from now.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year4", "type": "float", "description": "Estimated PE ratio four fiscal years from now.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year5", "type": "float", "description": "Estimated PE ratio five fiscal years from now.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -6863,21 +7792,24 @@ "type": "float", "description": "Estimated Forward PEG ratio for the next fiscal year.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_ttm", "type": "float", "description": "The latest trailing twelve months earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_udpated", "type": "date", "description": "The date the data was last updated.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -6897,7 +7829,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -6945,42 +7878,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -6989,21 +7928,24 @@ "type": "float", "description": "Market Cap.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7023,7 +7965,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7071,42 +8014,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7115,21 +8064,24 @@ "type": "float", "description": "Market Cap.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7149,7 +8101,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7197,42 +8150,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7241,21 +8200,24 @@ "type": "float", "description": "Market Cap displayed in billions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7275,7 +8237,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7323,42 +8286,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7367,21 +8336,24 @@ "type": "float", "description": "Market Cap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7401,7 +8373,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7449,42 +8422,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7493,21 +8472,24 @@ "type": "float", "description": "Market Cap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7527,7 +8509,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7575,42 +8558,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7619,21 +8608,24 @@ "type": "float", "description": "Market Cap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7653,7 +8645,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order. Possible values: 'asc', 'desc'. Default: 'desc'.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7701,42 +8694,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Last price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price value.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "percent_change", "type": "float", "description": "Percent change.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "float", "description": "The trading volume.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -7745,21 +8744,24 @@ "type": "float", "description": "Market Cap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume_3_months", "type": "float", "description": "Average volume over the last 3 months in millions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "PE Ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7779,28 +8781,32 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "form_type", "type": "str", "description": "Filter by form type. Visit https://www.sec.gov/forms for a list of supported form types.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -7816,7 +8822,8 @@ "type": "bool", "description": "Flag for whether or not the filing is done.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -7856,42 +8863,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "title", "type": "str", "description": "Title of the filing.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "datetime", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "form_type", "type": "str", "description": "The form type of the filing", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "link", "type": "str", "description": "URL to the filing page on the SEC site.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -7912,7 +8925,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -7960,427 +8974,488 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "revenue_per_share_ttm", "type": "float", "description": "Revenue per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_per_share_ttm", "type": "float", "description": "Net income per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cash_flow_per_share_ttm", "type": "float", "description": "Operating cash flow per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_per_share_ttm", "type": "float", "description": "Free cash flow per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_per_share_ttm", "type": "float", "description": "Cash per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "book_value_per_share_ttm", "type": "float", "description": "Book value per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tangible_book_value_per_share_ttm", "type": "float", "description": "Tangible book value per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shareholders_equity_per_share_ttm", "type": "float", "description": "Shareholders equity per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_debt_per_share_ttm", "type": "float", "description": "Interest debt per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap_ttm", "type": "float", "description": "Market capitalization calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value_ttm", "type": "float", "description": "Enterprise value calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio_ttm", "type": "float", "description": "Price-to-earnings ratio (P/E ratio) calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_sales_ratio_ttm", "type": "float", "description": "Price-to-sales ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pocf_ratio_ttm", "type": "float", "description": "Price-to-operating cash flow ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pfcf_ratio_ttm", "type": "float", "description": "Price-to-free cash flow ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pb_ratio_ttm", "type": "float", "description": "Price-to-book ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ptb_ratio_ttm", "type": "float", "description": "Price-to-tangible book ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_sales_ttm", "type": "float", "description": "Enterprise value-to-sales ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value_over_ebitda_ttm", "type": "float", "description": "Enterprise value-to-EBITDA ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_operating_cash_flow_ttm", "type": "float", "description": "Enterprise value-to-operating cash flow ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_free_cash_flow_ttm", "type": "float", "description": "Enterprise value-to-free cash flow ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_yield_ttm", "type": "float", "description": "Earnings yield calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_yield_ttm", "type": "float", "description": "Free cash flow yield calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_to_equity_ttm", "type": "float", "description": "Debt-to-equity ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_to_assets_ttm", "type": "float", "description": "Debt-to-assets ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_debt_to_ebitda_ttm", "type": "float", "description": "Net debt-to-EBITDA ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_ratio_ttm", "type": "float", "description": "Current ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_coverage_ttm", "type": "float", "description": "Interest coverage calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_quality_ttm", "type": "float", "description": "Income quality calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield_ttm", "type": "float", "description": "Dividend yield calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield_percentage_ttm", "type": "float", "description": "Dividend yield percentage calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_to_market_cap_ttm", "type": "float", "description": "Dividend to market capitalization ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_per_share_ttm", "type": "float", "description": "Dividend per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payout_ratio_ttm", "type": "float", "description": "Payout ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sales_general_and_administrative_to_revenue_ttm", "type": "float", "description": "Sales general and administrative expenses-to-revenue ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "research_and_development_to_revenue_ttm", "type": "float", "description": "Research and development expenses-to-revenue ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intangibles_to_total_assets_ttm", "type": "float", "description": "Intangibles-to-total assets ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_operating_cash_flow_ttm", "type": "float", "description": "Capital expenditures-to-operating cash flow ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_revenue_ttm", "type": "float", "description": "Capital expenditures-to-revenue ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_depreciation_ttm", "type": "float", "description": "Capital expenditures-to-depreciation ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stock_based_compensation_to_revenue_ttm", "type": "float", "description": "Stock-based compensation-to-revenue ratio calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "graham_number_ttm", "type": "float", "description": "Graham number calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "roic_ttm", "type": "float", "description": "Return on invested capital calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_tangible_assets_ttm", "type": "float", "description": "Return on tangible assets calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "graham_net_net_ttm", "type": "float", "description": "Graham net-net working capital calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "working_capital_ttm", "type": "float", "description": "Working capital calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tangible_asset_value_ttm", "type": "float", "description": "Tangible asset value calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_current_asset_value_ttm", "type": "float", "description": "Net current asset value calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "invested_capital_ttm", "type": "float", "description": "Invested capital calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_receivables_ttm", "type": "float", "description": "Average receivables calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_payables_ttm", "type": "float", "description": "Average payables calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_inventory_ttm", "type": "float", "description": "Average inventory calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_sales_outstanding_ttm", "type": "float", "description": "Days sales outstanding calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_payables_outstanding_ttm", "type": "float", "description": "Days payables outstanding calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_of_inventory_on_hand_ttm", "type": "float", "description": "Days of inventory on hand calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "receivables_turnover_ttm", "type": "float", "description": "Receivables turnover calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payables_turnover_ttm", "type": "float", "description": "Payables turnover calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventory_turnover_ttm", "type": "float", "description": "Inventory turnover calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "roe_ttm", "type": "float", "description": "Return on equity calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_per_share_ttm", "type": "float", "description": "Capital expenditures per share calculated as trailing twelve months.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -8401,21 +9476,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "Annotated[int, Ge(ge=0)]", "description": "The number of data entries to return.", "default": 5, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -8431,7 +9509,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -8440,14 +9519,16 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The specific fiscal year. Reports do not go beyond 2008.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -8456,98 +9537,112 @@ "type": "Literal['annual', 'quarter', 'ttm']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "Filing date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lt", "type": "date", "description": "Filing date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lte", "type": "date", "description": "Filing date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gt", "type": "date", "description": "Filing date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gte", "type": "date", "description": "Filing date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date", "type": "date", "description": "Period of report date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lt", "type": "date", "description": "Period of report date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lte", "type": "date", "description": "Period of report date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gt", "type": "date", "description": "Period of report date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gte", "type": "date", "description": "Period of report date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "include_sources", "type": "bool", "description": "Whether to include the sources of the financial statement.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "order", "type": "Literal['asc', 'desc']", "description": "Order of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['filing_date', 'period_of_report_date']", "description": "Sort of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -8556,7 +9651,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ] }, @@ -8596,21 +9692,24 @@ "type": "date", "description": "The end date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the fiscal period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -8619,350 +9718,400 @@ "type": "date", "description": "The date when the filing was made.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accepted_date", "type": "datetime", "description": "The date and time when the filing was accepted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reported_currency", "type": "str", "description": "The currency in which the balance sheet was reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_and_cash_equivalents", "type": "float", "description": "Cash and cash equivalents.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_investments", "type": "float", "description": "Short term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_and_short_term_investments", "type": "float", "description": "Cash and short term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_receivables", "type": "float", "description": "Net receivables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventory", "type": "float", "description": "Inventory.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_assets", "type": "float", "description": "Other current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_assets", "type": "float", "description": "Total current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "plant_property_equipment_net", "type": "float", "description": "Plant property equipment net.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "goodwill", "type": "float", "description": "Goodwill.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intangible_assets", "type": "float", "description": "Intangible assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "goodwill_and_intangible_assets", "type": "float", "description": "Goodwill and intangible assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_investments", "type": "float", "description": "Long term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tax_assets", "type": "float", "description": "Tax assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_assets", "type": "float", "description": "Other non current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_assets", "type": "float", "description": "Total non current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_assets", "type": "float", "description": "Other assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_assets", "type": "float", "description": "Total assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accounts_payable", "type": "float", "description": "Accounts payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_debt", "type": "float", "description": "Short term debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tax_payables", "type": "float", "description": "Tax payables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_deferred_revenue", "type": "float", "description": "Current deferred revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_liabilities", "type": "float", "description": "Other current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_liabilities", "type": "float", "description": "Total current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt", "type": "float", "description": "Long term debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deferred_revenue_non_current", "type": "float", "description": "Non current deferred revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deferred_tax_liabilities_non_current", "type": "float", "description": "Deferred tax liabilities non current.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_liabilities", "type": "float", "description": "Other non current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_current_liabilities", "type": "float", "description": "Total non current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_liabilities", "type": "float", "description": "Other liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capital_lease_obligations", "type": "float", "description": "Capital lease obligations.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities", "type": "float", "description": "Total liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "preferred_stock", "type": "float", "description": "Preferred stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "common_stock", "type": "float", "description": "Common stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "retained_earnings", "type": "float", "description": "Retained earnings.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accumulated_other_comprehensive_income", "type": "float", "description": "Accumulated other comprehensive income (loss).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_shareholders_equity", "type": "float", "description": "Other shareholders equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_total_shareholders_equity", "type": "float", "description": "Other total shareholders equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_common_equity", "type": "float", "description": "Total common equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_equity_non_controlling_interests", "type": "float", "description": "Total equity non controlling interests.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities_and_shareholders_equity", "type": "float", "description": "Total liabilities and shareholders equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minority_interest", "type": "float", "description": "Minority interest.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities_and_total_equity", "type": "float", "description": "Total liabilities and total equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_investments", "type": "float", "description": "Total investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_debt", "type": "float", "description": "Total debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_debt", "type": "float", "description": "Net debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "link", "type": "str", "description": "Link to the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "final_link", "type": "str", "description": "Link to the filing document.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -8971,630 +10120,720 @@ "type": "str", "description": "The currency in which the balance sheet is reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_and_cash_equivalents", "type": "float", "description": "Cash and cash equivalents.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_and_due_from_banks", "type": "float", "description": "Cash and due from banks.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "restricted_cash", "type": "float", "description": "Restricted cash.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_investments", "type": "float", "description": "Short term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "federal_funds_sold", "type": "float", "description": "Federal funds sold.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accounts_receivable", "type": "float", "description": "Accounts receivable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "note_and_lease_receivable", "type": "float", "description": "Note and lease receivable. (Vendor non-trade receivables)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventories", "type": "float", "description": "Net Inventories.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "customer_and_other_receivables", "type": "float", "description": "Customer and other receivables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_bearing_deposits_at_other_banks", "type": "float", "description": "Interest bearing deposits at other banks.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "time_deposits_placed_and_other_short_term_investments", "type": "float", "description": "Time deposits placed and other short term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trading_account_securities", "type": "float", "description": "Trading account securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loans_and_leases", "type": "float", "description": "Loans and leases.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "allowance_for_loan_and_lease_losses", "type": "float", "description": "Allowance for loan and lease losses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_deferred_refundable_income_taxes", "type": "float", "description": "Current deferred refundable income taxes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_assets", "type": "float", "description": "Other current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loans_and_leases_net_of_allowance", "type": "float", "description": "Loans and leases net of allowance.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accrued_investment_income", "type": "float", "description": "Accrued investment income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_non_operating_assets", "type": "float", "description": "Other current non-operating assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loans_held_for_sale", "type": "float", "description": "Loans held for sale.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prepaid_expenses", "type": "float", "description": "Prepaid expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_assets", "type": "float", "description": "Total current assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "plant_property_equipment_gross", "type": "float", "description": "Plant property equipment gross.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accumulated_depreciation", "type": "float", "description": "Accumulated depreciation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "premises_and_equipment_net", "type": "float", "description": "Net premises and equipment.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "plant_property_equipment_net", "type": "float", "description": "Net plant property equipment.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_investments", "type": "float", "description": "Long term investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mortgage_servicing_rights", "type": "float", "description": "Mortgage servicing rights.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unearned_premiums_asset", "type": "float", "description": "Unearned premiums asset.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_note_lease_receivables", "type": "float", "description": "Non-current note lease receivables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deferred_acquisition_cost", "type": "float", "description": "Deferred acquisition cost.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "goodwill", "type": "float", "description": "Goodwill.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "separate_account_business_assets", "type": "float", "description": "Separate account business assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_deferred_refundable_income_taxes", "type": "float", "description": "Noncurrent deferred refundable income taxes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intangible_assets", "type": "float", "description": "Intangible assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "employee_benefit_assets", "type": "float", "description": "Employee benefit assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_assets", "type": "float", "description": "Other assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_operating_assets", "type": "float", "description": "Other noncurrent operating assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_non_operating_assets", "type": "float", "description": "Other noncurrent non-operating assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_bearing_deposits", "type": "float", "description": "Interest bearing deposits.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_current_assets", "type": "float", "description": "Total noncurrent assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_assets", "type": "float", "description": "Total assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_interest_bearing_deposits", "type": "float", "description": "Non interest bearing deposits.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "federal_funds_purchased_and_securities_sold", "type": "float", "description": "Federal funds purchased and securities sold.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bankers_acceptance_outstanding", "type": "float", "description": "Bankers acceptance outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_debt", "type": "float", "description": "Short term debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accounts_payable", "type": "float", "description": "Accounts payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_deferred_revenue", "type": "float", "description": "Current deferred revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_deferred_payable_income_tax_liabilities", "type": "float", "description": "Current deferred payable income tax liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accrued_interest_payable", "type": "float", "description": "Accrued interest payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accrued_expenses", "type": "float", "description": "Accrued expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_short_term_payables", "type": "float", "description": "Other short term payables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "customer_deposits", "type": "float", "description": "Customer deposits.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividends_payable", "type": "float", "description": "Dividends payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "claims_and_claim_expense", "type": "float", "description": "Claims and claim expense.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "future_policy_benefits", "type": "float", "description": "Future policy benefits.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_employee_benefit_liabilities", "type": "float", "description": "Current employee benefit liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unearned_premiums_liability", "type": "float", "description": "Unearned premiums liability.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_taxes_payable", "type": "float", "description": "Other taxes payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "policy_holder_funds", "type": "float", "description": "Policy holder funds.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_liabilities", "type": "float", "description": "Other current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_non_operating_liabilities", "type": "float", "description": "Other current non-operating liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "separate_account_business_liabilities", "type": "float", "description": "Separate account business liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_liabilities", "type": "float", "description": "Total current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt", "type": "float", "description": "Long term debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_long_term_liabilities", "type": "float", "description": "Other long term liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_deferred_revenue", "type": "float", "description": "Non-current deferred revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_deferred_payable_income_tax_liabilities", "type": "float", "description": "Non-current deferred payable income tax liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_current_employee_benefit_liabilities", "type": "float", "description": "Non-current employee benefit liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_operating_liabilities", "type": "float", "description": "Other non-current operating liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_non_operating_liabilities", "type": "float", "description": "Other non-current, non-operating liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_current_liabilities", "type": "float", "description": "Total non-current liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capital_lease_obligations", "type": "float", "description": "Capital lease obligations.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_retirement_reserve_litigation_obligation", "type": "float", "description": "Asset retirement reserve litigation obligation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities", "type": "float", "description": "Total liabilities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "commitments_contingencies", "type": "float", "description": "Commitments contingencies.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "redeemable_non_controlling_interest", "type": "float", "description": "Redeemable non-controlling interest.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "preferred_stock", "type": "float", "description": "Preferred stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "common_stock", "type": "float", "description": "Common stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "retained_earnings", "type": "float", "description": "Retained earnings.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "treasury_stock", "type": "float", "description": "Treasury stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accumulated_other_comprehensive_income", "type": "float", "description": "Accumulated other comprehensive income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "participating_policy_holder_equity", "type": "float", "description": "Participating policy holder equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_equity_adjustments", "type": "float", "description": "Other equity adjustments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_common_equity", "type": "float", "description": "Total common equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_preferred_common_equity", "type": "float", "description": "Total preferred common equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_controlling_interest", "type": "float", "description": "Non-controlling interest.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_equity_non_controlling_interests", "type": "float", "description": "Total equity non-controlling interests.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities_shareholders_equity", "type": "float", "description": "Total liabilities and shareholders equity.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -9603,203 +10842,232 @@ "type": "int", "description": "Accounts receivable", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "marketable_securities", "type": "int", "description": "Marketable securities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prepaid_expenses", "type": "int", "description": "Prepaid expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_assets", "type": "int", "description": "Other current assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_assets", "type": "int", "description": "Total current assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "property_plant_equipment_net", "type": "int", "description": "Property plant and equipment net", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventory", "type": "int", "description": "Inventory", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_assets", "type": "int", "description": "Other non-current assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_current_assets", "type": "int", "description": "Total non-current assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intangible_assets", "type": "int", "description": "Intangible assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_assets", "type": "int", "description": "Total assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accounts_payable", "type": "int", "description": "Accounts payable", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "employee_wages", "type": "int", "description": "Employee wages", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_current_liabilities", "type": "int", "description": "Other current liabilities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_current_liabilities", "type": "int", "description": "Total current liabilities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_current_liabilities", "type": "int", "description": "Other non-current liabilities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_current_liabilities", "type": "int", "description": "Total non-current liabilities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt", "type": "int", "description": "Long term debt", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities", "type": "int", "description": "Total liabilities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "minority_interest", "type": "int", "description": "Minority interest", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "temporary_equity_attributable_to_parent", "type": "int", "description": "Temporary equity attributable to parent", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "equity_attributable_to_parent", "type": "int", "description": "Equity attributable to parent", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "temporary_equity", "type": "int", "description": "Temporary equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "preferred_stock", "type": "int", "description": "Preferred stock", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "redeemable_non_controlling_interest", "type": "int", "description": "Redeemable non-controlling interest", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "redeemable_non_controlling_interest_other", "type": "int", "description": "Redeemable non-controlling interest other", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_stock_holders_equity", "type": "int", "description": "Total stock holders equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_liabilities_and_stock_holders_equity", "type": "int", "description": "Total liabilities and stockholders equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_equity", "type": "int", "description": "Total equity", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -9820,14 +11088,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 10, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -9875,294 +11145,336 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cash_and_cash_equivalents", "type": "float", "description": "Growth rate of cash and cash equivalents.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_short_term_investments", "type": "float", "description": "Growth rate of short-term investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cash_and_short_term_investments", "type": "float", "description": "Growth rate of cash and short-term investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_receivables", "type": "float", "description": "Growth rate of net receivables.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_inventory", "type": "float", "description": "Growth rate of inventory.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_current_assets", "type": "float", "description": "Growth rate of other current assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_current_assets", "type": "float", "description": "Growth rate of total current assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_property_plant_equipment_net", "type": "float", "description": "Growth rate of net property, plant, and equipment.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_goodwill", "type": "float", "description": "Growth rate of goodwill.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_intangible_assets", "type": "float", "description": "Growth rate of intangible assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_goodwill_and_intangible_assets", "type": "float", "description": "Growth rate of goodwill and intangible assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_long_term_investments", "type": "float", "description": "Growth rate of long-term investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_tax_assets", "type": "float", "description": "Growth rate of tax assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_non_current_assets", "type": "float", "description": "Growth rate of other non-current assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_non_current_assets", "type": "float", "description": "Growth rate of total non-current assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_assets", "type": "float", "description": "Growth rate of other assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_assets", "type": "float", "description": "Growth rate of total assets.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_account_payables", "type": "float", "description": "Growth rate of accounts payable.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_short_term_debt", "type": "float", "description": "Growth rate of short-term debt.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_tax_payables", "type": "float", "description": "Growth rate of tax payables.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_deferred_revenue", "type": "float", "description": "Growth rate of deferred revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_current_liabilities", "type": "float", "description": "Growth rate of other current liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_current_liabilities", "type": "float", "description": "Growth rate of total current liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_long_term_debt", "type": "float", "description": "Growth rate of long-term debt.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_deferred_revenue_non_current", "type": "float", "description": "Growth rate of non-current deferred revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_deferrred_tax_liabilities_non_current", "type": "float", "description": "Growth rate of non-current deferred tax liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_non_current_liabilities", "type": "float", "description": "Growth rate of other non-current liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_non_current_liabilities", "type": "float", "description": "Growth rate of total non-current liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_liabilities", "type": "float", "description": "Growth rate of other liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_liabilities", "type": "float", "description": "Growth rate of total liabilities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_common_stock", "type": "float", "description": "Growth rate of common stock.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_retained_earnings", "type": "float", "description": "Growth rate of retained earnings.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_accumulated_other_comprehensive_income_loss", "type": "float", "description": "Growth rate of accumulated other comprehensive income/loss.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_othertotal_stockholders_equity", "type": "float", "description": "Growth rate of other total stockholders' equity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_stockholders_equity", "type": "float", "description": "Growth rate of total stockholders' equity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_liabilities_and_stockholders_equity", "type": "float", "description": "Growth rate of total liabilities and stockholders' equity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_investments", "type": "float", "description": "Growth rate of total investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_debt", "type": "float", "description": "Growth rate of total debt.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_debt", "type": "float", "description": "Growth rate of net debt.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -10183,21 +11495,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "Annotated[int, Ge(ge=0)]", "description": "The number of data entries to return.", "default": 5, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -10213,7 +11528,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -10222,14 +11538,16 @@ "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The specific fiscal year. Reports do not go beyond 2008.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -10238,98 +11556,112 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "Filing date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lt", "type": "date", "description": "Filing date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lte", "type": "date", "description": "Filing date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gt", "type": "date", "description": "Filing date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gte", "type": "date", "description": "Filing date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date", "type": "date", "description": "Period of report date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lt", "type": "date", "description": "Period of report date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lte", "type": "date", "description": "Period of report date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gt", "type": "date", "description": "Period of report date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gte", "type": "date", "description": "Period of report date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "include_sources", "type": "bool", "description": "Whether to include the sources of the financial statement.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "order", "type": "Literal['asc', 'desc']", "description": "Order of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['filing_date', 'period_of_report_date']", "description": "Sort of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -10338,7 +11670,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ] }, @@ -10378,21 +11711,24 @@ "type": "date", "description": "The end date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the fiscal period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -10401,252 +11737,288 @@ "type": "int", "description": "The fiscal year of the fiscal period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "The date of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accepted_date", "type": "datetime", "description": "The date the filing was accepted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reported_currency", "type": "str", "description": "The currency in which the cash flow statement was reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income", "type": "float", "description": "Net income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depreciation_and_amortization", "type": "float", "description": "Depreciation and amortization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deferred_income_tax", "type": "float", "description": "Deferred income tax.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stock_based_compensation", "type": "float", "description": "Stock-based compensation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_working_capital", "type": "float", "description": "Change in working capital.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_account_receivables", "type": "float", "description": "Change in account receivables.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_inventory", "type": "float", "description": "Change in inventory.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_account_payable", "type": "float", "description": "Change in account payable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_other_working_capital", "type": "float", "description": "Change in other working capital.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_in_other_non_cash_items", "type": "float", "description": "Change in other non-cash items.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_operating_activities", "type": "float", "description": "Net cash from operating activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "purchase_of_property_plant_and_equipment", "type": "float", "description": "Purchase of property, plant and equipment.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "acquisitions", "type": "float", "description": "Acquisitions.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "purchase_of_investment_securities", "type": "float", "description": "Purchase of investment securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sale_and_maturity_of_investments", "type": "float", "description": "Sale and maturity of investments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_investing_activities", "type": "float", "description": "Other investing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_investing_activities", "type": "float", "description": "Net cash from investing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repayment_of_debt", "type": "float", "description": "Repayment of debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuance_of_common_equity", "type": "float", "description": "Issuance of common equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repurchase_of_common_equity", "type": "float", "description": "Repurchase of common equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payment_of_dividends", "type": "float", "description": "Payment of dividends.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_financing_activities", "type": "float", "description": "Other financing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_financing_activities", "type": "float", "description": "Net cash from financing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "effect_of_exchange_rate_changes_on_cash", "type": "float", "description": "Effect of exchange rate changes on cash.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_change_in_cash_and_equivalents", "type": "float", "description": "Net change in cash and equivalents.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_at_beginning_of_period", "type": "float", "description": "Cash at beginning of period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_at_end_of_period", "type": "float", "description": "Cash at end of period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cash_flow", "type": "float", "description": "Operating cash flow.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capital_expenditure", "type": "float", "description": "Capital expenditure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow", "type": "float", "description": "None", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "link", "type": "str", "description": "Link to the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "final_link", "type": "str", "description": "Link to the filing document.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -10655,315 +12027,360 @@ "type": "str", "description": "The currency in which the balance sheet is reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_continuing_operations", "type": "float", "description": "Net Income (Continuing Operations)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_discontinued_operations", "type": "float", "description": "Net Income (Discontinued Operations)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income", "type": "float", "description": "Consolidated Net Income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provision_for_loan_losses", "type": "float", "description": "Provision for Loan Losses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provision_for_credit_losses", "type": "float", "description": "Provision for credit losses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depreciation_expense", "type": "float", "description": "Depreciation Expense.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "amortization_expense", "type": "float", "description": "Amortization Expense.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_based_compensation", "type": "float", "description": "Share-based compensation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_cash_adjustments_to_reconcile_net_income", "type": "float", "description": "Non-Cash Adjustments to Reconcile Net Income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "changes_in_operating_assets_and_liabilities", "type": "float", "description": "Changes in Operating Assets and Liabilities (Net)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_continuing_operating_activities", "type": "float", "description": "Net Cash from Continuing Operating Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_discontinued_operating_activities", "type": "float", "description": "Net Cash from Discontinued Operating Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_operating_activities", "type": "float", "description": "Net Cash from Operating Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "divestitures", "type": "float", "description": "Divestitures", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sale_of_property_plant_and_equipment", "type": "float", "description": "Sale of Property, Plant, and Equipment", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "acquisitions", "type": "float", "description": "Acquisitions", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "purchase_of_investments", "type": "float", "description": "Purchase of Investments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "purchase_of_investment_securities", "type": "float", "description": "Purchase of Investment Securities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sale_and_maturity_of_investments", "type": "float", "description": "Sale and Maturity of Investments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loans_held_for_sale", "type": "float", "description": "Loans Held for Sale (Net)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "purchase_of_property_plant_and_equipment", "type": "float", "description": "Purchase of Property, Plant, and Equipment", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_investing_activities", "type": "float", "description": "Other Investing Activities (Net)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_continuing_investing_activities", "type": "float", "description": "Net Cash from Continuing Investing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_discontinued_investing_activities", "type": "float", "description": "Net Cash from Discontinued Investing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_investing_activities", "type": "float", "description": "Net Cash from Investing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payment_of_dividends", "type": "float", "description": "Payment of Dividends", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repurchase_of_common_equity", "type": "float", "description": "Repurchase of Common Equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repurchase_of_preferred_equity", "type": "float", "description": "Repurchase of Preferred Equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuance_of_common_equity", "type": "float", "description": "Issuance of Common Equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuance_of_preferred_equity", "type": "float", "description": "Issuance of Preferred Equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuance_of_debt", "type": "float", "description": "Issuance of Debt", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repayment_of_debt", "type": "float", "description": "Repayment of Debt", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_financing_activities", "type": "float", "description": "Other Financing Activities (Net)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_interest_received", "type": "float", "description": "Cash Interest Received", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_change_in_deposits", "type": "float", "description": "Net Change in Deposits", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_increase_in_fed_funds_sold", "type": "float", "description": "Net Increase in Fed Funds Sold", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_continuing_financing_activities", "type": "float", "description": "Net Cash from Continuing Financing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_discontinued_financing_activities", "type": "float", "description": "Net Cash from Discontinued Financing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_from_financing_activities", "type": "float", "description": "Net Cash from Financing Activities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "effect_of_exchange_rate_changes", "type": "float", "description": "Effect of Exchange Rate Changes", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_net_changes_in_cash", "type": "float", "description": "Other Net Changes in Cash", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_change_in_cash_and_equivalents", "type": "float", "description": "Net Change in Cash and Equivalents", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_income_taxes_paid", "type": "float", "description": "Cash Income Taxes Paid", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_interest_paid", "type": "float", "description": "Cash Interest Paid", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -10972,91 +12389,104 @@ "type": "int", "description": "Net cash flow from operating activities continuing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_operating_activities_discontinued", "type": "int", "description": "Net cash flow from operating activities discontinued.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_operating_activities", "type": "int", "description": "Net cash flow from operating activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_investing_activities_continuing", "type": "int", "description": "Net cash flow from investing activities continuing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_investing_activities_discontinued", "type": "int", "description": "Net cash flow from investing activities discontinued.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_investing_activities", "type": "int", "description": "Net cash flow from investing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_financing_activities_continuing", "type": "int", "description": "Net cash flow from financing activities continuing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_financing_activities_discontinued", "type": "int", "description": "Net cash flow from financing activities discontinued.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_from_financing_activities", "type": "int", "description": "Net cash flow from financing activities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_continuing", "type": "int", "description": "Net cash flow continuing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow_discontinued", "type": "int", "description": "Net cash flow discontinued.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_gains_losses", "type": "int", "description": "Exchange gains losses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_cash_flow", "type": "int", "description": "Net cash flow.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -11077,28 +12507,32 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "statement_type", "type": "str", "description": "The type of financial statement - i.e, balance, income, cash.", "default": "balance", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return. Although the response object contains multiple results, because of the variance in the fields, year-to-year and quarter-to-quarter, it is recommended to view results in small chunks.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -11114,21 +12548,24 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "statement_type", "type": "Literal['balance', 'income', 'cash']", "description": "Cash flow statements are reported as YTD, Q4 is the same as FY.", "default": "income", - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The specific fiscal year. Reports do not go beyond 2008.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -11168,21 +12605,24 @@ "type": "date", "description": "The ending date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the report (e.g. FY, Q1, etc.).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the fiscal period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [] @@ -11203,14 +12643,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 10, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -11258,231 +12700,264 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Period the statement is returned for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_income", "type": "float", "description": "Growth rate of net income.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_depreciation_and_amortization", "type": "float", "description": "Growth rate of depreciation and amortization.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_deferred_income_tax", "type": "float", "description": "Growth rate of deferred income tax.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_stock_based_compensation", "type": "float", "description": "Growth rate of stock-based compensation.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_change_in_working_capital", "type": "float", "description": "Growth rate of change in working capital.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_accounts_receivables", "type": "float", "description": "Growth rate of accounts receivables.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_inventory", "type": "float", "description": "Growth rate of inventory.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_accounts_payables", "type": "float", "description": "Growth rate of accounts payables.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_working_capital", "type": "float", "description": "Growth rate of other working capital.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_non_cash_items", "type": "float", "description": "Growth rate of other non-cash items.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_cash_provided_by_operating_activities", "type": "float", "description": "Growth rate of net cash provided by operating activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_investments_in_property_plant_and_equipment", "type": "float", "description": "Growth rate of investments in property, plant, and equipment.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_acquisitions_net", "type": "float", "description": "Growth rate of net acquisitions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_purchases_of_investments", "type": "float", "description": "Growth rate of purchases of investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_sales_maturities_of_investments", "type": "float", "description": "Growth rate of sales maturities of investments.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_investing_activities", "type": "float", "description": "Growth rate of other investing activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_cash_used_for_investing_activities", "type": "float", "description": "Growth rate of net cash used for investing activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_debt_repayment", "type": "float", "description": "Growth rate of debt repayment.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_common_stock_issued", "type": "float", "description": "Growth rate of common stock issued.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_common_stock_repurchased", "type": "float", "description": "Growth rate of common stock repurchased.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_dividends_paid", "type": "float", "description": "Growth rate of dividends paid.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_financing_activities", "type": "float", "description": "Growth rate of other financing activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_cash_used_provided_by_financing_activities", "type": "float", "description": "Growth rate of net cash used/provided by financing activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_effect_of_forex_changes_on_cash", "type": "float", "description": "Growth rate of the effect of foreign exchange changes on cash.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_change_in_cash", "type": "float", "description": "Growth rate of net change in cash.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cash_at_end_of_period", "type": "float", "description": "Growth rate of cash at the end of the period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cash_at_beginning_of_period", "type": "float", "description": "Growth rate of cash at the beginning of the period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_operating_cash_flow", "type": "float", "description": "Growth rate of operating cash flow.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_capital_expenditure", "type": "float", "description": "Growth rate of capital expenditure.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_free_cash_flow", "type": "float", "description": "Growth rate of free cash flow.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -11503,21 +12978,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -11534,7 +13012,8 @@ "type": "int", "description": "The number of data entries to return.", "default": 100, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -11575,14 +13054,16 @@ "type": "date", "description": "The ex-dividend date - the date on which the stock begins trading without rights to the dividend.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "amount", "type": "float", "description": "The dividend amount per share.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [ @@ -11591,35 +13072,40 @@ "type": "str", "description": "Label of the historical dividends.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "adj_dividend", "type": "float", "description": "Adjusted dividend of the historical dividends.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "record_date", "type": "date", "description": "Record date of the historical dividends.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payment_date", "type": "date", "description": "Payment date of the historical dividends.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "declaration_date", "type": "date", "description": "Declaration date of the historical dividends.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -11628,21 +13114,24 @@ "type": "float", "description": "factor by which to multiply stock prices before this date, in order to calculate historically-adjusted stock prices.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "The currency in which the dividend is paid.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "float", "description": "The ratio of the stock split, if a stock split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -11663,7 +13152,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -11679,7 +13169,8 @@ "type": "int", "description": "The number of data entries to return.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -11719,35 +13210,40 @@ "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "announce_time", "type": "str", "description": "Timing of the earnings announcement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_actual", "type": "float", "description": "Actual EPS from the earnings date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_estimated", "type": "float", "description": "Estimated EPS for the earnings date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -11756,35 +13252,40 @@ "type": "float", "description": "Estimated consensus revenue for the reporting period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_actual", "type": "float", "description": "The actual reported revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reporting_time", "type": "str", "description": "The reporting time - e.g. after market close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated_at", "type": "date", "description": "The date when the data was last updated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_ending", "type": "date", "description": "The fiscal period end date.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -11804,7 +13305,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -11852,63 +13354,72 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cik", "type": "int", "description": "Central Index Key (CIK) for the requested entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "acceptance_time", "type": "datetime", "description": "Time of acceptance of the company employee.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period_of_report", "type": "date", "description": "Date of reporting of the company employee.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "company_name", "type": "str", "description": "Registered name of the company to retrieve the historical employees of.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "form_type", "type": "str", "description": "Form type of the company employee.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "filing_date", "type": "date", "description": "Filing date of the company employee", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "employee_count", "type": "int", "description": "Count of employees of the company.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "source", "type": "str", "description": "Source URL which retrieves this data for the company.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -11929,14 +13440,16 @@ "type": "str", "description": "Query to search for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 1000, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -11984,77 +13497,88 @@ "type": "str", "description": "ID of the financial attribute.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the financial attribute.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tag", "type": "str", "description": "Tag of the financial attribute.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "statement_code", "type": "str", "description": "Code of the financial statement.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "statement_type", "type": "str", "description": "Type of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "parent_name", "type": "str", "description": "Parent's name of the financial attribute.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sequence", "type": "int", "description": "Sequence of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "factor", "type": "str", "description": "Unit of the financial attribute.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "transaction", "type": "str", "description": "Transaction type (credit/debit) of the financial attribute.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "type", "type": "str", "description": "Type of the financial attribute.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unit", "type": "str", "description": "Unit of the financial attribute.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [] @@ -12075,14 +13599,16 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): intrinio.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tag", "type": "Union[str, List[str]]", "description": "Intrinio data tag ID or code. Multiple items allowed for provider(s): intrinio.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -12130,21 +13656,24 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tag", "type": "str", "description": "Tag name for the fetched data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "Union[str, float]", "description": "The value of the data.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [] @@ -12165,56 +13694,64 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): intrinio.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tag", "type": "Union[str, List[str]]", "description": "Intrinio data tag ID or code. Multiple items allowed for provider(s): intrinio.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "frequency", "type": "Literal['daily', 'weekly', 'monthly', 'quarterly', 'yearly']", "description": "The frequency of the data.", "default": "yearly", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 1000, - "optional": true + "optional": true, + "choices": null }, { "name": "tag_type", "type": "str", "description": "Filter by type, when applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -12262,28 +13799,32 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tag", "type": "str", "description": "Tag name for the fetched data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "The value of the data.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [] @@ -12304,21 +13845,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "Annotated[int, Ge(ge=0)]", "description": "The number of data entries to return.", "default": 5, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -12334,7 +13878,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -12343,14 +13888,16 @@ "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The specific fiscal year. Reports do not go beyond 2008.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -12359,98 +13906,112 @@ "type": "Literal['annual', 'quarter', 'ttm']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "Filing date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lt", "type": "date", "description": "Filing date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_lte", "type": "date", "description": "Filing date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gt", "type": "date", "description": "Filing date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date_gte", "type": "date", "description": "Filing date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date", "type": "date", "description": "Period of report date of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lt", "type": "date", "description": "Period of report date less than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_lte", "type": "date", "description": "Period of report date less than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gt", "type": "date", "description": "Period of report date greater than the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "period_of_report_date_gte", "type": "date", "description": "Period of report date greater than or equal to the given date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "include_sources", "type": "bool", "description": "Whether to include the sources of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "order", "type": "Literal['asc', 'desc']", "description": "Order of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['filing_date', 'period_of_report_date']", "description": "Sort of the financial statement.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -12459,7 +14020,8 @@ "type": "Literal['annual', 'quarter']", "description": "None", "default": "annual", - "optional": true + "optional": true, + "choices": null } ] }, @@ -12499,21 +14061,24 @@ "type": "date", "description": "The end date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the fiscal period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -12522,231 +14087,264 @@ "type": "date", "description": "The date when the filing was made.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accepted_date", "type": "datetime", "description": "The date and time when the filing was accepted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reported_currency", "type": "str", "description": "The currency in which the balance sheet was reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue", "type": "float", "description": "Total revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_of_revenue", "type": "float", "description": "Cost of revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit", "type": "float", "description": "Gross profit.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit_margin", "type": "float", "description": "Gross profit margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "general_and_admin_expense", "type": "float", "description": "General and administrative expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "research_and_development_expense", "type": "float", "description": "Research and development expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "selling_and_marketing_expense", "type": "float", "description": "Selling and marketing expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "selling_general_and_admin_expense", "type": "float", "description": "Selling, general and administrative expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_expenses", "type": "float", "description": "Other expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_operating_expenses", "type": "float", "description": "Total operating expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_and_expenses", "type": "float", "description": "Cost and expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_income", "type": "float", "description": "Interest income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_interest_expense", "type": "float", "description": "Total interest expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depreciation_and_amortization", "type": "float", "description": "Depreciation and amortization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda", "type": "float", "description": "EBITDA.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda_margin", "type": "float", "description": "EBITDA margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_operating_income", "type": "float", "description": "Total operating income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_income_margin", "type": "float", "description": "Operating income margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_other_income_expenses", "type": "float", "description": "Total other income and expenses.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_pre_tax_income", "type": "float", "description": "Total pre-tax income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pre_tax_income_margin", "type": "float", "description": "Pre-tax income margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_tax_expense", "type": "float", "description": "Income tax expense.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "consolidated_net_income", "type": "float", "description": "Consolidated net income.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_margin", "type": "float", "description": "Net income margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "basic_earnings_per_share", "type": "float", "description": "Basic earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "diluted_earnings_per_share", "type": "float", "description": "Diluted earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_basic_shares_outstanding", "type": "float", "description": "Weighted average basic shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_diluted_shares_outstanding", "type": "float", "description": "Weighted average diluted shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "link", "type": "str", "description": "Link to the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "final_link", "type": "str", "description": "Link to the filing document.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -12755,553 +14353,632 @@ "type": "str", "description": "The currency in which the balance sheet is reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue", "type": "float", "description": "Total revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_revenue", "type": "float", "description": "Total operating revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_of_revenue", "type": "float", "description": "Total cost of revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cost_of_revenue", "type": "float", "description": "Total operating cost of revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit", "type": "float", "description": "Total gross profit", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit_margin", "type": "float", "description": "Gross margin ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provision_for_credit_losses", "type": "float", "description": "Provision for credit losses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "research_and_development_expense", "type": "float", "description": "Research and development expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "selling_general_and_admin_expense", "type": "float", "description": "Selling, general, and admin expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "salaries_and_employee_benefits", "type": "float", "description": "Salaries and employee benefits", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "marketing_expense", "type": "float", "description": "Marketing expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_occupancy_and_equipment_expense", "type": "float", "description": "Net occupancy and equipment expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_operating_expenses", "type": "float", "description": "Other operating expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depreciation_expense", "type": "float", "description": "Depreciation expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "amortization_expense", "type": "float", "description": "Amortization expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "amortization_of_deferred_policy_acquisition_costs", "type": "float", "description": "Amortization of deferred policy acquisition costs", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exploration_expense", "type": "float", "description": "Exploration expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depletion_expense", "type": "float", "description": "Depletion expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_operating_expenses", "type": "float", "description": "Total operating expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_operating_income", "type": "float", "description": "Total operating income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deposits_and_money_market_investments_interest_income", "type": "float", "description": "Deposits and money market investments interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "federal_funds_sold_and_securities_borrowed_interest_income", "type": "float", "description": "Federal funds sold and securities borrowed interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "investment_securities_interest_income", "type": "float", "description": "Investment securities interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loans_and_leases_interest_income", "type": "float", "description": "Loans and leases interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trading_account_interest_income", "type": "float", "description": "Trading account interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_interest_income", "type": "float", "description": "Other interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_interest_income", "type": "float", "description": "Total non-interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_and_investment_income", "type": "float", "description": "Interest and investment income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_borrowings_interest_expense", "type": "float", "description": "Short-term borrowings interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt_interest_expense", "type": "float", "description": "Long-term debt interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capitalized_lease_obligations_interest_expense", "type": "float", "description": "Capitalized lease obligations interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deposits_interest_expense", "type": "float", "description": "Deposits interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "federal_funds_purchased_and_securities_sold_interest_expense", "type": "float", "description": "Federal funds purchased and securities sold interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_interest_expense", "type": "float", "description": "Other interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_interest_expense", "type": "float", "description": "Total interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_interest_income", "type": "float", "description": "Net interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_non_interest_income", "type": "float", "description": "Other non-interest income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "investment_banking_income", "type": "float", "description": "Investment banking income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trust_fees_by_commissions", "type": "float", "description": "Trust fees by commissions", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "premiums_earned", "type": "float", "description": "Premiums earned", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "insurance_policy_acquisition_costs", "type": "float", "description": "Insurance policy acquisition costs", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_and_future_benefits", "type": "float", "description": "Current and future benefits", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "property_and_liability_insurance_claims", "type": "float", "description": "Property and liability insurance claims", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_non_interest_expense", "type": "float", "description": "Total non-interest expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_realized_and_unrealized_capital_gains_on_investments", "type": "float", "description": "Net realized and unrealized capital gains on investments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_gains", "type": "float", "description": "Other gains", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_operating_income", "type": "float", "description": "Non-operating income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_income", "type": "float", "description": "Other income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_revenue", "type": "float", "description": "Other revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "extraordinary_income", "type": "float", "description": "Extraordinary income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_other_income", "type": "float", "description": "Total other income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda", "type": "float", "description": "Earnings Before Interest, Taxes, Depreciation and Amortization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda_margin", "type": "float", "description": "Margin on Earnings Before Interest, Taxes, Depreciation and Amortization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_pre_tax_income", "type": "float", "description": "Total pre-tax income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebit", "type": "float", "description": "Earnings Before Interest and Taxes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pre_tax_income_margin", "type": "float", "description": "Pre-Tax Income Margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_tax_expense", "type": "float", "description": "Income tax expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "impairment_charge", "type": "float", "description": "Impairment charge", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "restructuring_charge", "type": "float", "description": "Restructuring charge", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "service_charges_on_deposit_accounts", "type": "float", "description": "Service charges on deposit accounts", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_service_charges", "type": "float", "description": "Other service charges", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_special_charges", "type": "float", "description": "Other special charges", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_cost_of_revenue", "type": "float", "description": "Other cost of revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_continuing_operations", "type": "float", "description": "Net income (continuing operations)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_discontinued_operations", "type": "float", "description": "Net income (discontinued operations)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "consolidated_net_income", "type": "float", "description": "Consolidated net income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_adjustments_to_consolidated_net_income", "type": "float", "description": "Other adjustments to consolidated net income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_adjustment_to_net_income_attributable_to_common_shareholders", "type": "float", "description": "Other adjustment to net income attributable to common shareholders", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_attributable_to_noncontrolling_interest", "type": "float", "description": "Net income attributable to noncontrolling interest", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_attributable_to_common_shareholders", "type": "float", "description": "Net income attributable to common shareholders", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "basic_earnings_per_share", "type": "float", "description": "Basic earnings per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "diluted_earnings_per_share", "type": "float", "description": "Diluted earnings per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "basic_and_diluted_earnings_per_share", "type": "float", "description": "Basic and diluted earnings per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_dividends_to_common_per_share", "type": "float", "description": "Cash dividends to common per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "preferred_stock_dividends_declared", "type": "float", "description": "Preferred stock dividends declared", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_basic_shares_outstanding", "type": "float", "description": "Weighted average basic shares outstanding", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_diluted_shares_outstanding", "type": "float", "description": "Weighted average diluted shares outstanding", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_basic_and_diluted_shares_outstanding", "type": "float", "description": "Weighted average basic and diluted shares outstanding", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -13310,301 +14987,344 @@ "type": "float", "description": "Total Revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_of_revenue_goods", "type": "float", "description": "Cost of Revenue - Goods", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_of_revenue_services", "type": "float", "description": "Cost of Revenue - Services", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cost_of_revenue", "type": "float", "description": "Cost of Revenue", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit", "type": "float", "description": "Gross Profit", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provisions_for_loan_lease_and_other_losses", "type": "float", "description": "Provisions for loan lease and other losses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "depreciation_and_amortization", "type": "float", "description": "Depreciation and Amortization", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_tax_expense_benefit_current", "type": "float", "description": "Income tax expense benefit current", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deferred_tax_benefit", "type": "float", "description": "Deferred tax benefit", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "benefits_costs_expenses", "type": "float", "description": "Benefits, costs and expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "selling_general_and_administrative_expense", "type": "float", "description": "Selling, general and administrative expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "research_and_development", "type": "float", "description": "Research and development", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "costs_and_expenses", "type": "float", "description": "Costs and expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_operating_expenses", "type": "float", "description": "Other Operating Expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_expenses", "type": "float", "description": "Operating expenses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_income", "type": "float", "description": "Operating Income/Loss", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_operating_income", "type": "float", "description": "Non Operating Income/Loss", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_and_dividend_income", "type": "float", "description": "Interest and Dividend Income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_interest_expense", "type": "float", "description": "Interest Expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_and_debt_expense", "type": "float", "description": "Interest and Debt Expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_interest_income", "type": "float", "description": "Interest Income Net", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_income_after_provision_for_losses", "type": "float", "description": "Interest Income After Provision for Losses", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_interest_expense", "type": "float", "description": "Non-Interest Expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "non_interest_income", "type": "float", "description": "Non-Interest Income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_from_discontinued_operations_net_of_tax_on_disposal", "type": "float", "description": "Income From Discontinued Operations Net of Tax on Disposal", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_from_discontinued_operations_net_of_tax", "type": "float", "description": "Income From Discontinued Operations Net of Tax", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_before_equity_method_investments", "type": "float", "description": "Income Before Equity Method Investments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_from_equity_method_investments", "type": "float", "description": "Income From Equity Method Investments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_pre_tax_income", "type": "float", "description": "Income Before Tax", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_tax_expense", "type": "float", "description": "Income Tax Expense", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_after_tax", "type": "float", "description": "Income After Tax", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "consolidated_net_income", "type": "float", "description": "Net Income/Loss", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_attributable_noncontrolling_interest", "type": "float", "description": "Net income (loss) attributable to noncontrolling interest", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_attributable_to_parent", "type": "float", "description": "Net income (loss) attributable to parent", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_attributable_to_common_shareholders", "type": "float", "description": "Net Income/Loss Available To Common Stockholders Basic", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "participating_securities_earnings", "type": "float", "description": "Participating Securities Distributed And Undistributed Earnings Loss Basic", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "undistributed_earnings_allocated_to_participating_securities", "type": "float", "description": "Undistributed Earnings Allocated To Participating Securities", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "common_stock_dividends", "type": "float", "description": "Common Stock Dividends", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "preferred_stock_dividends_and_other_adjustments", "type": "float", "description": "Preferred stock dividends and other adjustments", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "basic_earnings_per_share", "type": "float", "description": "Earnings Per Share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "diluted_earnings_per_share", "type": "float", "description": "Diluted Earnings Per Share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_basic_shares_outstanding", "type": "float", "description": "Basic Average Shares", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weighted_average_diluted_shares_outstanding", "type": "float", "description": "Diluted Average Shares", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -13625,21 +15345,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 10, - "optional": true + "optional": true, + "choices": null }, { "name": "period", "type": "Literal['annual', 'quarter']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -13687,203 +15410,232 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Period the statement is returned for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_revenue", "type": "float", "description": "Growth rate of total revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cost_of_revenue", "type": "float", "description": "Growth rate of cost of goods sold.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_gross_profit", "type": "float", "description": "Growth rate of gross profit.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_gross_profit_ratio", "type": "float", "description": "Growth rate of gross profit as a percentage of revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_research_and_development_expenses", "type": "float", "description": "Growth rate of expenses on research and development.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_general_and_administrative_expenses", "type": "float", "description": "Growth rate of general and administrative expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_selling_and_marketing_expenses", "type": "float", "description": "Growth rate of expenses on selling and marketing activities.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_other_expenses", "type": "float", "description": "Growth rate of other operating expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_operating_expenses", "type": "float", "description": "Growth rate of total operating expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_cost_and_expenses", "type": "float", "description": "Growth rate of total costs and expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_interest_expense", "type": "float", "description": "Growth rate of interest expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_depreciation_and_amortization", "type": "float", "description": "Growth rate of depreciation and amortization expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_ebitda", "type": "float", "description": "Growth rate of Earnings Before Interest, Taxes, Depreciation, and Amortization.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_ebitda_ratio", "type": "float", "description": "Growth rate of EBITDA as a percentage of revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_operating_income", "type": "float", "description": "Growth rate of operating income.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_operating_income_ratio", "type": "float", "description": "Growth rate of operating income as a percentage of revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_total_other_income_expenses_net", "type": "float", "description": "Growth rate of net total other income and expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_income_before_tax", "type": "float", "description": "Growth rate of income before taxes.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_income_before_tax_ratio", "type": "float", "description": "Growth rate of income before taxes as a percentage of revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_income_tax_expense", "type": "float", "description": "Growth rate of income tax expenses.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_income", "type": "float", "description": "Growth rate of net income.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_net_income_ratio", "type": "float", "description": "Growth rate of net income as a percentage of revenue.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_eps", "type": "float", "description": "Growth rate of Earnings Per Share (EPS).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_eps_diluted", "type": "float", "description": "Growth rate of diluted Earnings Per Share (EPS).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_weighted_average_shs_out", "type": "float", "description": "Growth rate of weighted average shares outstanding.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "growth_weighted_average_shs_out_dil", "type": "float", "description": "Growth rate of diluted weighted average shares outstanding.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -13904,21 +15656,24 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "Literal['annual', 'quarter']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -13934,7 +15689,8 @@ "type": "bool", "description": "Include trailing twelve months (TTM) data.", "default": false, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [], @@ -13976,21 +15732,24 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "float", "description": "Market capitalization", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe_ratio", "type": "float", "description": "Price-to-earnings ratio (P/E ratio)", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -13999,406 +15758,464 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Period of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "calendar_year", "type": "int", "description": "Calendar year.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_per_share", "type": "float", "description": "Revenue per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_per_share", "type": "float", "description": "Net income per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cash_flow_per_share", "type": "float", "description": "Operating cash flow per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_per_share", "type": "float", "description": "Free cash flow per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_per_share", "type": "float", "description": "Cash per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "book_value_per_share", "type": "float", "description": "Book value per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tangible_book_value_per_share", "type": "float", "description": "Tangible book value per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shareholders_equity_per_share", "type": "float", "description": "Shareholders equity per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_debt_per_share", "type": "float", "description": "Interest debt per share", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value", "type": "float", "description": "Enterprise value", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_sales_ratio", "type": "float", "description": "Price-to-sales ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pocf_ratio", "type": "float", "description": "Price-to-operating cash flow ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pfcf_ratio", "type": "float", "description": "Price-to-free cash flow ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pb_ratio", "type": "float", "description": "Price-to-book ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ptb_ratio", "type": "float", "description": "Price-to-tangible book ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_sales", "type": "float", "description": "Enterprise value-to-sales ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value_over_ebitda", "type": "float", "description": "Enterprise value-to-EBITDA ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_operating_cash_flow", "type": "float", "description": "Enterprise value-to-operating cash flow ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ev_to_free_cash_flow", "type": "float", "description": "Enterprise value-to-free cash flow ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_yield", "type": "float", "description": "Earnings yield", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_yield", "type": "float", "description": "Free cash flow yield", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_to_equity", "type": "float", "description": "Debt-to-equity ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_to_assets", "type": "float", "description": "Debt-to-assets ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_debt_to_ebitda", "type": "float", "description": "Net debt-to-EBITDA ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_ratio", "type": "float", "description": "Current ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_coverage", "type": "float", "description": "Interest coverage", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_quality", "type": "float", "description": "Income quality", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "Dividend yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payout_ratio", "type": "float", "description": "Payout ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sales_general_and_administrative_to_revenue", "type": "float", "description": "Sales general and administrative expenses-to-revenue ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "research_and_development_to_revenue", "type": "float", "description": "Research and development expenses-to-revenue ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intangibles_to_total_assets", "type": "float", "description": "Intangibles-to-total assets ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_operating_cash_flow", "type": "float", "description": "Capital expenditures-to-operating cash flow ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_revenue", "type": "float", "description": "Capital expenditures-to-revenue ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_to_depreciation", "type": "float", "description": "Capital expenditures-to-depreciation ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stock_based_compensation_to_revenue", "type": "float", "description": "Stock-based compensation-to-revenue ratio", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "graham_number", "type": "float", "description": "Graham number", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "roic", "type": "float", "description": "Return on invested capital", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_tangible_assets", "type": "float", "description": "Return on tangible assets", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "graham_net_net", "type": "float", "description": "Graham net-net working capital", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "working_capital", "type": "float", "description": "Working capital", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tangible_asset_value", "type": "float", "description": "Tangible asset value", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_current_asset_value", "type": "float", "description": "Net current asset value", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "invested_capital", "type": "float", "description": "Invested capital", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_receivables", "type": "float", "description": "Average receivables", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_payables", "type": "float", "description": "Average payables", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_inventory", "type": "float", "description": "Average inventory", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_sales_outstanding", "type": "float", "description": "Days sales outstanding", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_payables_outstanding", "type": "float", "description": "Days payables outstanding", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_of_inventory_on_hand", "type": "float", "description": "Days of inventory on hand", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "receivables_turnover", "type": "float", "description": "Receivables turnover", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payables_turnover", "type": "float", "description": "Payables turnover", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventory_turnover", "type": "float", "description": "Inventory turnover", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "roe", "type": "float", "description": "Return on equity", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capex_per_share", "type": "float", "description": "Capital expenditures per share", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -14407,252 +16224,288 @@ "type": "float", "description": "Price to book ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_tangible_book", "type": "float", "description": "Price to tangible book ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_revenue", "type": "float", "description": "Price to revenue ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quick_ratio", "type": "float", "description": "Quick ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_margin", "type": "float", "description": "Gross margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebit_margin", "type": "float", "description": "EBIT margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "profit_margin", "type": "float", "description": "Profit margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps", "type": "float", "description": "Basic earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_growth", "type": "float", "description": "EPS growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_growth", "type": "float", "description": "Revenue growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda_growth", "type": "float", "description": "EBITDA growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebit_growth", "type": "float", "description": "EBIT growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_growth", "type": "float", "description": "Net income growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_to_firm_growth", "type": "float", "description": "Free cash flow to firm growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "invested_capital_growth", "type": "float", "description": "Invested capital growth, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_assets", "type": "float", "description": "Return on assets, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_equity", "type": "float", "description": "Return on equity, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_invested_capital", "type": "float", "description": "Return on invested capital, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda", "type": "int", "description": "Earnings before interest, taxes, depreciation, and amortization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebit", "type": "int", "description": "Earnings before interest and taxes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt", "type": "int", "description": "Long-term debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_debt", "type": "int", "description": "Total debt.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_capital", "type": "int", "description": "The sum of long-term debt and total shareholder equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value", "type": "int", "description": "Enterprise value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_to_firm", "type": "int", "description": "Free cash flow to firm.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "altman_z_score", "type": "float", "description": "Altman Z-score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "Beta relative to the broad market (rolling three-year).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "Dividend yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_yield", "type": "float", "description": "Earnings yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_price", "type": "float", "description": "Last price of the stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "52 week high", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "52 week low", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg", "type": "int", "description": "Average daily volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_interest", "type": "int", "description": "Number of shares reported as sold short.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_outstanding", "type": "int", "description": "Weighted average shares outstanding (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_to_cover", "type": "float", "description": "Days to cover short interest, based on average daily volume.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -14661,245 +16514,280 @@ "type": "float", "description": "Forward price-to-earnings ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "peg_ratio", "type": "float", "description": "PEG ratio (5-year expected).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "peg_ratio_ttm", "type": "float", "description": "PEG ratio (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_ttm", "type": "float", "description": "Earnings per share (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps_forward", "type": "float", "description": "Forward earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_to_ebitda", "type": "float", "description": "Enterprise value to EBITDA ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_growth", "type": "float", "description": "Earnings growth (Year Over Year), as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_growth_quarterly", "type": "float", "description": "Quarterly earnings growth (Year Over Year), as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_per_share", "type": "float", "description": "Revenue per share (TTM).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "revenue_growth", "type": "float", "description": "Revenue growth (Year Over Year), as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_to_revenue", "type": "float", "description": "Enterprise value to revenue ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_per_share", "type": "float", "description": "Cash per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quick_ratio", "type": "float", "description": "Quick ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "current_ratio", "type": "float", "description": "Current ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_to_equity", "type": "float", "description": "Debt-to-equity ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_margin", "type": "float", "description": "Gross margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_margin", "type": "float", "description": "Operating margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebitda_margin", "type": "float", "description": "EBITDA margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "profit_margin", "type": "float", "description": "Profit margin, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_assets", "type": "float", "description": "Return on assets, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_equity", "type": "float", "description": "Return on equity, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "Dividend yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield_5y_avg", "type": "float", "description": "5-year average dividend yield, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payout_ratio", "type": "float", "description": "Payout ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "book_value", "type": "float", "description": "Book value per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_book", "type": "float", "description": "Price-to-book ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value", "type": "int", "description": "Enterprise value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "overall_risk", "type": "float", "description": "Overall risk score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "audit_risk", "type": "float", "description": "Audit risk score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "board_risk", "type": "float", "description": "Board risk score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "compensation_risk", "type": "float", "description": "Compensation risk score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shareholder_rights_risk", "type": "float", "description": "Shareholder rights risk score.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "Beta relative to the broad market (5-year monthly).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_return_1y", "type": "float", "description": "One-year price return, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency in which the data is presented.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -14919,7 +16807,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -14968,49 +16857,56 @@ "type": "str", "description": "Designation of the key executive.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the key executive.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "pay", "type": "int", "description": "Pay of the key executive.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_pay", "type": "str", "description": "Currency of the pay.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gender", "type": "str", "description": "Gender of the key executive.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_born", "type": "int", "description": "Birth year of the key executive.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "title_since", "type": "int", "description": "Date the tile was held since.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [], @@ -15020,14 +16916,16 @@ "type": "int", "description": "Value of shares exercised.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unexercised_value", "type": "int", "description": "Value of shares not exercised.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -15047,7 +16945,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -15063,7 +16962,8 @@ "type": "int", "description": "Year of the compensation.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -15103,84 +17003,96 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_name", "type": "str", "description": "The name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "The industry of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year", "type": "int", "description": "Year of the compensation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name_and_position", "type": "str", "description": "Name and position.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "salary", "type": "Annotated[float, Ge(ge=0)]", "description": "Salary.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bonus", "type": "Annotated[float, Ge(ge=0)]", "description": "Bonus payments.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stock_award", "type": "Annotated[float, Ge(ge=0)]", "description": "Stock awards.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "incentive_plan_compensation", "type": "Annotated[float, Ge(ge=0)]", "description": "Incentive plan compensation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "all_other_compensation", "type": "Annotated[float, Ge(ge=0)]", "description": "All other compensation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total", "type": "Annotated[float, Ge(ge=0)]", "description": "Total compensation.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -15189,21 +17101,24 @@ "type": "date", "description": "Date of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accepted_date", "type": "datetime", "description": "Date the filing was accepted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url", "type": "str", "description": "URL to the filing data.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -15223,7 +17138,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -15271,252 +17187,288 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "price", "type": "float", "description": "Price of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "Beta of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "vol_avg", "type": "int", "description": "Volume average of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mkt_cap", "type": "int", "description": "Market capitalization of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_div", "type": "float", "description": "Last dividend of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "range", "type": "str", "description": "Range of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "changes", "type": "float", "description": "Changes of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_name", "type": "str", "description": "Company name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "ISIN of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "CUSIP of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "Exchange of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_short_name", "type": "str", "description": "Exchange short name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "Industry of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "website", "type": "str", "description": "Website of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "description", "type": "str", "description": "Description of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ceo", "type": "str", "description": "CEO of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "str", "description": "Sector of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Country of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "full_time_employees", "type": "str", "description": "Full time employees of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "phone", "type": "str", "description": "Phone of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "address", "type": "str", "description": "Address of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "city", "type": "str", "description": "City of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "state", "type": "str", "description": "State of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "zip", "type": "str", "description": "Zip of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dcf_diff", "type": "float", "description": "Discounted cash flow difference of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dcf", "type": "float", "description": "Discounted cash flow of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "image", "type": "str", "description": "Image of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ipo_date", "type": "date", "description": "IPO date of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "default_image", "type": "bool", "description": "If the image is the default image.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_etf", "type": "bool", "description": "If the company is an ETF.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_actively_trading", "type": "bool", "description": "If the company is actively trading.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_adr", "type": "bool", "description": "If the company is an ADR.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_fund", "type": "bool", "description": "If the company is a fund.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -15537,21 +17489,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "str", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 12, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -15567,7 +17522,8 @@ "type": "Literal['annual', 'quarter', 'ttm']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -15576,14 +17532,16 @@ "type": "Literal['annual', 'quarter', 'ttm', 'ytd']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The specific fiscal year. Reports do not go beyond 2008.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -15623,21 +17581,24 @@ "type": "str", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "Period of the financial ratios.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "Fiscal year.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -15646,392 +17607,448 @@ "type": "float", "description": "Current ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quick_ratio", "type": "float", "description": "Quick ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_ratio", "type": "float", "description": "Cash ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_of_sales_outstanding", "type": "float", "description": "Days of sales outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_of_inventory_outstanding", "type": "float", "description": "Days of inventory outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cycle", "type": "float", "description": "Operating cycle.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_of_payables_outstanding", "type": "float", "description": "Days of payables outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_conversion_cycle", "type": "float", "description": "Cash conversion cycle.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "gross_profit_margin", "type": "float", "description": "Gross profit margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_profit_margin", "type": "float", "description": "Operating profit margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pretax_profit_margin", "type": "float", "description": "Pretax profit margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_profit_margin", "type": "float", "description": "Net profit margin.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "effective_tax_rate", "type": "float", "description": "Effective tax rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_assets", "type": "float", "description": "Return on assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_equity", "type": "float", "description": "Return on equity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_on_capital_employed", "type": "float", "description": "Return on capital employed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_income_per_ebt", "type": "float", "description": "Net income per EBT.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebt_per_ebit", "type": "float", "description": "EBT per EBIT.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ebit_per_revenue", "type": "float", "description": "EBIT per revenue.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_ratio", "type": "float", "description": "Debt ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "debt_equity_ratio", "type": "float", "description": "Debt equity ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_term_debt_to_capitalization", "type": "float", "description": "Long term debt to capitalization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_debt_to_capitalization", "type": "float", "description": "Total debt to capitalization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_coverage", "type": "float", "description": "Interest coverage.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_flow_to_debt_ratio", "type": "float", "description": "Cash flow to debt ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_equity_multiplier", "type": "float", "description": "Company equity multiplier.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "receivables_turnover", "type": "float", "description": "Receivables turnover.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payables_turnover", "type": "float", "description": "Payables turnover.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inventory_turnover", "type": "float", "description": "Inventory turnover.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fixed_asset_turnover", "type": "float", "description": "Fixed asset turnover.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_turnover", "type": "float", "description": "Asset turnover.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cash_flow_per_share", "type": "float", "description": "Operating cash flow per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_per_share", "type": "float", "description": "Free cash flow per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_per_share", "type": "float", "description": "Cash per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payout_ratio", "type": "float", "description": "Payout ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "operating_cash_flow_sales_ratio", "type": "float", "description": "Operating cash flow sales ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_cash_flow_operating_cash_flow_ratio", "type": "float", "description": "Free cash flow operating cash flow ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cash_flow_coverage_ratios", "type": "float", "description": "Cash flow coverage ratios.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_term_coverage_ratios", "type": "float", "description": "Short term coverage ratios.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "capital_expenditure_coverage_ratio", "type": "float", "description": "Capital expenditure coverage ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_paid_and_capex_coverage_ratio", "type": "float", "description": "Dividend paid and capex coverage ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_payout_ratio", "type": "float", "description": "Dividend payout ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_book_value_ratio", "type": "float", "description": "Price book value ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_book_ratio", "type": "float", "description": "Price to book ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_sales_ratio", "type": "float", "description": "Price to sales ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_earnings_ratio", "type": "float", "description": "Price earnings ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_free_cash_flows_ratio", "type": "float", "description": "Price to free cash flows ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_to_operating_cash_flows_ratio", "type": "float", "description": "Price to operating cash flows ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_cash_flow_ratio", "type": "float", "description": "Price cash flow ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_earnings_to_growth_ratio", "type": "float", "description": "Price earnings to growth ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_sales_ratio", "type": "float", "description": "Price sales ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "Dividend yield.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield_percentage", "type": "float", "description": "Dividend yield percentage.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_per_share", "type": "float", "description": "Dividend per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "enterprise_value_multiple", "type": "float", "description": "Enterprise value multiple.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_fair_value", "type": "float", "description": "Price fair value.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [] @@ -16052,21 +18069,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "Literal['quarter', 'annual']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "structure", "type": "Literal['hierarchical', 'flat']", "description": "Structure of the returned data.", "default": "flat", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -16114,35 +18134,40 @@ "type": "date", "description": "The end date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the reporting period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the reporting period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "The filing date of the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "geographic_segment", "type": "int", "description": "Dictionary of the revenue by geographic segment.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -16163,21 +18188,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period", "type": "Literal['quarter', 'annual']", "description": "Time period of the data to return.", "default": "annual", - "optional": true + "optional": true, + "choices": null }, { "name": "structure", "type": "Literal['hierarchical', 'flat']", "description": "Structure of the returned data.", "default": "flat", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -16225,35 +18253,40 @@ "type": "date", "description": "The end date of the reporting period.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "fiscal_period", "type": "str", "description": "The fiscal period of the reporting period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fiscal_year", "type": "int", "description": "The fiscal year of the reporting period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "date", "description": "The filing date of the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_line", "type": "int", "description": "Dictionary containing the revenue of the business line.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -16274,21 +18307,24 @@ "type": "str", "description": "Symbol to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "form_type", "type": "str", "description": "Filter by form type. Check the data provider for available types.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 100, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -16305,21 +18341,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "thea_enabled", "type": "bool", "description": "Return filings that have been read by Intrinio's Thea NLP.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "sec": [ @@ -16328,28 +18367,32 @@ "type": "str", "description": "Symbol to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "form_type", "type": "Literal['1', '1-A', '1-A POS', '1-A-W', '1-E', '1-E AD', '1-K', '1-SA', '1-U', '1-Z', '1-Z-W', '10-12B', '10-12G', '10-D', '10-K', '10-KT', '10-Q', '10-QT', '11-K', '11-KT', '13F-HR', '13F-NT', '13FCONP', '144', '15-12B', '15-12G', '15-15D', '15F-12B', '15F-12G', '15F-15D', '18-12B', '18-K', '19B-4E', '2-A', '2-AF', '2-E', '20-F', '20FR12B', '20FR12G', '24F-2NT', '25', '25-NSE', '253G1', '253G2', '253G3', '253G4', '3', '305B2', '34-12H', '4', '40-17F1', '40-17F2', '40-17G', '40-17GCS', '40-202A', '40-203A', '40-206A', '40-24B2', '40-33', '40-6B', '40-8B25', '40-8F-2', '40-APP', '40-F', '40-OIP', '40FR12B', '40FR12G', '424A', '424B1', '424B2', '424B3', '424B4', '424B5', '424B7', '424B8', '424H', '425', '485APOS', '485BPOS', '485BXT', '486APOS', '486BPOS', '486BXT', '487', '497', '497AD', '497H2', '497J', '497K', '497VPI', '497VPU', '5', '6-K', '6B NTC', '6B ORDR', '8-A12B', '8-A12G', '8-K', '8-K12B', '8-K12G3', '8-K15D5', '8-M', '8F-2 NTC', '8F-2 ORDR', '9-M', 'ABS-15G', 'ABS-EE', 'ADN-MTL', 'ADV-E', 'ADV-H-C', 'ADV-H-T', 'ADV-NR', 'ANNLRPT', 'APP NTC', 'APP ORDR', 'APP WD', 'APP WDG', 'ARS', 'ATS-N', 'ATS-N-C', 'ATS-N/UA', 'AW', 'AW WD', 'C', 'C-AR', 'C-AR-W', 'C-TR', 'C-TR-W', 'C-U', 'C-U-W', 'C-W', 'CB', 'CERT', 'CERTARCA', 'CERTBATS', 'CERTCBO', 'CERTNAS', 'CERTNYS', 'CERTPAC', 'CFPORTAL', 'CFPORTAL-W', 'CORRESP', 'CT ORDER', 'D', 'DEF 14A', 'DEF 14C', 'DEFA14A', 'DEFA14C', 'DEFC14A', 'DEFC14C', 'DEFM14A', 'DEFM14C', 'DEFN14A', 'DEFR14A', 'DEFR14C', 'DEL AM', 'DFAN14A', 'DFRN14A', 'DOS', 'DOSLTR', 'DRS', 'DRSLTR', 'DSTRBRPT', 'EFFECT', 'F-1', 'F-10', 'F-10EF', 'F-10POS', 'F-1MEF', 'F-3', 'F-3ASR', 'F-3D', 'F-3DPOS', 'F-3MEF', 'F-4', 'F-4 POS', 'F-4MEF', 'F-6', 'F-6 POS', 'F-6EF', 'F-7', 'F-7 POS', 'F-8', 'F-8 POS', 'F-80', 'F-80POS', 'F-9', 'F-9 POS', 'F-N', 'F-X', 'FOCUSN', 'FWP', 'G-405', 'G-405N', 'G-FIN', 'G-FINW', 'IRANNOTICE', 'MA', 'MA-A', 'MA-I', 'MA-W', 'MSD', 'MSDCO', 'MSDW', 'N-1', 'N-14', 'N-14 8C', 'N-14MEF', 'N-18F1', 'N-1A', 'N-2', 'N-2 POSASR', 'N-23C-2', 'N-23C3A', 'N-23C3B', 'N-23C3C', 'N-2ASR', 'N-2MEF', 'N-30B-2', 'N-30D', 'N-4', 'N-5', 'N-54A', 'N-54C', 'N-6', 'N-6F', 'N-8A', 'N-8B-2', 'N-8F', 'N-8F NTC', 'N-8F ORDR', 'N-CEN', 'N-CR', 'N-CSR', 'N-CSRS', 'N-MFP', 'N-MFP1', 'N-MFP2', 'N-PX', 'N-Q', 'N-VP', 'N-VPFS', 'NO ACT', 'NPORT-EX', 'NPORT-NP', 'NPORT-P', 'NRSRO-CE', 'NRSRO-UPD', 'NSAR-A', 'NSAR-AT', 'NSAR-B', 'NSAR-BT', 'NSAR-U', 'NT 10-D', 'NT 10-K', 'NT 10-Q', 'NT 11-K', 'NT 20-F', 'NT N-CEN', 'NT N-MFP', 'NT N-MFP1', 'NT N-MFP2', 'NT NPORT-EX', 'NT NPORT-P', 'NT-NCEN', 'NT-NCSR', 'NT-NSAR', 'NTFNCEN', 'NTFNCSR', 'NTFNSAR', 'NTN 10D', 'NTN 10K', 'NTN 10Q', 'NTN 20F', 'OIP NTC', 'OIP ORDR', 'POS 8C', 'POS AM', 'POS AMI', 'POS EX', 'POS462B', 'POS462C', 'POSASR', 'PRE 14A', 'PRE 14C', 'PREC14A', 'PREC14C', 'PREM14A', 'PREM14C', 'PREN14A', 'PRER14A', 'PRER14C', 'PRRN14A', 'PX14A6G', 'PX14A6N', 'QRTLYRPT', 'QUALIF', 'REG-NR', 'REVOKED', 'RW', 'RW WD', 'S-1', 'S-11', 'S-11MEF', 'S-1MEF', 'S-20', 'S-3', 'S-3ASR', 'S-3D', 'S-3DPOS', 'S-3MEF', 'S-4', 'S-4 POS', 'S-4EF', 'S-4MEF', 'S-6', 'S-8', 'S-8 POS', 'S-B', 'S-BMEF', 'SBSE', 'SBSE-A', 'SBSE-BD', 'SBSE-C', 'SBSE-W', 'SC 13D', 'SC 13E1', 'SC 13E3', 'SC 13G', 'SC 14D9', 'SC 14F1', 'SC 14N', 'SC TO-C', 'SC TO-I', 'SC TO-T', 'SC13E4F', 'SC14D1F', 'SC14D9C', 'SC14D9F', 'SD', 'SDR', 'SE', 'SEC ACTION', 'SEC STAFF ACTION', 'SEC STAFF LETTER', 'SF-1', 'SF-3', 'SL', 'SP 15D2', 'STOP ORDER', 'SUPPL', 'T-3', 'TA-1', 'TA-2', 'TA-W', 'TACO', 'TH', 'TTW', 'UNDER', 'UPLOAD', 'WDL-REQ', 'X-17A-5']", "description": "Type of the SEC filing form.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "Union[int, str]", "description": "Lookup filings by Central Index Key (CIK) instead of by symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache. If True, cache will store for one day.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -16389,49 +18432,56 @@ "type": "date", "description": "The date of the filing.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "accepted_date", "type": "datetime", "description": "Accepted date of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "report_type", "type": "str", "description": "Type of filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_url", "type": "str", "description": "URL to the filing page.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "report_url", "type": "str", "description": "URL to the actual report.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [], @@ -16441,42 +18491,48 @@ "type": "str", "description": "Intrinio ID of the filing.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "period_end_date", "type": "date", "description": "Ending date of the fiscal period for the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sec_unique_id", "type": "str", "description": "SEC unique ID of the filing.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "instance_url", "type": "str", "description": "URL for the XBRL filing for the report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry_group", "type": "str", "description": "Industry group of the company.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "industry_category", "type": "str", "description": "Industry category of the company.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "sec": [ @@ -16485,91 +18541,104 @@ "type": "date", "description": "The date of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "act", "type": "Union[int, str]", "description": "The SEC Act number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "items", "type": "Union[str, float]", "description": "The SEC Item numbers.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "primary_doc_description", "type": "str", "description": "The description of the primary document.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "primary_doc", "type": "str", "description": "The filename of the primary document.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "accession_number", "type": "Union[int, str]", "description": "The accession number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "file_number", "type": "Union[int, str]", "description": "The file number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "film_number", "type": "Union[int, str]", "description": "The film number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_inline_xbrl", "type": "Union[int, str]", "description": "Whether the filing is an inline XBRL filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_xbrl", "type": "Union[int, str]", "description": "Whether the filing is an XBRL filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "size", "type": "Union[int, str]", "description": "The size of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "complete_submission_url", "type": "str", "description": "The URL to the complete filing submission.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_detail_url", "type": "str", "description": "The URL to the filing details.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -16589,7 +18658,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -16637,28 +18707,32 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "numerator", "type": "float", "description": "Numerator of the split.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "denominator", "type": "float", "description": "Denominator of the split.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "str", "description": "Split ratio.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -16679,14 +18753,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "year", "type": "int", "description": "Year of the earnings call transcript.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -16734,35 +18810,40 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "quarter", "type": "int", "description": "Quarter of the earnings call transcript.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "year", "type": "int", "description": "Year of the earnings call transcript.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "datetime", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "content", "type": "str", "description": "Content of the earnings call transcript.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -16783,14 +18864,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return. Default is 252, the number of trading days in a year.", "default": 252, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -16838,14 +18921,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "trailing_dividend_yield", "type": "float", "description": "Trailing dividend yield.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "tiingo": [] @@ -16866,21 +18951,24 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "page", "type": "int", "description": "Page number of the data to fetch.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -16928,273 +19016,312 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cik", "type": "int", "description": "Central Index Key (CIK) for the requested entity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "filing_date", "type": "date", "description": "Filing date of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "investor_name", "type": "str", "description": "Investor name of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "security_name", "type": "str", "description": "Security name of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "type_of_security", "type": "str", "description": "Type of security of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "security_cusip", "type": "str", "description": "Security cusip of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "shares_type", "type": "str", "description": "Shares type of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "put_call_share", "type": "str", "description": "Put call share of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "investment_discretion", "type": "str", "description": "Investment discretion of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "industry_title", "type": "str", "description": "Industry title of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "weight", "type": "float", "description": "Weight of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_weight", "type": "float", "description": "Last weight of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_weight", "type": "float", "description": "Change in weight of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_weight_percentage", "type": "float", "description": "Change in weight percentage of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "market_value", "type": "int", "description": "Market value of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_market_value", "type": "int", "description": "Last market value of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_market_value", "type": "int", "description": "Change in market value of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_market_value_percentage", "type": "float", "description": "Change in market value percentage of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "shares_number", "type": "int", "description": "Shares number of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_shares_number", "type": "int", "description": "Last shares number of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_shares_number", "type": "float", "description": "Change in shares number of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_shares_number_percentage", "type": "float", "description": "Change in shares number percentage of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "quarter_end_price", "type": "float", "description": "Quarter end price of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "avg_price_paid", "type": "float", "description": "Average price paid of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_new", "type": "bool", "description": "Is the stock ownership new.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_sold_out", "type": "bool", "description": "Is the stock ownership sold out.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ownership", "type": "float", "description": "How much is the ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_ownership", "type": "float", "description": "Last ownership amount.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_ownership", "type": "float", "description": "Change in ownership amount.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_ownership_percentage", "type": "float", "description": "Change in ownership percentage.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "holding_period", "type": "int", "description": "Holding period of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "first_added", "type": "date", "description": "First added date of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "performance", "type": "float", "description": "Performance of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "performance_percentage", "type": "float", "description": "Performance percentage of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_performance", "type": "float", "description": "Last performance of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "change_in_performance", "type": "float", "description": "Change in performance of the stock ownership.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_counted_for_performance", "type": "bool", "description": "Is the stock ownership counted for performance.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -17215,7 +19342,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -17231,14 +19359,16 @@ "type": "bool", "description": "Include current quarter data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -17278,21 +19408,24 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [ @@ -17301,231 +19434,264 @@ "type": "int", "description": "Number of investors holding the stock.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_investors_holding", "type": "int", "description": "Number of investors holding the stock in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "investors_holding_change", "type": "int", "description": "Change in the number of investors holding the stock.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "number_of_13f_shares", "type": "int", "description": "Number of 13F shares.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_number_of_13f_shares", "type": "int", "description": "Number of 13F shares in the last quarter.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_of_13f_shares_change", "type": "int", "description": "Change in the number of 13F shares.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_invested", "type": "float", "description": "Total amount invested.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_total_invested", "type": "float", "description": "Total amount invested in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_invested_change", "type": "float", "description": "Change in the total amount invested.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ownership_percent", "type": "float", "description": "Ownership percent.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_ownership_percent", "type": "float", "description": "Ownership percent in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ownership_percent_change", "type": "float", "description": "Change in the ownership percent.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "new_positions", "type": "int", "description": "Number of new positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_new_positions", "type": "int", "description": "Number of new positions in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "new_positions_change", "type": "int", "description": "Change in the number of new positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "increased_positions", "type": "int", "description": "Number of increased positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_increased_positions", "type": "int", "description": "Number of increased positions in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "increased_positions_change", "type": "int", "description": "Change in the number of increased positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "closed_positions", "type": "int", "description": "Number of closed positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_closed_positions", "type": "int", "description": "Number of closed positions in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "closed_positions_change", "type": "int", "description": "Change in the number of closed positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "reduced_positions", "type": "int", "description": "Number of reduced positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_reduced_positions", "type": "int", "description": "Number of reduced positions in the last quarter.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "reduced_positions_change", "type": "int", "description": "Change in the number of reduced positions.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_calls", "type": "int", "description": "Total number of call options contracts traded for Apple Inc. on the specified date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_total_calls", "type": "int", "description": "Total number of call options contracts traded for Apple Inc. on the previous reporting date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_calls_change", "type": "int", "description": "Change in the total number of call options contracts traded between the current and previous reporting dates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_puts", "type": "int", "description": "Total number of put options contracts traded for Apple Inc. on the specified date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_total_puts", "type": "int", "description": "Total number of put options contracts traded for Apple Inc. on the previous reporting date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "total_puts_change", "type": "int", "description": "Change in the total number of put options contracts traded between the current and previous reporting dates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "put_call_ratio", "type": "float", "description": "Put-call ratio, which is the ratio of the total number of put options to call options traded on the specified date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "last_put_call_ratio", "type": "float", "description": "Put-call ratio on the previous reporting date.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "put_call_ratio_change", "type": "float", "description": "Change in the put-call ratio between the current and previous reporting dates.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -17545,14 +19711,16 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 500, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -17568,7 +19736,8 @@ "type": "Literal[None, 'award', 'conversion', 'return', 'expire_short', 'in_kind', 'gift', 'expire_long', 'discretionary', 'other', 'small', 'exempt', 'otm', 'purchase', 'sale', 'tender', 'will', 'itm', 'trust']", "description": "Type of the transaction.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -17577,28 +19746,32 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ownership_type", "type": "Literal['D', 'I']", "description": "Type of ownership.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort_by", "type": "Literal['filing_date', 'updated_on']", "description": "Field to sort by.", "default": "updated_on", - "optional": true + "optional": true, + "choices": null } ] }, @@ -17638,98 +19811,112 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_cik", "type": "Union[int, str]", "description": "CIK number of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_date", "type": "Union[date, datetime]", "description": "Filing date of the trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "transaction_date", "type": "date", "description": "Date of the transaction.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "owner_cik", "type": "Union[int, str]", "description": "Reporting individual's CIK.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "owner_name", "type": "str", "description": "Name of the reporting individual.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "owner_title", "type": "str", "description": "The title held by the reporting individual.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "transaction_type", "type": "str", "description": "Type of transaction being reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "acquisition_or_disposition", "type": "str", "description": "Acquisition or disposition of the shares.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "security_type", "type": "str", "description": "The type of security transacted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "securities_owned", "type": "float", "description": "Number of securities owned by the reporting individual.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "securities_transacted", "type": "float", "description": "Number of securities transacted by the reporting individual.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "transaction_price", "type": "float", "description": "The price of the transaction.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "filing_url", "type": "str", "description": "Link to the filing.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -17738,7 +19925,8 @@ "type": "str", "description": "Form type of the insider trading.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "intrinio": [ @@ -17747,105 +19935,120 @@ "type": "str", "description": "URL of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_name", "type": "str", "description": "Name of the company.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "conversion_exercise_price", "type": "float", "description": "Conversion/Exercise price of the shares.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "deemed_execution_date", "type": "date", "description": "Deemed execution date of the trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exercise_date", "type": "date", "description": "Exercise date of the trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "expiration_date", "type": "date", "description": "Expiration date of the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "underlying_security_title", "type": "str", "description": "Name of the underlying non-derivative security related to this derivative transaction.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "underlying_shares", "type": "Union[int, float]", "description": "Number of underlying shares related to this derivative transaction.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "nature_of_ownership", "type": "str", "description": "Nature of ownership of the insider trading.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "director", "type": "bool", "description": "Whether the owner is a director.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "officer", "type": "bool", "description": "Whether the owner is an officer.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ten_percent_owner", "type": "bool", "description": "Whether the owner is a 10% owner.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_relation", "type": "bool", "description": "Whether the owner is having another relation.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "derivative_transaction", "type": "bool", "description": "Whether the owner is having a derivative transaction.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "report_line_number", "type": "int", "description": "Report line number of the insider trading.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -17865,7 +20068,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -17915,42 +20119,48 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "free_float", "type": "float", "description": "Percentage of unrestricted shares of a publicly-traded company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "float_shares", "type": "float", "description": "Number of shares available for trading by the general public.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "outstanding_shares", "type": "float", "description": "Total number of shares of a publicly-traded company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "str", "description": "Source of the received data.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [], @@ -17960,14 +20170,16 @@ "type": "float", "description": "Total number of shares of a publicly-traded company, adjusted for splits.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "public_float", "type": "float", "description": "Aggregate market value of the shares of a publicly-traded company.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -17976,70 +20188,80 @@ "type": "int", "description": "Implied Shares Outstanding of common equity, assuming the conversion of all convertible subsidiary equity into common.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_interest", "type": "int", "description": "Number of shares that are reported short.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_percent_of_float", "type": "float", "description": "Percentage of shares that are reported short, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "days_to_cover", "type": "float", "description": "Number of days to repurchase the shares as a ratio of average daily volume", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_interest_prev_month", "type": "int", "description": "Number of shares that were reported short in the previous month.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_interest_prev_date", "type": "date", "description": "Date of the previous month's report.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "insider_ownership", "type": "float", "description": "Percentage of shares held by insiders, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "institution_ownership", "type": "float", "description": "Percentage of shares held by institutions, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "institution_float_ownership", "type": "float", "description": "Percentage of float held by institutions, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "institutions_count", "type": "int", "description": "Number of institutions holding shares.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -18059,21 +20281,24 @@ "type": "str", "description": "Symbol to get data for. A CIK or Symbol can be used.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "A specific date to get data for. The date represents the end of the reporting period. All form 13F-HR filings are based on the calendar year and are reported quarterly. If a date is not supplied, the most recent filing is returned. Submissions beginning 2013-06-30 are supported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return. The number of previous filings to return. The date parameter takes priority over this parameter.", "default": 1, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -18121,77 +20346,88 @@ "type": "date", "description": "The end-of-quarter date of the filing.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "issuer", "type": "str", "description": "The name of the issuer.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "cusip", "type": "str", "description": "The CUSIP of the security.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "asset_class", "type": "str", "description": "The title of the asset class for the security.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "security_type", "type": "Literal['SH', 'PRN']", "description": "The total number of shares of the class of security or the principal amount of such class. 'SH' for shares. 'PRN' for principal amount. Convertible debt securities are reported as 'PRN'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "option_type", "type": "Literal['call', 'put']", "description": "Defined when the holdings being reported are put or call options. Only long positions are reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "voting_authority_sole", "type": "int", "description": "The number of shares for which the Manager exercises sole voting authority (none).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "voting_authority_shared", "type": "int", "description": "The number of shares for which the Manager exercises a defined shared voting authority (none).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "voting_authority_other", "type": "int", "description": "The number of shares for which the Manager exercises other shared voting authority (none).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "principal_amount", "type": "int", "description": "The total number of shares of the class of security or the principal amount of such class. Only long positions are reported", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "value", "type": "int", "description": "The fair market value of the holding of the particular class of security. The value reported for options is the fair market value of the underlying security with respect to the number of shares controlled. Values are rounded to the nearest US dollar and use the closing price of the last trading day of the calendar year or quarter.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "sec": [ @@ -18200,7 +20436,8 @@ "type": "float", "description": "The weight of the security relative to the market value of all securities in the filing , as a normalized percent.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -18220,7 +20457,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -18237,14 +20475,16 @@ "type": "str", "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "source", "type": "Literal['iex', 'bats', 'bats_delayed', 'utp_delayed', 'cta_a_delayed', 'cta_b_delayed', 'intrinio_mx', 'intrinio_mx_plus', 'delayed_sip']", "description": "Source of the data.", "default": "iex", - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -18285,231 +20525,264 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "asset_type", "type": "str", "description": "Type of asset - i.e, stock, ETF, etc.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the company or asset.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The name or symbol of the venue where the data is from.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid", "type": "float", "description": "Price of the top bid order.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_size", "type": "int", "description": "This represents the number of round lot orders at the given price. The normal round lot size is 100 shares. A size of 2 means there are 200 shares available at the given price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_exchange", "type": "str", "description": "The specific trading venue where the purchase order was placed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask", "type": "float", "description": "Price of the top ask order.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_size", "type": "int", "description": "This represents the number of round lot orders at the given price. The normal round lot size is 100 shares. A size of 2 means there are 200 shares available at the given price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_exchange", "type": "str", "description": "The specific trading venue where the sale order was placed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quote_conditions", "type": "Union[str, int, List[str], List[int]]", "description": "Conditions or condition codes applicable to the quote.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quote_indicators", "type": "Union[str, int, List[str], List[int]]", "description": "Indicators or indicator codes applicable to the participant quote related to the price bands for the issue, or the affect the quote has on the NBBO.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sales_conditions", "type": "Union[str, int, List[str], List[int]]", "description": "Conditions or condition codes applicable to the sale.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sequence_number", "type": "int", "description": "The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_center", "type": "str", "description": "The ID of the UTP participant that originated the message.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "participant_timestamp", "type": "datetime", "description": "Timestamp for when the quote was generated by the exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trf_timestamp", "type": "datetime", "description": "Timestamp for when the TRF (Trade Reporting Facility) received the message.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sip_timestamp", "type": "datetime", "description": "Timestamp for when the SIP (Security Information Processor) received the message from the exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_price", "type": "float", "description": "Price of the last trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_tick", "type": "str", "description": "Whether the last sale was an up or down tick.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_size", "type": "int", "description": "Size of the last trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_timestamp", "type": "datetime", "description": "Date and Time when the last price was recorded.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "Union[int, float]", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_volume", "type": "Union[int, float]", "description": "Volume of shares exchanged during the trading day on the specific exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_close", "type": "float", "description": "The previous close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in price from previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in price as a normalized percentage.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The one year high (52W High).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The one year low (52W Low).", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -18518,56 +20791,64 @@ "type": "float", "description": "50 day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_avg200", "type": "float", "description": "200 day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume", "type": "int", "description": "Average volume over the last 10 trading days.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "float", "description": "Market cap of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_outstanding", "type": "int", "description": "Number of shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps", "type": "float", "description": "Earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe", "type": "float", "description": "Price earnings ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_announcement", "type": "datetime", "description": "Upcoming earnings announcement date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -18576,28 +20857,32 @@ "type": "bool", "description": "Whether or not the current trade is from a darkpool.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "str", "description": "Source of the Intrinio data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated_on", "type": "datetime", "description": "Date and Time when the data was last updated.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "security", "type": "IntrinioSecurity", "description": "Security details related to the quote.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -18606,35 +20891,40 @@ "type": "float", "description": "50-day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma_200d", "type": "float", "description": "200-day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_average", "type": "float", "description": "Average daily trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_average_10d", "type": "float", "description": "Average daily trading volume in the last 10 days.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency of the price.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -18654,7 +20944,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -18670,42 +20961,48 @@ "type": "int", "description": "The number of data entries to return. Up to ten million records will be returned. Pagination occurs in groups of 50,000. Remaining limit values will always return 50,000 more records unless it is the last page. High volume tickers will require multiple max requests for a single day's NBBO records. Expect stocks, like SPY, to approach 1GB in size, per day, as a raw CSV. Splitting large requests into chunks is recommended for full-day requests of high-volume symbols.", "default": 50000, - "optional": true + "optional": true, + "choices": null }, { "name": "date", "type": "Union[date, str]", "description": "A specific date to get data for. Use bracketed the timestamp parameters to specify exact time ranges.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timestamp_lt", "type": "Union[datetime, str]", "description": "Query by datetime, less than. Either a date with the format 'YYYY-MM-DD' or a TZ-aware timestamp string, 'YYYY-MM-DDTH:M:S.000000000-04:00'. Include all nanoseconds and the 'T' between the day and hour.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timestamp_gt", "type": "Union[datetime, str]", "description": "Query by datetime, greater than. Either a date with the format 'YYYY-MM-DD' or a TZ-aware timestamp string, 'YYYY-MM-DDTH:M:S.000000000-04:00'. Include all nanoseconds and the 'T' between the day and hour.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timestamp_lte", "type": "Union[datetime, str]", "description": "Query by datetime, less than or equal to. Either a date with the format 'YYYY-MM-DD' or a TZ-aware timestamp string, 'YYYY-MM-DDTH:M:S.000000000-04:00'. Include all nanoseconds and the 'T' between the day and hour.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timestamp_gte", "type": "Union[datetime, str]", "description": "Query by datetime, greater than or equal to. Either a date with the format 'YYYY-MM-DD' or a TZ-aware timestamp string, 'YYYY-MM-DDTH:M:S.000000000-04:00'. Include all nanoseconds and the 'T' between the day and hour.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -18745,42 +21042,48 @@ "type": "str", "description": "The exchange ID for the ask.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ask", "type": "float", "description": "The last ask price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "ask_size", "type": "int", "description": "The ask size. This represents the number of round lot orders at the given ask price. The normal round lot size is 100 shares. An ask size of 2 means there are 200 shares available to purchase at the given ask price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "bid_size", "type": "int", "description": "The bid size in round lots.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "bid", "type": "float", "description": "The last bid price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "bid_exchange", "type": "str", "description": "The exchange ID for the bid.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "polygon": [ @@ -18789,49 +21092,56 @@ "type": "str", "description": "The exchange tape.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "conditions", "type": "Union[str, List[int], List[str]]", "description": "A list of condition codes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "indicators", "type": "List[int]", "description": "A list of indicator codes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sequence_num", "type": "int", "description": "The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "participant_timestamp", "type": "datetime", "description": "The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the quote was actually generated at the exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sip_timestamp", "type": "datetime", "description": "The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this quote from the exchange which produced it.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trf_timestamp", "type": "datetime", "description": "The nanosecond accuracy TRF (Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this quote.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -18851,28 +21161,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "interval", "type": "str", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -18888,7 +21202,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -18897,42 +21212,48 @@ "type": "str", "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "interval", "type": "Literal['1m', '5m', '10m', '15m', '30m', '60m', '1h', '1d', '1W', '1M', '1Q', '1Y']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "start_time", "type": "datetime.time", "description": "Return intervals starting at the specified time on the `start_date` formatted as 'HH:MM:SS'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_time", "type": "datetime.time", "description": "Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timezone", "type": "str", "description": "Timezone of the data, in the IANA format (Continent/City).", "default": "America/New_York", - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "Literal['realtime', 'delayed', 'nasdaq_basic']", "description": "The source of the data.", "default": "realtime", - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -18941,35 +21262,40 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "adjustment", "type": "Literal['splits_only', 'unadjusted']", "description": "The adjustment factor to apply. Default is splits only.", "default": "splits_only", - "optional": true + "optional": true, + "choices": null }, { "name": "extended_hours", "type": "bool", "description": "Include Pre and Post market data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -18978,7 +21304,8 @@ "type": "Literal['1d', '1W', '1M', '1Y']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -18987,42 +21314,48 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "extended_hours", "type": "bool", "description": "Include Pre and Post market data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "include_actions", "type": "bool", "description": "Include dividends and stock splits in results.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "adjustment", "type": "Literal['splits_only', 'splits_and_dividends']", "description": "The adjustment factor to apply. Default is splits only.", "default": "splits_only", - "optional": true + "optional": true, + "choices": null }, { "name": "adjusted", "type": "bool", "description": "This field is deprecated (4.1.5) and will be removed in a future version. Use 'adjustment' set as 'splits_and_dividends' instead.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "prepost", "type": "bool", "description": "This field is deprecated (4.1.5) and will be removed in a future version. Use 'extended_hours' as True instead.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -19062,49 +21395,56 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "Union[int, float]", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "vwap", "type": "float", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -19113,28 +21453,32 @@ "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unadjusted_volume", "type": "float", "description": "Unadjusted volume of the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -19143,112 +21487,128 @@ "type": "float", "description": "Average trade price of an individual equity during the interval.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price of the symbol from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Percent change in the price of the symbol from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_open", "type": "float", "description": "The adjusted open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_high", "type": "float", "description": "The adjusted high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_low", "type": "float", "description": "The adjusted low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_close", "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_volume", "type": "float", "description": "The adjusted volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fifty_two_week_high", "type": "float", "description": "52 week high price for the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fifty_two_week_low", "type": "float", "description": "52 week low price for the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "factor", "type": "float", "description": "factor by which to multiply equity prices before this date, in order to calculate historically-adjusted equity prices.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount, if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_time", "type": "datetime", "description": "The timestamp that represents the end of the interval span.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interval", "type": "str", "description": "The data time frequency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intra_period", "type": "bool", "description": "If true, the equity price represents an unfinished period (be it day, week, quarter, month, or year), meaning that the close price is the latest price available, not the official close price for the period", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -19257,7 +21617,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -19266,49 +21627,56 @@ "type": "float", "description": "The adjusted open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_high", "type": "float", "description": "The adjusted high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_low", "type": "float", "description": "The adjusted low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_close", "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_volume", "type": "float", "description": "The adjusted volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount, if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -19317,14 +21685,16 @@ "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount (split-adjusted), if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -19344,7 +21714,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -19392,119 +21763,136 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_day", "type": "float", "description": "One-day return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "wtd", "type": "float", "description": "Week to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_week", "type": "float", "description": "One-week return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mtd", "type": "float", "description": "Month to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_month", "type": "float", "description": "One-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "qtd", "type": "float", "description": "Quarter to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_month", "type": "float", "description": "Three-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "six_month", "type": "float", "description": "Six-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ytd", "type": "float", "description": "Year to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_year", "type": "float", "description": "One-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "two_year", "type": "float", "description": "Two-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_year", "type": "float", "description": "Three-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "four_year", "type": "float", "description": "Four-year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "five_year", "type": "float", "description": "Five-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ten_year", "type": "float", "description": "Ten-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "max", "type": "float", "description": "Return from the beginning of the time series.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -19513,7 +21901,8 @@ "type": "str", "description": "The ticker symbol.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -19533,7 +21922,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -19549,21 +21939,24 @@ "type": "int", "description": "Limit the number of reports to parse, from most recent. Approximately 24 reports per year, going back to 2009.", "default": 24, - "optional": true + "optional": true, + "choices": null }, { "name": "skip_reports", "type": "int", "description": "Skip N number of reports from current. A value of 1 will skip the most recent report.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache for the request, default is True. Each reporting period is a separate URL, new reports will be added to the cache.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -19603,42 +21996,48 @@ "type": "date", "description": "The settlement date of the fail.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "CUSIP of the Security.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quantity", "type": "int", "description": "The number of fails on that settlement date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price", "type": "float", "description": "The price at the previous closing price from the settlement date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "description", "type": "str", "description": "The description of the Security.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "sec": [] @@ -19659,21 +22058,24 @@ "type": "str", "description": "Search query.", "default": "", - "optional": true + "optional": true, + "choices": null }, { "name": "is_symbol", "type": "bool", "description": "Whether to search by ticker symbol.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether to use the cache or not.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -19689,14 +22091,16 @@ "type": "bool", "description": "When true, return companies that are actively traded (having stock prices within the past 14 days). When false, return companies that are not actively traded or never have been traded.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 10000, - "optional": true + "optional": true, + "choices": null } ], "sec": [ @@ -19705,7 +22109,8 @@ "type": "bool", "description": "Whether to direct the search to the list of mutual funds and ETFs.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -19745,14 +22150,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -19761,21 +22168,24 @@ "type": "str", "description": "", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "lei", "type": "str", "description": "The Legal Entity Identifier (LEI) of the company.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "intrinio_id", "type": "str", "description": "The Intrinio ID of the company.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "sec": [ @@ -19784,7 +22194,8 @@ "type": "str", "description": "Central Index Key", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -19813,119 +22224,136 @@ "type": "int", "description": "Filter by market cap greater than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mktcap_max", "type": "int", "description": "Filter by market cap less than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_min", "type": "float", "description": "Filter by price greater than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price_max", "type": "float", "description": "Filter by price less than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta_min", "type": "float", "description": "Filter by a beta greater than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta_max", "type": "float", "description": "Filter by a beta less than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_min", "type": "int", "description": "Filter by volume greater than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_max", "type": "int", "description": "Filter by volume less than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_min", "type": "float", "description": "Filter by dividend amount greater than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_max", "type": "float", "description": "Filter by dividend amount less than this value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_etf", "type": "bool", "description": "If true, returns only ETFs.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "is_active", "type": "bool", "description": "If false, returns only inactive tickers.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "Literal['Consumer Cyclical', 'Energy', 'Technology', 'Industrials', 'Financial Services', 'Basic Materials', 'Communication Services', 'Consumer Defensive', 'Healthcare', 'Real Estate', 'Utilities', 'Industrial Goods', 'Financial', 'Services', 'Conglomerates']", "description": "Filter by sector.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "Filter by industry.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "Filter by country, as a two-letter country code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "Literal['amex', 'ams', 'ase', 'asx', 'ath', 'bme', 'bru', 'bud', 'bue', 'cai', 'cnq', 'cph', 'dfm', 'doh', 'etf', 'euronext', 'hel', 'hkse', 'ice', 'iob', 'ist', 'jkt', 'jnb', 'jpx', 'kls', 'koe', 'ksc', 'kuw', 'lse', 'mex', 'mutual_fund', 'nasdaq', 'neo', 'nse', 'nyse', 'nze', 'osl', 'otc', 'pnk', 'pra', 'ris', 'sao', 'sau', 'set', 'sgo', 'shh', 'shz', 'six', 'sto', 'tai', 'tlv', 'tsx', 'two', 'vie', 'wse', 'xetra']", "description": "Filter by exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "Limit the number of results to return.", "default": 50000, - "optional": true + "optional": true, + "choices": null } ] }, @@ -19965,14 +22393,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the company.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [ @@ -19981,84 +22411,96 @@ "type": "int", "description": "The market cap of ticker.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "str", "description": "The sector the ticker belongs to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "The industry ticker belongs to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "The beta of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price", "type": "float", "description": "The current price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_annual_dividend", "type": "float", "description": "The last annual amount dividend paid.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The current trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange code the asset trades on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_name", "type": "str", "description": "The full name of the primary exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The two-letter country abbreviation where the head office is located.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_etf", "type": "Literal[True, False]", "description": "Whether the ticker is an ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "actively_trading", "type": "Literal[True, False]", "description": "Whether the ETF is actively trading.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -20078,7 +22520,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -20128,266 +22571,304 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Common name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "str", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "CUSIP identifier for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "International Securities Identification Number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "lei", "type": "str", "description": "Legal Entity Identifier assigned to the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "legal_name", "type": "str", "description": "Official legal name of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stock_exchange", "type": "str", "description": "Stock exchange where the company is traded.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sic", "type": "int", "description": "Standard Industrial Classification code for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "short_description", "type": "str", "description": "Short description of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "long_description", "type": "str", "description": "Long description of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ceo", "type": "str", "description": "Chief Executive Officer of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "company_url", "type": "str", "description": "URL of the company's website.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_address", "type": "str", "description": "Address of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mailing_address", "type": "str", "description": "Mailing address of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_phone_no", "type": "str", "description": "Phone number of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_address1", "type": "str", "description": "Address of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_address2", "type": "str", "description": "Address of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_address_city", "type": "str", "description": "City of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_address_postal_code", "type": "str", "description": "Zip code of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_state", "type": "str", "description": "State of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hq_country", "type": "str", "description": "Country of the company's headquarters.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inc_state", "type": "str", "description": "State in which the company is incorporated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inc_country", "type": "str", "description": "Country in which the company is incorporated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "employees", "type": "int", "description": "Number of employees working for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "entity_legal_form", "type": "str", "description": "Legal form of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "entity_status", "type": "str", "description": "Status of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "latest_filing_date", "type": "date", "description": "Date of the company's latest filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "irs_number", "type": "str", "description": "IRS number assigned to the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "str", "description": "Sector in which the company operates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry_category", "type": "str", "description": "Category of industry in which the company operates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry_group", "type": "str", "description": "Group of industry in which the company operates.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "template", "type": "str", "description": "Template used to standardize the company's financial statements.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "standardized_active", "type": "bool", "description": "Whether the company is active or not.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "first_fundamental_date", "type": "date", "description": "Date of the company's first fundamental.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_fundamental_date", "type": "date", "description": "Date of the company's last fundamental.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "first_stock_price_date", "type": "date", "description": "Date of the company's first stock price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_stock_price_date", "type": "date", "description": "Date of the company's last stock price.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -20396,91 +22877,104 @@ "type": "bool", "description": "If the symbol is an ETF.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_actively_trading", "type": "bool", "description": "If the company is actively trading.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_adr", "type": "bool", "description": "If the stock is an ADR.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "is_fund", "type": "bool", "description": "If the company is a fund.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "image", "type": "str", "description": "Image of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency in which the stock is traded.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "int", "description": "Market capitalization of the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_price", "type": "float", "description": "The last traded price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The one-year high of the price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The one-year low of the price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg", "type": "int", "description": "Average daily trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "annualized_dividend_amount", "type": "float", "description": "The annualized dividend payment based on the most recent regular dividend payment.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "Beta of the stock relative to the market.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -20489,14 +22983,16 @@ "type": "str", "description": "Intrinio ID for the company.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "thea_enabled", "type": "bool", "description": "Whether the company has been enabled for Thea.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -20505,70 +23001,80 @@ "type": "str", "description": "The timezone of the exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issue_type", "type": "str", "description": "The issuance type of the asset.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "The currency in which the asset is traded.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "int", "description": "The market capitalization of the asset.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_outstanding", "type": "int", "description": "The number of listed shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_float", "type": "int", "description": "The number of shares in the public float.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_implied_outstanding", "type": "int", "description": "Implied shares outstanding of common equityassuming the conversion of all convertible subsidiary equity into common.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_short", "type": "int", "description": "The reported number of shares short.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "The dividend yield of the asset, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "The beta of the asset relative to the broad market.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -20597,7 +23103,8 @@ "type": "Literal['amex', 'ams', 'ase', 'asx', 'ath', 'bme', 'bru', 'bud', 'bue', 'cai', 'cnq', 'cph', 'dfm', 'doh', 'etf', 'euronext', 'hel', 'hkse', 'ice', 'iob', 'ist', 'jkt', 'jnb', 'jpx', 'kls', 'koe', 'ksc', 'kuw', 'lse', 'mex', 'mutual_fund', 'nasdaq', 'neo', 'nse', 'nyse', 'nze', 'osl', 'otc', 'pnk', 'pra', 'ris', 'sao', 'sau', 'set', 'sgo', 'shh', 'shz', 'six', 'sto', 'tai', 'tlv', 'tsx', 'two', 'vie', 'wse', 'xetra']", "description": "The market to fetch data for.", "default": "nasdaq", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -20606,7 +23113,8 @@ "type": "Union[Union[date, datetime, str], str]", "description": "The date of the data. Can be a datetime or an ISO datetime string. Historical data appears to go back to mid-June 2022. Example: '2024-03-08T12:15:00+0400'", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [] @@ -20647,63 +23155,72 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_close", "type": "float", "description": "The previous close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "The change in price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "The change in price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -20712,98 +23229,112 @@ "type": "float", "description": "The last price of the stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_price_timestamp", "type": "Union[date, datetime]", "description": "The timestamp of the last price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma50", "type": "float", "description": "The 50-day moving average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma200", "type": "float", "description": "The 200-day moving average.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The 52-week high.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The 52-week low.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg", "type": "int", "description": "Average daily trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "int", "description": "Market cap of the stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "eps", "type": "float", "description": "Earnings per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "pe", "type": "float", "description": "Price to earnings ratio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_outstanding", "type": "int", "description": "Number of shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "The company name associated with the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange of the stock.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "earnings_date", "type": "Union[date, datetime]", "description": "The upcoming earnings announcement date.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -20812,70 +23343,80 @@ "type": "float", "description": "The last trade price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_size", "type": "int", "description": "The last trade size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_volume", "type": "int", "description": "The last trade volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_timestamp", "type": "datetime", "description": "The timestamp of the last trade.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_size", "type": "int", "description": "The size of the last bid price. Bid price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_price", "type": "float", "description": "The last bid price. Bid price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_price", "type": "float", "description": "The last ask price. Ask price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_size", "type": "int", "description": "The size of the last ask price. Ask price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_bid_timestamp", "type": "datetime", "description": "The timestamp of the last bid price. Bid price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_ask_timestamp", "type": "datetime", "description": "The timestamp of the last ask price. Ask price and size is not always available.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -20884,119 +23425,136 @@ "type": "float", "description": "The volume weighted average price of the stock on the current trading day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_open", "type": "float", "description": "The previous trading session opening price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_high", "type": "float", "description": "The previous trading session high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_low", "type": "float", "description": "The previous trading session low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_volume", "type": "float", "description": "The previous trading session volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_vwap", "type": "float", "description": "The previous trading session VWAP.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_updated", "type": "datetime", "description": "The last time the data was updated.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "bid", "type": "float", "description": "The current bid price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_size", "type": "int", "description": "The current bid size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_size", "type": "int", "description": "The current ask size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask", "type": "float", "description": "The current ask price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quote_timestamp", "type": "datetime", "description": "The timestamp of the last quote.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_price", "type": "float", "description": "The last trade price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_size", "type": "int", "description": "The last trade size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_conditions", "type": "List[int]", "description": "The last trade condition codes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_exchange", "type": "int", "description": "The last trade exchange ID code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_trade_timestamp", "type": "datetime", "description": "The last trade timestamp.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -21016,7 +23574,8 @@ "type": "str", "description": "Search query.", "default": "", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -21032,14 +23591,16 @@ "type": "Literal['AMEX', 'NYSE', 'NASDAQ', 'ETF', 'TSX', 'EURONEXT']", "description": "The exchange code the ETF trades on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_active", "type": "Literal[True, False]", "description": "Whether the ETF is actively trading.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -21048,7 +23609,8 @@ "type": "Literal['xnas', 'arcx', 'bats', 'xnys', 'bvmf', 'xshg', 'xshe', 'xhkg', 'xbom', 'xnse', 'xidx', 'tase', 'xkrx', 'xkls', 'xmex', 'xses', 'roco', 'xtai', 'xbkk', 'xist']", "description": "Target a specific exchange by providing the MIC code.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -21088,14 +23650,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.(ETF)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -21104,77 +23668,88 @@ "type": "float", "description": "The market cap of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "str", "description": "The sector of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "The industry of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "The beta of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "price", "type": "float", "description": "The current price of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "last_annual_dividend", "type": "float", "description": "The last annual dividend paid.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "float", "description": "The current trading volume of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange code the ETF trades on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_name", "type": "str", "description": "The full name of the exchange the ETF trades on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The country the ETF is registered in.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "actively_trading", "type": "Literal[True, False]", "description": "Whether the ETF is actively trading.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -21183,42 +23758,48 @@ "type": "str", "description": "The exchange MIC code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "figi_ticker", "type": "str", "description": "The OpenFIGI ticker.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ric", "type": "str", "description": "The Reuters Instrument Code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The International Securities Identification Number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sedol", "type": "str", "description": "The Stock Exchange Daily Official List.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intrinio_id", "type": "str", "description": "The unique Intrinio ID for the security.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -21238,28 +23819,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "interval", "type": "str", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -21275,7 +23860,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -21284,42 +23870,48 @@ "type": "str", "description": "A Security identifier (Ticker, FIGI, ISIN, CUSIP, Intrinio ID).", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "interval", "type": "Literal['1m', '5m', '10m', '15m', '30m', '60m', '1h', '1d', '1W', '1M', '1Q', '1Y']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "start_time", "type": "datetime.time", "description": "Return intervals starting at the specified time on the `start_date` formatted as 'HH:MM:SS'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_time", "type": "datetime.time", "description": "Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "timezone", "type": "str", "description": "Timezone of the data, in the IANA format (Continent/City).", "default": "America/New_York", - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "Literal['realtime', 'delayed', 'nasdaq_basic']", "description": "The source of the data.", "default": "realtime", - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -21328,35 +23920,40 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "adjustment", "type": "Literal['splits_only', 'unadjusted']", "description": "The adjustment factor to apply. Default is splits only.", "default": "splits_only", - "optional": true + "optional": true, + "choices": null }, { "name": "extended_hours", "type": "bool", "description": "Include Pre and Post market data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -21365,7 +23962,8 @@ "type": "Literal['1d', '1W', '1M', '1Y']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -21374,42 +23972,48 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "extended_hours", "type": "bool", "description": "Include Pre and Post market data.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "include_actions", "type": "bool", "description": "Include dividends and stock splits in results.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "adjustment", "type": "Literal['splits_only', 'splits_and_dividends']", "description": "The adjustment factor to apply. Default is splits only.", "default": "splits_only", - "optional": true + "optional": true, + "choices": null }, { "name": "adjusted", "type": "bool", "description": "This field is deprecated (4.1.5) and will be removed in a future version. Use 'adjustment' set as 'splits_and_dividends' instead.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "prepost", "type": "bool", "description": "This field is deprecated (4.1.5) and will be removed in a future version. Use 'extended_hours' as True instead.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -21449,49 +24053,56 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "float", "description": "The open price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "high", "type": "float", "description": "The high price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "low", "type": "float", "description": "The low price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "close", "type": "float", "description": "The close price.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "volume", "type": "Union[int, float]", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "vwap", "type": "float", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -21500,28 +24111,32 @@ "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unadjusted_volume", "type": "float", "description": "Unadjusted volume of the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -21530,112 +24145,128 @@ "type": "float", "description": "Average trade price of an individual equity during the interval.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price of the symbol from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Percent change in the price of the symbol from the previous day.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_open", "type": "float", "description": "The adjusted open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_high", "type": "float", "description": "The adjusted high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_low", "type": "float", "description": "The adjusted low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_close", "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_volume", "type": "float", "description": "The adjusted volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fifty_two_week_high", "type": "float", "description": "52 week high price for the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fifty_two_week_low", "type": "float", "description": "52 week low price for the symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "factor", "type": "float", "description": "factor by which to multiply equity prices before this date, in order to calculate historically-adjusted equity prices.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount, if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_time", "type": "datetime", "description": "The timestamp that represents the end of the interval span.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interval", "type": "str", "description": "The data time frequency.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intra_period", "type": "bool", "description": "If true, the equity price represents an unfinished period (be it day, week, quarter, month, or year), meaning that the close price is the latest price available, not the official close price for the period", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -21644,7 +24275,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -21653,49 +24285,56 @@ "type": "float", "description": "The adjusted open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_high", "type": "float", "description": "The adjusted high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_low", "type": "float", "description": "The adjusted low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_close", "type": "float", "description": "The adjusted close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "adj_volume", "type": "float", "description": "The adjusted volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "split_ratio", "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount, if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -21704,14 +24343,16 @@ "type": "float", "description": "Ratio of the equity split, if a split occurred.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend", "type": "float", "description": "Dividend amount (split-adjusted), if a dividend was paid.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -21731,7 +24372,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. (ETF) Multiple items allowed for provider(s): fmp, intrinio, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -21781,28 +24423,32 @@ "type": "str", "description": "Symbol representing the entity requested in the data. (ETF)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the ETF.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "description", "type": "str", "description": "Description of the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inception_date", "type": "str", "description": "Inception date of the ETF.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [ @@ -21811,84 +24457,96 @@ "type": "str", "description": "Company of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "CUSIP of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "ISIN of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "domicile", "type": "str", "description": "Domicile of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_class", "type": "str", "description": "Asset class of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "aum", "type": "float", "description": "Assets under management.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "nav", "type": "float", "description": "Net asset value of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "nav_currency", "type": "str", "description": "Currency of the ETF's net asset value.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "expense_ratio", "type": "float", "description": "The expense ratio, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holdings_count", "type": "int", "description": "Number of holdings.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "avg_volume", "type": "float", "description": "Average daily trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "website", "type": "str", "description": "Website of the issuer.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -21897,798 +24555,912 @@ "type": "date", "description": "The date on which the Exchange Traded Product (ETP) or share class of the ETP is listed on a specific exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "data_change_date", "type": "date", "description": "The last date on which there was a change in a classifications data field for this ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "etn_maturity_date", "type": "date", "description": "If the product is an ETN, this field identifies the maturity date for the ETN.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_listed", "type": "bool", "description": "If true, the ETF is still listed on an exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close_date", "type": "date", "description": "The date on which the ETF was de-listed if it is no longer listed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange Market Identifier Code (MIC).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "International Securities Identification Number (ISIN).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ric", "type": "str", "description": "Reuters Instrument Code (RIC).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sedol", "type": "str", "description": "Stock Exchange Daily Official List (SEDOL).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "figi_symbol", "type": "str", "description": "Financial Instrument Global Identifier (FIGI) symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_class_figi", "type": "str", "description": "Financial Instrument Global Identifier (FIGI).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firstbridge_id", "type": "str", "description": "The FirstBridge unique identifier for the Exchange Traded Fund (ETF).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "firstbridge_parent_id", "type": "str", "description": "The FirstBridge unique identifier for the parent Exchange Traded Fund (ETF), if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intrinio_id", "type": "str", "description": "Intrinio unique identifier for the security.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "intraday_nav_symbol", "type": "str", "description": "Intraday Net Asset Value (NAV) symbol.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "primary_symbol", "type": "str", "description": "The primary ticker field is used for Exchange Traded Products (ETPs) that have multiple listings and share classes. If an ETP has multiple listings or share classes, the same primary ticker is assigned to all the listings and share classes.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "etp_structure_type", "type": "str", "description": "Classifies Exchange Traded Products (ETPs) into very broad categories based on its legal structure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "legal_structure", "type": "str", "description": "Legal structure of the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuer", "type": "str", "description": "Issuer of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "etn_issuing_bank", "type": "str", "description": "If the product is an Exchange Traded Note (ETN), this field identifies the issuing bank.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fund_family", "type": "str", "description": "This field identifies the fund family to which the ETF belongs, as categorized by the ETF Sponsor.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "investment_style", "type": "str", "description": "Investment style of the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "derivatives_based", "type": "str", "description": "This field is populated if the ETF holds either listed or over-the-counter derivatives in its portfolio.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "income_category", "type": "str", "description": "Identifies if an Exchange Traded Fund (ETF) falls into a category that is specifically designed to provide a high yield or income", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_class", "type": "str", "description": "Captures the underlying nature of the securities in the Exchanged Traded Product (ETP).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_asset_types", "type": "str", "description": "If 'asset_class' field is classified as 'Other Asset Types' this field captures the specific category of the underlying assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "single_category_designation", "type": "str", "description": "This categorization is created for those users who want every ETF to be 'forced' into a single bucket, so that the assets for all categories will always sum to the total market.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta_type", "type": "str", "description": "This field identifies whether an ETF provides 'Traditional' beta exposure or 'Smart' beta exposure. ETFs that are active (i.e. non-indexed), leveraged / inverse or have a proprietary quant model (i.e. that don't provide indexed exposure to a targeted factor) are classified separately.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta_details", "type": "str", "description": "This field provides further detail within the traditional and smart beta categories.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap_range", "type": "str", "description": "Equity ETFs are classified as falling into categories based on the description of their investment strategy in the prospectus. Examples ('Mega Cap', 'Large Cap', 'Mid Cap', etc.)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap_weighting_type", "type": "str", "description": "For ETFs that take the value 'Market Cap Weighted' in the 'index_weighting_scheme' field, this field provides detail on the market cap weighting type.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_weighting_scheme", "type": "str", "description": "For ETFs that track an underlying index, this field provides detail on the index weighting type.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_linked", "type": "str", "description": "This field identifies whether an ETF is index linked or active.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_name", "type": "str", "description": "This field identifies the name of the underlying index tracked by the ETF, if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_symbol", "type": "str", "description": "This field identifies the OpenFIGI ticker for the Index underlying the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "parent_index", "type": "str", "description": "This field identifies the name of the parent index, which represents the broader universe from which the index underlying the ETF is created, if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_family", "type": "str", "description": "This field identifies the index family to which the index underlying the ETF belongs. The index family is represented as categorized by the index provider.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "broader_index_family", "type": "str", "description": "This field identifies the broader index family to which the index underlying the ETF belongs. The broader index family is represented as categorized by the index provider.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_provider", "type": "str", "description": "This field identifies the Index provider for the index underlying the ETF, if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_provider_code", "type": "str", "description": "This field provides the First Bridge code for each Index provider, corresponding to the index underlying the ETF if applicable.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "replication_structure", "type": "str", "description": "The replication structure of the Exchange Traded Product (ETP).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "growth_value_tilt", "type": "str", "description": "Classifies equity ETFs as either 'Growth' or Value' based on the stated style tilt in the ETF prospectus. Equity ETFs that do not have a stated style tilt are classified as 'Core / Blend'.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "growth_type", "type": "str", "description": "For ETFs that are classified as 'Growth' in 'growth_value_tilt', this field further identifies those where the stocks in the ETF are both selected and weighted based on their growth (style factor) scores.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value_type", "type": "str", "description": "For ETFs that are classified as 'Value' in 'growth_value_tilt', this field further identifies those where the stocks in the ETF are both selected and weighted based on their value (style factor) scores.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sector", "type": "str", "description": "For equity ETFs that aim to provide targeted exposure to a sector or industry, this field identifies the Sector that it provides the exposure to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry", "type": "str", "description": "For equity ETFs that aim to provide targeted exposure to an industry, this field identifies the Industry that it provides the exposure to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "industry_group", "type": "str", "description": "For equity ETFs that aim to provide targeted exposure to a sub-industry, this field identifies the sub-Industry that it provides the exposure to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cross_sector_theme", "type": "str", "description": "For equity ETFs that aim to provide targeted exposure to a specific investment theme that cuts across GICS sectors, this field identifies the specific cross-sector theme. Examples ('Agri-business', 'Natural Resources', 'Green Investing', etc.)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "natural_resources_type", "type": "str", "description": "For ETFs that are classified as 'Natural Resources' in the 'cross_sector_theme' field, this field provides further detail on the type of Natural Resources exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "us_or_excludes_us", "type": "str", "description": "Takes the value of 'Domestic' for US exposure, 'International' for non-US exposure and 'Global' for exposure that includes all regions including the US.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "developed_emerging", "type": "str", "description": "This field identifies the stage of development of the markets that the ETF provides exposure to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "specialized_region", "type": "str", "description": "This field is populated if the ETF provides targeted exposure to a specific type of geography-based grouping that does not fall into a specific country or continent grouping. Examples ('BRIC', 'Chindia', etc.)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "continent", "type": "str", "description": "This field is populated if the ETF provides targeted exposure to a specific continent or country within that Continent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "latin_america_sub_group", "type": "str", "description": "For ETFs that are classified as 'Latin America' in the 'continent' field, this field provides further detail on the type of regional exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "europe_sub_group", "type": "str", "description": "For ETFs that are classified as 'Europe' in the 'continent' field, this field provides further detail on the type of regional exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asia_sub_group", "type": "str", "description": "For ETFs that are classified as 'Asia' in the 'continent' field, this field provides further detail on the type of regional exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "specific_country", "type": "str", "description": "This field is populated if the ETF provides targeted exposure to a specific country.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "china_listing_location", "type": "str", "description": "For ETFs that are classified as 'China' in the 'country' field, this field provides further detail on the type of exposure in the underlying securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "us_state", "type": "str", "description": "Takes the value of a US state if the ETF provides targeted exposure to the municipal bonds or equities of companies.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "real_estate", "type": "str", "description": "For ETFs that provide targeted real estate exposure, this field is populated if the ETF provides targeted exposure to a specific segment of the real estate market.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fundamental_weighting_type", "type": "str", "description": "For ETFs that take the value 'Fundamental Weighted' in the 'index_weighting_scheme' field, this field provides detail on the fundamental weighting methodology.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_weighting_type", "type": "str", "description": "For ETFs that take the value 'Dividend Weighted' in the 'index_weighting_scheme' field, this field provides detail on the dividend weighting methodology.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bond_type", "type": "str", "description": "For ETFs where 'asset_class_type' is 'Bonds', this field provides detail on the type of bonds held in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "government_bond_types", "type": "str", "description": "For bond ETFs that take the value 'Treasury & Government' in 'bond_type', this field provides detail on the exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "municipal_bond_region", "type": "str", "description": "For bond ETFs that take the value 'Municipal' in 'bond_type', this field provides additional detail on the geographic exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "municipal_vrdo", "type": "bool", "description": "For bond ETFs that take the value 'Municipal' in 'bond_type', this field identifies those ETFs that specifically provide exposure to Variable Rate Demand Obligations.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mortgage_bond_types", "type": "str", "description": "For bond ETFs that take the value 'Mortgage' in 'bond_type', this field provides additional detail on the type of underlying securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bond_tax_status", "type": "str", "description": "For all US bond ETFs, this field provides additional detail on the tax treatment of the underlying securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "credit_quality", "type": "str", "description": "For all bond ETFs, this field helps to identify if the ETF provides targeted exposure to securities of a specific credit quality range.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "average_maturity", "type": "str", "description": "For all bond ETFs, this field helps to identify if the ETF provides targeted exposure to securities of a specific maturity range.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "specific_maturity_year", "type": "int", "description": "For all bond ETFs that take the value 'Specific Maturity Year' in the 'average_maturity' field, this field specifies the calendar year.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "commodity_types", "type": "str", "description": "For ETFs where 'asset_class_type' is 'Commodities', this field provides detail on the type of commodities held in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "energy_type", "type": "str", "description": "For ETFs where 'commodity_type' is 'Energy', this field provides detail on the type of energy exposure provided by the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "agricultural_type", "type": "str", "description": "For ETFs where 'commodity_type' is 'Agricultural', this field provides detail on the type of agricultural exposure provided by the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "livestock_type", "type": "str", "description": "For ETFs where 'commodity_type' is 'Livestock', this field provides detail on the type of livestock exposure provided by the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "metal_type", "type": "str", "description": "For ETFs where 'commodity_type' is 'Gold & Metals', this field provides detail on the type of exposure provided by the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inverse_leveraged", "type": "str", "description": "This field is populated if the ETF provides inverse or leveraged exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "target_date_multi_asset_type", "type": "str", "description": "For ETFs where 'asset_class_type' is 'Target Date / MultiAsset', this field provides detail on the type of commodities held in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_pair", "type": "str", "description": "This field is populated if the ETF's strategy involves providing exposure to the movements of a currency or involves hedging currency exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "social_environmental_type", "type": "str", "description": "This field is populated if the ETF's strategy involves providing exposure to a specific social or environmental theme.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "clean_energy_type", "type": "str", "description": "This field is populated if the ETF has a value of 'Clean Energy' in the 'social_environmental_type' field.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_type", "type": "str", "description": "This field is populated if the ETF has an intended investment objective of holding dividend-oriented stocks as stated in the prospectus.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "regular_dividend_payor_type", "type": "str", "description": "This field is populated if the ETF has a value of'Dividend - Regular Payors' in the 'dividend_type' field.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "quant_strategies_type", "type": "str", "description": "This field is populated if the ETF has either an index-linked or active strategy that is based on a proprietary quantitative strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_quant_models", "type": "str", "description": "For ETFs where 'quant_strategies_type' is 'Other Quant Model', this field provides the name of the specific proprietary quant model used as the underlying strategy for the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "hedge_fund_type", "type": "str", "description": "For ETFs where 'other_asset_types' is 'Hedge Fund Replication', this field provides detail on the type of hedge fund replication strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "excludes_financials", "type": "bool", "description": "For equity ETFs, identifies those ETFs where the underlying fund holdings will not hold financials stocks, based on the funds intended objective.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "excludes_technology", "type": "bool", "description": "For equity ETFs, identifies those ETFs where the underlying fund holdings will not hold technology stocks, based on the funds intended objective.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_only_nyse_stocks", "type": "bool", "description": "If true, the ETF is an equity ETF and holds only stocks listed on NYSE.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_only_nasdaq_stocks", "type": "bool", "description": "If true, the ETF is an equity ETF and holds only stocks listed on Nasdaq.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_mlp", "type": "bool", "description": "If true, the ETF's investment objective explicitly specifies that it holds MLPs as an intended part of its investment strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_preferred_stock", "type": "bool", "description": "If true, the ETF's investment objective explicitly specifies that it holds preferred stock as an intended part of its investment strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_closed_end_funds", "type": "bool", "description": "If true, the ETF's investment objective explicitly specifies that it holds closed end funds as an intended part of its investment strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "holds_adr", "type": "bool", "description": "If true, he ETF's investment objective explicitly specifies that it holds American Depositary Receipts (ADRs) as an intended part of its investment strategy.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "laddered", "type": "bool", "description": "For bond ETFs, this field identifies those ETFs that specifically hold bonds in a laddered structure, where the bonds are scheduled to mature in an annual, sequential structure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "zero_coupon", "type": "bool", "description": "For bond ETFs, this field identifies those ETFs that specifically hold zero coupon Treasury Bills.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "floating_rate", "type": "bool", "description": "For bond ETFs, this field identifies those ETFs that specifically hold floating rate bonds.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "build_america_bonds", "type": "bool", "description": "For municipal bond ETFs, this field identifies those ETFs that specifically hold Build America Bonds.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dynamic_futures_roll", "type": "bool", "description": "If the product holds futures contracts, this field identifies those products where the roll strategy is dynamic (rather than entirely rules based), so as to minimize roll costs.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_hedged", "type": "bool", "description": "This field is populated if the ETF's strategy involves hedging currency exposure.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "includes_short_exposure", "type": "bool", "description": "This field is populated if the ETF has short exposure in any of its holdings e.g. in a long/short or inverse ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ucits", "type": "bool", "description": "If true, the Exchange Traded Product (ETP) is Undertakings for the Collective Investment in Transferable Securities (UCITS) compliant", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "registered_countries", "type": "str", "description": "The list of countries where the ETF is legally registered for sale. This may differ from where the ETF is domiciled or traded, particularly in Europe.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuer_country", "type": "str", "description": "2 letter ISO country code for the country where the issuer is located.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "domicile", "type": "str", "description": "2 letter ISO country code for the country where the ETP is domiciled.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "listing_country", "type": "str", "description": "2 letter ISO country code for the country of the primary listing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "listing_region", "type": "str", "description": "Geographic region in the country of the primary listing falls.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bond_currency_denomination", "type": "str", "description": "For all bond ETFs, this field provides additional detail on the currency denomination of the underlying securities.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "base_currency", "type": "str", "description": "Base currency in which NAV is reported.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "listing_currency", "type": "str", "description": "Listing currency of the Exchange Traded Product (ETP) in which it is traded. Reported using the 3-digit ISO currency code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "number_of_holdings", "type": "int", "description": "The number of holdings in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_end_assets", "type": "float", "description": "Net assets in millions of dollars as of the most recent month end.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "net_expense_ratio", "type": "float", "description": "Gross expense net of Fee Waivers, as a percentage of net assets as published by the ETF issuer.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "etf_portfolio_turnover", "type": "float", "description": "The percentage of positions turned over in the last 12 months.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -22697,217 +25469,248 @@ "type": "str", "description": "The legal type of fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fund_family", "type": "str", "description": "The fund family.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "category", "type": "str", "description": "The fund category.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange", "type": "str", "description": "The exchange the fund is listed on.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_timezone", "type": "str", "description": "The timezone of the exchange.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "The currency in which the fund is listed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "nav_price", "type": "float", "description": "The net asset value per unit of the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "total_assets", "type": "int", "description": "The total value of assets held by the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "trailing_pe", "type": "float", "description": "The trailing twelve month P/E ratio of the fund's assets.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield", "type": "float", "description": "The dividend yield of the fund, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_rate_ttm", "type": "float", "description": "The trailing twelve month annual dividend rate of the fund, in currency units.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "dividend_yield_ttm", "type": "float", "description": "The trailing twelve month annual dividend yield of the fund, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The fifty-two week high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The fifty-two week low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma_50d", "type": "float", "description": "50-day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ma_200d", "type": "float", "description": "200-day moving average price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_ytd", "type": "float", "description": "The year-to-date return of the fund, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_3y_avg", "type": "float", "description": "The three year average return of the fund, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "return_5y_avg", "type": "float", "description": "The five year average return of the fund, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta_3y_avg", "type": "float", "description": "The three year average beta of the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg", "type": "float", "description": "The average daily trading volume of the fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg_10d", "type": "float", "description": "The average daily trading volume of the fund over the past ten days.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid", "type": "float", "description": "The current bid price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "bid_size", "type": "float", "description": "The current bid size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask", "type": "float", "description": "The current ask price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ask_size", "type": "float", "description": "The current ask size.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "open", "type": "float", "description": "The open price of the most recent trading session.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "float", "description": "The highest price of the most recent trading session.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "float", "description": "The lowest price of the most recent trading session.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume of the most recent trading session.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "prev_close", "type": "float", "description": "The previous closing price.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -22927,7 +25730,8 @@ "type": "str", "description": "Symbol to get data for. (ETF)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -22975,14 +25779,16 @@ "type": "str", "description": "Sector of exposure.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "weight", "type": "float", "description": "Exposure of the ETF to the sector in normalized percentage points.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -23003,7 +25809,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. (ETF) Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -23051,7 +25858,8 @@ "type": "str", "description": "The country of the exposure. Corresponding values are normalized percentage points.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -23072,7 +25880,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -23089,14 +25898,16 @@ "type": "Literal['trailing', 'calendar']", "description": "The type of returns to return, a trailing or calendar window.", "default": "trailing", - "optional": true + "optional": true, + "choices": null }, { "name": "adjustment", "type": "Literal['splits_only', 'splits_and_dividends']", "description": "The adjustment factor, 'splits_only' will return pure price performance.", "default": "splits_and_dividends", - "optional": true + "optional": true, + "choices": null } ] }, @@ -23136,119 +25947,136 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_day", "type": "float", "description": "One-day return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "wtd", "type": "float", "description": "Week to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_week", "type": "float", "description": "One-week return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mtd", "type": "float", "description": "Month to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_month", "type": "float", "description": "One-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "qtd", "type": "float", "description": "Quarter to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_month", "type": "float", "description": "Three-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "six_month", "type": "float", "description": "Six-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ytd", "type": "float", "description": "Year to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_year", "type": "float", "description": "One-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "two_year", "type": "float", "description": "Two-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_year", "type": "float", "description": "Three-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "four_year", "type": "float", "description": "Four-year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "five_year", "type": "float", "description": "Five-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ten_year", "type": "float", "description": "Ten-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "max", "type": "float", "description": "Return from the beginning of the time series.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -23257,7 +26085,8 @@ "type": "str", "description": "The ticker symbol.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "intrinio": [ @@ -23266,105 +26095,120 @@ "type": "float", "description": "Annualized rate of return from inception.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volatility_one_year", "type": "float", "description": "Trailing one-year annualized volatility.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volatility_three_year", "type": "float", "description": "Trailing three-year annualized volatility.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volatility_five_year", "type": "float", "description": "Trailing five-year annualized volatility.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg_30", "type": "float", "description": "The one-month average daily volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg_90", "type": "float", "description": "The three-month average daily volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume_avg_180", "type": "float", "description": "The six-month average daily volume.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "beta", "type": "float", "description": "Beta compared to the S&P 500.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "nav", "type": "float", "description": "Net asset value per share.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_high", "type": "float", "description": "The 52-week high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_low", "type": "float", "description": "The 52-week low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_cap", "type": "float", "description": "The market capitalization.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_outstanding", "type": "int", "description": "The number of shares outstanding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "date", "description": "The date of the data.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -23384,7 +26228,8 @@ "type": "str", "description": "Symbol to get data for. (ETF)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -23400,14 +26245,16 @@ "type": "Union[Union[str, date], str]", "description": "A specific date to get data for. Entering a date will attempt to return the NPORT-P filing for the entered date. This needs to be _exactly_ the date of the filing. Use the holdings_date command/endpoint to find available filing dates for the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "str", "description": "The CIK of the filing entity. Overrides symbol.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -23416,7 +26263,8 @@ "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "sec": [ @@ -23425,14 +26273,16 @@ "type": "Union[Union[str, date], str]", "description": "A specific date to get data for. The date represents the period ending. The date entered will return the closest filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache for the request.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -23472,14 +26322,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data. (ETF)", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the ETF holding.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -23488,147 +26340,168 @@ "type": "str", "description": "The LEI of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "title", "type": "str", "description": "The title of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "The CUSIP of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The ISIN of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "balance", "type": "int", "description": "The balance of the holding, in shares or units.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "units", "type": "Union[str, float]", "description": "The type of units.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "The currency of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "The value of the holding, in dollars.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weight", "type": "float", "description": "The weight of the holding, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payoff_profile", "type": "str", "description": "The payoff profile of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_category", "type": "str", "description": "The asset category of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuer_category", "type": "str", "description": "The issuer category of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The country of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_restricted", "type": "str", "description": "Whether the holding is restricted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fair_value_level", "type": "int", "description": "The fair value level of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_cash_collateral", "type": "str", "description": "Whether the holding is cash collateral.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_non_cash_collateral", "type": "str", "description": "Whether the holding is non-cash collateral.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_loan_by_fund", "type": "str", "description": "Whether the holding is loan by fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "str", "description": "The CIK of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "acceptance_datetime", "type": "str", "description": "The acceptance datetime of the filing.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "Union[date, datetime]", "description": "The date the data was updated.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -23637,126 +26510,144 @@ "type": "str", "description": "The common name for the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "security_type", "type": "str", "description": "The type of instrument for this holding. Examples(Bond='BOND', Equity='EQUI')", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The International Securities Identification Number.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ric", "type": "str", "description": "The Reuters Instrument Code.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sedol", "type": "str", "description": "The Stock Exchange Daily Official List.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "share_class_figi", "type": "str", "description": "The OpenFIGI symbol for the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The country or region of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity_date", "type": "date", "description": "The maturity date for the debt security, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "contract_expiry_date", "type": "date", "description": "Expiry date for the futures contract held, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "coupon", "type": "float", "description": "The coupon rate of the debt security, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "balance", "type": "Union[int, float]", "description": "The number of units of the security held, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unit", "type": "str", "description": "The units of the 'balance' field.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "units_per_share", "type": "float", "description": "Number of units of the security held per share outstanding of the ETF, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "face_value", "type": "float", "description": "The face value of the debt security, if available.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "derivatives_value", "type": "float", "description": "The notional value of derivatives contracts held.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "The market value of the holding, on the 'as_of' date.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weight", "type": "float", "description": "The weight of the holding, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "date", "description": "The 'as_of' date for the holding.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "sec": [ @@ -23765,511 +26656,584 @@ "type": "str", "description": "The LEI of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "The CUSIP of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The ISIN of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "other_id", "type": "str", "description": "Internal identifier for the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "balance", "type": "float", "description": "The balance of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weight", "type": "float", "description": "The weight of the holding in ETF in %.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "value", "type": "float", "description": "The value of the holding in USD.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payoff_profile", "type": "str", "description": "The payoff profile of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "units", "type": "Union[str, float]", "description": "The units of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "The currency of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_category", "type": "str", "description": "The asset category of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuer_category", "type": "str", "description": "The issuer category of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "country", "type": "str", "description": "The country of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_restricted", "type": "str", "description": "Whether the holding is restricted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "fair_value_level", "type": "int", "description": "The fair value level of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_cash_collateral", "type": "str", "description": "Whether the holding is cash collateral.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_non_cash_collateral", "type": "str", "description": "Whether the holding is non-cash collateral.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_loan_by_fund", "type": "str", "description": "Whether the holding is loan by fund.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "loan_value", "type": "float", "description": "The loan value of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "issuer_conditional", "type": "str", "description": "The issuer conditions of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "asset_conditional", "type": "str", "description": "The asset conditions of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity_date", "type": "date", "description": "The maturity date of the debt security.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "coupon_kind", "type": "str", "description": "The type of coupon for the debt security.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_type", "type": "str", "description": "The type of rate for the debt security, floating or fixed.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "annualized_return", "type": "float", "description": "The annualized return on the debt security.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_default", "type": "str", "description": "If the debt security is defaulted.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "in_arrears", "type": "str", "description": "If the debt security is in arrears.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_paid_kind", "type": "str", "description": "If the debt security payments are paid in kind.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "derivative_category", "type": "str", "description": "The derivative category of the holding.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "counterparty", "type": "str", "description": "The counterparty of the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "underlying_name", "type": "str", "description": "The name of the underlying asset associated with the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "option_type", "type": "str", "description": "The type of option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "derivative_payoff", "type": "str", "description": "The payoff profile of the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "expiry_date", "type": "date", "description": "The expiry or termination date of the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exercise_price", "type": "float", "description": "The exercise price of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exercise_currency", "type": "str", "description": "The currency of the option exercise price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "shares_per_contract", "type": "float", "description": "The number of shares per contract.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "delta", "type": "Union[str, float]", "description": "The delta of the option.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_type_rec", "type": "str", "description": "The type of rate for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "receive_currency", "type": "str", "description": "The receive currency of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "upfront_receive", "type": "float", "description": "The upfront amount received of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "floating_rate_index_rec", "type": "str", "description": "The floating rate index for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "floating_rate_spread_rec", "type": "float", "description": "The floating rate spread for reveivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_tenor_rec", "type": "str", "description": "The rate tenor for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_tenor_unit_rec", "type": "Union[int, str]", "description": "The rate tenor unit for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reset_date_rec", "type": "str", "description": "The reset date for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reset_date_unit_rec", "type": "Union[int, str]", "description": "The reset date unit for receivable portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_type_pmnt", "type": "str", "description": "The type of rate for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "payment_currency", "type": "str", "description": "The payment currency of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "upfront_payment", "type": "float", "description": "The upfront amount received of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "floating_rate_index_pmnt", "type": "str", "description": "The floating rate index for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "floating_rate_spread_pmnt", "type": "float", "description": "The floating rate spread for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_tenor_pmnt", "type": "str", "description": "The rate tenor for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "rate_tenor_unit_pmnt", "type": "Union[int, str]", "description": "The rate tenor unit for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reset_date_pmnt", "type": "str", "description": "The reset date for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "reset_date_unit_pmnt", "type": "Union[int, str]", "description": "The reset date unit for payment portion of the swap.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "repo_type", "type": "str", "description": "The type of repo.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_cleared", "type": "str", "description": "If the repo is cleared.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_tri_party", "type": "str", "description": "If the repo is tri party.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "principal_amount", "type": "float", "description": "The principal amount of the repo.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "principal_currency", "type": "str", "description": "The currency of the principal amount.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "collateral_type", "type": "str", "description": "The collateral type of the repo.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "collateral_amount", "type": "float", "description": "The collateral amount of the repo.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "collateral_currency", "type": "str", "description": "The currency of the collateral amount.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_currency", "type": "str", "description": "The currency of the exchange rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "exchange_rate", "type": "float", "description": "The exchange rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_sold", "type": "str", "description": "The currency sold in a Forward Derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_amount_sold", "type": "float", "description": "The amount of currency sold in a Forward Derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_bought", "type": "str", "description": "The currency bought in a Forward Derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency_amount_bought", "type": "float", "description": "The amount of currency bought in a Forward Derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "notional_amount", "type": "float", "description": "The notional amount of the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "notional_currency", "type": "str", "description": "The currency of the derivative's notional amount.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "unrealized_gain", "type": "float", "description": "The unrealized gain or loss on the derivative.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -24289,7 +27253,8 @@ "type": "str", "description": "Symbol to get data for. (ETF)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -24305,7 +27270,8 @@ "type": "str", "description": "The CIK of the filing entity. Overrides symbol.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -24345,7 +27311,8 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fmp": [] @@ -24366,7 +27333,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -24414,119 +27382,136 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_day", "type": "float", "description": "One-day return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "wtd", "type": "float", "description": "Week to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_week", "type": "float", "description": "One-week return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "mtd", "type": "float", "description": "Month to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_month", "type": "float", "description": "One-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "qtd", "type": "float", "description": "Quarter to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_month", "type": "float", "description": "Three-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "six_month", "type": "float", "description": "Six-month return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ytd", "type": "float", "description": "Year to date return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "one_year", "type": "float", "description": "One-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "two_year", "type": "float", "description": "Two-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "three_year", "type": "float", "description": "Three-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "four_year", "type": "float", "description": "Four-year", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "five_year", "type": "float", "description": "Five-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "ten_year", "type": "float", "description": "Ten-year return.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "max", "type": "float", "description": "Return from the beginning of the time series.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -24535,7 +27520,8 @@ "type": "str", "description": "The ticker symbol.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -24555,7 +27541,8 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. (Stock) Multiple items allowed for provider(s): fmp.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -24603,35 +27590,40 @@ "type": "str", "description": "The symbol of the equity requested.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "etf_symbol", "type": "str", "description": "The symbol of the ETF with exposure to the requested equity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "shares", "type": "float", "description": "The number of shares held in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "weight", "type": "float", "description": "The weight of the equity in the ETF, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "market_value", "type": "Union[int, float]", "description": "The market value of the equity position in the ETF.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [] @@ -24652,14 +27644,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -24675,7 +27669,8 @@ "type": "Literal['overnight', 'term_30', 'term_90', '1_week_term_structure', '1_month_term_structure', '3_month_term_structure', '6_month_term_structure', '1_year_term_structure', '2_year_term_structure', '30_day_ma', '90_day_ma']", "description": "Period of AMERIBOR rate.", "default": "overnight", - "optional": true + "optional": true, + "choices": null } ] }, @@ -24715,14 +27710,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "AMERIBOR rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -24743,14 +27740,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -24766,7 +27765,8 @@ "type": "Literal['rate', 'index', '10th_percentile', '25th_percentile', '75th_percentile', '90th_percentile', 'total_nominal_value']", "description": "Period of SONIA rate.", "default": "rate", - "optional": true + "optional": true, + "choices": null } ] }, @@ -24806,14 +27806,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "SONIA rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -24834,14 +27836,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -24889,14 +27893,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "IORB rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -24917,14 +27923,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -24941,7 +27949,8 @@ "type": "Literal['monthly', 'daily', 'weekly', 'daily_excl_weekend', 'annual', 'biweekly', 'volume']", "description": "Period of FED rate.", "default": "weekly", - "optional": true + "optional": true, + "choices": null } ] }, @@ -24981,14 +27990,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "FED rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "federal_reserve": [], @@ -25019,7 +28030,8 @@ "type": "bool", "description": "Flag to show long run projections", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -25059,56 +28071,64 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "range_high", "type": "float", "description": "High projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "central_tendency_high", "type": "float", "description": "Central tendency of high projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "median", "type": "float", "description": "Median projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "range_midpoint", "type": "float", "description": "Midpoint projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "central_tendency_midpoint", "type": "float", "description": "Central tendency of midpoint projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "range_low", "type": "float", "description": "Low projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "central_tendency_low", "type": "float", "description": "Central tendency of low projection of rates.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25129,14 +28149,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25152,7 +28174,8 @@ "type": "Literal['volume_weighted_trimmed_mean_rate', 'number_of_transactions', 'number_of_active_banks', 'total_volume', 'share_of_volume_of_the_5_largest_active_banks', 'rate_at_75th_percentile_of_volume', 'rate_at_25th_percentile_of_volume']", "description": "Period of ESTR rate.", "default": "volume_weighted_trimmed_mean_rate", - "optional": true + "optional": true, + "choices": null } ] }, @@ -25192,14 +28215,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "ESTR rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25220,21 +28245,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interest_rate_type", "type": "Literal['deposit', 'lending', 'refinancing']", "description": "The type of interest rate.", "default": "lending", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25282,14 +28310,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "European Central Bank Interest Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25310,14 +28340,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25333,7 +28365,8 @@ "type": "Literal['daily_excl_weekend', 'monthly', 'weekly', 'daily', 'annual']", "description": "FRED series ID of DWPCR data.", "default": "daily_excl_weekend", - "optional": true + "optional": true, + "choices": null } ] }, @@ -25373,14 +28406,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Discount Window Primary Credit Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25401,21 +28436,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity", "type": "Literal['3m', '2y']", "description": "The maturity", "default": "3m", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25463,14 +28501,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "TreasuryConstantMaturity Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25491,21 +28531,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity", "type": "Literal['10y', '5y', '1y', '6m', '3m']", "description": "The maturity", "default": "10y", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25553,14 +28596,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Selected Treasury Constant Maturity Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25581,21 +28626,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity", "type": "Literal['3m', '6m']", "description": "The maturity", "default": "3m", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25643,14 +28691,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "SelectedTreasuryBill Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25671,14 +28721,16 @@ "type": "Union[date, str]", "description": "A specific date to get data for. Defaults to the most recent FRED entry.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "inflation_adjusted", "type": "bool", "description": "Get inflation adjusted rates.", "default": false, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25726,14 +28778,16 @@ "type": "float", "description": "Maturity of the treasury rate in years.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Associated rate given in decimal form (0.05 is 5%)", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -25754,14 +28808,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25810,98 +28866,112 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "week_4", "type": "float", "description": "4 week Treasury bills rate (secondary market).", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_1", "type": "float", "description": "1 month Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_2", "type": "float", "description": "2 month Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_3", "type": "float", "description": "3 month Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "month_6", "type": "float", "description": "6 month Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_1", "type": "float", "description": "1 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_2", "type": "float", "description": "2 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_3", "type": "float", "description": "3 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_5", "type": "float", "description": "5 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_7", "type": "float", "description": "7 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_10", "type": "float", "description": "10 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_20", "type": "float", "description": "20 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "year_30", "type": "float", "description": "30 year Treasury rate.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "federal_reserve": [], @@ -25923,21 +28993,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_type", "type": "Literal['yield', 'yield_to_worst', 'total_return', 'spread']", "description": "The type of series.", "default": "yield", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -25953,28 +29026,32 @@ "type": "Literal['all', 'duration', 'eur', 'usd']", "description": "The type of category.", "default": "all", - "optional": true + "optional": true, + "choices": null }, { "name": "area", "type": "Literal['asia', 'emea', 'eu', 'ex_g10', 'latin_america', 'us']", "description": "The type of area.", "default": "us", - "optional": true + "optional": true, + "choices": null }, { "name": "grade", "type": "Literal['a', 'aa', 'aaa', 'b', 'bb', 'bbb', 'ccc', 'crossover', 'high_grade', 'high_yield', 'non_financial', 'non_sovereign', 'private_sector', 'public_sector']", "description": "The type of grade.", "default": "non_sovereign", - "optional": true + "optional": true, + "choices": null }, { "name": "options", "type": "bool", "description": "Whether to include options in the results.", "default": false, - "optional": true + "optional": true, + "choices": null } ] }, @@ -26014,14 +29091,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "ICE BofA US Corporate Bond Indices Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -26042,21 +29121,24 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "index_type", "type": "Literal['aaa', 'baa']", "description": "The type of series.", "default": "aaa", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26072,7 +29154,8 @@ "type": "Literal['treasury', 'fed_funds']", "description": "The type of spread.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -26112,14 +29195,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Moody Corporate Bond Index Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -26140,14 +29225,16 @@ "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "yield_curve", "type": "Literal['spot', 'par']", "description": "The yield curve type.", "default": "spot", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26195,28 +29282,32 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "HighQualityMarketCorporateBond Rate.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "maturity", "type": "str", "description": "Maturity.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "yield_curve", "type": "Literal['spot', 'par']", "description": "The yield curve type.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [ @@ -26225,7 +29316,8 @@ "type": "str", "description": "FRED series id.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -26245,28 +29337,35 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity", "type": "Union[Union[float, str], List[Union[float, str]]]", "description": "Maturities in years. Multiple items allowed for provider(s): fred.", "default": 10.0, - "optional": true + "optional": true, + "choices": null }, { "name": "category", "type": "Union[str, List[str]]", "description": "Rate category. Options: spot_rate, par_yield. Multiple items allowed for provider(s): fred.", "default": "spot_rate", - "optional": true + "optional": true, + "choices": [ + "par_yield", + "spot_rate" + ] }, { "name": "provider", @@ -26314,14 +29413,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Spot Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -26342,35 +29443,40 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "maturity", "type": "Literal['overnight', '7d', '15d', '30d', '60d', '90d']", "description": "The maturity.", "default": "30d", - "optional": true + "optional": true, + "choices": null }, { "name": "category", "type": "Literal['asset_backed', 'financial', 'nonfinancial']", "description": "The category.", "default": "financial", - "optional": true + "optional": true, + "choices": null }, { "name": "grade", "type": "Literal['aa', 'a2_p2']", "description": "The grade.", "default": "aa", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26418,14 +29524,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "Commercial Paper Rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -26446,14 +29554,16 @@ "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26469,7 +29579,8 @@ "type": "Literal['overnight', '30_day', '90_day', '180_day', 'index']", "description": "Period of SOFR rate.", "default": "overnight", - "optional": true + "optional": true, + "choices": null } ] }, @@ -26509,14 +29620,16 @@ "type": "date", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "rate", "type": "float", "description": "SOFR rate.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "fred": [] @@ -26537,28 +29650,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, polygon, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interval", "type": "str", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26574,7 +29691,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -26583,7 +29701,8 @@ "type": "int", "description": "The number of data entries to return.", "default": 10000, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -26592,21 +29711,24 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -26615,7 +29737,8 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ] }, @@ -26655,42 +29778,48 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "Annotated[float, Strict(strict=True)]", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "Annotated[float, Strict(strict=True)]", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "Annotated[float, Strict(strict=True)]", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "Annotated[float, Strict(strict=True)]", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -26699,21 +29828,24 @@ "type": "float", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [], @@ -26723,7 +29855,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -26744,28 +29877,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): fmp, intrinio, polygon, yfinance.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "interval", "type": "str", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -26781,7 +29918,8 @@ "type": "Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -26790,7 +29928,8 @@ "type": "int", "description": "The number of data entries to return.", "default": 10000, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -26799,21 +29938,24 @@ "type": "str", "description": "Time interval of the data to return. The numeric portion of the interval can be any positive integer. The letter portion can be one of the following: s, m, h, d, W, M, Q, Y", "default": "1d", - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['asc', 'desc']", "description": "Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date.", "default": "asc", - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "int", "description": "The number of data entries to return.", "default": 49999, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [ @@ -26822,7 +29964,8 @@ "type": "Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']", "description": "Time interval of the data to return.", "default": "1d", - "optional": true + "optional": true, + "choices": null } ] }, @@ -26862,42 +30005,48 @@ "type": "Union[date, datetime]", "description": "The date of the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "open", "type": "Annotated[float, Strict(strict=True)]", "description": "The open price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "high", "type": "Annotated[float, Strict(strict=True)]", "description": "The high price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "low", "type": "Annotated[float, Strict(strict=True)]", "description": "The low price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "close", "type": "Annotated[float, Strict(strict=True)]", "description": "The close price.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "volume", "type": "int", "description": "The trading volume.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -26906,21 +30055,24 @@ "type": "float", "description": "Volume Weighted Average Price over the period.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change", "type": "float", "description": "Change in the price from the previous close.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "change_percent", "type": "float", "description": "Change in the price from the previous close, as a normalized percent.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [], @@ -26930,7 +30082,8 @@ "type": "Annotated[int, Gt(gt=0)]", "description": "Number of transactions for the symbol in the time period.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -26951,7 +30104,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -26967,7 +30121,8 @@ "type": "Literal['dowjones', 'sp500', 'nasdaq']", "description": "None", "default": "dowjones", - "optional": true + "optional": true, + "choices": null } ] }, @@ -27007,14 +30162,16 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "name", "type": "str", "description": "Name of the constituent company in the index.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -27023,42 +30180,48 @@ "type": "str", "description": "Sector the constituent company in the index belongs to.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "sub_sector", "type": "str", "description": "Sub-sector the constituent company in the index belongs to.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "headquarter", "type": "str", "description": "Location of the headquarter of the constituent company in the index.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "date_first_added", "type": "Union[str, date]", "description": "Date the constituent company was added to the index.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "int", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "founded", "type": "Union[str, date]", "description": "Founding year of the constituent company in the index.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -27120,14 +30283,16 @@ "type": "str", "description": "Name of the index.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "currency", "type": "str", "description": "Currency the index is traded in.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -27136,14 +30301,16 @@ "type": "str", "description": "Stock exchange where the index is listed.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "exchange_short_name", "type": "str", "description": "Short name of the stock exchange where the index is listed.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -27152,14 +30319,16 @@ "type": "str", "description": "ID code for keying the index in the OpenBB Terminal.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbol", "type": "str", "description": "Symbol for the index.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -27179,21 +30348,24 @@ "type": "int", "description": "The number of data entries to return. The number of articles to return.", "default": 2500, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -27209,84 +30381,96 @@ "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "display", "type": "Literal['headline', 'abstract', 'full']", "description": "Specify headline only (headline), headline + teaser (abstract), or headline + full body (full).", "default": "full", - "optional": true + "optional": true, + "choices": null }, { "name": "updated_since", "type": "int", "description": "Number of seconds since the news was updated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "published_since", "type": "int", "description": "Number of seconds since the news was published.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['id', 'created', 'updated']", "description": "Key to sort the news by.", "default": "created", - "optional": true + "optional": true, + "choices": null }, { "name": "order", "type": "Literal['asc', 'desc']", "description": "Order to sort the news by.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The ISIN of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "The CUSIP of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "channels", "type": "str", "description": "Channels of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topics", "type": "str", "description": "Topics of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "authors", "type": "str", "description": "Authors of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "content_types", "type": "str", "description": "Content types of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [], @@ -27296,63 +30480,72 @@ "type": "Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases']", "description": "The source of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment", "type": "Literal['positive', 'neutral', 'negative']", "description": "Return news only from this source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "language", "type": "str", "description": "Filter by language. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topic", "type": "str", "description": "Filter by topic. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count_greater_than", "type": "int", "description": "News stories will have a word count greater than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count_less_than", "type": "int", "description": "News stories will have a word count less than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_spam", "type": "bool", "description": "Filter whether it is marked as spam or not. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance_greater_than", "type": "float", "description": "News stories will have a business relevance score more than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance_less_than", "type": "float", "description": "News stories will have a business relevance score less than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -27361,14 +30554,16 @@ "type": "int", "description": "Page offset, used in conjunction with limit.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "str", "description": "A comma-separated list of the domains requested.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -27408,35 +30603,40 @@ "type": "datetime", "description": "The date of the data. The published date of the article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "title", "type": "str", "description": "Title of the article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "images", "type": "List[Dict[str, str]]", "description": "Images associated with the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "text", "type": "str", "description": "Text/body of the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url", "type": "str", "description": "URL to the article.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "benzinga": [ @@ -27445,49 +30645,56 @@ "type": "str", "description": "Article ID.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "author", "type": "str", "description": "Author of the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "teaser", "type": "str", "description": "Teaser of the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "channels", "type": "str", "description": "Channels associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stocks", "type": "str", "description": "Stocks associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tags", "type": "str", "description": "Tags associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "datetime", "description": "Updated date of the news.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -27496,7 +30703,8 @@ "type": "str", "description": "News source.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "intrinio": [ @@ -27505,91 +30713,104 @@ "type": "str", "description": "The source of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "summary", "type": "str", "description": "The summary of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topics", "type": "str", "description": "The topics related to the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count", "type": "int", "description": "The word count of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance", "type": "float", "description": "How strongly correlated the news article is to the business", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment", "type": "str", "description": "The sentiment of the news article - i.e, negative, positive.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment_confidence", "type": "float", "description": "The confidence score of the sentiment rating.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "language", "type": "str", "description": "The language of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "spam", "type": "bool", "description": "Whether the news article is spam.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "copyright", "type": "str", "description": "The copyright notice of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "Article ID.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "company", "type": "IntrinioCompany", "description": "The Intrinio Company object. Contains details company reference data.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "security", "type": "IntrinioSecurity", "description": "The Intrinio Security object. Contains the security details related to the news article.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -27598,35 +30819,40 @@ "type": "str", "description": "Ticker tagged in the fetched news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "article_id", "type": "int", "description": "Unique ID of the news article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "site", "type": "str", "description": "News source.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "tags", "type": "str", "description": "Tags associated with the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "crawl_date", "type": "datetime", "description": "Date the news article was crawled.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -27646,28 +30872,32 @@ "type": "Union[str, List[str]]", "description": "Symbol to get data for. Multiple items allowed for provider(s): benzinga, fmp, intrinio, polygon, tiingo, yfinance.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "start_date", "type": "Union[date, str]", "description": "Start date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "end_date", "type": "Union[date, str]", "description": "End date of the data, in YYYY-MM-DD format.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "limit", "type": "Annotated[int, Ge(ge=0)]", "description": "The number of data entries to return.", "default": 2500, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -27683,84 +30913,96 @@ "type": "Union[date, str]", "description": "A specific date to get data for.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "display", "type": "Literal['headline', 'abstract', 'full']", "description": "Specify headline only (headline), headline + teaser (abstract), or headline + full body (full).", "default": "full", - "optional": true + "optional": true, + "choices": null }, { "name": "updated_since", "type": "int", "description": "Number of seconds since the news was updated.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "published_since", "type": "int", "description": "Number of seconds since the news was published.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sort", "type": "Literal['id', 'created', 'updated']", "description": "Key to sort the news by.", "default": "created", - "optional": true + "optional": true, + "choices": null }, { "name": "order", "type": "Literal['asc', 'desc']", "description": "Order to sort the news by.", "default": "desc", - "optional": true + "optional": true, + "choices": null }, { "name": "isin", "type": "str", "description": "The company's ISIN.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cusip", "type": "str", "description": "The company's CUSIP.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "channels", "type": "str", "description": "Channels of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topics", "type": "str", "description": "Topics of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "authors", "type": "str", "description": "Authors of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "content_types", "type": "str", "description": "Content types of the news to retrieve.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -27769,7 +31011,8 @@ "type": "int", "description": "Page number of the results. Use in combination with limit.", "default": 0, - "optional": true + "optional": true, + "choices": null } ], "intrinio": [ @@ -27778,63 +31021,72 @@ "type": "Literal['yahoo', 'moody', 'moody_us_news', 'moody_us_press_releases']", "description": "The source of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment", "type": "Literal['positive', 'neutral', 'negative']", "description": "Return news only from this source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "language", "type": "str", "description": "Filter by language. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topic", "type": "str", "description": "Filter by topic. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count_greater_than", "type": "int", "description": "News stories will have a word count greater than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count_less_than", "type": "int", "description": "News stories will have a word count less than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "is_spam", "type": "bool", "description": "Filter whether it is marked as spam or not. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance_greater_than", "type": "float", "description": "News stories will have a business relevance score more than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance_less_than", "type": "float", "description": "News stories will have a business relevance score less than this value. Unsupported for yahoo source.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -27843,7 +31095,8 @@ "type": "Literal['asc', 'desc']", "description": "Sort order of the articles.", "default": "desc", - "optional": true + "optional": true, + "choices": null } ], "tiingo": [ @@ -27852,14 +31105,16 @@ "type": "int", "description": "Page offset, used in conjunction with limit.", "default": 0, - "optional": true + "optional": true, + "choices": null }, { "name": "source", "type": "str", "description": "A comma-separated list of the domains requested.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "yfinance": [] @@ -27900,42 +31155,48 @@ "type": "datetime", "description": "The date of the data. Here it is the published date of the article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "title", "type": "str", "description": "Title of the article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "text", "type": "str", "description": "Text/body of the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "images", "type": "List[Dict[str, str]]", "description": "Images associated with the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "url", "type": "str", "description": "URL to the article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "symbols", "type": "str", "description": "Symbols associated with the article.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "benzinga": [ @@ -27944,56 +31205,64 @@ "type": "List[Dict[str, str]]", "description": "URL to the images of the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "Article ID.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "author", "type": "str", "description": "Author of the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "teaser", "type": "str", "description": "Teaser of the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "channels", "type": "str", "description": "Channels associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "stocks", "type": "str", "description": "Stocks associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tags", "type": "str", "description": "Tags associated with the news.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "updated", "type": "datetime", "description": "Updated date of the news.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "fmp": [ @@ -28002,7 +31271,8 @@ "type": "str", "description": "Name of the news source.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "intrinio": [ @@ -28011,84 +31281,96 @@ "type": "str", "description": "The source of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "summary", "type": "str", "description": "The summary of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "topics", "type": "str", "description": "The topics related to the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "word_count", "type": "int", "description": "The word count of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "business_relevance", "type": "float", "description": "How strongly correlated the news article is to the business", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment", "type": "str", "description": "The sentiment of the news article - i.e, negative, positive.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "sentiment_confidence", "type": "float", "description": "The confidence score of the sentiment rating.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "language", "type": "str", "description": "The language of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "spam", "type": "bool", "description": "Whether the news article is spam.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "copyright", "type": "str", "description": "The copyright notice of the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "Article ID.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "security", "type": "IntrinioSecurity", "description": "The Intrinio Security object. Contains the security details related to the news article.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "polygon": [ @@ -28097,35 +31379,40 @@ "type": "str", "description": "Source of the article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "tags", "type": "str", "description": "Keywords/tags in the article", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "id", "type": "str", "description": "Article ID.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "amp_url", "type": "str", "description": "AMP URL.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "publisher", "type": "PolygonPublisher", "description": "Publisher of the article.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "tiingo": [ @@ -28134,28 +31421,32 @@ "type": "str", "description": "Tags associated with the news article.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "article_id", "type": "int", "description": "Unique ID of the news article.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "source", "type": "str", "description": "News source.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "crawl_date", "type": "datetime", "description": "Date the news article was crawled.", "default": "", - "optional": false + "optional": false, + "choices": null } ], "yfinance": [ @@ -28164,7 +31455,8 @@ "type": "str", "description": "Source of the news article", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -28184,7 +31476,8 @@ "type": "str", "description": "Symbol to get data for.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "provider", @@ -28200,7 +31493,8 @@ "type": "bool", "description": "Whether or not to use cache for the request, default is True.", "default": true, - "optional": true + "optional": true, + "choices": null } ] }, @@ -28240,7 +31534,8 @@ "type": "Union[int, str]", "description": "Central Index Key (CIK) for the requested entity.", "default": null, - "optional": true + "optional": true, + "choices": null } ], "sec": [] @@ -28261,14 +31556,16 @@ "type": "str", "description": "Search query.", "default": "", - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -28317,14 +31614,16 @@ "type": "str", "description": "The name of the institution.", "default": null, - "optional": true + "optional": true, + "choices": null }, { "name": "cik", "type": "Union[int, str]", "description": "Central Index Key (CIK)", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -28344,14 +31643,16 @@ "type": "str", "description": "Search query.", "default": "", - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -28367,7 +31668,8 @@ "type": "str", "description": "Enter an optional URL path to fetch the next level.", "default": null, - "optional": true + "optional": true, + "choices": null } ] }, @@ -28408,7 +31710,8 @@ "type": "List[str]", "description": "Dictionary of URLs to SEC Schema Files", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -28428,14 +31731,16 @@ "type": "str", "description": "Search query.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache. If True, cache will store for seven days.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -28484,7 +31789,8 @@ "type": "str", "description": "Symbol representing the entity requested in the data.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -28546,35 +31852,40 @@ "type": "datetime", "description": "The date of publication.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "title", "type": "str", "description": "The title of the release.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "summary", "type": "str", "description": "Short summary of the release.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "id", "type": "str", "description": "The identifier associated with the release.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "link", "type": "str", "description": "URL to the release.", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, @@ -28594,14 +31905,16 @@ "type": "str", "description": "Search query.", "default": "", - "optional": true + "optional": true, + "choices": null }, { "name": "use_cache", "type": "bool", "description": "Whether or not to use cache.", "default": true, - "optional": true + "optional": true, + "choices": null }, { "name": "provider", @@ -28650,21 +31963,24 @@ "type": "int", "description": "Sector Industrial Code (SIC)", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "industry", "type": "str", "description": "Industry title.", "default": "", - "optional": false + "optional": false, + "choices": null }, { "name": "office", "type": "str", "description": "Reporting office within the Corporate Finance Office", "default": "", - "optional": false + "optional": false, + "choices": null } ] }, From 07693784fb4222c3c174e8004876daad40787ee6 Mon Sep 17 00:00:00 2001 From: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Date: Tue, 14 May 2024 14:19:23 +0100 Subject: [PATCH 35/44] [BugFix] - Replace python-jose by PyJWT (#6407) * fix: replace python-jose by PyJWT * add unit test * add unit test --------- Co-authored-by: Theodore Aptekarev --- .../openbb_core/app/service/hub_service.py | 10 +-- openbb_platform/core/poetry.lock | 84 ++++--------------- openbb_platform/core/pyproject.toml | 2 +- .../tests/app/service/test_hub_service.py | 34 ++++++++ 4 files changed, 57 insertions(+), 73 deletions(-) diff --git a/openbb_platform/core/openbb_core/app/service/hub_service.py b/openbb_platform/core/openbb_core/app/service/hub_service.py index 419eef955dd1..3448eb8d52cb 100644 --- a/openbb_platform/core/openbb_core/app/service/hub_service.py +++ b/openbb_platform/core/openbb_core/app/service/hub_service.py @@ -4,9 +4,7 @@ from warnings import warn from fastapi import HTTPException -from jose import JWTError -from jose.exceptions import ExpiredSignatureError -from jose.jwt import decode, get_unverified_header +from jwt import ExpiredSignatureError, PyJWTError, decode, get_unverified_header from openbb_core.app.model.abstract.error import OpenBBError from openbb_core.app.model.credentials import Credentials from openbb_core.app.model.hub.hub_session import HubSession @@ -139,7 +137,7 @@ def _get_session_from_platform_token(self, token: str) -> HubSession: if not token: raise OpenBBError("Platform personal access token not found.") - self.check_token_expiration(token) + self._check_token_expiration(token) response = post( url=self._base_url + "/sdk/login", @@ -259,7 +257,7 @@ def platform2hub(self, credentials: Credentials) -> HubUserSettings: return settings @staticmethod - def check_token_expiration(token: str) -> None: + def _check_token_expiration(token: str) -> None: """Check token expiration, raises exception if expired.""" try: header_data = get_unverified_header(token) @@ -271,5 +269,5 @@ def check_token_expiration(token: str) -> None: ) except ExpiredSignatureError as e: raise OpenBBError("Platform personal access token expired.") from e - except JWTError as e: + except PyJWTError as e: raise OpenBBError("Failed to decode Platform token.") from e diff --git a/openbb_platform/core/poetry.lock b/openbb_platform/core/poetry.lock index 80094cd46e13..44a2f785be91 100644 --- a/openbb_platform/core/poetry.lock +++ b/openbb_platform/core/poetry.lock @@ -321,24 +321,6 @@ files = [ {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] -[[package]] -name = "ecdsa" -version = "0.18.0" -description = "ECDSA cryptographic signature library (pure python)" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" -files = [ - {file = "ecdsa-0.18.0-py2.py3-none-any.whl", hash = "sha256:80600258e7ed2f16b9aa1d7c295bd70194109ad5a30fdee0eaeefef1d4c559dd"}, - {file = "ecdsa-0.18.0.tar.gz", hash = "sha256:190348041559e21b22a1d65cee485282ca11a6f81d503fddb84d5017e9ed1e49"}, -] - -[package.dependencies] -six = ">=1.9.0" - -[package.extras] -gmpy = ["gmpy"] -gmpy2 = ["gmpy2"] - [[package]] name = "exceptiongroup" version = "1.2.0" @@ -840,17 +822,6 @@ dev = ["black", "flake8", "flake8-print", "isort", "pre-commit"] sentry = ["django", "sentry-sdk"] test = ["coverage", "flake8", "freezegun (==0.3.15)", "mock (>=2.0.0)", "pylint", "pytest", "pytest-timeout"] -[[package]] -name = "pyasn1" -version = "0.5.1" -description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" -files = [ - {file = "pyasn1-0.5.1-py2.py3-none-any.whl", hash = "sha256:4439847c58d40b1d0a573d07e3856e95333f1976294494c325775aeca506eb58"}, - {file = "pyasn1-0.5.1.tar.gz", hash = "sha256:6d391a96e59b23130a5cfa74d6fd7f388dbbe26cc8f1edf39fdddf08d9d6676c"}, -] - [[package]] name = "pydantic" version = "2.6.4" @@ -961,6 +932,23 @@ files = [ [package.dependencies] typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" +[[package]] +name = "pyjwt" +version = "2.8.0" +description = "JSON Web Token implementation in Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "PyJWT-2.8.0-py3-none-any.whl", hash = "sha256:59127c392cc44c2da5bb3192169a91f429924e17aff6534d70fdc02ab3e04320"}, + {file = "PyJWT-2.8.0.tar.gz", hash = "sha256:57e28d156e3d5c10088e0c68abb90bfac3df82b40a71bd0daa20c65ccd5c23de"}, +] + +[package.extras] +crypto = ["cryptography (>=3.4.0)"] +dev = ["coverage[toml] (==5.0.4)", "cryptography (>=3.4.0)", "pre-commit", "pytest (>=6.0.0,<7.0.0)", "sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"] +docs = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"] +tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] + [[package]] name = "pytest" version = "7.4.4" @@ -1059,27 +1047,6 @@ files = [ [package.extras] cli = ["click (>=5.0)"] -[[package]] -name = "python-jose" -version = "3.3.0" -description = "JOSE implementation in Python" -optional = false -python-versions = "*" -files = [ - {file = "python-jose-3.3.0.tar.gz", hash = "sha256:55779b5e6ad599c6336191246e95eb2293a9ddebd555f796a65f838f07e5d78a"}, - {file = "python_jose-3.3.0-py2.py3-none-any.whl", hash = "sha256:9b1376b023f8b298536eedd47ae1089bcdb848f1535ab30555cd92002d78923a"}, -] - -[package.dependencies] -ecdsa = "!=0.15" -pyasn1 = "*" -rsa = "*" - -[package.extras] -cryptography = ["cryptography (>=3.4.0)"] -pycrypto = ["pyasn1", "pycrypto (>=2.6.0,<2.7.0)"] -pycryptodome = ["pyasn1", "pycryptodome (>=3.3.1,<4.0.0)"] - [[package]] name = "python-multipart" version = "0.0.7" @@ -1130,7 +1097,6 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -1186,20 +1152,6 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] -[[package]] -name = "rsa" -version = "4.9" -description = "Pure-Python RSA implementation" -optional = false -python-versions = ">=3.6,<4" -files = [ - {file = "rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7"}, - {file = "rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"}, -] - -[package.dependencies] -pyasn1 = ">=0.1.3" - [[package]] name = "ruff" version = "0.1.15" @@ -1722,4 +1674,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "c58b1fc15e472b1609a4194d44da6cd35fc78748cd0931a874bebf441fe8c8ba" +content-hash = "3431ad81cc2788032dfa6b3b7b12d705da384ecc9c592c7663da3d36d885e021" diff --git a/openbb_platform/core/pyproject.toml b/openbb_platform/core/pyproject.toml index 2f6467930f7d..4832836ca77c 100644 --- a/openbb_platform/core/pyproject.toml +++ b/openbb_platform/core/pyproject.toml @@ -13,7 +13,6 @@ websockets = "^12.0" pandas = ">=1.5.3" html5lib = "^1.1" fastapi = "^0.104.1" -python-jose = "^3.3.0" uuid7 = "^0.1.0" posthog = "^3.3.1" python-multipart = "^0.0.7" @@ -23,6 +22,7 @@ importlib-metadata = "^6.8.0" python-dotenv = "^1.0.0" aiohttp = "^3.9.5" ruff = "^0.1.6" +pyjwt = "^2.8.0" [tool.poetry.group.dev.dependencies] pytest = "^7.0.0" diff --git a/openbb_platform/core/tests/app/service/test_hub_service.py b/openbb_platform/core/tests/app/service/test_hub_service.py index db2030d561ec..37cab472d228 100644 --- a/openbb_platform/core/tests/app/service/test_hub_service.py +++ b/openbb_platform/core/tests/app/service/test_hub_service.py @@ -5,9 +5,11 @@ from pathlib import Path +from time import time from unittest.mock import MagicMock, patch import pytest +from jwt import encode from openbb_core.app.service.hub_service import ( Credentials, HubService, @@ -308,3 +310,35 @@ def test_platform2hub(): assert user_settings.features_keys["API_FRED_KEY"] == "fred" assert user_settings.features_keys["benzinga_api_key"] == "benzinga" assert "some_api_key" not in user_settings.features_keys + + +@pytest.mark.parametrize( + "token, message", + [ + # valid + ( + encode( + {"some": "payload", "exp": int(time()) + 100}, + "secret", + algorithm="HS256", + ), + None, + ), + # expired + ( + encode( + {"some": "payload", "exp": int(time())}, "secret", algorithm="HS256" + ), + "Platform personal access token expired.", + ), + # invalid + ("invalid_token", "Failed to decode Platform token."), + ], +) +def test__check_token_expiration(token, message): + """Test check token expiration function.""" + if message: + with pytest.raises(OpenBBError, match=message): + HubService._check_token_expiration(token) + else: + HubService._check_token_expiration(token) From c2f5f7a3e6e3c4111ec7308cea43378c6b4f22e8 Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 14:35:17 +0100 Subject: [PATCH 36/44] [Feature] Styling adjustments (#6408) * styling adjustments * auto completion for main menu commands; cached results style * move platform settings above * don't check if obbject.results - we want to have the error message if smt goes wrong with the to_df() * register only if there are results * minor style change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- .../argparse_translator/obbject_registry.py | 6 +- cli/openbb_cli/config/menu_text.py | 9 +- cli/openbb_cli/controllers/base_controller.py | 214 ++++++++++-------- .../controllers/base_platform_controller.py | 15 +- cli/openbb_cli/controllers/cli_controller.py | 54 +++-- 5 files changed, 164 insertions(+), 134 deletions(-) diff --git a/cli/openbb_cli/argparse_translator/obbject_registry.py b/cli/openbb_cli/argparse_translator/obbject_registry.py index e1c73fd0c127..372254b4b545 100644 --- a/cli/openbb_cli/argparse_translator/obbject_registry.py +++ b/cli/openbb_cli/argparse_translator/obbject_registry.py @@ -20,8 +20,10 @@ def _contains_obbject(uuid: str, obbjects: List[OBBject]) -> bool: def register(self, obbject: OBBject) -> bool: """Designed to add an OBBject instance to the registry.""" - if isinstance(obbject, OBBject) and not self._contains_obbject( - obbject.id, self._obbjects + if ( + isinstance(obbject, OBBject) + and not self._contains_obbject(obbject.id, self._obbjects) + and obbject.results ): self._obbjects.append(obbject) return True diff --git a/cli/openbb_cli/config/menu_text.py b/cli/openbb_cli/config/menu_text.py index 06c7023ef1f5..ac3d0b9ca7dc 100644 --- a/cli/openbb_cli/config/menu_text.py +++ b/cli/openbb_cli/config/menu_text.py @@ -99,17 +99,18 @@ def _format_cmd_description( else description ) - def add_raw(self, text: str): + def add_raw(self, text: str, left_spacing: bool = False): """Append raw text (without translation).""" - self.menu_text += text + if left_spacing: + self.menu_text += f"{self.SECTION_SPACING * ' '}{text}\n" + else: + self.menu_text += text def add_section( self, text: str, description: str = "", leading_new_line: bool = False ): """Append raw text (without translation).""" spacing = (self.CMD_NAME_LENGTH - len(text) + self.SECTION_SPACING) * " " - left_spacing = self.SECTION_SPACING * " " - text = f"{left_spacing}{text}" if description: text = f"{text}{spacing}{description}\n" diff --git a/cli/openbb_cli/controllers/base_controller.py b/cli/openbb_cli/controllers/base_controller.py index 5c644f479c9b..e050311080d6 100644 --- a/cli/openbb_cli/controllers/base_controller.py +++ b/cli/openbb_cli/controllers/base_controller.py @@ -479,123 +479,137 @@ def call_record(self, other_args) -> None: "\n[yellow]Remember to run 'stop' command when you are done!\n[/yellow]" ) - def call_stop(self, _) -> None: + def call_stop(self, other_args) -> None: """Process stop command.""" - global RECORD_SESSION # noqa: PLW0603 - global SESSION_RECORDED # noqa: PLW0603 + parser = argparse.ArgumentParser( + add_help=False, + formatter_class=argparse.ArgumentDefaultsHelpFormatter, + prog="stop", + description="Stop recording session into .openbb routine file", + ) + # This is only for auto-completion purposes + _ = self.parse_simple_args(parser, other_args) - if not RECORD_SESSION: - session.console.print( - "[red]There is no session being recorded. Start one using the command 'record'[/red]\n" - ) - elif len(SESSION_RECORDED) < 5: - session.console.print( - "[red]Run at least 4 commands before stopping recording a session.[/red]\n" - ) - else: - current_user = session.user + if "-h" not in other_args and "--help" not in other_args: + global RECORD_SESSION # noqa: PLW0603 + global SESSION_RECORDED # noqa: PLW0603 - # Check if the user just wants to store routine locally - # This works regardless of whether they are logged in or not - if RECORD_SESSION_LOCAL_ONLY: - # Whitespaces are replaced by underscores and an .openbb extension is added - title_for_local_storage = ( - SESSION_RECORDED_NAME.replace(" ", "_") + ".openbb" + if not RECORD_SESSION: + session.console.print( + "[red]There is no session being recorded. Start one using the command 'record'[/red]\n" ) - - routine_file = os.path.join( - f"{current_user.preferences.export_directory}/routines", - title_for_local_storage, + elif len(SESSION_RECORDED) < 5: + session.console.print( + "[red]Run at least 4 commands before stopping recording a session.[/red]\n" ) + else: + current_user = session.user + + # Check if the user just wants to store routine locally + # This works regardless of whether they are logged in or not + if RECORD_SESSION_LOCAL_ONLY: + # Whitespaces are replaced by underscores and an .openbb extension is added + title_for_local_storage = ( + SESSION_RECORDED_NAME.replace(" ", "_") + ".openbb" + ) - # If file already exists, add a timestamp to the name - if os.path.isfile(routine_file): - i = session.console.input( - "A local routine with the same name already exists, " - "do you want to override it? (y/n): " + routine_file = os.path.join( + f"{current_user.preferences.export_directory}/routines", + title_for_local_storage, ) - session.console.print("") - while i.lower() not in ["y", "yes", "n", "no"]: - i = session.console.input("Select 'y' or 'n' to proceed: ") - session.console.print("") - if i.lower() in ["n", "no"]: - new_name = ( - datetime.now().strftime("%Y%m%d_%H%M%S_") - + title_for_local_storage - ) - routine_file = os.path.join( - current_user.preferences.export_directory, - "routines", - new_name, - ) - session.console.print( - f"[yellow]The routine name has been updated to '{new_name}'[/yellow]\n" + # If file already exists, add a timestamp to the name + if os.path.isfile(routine_file): + i = session.console.input( + "A local routine with the same name already exists, " + "do you want to override it? (y/n): " ) + session.console.print("") + while i.lower() not in ["y", "yes", "n", "no"]: + i = session.console.input("Select 'y' or 'n' to proceed: ") + session.console.print("") + + if i.lower() in ["n", "no"]: + new_name = ( + datetime.now().strftime("%Y%m%d_%H%M%S_") + + title_for_local_storage + ) + routine_file = os.path.join( + current_user.preferences.export_directory, + "routines", + new_name, + ) + session.console.print( + f"[yellow]The routine name has been updated to '{new_name}'[/yellow]\n" + ) - # Writing to file - Path(os.path.dirname(routine_file)).mkdir(parents=True, exist_ok=True) - - with open(routine_file, "w") as file1: - lines = ["# OpenBB Platform CLI - Routine", "\n"] - - username = getattr( - session.user.profile.hub_session, "username", "local" + # Writing to file + Path(os.path.dirname(routine_file)).mkdir( + parents=True, exist_ok=True ) - lines += [f"# Author: {username}", "\n\n"] if username else ["\n"] - lines += [ - f"# Title: {SESSION_RECORDED_NAME}", - "\n", - f"# Tags: {SESSION_RECORDED_TAGS}", - "\n\n", - f"# Description: {SESSION_RECORDED_DESCRIPTION}", - "\n\n", - ] - lines += [c + "\n" for c in SESSION_RECORDED[:-1]] - # Writing data to a file - file1.writelines(lines) + with open(routine_file, "w") as file1: + lines = ["# OpenBB Platform CLI - Routine", "\n"] - session.console.print( - f"[green]Your routine has been recorded and saved here: {routine_file}[/green]\n" - ) + username = getattr( + session.user.profile.hub_session, "username", "local" + ) - # If user doesn't specify they want to store routine locally - # Confirm that the user is logged in - elif not session.is_local(): - routine = "\n".join(SESSION_RECORDED[:-1]) - hub_session = current_user.profile.hub_session + lines += ( + [f"# Author: {username}", "\n\n"] if username else ["\n"] + ) + lines += [ + f"# Title: {SESSION_RECORDED_NAME}", + "\n", + f"# Tags: {SESSION_RECORDED_TAGS}", + "\n\n", + f"# Description: {SESSION_RECORDED_DESCRIPTION}", + "\n\n", + ] + lines += [c + "\n" for c in SESSION_RECORDED[:-1]] + # Writing data to a file + file1.writelines(lines) - if routine is not None: - auth_header = ( - f"{hub_session.token_type} {hub_session.access_token.get_secret_value()}" - if hub_session - else None + session.console.print( + f"[green]Your routine has been recorded and saved here: {routine_file}[/green]\n" ) - kwargs = { - "auth_header": auth_header, - "name": SESSION_RECORDED_NAME, - "description": SESSION_RECORDED_DESCRIPTION, - "routine": routine, - "tags": SESSION_RECORDED_TAGS, - "public": SESSION_RECORDED_PUBLIC, - } - response = upload_routine(**kwargs) # type: ignore - if response is not None and response.status_code == 409: - i = session.console.input( - "A routine with the same name already exists, " - "do you want to replace it? (y/n): " - ) - session.console.print("") - if i.lower() in ["y", "yes"]: - kwargs["override"] = True # type: ignore - response = upload_routine(**kwargs) # type: ignore - else: - session.console.print("[info]Aborted.[/info]") - # Clear session to be recorded again - RECORD_SESSION = False - SESSION_RECORDED = list() + # If user doesn't specify they want to store routine locally + # Confirm that the user is logged in + elif not session.is_local(): + routine = "\n".join(SESSION_RECORDED[:-1]) + hub_session = current_user.profile.hub_session + + if routine is not None: + auth_header = ( + f"{hub_session.token_type} {hub_session.access_token.get_secret_value()}" + if hub_session + else None + ) + kwargs = { + "auth_header": auth_header, + "name": SESSION_RECORDED_NAME, + "description": SESSION_RECORDED_DESCRIPTION, + "routine": routine, + "tags": SESSION_RECORDED_TAGS, + "public": SESSION_RECORDED_PUBLIC, + } + response = upload_routine(**kwargs) # type: ignore + if response is not None and response.status_code == 409: + i = session.console.input( + "A routine with the same name already exists, " + "do you want to replace it? (y/n): " + ) + session.console.print("") + if i.lower() in ["y", "yes"]: + kwargs["override"] = True # type: ignore + response = upload_routine(**kwargs) # type: ignore + else: + session.console.print("[info]Aborted.[/info]") + + # Clear session to be recorded again + RECORD_SESSION = False + SESSION_RECORDED = list() def call_whoami(self, other_args: List[str]) -> None: """Process whoami command.""" diff --git a/cli/openbb_cli/controllers/base_platform_controller.py b/cli/openbb_cli/controllers/base_platform_controller.py index 8ac12f4ed569..df67c708e148 100644 --- a/cli/openbb_cli/controllers/base_platform_controller.py +++ b/cli/openbb_cli/controllers/base_platform_controller.py @@ -159,8 +159,8 @@ def method(self, other_args: List[str], translator=translator): if obbject: - if isinstance(obbject, OBBject) and obbject.results: - if session.max_obbjects_exceeded(): + if isinstance(obbject, OBBject): + if session.max_obbjects_exceeded() and obbject.results: session.obbject_registry.remove() session.console.print( "[yellow]Maximum number of OBBjects reached. The oldest entry was removed.[yellow]" @@ -181,7 +181,9 @@ def method(self, other_args: List[str], translator=translator): session.settings.SHOW_MSG_OBBJECT_REGISTRY and register_result ): - session.console.print("Added OBBject to registry.") + session.console.print( + "Added `OBBject` to cached results." + ) # making the dataframe available # either for printing or exporting (or both) @@ -326,11 +328,14 @@ def print_help(self): ) if session.obbject_registry.obbjects: - mt.add_section("Cached Results:\n", leading_new_line=True) + mt.add_info("\nCached Results") for key, value in list(session.obbject_registry.all.items())[ : session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY ]: - mt.add_raw(f"\tOBB{key}: {value['command']}\n") + mt.add_raw( + f"[yellow]OBB{key}[/yellow]: {value['command']}", + left_spacing=True, + ) session.console.print(text=mt.menu_text, menu=self.PATH) diff --git a/cli/openbb_cli/controllers/cli_controller.py b/cli/openbb_cli/controllers/cli_controller.py index 2a98389067b6..49eaf92da333 100644 --- a/cli/openbb_cli/controllers/cli_controller.py +++ b/cli/openbb_cli/controllers/cli_controller.py @@ -188,8 +188,9 @@ def update_runtime_choices(self): "--input": None, "-i": "--input", "--url": None, + "--help": None, + "-h": "--help", } - choices["record"] = { "--name": None, "-n": "--name", @@ -200,14 +201,36 @@ def update_runtime_choices(self): "--tag1": {c: None for c in constants.SCRIPT_TAGS}, "--tag2": {c: None for c in constants.SCRIPT_TAGS}, "--tag3": {c: None for c in constants.SCRIPT_TAGS}, + "--help": None, + "-h": "--help", } + choices["stop"] = {"--help": None, "-h": "--help"} + choices["results"] = {"--help": None, "-h": "--help"} self.update_completer(choices) def print_help(self): """Print help.""" mt = MenuText("") - mt.add_info("Configure your own CLI") + + mt.add_info("Configure the platform and manage your account") + for router, value in PLATFORM_ROUTERS.items(): + if router not in NON_DATA_ROUTERS or router in ["reference", "coverage"]: + continue + if value == "menu": + menu_description = ( + obb.reference["routers"] # type: ignore + .get(f"{self.PATH}{router}", {}) + .get("description") + ) or "" + mt.add_menu( + name=router, + description=menu_description.split(".")[0].lower(), + ) + else: + mt.add_cmd(router) + + mt.add_info("\nConfigure your CLI") mt.add_menu( "settings", description="enable and disable feature flags, preferences and settings", @@ -260,32 +283,17 @@ def print_help(self): else: mt.add_cmd(router) - mt.add_info("\nConfigure the platform and manage your account") - - for router, value in PLATFORM_ROUTERS.items(): - if router not in NON_DATA_ROUTERS or router in ["reference", "coverage"]: - continue - if value == "menu": - menu_description = ( - obb.reference["routers"] # type: ignore - .get(f"{self.PATH}{router}", {}) - .get("description") - ) or "" - mt.add_menu( - name=router, - description=menu_description.split(".")[0].lower(), - ) - else: - mt.add_cmd(router) - - mt.add_info("\nAccess and manage your cached results") + mt.add_raw("\n") mt.add_cmd("results") if session.obbject_registry.obbjects: - mt.add_section("Cached Results:\n", leading_new_line=True) + mt.add_info("\nCached Results") for key, value in list(session.obbject_registry.all.items())[ # type: ignore : session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY ]: - mt.add_raw(f"\tOBB{key}: {value['command']}\n") # type: ignore + mt.add_raw( + f"[yellow]OBB{key}[/yellow]: {value['command']}", + left_spacing=True, + ) session.console.print(text=mt.menu_text, menu="Home") self.update_runtime_choices() From ca0949396a4341cc0b59a99a91efd333e0260a2e Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 16:02:48 +0100 Subject: [PATCH 37/44] add platform imgs (#6410) --- images/platform-dark.svg | 24 ++++++++++++++++++++++++ images/platform-light.svg | 24 ++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 images/platform-dark.svg create mode 100644 images/platform-light.svg diff --git a/images/platform-dark.svg b/images/platform-dark.svg new file mode 100644 index 000000000000..0a26fd75fe4f --- /dev/null +++ b/images/platform-dark.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/platform-light.svg b/images/platform-light.svg new file mode 100644 index 000000000000..e01e4107a79c --- /dev/null +++ b/images/platform-light.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + From f87c21ed3cb2607c081b9ebfda4bee292c36a83d Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 16:09:32 +0100 Subject: [PATCH 38/44] [Feature] Main README (#6403) * main readme * lints * mention platform cli * test platform imgs * Update README.md platform imgs * break line * Update to Platform images * remove old images --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> --- README.md | 73 +++++++++++++----------------------- images/openbb-logo-dark.svg | 17 --------- images/openbb-logo-light.svg | 17 --------- 3 files changed, 27 insertions(+), 80 deletions(-) delete mode 100644 images/openbb-logo-dark.svg delete mode 100644 images/openbb-logo-light.svg diff --git a/README.md b/README.md index b6137bb262f6..0e816f4038ca 100644 --- a/README.md +++ b/README.md @@ -8,15 +8,17 @@ However, we are committed to continuing our mission to democratize investment re To achieve that, we are working on a new CLI tool built on top of the OpenBB Platform that will soon be available to everyone for free. +[![GitHub release](https://img.shields.io/github/release/OpenBB-finance/OpenBBTerminal.svg?maxAge=3600)](https://github.com/OpenBB-finance/OpenBBTerminal/releases) + --- +
    -OpenBB Terminal logo -OpenBB Terminal logo +OpenBB Terminal logo +OpenBB Terminal logo

    [![Twitter](https://img.shields.io/twitter/url/https/twitter.com/openbb_finance.svg?style=social&label=Follow%20%40openbb_finance)](https://twitter.com/openbb_finance) -[![GitHub release](https://img.shields.io/github/release/OpenBB-finance/OpenBBTerminal.svg?maxAge=3600)](https://github.com/OpenBB-finance/OpenBBTerminal/releases) ![Discord Shield](https://discordapp.com/api/guilds/831165782750789672/widget.png?style=shield) [![Open in Dev Containers](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/OpenBB-finance/OpenBBTerminal) @@ -25,39 +27,13 @@ To achieve that, we are working on a new CLI tool built on top of the OpenBB Pla Open In Colab +[![PyPI](https://img.shields.io/pypi/v/openbb?color=blue&label=PyPI%20Package)](https://pypi.org/project/openbb/) -The first financial terminal that is free and fully open source. With over 600 commands, the terminal has access to equity, options, crypto, forex, macro economy, fixed income, alternative datasets, and more. +The first financial Platform that is free and fully open source. -Sign up to the [OpenBB Hub](https://my.openbb.co/login) to use our Windows or MacOS installers to get started. +Offers access to equity, options, crypto, forex, macro economy, fixed income, and more while also offering a broad range of extensions to enhance the user experience according to their needs. - -

    Getting started with the OpenBB Terminal

    -
    - -

    -

    - - OpenBB Terminal Illustration - -

    -

    - - ≪ INSTALL - -   ·   - - DATA - -   ·   - - SEE FEATURES - -   ·   - - CONTRIBUTING » - -

    -

    +Sign up to the [OpenBB Hub](https://my.openbb.co/login) to get the most out of the OpenBB ecosystem.
    @@ -75,20 +51,23 @@ Sign up to the [OpenBB Hub](https://my.openbb.co/login) to use our Windows or Ma ## 1. Installation -If you wish to install the OpenBB Terminal or the OpenBB SDK, please use one of the following options: +The OpenBB Platform can be installed as a [PyPI package](https://pypi.org/project/openbb/) by running `pip install openbb` + +or by cloning the repository directly with `git clone https://github.com/OpenBB-finance/OpenBBTerminal.git`. -|**OpenBB Terminal**|**Usage**| -|:-|:-| -|[Windows Installer](https://docs.openbb.co/terminal/installation/windows)|Recommended way for Windows if you just want to use the OpenBB Terminal| -|[MacOS Installer](https://docs.openbb.co/terminal/installation/macos)|Recommended way for MacOS if you just want to use the OpenBB Terminal| -|[Source](https://docs.openbb.co/terminal/installation/source)|If you wish to contribute to the development of the OpenBB Terminal| -|[Docker](https://docs.openbb.co/terminal/installation/docker)|An alternative way if you just want to use the OpenBB Terminal| +Please find more about the installation process in the [OpenBB Documentation](https://docs.openbb.co/platform/installation). -|**OpenBB SDK**         |**Usage**| -|:-|:-| -|[PyPI](https://docs.openbb.co/terminal/installation/pypi)|If you wish to use the OpenBB SDK in Python or Jupyter Notebooks| -|[Source](https://docs.openbb.co/terminal/installation/source)|If you wish to contribute to the development of the OpenBB Terminal| - +### OpenBB Platform CLI installation + +The OpenBB Platform CLI is a command-line interface that allows you to access the OpenBB Platform directly from your terminal. + +It can be installed by running `pip install openbb-cli` + +or by cloning the repository directly with `git clone https://github.com/OpenBB-finance/OpenBBTerminal.git`. + +Please find more about the installation process in the [OpenBB Documentation](https://docs.openbb.co/cli/installation). + +> The OpenBB Platform CLI offers an alternative to the former [OpenBB Terminal](https://github.com/OpenBB-finance/LegacyTerminal) as it has the same look and feel while offering the functionalities and extendability of the OpenBB Platform. ## 2. Contributing @@ -96,7 +75,7 @@ There are three main ways of contributing to this project. (Hopefully you have s ### Become a Contributor -* More information on our [CONTRIBUTING GUIDELINES](/CONTRIBUTING.md). +* More information on our [Contributing Documentation](https://docs.openbb.co/platform/development/contributing). ### Create a GitHub ticket @@ -115,6 +94,8 @@ We are most active on [our Discord](https://openbb.co/discord), but feel free to Distributed under the MIT License. See [LICENSE](https://github.com/OpenBB-finance/OpenBBTerminal/blob/main/LICENSE) for more information. + + ## 4. Disclaimer Trading in financial instruments involves high risks including the risk of losing some, or all, of your investment diff --git a/images/openbb-logo-dark.svg b/images/openbb-logo-dark.svg deleted file mode 100644 index 75bcef259e11..000000000000 --- a/images/openbb-logo-dark.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/images/openbb-logo-light.svg b/images/openbb-logo-light.svg deleted file mode 100644 index f9c341f7428f..000000000000 --- a/images/openbb-logo-light.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - From a116d9bbf2fb8f1a5308697cf3b8e651145f26a0 Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Tue, 14 May 2024 17:38:06 +0200 Subject: [PATCH 39/44] [Feature] - OpenBB Platform CLI Unit tests (#6397) * Unit test batch 1 * CLI controller * Test batch 3 * Test batch 4 * Test batch 5 * clean some workflows and setup actions * test * rename wfs * rename * update action * Skip * fix cli tests --------- Co-authored-by: Henrique Joaquim Co-authored-by: Diogo Sousa Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> --- .github/scripts/noxfile.py | 20 +- .github/workflows/README.md | 226 ++++-------------- ...pi-nightly.yml => deploy-pypi-nightly.yml} | 0 ...pypi_platform.yml => deploy-test-pypi.yml} | 2 +- .github/workflows/draft-release.yml | 2 +- .../{linting.yml => general-linting.yml} | 4 - .../{labels-PR.yml => gh-pr-labels.yml} | 0 .github/workflows/labels-issue.yml | 27 --- .github/workflows/nightly-build.yml | 35 --- .github/workflows/pypi.yml | 78 ------ ...test.yml => test-integration-platform.yml} | 2 +- .github/workflows/test-unit-cli.yml | 46 ++++ ...atform-core.yml => test-unit-platform.yml} | 4 +- .github/workflows/unit-test.yml | 72 ------ .pre-commit-config.yaml | 2 +- cli/openbb_cli/config/menu_text.py | 14 -- cli/tests/test_argparse_translator.py | 94 ++++++++ ...st_argparse_translator_obbject_registry.py | 89 +++++++ cli/tests/test_cli.py | 45 ++++ cli/tests/test_config_completer.py | 78 ++++++ cli/tests/test_config_console.py | 47 ++++ cli/tests/test_config_menu_text.py | 68 ++++++ cli/tests/test_config_setup.py | 49 ++++ cli/tests/test_config_style.py | 60 +++++ cli/tests/test_controllers_base_controller.py | 79 ++++++ ...st_controllers_base_platform_controller.py | 70 ++++++ cli/tests/test_controllers_choices.py | 51 ++++ cli/tests/test_controllers_cli_controller.py | 79 ++++++ .../test_controllers_controller_factory.py | 61 +++++ cli/tests/test_controllers_script_parser.py | 106 ++++++++ .../test_controllers_settings_controller.py | 135 +++++++++++ cli/tests/test_controllers_utils.py | 157 ++++++++++++ cli/tests/test_models_settings.py | 72 ++++++ cli/tests/test_session.py | 44 ++++ openbb_platform/dev_install.py | 2 +- 35 files changed, 1503 insertions(+), 417 deletions(-) rename .github/workflows/{pypi-nightly.yml => deploy-pypi-nightly.yml} (100%) rename .github/workflows/{test_pypi_platform.yml => deploy-test-pypi.yml} (96%) rename .github/workflows/{linting.yml => general-linting.yml} (96%) rename .github/workflows/{labels-PR.yml => gh-pr-labels.yml} (100%) delete mode 100644 .github/workflows/labels-issue.yml delete mode 100644 .github/workflows/nightly-build.yml delete mode 100644 .github/workflows/pypi.yml rename .github/workflows/{platform-api-integration-test.yml => test-integration-platform.yml} (98%) create mode 100644 .github/workflows/test-unit-cli.yml rename .github/workflows/{platform-core.yml => test-unit-platform.yml} (89%) delete mode 100644 .github/workflows/unit-test.yml create mode 100644 cli/tests/test_argparse_translator.py create mode 100644 cli/tests/test_argparse_translator_obbject_registry.py create mode 100644 cli/tests/test_cli.py create mode 100644 cli/tests/test_config_completer.py create mode 100644 cli/tests/test_config_console.py create mode 100644 cli/tests/test_config_menu_text.py create mode 100644 cli/tests/test_config_setup.py create mode 100644 cli/tests/test_config_style.py create mode 100644 cli/tests/test_controllers_base_controller.py create mode 100644 cli/tests/test_controllers_base_platform_controller.py create mode 100644 cli/tests/test_controllers_choices.py create mode 100644 cli/tests/test_controllers_cli_controller.py create mode 100644 cli/tests/test_controllers_controller_factory.py create mode 100644 cli/tests/test_controllers_script_parser.py create mode 100644 cli/tests/test_controllers_settings_controller.py create mode 100644 cli/tests/test_controllers_utils.py create mode 100644 cli/tests/test_models_settings.py create mode 100644 cli/tests/test_session.py diff --git a/.github/scripts/noxfile.py b/.github/scripts/noxfile.py index ed4411601c58..5bc4af2ce43d 100644 --- a/.github/scripts/noxfile.py +++ b/.github/scripts/noxfile.py @@ -9,10 +9,12 @@ PLATFORM_TESTS = [ str(PLATFORM_DIR / p) for p in ["tests", "core", "providers", "extensions"] ] +CLI_DIR = ROOT_DIR / "cli" +CLI_TESTS = CLI_DIR / "tests" @nox.session(python=["3.9", "3.10", "3.11"]) -def tests(session): +def unit_test_platform(session): """Run the test suite.""" session.install("poetry", "toml") session.run( @@ -27,3 +29,19 @@ def tests(session): session.run( "pytest", *PLATFORM_TESTS, f"--cov={PLATFORM_DIR}", "-m", "not integration" ) + + +@nox.session(python=["3.9", "3.10", "3.11"]) +def unit_test_cli(session): + """Run the test suite.""" + session.install("poetry", "toml") + session.run( + "python", + str(PLATFORM_DIR / "dev_install.py"), + "-e", + "all", + external=True, + ) + session.install("pytest") + session.install("pytest-cov") + session.run("pytest", CLI_TESTS, f"--cov={CLI_DIR}") diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 87caf3212758..6b03303131b2 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -1,27 +1,9 @@ # OpenBB Workflows + This directory contains the workflows for the OpenBB 🦋 Project. The workflows are: -| Workflows | Summary | Branches -| :-------------------- |:------------------ | :------------------ -| branch-name-check.yml | Checks if the branch name is valid and follows the naming convention. | all branches -| build-release.yml | Builds the project and runs the tests. | main, release/* -| docker-build.yml | Builds the docker image and pushes it to the docker hub. | all branches (only pushes to docker hub on main) -| draft-release.yml | Creates a draft release when a new tag is pushed. | - -| gh-pages.yml | Builds the documentation and deploy to github pages. | main and release/* -| integration-test.yml | Runs the integration tests. | all branches -| labels-issue.yml | Creates an issue when a new bug is reported. | - -| labels-PR.yml | Adds labels to the issues and pull requests. | - -| linting.yml | Runs the linters. | all branches -| macos-build.yml | Builds the project on M1 Macs. | develop, main, release/* -| macos-ml.yml | Builds the project on Mac OS X Full Clean Build with ML. | main -| nightly-build.yml | Builds the project and runs the integration tests every night on the `develop` branch. | develop -| pypi.yml | Publishes the package to PyPI. | all branches (only pushes to PyPI on main) -| pypi-nightly.yml | Publishes the package to PyPI every night on the `develop` branch. | develop -| unit-test.yml | Runs the unit tests. | all branches -| windows_ml.yml | Builds the project on Windows 10 Full Clean Build with ML. | main -| windows10_build.yml | Builds the project on Windows 10. | all branches - -## Branch Name Check Workflow +## Branch Name Check + Objective: To check if pull request branch names follow the GitFlow naming convention before merging. Triggered by: A pull request event where the target branch is either develop or main. @@ -30,137 +12,22 @@ Branches checked: The source branch of a pull request and the target branch of a Steps: -1. Extract branch names: Using the jq tool, the source and target branch names are extracted from the pull request event. The branch names are then stored in environment variables and printed as output. +1. Extract branch names: Using the jq tool, the source and target branch names are extracted from the pull request event. The branch names are then stored in environment variables and printed as output. -2. Show Output result for source-branch and target-branch: The source and target branch names are printed to the console. +2. Show Output result for source-branch and target-branch: The source and target branch names are printed to the console. -3. Check branch name for develop PRs: If the target branch is develop, then the source branch is checked against a regular expression to ensure that it follows the GitFlow naming convention. If the branch name is invalid, a message is printed to the console and the workflow exits with a status code of 1. +3. Check branch name for develop PRs: If the target branch is develop, then the source branch is checked against a regular expression to ensure that it follows the GitFlow naming convention. If the branch name is invalid, a message is printed to the console and the workflow exits with a status code of 1. -4. Check branch name for main PRs: If the target branch is main, then the source branch is checked against a regular expression to ensure that it is either a hotfix or a release branch. If the branch name is invalid, a message is printed to the console and the workflow exits with a status code of 1. +4. Check branch name for main PRs: If the target branch is main, then the source branch is checked against a regular expression to ensure that it is either a hotfix or a release branch. If the branch name is invalid, a message is printed to the console and the workflow exits with a status code of 1. Note: The GitFlow naming convention for branches is as follows: -- Feature branches: feature/ -- Hotfix branches: hotfix/ -- Release branches: release/(rc) - -## Build Release Workflow -This GitHub Actions workflow is responsible for building and releasing software for multiple platforms (Windows, M1 MacOS, Intel MacOS, and Docker). -The workflow has four jobs: - -- `trigger-windows-build` -- `trigger-macos-build` -- `trigger-intel-build` -- `trigger-docker-build` - -Each job uses the `aurelien-baudet/workflow-dispatch` action to trigger another workflow, respectively `windows10_build.yml`, `m1_macos_build.yml`, `intel_macos_build.yml`, and `docker.yml`. The `GITHUB_TOKEN` is passed as a secret so that the triggered workflows have access to the necessary permissions. The `wait-for-completion-timeout` is set to 2 hours, which is the maximum amount of time the job will wait for the triggered workflow to complete. - -## Docker Workflow -This GitHub Actions workflow is responsible for building and pushing the docker image to the itHub Container Registry. This workflow is triggered when a new change is pushed to the main branch of the repository, and the Docker image is published to the GitHub Container Registry. - -Steps ------ - -1. Checkout Code: This step checks out the code from the GitHub repository. - -2. Login to GitHub Container Registry: This step logs into the GitHub Container Registry using the GitHub Actions token. - -3. Setup Commit Hash: This step sets the commit hash of the code that is being built. - -4. Build Env File: This step builds the environment file for the Docker image. - -5. Building the Docker Image: This step builds the Docker image using the scripts in the `build/docker` directory. - -6. Publishing the Docker Image: This step publishes the Docker image to the GitHub Container Registry. The Docker image is only pushed to the registry if the branch being built is `main`. - -## Release Drafter Workflow -This GitHub Actions workflow is designed to automatically generate and update draft releases in a GitHub repository. The workflow is triggered when it is manually dispatched, allowing you to control when the draft releases are updated. - -## GH Pages Workflow -This GitHub Actions workflow is responsible for building the documentation and deploying it to GitHub Pages. This workflow is triggered when a new change is pushed to the `main` or `release` branch of the repository, and the documentation is published to GitHub Pages. - -## Integration Test Workflow -This GitHub Action is used to run integration tests on your code repository. It is triggered on pushes to the `release/*` or `main` branches, and it runs on the latest version of Ubuntu. - -The workflow consists of the following steps: - -1. Check out the code from the repository -2. Set up Python 3.9 -3. Install Poetry, a package and dependency manager for Python -4. Load a cached virtual environment created by Poetry, to speed up the process if possible -5. Install dependencies specified in the `poetry.lock` file -6. Run the integration tests using the `terminal.py` script -7. Upload a summary of the test results to Slack - -The results of the tests are captured in a file called `result.txt`. The summary of the tests, including information about failed tests, is then uploaded to Slack using the `adrey/slack-file-upload-action` GitHub Action. - -## Linting Workflow -This GitHub Actions workflow is responsible for running linting checks on the codebase. This workflow is triggered on pull request events such as `opened`, `synchronize`, and `edited`, and push events on branches with names that start with `feature/`, `hotfix/`, or `release/`. The workflow also sets a number of environment variables and uses Github Actions caching to improve performance. - -It consists of two jobs: `code-linting` and `markdown-link-check`. - -The first job, `code-linting`, runs on an Ubuntu machine and performs several linting tasks on the code in the repository, including: - -- Checking out the code from the repository -- Setting up Python 3.9 -- Installing a number of Python packages necessary for the linting tasks -- Running `bandit` to check for security vulnerabilities -- Running `black` to check the code formatting -- Running `codespell` to check the spelling of comments, strings, and variable names -- Running `ruff` to check the use of Python -- Running `mypy` to check the type annotations -- Running `pyupgrade` to upgrade Python 2 code to Python 3 -- Running `pylint` to perform static analysis of the code - -The second job, `markdown-link-check`, runs on an Ubuntu machine and performs linting of the markdown files in the repository. It uses a Docker container `avtodev/markdown-lint` to perform the linting. - -## MacOS Build Workflow -This GitHub Actions workflow is used to build a version of the OpenBB Platform CLI for M1 MacOS. The build process includes installing necessary dependencies, building the terminal application using PyInstaller, creating a DMG file for distribution, and running integration tests on the built application. - -Jobs ----- - -The workflow consists of a single job named `Build` which runs on self-hosted MacOS systems with ARM64 architecture. The job performs the following steps: - -1. Checkout: The main branch of the repository is checked out, allowing for the commit hashes to line up. -2. Git Log: The log of the Git repository is displayed. -3. Install create-dmg: The `create-dmg` tool is installed using Homebrew. -4. Clean Previous Path: The previous PATH environment variable is cleared and restored to its default values. -5. Setup Conda Caching: The miniconda environment is set up using a caching mechanism for faster workflow execution after the first run. -6. Setup Miniconda: Miniconda is set up using the `conda-3-9-env-full.yaml` environment file, with channels `conda-forge` and `defaults`, and with the `build_env` environment activated. -7. Run Poetry: Poetry is used to install the dependencies for the project. -8. Install PyInstaller: PyInstaller is installed using Poetry. -9. Poetry Install Portfolio Optimization and Forecasting Toolkits: The portfolio optimization and forecasting toolkits are installed using Poetry. -10. Install Specific Papermill: A specific version of Papermill is installed using pip. -11. Build Bundle: The terminal application is built using PyInstaller, with icons and assets copied to the DMG directory. -12. Create DMG: The DMG file is created using the `create-dmg` tool. -13. Clean up Build Artifacts: The build artifacts such as the terminal directory and DMG directory are removed. -14. Save Build Artifact DMG: The DMG file is saved as a build artifact. -15. Convert & Mount DMG: The DMG file is converted and mounted. -16. Directory Change: The current directory is changed to the mounted DMG file. -17. Unmount DMG: The mounted DMG file is unmounted. -18. Run Integration Tests: The built terminal application is run with integration tests, and the results are displayed. - -Finally, the integration tests are run and the results are logged. The workflow is configured to run only when triggered by a workflow dispatch event and runs in a concurrent group, with the ability to cancel in-progress jobs. - -## Nightly Build Workflow -This code is a GitHub Actions workflow configuration file that is used to trigger other workflows when certain events occur. The main purpose of this workflow is to trigger builds on different platforms when a release is made or a pull request is made to the main branch. - -This workflow is triggered at UTC+0 daily by the GitHub Action schedule event. - -The job includes the following steps: - -1. Trigger Windows Build: This step uses the `aurelien-baudet/workflow-dispatch` action to trigger the windows10_build.yml workflow. - -2. Trigger macOS Build: This step uses the `aurelien-baudet/workflow-dispatch` action to trigger the m1_macos_build.yml workflow - -3. Trigger Intel Build: This step uses the `aurelien-baudet/workflow-dispatch` action to trigger the intel_macos_build.yml workflow +- Feature branches: feature/ +- Hotfix branches: hotfix/ +- Release branches: release/(rc) -4. Trigger Docker Build: This step uses the `aurelien-baudet/workflow-dispatch` action to trigger the docker.yml workflow +## Deploy to PyPI - Nightly -This workflow also uses a concurrency setting that groups the jobs by the workflow and ref, and cancels any in-progress jobs. - -## Nightly PyPI Publish Workflow This workflow is used to publish the latest version of the OpenBB Platform CLI to PyPI. The workflow is triggered at UTC+0 daily by the GitHub Action schedule event. It does this by first updating the `pyproject.toml` file with a pre-determined version string of the form `.dev`, where `` represents the current day's date as a 8 digit number. @@ -169,12 +36,13 @@ Then, the code installs `pypa/build` and uses `python -m build` to create a bina Finally, it uses the PyPA specific action `gh-action-pypi-publish` to publish the created files to PyPI. -## PYPI publish Workflow +## Deploy the OpenBB Platform to Test PyPI + The Github Action code `Deploy to PyPI` is used to deploy a Python project to PyPI (Python Package Index) and TestPyPI, which is a separate package index for testing purposes. The code is triggered on two events: -1. Push event: The code is triggered whenever there is a push to the `release/*` and `main` branches. +1. Push event: The code is triggered whenever there is a push to the `release/*` and `main` branches. -2. Workflow dispatch event: The code can be manually triggered by the workflow dispatch event. +2. Workflow dispatch event: The code can be manually triggered by the workflow dispatch event. The code sets the concurrency to the `group` and the option `cancel-in-progress` is set to `true` to ensure that the running jobs in the same `group` are cancelled in case another job is triggered. @@ -186,47 +54,47 @@ Similarly, the `deploy-pypi` job is triggered only if the pushed branch starts w Note: The code uses the `pypa/build` package for building the binary wheel and source tarball, and the `pypa/gh-action-pypi-publish@release/v1` Github Action for publishing the distributions to PyPI and TestPyPI. -## Unit Tests Workflow -This workflow is used to run unit tests on the OpenBB Platform CLI. The workflow is triggered on the following events: -The events this workflow will respond to are: +## Draft release -1. Pull requests that are opened, synchronized, edited, or closed. The pull request must be made to the `develop` or `main` branches. +This GitHub Actions workflow is designed to automatically generate and update draft releases in a GitHub repository. The workflow is triggered when it is manually dispatched, allowing you to control when the draft releases are updated. -2. Pushes to the `release/*` branches. +## General Linting -Each job in the workflow specifies a set of steps that are executed in order. +This GitHub Actions workflow is responsible for running linting checks on the codebase. This workflow is triggered on pull request events such as `opened`, `synchronize`, and `edited`, and push events on branches with names that start with `feature/`, `hotfix/`, or `release/`. The workflow also sets a number of environment variables and uses Github Actions caching to improve performance. -The first job, `check-files-changed`, checks whether there are any changes to certain file types in the repository, such as Python files and lockfiles. If there are changes, then the `check-changes` output variable is set to `true`. +It consists of two jobs: `code-linting` and `markdown-link-check`. + +The first job, `code-linting`, runs on an Ubuntu machine and performs several linting tasks on the code in the repository, including: + +- Checking out the code from the repository +- Setting up Python 3.9 +- Installing a number of Python packages necessary for the linting tasks +- Running `bandit` to check for security vulnerabilities +- Running `black` to check the code formatting +- Running `codespell` to check the spelling of comments, strings, and variable names +- Running `ruff` to check the use of Python +- Running `pylint` to perform static analysis of the code +- Running `mypy` to check the type annotations +- Running `pydocstyle` to check the docstrings + +The second job, `markdown-link-check`, runs on an Ubuntu machine and performs linting of the markdown files in the repository. It uses a Docker container `avtodev/markdown-lint` to perform the linting. + +## Deploy to GitHub Pages + +This GitHub Actions workflow is responsible for building the documentation and deploying it to GitHub Pages. This workflow is triggered when a new change is pushed to the `main` or `release` branch of the repository, and the documentation is published to GitHub Pages. -The next job, `base-test`, runs a series of tests if `check-changes` is `true` and the base branch of the pull request is `develop`. This job sets up a Python 3.9 environment, installs Poetry, and then runs tests using `pytest`. Finally, it starts the terminal and exits. +## Pull Request Labels -The next job, `tests-python`, runs tests for different versions of Python (3.8, 3.9, and 3.10) on the `ubuntu-latest` operating system. It sets up the specified Python version, installs Poetry and dependencies, and then runs tests using `pytest`. +Automatic labelling of pull requests. -The next job, `full-test`, uses the GitHub Actions `checkout` action to checkout the code, followed by the `setup-python` action to set up the specified version of Python. Then, the `install-poetry` action is used to install the package manager Poetry, and a cache is set up using the `actions/cache` action to avoid re-installing dependencies. After that, the dependencies are installed using Poetry, and a list of installed packages is displayed. Then, the tests are run using `pytest`, and finally, the `terminal.py` script is started and exited. +## 🚉 Integration test Platform (API) -The last job, `tests-conda`, sets up a Miniconda environment using the `setup-miniconda` action. The environment is specified using a YAML file and is activated. Then, the tests are run. +Run `openbb_platform` API integration tests, -## Windows 10 Build Workflow -This is a GitHub Actions workflow file that automates the build and testing process for the OpenBB Platform CLI on Windows 10. The workflow consists of two jobs: +## 🖥️ Unit test CLI -1. Windows-Build -2. Build-Exe +Run `cli` directory unit tests. -- The Windows-Build job does the following: - - Sets up the Windows Git configuration for long file paths. - - Checks out the repository code. - - Sets up Python 3.9 and creates an OpenBB environment using poetry. - - Installs necessary packages and builds the terminal using PyInstaller. - - Uploads the built artifact to GitHub as an artifact. -- The Build-Exe job does the following: - - Sets up the Windows Git configuration for long file paths. - - Checks out the repository code. - - Downloads the built artifact from the previous Windows-Build job. - - Copies the files into an app folder for building the EXE file. - - Builds the EXE file using NSIS. - - Uploads the built EXE as an artifact to GitHub. - - Runs integration tests on the terminal and saves the results to a text file. - - Uploads the test results summary to Slack. - - Cleans up previous build files and artifacts. +## 🚉 Unit test Platform -This workflow is triggered by the `workflow_dispatch` event and runs in concurrency with other workflows in the same group, with the ability to cancel in-progress builds. The concurrency group is defined as `${{ github.workflow }}-${{ github.ref }}`. \ No newline at end of file +Run `openbb_platform` directory unit tests - providers, extensions, etc. diff --git a/.github/workflows/pypi-nightly.yml b/.github/workflows/deploy-pypi-nightly.yml similarity index 100% rename from .github/workflows/pypi-nightly.yml rename to .github/workflows/deploy-pypi-nightly.yml diff --git a/.github/workflows/test_pypi_platform.yml b/.github/workflows/deploy-test-pypi.yml similarity index 96% rename from .github/workflows/test_pypi_platform.yml rename to .github/workflows/deploy-test-pypi.yml index 54fe09f7dc24..c5a3bb6a3756 100644 --- a/.github/workflows/test_pypi_platform.yml +++ b/.github/workflows/deploy-test-pypi.yml @@ -1,4 +1,4 @@ -name: Deploy the OpenBB Platform and the OpenBBTerminal to Test PyPI +name: Deploy the OpenBB Platform to Test PyPI on: push: diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 3dab21e7812d..01e52ee80d56 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -1,4 +1,4 @@ -name: Release Drafter +name: Draft release on: workflow_dispatch: diff --git a/.github/workflows/linting.yml b/.github/workflows/general-linting.yml similarity index 96% rename from .github/workflows/linting.yml rename to .github/workflows/general-linting.yml index 2abf2e5455f0..02cf0b3454db 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/general-linting.yml @@ -1,10 +1,6 @@ name: General Linting env: - OPENBB_ENABLE_QUICK_EXIT: true - OPENBB_LOG_COLLECT: false - OPENBB_USE_PROMPT_TOOLKIT: false - OPENBB_FILE_OVERWRITE: true PIP_DEFAULT_TIMEOUT: 100 on: diff --git a/.github/workflows/labels-PR.yml b/.github/workflows/gh-pr-labels.yml similarity index 100% rename from .github/workflows/labels-PR.yml rename to .github/workflows/gh-pr-labels.yml diff --git a/.github/workflows/labels-issue.yml b/.github/workflows/labels-issue.yml deleted file mode 100644 index 01486ba0824a..000000000000 --- a/.github/workflows/labels-issue.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: "Set Issue Label and Assignee" -on: - issues: - types: [opened] - -jobs: - test: - runs-on: ubuntu-latest - steps: - - uses: Naturalclar/issue-action@v2.0.2 - with: - title-or-body: "both" - parameters: - '[ {"keywords": ["bug", "error", "issue"], "labels": ["bug"]}, - {"keywords": ["help", "guidance"], "labels": ["help-wanted"], "assignees": ["colin99d"]}, - {"keywords": ["portfolio"], "labels": ["portfolio"], "assignees": ["JerBouma", "montezdesousa"]}, - {"keywords": ["dashboards"], "labels": ["dashboards"], "assignees": ["colin99d"]}, - {"keywords": ["dependencies"], "labels": ["dependencies"], "assignees": ["piiq"]}, - {"keywords": ["build"], "labels": ["build"], "assignees": ["piiq"]}, - {"keywords": ["jupyter"], "labels": ["jupyterlab"], "assignees": ["piiq"]}, - {"keywords": ["reports"], "labels": ["notebookreports"], "assignees": ["piiq"]}, - {"keywords": ["installer"], "labels": ["installer"], "assignees": ["piiq", "andrewkenreich"]}, - {"keywords": ["pytest", "tests"], "labels": ["tests"], "assignees": ["Chavithra"]}, - {"keywords": ["guides"], "labels": ["guides"], "assignees": ["JerBouma"]}, - {"keywords": ["crypto"], "labels": ["crypto"], "assignees": ["minhhoang1023"]} - ]' - github-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml deleted file mode 100644 index 90d68cb9de5a..000000000000 --- a/.github/workflows/nightly-build.yml +++ /dev/null @@ -1,35 +0,0 @@ -name: Nightly Build - -env: - OPENBB_ENABLE_QUICK_EXIT: true - OPENBB_LOG_COLLECT: false - OPENBB_USE_PROMPT_TOOLKIT: false - PIP_DEFAULT_TIMEOUT: 100 - OPENBB_FILE_OVERWRITE: true - PYTHONNOUSERSITE: 1 - -on: - schedule: - - cron: "0 0 * * *" - -permissions: - actions: write - -jobs: - trigger-pypi-build: - runs-on: ubuntu-latest - steps: - - name: Trigger PyPI Build - uses: aurelien-baudet/workflow-dispatch@v2 - with: - workflow: pypi-nightly.yml - token: ${{ secrets.GITHUB_TOKEN }} - - trigger-api-integration-test: - runs-on: ubuntu-latest - steps: - - name: Trigger Platform API Integration Test - uses: aurelien-baudet/workflow-dispatch@v2 - with: - workflow: platform-api-integration-test.yml - token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml deleted file mode 100644 index efc2fe5d9d8f..000000000000 --- a/.github/workflows/pypi.yml +++ /dev/null @@ -1,78 +0,0 @@ -name: Deploy to PyPI - -on: - push: - branches: - - release/v3/* - - workflow_dispatch: - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - deploy-test-pypi: - name: Build and publish 📦 to TestPyPI - if: startsWith(github.ref, 'refs/heads/release/') - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - name: Setup Python 3.9 - uses: actions/setup-python@v4 - with: - python-version: "3.9" - - - name: Install pypa/build - run: >- - python -m - pip install - build - --user - - name: Build a binary wheel and a source tarball - run: >- - python -m - build - --sdist - --wheel - --outdir dist/ - . - - - name: Publish distribution 📦 to Test PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - password: ${{ secrets.TEST_PYPI_API_TOKEN }} - repository_url: https://test.pypi.org/legacy/ - - deploy-pypi: - name: Build and publish 📦 to PyPI - if: startsWith(github.ref, 'refs/heads/main') - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - name: Setup Python 3.9 - uses: actions/setup-python@v4 - with: - python-version: "3.9" - - - name: Install pypa/build - run: >- - python -m - pip install - build - --user - - name: Build a binary wheel and a source tarball - run: >- - python -m - build - --sdist - --wheel - --outdir dist/ - . - - - name: Publish distribution 📦 to PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/platform-api-integration-test.yml b/.github/workflows/test-integration-platform.yml similarity index 98% rename from .github/workflows/platform-api-integration-test.yml rename to .github/workflows/test-integration-platform.yml index 11b4c9c5d40f..143ca20d50a7 100644 --- a/.github/workflows/platform-api-integration-test.yml +++ b/.github/workflows/test-integration-platform.yml @@ -1,4 +1,4 @@ -name: API Integration Tests +name: 🚉 Integration test Platform (API) on: workflow_dispatch: diff --git a/.github/workflows/test-unit-cli.yml b/.github/workflows/test-unit-cli.yml new file mode 100644 index 000000000000..38c6348fc03a --- /dev/null +++ b/.github/workflows/test-unit-cli.yml @@ -0,0 +1,46 @@ +name: 🖥️ Unit test CLI + +on: + pull_request: + branches: + - develop + paths: + - 'cli/**' + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + +jobs: + unit_tests: + runs-on: ubuntu-latest + strategy: + fail-fast: false + + matrix: + python_version: + ["3.9", "3.10", "3.11"] + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + ref: ${{ github.event.pull_request.head.sha }} + - name: Install Python ${{ matrix.python_version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python_version }} + allow-prereleases: true + cache: "pip" + + - name: Cache pip packages + uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('cli/poetry.lock') }} + restore-keys: | + ${{ runner.os }}-pip- + + - name: Run tests + run: | + pip install nox + nox -f .github/scripts/noxfile.py -s unit_test_cli --python ${{ matrix.python_version }} diff --git a/.github/workflows/platform-core.yml b/.github/workflows/test-unit-platform.yml similarity index 89% rename from .github/workflows/platform-core.yml rename to .github/workflows/test-unit-platform.yml index 84ac783cfaf1..e5323f380500 100644 --- a/.github/workflows/platform-core.yml +++ b/.github/workflows/test-unit-platform.yml @@ -1,4 +1,4 @@ -name: Test Platform V4 +name: 🚉 Unit test Platform on: pull_request: @@ -43,4 +43,4 @@ jobs: - name: Run tests run: | pip install nox - nox -f .github/scripts/noxfile.py -s tests --python ${{ matrix.python_version }} + nox -f .github/scripts/noxfile.py -s unit_test_platform --python ${{ matrix.python_version }} diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml deleted file mode 100644 index 32dfc58d5aa7..000000000000 --- a/.github/workflows/unit-test.yml +++ /dev/null @@ -1,72 +0,0 @@ -name: Unit Test - -env: - OPENBB_ENABLE_QUICK_EXIT: true - OPENBB_LOG_COLLECT: false - OPENBB_USE_PROMPT_TOOLKIT: false - OPENBB_FILE_OVERWRITE: true - OPENBB_ENABLE_CHECK_API: false - OPENBB_PREVIOUS_USE: true - OPENBB_USE_INTERACTIVE_DF: false - PIP_DEFAULT_TIMEOUT: 100 - -on: - pull_request: - branches: - - develop - - main - types: [opened, synchronize, edited, closed, labeled] - push: - branches: - - release/* - merge_group: - types: [checks_requested] -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - check-files-changed: - name: Check for changes - runs-on: ubuntu-latest - # Run this job only if the PR is not merged, PR != draft and the event is not a push - if: github.event.pull_request.merged == false && github.event_name != 'push' && github.event.pull_request.draft == false - outputs: - check-changes: ${{ steps.check-changes.outputs.check-changes }} - check-platform-changes: ${{ steps.check-platform-changes.outputs.check-platform-changes }} # New output for openbb_platform changes - steps: - - name: Checkout - uses: actions/checkout@v1 # v1 is used to preserve the git history and works with the git diff command - with: - fetch-depth: 100 - # The GitHub token is preserved by default but this job doesn't need - # to be able to push to GitHub. - - # Check for changes to python files, lockfiles and the openbb_terminal folder - - name: Check for changes to files to trigger unit test - id: check-changes - run: | - current_branch=$(jq -r .pull_request.base.ref "$GITHUB_EVENT_PATH") - - if git diff --name-only origin/$current_branch HEAD | grep -E ".py$|openbb_terminal\/.*|pyproject.toml|poetry.lock|requirements.txt|requirements-full.txt"; then - echo "check-changes=true" >> $GITHUB_OUTPUT - else - echo "check-changes=false" >> $GITHUB_OUTPUT - fi - - # Check for changes to openbb_platform - - name: Check for changes to openbb_platform - id: check-platform-changes - run: | - current_branch=$(jq -r .pull_request.base.ref "$GITHUB_EVENT_PATH") - - if git diff --name-only origin/$current_branch HEAD | grep -E "openbb_platform\/.*"; then - echo "check-platform-changes=true" >> $GITHUB_OUTPUT - else - echo "check-platform-changes=false" >> $GITHUB_OUTPUT - fi - - - name: Show output of previous step - run: | - echo "check-changes=${{ steps.check-changes.outputs.check-changes }}" - echo "check-platform-changes=${{ steps.check-platform-changes.outputs.check-platform-changes }}" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5f507829eedd..887df4e3e2c5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -39,7 +39,7 @@ repos: "--ignore-words-list=VAI,MIS,shs,gard,te,commun,parana,ro,zar,vie,hel,jewl,zlot,ba,buil,coo,ether,hist,hsi,mape,navagation,operatio,pres,ser,yeld,shold,ist,varian,datas,ake,creat,statics,ket,toke,certi,buidl,ot,fo", "--quiet-level=2", "--skip=./**/tests/**,./**/test_*.py,.git,*.css,*.csv,*.html,*.ini,*.ipynb,*.js,*.json,*.lock,*.scss,*.txt,*.yaml,build/pyinstaller/*,./website/config.toml", - "-x=.github/workflows/linting.yml" + "-x=.github/workflows/general-linting.yml" ] - repo: local hooks: diff --git a/cli/openbb_cli/config/menu_text.py b/cli/openbb_cli/config/menu_text.py index ac3d0b9ca7dc..ed2ba6ddb428 100644 --- a/cli/openbb_cli/config/menu_text.py +++ b/cli/openbb_cli/config/menu_text.py @@ -106,20 +106,6 @@ def add_raw(self, text: str, left_spacing: bool = False): else: self.menu_text += text - def add_section( - self, text: str, description: str = "", leading_new_line: bool = False - ): - """Append raw text (without translation).""" - spacing = (self.CMD_NAME_LENGTH - len(text) + self.SECTION_SPACING) * " " - if description: - text = f"{text}{spacing}{description}\n" - - if leading_new_line: - self.menu_text += "\n" + text - - else: - self.menu_text += text - def add_info(self, text: str): """Append information text (after translation).""" self.menu_text += f"[info]{text}:[/info]\n" diff --git a/cli/tests/test_argparse_translator.py b/cli/tests/test_argparse_translator.py new file mode 100644 index 000000000000..e88eb1b811f2 --- /dev/null +++ b/cli/tests/test_argparse_translator.py @@ -0,0 +1,94 @@ +"""Test the Argparse Translator.""" + +from argparse import ArgumentParser + +import pytest +from openbb_cli.argparse_translator.argparse_translator import ( + ArgparseTranslator, + CustomArgument, + CustomArgumentGroup, +) + +# pylint: disable=protected-access + + +def test_custom_argument_action_validation(): + """Test that CustomArgument raises an error for invalid actions.""" + with pytest.raises(ValueError) as excinfo: + CustomArgument( + name="test", + type=bool, + dest="test", + default=False, + required=True, + action="store", + help="Test argument", + nargs=None, + choices=None, + ) + assert 'action must be "store_true"' in str(excinfo.value) + + +def test_custom_argument_remove_props_on_store_true(): + """Test that CustomArgument removes type, nargs, and choices on store_true.""" + argument = CustomArgument( + name="verbose", + type=None, + dest="verbose", + default=None, + required=False, + action="store_true", + help="Verbose output", + nargs=None, + choices=None, + ) + assert argument.type is None + assert argument.nargs is None + assert argument.choices is None + + +def test_custom_argument_group(): + """Test the CustomArgumentGroup class.""" + args = [ + CustomArgument( + name="test", + type=int, + dest="test", + default=1, + required=True, + action="store", + help="Test argument", + nargs=None, + choices=None, + ) + ] + group = CustomArgumentGroup(name="Test Group", arguments=args) + assert group.name == "Test Group" + assert len(group.arguments) == 1 + assert group.arguments[0].name == "test" + + +def test_argparse_translator_setup(): + """Test the ArgparseTranslator setup.""" + + def test_function(test_arg: int): + """A test function.""" + return test_arg * 2 + + translator = ArgparseTranslator(func=test_function) + parser = translator.parser + assert isinstance(parser, ArgumentParser) + assert "--test_arg" in parser._option_string_actions + + +def test_argparse_translator_execution(): + """Test the ArgparseTranslator execution.""" + + def test_function(test_arg: int) -> int: + """A test function.""" + return test_arg * 2 + + translator = ArgparseTranslator(func=test_function) + parsed_args = translator.parser.parse_args(["--test_arg", "3"]) + result = translator.execute_func(parsed_args) + assert result == 6 diff --git a/cli/tests/test_argparse_translator_obbject_registry.py b/cli/tests/test_argparse_translator_obbject_registry.py new file mode 100644 index 000000000000..a37e5a335415 --- /dev/null +++ b/cli/tests/test_argparse_translator_obbject_registry.py @@ -0,0 +1,89 @@ +"""Test OBBject Registry.""" + +from unittest.mock import Mock + +import pytest +from openbb_cli.argparse_translator.obbject_registry import Registry +from openbb_core.app.model.obbject import OBBject + +# pylint: disable=redefined-outer-name, protected-access + + +@pytest.fixture +def registry(): + """Fixture to create a Registry instance for testing.""" + return Registry() + + +@pytest.fixture +def mock_obbject(): + """Fixture to create a mock OBBject for testing.""" + + class MockModel: + """Mock model for testing.""" + + def __init__(self, value): + self.mock_value = value + self._model_json_schema = "mock_json_schema" + + def model_json_schema(self): + return self._model_json_schema + + obb = Mock(spec=OBBject) + obb.id = "123" + obb.provider = "test_provider" + obb.extra = {"command": "test_command"} + obb._route = "/test/route" + obb._standard_params = Mock() + obb._standard_params.__dict__ = {} + obb.results = [MockModel(1), MockModel(2)] + return obb + + +def test_listing_all_obbjects(registry, mock_obbject): + """Test listing all obbjects with additional properties.""" + registry.register(mock_obbject) + + all_obbjects = registry.all + assert len(all_obbjects) == 1 + assert all_obbjects[0]["command"] == "test_command" + assert all_obbjects[0]["provider"] == "test_provider" + + +def test_registry_initialization(registry): + """Test the Registry is initialized correctly.""" + assert registry.obbjects == [] + + +def test_register_new_obbject(registry, mock_obbject): + """Test registering a new OBBject.""" + registry.register(mock_obbject) + assert mock_obbject in registry.obbjects + + +def test_register_duplicate_obbject(registry, mock_obbject): + """Test that duplicate OBBjects are not added.""" + registry.register(mock_obbject) + registry.register(mock_obbject) + assert len(registry.obbjects) == 1 + + +def test_get_obbject_by_index(registry, mock_obbject): + """Test retrieving an obbject by its index.""" + registry.register(mock_obbject) + retrieved = registry.get(0) + assert retrieved == mock_obbject + + +def test_remove_obbject_by_index(registry, mock_obbject): + """Test removing an obbject by index.""" + registry.register(mock_obbject) + registry.remove(0) + assert mock_obbject not in registry.obbjects + + +def test_remove_last_obbject_by_default(registry, mock_obbject): + """Test removing the last obbject by default.""" + registry.register(mock_obbject) + registry.remove() + assert not registry.obbjects diff --git a/cli/tests/test_cli.py b/cli/tests/test_cli.py new file mode 100644 index 000000000000..1fe19344f0f7 --- /dev/null +++ b/cli/tests/test_cli.py @@ -0,0 +1,45 @@ +"""Test the CLI module.""" + +from unittest.mock import patch + +from openbb_cli.cli import main + + +@patch("openbb_cli.cli.bootstrap") +@patch("openbb_cli.cli.launch") +@patch("sys.argv", ["openbb", "--dev", "--debug"]) +def test_main_with_dev_and_debug(mock_launch, mock_bootstrap): + """Test the main function with dev and debug flags.""" + main() + mock_bootstrap.assert_called_once() + mock_launch.assert_called_once_with(True, True) + + +@patch("openbb_cli.cli.bootstrap") +@patch("openbb_cli.cli.launch") +@patch("sys.argv", ["openbb"]) +def test_main_without_arguments(mock_launch, mock_bootstrap): + """Test the main function without arguments.""" + main() + mock_bootstrap.assert_called_once() + mock_launch.assert_called_once_with(False, False) + + +@patch("openbb_cli.cli.bootstrap") +@patch("openbb_cli.cli.launch") +@patch("sys.argv", ["openbb", "--dev"]) +def test_main_with_dev_only(mock_launch, mock_bootstrap): + """Test the main function with dev flag only.""" + main() + mock_bootstrap.assert_called_once() + mock_launch.assert_called_once_with(True, False) + + +@patch("openbb_cli.cli.bootstrap") +@patch("openbb_cli.cli.launch") +@patch("sys.argv", ["openbb", "--debug"]) +def test_main_with_debug_only(mock_launch, mock_bootstrap): + """Test the main function with debug flag only.""" + main() + mock_bootstrap.assert_called_once() + mock_launch.assert_called_once_with(False, True) diff --git a/cli/tests/test_config_completer.py b/cli/tests/test_config_completer.py new file mode 100644 index 000000000000..71efad99d5b8 --- /dev/null +++ b/cli/tests/test_config_completer.py @@ -0,0 +1,78 @@ +"""Test the Config completer.""" + +import pytest +from openbb_cli.config.completer import WordCompleter +from prompt_toolkit.completion import CompleteEvent +from prompt_toolkit.document import Document + +# pylint: disable=redefined-outer-name, import-outside-toplevel + + +@pytest.fixture +def word_completer(): + """Return a simple word completer.""" + words = ["test", "example", "demo"] + return WordCompleter(words, ignore_case=True) + + +def test_word_completer_simple(word_completer): + """Test the word completer with a simple word list.""" + doc = Document(text="ex", cursor_position=2) + completions = list(word_completer.get_completions(doc, CompleteEvent())) + assert len(completions) == 1 + assert completions[0].text == "example" + + +def test_word_completer_case_insensitive(word_completer): + """Test the word completer with case-insensitive matching.""" + doc = Document(text="Ex", cursor_position=2) + completions = list(word_completer.get_completions(doc, CompleteEvent())) + assert len(completions) == 1 + assert completions[0].text == "example" + + +def test_word_completer_no_match(word_completer): + """Test the word completer with no matches.""" + doc = Document(text="xyz", cursor_position=3) + completions = list(word_completer.get_completions(doc, CompleteEvent())) + assert len(completions) == 0 + + +@pytest.fixture +def nested_completer(): + """Return a nested completer.""" + from openbb_cli.config.completer import NestedCompleter + + data = { + "show": { + "version": None, + "interfaces": None, + "clock": None, + "ip": {"interface": {"brief": None}}, + }, + "exit": None, + "enable": None, + } + return NestedCompleter.from_nested_dict(data) + + +def test_nested_completer_root_command(nested_completer): + """Test the nested completer with a root command.""" + doc = Document(text="sh", cursor_position=2) + completions = list(nested_completer.get_completions(doc, CompleteEvent())) + assert "show" in [c.text for c in completions] + + +def test_nested_completer_sub_command(nested_completer): + """Test the nested completer with a sub-command.""" + doc = Document(text="show ", cursor_position=5) + completions = list(nested_completer.get_completions(doc, CompleteEvent())) + assert "version" in [c.text for c in completions] + assert "interfaces" in [c.text for c in completions] + + +def test_nested_completer_no_match(nested_completer): + """Test the nested completer with no matches.""" + doc = Document(text="random ", cursor_position=7) + completions = list(nested_completer.get_completions(doc, CompleteEvent())) + assert len(completions) == 0 diff --git a/cli/tests/test_config_console.py b/cli/tests/test_config_console.py new file mode 100644 index 000000000000..60ff91a88ac1 --- /dev/null +++ b/cli/tests/test_config_console.py @@ -0,0 +1,47 @@ +"""Test Config Console.""" + +from unittest.mock import patch + +import pytest +from openbb_cli.config.console import Console +from rich.text import Text + +# pylint: disable=redefined-outer-name, unused-argument, unused-variable, protected-access + + +@pytest.fixture +def mock_settings(): + """Mock settings to inject into Console.""" + + class MockSettings: + TEST_MODE = False + ENABLE_RICH_PANEL = True + SHOW_VERSION = True + VERSION = "1.0" + + return MockSettings() + + +@pytest.fixture +def console(mock_settings): + """Create a Console instance with mocked settings.""" + with patch("rich.console.Console") as MockRichConsole: # noqa: F841 + return Console(settings=mock_settings) + + +def test_print_without_panel(console, mock_settings): + """Test printing without a rich panel when disabled.""" + mock_settings.ENABLE_RICH_PANEL = False + with patch.object(console._console, "print") as mock_print: + console.print(text="Hello, world!", menu="Home Menu") + mock_print.assert_called_once_with("Hello, world!") + + +def test_blend_text(): + """Test blending text colors.""" + message = "Hello" + color1 = (255, 0, 0) # Red + color2 = (0, 0, 255) # Blue + blended_text = Console._blend_text(message, color1, color2) + assert isinstance(blended_text, Text) + assert "Hello" in blended_text.plain diff --git a/cli/tests/test_config_menu_text.py b/cli/tests/test_config_menu_text.py new file mode 100644 index 000000000000..10956ccbac55 --- /dev/null +++ b/cli/tests/test_config_menu_text.py @@ -0,0 +1,68 @@ +"""Test Config Menu Text.""" + +import pytest +from openbb_cli.config.menu_text import MenuText + +# pylint: disable=redefined-outer-name, protected-access + + +@pytest.fixture +def menu_text(): + """Fixture to create a MenuText instance for testing.""" + return MenuText(path="/test/path") + + +def test_initialization(menu_text): + """Test initialization of the MenuText class.""" + assert menu_text.menu_text == "" + assert menu_text.menu_path == "/test/path" + assert menu_text.warnings == [] + + +def test_add_raw(menu_text): + """Test adding raw text.""" + menu_text.add_raw("Example raw text") + assert "Example raw text" in menu_text.menu_text + + +def test_add_info(menu_text): + """Test adding informational text.""" + menu_text.add_info("Info text") + assert "[info]Info text:[/info]" in menu_text.menu_text + + +def test_add_cmd(menu_text): + """Test adding a command.""" + menu_text.add_cmd("command", "Performs an action") + assert "command" in menu_text.menu_text + assert "Performs an action" in menu_text.menu_text + + +def test_format_cmd_name(menu_text): + """Test formatting of command names that are too long.""" + long_name = "x" * 50 # Assuming CMD_NAME_LENGTH is 23 + formatted_name = menu_text._format_cmd_name(long_name) + assert len(formatted_name) <= menu_text.CMD_NAME_LENGTH + assert menu_text.warnings # Check that a warning was added + + +def test_format_cmd_description(menu_text): + """Test truncation of long descriptions.""" + long_description = "y" * 100 # Assuming CMD_DESCRIPTION_LENGTH is 65 + formatted_description = menu_text._format_cmd_description("cmd", long_description) + assert len(formatted_description) <= menu_text.CMD_DESCRIPTION_LENGTH + + +def test_add_menu(menu_text): + """Test adding a menu item.""" + menu_text.add_menu("Settings", "Configure your settings") + assert "Settings" in menu_text.menu_text + assert "Configure your settings" in menu_text.menu_text + + +def test_add_setting(menu_text): + """Test adding a setting.""" + menu_text.add_setting("Enable Feature", True, "Feature description") + assert "Enable Feature" in menu_text.menu_text + assert "Feature description" in menu_text.menu_text + assert "[green]" in menu_text.menu_text diff --git a/cli/tests/test_config_setup.py b/cli/tests/test_config_setup.py new file mode 100644 index 000000000000..7c01469063b4 --- /dev/null +++ b/cli/tests/test_config_setup.py @@ -0,0 +1,49 @@ +"""Test the Config Setup.""" + +from unittest.mock import patch + +import pytest +from openbb_cli.config.setup import bootstrap + +# pylint: disable=unused-variable + + +def test_bootstrap_creates_directory_and_file(): + """Test that bootstrap creates the settings directory and environment file.""" + with patch("pathlib.Path.mkdir") as mock_mkdir, patch( + "pathlib.Path.touch" + ) as mock_touch: + bootstrap() + mock_mkdir.assert_called_once_with(parents=True, exist_ok=True) + mock_touch.assert_called_once_with(exist_ok=True) + + +def test_bootstrap_directory_exists(): + """Test bootstrap when the directory already exists.""" + with patch("pathlib.Path.mkdir") as mock_mkdir, patch( + "pathlib.Path.touch" + ) as mock_touch: + bootstrap() + mock_mkdir.assert_called_once_with(parents=True, exist_ok=True) + mock_touch.assert_called_once_with(exist_ok=True) + + +def test_bootstrap_file_exists(): + """Test bootstrap when the environment file already exists.""" + with patch("pathlib.Path.mkdir") as mock_mkdir, patch( + "pathlib.Path.touch" + ) as mock_touch: + bootstrap() + mock_mkdir.assert_called_once_with(parents=True, exist_ok=True) + mock_touch.assert_called_once_with(exist_ok=True) + + +def test_bootstrap_permission_error(): + """Test bootstrap handles permission errors gracefully.""" + with patch("pathlib.Path.mkdir") as mock_mkdir, patch( + "pathlib.Path.touch" + ) as mock_touch, pytest.raises( # noqa: F841 + PermissionError + ): + mock_mkdir.side_effect = PermissionError("No permission to create directory") + bootstrap() # Expecting to raise a PermissionError and be caught by pytest.raises diff --git a/cli/tests/test_config_style.py b/cli/tests/test_config_style.py new file mode 100644 index 000000000000..72e9c2a2f38f --- /dev/null +++ b/cli/tests/test_config_style.py @@ -0,0 +1,60 @@ +"""Test Config Style.""" + +from pathlib import Path +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.config.style import Style + +# pylint: disable=redefined-outer-name, protected-access + + +@pytest.fixture +def mock_style_directory(tmp_path): + """Fixture to create a mock styles directory.""" + (tmp_path / "styles" / "default").mkdir(parents=True, exist_ok=True) + return tmp_path / "styles" + + +@pytest.fixture +def style(mock_style_directory): + """Fixture to create a Style instance for testing.""" + return Style(directory=mock_style_directory) + + +def test_initialization(style): + """Test that Style class initializes with default properties.""" + assert style.line_width == 1.5 + assert isinstance(style.console_style, dict) + + +@patch("pathlib.Path.exists", MagicMock(return_value=True)) +@patch("pathlib.Path.rglob") +def test_load_styles(mock_rglob, style, mock_style_directory): + """Test loading styles from directories.""" + mock_rglob.return_value = [mock_style_directory / "default" / "dark.richstyle.json"] + style._load(mock_style_directory) + assert "dark" in style.console_styles_available + + +@patch("builtins.open", new_callable=MagicMock) +@patch("json.load", MagicMock(return_value={"background": "black"})) +def test_from_json(mock_open, style, mock_style_directory): + """Test loading style from a JSON file.""" + json_file = mock_style_directory / "dark.richstyle.json" + result = style._from_json(json_file) + assert result == {"background": "black"} + mock_open.assert_called_once_with(json_file) + + +def test_apply_invalid_style(style, mock_style_directory, capsys): + """Test applying an invalid style and falling back to default.""" + style.apply("nonexistent", mock_style_directory) + captured = capsys.readouterr() + assert "Invalid console style" in captured.out + + +def test_available_styles(style): + """Test listing available styles.""" + style.console_styles_available = {"dark": Path("/path/to/dark.richstyle.json")} + assert "dark" in style.available_styles diff --git a/cli/tests/test_controllers_base_controller.py b/cli/tests/test_controllers_base_controller.py new file mode 100644 index 000000000000..465a5b61e5e6 --- /dev/null +++ b/cli/tests/test_controllers_base_controller.py @@ -0,0 +1,79 @@ +"""Test the base controller.""" + +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.base_controller import BaseController + +# pylint: disable=unused-argument, unused-variable + + +class TestableBaseController(BaseController): + """Testable Base Controller.""" + + def __init__(self, queue=None): + """Initialize the TestableBaseController.""" + self.PATH = "/valid/path/" + super().__init__(queue=queue) + + def print_help(self): + """Print help.""" + + +def test_base_controller_initialization(): + """Test the initialization of the base controller.""" + with patch.object(TestableBaseController, "check_path", return_value=None): + controller = TestableBaseController() + assert controller.path == ["valid", "path"] # Checking for correct path split + + +def test_path_validation(): + """Test the path validation method.""" + controller = TestableBaseController() + + with pytest.raises(ValueError): + controller.PATH = "invalid/path" + controller.check_path() + + with pytest.raises(ValueError): + controller.PATH = "/invalid/path" + controller.check_path() + + with pytest.raises(ValueError): + controller.PATH = "/Invalid/Path/" + controller.check_path() + + controller.PATH = "/valid/path/" + + +def test_parse_input(): + """Test the parse input method.""" + controller = TestableBaseController() + input_str = "cmd1/cmd2/cmd3" + expected = ["cmd1", "cmd2", "cmd3"] + result = controller.parse_input(input_str) + assert result == expected + + +def test_switch(): + """Test the switch method.""" + controller = TestableBaseController() + with patch.object(controller, "call_exit", MagicMock()) as mock_exit: + controller.queue = ["exit"] + controller.switch("exit") + mock_exit.assert_called_once() + + +def test_call_help(): + """Test the call help method.""" + controller = TestableBaseController() + with patch("openbb_cli.controllers.base_controller.session.console.print"): + controller.call_help(None) + + +def test_call_exit(): + """Test the call exit method.""" + controller = TestableBaseController() + with patch.object(controller, "save_class", MagicMock()): + controller.queue = ["quit"] + controller.call_exit(None) diff --git a/cli/tests/test_controllers_base_platform_controller.py b/cli/tests/test_controllers_base_platform_controller.py new file mode 100644 index 000000000000..cabfe44cd6bd --- /dev/null +++ b/cli/tests/test_controllers_base_platform_controller.py @@ -0,0 +1,70 @@ +"""Test the BasePlatformController.""" + +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.base_platform_controller import PlatformController, Session + +# pylint: disable=redefined-outer-name, protected-access, unused-argument, unused-variable + + +@pytest.fixture +def mock_session(): + """Mock session fixture.""" + with patch( + "openbb_cli.controllers.base_platform_controller.session", + MagicMock(spec=Session), + ) as mock: + yield mock + + +def test_initialization_with_valid_params(mock_session): + """Test the initialization of the BasePlatformController.""" + translators = {"dummy_translator": MagicMock()} + controller = PlatformController( + name="test", parent_path=["parent"], translators=translators + ) + assert controller._name == "test" + assert controller.translators == translators + + +def test_initialization_without_required_params(): + """Test the initialization of the BasePlatformController without required params.""" + with pytest.raises(ValueError): + PlatformController(name="test", parent_path=["parent"]) + + +def test_command_generation(mock_session): + """Test the command generation method.""" + translator = MagicMock() + translators = {"test_command": translator} + controller = PlatformController( + name="test", parent_path=["parent"], translators=translators + ) + + # Check if command function is correctly linked + assert "test_command" in controller.translators + + +def test_print_help(mock_session): + """Test the print help method.""" + translators = {"test_command": MagicMock()} + controller = PlatformController( + name="test", parent_path=["parent"], translators=translators + ) + + with patch( + "openbb_cli.controllers.base_platform_controller.MenuText" + ) as mock_menu_text: + controller.print_help() + mock_menu_text.assert_called_once_with("/parent/test/") + + +def test_sub_controller_generation(mock_session): + """Test the sub controller generation method.""" + translators = {"test_menu_item": MagicMock()} + controller = PlatformController( + name="test", parent_path=["parent"], translators=translators + ) + + assert "test_menu_item" in controller.translators diff --git a/cli/tests/test_controllers_choices.py b/cli/tests/test_controllers_choices.py new file mode 100644 index 000000000000..6d604751b1f6 --- /dev/null +++ b/cli/tests/test_controllers_choices.py @@ -0,0 +1,51 @@ +"""Test the choices controller.""" + +from argparse import ArgumentParser +from unittest.mock import patch + +import pytest +from openbb_cli.controllers.choices import ( + build_controller_choice_map, +) + +# pylint: disable=redefined-outer-name, protected-access, unused-argument, unused-variable + + +class MockController: + """Mock controller class for testing.""" + + CHOICES_COMMANDS = ["test_command"] + controller_choices = ["test_command", "help"] + + def call_test_command(self, args): + """Mock function for test_command.""" + parser = ArgumentParser() + parser.add_argument( + "--example", choices=["option1", "option2"], help="Example argument." + ) + return parser.parse_args(args) + + +@pytest.fixture +def mock_controller(): + """Mock controller fixture.""" + return MockController() + + +def test_build_command_choice_map(mock_controller): + """Test the building of a command choice map.""" + with patch( + "openbb_cli.controllers.choices._get_argument_parser" + ) as mock_get_parser: + parser = ArgumentParser() + parser.add_argument( + "--option", choices=["opt1", "opt2"], help="A choice option." + ) + mock_get_parser.return_value = parser + + choice_map = build_controller_choice_map(controller=mock_controller) + + assert "test_command" in choice_map + assert "--option" in choice_map["test_command"] + assert "opt1" in choice_map["test_command"]["--option"] + assert "opt2" in choice_map["test_command"]["--option"] diff --git a/cli/tests/test_controllers_cli_controller.py b/cli/tests/test_controllers_cli_controller.py new file mode 100644 index 000000000000..7cb7c6578a92 --- /dev/null +++ b/cli/tests/test_controllers_cli_controller.py @@ -0,0 +1,79 @@ +"""Test the CLI controller.""" + +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.cli_controller import ( + CLIController, + handle_job_cmds, + parse_and_split_input, + run_cli, +) + +# pylint: disable=redefined-outer-name, unused-argument + + +def test_parse_and_split_input_custom_filters(): + """Test the parse_and_split_input function with custom filters.""" + input_cmd = "query -q AAPL/P" + result = parse_and_split_input( + input_cmd, custom_filters=[r"((\ -q |\ --question|\ ).*?(/))"] + ) + assert ( + "AAPL/P" not in result + ), "Should filter out terms that look like a sorting parameter" + + +@patch("openbb_cli.controllers.cli_controller.CLIController.print_help") +def test_cli_controller_print_help(mock_print_help): + """Test the CLIController print_help method.""" + controller = CLIController() + controller.print_help() + mock_print_help.assert_called_once() + + +@pytest.mark.parametrize( + "controller_input, expected_output", + [ + ("settings", True), + ("random_command", False), + ], +) +def test_CLIController_has_command(controller_input, expected_output): + """Test the CLIController has_command method.""" + controller = CLIController() + assert hasattr(controller, f"call_{controller_input}") == expected_output + + +def test_handle_job_cmds_with_export_path(): + """Test the handle_job_cmds function with an export path.""" + jobs_cmds = ["export /path/to/export some_command"] + result = handle_job_cmds(jobs_cmds) + expected = "some_command" + assert expected in result[0] # type: ignore + + +@patch("openbb_cli.controllers.cli_controller.CLIController.switch", return_value=[]) +@patch("openbb_cli.controllers.cli_controller.print_goodbye") +def test_run_cli_quit_command(mock_print_goodbye, mock_switch): + """Test the run_cli function with the quit command.""" + run_cli(["quit"], test_mode=True) + mock_print_goodbye.assert_called_once() + + +@pytest.mark.skip("This test is not working as expected") +def test_execute_openbb_routine_with_mocked_requests(): + """Test the call_exe function with mocked requests.""" + with patch("requests.get") as mock_get: + response = MagicMock() + response.status_code = 200 + response.json.return_value = {"script": "print('Hello World')"} + mock_get.return_value = response + # Here we need to call the correct function, assuming it's something like `call_exe` for URL-based scripts + controller = CLIController() + controller.call_exe( + ["--url", "https://my.openbb.co/u/test/routine/test.openbb"] + ) + mock_get.assert_called_with( + "https://my.openbb.co/u/test/routine/test.openbb?raw=true", timeout=10 + ) diff --git a/cli/tests/test_controllers_controller_factory.py b/cli/tests/test_controllers_controller_factory.py new file mode 100644 index 000000000000..8832885b47af --- /dev/null +++ b/cli/tests/test_controllers_controller_factory.py @@ -0,0 +1,61 @@ +"""Test the Controller Factory.""" + +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.platform_controller_factory import ( + PlatformControllerFactory, +) + +# pylint: disable=redefined-outer-name, unused-argument + + +@pytest.fixture +def mock_processor(): + """Fixture to mock ArgparseClassProcessor.""" + with patch( + "openbb_cli.controllers.platform_controller_factory.ArgparseClassProcessor" + ) as mock: + instance = mock.return_value + instance.paths = {"settings": "menu"} + instance.translators = {"test_router_settings": MagicMock()} + yield instance + + +@pytest.fixture +def platform_router(): + """Fixture to provide a mock platform_router class.""" + + class MockRouter: + pass + + return MockRouter + + +@pytest.fixture +def factory(platform_router, mock_processor): + """Fixture to create a PlatformControllerFactory with mocked dependencies.""" + return PlatformControllerFactory( + platform_router=platform_router, reference={"test": "ref"} + ) + + +def test_init(mock_processor): + """Test the initialization of the PlatformControllerFactory.""" + factory = PlatformControllerFactory( + platform_router=MagicMock(), reference={"test": "ref"} + ) + assert factory.router_name.lower() == "magicmock" + assert factory.controller_name == "MagicmockController" + + +def test_create_controller(factory): + """Test the creation of a controller class.""" + ControllerClass = factory.create() + + assert "PlatformController" in [base.__name__ for base in ControllerClass.__bases__] + assert ControllerClass.CHOICES_GENERATION + assert "settings" in ControllerClass.CHOICES_MENUS + assert "test_router_settings" not in [ + cmd.replace("test_router_", "") for cmd in ControllerClass.CHOICES_COMMANDS + ] diff --git a/cli/tests/test_controllers_script_parser.py b/cli/tests/test_controllers_script_parser.py new file mode 100644 index 000000000000..4363b0d79fe0 --- /dev/null +++ b/cli/tests/test_controllers_script_parser.py @@ -0,0 +1,106 @@ +"""Test Script parser.""" + +from datetime import datetime, timedelta + +import pytest +from openbb_cli.controllers.script_parser import ( + match_and_return_openbb_keyword_date, + parse_openbb_script, +) + +# pylint: disable=import-outside-toplevel, unused-variable, line-too-long + + +@pytest.mark.parametrize( + "command, expected", + [ + ("reset", True), + ("r", True), + ("r\n", True), + ("restart", False), + ], +) +def test_is_reset(command, expected): + """Test the is_reset function.""" + from openbb_cli.controllers.script_parser import is_reset + + assert is_reset(command) == expected + + +@pytest.mark.parametrize( + "keyword, expected_date", + [ + ( + "$LASTFRIDAY", + ( + datetime.now() + - timedelta(days=((datetime.now().weekday() - 4) % 7 + 7) % 7) + ).strftime("%Y-%m-%d"), + ), + ], +) +def test_match_and_return_openbb_keyword_date(keyword, expected_date): + """Test the match_and_return_openbb_keyword_date function.""" + result = match_and_return_openbb_keyword_date(keyword) + assert result == expected_date + + +def test_parse_openbb_script_basic(): + """Test the parse_openbb_script function.""" + raw_lines = ["echo 'Hello World'"] + error, script = parse_openbb_script(raw_lines) + assert error == "" + assert script == "/echo 'Hello World'" + + +def test_parse_openbb_script_with_variable(): + """Test the parse_openbb_script function.""" + raw_lines = ["$VAR = 2022-01-01", "echo $VAR"] + error, script = parse_openbb_script(raw_lines) + assert error == "" + assert script == "/echo 2022-01-01" + + +def test_parse_openbb_script_with_foreach_loop(): + """Test the parse_openbb_script function.""" + raw_lines = ["foreach $$DATE in 2022-01-01,2022-01-02", "echo $$DATE", "end"] + error, script = parse_openbb_script(raw_lines) + assert error == "" + assert script == "/echo 2022-01-01/echo 2022-01-02" + + +def test_parse_openbb_script_with_error(): + """Test the parse_openbb_script function.""" + raw_lines = ["$VAR = ", "echo $VAR"] + error, script = parse_openbb_script(raw_lines) + assert "Variable $VAR not given" in error + + +@pytest.mark.parametrize( + "line, expected", + [ + ( + "foreach $$VAR in 2022-01-01", + "[red]The script has a foreach loop that doesn't terminate. Add the keyword 'end' to explicitly terminate loop[/red]", # noqa: E501 + ), + ("echo Hello World", ""), + ( + "end", + "[red]The script has a foreach loop that terminates before it gets started. Add the keyword 'foreach' to explicitly start loop[/red]", # noqa: E501 + ), + ], +) +def test_parse_openbb_script_foreach_errors(line, expected): + """Test the parse_openbb_script function.""" + error, script = parse_openbb_script([line]) + assert error == expected + + +def test_date_keyword_last_friday(): + """Test the match_and_return_openbb_keyword_date function.""" + today = datetime.now() + last_friday = today - timedelta(days=(today.weekday() - 4 + 7) % 7) + if last_friday > today: + last_friday -= timedelta(days=7) + expected_date = last_friday.strftime("%Y-%m-%d") + assert match_and_return_openbb_keyword_date("$LASTFRIDAY") == expected_date diff --git a/cli/tests/test_controllers_settings_controller.py b/cli/tests/test_controllers_settings_controller.py new file mode 100644 index 000000000000..439281392057 --- /dev/null +++ b/cli/tests/test_controllers_settings_controller.py @@ -0,0 +1,135 @@ +"""Test the SettingsController class.""" + +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.settings_controller import SettingsController + +# pylint: disable=redefined-outer-name, unused-argument + + +@pytest.fixture +def mock_session(): + with patch("openbb_cli.controllers.settings_controller.session") as mock: + + mock.settings.USE_INTERACTIVE_DF = False + mock.settings.ALLOWED_NUMBER_OF_ROWS = 20 + mock.settings.TIMEZONE = "UTC" + + mock.settings.set_item = MagicMock() + + yield mock + + +def test_call_interactive(mock_session): + controller = SettingsController() + controller.call_interactive(None) + mock_session.settings.set_item.assert_called_once_with("USE_INTERACTIVE_DF", True) + + +@pytest.mark.parametrize( + "input_rows, expected", + [ + (10, 10), + (15, 15), + ], +) +def test_call_n_rows(input_rows, expected, mock_session): + controller = SettingsController() + args = ["--rows", str(input_rows)] + controller.call_n_rows(args) + mock_session.settings.set_item.assert_called_with( + "ALLOWED_NUMBER_OF_ROWS", expected + ) + + +def test_call_n_rows_no_args_provided(mock_session): + controller = SettingsController() + controller.call_n_rows([]) + mock_session.console.print.assert_called_with("Current number of rows: 20") + + +@pytest.mark.parametrize( + "timezone, valid", + [ + ("UTC", True), + ("Mars/Phobos", False), + ], +) +def test_call_timezone(timezone, valid, mock_session): + with patch( + "openbb_cli.controllers.settings_controller.is_timezone_valid", + return_value=valid, + ): + controller = SettingsController() + args = ["--timezone", timezone] + controller.call_timezone(args) + if valid: + mock_session.settings.set_item.assert_called_with("TIMEZONE", timezone) + else: + mock_session.settings.set_item.assert_not_called() + + +def test_call_console_style(mock_session): + controller = SettingsController() + args = ["--style", "dark"] + controller.call_console_style(args) + mock_session.console.print.assert_called() + + +def test_call_console_style_no_args(mock_session): + mock_session.settings.RICH_STYLE = "default" + controller = SettingsController() + controller.call_console_style([]) + mock_session.console.print.assert_called_with("Current console style: default") + + +def test_call_flair(mock_session): + controller = SettingsController() + args = ["--flair", "rocket"] + controller.call_flair(args) + + +def test_call_flair_no_args(mock_session): + mock_session.settings.FLAIR = "star" + controller = SettingsController() + controller.call_flair([]) + mock_session.console.print.assert_called_with("Current flair: star") + + +def test_call_obbject_display(mock_session): + controller = SettingsController() + args = ["--number", "5"] + controller.call_obbject_display(args) + mock_session.settings.set_item.assert_called_once_with( + "N_TO_DISPLAY_OBBJECT_REGISTRY", 5 + ) + + +def test_call_obbject_display_no_args(mock_session): + mock_session.settings.N_TO_DISPLAY_OBBJECT_REGISTRY = 10 + controller = SettingsController() + controller.call_obbject_display([]) + mock_session.console.print.assert_called_with( + "Current number of results to display from the OBBject registry: 10" + ) + + +@pytest.mark.parametrize( + "args, expected", + [ + (["--rows", "50"], 50), + (["--rows", "100"], 100), + ([], 20), + ], +) +def test_call_n_rows_v2(args, expected, mock_session): + mock_session.settings.ALLOWED_NUMBER_OF_ROWS = 20 + controller = SettingsController() + controller.call_n_rows(args) + if args: + mock_session.settings.set_item.assert_called_with( + "ALLOWED_NUMBER_OF_ROWS", expected + ) + else: + mock_session.console.print.assert_called_with("Current number of rows: 20") diff --git a/cli/tests/test_controllers_utils.py b/cli/tests/test_controllers_utils.py new file mode 100644 index 000000000000..84c7548c9df8 --- /dev/null +++ b/cli/tests/test_controllers_utils.py @@ -0,0 +1,157 @@ +"""Test the Controller utils.""" + +import argparse +from pathlib import Path +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.controllers.utils import ( + check_non_negative, + check_positive, + get_flair_and_username, + get_user_agent, + parse_and_split_input, + print_goodbye, + print_guest_block_msg, + remove_file, + reset, + welcome_message, +) + +# pylint: disable=redefined-outer-name, unused-argument + + +@pytest.fixture +def mock_session(): + """Mock the session and its dependencies.""" + with patch("openbb_cli.controllers.utils.Session", autospec=True) as mock: + mock.return_value.console.print = MagicMock() + mock.return_value.is_local = MagicMock(return_value=True) + mock.return_value.settings.VERSION = "1.0" + mock.return_value.user.profile.hub_session.username = "testuser" + mock.return_value.settings.FLAIR = "rocket" + yield mock + + +def test_remove_file_existing_file(): + """Test removing an existing file.""" + with patch("os.path.isfile", return_value=True), patch("os.remove") as mock_remove: + assert remove_file(Path("/path/to/file")) + mock_remove.assert_called_once() + + +def test_remove_file_directory(): + """Test removing a directory.""" + with patch("os.path.isfile", return_value=False), patch( + "os.path.isdir", return_value=True + ), patch("shutil.rmtree") as mock_rmtree: + assert remove_file(Path("/path/to/directory")) + mock_rmtree.assert_called_once() + + +def test_remove_file_failure(mock_session): + """Test removing a file that fails.""" + with patch("os.path.isfile", return_value=True), patch( + "os.remove", side_effect=Exception("Error") + ): + assert not remove_file(Path("/path/to/file")) + mock_session.return_value.console.print.assert_called() + + +def test_print_goodbye(mock_session): + """Test printing the goodbye message.""" + print_goodbye() + mock_session.return_value.console.print.assert_called() + + +def test_reset(mock_session): + """Test resetting the CLI.""" + with patch("openbb_cli.controllers.utils.remove_file"), patch( + "sys.modules", new_callable=dict + ): + reset() + mock_session.return_value.console.print.assert_called() + + +def test_parse_and_split_input(): + """Test parsing and splitting user input.""" + user_input = "ls -f /home/user/docs/document.xlsx" + result = parse_and_split_input(user_input, []) + assert "ls" in result[0] + + +@pytest.mark.parametrize( + "input_command, expected_output", + [ + ("/", ["home"]), + ("ls -f /path/to/file.txt", ["ls -f ", "path", "to", "file.txt"]), + ("rm -f /home/user/docs", ["rm -f ", "home", "user", "docs"]), + ], +) +def test_parse_and_split_input_special_cases(input_command, expected_output): + """Test parsing and splitting user input with special cases.""" + result = parse_and_split_input(input_command, []) + assert result == expected_output + + +def test_print_guest_block_msg(mock_session): + """Test printing the guest block message.""" + print_guest_block_msg() + mock_session.return_value.console.print.assert_called() + + +def test_welcome_message(mock_session): + """Test printing the welcome message.""" + welcome_message() + mock_session.return_value.console.print.assert_called_with( + "\nWelcome to OpenBB Platform CLI v1.0" + ) + + +def test_get_flair_and_username(mock_session): + """Test getting the flair and username.""" + result = get_flair_and_username() + assert "testuser" in result + assert "rocket" in result # + + +@pytest.mark.parametrize( + "value, expected", + [ + ("10", 10), + ("0", 0), + ("-1", pytest.raises(argparse.ArgumentTypeError)), + ("text", pytest.raises(ValueError)), + ], +) +def test_check_non_negative(value, expected): + """Test checking for a non-negative value.""" + if isinstance(expected, int): + assert check_non_negative(value) == expected + else: + with expected: + check_non_negative(value) + + +@pytest.mark.parametrize( + "value, expected", + [ + ("1", 1), + ("0", pytest.raises(argparse.ArgumentTypeError)), + ("-1", pytest.raises(argparse.ArgumentTypeError)), + ("text", pytest.raises(ValueError)), + ], +) +def test_check_positive(value, expected): + """Test checking for a positive value.""" + if isinstance(expected, int): + assert check_positive(value) == expected + else: + with expected: + check_positive(value) + + +def test_get_user_agent(): + """Test getting the user agent.""" + result = get_user_agent() + assert result.startswith("Mozilla/5.0") diff --git a/cli/tests/test_models_settings.py b/cli/tests/test_models_settings.py new file mode 100644 index 000000000000..0834355516f4 --- /dev/null +++ b/cli/tests/test_models_settings.py @@ -0,0 +1,72 @@ +"""Test the Models Settings module.""" + +from unittest.mock import mock_open, patch + +from openbb_cli.models.settings import Settings + +# pylint: disable=unused-argument + + +def test_default_values(): + """Test the default values of the settings model.""" + settings = Settings() + assert settings.VERSION == "1.0.0" + assert settings.TEST_MODE is False + assert settings.DEBUG_MODE is False + assert settings.DEV_BACKEND is False + assert settings.FILE_OVERWRITE is False + assert settings.SHOW_VERSION is True + assert settings.USE_INTERACTIVE_DF is True + assert settings.USE_CLEAR_AFTER_CMD is False + assert settings.USE_DATETIME is True + assert settings.USE_PROMPT_TOOLKIT is True + assert settings.ENABLE_EXIT_AUTO_HELP is True + assert settings.REMEMBER_CONTEXTS is True + assert settings.ENABLE_RICH_PANEL is True + assert settings.TOOLBAR_HINT is True + assert settings.SHOW_MSG_OBBJECT_REGISTRY is False + assert settings.TIMEZONE == "America/New_York" + assert settings.FLAIR == ":openbb" + assert settings.PREVIOUS_USE is False + assert settings.N_TO_KEEP_OBBJECT_REGISTRY == 10 + assert settings.N_TO_DISPLAY_OBBJECT_REGISTRY == 5 + assert settings.RICH_STYLE == "dark" + assert settings.ALLOWED_NUMBER_OF_ROWS == 20 + assert settings.ALLOWED_NUMBER_OF_COLUMNS == 5 + assert settings.HUB_URL == "https://my.openbb.co" + assert settings.BASE_URL == "https://payments.openbb.co" + + +# Test __repr__ output +def test_repr(): + """Test the __repr__ method of the settings model.""" + settings = Settings() + repr_str = settings.__repr__() # pylint: disable=C2801 + assert "Settings\n\n" in repr_str + assert "VERSION: 1.0.0" in repr_str + + +# Test loading from environment variables +@patch( + "openbb_cli.models.settings.dotenv_values", + return_value={"OPENBB_TEST_MODE": "True", "OPENBB_VERSION": "2.0.0"}, +) +def test_from_env(mock_dotenv_values): + """Test loading settings from environment variables.""" + settings = Settings.from_env({}) # type: ignore + assert settings["TEST_MODE"] == "True" + assert settings["VERSION"] == "2.0.0" + + +# Test setting an item and updating .env +@patch("openbb_cli.models.settings.set_key") +@patch( + "openbb_cli.models.settings.open", + new_callable=mock_open, + read_data="TEST_MODE=False\n", +) +def test_set_item(mock_file, mock_set_key): + """Test setting an item and updating the .env file.""" + settings = Settings() + settings.set_item("TEST_MODE", True) + assert settings.TEST_MODE is True diff --git a/cli/tests/test_session.py b/cli/tests/test_session.py new file mode 100644 index 000000000000..66ca9fccab8b --- /dev/null +++ b/cli/tests/test_session.py @@ -0,0 +1,44 @@ +"Test the Session class." +from unittest.mock import MagicMock, patch + +import pytest +from openbb_cli.models.settings import Settings +from openbb_cli.session import Session, sys + +# pylint: disable=redefined-outer-name, unused-argument, protected-access + + +def mock_isatty(return_value): + """Mock the isatty method.""" + original_isatty = sys.stdin.isatty + sys.stdin.isatty = MagicMock(return_value=return_value) # type: ignore + return original_isatty + + +@pytest.fixture +def session(): + """Session fixture.""" + return Session() + + +def test_session_initialization(session): + """Test the initialization of the Session class.""" + assert session.settings is not None + assert session.style is not None + assert session.console is not None + assert session.obbject_registry is not None + assert isinstance(session.settings, Settings) + + +@patch("sys.stdin.isatty", return_value=True) +def test_get_prompt_session_true(mock_isatty, session): + "Test get_prompt_session method." + prompt_session = session._get_prompt_session() + assert prompt_session is not None + + +@patch("sys.stdin.isatty", return_value=False) +def test_get_prompt_session_false(mock_isatty, session): + "Test get_prompt_session method." + prompt_session = session._get_prompt_session() + assert prompt_session is None diff --git a/openbb_platform/dev_install.py b/openbb_platform/dev_install.py index 391aa08fa280..0b8695366fd0 100644 --- a/openbb_platform/dev_install.py +++ b/openbb_platform/dev_install.py @@ -129,7 +129,7 @@ def install_local(_extras: bool = False): print("Restoring pyproject.toml and poetry.lock") # noqa: T201 finally: - # Revert pyproject.toml and poetry.lock to their original state + # Revert pyproject.toml and poetry.lock to their original state. with open(PYPROJECT, "w", encoding="utf-8", newline="\n") as f: f.write(original_pyproject) From 8d060dc0717e2ce9cde06ffc7523ea465c920a0e Mon Sep 17 00:00:00 2001 From: Henrique Joaquim Date: Tue, 14 May 2024 16:44:07 +0100 Subject: [PATCH 40/44] [Feature] CLI docs (#6362) * cli docs website * changes * remove unused feat flags * typo * yeet stuff that can't be used * some progress * Add home screenshot * screenshots.md * fix links * new cards for cli pages * start config page * more updates * Add screenshots * flatten some things. * fix link * some more updates * some routine stuff * codespell * cli color * results in the global commands * increase codeBlock line-height * remove platform warning, obb is a class * minor change, danger warning * typo? * Data processing commands --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Diogo Sousa --- .../controllers/settings_controller.py | 3 - website/content/cli/_category_.json | 4 + website/content/cli/commands-and-arguments.md | 76 ++++++ website/content/cli/configuration.md | 66 +++++ website/content/cli/data-sources.md | 113 ++++++++ website/content/cli/hub.md | 111 ++++++++ website/content/cli/index.md | 78 ++++++ website/content/cli/installation.md | 76 ++++++ website/content/cli/interactive-charts.md | 109 ++++++++ website/content/cli/interactive-tables.md | 75 ++++++ website/content/cli/openbbuserdata.md | 59 +++++ website/content/cli/quickstart.md | 243 ++++++++++++++++++ website/content/cli/routines/_category_.json | 4 + .../content/cli/routines/advanced-routines.md | 119 +++++++++ .../cli/routines/community-routines.md | 52 ++++ website/content/cli/routines/index.mdx | 31 +++ .../cli/routines/introduction-to-routines.md | 130 ++++++++++ .../cli/routines/routine-macro-recorder.md | 46 ++++ .../content/cli/structure-and-navigation.md | 42 +++ website/content/platform/installation.md | 9 - website/package-lock.json | 7 +- website/sidebars.js | 5 + .../components/General/NewReferenceCard.tsx | 5 +- .../theme/CodeBlock/Content/styles.module.css | 1 + .../theme/DocSidebarItem/Category/index.js | 1 + website/src/theme/Navbar/Layout/index.js | 12 + 26 files changed, 1458 insertions(+), 19 deletions(-) create mode 100644 website/content/cli/_category_.json create mode 100644 website/content/cli/commands-and-arguments.md create mode 100644 website/content/cli/configuration.md create mode 100644 website/content/cli/data-sources.md create mode 100644 website/content/cli/hub.md create mode 100644 website/content/cli/index.md create mode 100644 website/content/cli/installation.md create mode 100644 website/content/cli/interactive-charts.md create mode 100644 website/content/cli/interactive-tables.md create mode 100644 website/content/cli/openbbuserdata.md create mode 100644 website/content/cli/quickstart.md create mode 100644 website/content/cli/routines/_category_.json create mode 100644 website/content/cli/routines/advanced-routines.md create mode 100644 website/content/cli/routines/community-routines.md create mode 100644 website/content/cli/routines/index.mdx create mode 100644 website/content/cli/routines/introduction-to-routines.md create mode 100644 website/content/cli/routines/routine-macro-recorder.md create mode 100644 website/content/cli/structure-and-navigation.md diff --git a/cli/openbb_cli/controllers/settings_controller.py b/cli/openbb_cli/controllers/settings_controller.py index 8783ef47e1b7..f93501a5063f 100644 --- a/cli/openbb_cli/controllers/settings_controller.py +++ b/cli/openbb_cli/controllers/settings_controller.py @@ -21,10 +21,7 @@ class SettingsController(BaseController): CHOICES_COMMANDS: List[str] = [ "interactive", "cls", - "watermark", "promptkit", - "thoughts", - "reporthtml", "exithelp", "rcontext", "richpanel", diff --git a/website/content/cli/_category_.json b/website/content/cli/_category_.json new file mode 100644 index 000000000000..a68e9f9ff3b4 --- /dev/null +++ b/website/content/cli/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "OpenBB CLI", + "position": 2 +} diff --git a/website/content/cli/commands-and-arguments.md b/website/content/cli/commands-and-arguments.md new file mode 100644 index 000000000000..709b73f3bc95 --- /dev/null +++ b/website/content/cli/commands-and-arguments.md @@ -0,0 +1,76 @@ +--- +title: Commands And Arguments +sidebar_position: 4 +description: This page explains how to enter commands and arguments into the OpenBB CLI. +keywords: +- help arguments +- auto-complete +- global commands +- support command +- reset command +- command line interface +- metadata +- cli +- parameters +- functions +- commands +- options +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +Commands are displayed on-screen in a lighter colour, compared with menu items, and they will not be prefaced with, `>`. + +Functions have a variety of parameters that differ by endpoint and provider. The --help dialogue will provide guidance on nuances of any particular command. + +The available data sources for each command are displayed on the right side of the screen, and are selected with the `--provider` argument. + +## Help arguments + +The `help` command shows the current menu. The screen will display all the commands and menus that exist, including a short description for each of these. + +Adding `--help`, or `-h`, to any command will display the description and parameters for that particular function. + +## Entering Parameters + +Parameters are all defined through the same pattern, --argument, followed by a space, and then the value. + +If the parameter is a boolean (true/false), there is no value to enter. Adding the --argument flags the parameter to be the opposite of its default state. + +Use the auto-complete to prompt choices and reduce the amount of keystrokes required to run a complex function. + +## Auto-complete + +The OpenBB CLI is equipped with an auto completion engine that presents choices based on the current menu and command. Whenever you start typing, suggestion prompts will appear for existing commands and menus. When the command contains arguments, pressing the `space bar` after typing the command will present the list of available arguments. + +This functionality dramatically reduces the number of key strokes required to perform tasks and, in many cases, eliminates the need to consult the help dialogue for reminders. Choices - where they are bound by a defined list - are scrollable with the up and down arrow keys. + +## Global commands + +These are commands that can be used throughout the CLI and will work regardless of the menu where they belong. + +### Help + +`--help`, or `-h` can be attached to any command, as described above. + +### CLS + +The `cls` command clears the entire CLI screen. + +### Quit + +The `quit` command (can also use `q` or `..`) allows to leave the current menu to go one menu above. If the user is on the root, that will mean leaving the CLI. + +### Exit + +The `exit` command allows the user to exit the CLI. + +### Reset + +The `reset` command will reset the CLI to its default state. This is specially useful for development so you can refresh the CLI without having to close and open it again. + +### Results + +The `results` command will display the stack of `OBBjects` that have been generated during the session, which can be later injected on the data processing commands. diff --git a/website/content/cli/configuration.md b/website/content/cli/configuration.md new file mode 100644 index 000000000000..360aebae253f --- /dev/null +++ b/website/content/cli/configuration.md @@ -0,0 +1,66 @@ +--- +title: Configuration & Settings +sidebar_position: 5 +description: This documentation page details the various settings and feature flags used to customize the OpenBB CLI. +keywords: +- Settings Menu +- Feature Flags Menu +- customize CLI +- alter CLI behaviour +- environment variables +- Documentation +- OpenBB Platform CLI +- preferences +- user +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +In addition to the OpenBB Platform's `user_settings.json` file, described [here](/platform/usage/settings_and_environment_variables), there are settings and environment variables affecting the CLI only. + +:::important +API credentials are defined in the `user_settings.json` file. + +Find all data providers [here](/platform/extensions/data_extensions), and manage all your credentials directly on the [OpenBB Hub](https://my.openbb.co/app/platform/credentials). + +Define default data sources by following the pattern outlined [here](data-sources) +::: + +## Settings Menu + +The `/settings` menu provides methods for customizing the look and feel of the CLI. The menu is divided into two sections: + +- Feature Flags + - On/Off status is reflected by red/green text. + - Status is toggled by entering the item as a command. +- Preferences + - Choices and options will be presented as a typical function. + +### Feature Flags + +| Feature Flags | Description | +| :----------- | :--------------------------------------------------------------- | +| `interactive` | Enable/disable interactive tables. Disabling prints the table directly on the CLI screen. | +| `cls` | Clear the screen after each command. Default state is off. | +| `promptkit` | Enable auto complete and history. Default state is on. | +| `richpanel` | Displays a border around menus. Default state is on. | +| `tbhint` | Display usage hints in the bottom toolbar. Default state is on. | +| `exithelp` | Automatically print the screen after navigating back one menu. Default state is off. | +| `overwrite` | Automatically overwrite exported files with the same name. Default state is off. | +| `obbject_msg` | Displays a message whenever a new result is added to the registry. Default state is off. | +| `version` | Displays the currently installed version number in the bottom right corner. | + +### Preferences + +| Preferences | Description | +| :----------- | :--------------------------------------------------------------- | +| `console_style` | apply a custom rich style to the CLI | +| `flair` | choose flair icon | +| `timezone` | pick timezone | +| `language` | translation language | +| `n_rows` | number of rows to show on non interactive tables | +| `n_cols` | number of columns to show on non interactive tables | +| `obbject_res` | define the maximum number of obbjects allowed in the registry | +| `obbject_display` | define the maximum number of cached results to display on the help menu | diff --git a/website/content/cli/data-sources.md b/website/content/cli/data-sources.md new file mode 100644 index 000000000000..f6bd3a0d7626 --- /dev/null +++ b/website/content/cli/data-sources.md @@ -0,0 +1,113 @@ +--- +title: Data Sources +sidebar_position: 7 +description: This page explains how to select a provider for any specific command, and set a default source for a route. +keywords: +- Terminal +- CLI +- provider +- API keys +- FinancialModelingPrep +- Polygon +- AlphaVantage +- Intrinio +- YahooFinance +- source +- data +- default +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +Many commands have multiple data sources associated with it. This page describes how to select from multiple providers. + +:::important +API credentials are defined in the `user_settings.json` file. + +Find all data providers [here](/platform/extensions/data_extensions), and manage all your credentials directly on the [OpenBB Hub](https://my.openbb.co/app/platform/credentials). +::: + +## Data Source In-Command + +To specify the data vendor for that particular command, use the `--provider` argument. + +Parameter choices can be viewed from the help dialogue, `-h` or `--help`. + +```console +/equity/price/historical -h +``` + +```console +usage: historical --symbol SYMBOL [SYMBOL ...] [--interval INTERVAL] [--start_date START_DATE] [--end_date END_DATE] [--chart] + [--provider {fmp,intrinio,polygon,tiingo,yfinance}] [--start_time START_TIME] [--end_time END_TIME] [--timezone TIMEZONE] + [--source {realtime,delayed,nasdaq_basic}] [--sort {asc,desc}] [--limit LIMIT] [--extended_hours] [--include_actions] + [--adjustment {splits_and_dividends,unadjusted,splits_only}] [--adjusted] [--prepost] [-h] [--export EXPORT] + [--sheet-name SHEET_NAME [SHEET_NAME ...]] + +Get historical price data for a given stock. This includes open, high, low, close, and volume. + +options: + --interval INTERVAL Time interval of the data to return. + --start_date START_DATE + Start date of the data, in YYYY-MM-DD format. + --end_date END_DATE End date of the data, in YYYY-MM-DD format. + --chart Whether to create a chart or not, by default False. + --provider {fmp,intrinio,polygon,tiingo,yfinance} + The provider to use for the query, by default None. + If None, the provider specified in defaults is selected or 'fmp' if there is + no default. + --extended_hours Include Pre and Post market data. (provider: polygon, yfinance) + --adjustment {splits_and_dividends,unadjusted,splits_only} + The adjustment factor to apply. Default is splits only. (provider: polygon, yfinance) + -h, --help show this help message + --export EXPORT Export raw data into csv, json, xlsx and figure into png, jpg, pdf, svg + --sheet-name SHEET_NAME [SHEET_NAME ...] + Name of excel sheet to save data to. Only valid for .xlsx files. + +required arguments: + --symbol SYMBOL [SYMBOL ...] + Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp, polygon, tiingo, yfinance. + +intrinio: + --start_time START_TIME + Return intervals starting at the specified time on the `start_date` formatted as 'HH:MM:SS'. + --end_time END_TIME Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'. + --timezone TIMEZONE Timezone of the data, in the IANA format (Continent/City). + --source {realtime,delayed,nasdaq_basic} + The source of the data. + +polygon: + --sort {asc,desc} Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date. + --limit LIMIT The number of data entries to return. + +yfinance: + --include_actions Include dividends and stock splits in results. +``` + +:::note +Provider-specific parameters are listed at the bottom of the print out. They are ignored when entered, if it is not supported by the selected provider. +::: + +## Setting The Default Source + +The default data source for each command (where multiple sources are available) can be defined within the user configuration file: `/home/your-user/.openbb_platform/user_settings.json`. + +Set the default data provider for the `/equity/price/historical` command by adding the following line to your `user_settings.json` file: + +```json +{ + "defaults": { + "routes": { + "/equity/price/historical": { + "provider": "fmp" + }, + "/equity/fundamental/balance": { + "provider": "polygon" + }, + ... + } + } +} +``` diff --git a/website/content/cli/hub.md b/website/content/cli/hub.md new file mode 100644 index 000000000000..d7e77fd9e63c --- /dev/null +++ b/website/content/cli/hub.md @@ -0,0 +1,111 @@ +--- +title: Hub Synchronization +sidebar_position: 6 +description: This page outlines the `/account` menu within the OpenBB CLI, and integrations with the OpenBB Hub. +keywords: +- OpenBB Platform CLI +- OpenBB Hub +- Registration +- Login process +- API Keys management +- Theme +- Style +- Dark +- Light +- Script Routines +- Personal Access Tokens +- PAT +- Credentials +- Customization +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +This page outlines the `/account` menu within the OpenBB CLI and integrations with the OpenBB Hub. + +## Registration + +To get started, you'll need to create an account on the OpenBB Hub by visiting [https://my.openbb.co](https://my.openbb.co) + +By registering with the OpenBB Hub, you can easily access our products on multiple devices and maintain consistent settings for an improved user experience. + +## Login + +Once you're successfully registered on the OpenBB Hub, you can log in to access all the benefits it has to offer. + +:::tip +OpenBB recommends logging in via the Personal Access Token (PAT) method. This revokable token allows users to login without transmitting any personally identifiable information, like an email address, which makes it an ideal solution for shared machines and public network connections. +::: + +To login, enter the `/account` menu and then use the `login` command with your choice of login method. + +### PAT + +```console +/account +login --pat REPLACE_WITH_PAT +``` + +### Email & Password + +```console +/account +login --email my@emailaddress.com --password totallysecurepassword +``` + +## API Keys + +The OpenBB Platform acts as a mediator between users and data providers. + +With an OpenBB Hub account, you can manage your API keys on [this page](https://my.openbb.co/app/platform/credentials). + +Upon logging in, the CLI will automatically retrieve the API keys associated with your account. + +If you have not saved them on the OpenBB Hub, they will be loaded from your local environment by default. + +:::danger +If an API key is saved on the OpenBB Hub, it will take precedence over the local environment key. +::: + +The CLI will need to be restarted, or refreshed, when changes are made on the Hub. + +## Theme Styles + +Theme styles correspond to the ability to change the terminal "skin" (i.e. coloring of the `menu`, `commands`, `data source`, `parameters`, `information` and `help`), as well as the chart and table styles. + +In the OpenBB Hub, you can select the text colours for the CLI. After customizing: +- Download the theme to your styles directory (`/home/your-user/OpenBBUserData/styles/user`). +- Apply it by selecting the style from the `/settings` menu. + +```console +/settings +console_style -s openbb_config +``` + +Replace `openbb_config` with the name of the downloaded (JSON) file. + +## Script Routines + +The OpenBB Hub allows users to create, edit, manage, and share their script routines that can be run in the OpenBB Platform CLI. + +The "Download" button will save the file locally. Add it to `/home/your-user/OpenBBUserData/routines`, for the script to populate as a choice for the `exe` command on next launch. + +## Refresh + +The `refresh` command will update any changes without the need to logout and login. + +```console +/account +refresh +``` + +## Logout + +Logging out will restore any local credentials and preferences defined in the `user_settings.json` file. + +```console +/account +logout +``` diff --git a/website/content/cli/index.md b/website/content/cli/index.md new file mode 100644 index 000000000000..8097697a0884 --- /dev/null +++ b/website/content/cli/index.md @@ -0,0 +1,78 @@ +--- +title: Introduction +sidebar_position: 0 +description: The OpenBB CLI is a command line interface wrapping the OpenBB Platform. It offers a convenient way to interact with the Platform and its extensions, as well as automate data collection via OpenBB Routine Scripts. No experience with Python, or other programming languages, is required. +keywords: +- OpenBB +- CLI +- Platform +- data connectors +- data access +- data processing +- third-party data providers +- introduction +--- + + + +import NewReferenceCard from "@site/src/components/General/NewReferenceCard"; +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Overview + +The OpenBB CLI is a command line interface wrapping the OpenBB Platform. It offers a convenient way to interact with the Platform and its extensions, as well as automate data collection via OpenBB Routine Scripts. + +The CLI is the next iteration of the [OpenBB Terminal](/terminal), and leverages the extendability of the OpenBB Platform architecture in an easy-to-consume and script format. + +![CLI Home](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/d1617c3b-c83d-4491-a7bc-986321fd7230) + +## Guides & Documentation + +
      + + + + + + + + +
    + +--- + +Want to contribute? Check out our [Development section](/platform/development). diff --git a/website/content/cli/installation.md b/website/content/cli/installation.md new file mode 100644 index 000000000000..51c1819538ab --- /dev/null +++ b/website/content/cli/installation.md @@ -0,0 +1,76 @@ +--- +title: Installation +sidebar_position: 2 +description: This page provides installation instructions for the OpenBB CLI. +keywords: +- OpenBB Platform +- Python +- CLI +- installation +- pip +- pypi + +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Pre-Requisites + +The OpenBB CLI is a wrapper around the [Platform](/platform), and should be installed along side an existing OpenBB installation. + +- A Python virtual environment with a version between 3.9 and 3.11, inclusive, is required. + +Please refer to the [OpenBB Platform install documentation](/platform/installation) for instructions and more information. + +:::info +If the OpenBB Platform is not already installed, the `openbb-cli` package will install the default components. +::: + +## PyPI + +Within your existing OpenBB environment, install `openbb-cli` with: + +```console +pip install openbb-cli +``` + + +The installation script adds `openbb` to the PATH within your Python environment. The application can be launched from any path, as long as the environment is active. + +```console +openbb + +Welcome to OpenBB Platform CLI v1.0.0 +``` + +## Source + +Follow the instructions [here](/platform/installation#source) to clone the GitHub repo and install the OpenBB Platform from the source code. + +Next, navigate into the folder: `~/OpenBBTerminal/cli` + +:::tip +The Python environment should have `toml` and `poetry` installed. + +```bash +pip install toml poetry +``` +::: + +Finally, enter: + +```console +poetry install +``` + +Alternatively, install locally with `pip`: + +```bash +pip install -e . +``` + +## Installing New Modules + +New extensions, or removals, are automatically added (removed) to the CLI on the next launch. diff --git a/website/content/cli/interactive-charts.md b/website/content/cli/interactive-charts.md new file mode 100644 index 000000000000..efd7438808e1 --- /dev/null +++ b/website/content/cli/interactive-charts.md @@ -0,0 +1,109 @@ +--- +title: Interactive Charts +sidebar_position: 9 +description: This page provides a detailed explanation of the OpenBB Interactive Charts. Understand various capabilities including annotation, color modification, drawing tools, data export, and supplementary data overlay. +keywords: +- interactive charts +- PyWry +- annotation +- drawing +- lines +- modebar +- plotly +- data export +- data overlay +- editing chart title +- Toolbar +- Text Tools +- Draw Tools +- Export Tools +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +Interactive charts open in a separate window ([PyWry](https://github.com/OpenBB-finance/pywry)). The OpenBB charting library provides interactive and highly customizable charts. + +:::tip +Not all commands have a charting output, the ones that do, will display a chart argument (`--chart`), which will trigger the charting output instead of the default table output. + +Example: `equity/price/historical --symbol AAPL --chart` +::: + +
    +Charting cheat sheet + +![Group 653](https://user-images.githubusercontent.com/85772166/234313541-3d725e1c-ce48-4413-9267-b03571e0eccd.png) + +
    + +## Toolbar + +![Chart Tools](https://user-images.githubusercontent.com/85772166/233247997-55c03cbd-9ca9-4f5e-b3fb-3e5a9c63b6eb.png) + +The toolbar is located at the bottom of the window, and provides methods for: + +- Panning and zooming. +- Modifying the title and axis labels. +- Adjusting the hover read out. +- Toggling light/dark mode. +- Annotating and drawing. +- Exporting raw data. +- Saving the chart as an image. +- Adding supplementary external data as an overlay. + +The label for each tool is displayed by holding the mouse over it. + +The toolbar's visibility can be toggled utilizing the `ctrl + h` shortcut. + +## Text Tools + +Annotate a chart by clicking on the `Add Text` button, or with the keyboard, `ctrl + t`. + +![Annotate Charts](https://user-images.githubusercontent.com/85772166/233248056-d459d7a0-ba2d-4533-896a-79406ded859e.png) + +Enter some text, make any adjustments to the options, then `submit`. Place the crosshairs over the desired data point and click to place the text. + +![Place Text](https://user-images.githubusercontent.com/85772166/233728645-74734241-4da2-4cff-af17-b68a62e95113.png) + +After placement, the text can be updated or deleted by clicking on it again. + +![Delete Annotation](https://user-images.githubusercontent.com/85772166/233728428-55d2a8e5-a68a-4cd1-9dbf-4c1cd697187e.png) + +## Change Titles + +The title of the chart is edited by clicking the button, `Change Titles`, near the middle center of the toolbar, immediately to the right of the `Add Text` button. + +## Draw Tools + +![Edit Colors](https://user-images.githubusercontent.com/85772166/233729318-8af947fa-ce2a-43e2-85ab-657e583ac8b1.png) + +The fourth group of icons on the toolbar are for drawing lines and shapes. + +- Edit the colors. +- Draw a straight line. +- Draw a freeform line. +- Draw a circle. +- Draw a rectangle. +- Erase a shape. + +To draw on the chart, select one of the four drawing buttons and drag the mouse over the desired area. Click on any existing shape to modify it by dragging with the mouse and editing the color, or remove it by clicking the toolbar button, `Erase Active Shape`. The edit colors button will pop up as a floating icon, and clicking on that will display the color palette. + +## Export Tools + +The two buttons at the far-right of the toolbar are for saving the raw data or, to save an image file of the chart at the current panned and zoomed view. + +![Export Tools](https://user-images.githubusercontent.com/85772166/233248436-08a2a463-403b-4b1b-b7d8-80cd5af7bee3.png) + +## Overlay + +The button, `Overlay chart from CSV`, provides an easy import method for supplementing a chart with additional data. Clicking on the button opens a pop-up dialogue to select the file, column, and whether the overlay should be a bar, candlestick, or line chart. As a candlestick, the CSV file must contain OHLC data. The import window can also be opened with the keyboard, `ctrl-o`. + +![Overlay CSV](https://user-images.githubusercontent.com/85772166/233248522-16b539f4-b0ae-4c30-8c72-dfa59d0c0cfb.png) + +After choosing the file to overlay, select what to show and then click on `Submit`. + +![Overlay Options](https://user-images.githubusercontent.com/85772166/233250634-44864da0-0936-4d3c-8de2-c8374d26c1d2.png) + +![Overlay Chart](https://user-images.githubusercontent.com/85772166/233248639-6d12b16d-471f-4550-a8ab-8d8c18eeabb3.png) diff --git a/website/content/cli/interactive-tables.md b/website/content/cli/interactive-tables.md new file mode 100644 index 000000000000..1399576b3606 --- /dev/null +++ b/website/content/cli/interactive-tables.md @@ -0,0 +1,75 @@ +--- +title: Interactive Tables +sidebar_position: 10 +description: This page explains how to navigate and utilize OpenBB's interactive tables. Understand how to sort and filter columns, hide or remove columns, select number of rows per page, freeze index and column headers, and export the data. +keywords: +- interactive tables +- PyWry technology +- sorting columns +- filtering columns +- hiding columns +- rows per page +- freeze index +- freeze column headers +- exporting data +- data visualization +- customizing tables +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + + +Interactive tables open in a separate window ([PyWry](https://github.com/OpenBB-finance/pywry)). These provide methods for searching, sorting, filtering, exporting and even adapting settings directly on the table. + +:::tip +All OpenBB CLI results are displayed in interactive tables by default, unless the interactive model is disabled from the `/settings` menu. +::: + +
    +Table cheat sheet + +![Chart Intro (5)](https://user-images.githubusercontent.com/85772166/234315026-de098953-111b-4b69-9124-31530c01407a.png) + +
    + +## Sorting + +Columns can be sorted ascending/descending/unsorted, by clicking the controls to the right of each header title. The status of the filtering is shown as a blue indicator. + +![Sort Columns](https://user-images.githubusercontent.com/85772166/233248754-20c18390-a7af-490c-9571-876447b1b0ae.png) + +## Filtering + +The settings button, at the lower-left corner, displays choices for customizing the table. By selecting the `Type` to be `Advanced`, columns become filterable. + +![Table Settings](https://user-images.githubusercontent.com/85772166/233248876-0d788ff4-974d-4d92-8186-56864469870a.png) + +The columns can be filtered with min/max values or by letters, depending on the content of each column. + +![Filtered Tables](https://user-images.githubusercontent.com/85772166/233248923-45873bf1-de6b-40f8-a4aa-05e7c3d21ab0.png) + +## Hiding columns + +The table will scroll to the right as far as there are columns. Columns can be removed from the table by clicking the icon to the right of the settings button and unchecking it from the list. + +![Select Columns](https://user-images.githubusercontent.com/85772166/233248976-849791a6-c126-437c-bb54-454ba6ea4fa2.png) + +## Select rows per page + +The number of rows per page is defined in the drop down selection near the center, at the bottom. + +![Rows per Page](https://user-images.githubusercontent.com/85772166/233249018-8269896d-72f7-4e72-a4d4-2715d1f11b96.png) + +## Freeze the Index and Column Headers + +Right-click on the index name to enable/disable freezing when scrolling to the right. Column headers are frozen by default. + +![Index Freeze](https://user-images.githubusercontent.com/85772166/234103702-0965dfbd-24ca-4a66-8c76-9fac28abcff8.png) + +## Exporting Data + +At the bottom-right corner of the table window, there is a button for exporting the data. To the left, the drop down selection for `Type` can be defined as a CSV, XLSX, or PNG file. Exporting the table as a PNG file will create a screenshot of the table at its current view, and data that is not visible will not be captured. + +![Export Data](https://user-images.githubusercontent.com/85772166/233249065-60728dd1-612e-4684-b196-892f3604c0f4.png) diff --git a/website/content/cli/openbbuserdata.md b/website/content/cli/openbbuserdata.md new file mode 100644 index 000000000000..036731b19365 --- /dev/null +++ b/website/content/cli/openbbuserdata.md @@ -0,0 +1,59 @@ +--- +title: OpenBBUserData Folder +sidebar_position: 8 +description: The OpenBBUserData folder is where exports, routines, and other user-related content is saved and stored. Its default location is the home of the system user account. +keywords: +- OpenBBUserData folder +- settings +- data +- preferences +- exports +- CLI +- save +- routines +- xlsx +- csv +- user_settings.json +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +The OpenBBUserData folder is where exports, routines, and other user-related content is saved and stored. + +:::info +If a new file is placed in the folder (like a Routine) the CLI will need to be reset before auto complete will recognize it. +::: + +## Default Location + +Its default location is the home of the system user account, similar to the following paths: +- macOS: `Macintosh HD/Users//OpenBBUserData` +- Windows: `C:/Users//OpenBBUserData` + +This folder contains all things user-created. For example: + +- Exported files +- Styles and themes +- Routines +- Logs + +:::note +**Note:** With a WSL-enabled Windows installation, this folder will be under the Linux partition +::: + +## Update Folder Location + +The location of this folder can be set by the user by changing the user configuration file: `/home/your-user/.openbb_platform/user_settings.json`. + +```json +{ +... +"preferences": { + "data_directory": "/path/to/NewOpenBBUserData", + "export_directory": "/path/to/NewOpenBBUserData" +}, +... +} +``` diff --git a/website/content/cli/quickstart.md b/website/content/cli/quickstart.md new file mode 100644 index 000000000000..ef9841087311 --- /dev/null +++ b/website/content/cli/quickstart.md @@ -0,0 +1,243 @@ +--- +title: Quick Start +sidebar_position: 2 +description: This page is a quick start guide for the OpenBB CLI. +keywords: +- quickstart +- quick start +- tutorial +- getting started +- cli +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Launch + +- Open a Terminal and activate the environment where the `openbb-cli` package was installed. +- On the command line, enter: `openbb` + +![CLI Home](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/d1617c3b-c83d-4491-a7bc-986321fd7230) + +## Login + +Login to your [OpenBB Hub account](https://my.openbb.co) to add stored keys to the session. + +```console +/account/login --pat REPLACE_WITH_YOUR_PAT +``` + +:::tip +Add `--remember-me` to the command to persist the login until actively logging out. +::: + +Login by email & password is also possible. + +```console +/account/login --email my@emailaddress.com --password n0Ts3CuR3L!kEPAT +``` + +Find all data providers [here](https://docs.openbb.co/platform/extensions/data_extensions), and manage all your credentials directly on the [OpenBB Hub](https://my.openbb.co/app/platform/credentials). + +## Menus + +:::info +Menus are distinguishable from commands by the character, `>`, on the left of the screen. +::: + +Enter a menu by typing it out and pressing return. + +```console +economy +``` + +![Economy Menu](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/b68491fc-d6c3-42a7-80db-bfe2aa848a5a) + +### Go Back One Level + +Return to the parent menu by entering either: + +- `..` +- `q` + +### Go Back To Home + +Return to the base menu by entering either: + +- `/` +- `home` + +### Jump Between Menus + +Use absolute paths to navigate from anywhere, to anywhere. + +From: + +```console +/equity/calendar/earnings +``` + +To: + +```console +/economy/calendar +``` + +## Commands + +Commands are displayed on-screen in a lighter colour, compared with menu items, and they will not have, `>`. + +Functions have a variety of parameters that differ by endpoint and provider. Use the `--help` dialogue to understand the nuances of any particular command. + +### How To Enter Parameters + +Parameters are all defined through the same pattern, `--argument`, followed by a space, and then the value. + +If the parameter is a boolean (true/false), there is no value to enter. Adding the `--argument` flags the parameter to be the opposite of its default state. + +:::danger +The use of positional arguments is not supported. + +❌ `historical AAPL --start_date 2024-01-01` + +✅ `historical --symbol AAPL --start_date 2024-01-01` +::: + +### Use Auto Complete + +The auto completion engine is triggered when the spacebar is pressed following any command, or parameter with a defined set of choices. + +After the first parameter has been set, remaining parameters will be triggered by entering `--`. + +```console +historical --symbol AAPL --start_date 2024-01-01 -- +``` + +![Auto Complete](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/78e68bbd-094e-4558-bce0-92b8d556fcaf) + +### Data Processing Commands + +Data processing extensions, like `openbb-technical` accept `--data` as an input. + +:::info +Command outputs are cached. These can be check using the `results` command and are selected with the `--data` parameter. +::: + +```console +# Store the command output +/equity/price/historical --symbol SPY --start_date 2024-01-01 --provider yfinance + +# Check results content +results + +# Use the results +/technical/rsi --data OBB0 --chart +``` + +![SPY RSI](https://github.com/OpenBB-finance/OpenBBTerminal/assets/85772166/b480da04-92e6-48e2-bccf-cebc16fb083a) + +## Help Dialogues + +Display the help dialogue by attaching, `--help` or `-h`, to any command. + +:::info +Use this to identify the providers compatible with each parameter, if applicable. +::: + +```console +calendar --help +``` + +```console +usage: calendar [--start_date START_DATE] [--end_date END_DATE] [--provider {fmp,nasdaq,tradingeconomics}] [--country COUNTRY] [--importance {Low,Medium,High}] + [--group {interest rate,inflation,bonds,consumer,gdp,government,housing,labour,markets,money,prices,trade,business}] [-h] [--export EXPORT] + [--sheet-name SHEET_NAME [SHEET_NAME ...]] + +Get the upcoming, or historical, economic calendar of global events. + +options: + --start_date START_DATE + Start date of the data, in YYYY-MM-DD format. + --end_date END_DATE End date of the data, in YYYY-MM-DD format. + --provider {fmp,nasdaq,tradingeconomics} + The provider to use for the query, by default None. + If None, the provider specified in defaults is selected or 'fmp' if there is + no default. + --country COUNTRY Country of the event. (provider: nasdaq, tradingeconomics) + -h, --help show this help message + --export EXPORT Export raw data into csv, json, xlsx and figure into png, jpg, pdf, svg + --sheet-name SHEET_NAME [SHEET_NAME ...] + Name of excel sheet to save data to. Only valid for .xlsx files. + +tradingeconomics: + --importance {Low,Medium,High} + Importance of the event. + --group {interest rate,inflation,bonds,consumer,gdp,government,housing,labour,markets,money,prices,trade,business} + Grouping of events + +``` + +If the source selected was Nasdaq, `--provider nasdaq`, the `--importance` and `--group` parameters will be ignored. + +```console +/economy/calendar --provider nasdaq --country united_states +``` + +| date | country | event | actual | previous | consensus | description | +|:--------------------|:--------------|:-------------------------|:---------|:-----------|:------------|:--------------| +| 2024-05-08 13:30:00 | United States | Fed Governor Cook Speaks | - | - | - | | +| cont... | | | | | | | + +## Export Data + +Data can be exported as a CSV, JSON, or XLSX file, and can also be exported directly from the interactive tables and charts. + +### Named File + +This command exports the Nasdaq directory as a specific CSV file. The path to the file is displayed on-screen. + +```console +/equity/search --provider nasdaq --export nasdaq_directory.csv +``` + +```console +Saved file: /Users/myusername/OpenBBUserData/nasdaq_directory.csv +``` + +### Unnamed File + +If only supplied with the file type, the export will be given a generic name beginning with the date and time. + +```console +/equity/search --provider nasdaq --export csv +``` + +``` +Saved file: /Users/myusername/OpenBBUserData/20240508_145308_controllers_search.csv +``` + +### Specify Sheet Name + +Exports can share the same `.xlsx` file by providing a `--sheet-name`. + +```console +/equity/search --provider nasdaq --export directory.xlsx --sheet-name nasdaq +``` + +## Run Multiple Commands + +A chain of commands can be run from a single line, separate each process with `/`. The example below will draw two charts and can be pasted as a single line. + +```console +/equity/price/historical --symbol AAPL,MSFT,GOOGL,AMZN,META,NVDA,NFLX,TSLA,QQQ --start_date 2022-01-01 --provider yfinance --chart/performance --symbol AAPL,MSFT,GOOGL,AMZN,META,NVDA,NFLX,TSLA,QQQ --provider finviz --chart +``` + +## Example Routine + +To demonstrate how multiple commands are sequenced as a script, try running the example Routine. + +```console +/exe --example +``` diff --git a/website/content/cli/routines/_category_.json b/website/content/cli/routines/_category_.json new file mode 100644 index 000000000000..baa94ff89038 --- /dev/null +++ b/website/content/cli/routines/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Routines", + "position": 11 +} diff --git a/website/content/cli/routines/advanced-routines.md b/website/content/cli/routines/advanced-routines.md new file mode 100644 index 000000000000..deb5988eb0ef --- /dev/null +++ b/website/content/cli/routines/advanced-routines.md @@ -0,0 +1,119 @@ +--- +title: Advanced Routines +sidebar_position: 5 +description: This page provides guidance on creating and running advanced workflows in the OpenBB CLI by + introducing variables and arguments for routines. It explains input variables, + relative time keyword variables, internal script variables and creating loops for + batch execution. +keywords: +- automated workflows +- routines +- arguments +- variables +- relative time keywords +- internal script variables +- loops +- batch execution +- Tutorial +- Running Scripts +- Executing Commands +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Input Variables + +Arguments are variables referenced within the `.openbb` script as `$ARGV` or `$ARGV[0]`, `$ARGV[1]`, and so on. They are provided in the CLI when running `exe` by adding the `--input` flag, followed by the variables separated by commas. + +### Example + +```text +# This script requires you to use arguments. This can be done with the following: +# exe --file routines_template_with_input.openbb -i TSLA +# Replace the name of the file with your file. + +# Navigate to the menu +/equity/price + +# Load the data and display a chart +historical --symbol $ARGV --chart +``` + +## Set Variables + +In addition to external variables using the keyword, `ARGV`, internal variables can be defined with the, `$`, character. + +Note that the variable can have a single element or can be constituted by an array where elements are separated using a comma “,”. + +### Internal Variables Example + +```text +# Example routine with internal variables. + +$TICKERS = XLE,XOP,XLB,XLI,XLP,XLY,XHE,XLV,XLF,KRE,XLK,XLC,XLU,XLRE + +/equity + +price + +historical --symbol $TICKERS --provider yfinance --start_date 2024-01-01 --chart + +home +``` + +## Relative Time Keyword Variables + +In addition to the powerful variables discussed earlier, OpenBB also supports the usage of relative keywords, particularly for working with dates. These relative keywords provide flexibility when specifying dates about the current day. There are four types of relative keywords: + +1. **AGO**: Denotes a time in the past relative to the present day. Valid examples include `$365DAYSAGO`, `$12MONTHSAGO`, `$1YEARSAGO`. + +2. **FROMNOW**: Denotes a time in the future relative to the present day. Valid examples include `$365DAYSFROMNOW`, `$12MONTHSFROMNOW`, `$1YEARSFROMNOW`. + +3. **LAST**: Refers to the last specific day of the week or month that has occurred. Valid examples include `$LASTMONDAY`, `$LASTJUNE`. + +4. **NEXT**: Refers to the next specific day of the week or month that will occur. Valid examples include `$NEXTFRIDAY`, `$NEXTNOVEMBER`. + +The result will be a date with the conventional date associated with OpenBB, i.e. `YYYY-MM-DD`. + +### Relative Time Example + +```text +$TICKERS = XLE,XOP,XLB,XLI,XLP,XLY,XHE,XLV,XLF,KRE,XLK,XLC,XLU,XLRE + +/equity + +price + +historical --symbol $TICKERS --provider yfinance --start_date $3MONTHSAGO --chart + +.. + +calendar + +earnings --start_date $NEXTMONDAY --end_date $NEXTFRIDAY --provider nasdaq + +home +``` + +## Foreach Loop + +Finally, what scripting language would this be if there were no loops? For this, we were inspired by MatLab. The loops in OpenBB utilize the foreach and end convention, allowing for iteration through a list of variables or arguments to execute a sequence of commands. + +To create a foreach loop, you need to follow these steps: + +1. Create the loop header using the syntax: `foreach $$VAR in X` where `X` represents either an argument or a list of variables. It's worth noting that you can choose alternative names for the `$$VAR` variable, as long as the `$$` convention is maintained. + +2. Insert the commands you wish to repeat on the subsequent lines. + +3. Conclude the loop with the keyword `end`. + +### Loop Example + +```text +# Iterates through ARGV elements. +foreach $$VAR in $ARGV[1:] + /equity/fundamental/filings --symbol $$VAR --provider sec +end +``` diff --git a/website/content/cli/routines/community-routines.md b/website/content/cli/routines/community-routines.md new file mode 100644 index 000000000000..1fa10fcdd048 --- /dev/null +++ b/website/content/cli/routines/community-routines.md @@ -0,0 +1,52 @@ +--- +title: Community Routines +sidebar_position: 3 +description: Page provides a detailed overview of OpenBB's Community + Routines. It explains how users can create, modify, share, vote, download, and search for investment + research scripts. +keywords: +- Community Routines +- Investment Research +- Investment Scripts +- Upvotes +- Share Scripts +- Advanced Search +- CLI +- automation +- Hub +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Overview + +Community Routines are a feature of the [OpenBB Hub](https://my.openbb.co) that provides methods for creating, editing and sharing OpenBB CLI scripts in the cloud. + +Users can create routines that are private or public, with public routines able to run directly from a URL. + +## Create Routines + +- From the sidebar, click on "My Routines". +- Scroll down and click the button, "Create New". +- Enter a name for the routine. +- Select the "public" check box to make it runnable via URL. +- Add tags (optional). +- Add a short description. +- Enter your workflow into the Script box. +- Click the "Create" button. + +## Run From URL + +To run a routine with a URL, it must be made public. Existing routines can be modified by clicking on the item under, "My Routines". Check the "Public" box to activate. + +The URL will follow the pattern, `https://my.openbb.co/u/{username}/routine/{routine-name}`, which can be executed from the CLI with: + +```console +/exe --url {URL} +``` + +## Download + +Alternatively, click the "Download" button at the bottom of the routine editor to manually download the file to the machine. Place the file in the `OpenBBUserData/routines` folder and open the CLI. The script will be presented as a choice by auto-complete. diff --git a/website/content/cli/routines/index.mdx b/website/content/cli/routines/index.mdx new file mode 100644 index 000000000000..cf5947ef80a0 --- /dev/null +++ b/website/content/cli/routines/index.mdx @@ -0,0 +1,31 @@ +--- +title: Routines +--- + +import NewReferenceCard from "@site/src/components/General/NewReferenceCard"; +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +
      + + + + +
    \ No newline at end of file diff --git a/website/content/cli/routines/introduction-to-routines.md b/website/content/cli/routines/introduction-to-routines.md new file mode 100644 index 000000000000..7eaf8ecd9734 --- /dev/null +++ b/website/content/cli/routines/introduction-to-routines.md @@ -0,0 +1,130 @@ +--- +title: Introduction to Routines +sidebar_position: 1 +description: The page provides a detailed introduction to OpenBB Routines, which allow + users to automate processes and repetitive tasks in financial analysis and data + collection. It explains conventions, basic scripts, routine execution, and guides users on getting + started with an example. +keywords: +- OpenBB Routines +- automated processes +- repetitive tasks +- data collection +- basic script +- routine execution +- automation +- routines +- cli +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Overview + +OpenBB Routines allows users to capture and write simple scripts for automating processes and repetitive tasks. In essence, these are text plain-text files that can be created or modified in any basic text editor with the only difference being the `.openbb` extension. + +Other software like STATA, SPSS, and R-Studio share similar functionality in the area of Econometrics and the OpenBB routine scripts venture into the area of financial analysis and data collection to speed up the process. + +Routines make it easy to automate a series of processes, and this includes mining and dumping large amounts of data to organized spreadsheets. Making use of `--export` and `--sheet-name`, data collection is more efficient and reliable, with results that are easily replicable. + +A pipeline of commands is difficult to share, so to encourage users to share ideas and processes, we created [Community Routines](community-routines.md) for the [OpenBB Hub](https://my.openbb.co/). Routines can be created, stored, and shared - executable in any OpenBB CLI installation, by URL. + +## Pipeline of Commands + +One of the main objectives of the OpenBB Platform CLI is to automate a user's investment research workflow - not just a single command, but the complete process. This is where the pipeline of commands comes in, running a sequence of commands. + +An example of a pipeline of commands is: + +```console +/equity/price/historical --symbol AAPL/../../technical/ema --data OBB0 --length 50 +``` + +Which will perform a exponential moving average (`ema`) on the historical price of Apple (`AAPL`). + +### Step-by-Step Explanation + +This will do the following: + +1. `equity` - Go into `equity` menu. + +2. `price` - Go into `price` sub-menu. + +3. `historical --symbol AAPL` - Load historical price data for Apple. + +4. `..` (X2) will walk back to the root menu. + +5. `technical` - Go into Technical Analysis (`technical`) menu. + +6. `ema --data OBB0 --length 50` - Run the exponential moving average indicator with windows of length 50 (`--length 50`) on the last cached result (`--data OBB0`) + +## Routine execution + +Run a routine file from the main menu, with the `exe` command. Try, `exe --example`, to get a sense of what this functionality does. Below, the `--help` dialogue is displayed. + +```console +/exe -h +``` + +```console +usage: exe [--file FILE [FILE ...]] [-i ROUTINE_ARGS] [-e] [--url URL] [-h] + +Execute automated routine script. For an example, please use `exe --example` and for documentation and to learn how create your own script type `about exe`. + +optional arguments: + --file FILE [FILE ...], -f FILE [FILE ...] + The path or .openbb file to run. (default: None) + -i ROUTINE_ARGS, --input ROUTINE_ARGS + Select multiple inputs to be replaced in the routine and separated by commas. E.g. GME,AMC,BTC-USD (default: None) + -e, --example Run an example script to understand how routines can be used. (default: False) + --url URL URL to run openbb script from. (default: None) + -h, --help show this help message (default: False) + +For more information and examples, use 'about exe' to access the related guide. +``` + +## Basic Script + +The most basic script style contains 2 main elements: + +- **Comments**: any text after a hashtag (`#`) is referred to as a comment. This is used to explain what is happening within the line below and is ignored when the file is executed. +- **Commands**: any text *without* a hashtag is being run inside the CLI as if the user had prompted that line in the terminal. Note that this means that you are able to create a pipeline of commands in a single line, i.e. `equity/price/historical --symbol AAPL --provider fmp` is a valid line for the script. + +For instance, the text below corresponds to the example file that OpenBB provides. + +```console +# Navigate into the price sub-menu of the equity module. +equity/price + +# Load a company ticker, e.g. Apple +historical --symbol AAPL --provider yfinance + +# Show a candle chart with a 20 day Moving Average +/technical/ema --data OBB0 --length 20 + +# Switch over to the Fundamental Analysis menu +/equity/fundamental + +# Show balance sheet +balance --symbol aapl --provider yfinance + +# Show cash flow statement +cash --symbol aapl --provider yfinance + +# Show income statement +income --symbol aapl --provider yfinance + +# Return to home +home +``` + +## Getting started + +As a starting point, let's use the example above. + +1. Create a new text file with the name `routines_template.openbb` and copy and paste the routine above. + +2. Move the file inside the `routines` folder within the [OpenBBUserData](openbbuserdata) folder and, optionally, adjust the name to your liking. + +3. Open up the CLI, and type `exe --file routines_template`. If you changed the name of the file, then replace, `routines_template`, with that. As long as the file remains in the `~/OpenBBUserData/routines` folder, the CLI's auto-completer will provide it as a choice. diff --git a/website/content/cli/routines/routine-macro-recorder.md b/website/content/cli/routines/routine-macro-recorder.md new file mode 100644 index 000000000000..2221b7d8d342 --- /dev/null +++ b/website/content/cli/routines/routine-macro-recorder.md @@ -0,0 +1,46 @@ +--- +title: Routine Macro Recorder +sidebar_position: 4 +description: Learn how to use the macro recorder in OpenBB to start saving commands + and automate common tasks with scripts. This page guides you through the process + of recording, saving, and accessing your recorded routines. +keywords: +- macro recorder +- script routines +- global commands +- command recording +- routine script +- terminal main menu +- exe --file +- OpenBBUserData +- routines folder +- cli +- record +- stop +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +OpenBB script routines can be captured with the macro recorder, controlled with global commands. Enter, `record`, to start saving commands, and then, `stop`, terminates the recording. This means that any command you run will be captured in the script; and on `stop`, it will be saved to the `~/OpenBBUserData/routines/` folder. + +For example: + +```console +record -n sample + +/equity/price/historical --symbol SPY --provider cboe --interval 1m/home/derivatives/options/chains --symbol SPY --provider cboe/home/stop/r +``` + +The final command after `stop`, `r`, resets the CLI so that the routine is presented as a choice in the `exe` command. + +It can now be played back by entering: + +```console +/exe --file sample.openbb +``` + +:::tip +The routine can be edited to replace parameter values with input variables - e.g, `$ARGV[0]`, `$ARGV[1]`, etc. +::: diff --git a/website/content/cli/structure-and-navigation.md b/website/content/cli/structure-and-navigation.md new file mode 100644 index 000000000000..bcb6f6d840e0 --- /dev/null +++ b/website/content/cli/structure-and-navigation.md @@ -0,0 +1,42 @@ +--- +title: Structure and Navigation +sidebar_position: 3 +description: This page describes the layout and structure of the OpenBB CLI, as well as how to navigate it. +keywords: +- CLI application +- OpenBB Platform CLI +- structure +- navigation +- Command Line Interface +- navigating +- Home +- commands +- menus +- OpenBB Hub Theme Style +- Absolute paths +--- + +import HeadTitle from '@site/src/components/General/HeadTitle.tsx'; + + + +## Structure + +The OpenBB Platform CLI is a Command Line Interface (CLI) application. Functions (commands) are called through the keyboard with results returned as charts, tables, or text. Charts and tables (if enabled) are displayed in a new window, and are fully interactive, while text prints directly to the Terminal screen. + +A menu is a collection of commands (and sub-menus). A menu can be distinguished from a command because the former has a `>` on the left. The color of a command and a menu also differ, but these can be changed in OpenBB Hub's theme style. + +## Navigation + +Navigating through the CLI menus is similar to traversing folders from any operating system's command line prompt. The `/home` screen is the main directory where everything begins, and the menus are paths branched from the main. Instead of `C:\Users\OpenBB\Documents`, you'll have something like `/equity/price`. Instead of `cd ..`, you can do `..` to return the menu right above. To go back to the root menu you can do `/`. + +### Absolute Paths + +Absolute paths are also valid to-and-from any point. From the `/equity/price` menu, you can go directly to `crypto` menu with: `/crypto`. Note the forward slash at the start to denote the "absolute" path. + +### Home + +Return to the Home screen from anywhere by entering any of the following: + +- `/` +- `home` diff --git a/website/content/platform/installation.md b/website/content/platform/installation.md index 2db5639e2f68..9ef0a060ce44 100644 --- a/website/content/platform/installation.md +++ b/website/content/platform/installation.md @@ -123,15 +123,6 @@ From your python interpreter, import the OpenBB Platform: from openbb import obb ``` -:::warning -This import statement is required due to the statefulness of the obb package. There is currently no support for imports such as - -```console -from openbb.obb.equity import * -``` - -::: - When the package is imported, any installed extensions will be discovered, imported and available for use. :::note diff --git a/website/package-lock.json b/website/package-lock.json index ddcb2300e626..d4355a0b3d57 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -13952,12 +13952,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/search-insights": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.13.0.tgz", - "integrity": "sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw==", - "peer": true - }, "node_modules/section-matter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", @@ -15149,6 +15143,7 @@ "version": "5.4.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" diff --git a/website/sidebars.js b/website/sidebars.js index 17d5b5dccbc3..f2ebf8ea6ea5 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -36,6 +36,11 @@ export default { label: "OpenBB Platform", items: [{ type: "autogenerated", dirName: "platform" }], }, + { + type: "category", + label: "OpenBB CLI", + items: [{ type: "autogenerated", dirName: "cli" }], + }, { type: "category", label: "OpenBB Bot", diff --git a/website/src/components/General/NewReferenceCard.tsx b/website/src/components/General/NewReferenceCard.tsx index f40993a99090..d75bb780f193 100644 --- a/website/src/components/General/NewReferenceCard.tsx +++ b/website/src/components/General/NewReferenceCard.tsx @@ -40,13 +40,16 @@ export default function NewReferenceCard({ cleanedPath.startsWith("/platform"), "hover:bg-[#16A34A] border-[#16A34A] dark:hover:bg-[#14532D] dark:border-[#14532D]": cleanedPath.startsWith("/excel"), + "hover:bg-[#D3D3D3] border-[#D3D3D3] dark:hover:bg-[#5c5c5c] dark:border-[#5c5c5c]": + cleanedPath.startsWith("/cli"), header_docs: !cleanedPath.startsWith("/terminal") && !cleanedPath.startsWith("/pro") && !cleanedPath.startsWith("/excel") && !cleanedPath.startsWith("/sdk") && !cleanedPath.startsWith("/platform") && - !cleanedPath.startsWith("/bot"), + !cleanedPath.startsWith("/bot") && + !cleanedPath.startsWith("/cli"), }, )} to={url} diff --git a/website/src/theme/CodeBlock/Content/styles.module.css b/website/src/theme/CodeBlock/Content/styles.module.css index c1b10cde049a..1cc776c2fbfa 100644 --- a/website/src/theme/CodeBlock/Content/styles.module.css +++ b/website/src/theme/CodeBlock/Content/styles.module.css @@ -35,6 +35,7 @@ float: left; min-width: 100%; padding: var(--ifm-pre-padding); + line-height: 18px; } .codeBlockLinesWithNumbering { diff --git a/website/src/theme/DocSidebarItem/Category/index.js b/website/src/theme/DocSidebarItem/Category/index.js index 4ddec60bf68c..a374570c15c4 100644 --- a/website/src/theme/DocSidebarItem/Category/index.js +++ b/website/src/theme/DocSidebarItem/Category/index.js @@ -85,6 +85,7 @@ export default function DocSidebarItemCategory({ "OpenBB Bot": "/bot", "OpenBB Terminal Pro": "/pro", "OpenBB Add-in for Excel": "/excel", + "OpenBB CLI": "/cli", }; const newHref = labelToHrefMap[label] || href; const { diff --git a/website/src/theme/Navbar/Layout/index.js b/website/src/theme/Navbar/Layout/index.js index 8a767c3f6200..65e2a425e6e4 100644 --- a/website/src/theme/Navbar/Layout/index.js +++ b/website/src/theme/Navbar/Layout/index.js @@ -80,6 +80,18 @@ export default function NavbarLayout({ children }) { "#3a204f" ); } + } else if (cleanedPath.startsWith("/cli")) { + if (document.documentElement.getAttribute("data-theme") === "dark") { + document.documentElement.style.setProperty( + "--ifm-color-primary", + "#d3d3d3" + ); + } else { + document.documentElement.style.setProperty( + "--ifm-color-primary", + "#d3d3d3" + ); + } } else { } }, [pathname]); From 05322de3b70aff8c7a2b4a93085b64d47d7bec3f Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Tue, 14 May 2024 09:08:18 -0700 Subject: [PATCH 41/44] add linux stuff to pre-requisites (#6411) --- website/content/cli/installation.md | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/website/content/cli/installation.md b/website/content/cli/installation.md index 51c1819538ab..67056410d796 100644 --- a/website/content/cli/installation.md +++ b/website/content/cli/installation.md @@ -28,6 +28,29 @@ Please refer to the [OpenBB Platform install documentation](/platform/installati If the OpenBB Platform is not already installed, the `openbb-cli` package will install the default components. ::: +### Linux Requirements + +Linux users will need to take additional steps prior to installation. + +#### Rust + +Rust and Cargo must be installed, system-level, and in the PATH. Follow the instructions on-screen to install and add to PATH in the shell profile. + +```bash +curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh +``` + +#### Webkit + +Next, install webkit. + +- Debian-based / Ubuntu / Mint: `sudo apt install libwebkit2gtk-4.0-dev` + +- Arch Linux / Manjaro: `sudo pacman -S webkit2gtk` + +- Fedora: `sudo dnf install gtk3-devel webkit2gtk3-devel` + + ## PyPI Within your existing OpenBB environment, install `openbb-cli` with: @@ -36,7 +59,6 @@ Within your existing OpenBB environment, install `openbb-cli` with: pip install openbb-cli ``` - The installation script adds `openbb` to the PATH within your Python environment. The application can be launched from any path, as long as the environment is active. ```console From 174d7e69d3ee2d1b46078386c9b57b13f40c5110 Mon Sep 17 00:00:00 2001 From: Theodore Aptekarev Date: Tue, 14 May 2024 19:30:15 +0200 Subject: [PATCH 42/44] Improve web security (#6405) * Bump aiohttp to a patched version * Bump python-multipart to a patched version * Bump urllib3 to the latest patched version * Bump aiohttp-client-cache and aiosqlite to latest versions * Bump plotly.js and third level deps in frontend components * Bump fastapi to a patched version * Update lock file after the python-jose removal --- openbb_platform/core/poetry.lock | 625 +++++++++++++++++++++++++++- openbb_platform/core/pyproject.toml | 2 +- 2 files changed, 614 insertions(+), 13 deletions(-) diff --git a/openbb_platform/core/poetry.lock b/openbb_platform/core/poetry.lock index 44a2f785be91..ba68f2182c41 100644 --- a/openbb_platform/core/poetry.lock +++ b/openbb_platform/core/poetry.lock @@ -321,6 +321,41 @@ files = [ {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] +[[package]] +name = "dnspython" +version = "2.6.1" +description = "DNS toolkit" +optional = false +python-versions = ">=3.8" +files = [ + {file = "dnspython-2.6.1-py3-none-any.whl", hash = "sha256:5ef3b9680161f6fa89daf8ad451b5f1a33b18ae8a1c6778cdf4b43f08c0a6e50"}, + {file = "dnspython-2.6.1.tar.gz", hash = "sha256:e8f0f9c23a7b7cb99ded64e6c3a6f3e701d78f50c55e002b839dea7225cff7cc"}, +] + +[package.extras] +dev = ["black (>=23.1.0)", "coverage (>=7.0)", "flake8 (>=7)", "mypy (>=1.8)", "pylint (>=3)", "pytest (>=7.4)", "pytest-cov (>=4.1.0)", "sphinx (>=7.2.0)", "twine (>=4.0.0)", "wheel (>=0.42.0)"] +dnssec = ["cryptography (>=41)"] +doh = ["h2 (>=4.1.0)", "httpcore (>=1.0.0)", "httpx (>=0.26.0)"] +doq = ["aioquic (>=0.9.25)"] +idna = ["idna (>=3.6)"] +trio = ["trio (>=0.23)"] +wmi = ["wmi (>=1.5.1)"] + +[[package]] +name = "email-validator" +version = "2.1.1" +description = "A robust email address syntax and deliverability validation library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "email_validator-2.1.1-py3-none-any.whl", hash = "sha256:97d882d174e2a65732fb43bfce81a3a834cbc1bde8bf419e30ef5ea976370a05"}, + {file = "email_validator-2.1.1.tar.gz", hash = "sha256:200a70680ba08904be6d1eef729205cc0d687634399a5924d842533efb824b84"}, +] + +[package.dependencies] +dnspython = ">=2.0.0" +idna = ">=2.0.0" + [[package]] name = "exceptiongroup" version = "1.2.0" @@ -337,23 +372,46 @@ test = ["pytest (>=6)"] [[package]] name = "fastapi" -version = "0.104.1" +version = "0.111.0" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = false python-versions = ">=3.8" files = [ - {file = "fastapi-0.104.1-py3-none-any.whl", hash = "sha256:752dc31160cdbd0436bb93bad51560b57e525cbb1d4bbf6f4904ceee75548241"}, - {file = "fastapi-0.104.1.tar.gz", hash = "sha256:e5e4540a7c5e1dcfbbcf5b903c234feddcdcd881f191977a1c5dfd917487e7ae"}, + {file = "fastapi-0.111.0-py3-none-any.whl", hash = "sha256:97ecbf994be0bcbdadedf88c3150252bed7b2087075ac99735403b1b76cc8fc0"}, + {file = "fastapi-0.111.0.tar.gz", hash = "sha256:b9db9dd147c91cb8b769f7183535773d8741dd46f9dc6676cd82eab510228cd7"}, ] [package.dependencies] -anyio = ">=3.7.1,<4.0.0" +email_validator = ">=2.0.0" +fastapi-cli = ">=0.0.2" +httpx = ">=0.23.0" +jinja2 = ">=2.11.2" +orjson = ">=3.2.1" pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" -starlette = ">=0.27.0,<0.28.0" +python-multipart = ">=0.0.7" +starlette = ">=0.37.2,<0.38.0" typing-extensions = ">=4.8.0" +ujson = ">=4.0.1,<4.0.2 || >4.0.2,<4.1.0 || >4.1.0,<4.2.0 || >4.2.0,<4.3.0 || >4.3.0,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0" +uvicorn = {version = ">=0.12.0", extras = ["standard"]} [package.extras] -all = ["email-validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.5)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +all = ["email_validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.7)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] + +[[package]] +name = "fastapi-cli" +version = "0.0.3" +description = "Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fastapi_cli-0.0.3-py3-none-any.whl", hash = "sha256:ae233115f729945479044917d949095e829d2d84f56f55ce1ca17627872825a5"}, + {file = "fastapi_cli-0.0.3.tar.gz", hash = "sha256:3b6e4d2c4daee940fb8db59ebbfd60a72c4b962bcf593e263e4cc69da4ea3d7f"}, +] + +[package.dependencies] +fastapi = "*" +typer = ">=0.12.3" +uvicorn = {version = ">=0.15.0", extras = ["standard"]} [[package]] name = "frozenlist" @@ -473,6 +531,99 @@ chardet = ["chardet (>=2.2)"] genshi = ["genshi"] lxml = ["lxml"] +[[package]] +name = "httpcore" +version = "1.0.5" +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"}, +] + +[package.dependencies] +certifi = "*" +h11 = ">=0.13,<0.15" + +[package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<0.26.0)"] + +[[package]] +name = "httptools" +version = "0.6.1" +description = "A collection of framework independent HTTP protocol utils." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "httptools-0.6.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d2f6c3c4cb1948d912538217838f6e9960bc4a521d7f9b323b3da579cd14532f"}, + {file = "httptools-0.6.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:00d5d4b68a717765b1fabfd9ca755bd12bf44105eeb806c03d1962acd9b8e563"}, + {file = "httptools-0.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:639dc4f381a870c9ec860ce5c45921db50205a37cc3334e756269736ff0aac58"}, + {file = "httptools-0.6.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e57997ac7fb7ee43140cc03664de5f268813a481dff6245e0075925adc6aa185"}, + {file = "httptools-0.6.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0ac5a0ae3d9f4fe004318d64b8a854edd85ab76cffbf7ef5e32920faef62f142"}, + {file = "httptools-0.6.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3f30d3ce413088a98b9db71c60a6ada2001a08945cb42dd65a9a9fe228627658"}, + {file = "httptools-0.6.1-cp310-cp310-win_amd64.whl", hash = "sha256:1ed99a373e327f0107cb513b61820102ee4f3675656a37a50083eda05dc9541b"}, + {file = "httptools-0.6.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7a7ea483c1a4485c71cb5f38be9db078f8b0e8b4c4dc0210f531cdd2ddac1ef1"}, + {file = "httptools-0.6.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:85ed077c995e942b6f1b07583e4eb0a8d324d418954fc6af913d36db7c05a5a0"}, + {file = "httptools-0.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b0bb634338334385351a1600a73e558ce619af390c2b38386206ac6a27fecfc"}, + {file = "httptools-0.6.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d9ceb2c957320def533671fc9c715a80c47025139c8d1f3797477decbc6edd2"}, + {file = "httptools-0.6.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4f0f8271c0a4db459f9dc807acd0eadd4839934a4b9b892f6f160e94da309837"}, + {file = "httptools-0.6.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6a4f5ccead6d18ec072ac0b84420e95d27c1cdf5c9f1bc8fbd8daf86bd94f43d"}, + {file = "httptools-0.6.1-cp311-cp311-win_amd64.whl", hash = "sha256:5cceac09f164bcba55c0500a18fe3c47df29b62353198e4f37bbcc5d591172c3"}, + {file = "httptools-0.6.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:75c8022dca7935cba14741a42744eee13ba05db00b27a4b940f0d646bd4d56d0"}, + {file = "httptools-0.6.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:48ed8129cd9a0d62cf4d1575fcf90fb37e3ff7d5654d3a5814eb3d55f36478c2"}, + {file = "httptools-0.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f58e335a1402fb5a650e271e8c2d03cfa7cea46ae124649346d17bd30d59c90"}, + {file = "httptools-0.6.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93ad80d7176aa5788902f207a4e79885f0576134695dfb0fefc15b7a4648d503"}, + {file = "httptools-0.6.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9bb68d3a085c2174c2477eb3ffe84ae9fb4fde8792edb7bcd09a1d8467e30a84"}, + {file = "httptools-0.6.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b512aa728bc02354e5ac086ce76c3ce635b62f5fbc32ab7082b5e582d27867bb"}, + {file = "httptools-0.6.1-cp312-cp312-win_amd64.whl", hash = "sha256:97662ce7fb196c785344d00d638fc9ad69e18ee4bfb4000b35a52efe5adcc949"}, + {file = "httptools-0.6.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8e216a038d2d52ea13fdd9b9c9c7459fb80d78302b257828285eca1c773b99b3"}, + {file = "httptools-0.6.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3e802e0b2378ade99cd666b5bffb8b2a7cc8f3d28988685dc300469ea8dd86cb"}, + {file = "httptools-0.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4bd3e488b447046e386a30f07af05f9b38d3d368d1f7b4d8f7e10af85393db97"}, + {file = "httptools-0.6.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe467eb086d80217b7584e61313ebadc8d187a4d95bb62031b7bab4b205c3ba3"}, + {file = "httptools-0.6.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3c3b214ce057c54675b00108ac42bacf2ab8f85c58e3f324a4e963bbc46424f4"}, + {file = "httptools-0.6.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8ae5b97f690badd2ca27cbf668494ee1b6d34cf1c464271ef7bfa9ca6b83ffaf"}, + {file = "httptools-0.6.1-cp38-cp38-win_amd64.whl", hash = "sha256:405784577ba6540fa7d6ff49e37daf104e04f4b4ff2d1ac0469eaa6a20fde084"}, + {file = "httptools-0.6.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:95fb92dd3649f9cb139e9c56604cc2d7c7bf0fc2e7c8d7fbd58f96e35eddd2a3"}, + {file = "httptools-0.6.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:dcbab042cc3ef272adc11220517278519adf8f53fd3056d0e68f0a6f891ba94e"}, + {file = "httptools-0.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cf2372e98406efb42e93bfe10f2948e467edfd792b015f1b4ecd897903d3e8d"}, + {file = "httptools-0.6.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:678fcbae74477a17d103b7cae78b74800d795d702083867ce160fc202104d0da"}, + {file = "httptools-0.6.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e0b281cf5a125c35f7f6722b65d8542d2e57331be573e9e88bc8b0115c4a7a81"}, + {file = "httptools-0.6.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:95658c342529bba4e1d3d2b1a874db16c7cca435e8827422154c9da76ac4e13a"}, + {file = "httptools-0.6.1-cp39-cp39-win_amd64.whl", hash = "sha256:7ebaec1bf683e4bf5e9fbb49b8cc36da482033596a415b3e4ebab5a4c0d7ec5e"}, + {file = "httptools-0.6.1.tar.gz", hash = "sha256:c6e26c30455600b95d94b1b836085138e82f177351454ee841c148f93a9bad5a"}, +] + +[package.extras] +test = ["Cython (>=0.29.24,<0.30.0)"] + +[[package]] +name = "httpx" +version = "0.27.0" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpx-0.27.0-py3-none-any.whl", hash = "sha256:71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"}, + {file = "httpx-0.27.0.tar.gz", hash = "sha256:a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5"}, +] + +[package.dependencies] +anyio = "*" +certifi = "*" +httpcore = "==1.*" +idna = "*" +sniffio = "*" + +[package.extras] +brotli = ["brotli", "brotlicffi"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] + [[package]] name = "idna" version = "3.6" @@ -514,6 +665,127 @@ files = [ {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, ] +[[package]] +name = "jinja2" +version = "3.1.4" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +files = [ + {file = "jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d"}, + {file = "jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "markdown-it-py" +version = "3.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" +optional = false +python-versions = ">=3.8" +files = [ + {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, + {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, +] + +[package.dependencies] +mdurl = ">=0.1,<1.0" + +[package.extras] +benchmarking = ["psutil", "pytest", "pytest-benchmark"] +code-style = ["pre-commit (>=3.0,<4.0)"] +compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] +linkify = ["linkify-it-py (>=1,<3)"] +plugins = ["mdit-py-plugins"] +profiling = ["gprof2dot"] +rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "markupsafe" +version = "2.1.5" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.7" +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"}, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +description = "Markdown URL utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, +] + [[package]] name = "monotonic" version = "1.6" @@ -706,6 +978,61 @@ files = [ {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, ] +[[package]] +name = "orjson" +version = "3.10.3" +description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy" +optional = false +python-versions = ">=3.8" +files = [ + {file = "orjson-3.10.3-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:9fb6c3f9f5490a3eb4ddd46fc1b6eadb0d6fc16fb3f07320149c3286a1409dd8"}, + {file = "orjson-3.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:252124b198662eee80428f1af8c63f7ff077c88723fe206a25df8dc57a57b1fa"}, + {file = "orjson-3.10.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9f3e87733823089a338ef9bbf363ef4de45e5c599a9bf50a7a9b82e86d0228da"}, + {file = "orjson-3.10.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8334c0d87103bb9fbbe59b78129f1f40d1d1e8355bbed2ca71853af15fa4ed3"}, + {file = "orjson-3.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1952c03439e4dce23482ac846e7961f9d4ec62086eb98ae76d97bd41d72644d7"}, + {file = "orjson-3.10.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c0403ed9c706dcd2809f1600ed18f4aae50be263bd7112e54b50e2c2bc3ebd6d"}, + {file = "orjson-3.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:382e52aa4270a037d41f325e7d1dfa395b7de0c367800b6f337d8157367bf3a7"}, + {file = "orjson-3.10.3-cp310-none-win32.whl", hash = "sha256:be2aab54313752c04f2cbaab4515291ef5af8c2256ce22abc007f89f42f49109"}, + {file = "orjson-3.10.3-cp310-none-win_amd64.whl", hash = "sha256:416b195f78ae461601893f482287cee1e3059ec49b4f99479aedf22a20b1098b"}, + {file = "orjson-3.10.3-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:73100d9abbbe730331f2242c1fc0bcb46a3ea3b4ae3348847e5a141265479700"}, + {file = "orjson-3.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:544a12eee96e3ab828dbfcb4d5a0023aa971b27143a1d35dc214c176fdfb29b3"}, + {file = "orjson-3.10.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:520de5e2ef0b4ae546bea25129d6c7c74edb43fc6cf5213f511a927f2b28148b"}, + {file = "orjson-3.10.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ccaa0a401fc02e8828a5bedfd80f8cd389d24f65e5ca3954d72c6582495b4bcf"}, + {file = "orjson-3.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a7bc9e8bc11bac40f905640acd41cbeaa87209e7e1f57ade386da658092dc16"}, + {file = "orjson-3.10.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:3582b34b70543a1ed6944aca75e219e1192661a63da4d039d088a09c67543b08"}, + {file = "orjson-3.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1c23dfa91481de880890d17aa7b91d586a4746a4c2aa9a145bebdbaf233768d5"}, + {file = "orjson-3.10.3-cp311-none-win32.whl", hash = "sha256:1770e2a0eae728b050705206d84eda8b074b65ee835e7f85c919f5705b006c9b"}, + {file = "orjson-3.10.3-cp311-none-win_amd64.whl", hash = "sha256:93433b3c1f852660eb5abdc1f4dd0ced2be031ba30900433223b28ee0140cde5"}, + {file = "orjson-3.10.3-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:a39aa73e53bec8d410875683bfa3a8edf61e5a1c7bb4014f65f81d36467ea098"}, + {file = "orjson-3.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0943a96b3fa09bee1afdfccc2cb236c9c64715afa375b2af296c73d91c23eab2"}, + {file = "orjson-3.10.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e852baafceff8da3c9defae29414cc8513a1586ad93e45f27b89a639c68e8176"}, + {file = "orjson-3.10.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:18566beb5acd76f3769c1d1a7ec06cdb81edc4d55d2765fb677e3eaa10fa99e0"}, + {file = "orjson-3.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bd2218d5a3aa43060efe649ec564ebedec8ce6ae0a43654b81376216d5ebd42"}, + {file = "orjson-3.10.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:cf20465e74c6e17a104ecf01bf8cd3b7b252565b4ccee4548f18b012ff2f8069"}, + {file = "orjson-3.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ba7f67aa7f983c4345eeda16054a4677289011a478ca947cd69c0a86ea45e534"}, + {file = "orjson-3.10.3-cp312-none-win32.whl", hash = "sha256:17e0713fc159abc261eea0f4feda611d32eabc35708b74bef6ad44f6c78d5ea0"}, + {file = "orjson-3.10.3-cp312-none-win_amd64.whl", hash = "sha256:4c895383b1ec42b017dd2c75ae8a5b862fc489006afde06f14afbdd0309b2af0"}, + {file = "orjson-3.10.3-cp38-cp38-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:be2719e5041e9fb76c8c2c06b9600fe8e8584e6980061ff88dcbc2691a16d20d"}, + {file = "orjson-3.10.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0175a5798bdc878956099f5c54b9837cb62cfbf5d0b86ba6d77e43861bcec2"}, + {file = "orjson-3.10.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:978be58a68ade24f1af7758626806e13cff7748a677faf95fbb298359aa1e20d"}, + {file = "orjson-3.10.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16bda83b5c61586f6f788333d3cf3ed19015e3b9019188c56983b5a299210eb5"}, + {file = "orjson-3.10.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ad1f26bea425041e0a1adad34630c4825a9e3adec49079b1fb6ac8d36f8b754"}, + {file = "orjson-3.10.3-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:9e253498bee561fe85d6325ba55ff2ff08fb5e7184cd6a4d7754133bd19c9195"}, + {file = "orjson-3.10.3-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0a62f9968bab8a676a164263e485f30a0b748255ee2f4ae49a0224be95f4532b"}, + {file = "orjson-3.10.3-cp38-none-win32.whl", hash = "sha256:8d0b84403d287d4bfa9bf7d1dc298d5c1c5d9f444f3737929a66f2fe4fb8f134"}, + {file = "orjson-3.10.3-cp38-none-win_amd64.whl", hash = "sha256:8bc7a4df90da5d535e18157220d7915780d07198b54f4de0110eca6b6c11e290"}, + {file = "orjson-3.10.3-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:9059d15c30e675a58fdcd6f95465c1522b8426e092de9fff20edebfdc15e1cb0"}, + {file = "orjson-3.10.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d40c7f7938c9c2b934b297412c067936d0b54e4b8ab916fd1a9eb8f54c02294"}, + {file = "orjson-3.10.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d4a654ec1de8fdaae1d80d55cee65893cb06494e124681ab335218be6a0691e7"}, + {file = "orjson-3.10.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:831c6ef73f9aa53c5f40ae8f949ff7681b38eaddb6904aab89dca4d85099cb78"}, + {file = "orjson-3.10.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99b880d7e34542db89f48d14ddecbd26f06838b12427d5a25d71baceb5ba119d"}, + {file = "orjson-3.10.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2e5e176c994ce4bd434d7aafb9ecc893c15f347d3d2bbd8e7ce0b63071c52e25"}, + {file = "orjson-3.10.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:b69a58a37dab856491bf2d3bbf259775fdce262b727f96aafbda359cb1d114d8"}, + {file = "orjson-3.10.3-cp39-none-win32.whl", hash = "sha256:b8d4d1a6868cde356f1402c8faeb50d62cee765a1f7ffcfd6de732ab0581e063"}, + {file = "orjson-3.10.3-cp39-none-win_amd64.whl", hash = "sha256:5102f50c5fc46d94f2033fe00d392588564378260d64377aec702f21a7a22912"}, + {file = "orjson-3.10.3.tar.gz", hash = "sha256:2b166507acae7ba2f7c315dcf185a9111ad5e992ac81f2d507aac39193c2c818"}, +] + [[package]] name = "packaging" version = "24.0" @@ -932,6 +1259,20 @@ files = [ [package.dependencies] typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" +[[package]] +name = "pygments" +version = "2.18.0" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, +] + +[package.extras] +windows-terminal = ["colorama (>=0.4.6)"] + [[package]] name = "pyjwt" version = "2.8.0" @@ -1097,6 +1438,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -1152,6 +1494,25 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +[[package]] +name = "rich" +version = "13.7.1" +description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "rich-13.7.1-py3-none-any.whl", hash = "sha256:4edbae314f59eb482f54e9e30bf00d33350aaa94f4bfcd4e9e3110e64d0d7222"}, + {file = "rich-13.7.1.tar.gz", hash = "sha256:9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432"}, +] + +[package.dependencies] +markdown-it-py = ">=2.2.0" +pygments = ">=2.13.0,<3.0.0" +typing-extensions = {version = ">=4.0.0,<5.0", markers = "python_version < \"3.9\""} + +[package.extras] +jupyter = ["ipywidgets (>=7.5.1,<9)"] + [[package]] name = "ruff" version = "0.1.15" @@ -1178,6 +1539,17 @@ files = [ {file = "ruff-0.1.15.tar.gz", hash = "sha256:f6dfa8c1b21c913c326919056c390966648b680966febcb796cc9d1aaab8564e"}, ] +[[package]] +name = "shellingham" +version = "1.5.4" +description = "Tool to Detect Surrounding Shell" +optional = false +python-versions = ">=3.7" +files = [ + {file = "shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686"}, + {file = "shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de"}, +] + [[package]] name = "six" version = "1.16.0" @@ -1202,13 +1574,13 @@ files = [ [[package]] name = "starlette" -version = "0.27.0" +version = "0.37.2" description = "The little ASGI library that shines." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "starlette-0.27.0-py3-none-any.whl", hash = "sha256:918416370e846586541235ccd38a474c08b80443ed31c578a418e2209b3eef91"}, - {file = "starlette-0.27.0.tar.gz", hash = "sha256:6a6b0d042acb8d469a01eba54e9cda6cbd24ac602c4cd016723117d6a7e73b75"}, + {file = "starlette-0.37.2-py3-none-any.whl", hash = "sha256:6fe59f29268538e5d0d182f2791a479a0c64638e6935d1c6989e63fb2699c6ee"}, + {file = "starlette-0.37.2.tar.gz", hash = "sha256:9af890290133b79fc3db55474ade20f6220a364a0402e0b556e7cd5e1e093823"}, ] [package.dependencies] @@ -1216,7 +1588,7 @@ anyio = ">=3.4.0,<5" typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} [package.extras] -full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"] +full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart (>=0.0.7)", "pyyaml"] [[package]] name = "time-machine" @@ -1297,6 +1669,23 @@ files = [ {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] +[[package]] +name = "typer" +version = "0.12.3" +description = "Typer, build great CLIs. Easy to code. Based on Python type hints." +optional = false +python-versions = ">=3.7" +files = [ + {file = "typer-0.12.3-py3-none-any.whl", hash = "sha256:070d7ca53f785acbccba8e7d28b08dcd88f79f1fbda035ade0aecec71ca5c914"}, + {file = "typer-0.12.3.tar.gz", hash = "sha256:49e73131481d804288ef62598d97a1ceef3058905aa536a1134f90891ba35482"}, +] + +[package.dependencies] +click = ">=8.0.0" +rich = ">=10.11.0" +shellingham = ">=1.3.0" +typing-extensions = ">=3.7.4.3" + [[package]] name = "typing-extensions" version = "4.10.0" @@ -1319,6 +1708,80 @@ files = [ {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, ] +[[package]] +name = "ujson" +version = "5.9.0" +description = "Ultra fast JSON encoder and decoder for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ujson-5.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ab71bf27b002eaf7d047c54a68e60230fbd5cd9da60de7ca0aa87d0bccead8fa"}, + {file = "ujson-5.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7a365eac66f5aa7a7fdf57e5066ada6226700884fc7dce2ba5483538bc16c8c5"}, + {file = "ujson-5.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e015122b337858dba5a3dc3533af2a8fc0410ee9e2374092f6a5b88b182e9fcc"}, + {file = "ujson-5.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:779a2a88c53039bebfbccca934430dabb5c62cc179e09a9c27a322023f363e0d"}, + {file = "ujson-5.9.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10ca3c41e80509fd9805f7c149068fa8dbee18872bbdc03d7cca928926a358d5"}, + {file = "ujson-5.9.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4a566e465cb2fcfdf040c2447b7dd9718799d0d90134b37a20dff1e27c0e9096"}, + {file = "ujson-5.9.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:f833c529e922577226a05bc25b6a8b3eb6c4fb155b72dd88d33de99d53113124"}, + {file = "ujson-5.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b68a0caab33f359b4cbbc10065c88e3758c9f73a11a65a91f024b2e7a1257106"}, + {file = "ujson-5.9.0-cp310-cp310-win32.whl", hash = "sha256:7cc7e605d2aa6ae6b7321c3ae250d2e050f06082e71ab1a4200b4ae64d25863c"}, + {file = "ujson-5.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:a6d3f10eb8ccba4316a6b5465b705ed70a06011c6f82418b59278fbc919bef6f"}, + {file = "ujson-5.9.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3b23bbb46334ce51ddb5dded60c662fbf7bb74a37b8f87221c5b0fec1ec6454b"}, + {file = "ujson-5.9.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6974b3a7c17bbf829e6c3bfdc5823c67922e44ff169851a755eab79a3dd31ec0"}, + {file = "ujson-5.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5964ea916edfe24af1f4cc68488448fbb1ec27a3ddcddc2b236da575c12c8ae"}, + {file = "ujson-5.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ba7cac47dd65ff88571eceeff48bf30ed5eb9c67b34b88cb22869b7aa19600d"}, + {file = "ujson-5.9.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6bbd91a151a8f3358c29355a491e915eb203f607267a25e6ab10531b3b157c5e"}, + {file = "ujson-5.9.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:829a69d451a49c0de14a9fecb2a2d544a9b2c884c2b542adb243b683a6f15908"}, + {file = "ujson-5.9.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:a807ae73c46ad5db161a7e883eec0fbe1bebc6a54890152ccc63072c4884823b"}, + {file = "ujson-5.9.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8fc2aa18b13d97b3c8ccecdf1a3c405f411a6e96adeee94233058c44ff92617d"}, + {file = "ujson-5.9.0-cp311-cp311-win32.whl", hash = "sha256:70e06849dfeb2548be48fdd3ceb53300640bc8100c379d6e19d78045e9c26120"}, + {file = "ujson-5.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:7309d063cd392811acc49b5016728a5e1b46ab9907d321ebbe1c2156bc3c0b99"}, + {file = "ujson-5.9.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:20509a8c9f775b3a511e308bbe0b72897ba6b800767a7c90c5cca59d20d7c42c"}, + {file = "ujson-5.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b28407cfe315bd1b34f1ebe65d3bd735d6b36d409b334100be8cdffae2177b2f"}, + {file = "ujson-5.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d302bd17989b6bd90d49bade66943c78f9e3670407dbc53ebcf61271cadc399"}, + {file = "ujson-5.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f21315f51e0db8ee245e33a649dd2d9dce0594522de6f278d62f15f998e050e"}, + {file = "ujson-5.9.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5635b78b636a54a86fdbf6f027e461aa6c6b948363bdf8d4fbb56a42b7388320"}, + {file = "ujson-5.9.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:82b5a56609f1235d72835ee109163c7041b30920d70fe7dac9176c64df87c164"}, + {file = "ujson-5.9.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:5ca35f484622fd208f55041b042d9d94f3b2c9c5add4e9af5ee9946d2d30db01"}, + {file = "ujson-5.9.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:829b824953ebad76d46e4ae709e940bb229e8999e40881338b3cc94c771b876c"}, + {file = "ujson-5.9.0-cp312-cp312-win32.whl", hash = "sha256:25fa46e4ff0a2deecbcf7100af3a5d70090b461906f2299506485ff31d9ec437"}, + {file = "ujson-5.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:60718f1720a61560618eff3b56fd517d107518d3c0160ca7a5a66ac949c6cf1c"}, + {file = "ujson-5.9.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d581db9db9e41d8ea0b2705c90518ba623cbdc74f8d644d7eb0d107be0d85d9c"}, + {file = "ujson-5.9.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ff741a5b4be2d08fceaab681c9d4bc89abf3c9db600ab435e20b9b6d4dfef12e"}, + {file = "ujson-5.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdcb02cabcb1e44381221840a7af04433c1dc3297af76fde924a50c3054c708c"}, + {file = "ujson-5.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e208d3bf02c6963e6ef7324dadf1d73239fb7008491fdf523208f60be6437402"}, + {file = "ujson-5.9.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f4b3917296630a075e04d3d07601ce2a176479c23af838b6cf90a2d6b39b0d95"}, + {file = "ujson-5.9.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0c4d6adb2c7bb9eb7c71ad6f6f612e13b264942e841f8cc3314a21a289a76c4e"}, + {file = "ujson-5.9.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:0b159efece9ab5c01f70b9d10bbb77241ce111a45bc8d21a44c219a2aec8ddfd"}, + {file = "ujson-5.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f0cb4a7814940ddd6619bdce6be637a4b37a8c4760de9373bac54bb7b229698b"}, + {file = "ujson-5.9.0-cp38-cp38-win32.whl", hash = "sha256:dc80f0f5abf33bd7099f7ac94ab1206730a3c0a2d17549911ed2cb6b7aa36d2d"}, + {file = "ujson-5.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:506a45e5fcbb2d46f1a51fead991c39529fc3737c0f5d47c9b4a1d762578fc30"}, + {file = "ujson-5.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d0fd2eba664a22447102062814bd13e63c6130540222c0aa620701dd01f4be81"}, + {file = "ujson-5.9.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bdf7fc21a03bafe4ba208dafa84ae38e04e5d36c0e1c746726edf5392e9f9f36"}, + {file = "ujson-5.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2f909bc08ce01f122fd9c24bc6f9876aa087188dfaf3c4116fe6e4daf7e194f"}, + {file = "ujson-5.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd4ea86c2afd41429751d22a3ccd03311c067bd6aeee2d054f83f97e41e11d8f"}, + {file = "ujson-5.9.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:63fb2e6599d96fdffdb553af0ed3f76b85fda63281063f1cb5b1141a6fcd0617"}, + {file = "ujson-5.9.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:32bba5870c8fa2a97f4a68f6401038d3f1922e66c34280d710af00b14a3ca562"}, + {file = "ujson-5.9.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:37ef92e42535a81bf72179d0e252c9af42a4ed966dc6be6967ebfb929a87bc60"}, + {file = "ujson-5.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:f69f16b8f1c69da00e38dc5f2d08a86b0e781d0ad3e4cc6a13ea033a439c4844"}, + {file = "ujson-5.9.0-cp39-cp39-win32.whl", hash = "sha256:3382a3ce0ccc0558b1c1668950008cece9bf463ebb17463ebf6a8bfc060dae34"}, + {file = "ujson-5.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:6adef377ed583477cf005b58c3025051b5faa6b8cc25876e594afbb772578f21"}, + {file = "ujson-5.9.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:ffdfebd819f492e48e4f31c97cb593b9c1a8251933d8f8972e81697f00326ff1"}, + {file = "ujson-5.9.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4eec2ddc046360d087cf35659c7ba0cbd101f32035e19047013162274e71fcf"}, + {file = "ujson-5.9.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fbb90aa5c23cb3d4b803c12aa220d26778c31b6e4b7a13a1f49971f6c7d088e"}, + {file = "ujson-5.9.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ba0823cb70866f0d6a4ad48d998dd338dce7314598721bc1b7986d054d782dfd"}, + {file = "ujson-5.9.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:4e35d7885ed612feb6b3dd1b7de28e89baaba4011ecdf995e88be9ac614765e9"}, + {file = "ujson-5.9.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b048aa93eace8571eedbd67b3766623e7f0acbf08ee291bef7d8106210432427"}, + {file = "ujson-5.9.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:323279e68c195110ef85cbe5edce885219e3d4a48705448720ad925d88c9f851"}, + {file = "ujson-5.9.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9ac92d86ff34296f881e12aa955f7014d276895e0e4e868ba7fddebbde38e378"}, + {file = "ujson-5.9.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:6eecbd09b316cea1fd929b1e25f70382917542ab11b692cb46ec9b0a26c7427f"}, + {file = "ujson-5.9.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:473fb8dff1d58f49912323d7cb0859df5585cfc932e4b9c053bf8cf7f2d7c5c4"}, + {file = "ujson-5.9.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f91719c6abafe429c1a144cfe27883eace9fb1c09a9c5ef1bcb3ae80a3076a4e"}, + {file = "ujson-5.9.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b1c0991c4fe256f5fdb19758f7eac7f47caac29a6c57d0de16a19048eb86bad"}, + {file = "ujson-5.9.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a8ea0f55a1396708e564595aaa6696c0d8af532340f477162ff6927ecc46e21"}, + {file = "ujson-5.9.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:07e0cfdde5fd91f54cd2d7ffb3482c8ff1bf558abf32a8b953a5d169575ae1cd"}, + {file = "ujson-5.9.0.tar.gz", hash = "sha256:89cc92e73d5501b8a7f48575eeb14ad27156ad092c2e9fc7e3cf949f07e75532"}, +] + [[package]] name = "urllib3" version = "1.26.18" @@ -1359,12 +1822,63 @@ files = [ [package.dependencies] click = ">=7.0" +colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""} h11 = ">=0.8" +httptools = {version = ">=0.5.0", optional = true, markers = "extra == \"standard\""} +python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} +pyyaml = {version = ">=5.1", optional = true, markers = "extra == \"standard\""} typing-extensions = {version = ">=4.0", markers = "python_version < \"3.11\""} +uvloop = {version = ">=0.14.0,<0.15.0 || >0.15.0,<0.15.1 || >0.15.1", optional = true, markers = "(sys_platform != \"win32\" and sys_platform != \"cygwin\") and platform_python_implementation != \"PyPy\" and extra == \"standard\""} +watchfiles = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} +websockets = {version = ">=10.4", optional = true, markers = "extra == \"standard\""} [package.extras] standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] +[[package]] +name = "uvloop" +version = "0.19.0" +description = "Fast implementation of asyncio event loop on top of libuv" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "uvloop-0.19.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:de4313d7f575474c8f5a12e163f6d89c0a878bc49219641d49e6f1444369a90e"}, + {file = "uvloop-0.19.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5588bd21cf1fcf06bded085f37e43ce0e00424197e7c10e77afd4bbefffef428"}, + {file = "uvloop-0.19.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b1fd71c3843327f3bbc3237bedcdb6504fd50368ab3e04d0410e52ec293f5b8"}, + {file = "uvloop-0.19.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a05128d315e2912791de6088c34136bfcdd0c7cbc1cf85fd6fd1bb321b7c849"}, + {file = "uvloop-0.19.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:cd81bdc2b8219cb4b2556eea39d2e36bfa375a2dd021404f90a62e44efaaf957"}, + {file = "uvloop-0.19.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5f17766fb6da94135526273080f3455a112f82570b2ee5daa64d682387fe0dcd"}, + {file = "uvloop-0.19.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4ce6b0af8f2729a02a5d1575feacb2a94fc7b2e983868b009d51c9a9d2149bef"}, + {file = "uvloop-0.19.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:31e672bb38b45abc4f26e273be83b72a0d28d074d5b370fc4dcf4c4eb15417d2"}, + {file = "uvloop-0.19.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:570fc0ed613883d8d30ee40397b79207eedd2624891692471808a95069a007c1"}, + {file = "uvloop-0.19.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5138821e40b0c3e6c9478643b4660bd44372ae1e16a322b8fc07478f92684e24"}, + {file = "uvloop-0.19.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:91ab01c6cd00e39cde50173ba4ec68a1e578fee9279ba64f5221810a9e786533"}, + {file = "uvloop-0.19.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:47bf3e9312f63684efe283f7342afb414eea4d3011542155c7e625cd799c3b12"}, + {file = "uvloop-0.19.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:da8435a3bd498419ee8c13c34b89b5005130a476bda1d6ca8cfdde3de35cd650"}, + {file = "uvloop-0.19.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:02506dc23a5d90e04d4f65c7791e65cf44bd91b37f24cfc3ef6cf2aff05dc7ec"}, + {file = "uvloop-0.19.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2693049be9d36fef81741fddb3f441673ba12a34a704e7b4361efb75cf30befc"}, + {file = "uvloop-0.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7010271303961c6f0fe37731004335401eb9075a12680738731e9c92ddd96ad6"}, + {file = "uvloop-0.19.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:5daa304d2161d2918fa9a17d5635099a2f78ae5b5960e742b2fcfbb7aefaa593"}, + {file = "uvloop-0.19.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:7207272c9520203fea9b93843bb775d03e1cf88a80a936ce760f60bb5add92f3"}, + {file = "uvloop-0.19.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:78ab247f0b5671cc887c31d33f9b3abfb88d2614b84e4303f1a63b46c046c8bd"}, + {file = "uvloop-0.19.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:472d61143059c84947aa8bb74eabbace30d577a03a1805b77933d6bd13ddebbd"}, + {file = "uvloop-0.19.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45bf4c24c19fb8a50902ae37c5de50da81de4922af65baf760f7c0c42e1088be"}, + {file = "uvloop-0.19.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:271718e26b3e17906b28b67314c45d19106112067205119dddbd834c2b7ce797"}, + {file = "uvloop-0.19.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:34175c9fd2a4bc3adc1380e1261f60306344e3407c20a4d684fd5f3be010fa3d"}, + {file = "uvloop-0.19.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e27f100e1ff17f6feeb1f33968bc185bf8ce41ca557deee9d9bbbffeb72030b7"}, + {file = "uvloop-0.19.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:13dfdf492af0aa0a0edf66807d2b465607d11c4fa48f4a1fd41cbea5b18e8e8b"}, + {file = "uvloop-0.19.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6e3d4e85ac060e2342ff85e90d0c04157acb210b9ce508e784a944f852a40e67"}, + {file = "uvloop-0.19.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8ca4956c9ab567d87d59d49fa3704cf29e37109ad348f2d5223c9bf761a332e7"}, + {file = "uvloop-0.19.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f467a5fd23b4fc43ed86342641f3936a68ded707f4627622fa3f82a120e18256"}, + {file = "uvloop-0.19.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:492e2c32c2af3f971473bc22f086513cedfc66a130756145a931a90c3958cb17"}, + {file = "uvloop-0.19.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2df95fca285a9f5bfe730e51945ffe2fa71ccbfdde3b0da5772b4ee4f2e770d5"}, + {file = "uvloop-0.19.0.tar.gz", hash = "sha256:0246f4fd1bf2bf702e06b0d45ee91677ee5c31242f39aab4ea6fe0c51aedd0fd"}, +] + +[package.extras] +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)"] + [[package]] name = "vcrpy" version = "5.1.0" @@ -1382,6 +1896,93 @@ urllib3 = {version = "<2", markers = "python_version < \"3.10\""} wrapt = "*" yarl = "*" +[[package]] +name = "watchfiles" +version = "0.21.0" +description = "Simple, modern and high performance file watching and code reload in python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "watchfiles-0.21.0-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:27b4035013f1ea49c6c0b42d983133b136637a527e48c132d368eb19bf1ac6aa"}, + {file = "watchfiles-0.21.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c81818595eff6e92535ff32825f31c116f867f64ff8cdf6562cd1d6b2e1e8f3e"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:6c107ea3cf2bd07199d66f156e3ea756d1b84dfd43b542b2d870b77868c98c03"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d9ac347653ebd95839a7c607608703b20bc07e577e870d824fa4801bc1cb124"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5eb86c6acb498208e7663ca22dbe68ca2cf42ab5bf1c776670a50919a56e64ab"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f564bf68404144ea6b87a78a3f910cc8de216c6b12a4cf0b27718bf4ec38d303"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d0f32ebfaa9c6011f8454994f86108c2eb9c79b8b7de00b36d558cadcedaa3d"}, + {file = "watchfiles-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b6d45d9b699ecbac6c7bd8e0a2609767491540403610962968d258fd6405c17c"}, + {file = "watchfiles-0.21.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:aff06b2cac3ef4616e26ba17a9c250c1fe9dd8a5d907d0193f84c499b1b6e6a9"}, + {file = "watchfiles-0.21.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d9792dff410f266051025ecfaa927078b94cc7478954b06796a9756ccc7e14a9"}, + {file = "watchfiles-0.21.0-cp310-none-win32.whl", hash = "sha256:214cee7f9e09150d4fb42e24919a1e74d8c9b8a9306ed1474ecaddcd5479c293"}, + {file = "watchfiles-0.21.0-cp310-none-win_amd64.whl", hash = "sha256:1ad7247d79f9f55bb25ab1778fd47f32d70cf36053941f07de0b7c4e96b5d235"}, + {file = "watchfiles-0.21.0-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:668c265d90de8ae914f860d3eeb164534ba2e836811f91fecc7050416ee70aa7"}, + {file = "watchfiles-0.21.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a23092a992e61c3a6a70f350a56db7197242f3490da9c87b500f389b2d01eef"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e7941bbcfdded9c26b0bf720cb7e6fd803d95a55d2c14b4bd1f6a2772230c586"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11cd0c3100e2233e9c53106265da31d574355c288e15259c0d40a4405cbae317"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d78f30cbe8b2ce770160d3c08cff01b2ae9306fe66ce899b73f0409dc1846c1b"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6674b00b9756b0af620aa2a3346b01f8e2a3dc729d25617e1b89cf6af4a54eb1"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fd7ac678b92b29ba630d8c842d8ad6c555abda1b9ef044d6cc092dacbfc9719d"}, + {file = "watchfiles-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c873345680c1b87f1e09e0eaf8cf6c891b9851d8b4d3645e7efe2ec20a20cc7"}, + {file = "watchfiles-0.21.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:49f56e6ecc2503e7dbe233fa328b2be1a7797d31548e7a193237dcdf1ad0eee0"}, + {file = "watchfiles-0.21.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:02d91cbac553a3ad141db016e3350b03184deaafeba09b9d6439826ee594b365"}, + {file = "watchfiles-0.21.0-cp311-none-win32.whl", hash = "sha256:ebe684d7d26239e23d102a2bad2a358dedf18e462e8808778703427d1f584400"}, + {file = "watchfiles-0.21.0-cp311-none-win_amd64.whl", hash = "sha256:4566006aa44cb0d21b8ab53baf4b9c667a0ed23efe4aaad8c227bfba0bf15cbe"}, + {file = "watchfiles-0.21.0-cp311-none-win_arm64.whl", hash = "sha256:c550a56bf209a3d987d5a975cdf2063b3389a5d16caf29db4bdddeae49f22078"}, + {file = "watchfiles-0.21.0-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:51ddac60b96a42c15d24fbdc7a4bfcd02b5a29c047b7f8bf63d3f6f5a860949a"}, + {file = "watchfiles-0.21.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:511f0b034120cd1989932bf1e9081aa9fb00f1f949fbd2d9cab6264916ae89b1"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:cfb92d49dbb95ec7a07511bc9efb0faff8fe24ef3805662b8d6808ba8409a71a"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f92944efc564867bbf841c823c8b71bb0be75e06b8ce45c084b46411475a915"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:642d66b75eda909fd1112d35c53816d59789a4b38c141a96d62f50a3ef9b3360"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d23bcd6c8eaa6324fe109d8cac01b41fe9a54b8c498af9ce464c1aeeb99903d6"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:18d5b4da8cf3e41895b34e8c37d13c9ed294954907929aacd95153508d5d89d7"}, + {file = "watchfiles-0.21.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1b8d1eae0f65441963d805f766c7e9cd092f91e0c600c820c764a4ff71a0764c"}, + {file = "watchfiles-0.21.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1fd9a5205139f3c6bb60d11f6072e0552f0a20b712c85f43d42342d162be1235"}, + {file = "watchfiles-0.21.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a1e3014a625bcf107fbf38eece0e47fa0190e52e45dc6eee5a8265ddc6dc5ea7"}, + {file = "watchfiles-0.21.0-cp312-none-win32.whl", hash = "sha256:9d09869f2c5a6f2d9df50ce3064b3391d3ecb6dced708ad64467b9e4f2c9bef3"}, + {file = "watchfiles-0.21.0-cp312-none-win_amd64.whl", hash = "sha256:18722b50783b5e30a18a8a5db3006bab146d2b705c92eb9a94f78c72beb94094"}, + {file = "watchfiles-0.21.0-cp312-none-win_arm64.whl", hash = "sha256:a3b9bec9579a15fb3ca2d9878deae789df72f2b0fdaf90ad49ee389cad5edab6"}, + {file = "watchfiles-0.21.0-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:4ea10a29aa5de67de02256a28d1bf53d21322295cb00bd2d57fcd19b850ebd99"}, + {file = "watchfiles-0.21.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:40bca549fdc929b470dd1dbfcb47b3295cb46a6d2c90e50588b0a1b3bd98f429"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9b37a7ba223b2f26122c148bb8d09a9ff312afca998c48c725ff5a0a632145f7"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec8c8900dc5c83650a63dd48c4d1d245343f904c4b64b48798c67a3767d7e165"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8ad3fe0a3567c2f0f629d800409cd528cb6251da12e81a1f765e5c5345fd0137"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d353c4cfda586db2a176ce42c88f2fc31ec25e50212650c89fdd0f560ee507b"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:83a696da8922314ff2aec02987eefb03784f473281d740bf9170181829133765"}, + {file = "watchfiles-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a03651352fc20975ee2a707cd2d74a386cd303cc688f407296064ad1e6d1562"}, + {file = "watchfiles-0.21.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3ad692bc7792be8c32918c699638b660c0de078a6cbe464c46e1340dadb94c19"}, + {file = "watchfiles-0.21.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06247538e8253975bdb328e7683f8515ff5ff041f43be6c40bff62d989b7d0b0"}, + {file = "watchfiles-0.21.0-cp38-none-win32.whl", hash = "sha256:9a0aa47f94ea9a0b39dd30850b0adf2e1cd32a8b4f9c7aa443d852aacf9ca214"}, + {file = "watchfiles-0.21.0-cp38-none-win_amd64.whl", hash = "sha256:8d5f400326840934e3507701f9f7269247f7c026d1b6cfd49477d2be0933cfca"}, + {file = "watchfiles-0.21.0-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:7f762a1a85a12cc3484f77eee7be87b10f8c50b0b787bb02f4e357403cad0c0e"}, + {file = "watchfiles-0.21.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6e9be3ef84e2bb9710f3f777accce25556f4a71e15d2b73223788d528fcc2052"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:4c48a10d17571d1275701e14a601e36959ffada3add8cdbc9e5061a6e3579a5d"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c889025f59884423428c261f212e04d438de865beda0b1e1babab85ef4c0f01"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:66fac0c238ab9a2e72d026b5fb91cb902c146202bbd29a9a1a44e8db7b710b6f"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b4a21f71885aa2744719459951819e7bf5a906a6448a6b2bbce8e9cc9f2c8128"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c9198c989f47898b2c22201756f73249de3748e0fc9de44adaf54a8b259cc0c"}, + {file = "watchfiles-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8f57c4461cd24fda22493109c45b3980863c58a25b8bec885ca8bea6b8d4b28"}, + {file = "watchfiles-0.21.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:853853cbf7bf9408b404754b92512ebe3e3a83587503d766d23e6bf83d092ee6"}, + {file = "watchfiles-0.21.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d5b1dc0e708fad9f92c296ab2f948af403bf201db8fb2eb4c8179db143732e49"}, + {file = "watchfiles-0.21.0-cp39-none-win32.whl", hash = "sha256:59137c0c6826bd56c710d1d2bda81553b5e6b7c84d5a676747d80caf0409ad94"}, + {file = "watchfiles-0.21.0-cp39-none-win_amd64.whl", hash = "sha256:6cb8fdc044909e2078c248986f2fc76f911f72b51ea4a4fbbf472e01d14faa58"}, + {file = "watchfiles-0.21.0-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:ab03a90b305d2588e8352168e8c5a1520b721d2d367f31e9332c4235b30b8994"}, + {file = "watchfiles-0.21.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:927c589500f9f41e370b0125c12ac9e7d3a2fd166b89e9ee2828b3dda20bfe6f"}, + {file = "watchfiles-0.21.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1bd467213195e76f838caf2c28cd65e58302d0254e636e7c0fca81efa4a2e62c"}, + {file = "watchfiles-0.21.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02b73130687bc3f6bb79d8a170959042eb56eb3a42df3671c79b428cd73f17cc"}, + {file = "watchfiles-0.21.0-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:08dca260e85ffae975448e344834d765983237ad6dc308231aa16e7933db763e"}, + {file = "watchfiles-0.21.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:3ccceb50c611c433145502735e0370877cced72a6c70fd2410238bcbc7fe51d8"}, + {file = "watchfiles-0.21.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57d430f5fb63fea141ab71ca9c064e80de3a20b427ca2febcbfcef70ff0ce895"}, + {file = "watchfiles-0.21.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dd5fad9b9c0dd89904bbdea978ce89a2b692a7ee8a0ce19b940e538c88a809c"}, + {file = "watchfiles-0.21.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:be6dd5d52b73018b21adc1c5d28ac0c68184a64769052dfeb0c5d9998e7f56a2"}, + {file = "watchfiles-0.21.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:b3cab0e06143768499384a8a5efb9c4dc53e19382952859e4802f294214f36ec"}, + {file = "watchfiles-0.21.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c6ed10c2497e5fedadf61e465b3ca12a19f96004c15dcffe4bd442ebadc2d85"}, + {file = "watchfiles-0.21.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43babacef21c519bc6631c5fce2a61eccdfc011b4bcb9047255e9620732c8097"}, + {file = "watchfiles-0.21.0.tar.gz", hash = "sha256:c76c635fabf542bb78524905718c39f736a98e5ab25b23ec6d4abede1a85a6a3"}, +] + +[package.dependencies] +anyio = ">=3.0.0" + [[package]] name = "webencodings" version = "0.5.1" @@ -1674,4 +2275,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "3431ad81cc2788032dfa6b3b7b12d705da384ecc9c592c7663da3d36d885e021" +content-hash = "9e4bf988888fe639f1c057d6b2efe24337352db3638f4c18e24d745e095be202" diff --git a/openbb_platform/core/pyproject.toml b/openbb_platform/core/pyproject.toml index 4832836ca77c..800e60ef4945 100644 --- a/openbb_platform/core/pyproject.toml +++ b/openbb_platform/core/pyproject.toml @@ -12,7 +12,7 @@ uvicorn = "^0.24" websockets = "^12.0" pandas = ">=1.5.3" html5lib = "^1.1" -fastapi = "^0.104.1" +fastapi = "^0.111.0" uuid7 = "^0.1.0" posthog = "^3.3.1" python-multipart = "^0.0.7" From c61d10d6e3656c8376ff7d7ba78c4c89428b89ab Mon Sep 17 00:00:00 2001 From: Theodore Aptekarev Date: Tue, 14 May 2024 20:24:12 +0200 Subject: [PATCH 43/44] Update the license of the code in this repo to AGPL (#6415) * Change license to AGPL * Add licensing FAQ to the platform docs --- LICENSE | 686 +++++++++++++++++- README.md | 4 +- .../platform/licensing/_category_.json | 4 + website/content/platform/licensing/index.mdx | 103 +++ 4 files changed, 773 insertions(+), 24 deletions(-) create mode 100644 website/content/platform/licensing/_category_.json create mode 100644 website/content/platform/licensing/index.mdx diff --git a/LICENSE b/LICENSE index 793f55bb6076..174da33d38f6 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,665 @@ -MIT License - -Copyright (c) 2021-2023 OpenBB Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +Copyright (c) 2021-2024 OpenBB Inc. + +All files in this repository are licensed under the GNU Affero General Public License v3.0. + + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + + Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + +1. Definitions. + +"This License" refers to version 3 of the GNU Affero General Public License. + +"Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +"The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + +To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + +A "covered work" means either the unmodified Program or a work based +on the Program. + +To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +1. Source Code. + +The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + +A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +2. Basic Permissions. + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +3. Protecting Users' Legal Rights From Anti-Circumvention Law. + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +4. Conveying Verbatim Copies. + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +5. Conveying Modified Source Versions. + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +6. Conveying Non-Source Forms. + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +"Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +7. Additional Terms. + +"Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + +All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +8. Termination. + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +9. Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +10. Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +11. Patents. + +A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + +A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +12. No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +13. Remote Network Interaction; Use with the GNU General Public License. + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +14. Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +15. Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +17. Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/README.md b/README.md index 0e816f4038ca..58f7eb3773f8 100644 --- a/README.md +++ b/README.md @@ -91,11 +91,9 @@ We are most active on [our Discord](https://openbb.co/discord), but feel free to ## 3. License -Distributed under the MIT License. See +Distributed under the AGPLv3 License. See [LICENSE](https://github.com/OpenBB-finance/OpenBBTerminal/blob/main/LICENSE) for more information. - - ## 4. Disclaimer Trading in financial instruments involves high risks including the risk of losing some, or all, of your investment diff --git a/website/content/platform/licensing/_category_.json b/website/content/platform/licensing/_category_.json new file mode 100644 index 000000000000..bdef9d44818e --- /dev/null +++ b/website/content/platform/licensing/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Licensing", + "position": 9 +} diff --git a/website/content/platform/licensing/index.mdx b/website/content/platform/licensing/index.mdx new file mode 100644 index 000000000000..7a9c5792369e --- /dev/null +++ b/website/content/platform/licensing/index.mdx @@ -0,0 +1,103 @@ +--- +title: OpenBB Platform Licensing FAQ +--- + +import HeadTitle from "@site/src/components/General/HeadTitle.tsx"; + + + +As we adopt the Affero General Public License (AGPL) for our OpenBB Platform, we understand you may have questions about how this change affects your use of the platform. Below are some frequently asked questions to help clarify the implications of our new licensing model. + +## General Questions + +
    +Q: What has changed with the OpenBB Platform license? + +A: We have transitioned from the MIT license to the Affero General Public License (AGPL) with an option for a commercial license. This change aligns with our commitment to keeping OpenBB Platform open and free while also providing options for commercial use. + +
    + +
    +Q: Why did OpenBB choose AGPL? + +A: AGPL helps ensure that improvements to the OpenBB Platform remain freely available. This license is ideal for protecting the community's contributions while allowing the platform to evolve sustainably. + +
    + +
    +Q: What does the change to AGPL mean for general users of OpenBB? + +A: For most users, there will be no impact. You can continue to use OpenBB Platform for research, development, and in your applications under the same conditions as before, provided you comply with the AGPL if you distribute the software or run it on a network server. + +
    + +## Specific Use Cases + +
    +Q: I'm using OpenBB Platform for research at work. Do I need a commercial license now? + +A: No, if you are using OpenBB Platform in its unmodified form for research or internal business purposes and do not redistribute it or use it to provide a network-based service, you do not need a commercial license. + +
    + +
    +Q: I am selling educational content and use OpenBB Platform in my course notebooks. Do I need a commercial license? Do I need to make my course content public? + +A: No, you do not need a commercial license simply for using OpenBB Platform in educational content, nor do you need to make your course content public. If you are using OpenBB Platform to fetch data or perform analysis in your teaching materials, this is considered normal use of the platform. Your educational content is a separate work and does not fall under the AGPL's requirements for derivative works. + +
    + +
    +Q: I want to integrate a proprietary dataset for internal use through OpenBB Platform. What does this mean for me? + +A: You can freely integrate proprietary datasets without violating the AGPL, provided that any such integration uses standard interfaces of OpenBB Platform and does not modify the core AGPL-licensed code. + +
    + +
    +Q: I run a business that integrates proprietary datasets through OpenBB Platform for internal use. What does the license change mean for us? + +A: If you are integrating proprietary datasets and creating extensions that do not modify the OpenBB Platform code, these extensions are considered separate works. You do not need to disclose these proprietary integrations under the AGPL, provided these do not form part of the OpenBB Platform distributed to others or used to provide a network-based service. + +
    + +## Modifications and Contributions + +
    +Q: If I modify the OpenBB Platform for personal or internal business use, do I need to disclose my modifications? + +A: If you modify the OpenBB Platform and do not distribute your modified version or use it to provide a service over a network, you do not need to disclose your modifications. However, if you distribute the modified platform or run it as a service, you must share your modifications under the AGPL. + +
    + +
    +Q: We want to contribute to the OpenBB project. How does the licensing affect our contributions? + +A: This doesn’t change. Contributions to the OpenBB project are very welcome under our existing Contributor License Agreement (CLA). This means any contributions you make will also be licensed under the AGPL, ensuring they remain free and open. + +
    + +## Commercial Licensing Options + +
    +Q: What are the benefits of obtaining a commercial license? + +A: A commercial license is suitable for companies that wish to use OpenBB Platform in a proprietary product or service, or who do not wish to disclose their modifications to the platform. It offers more flexibility for commercial use while protecting your proprietary developments. + +
    + +
    +Q: How can I obtain a commercial license? + +A: Please contact us directly at [licensing@openbb.co](mailto:licensing@openbb.co) to discuss commercial licensing options. We are here to help you find the best licensing solution for your specific needs. + +
    + +## Conclusion + +
    +Q: Where can I get more information or assistance regarding licensing? + +A: For more detailed inquiries or specific scenarios not covered in this FAQ, please reach out to us at [licensing@openbb.co](mailto:licensing@openbb.co). We are here to help you navigate the licensing requirements to ensure you meet your needs. + +
    From 74652ece6ec30e5ffa4dbdcd41536f3e943f617c Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Wed, 15 May 2024 02:19:37 -0700 Subject: [PATCH 44/44] missed unit_measurements (#6416) --- .../provider/standard_models/etf_equity_exposure.py | 2 +- .../openbb_core/provider/standard_models/eu_yield_curve.py | 2 +- .../finviz/openbb_finviz/models/price_performance.py | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/openbb_platform/core/openbb_core/provider/standard_models/etf_equity_exposure.py b/openbb_platform/core/openbb_core/provider/standard_models/etf_equity_exposure.py index eb739ea1122e..b2ceb5f02ea9 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/etf_equity_exposure.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/etf_equity_exposure.py @@ -35,7 +35,7 @@ class EtfEquityExposureData(Data): weight: Optional[float] = Field( default=None, description="The weight of the equity in the ETF, as a normalized percent.", - json_schema_extra={"units_measurement": "percent", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) market_value: Optional[Union[int, float]] = Field( default=None, diff --git a/openbb_platform/core/openbb_core/provider/standard_models/eu_yield_curve.py b/openbb_platform/core/openbb_core/provider/standard_models/eu_yield_curve.py index 81d01c278b80..eaf9efd68779 100644 --- a/openbb_platform/core/openbb_core/provider/standard_models/eu_yield_curve.py +++ b/openbb_platform/core/openbb_core/provider/standard_models/eu_yield_curve.py @@ -25,5 +25,5 @@ class EUYieldCurveData(Data): rate: Optional[float] = Field( description="Yield curve rate, as a normalized percent.", default=None, - json_schema_extra={"unit_measurement": "percent.", "frontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) diff --git a/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py b/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py index 8a9cea94b0c3..17c4f51c0d70 100644 --- a/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py +++ b/openbb_platform/providers/finviz/openbb_finviz/models/price_performance.py @@ -48,12 +48,12 @@ class FinvizPricePerformanceData(RecentPerformanceData): volatility_week: Optional[float] = Field( default=None, description="One-week realized volatility, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "fontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) volatility_month: Optional[float] = Field( default=None, description="One-month realized volatility, as a normalized percent.", - json_schema_extra={"unit_measurement": "percent", "fontend_multiply": 100}, + json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100}, ) price: Optional[float] = Field( default=None,