diff --git a/docs/learn/combinatorial-tokens.md b/docs/learn/combinatorial-tokens.md new file mode 100644 index 0000000..6882ac7 --- /dev/null +++ b/docs/learn/combinatorial-tokens.md @@ -0,0 +1,161 @@ +# Combinatorial Betting + +Zeitgeist's combinatorial tokens allow users to combine outcome tokens of +several markets and trade these combined tokens in a single liquidity pool. + +Much of Zeitgeist's implementation of combinatorial tokens is based on pioneer +work done by Gnosis +[here (documentation)](https://docs.gnosis.io/conditionaltokens/) and +[here (implementation)](https://github.com/gnosis/conditional-tokens-contracts). + +## Collection and Positions + +Given a market with outcomes `A`, `B` and `C`, we can form _collections_ of +these outcomes. A collection is notated as, for example, `A|B`, and specifies a +bet that `A` _or_ `B` will happen. + +A _position_ is a collection combined with a collateral token. Currently, the +type of collateral is still tied to markets on Zeitgeist, but that might change +in the future and you'll be allowed to use any collateral with any market. + +Positions are used to actually make bets on more complicated claims about the +future. + +## Splits and Merges + +Suppose we have two markets with outcome tokens `A`, `B`, `C` and `X`, `Y`, `Z`, +resp. Their tokens can be combined to the following tokens: `A&X`, `A&Y`, `A&Z`, +`B&X`, `B&Y`, `B&Z`, `C&X`, `C&Y`, `C&Z`. A bet on the token `A&X` is a bet that +both `A` _and_ `X` occur (we'll interpret the meaning of `A&X` in case one or +both markets is a scalar market below in the section _Redeeming_). + +In fact, we can even go further and combine positions from both markets into +_split positions_ such as `(A|B)&Z`, which signifies that `A` or `B` and `Z` +will occur. + +Split collections are obtained by taking a position such as `(A|B)` of one of +the markets and specifying a partition of the outcomes of the other market, such +as `(X|Y)` and `Z` (the partition must cover all outcomes and there may be no +duplicates). Splitting `x` units of `(A|B)` using the partition `(X|Y), Z` +results in `x` units of the following tokens: `(A|B)&(X|Y)` and `(A|B)&Z`. + +Splitting can even involve more complicated tokens. For example, the position +`(A|B)&(X|Y)` may further be split into `(A|B)&(X|Y)&U` and `(A|B)&(X|Y)&V` if +there is a market with outcomes `U`, `V`. + +Merging is the opposite process. For example, `x` units of `(A|B)&(X|Y)` and +`(A|B)&Z` may be combined into `x` units of `(A|B)`. + +## Redeeming + +If a user owns a position involving multiple markets, such as `(A|B)&X` and only +one of the markets is resolved (say, the market with `A`, `B`, `C`), then they +may want to cash out the part of the position. This is where payout vectors come +in. + +The _payout vector_ of a resolved prediction market determines the value of each +outcome token of that market. For a market with outcome tokens +$x_1, \ldots, x_n$, the payout vector $(p_1, \ldots, p_n)$ specifies how much +collateral one unit of each outcome token redeems for. + +For example, if a categorical market with three outcomes resolves to the second +outcome, the payout vector is $(0, 1, 0)$. If a scalar market with range +$[1, 3]$ resolves to $2.5$, then the payout vector is $(.75, .25)$ assuming that +the first outcome is _Long_. + +The payout of a collection like `(A|B)` is the sum of the payouts of each +individual outcome token. Suppose that the payout vector for the market with +`A`, `B`, `C` is `(0, 1, 0)`, then `(A|B)` has a payout of `1`. + +Returning to the idea of redeeming tokens, `x` units of `(A|B)&X` can be +redeemed for `x` units of `X` since the payout of `(A|B)` is equal to `1`. To +take a more complex example, if we have a scalar market with tokens `L` and `S` +(long and short) and a payout vector of `(.6, .4)` and we want to redeem `x` +units of `L&(X|Y)`, then we receive `.6` times `x` units of `(X|Y)`. + +## Combinatorial Betting + +Buying individual outcomes of a combinatorial market allows the user to bet on +more specialized outcomes (A _and_ B will happen), but the true strength of +combinatorial markets lies in making bets on contingencies (if A occurs, then so +will B). + +The following example is taken from [H13]. Let $D$ denote the event that the +Democratic Party wins the 2016 U.S. Presidential election and let $H$ denote the +event that Hillary Clinton is nominated as the Dem's candidate. The pairs of +securities $(D, \neg D)$ (i.e. "Pays 1\$ if $D$" and "Pays 1\$ if not $D$") and +$(H, \neg H)$ are traded on separate markets, but can be combined into a single +market by using _splits_. + +If you know how buying complete sets works on Zeitgeist, you already know one +example of a split: The collateral token is split into a set of tokens which, +when the markets resolves, will have the same value as the collateral token. By +the same reasoning fashion, we can split non-collateral tokens like "Pays 1\$ if +$D$" into "Pays 1\$ if $D$ and $H$" and "Pays 1\$ if $D$ and not $H$". For the +sake of simplicity, we denote these tokens by $D$, $D \land H$ and +$D \land \bar H$, resp. By combining the two markets above, we create a new +market with four assets: $D \land H$, $D \land \bar H$, $\bar D \land H$ and +$\bar D \land \bar H$. + +Using splits, agents can now bet on correlations between the events $D$ and $H$. +For example, to bet that the Dems win if Hillary is nominated, the agent would +split their collateral into $x$ units of $H$ and $\bar H$, then split these +units into $x$ units of $H \land D$ and $H \land \bar D$, then sell their units +of $H \land \bar D$ to acquire more $H \land D$. There are three possible +outcomes: + +- Hillary is nominated and wins the election. Each unit of $H \land D$ pays 1\$. + The agent makes a profit as they own more than $x$ units. +- Hillary is nominated and loses the election. All assets that the agent holds + are worthless. +- Hillary is not nominated. Each unit of $\bar H$ pays 1\$. The agent receives + their buy-in of $x$ back (the bet is essentially declared void). + +The spot price of this swap is equal to the +[conditional probability](https://en.wikipedia.org/wiki/Conditional_probability) +$P(D|H)$ predicted by the market. We denote the trade described above by +$H \Rightarrow D$. + +To prevent arbitrage opportunities, buying such a composite asset must not move +the price of uninvolved outcomes. For example, betting that $D$ holds if $H$ +holds should leave the price of $\bar H$ unchanged. After all, the agent is +betting on what happens contingent on $H$; they're not making any claims as to +how likely $H$ is to occur. This is summarized in the _modularity property_ +defined by Hanson in [H03a]: + +> Consider the case of an agent who bets with a market scoring rule, and bets +> only on the event $A$ given the event $B$. That is, this agent gains assets of +> the form “Pays \$1 if $A$ and $B$ hold”, in trade for assets of the form “Pays +> \$1 if $B$ holds and $A$ does not. [...] In general, depending on the +> particular market scoring rule, such a bet might change any probability +> estimate $p_i$, and thus change any event probability +> $p(C) = \sum_{i \in C} p_i$. It seems preferable, however, for this bet to +> change as little as possible besides $p(A|B)$ (and of course +> $p(\bar A|B) = 1 − p(A|B)$). + +(The market maker implemented in zrml-neo-swaps has that property.) + +A fundamental idea is that trades made on prediction markets are not so much +absolute bets ("I bet $10 that Hillary will win at 1:1 odds"), but rather that +trades are made to "correct" the forecast of the market by changing the prices +of the outcomes. The agent executing the trade pays a price to do so, but is +rewarded if the prediction is closer to the truth than the current one. + +One could say that the agent buying $H \Rightarrow D$ claims that $H \land D$ is +undervalued and $H \land \bar D$ is overvalued, and that $\bar H \land D$ and +$\bar H \land \bar D$ are correctly priced or the agent doesn't know how to +profitably change their price. + +Viewed from this angle, a _combinatorial bet_ divides the assets in a +combinatorial pool into three categories: _buy_ (the assets the agent thinks are +undervalued), _sell_ (the assets the agent thinks are overvalued) and _keep_ +(the assets whose prices the agent can't or won't change). + +## Bibliography + +- [H03a] R. Hanson, "Logarithmic Market Scoring Rules for Modular Combinatorial + Information Aggregation," The Journal of Prediction Markets, vol. 1, no. + 1, 2003. [Online]. Available: + [https://doi.org/10.5750/jpm.v1i1.417](https://doi.org/10.5750/jpm.v1i1.417) +- [H13] R. Hanson, "Shall We Vote on Values, But Bet on Beliefs?," The Journal + of Political Philosophy, vol. 21, no. 2, pp. 151-178, 2013. diff --git a/docs/learn/using-zeitgeist-markets.md b/docs/learn/using-zeitgeist-markets.md index 98d7933..f7ea5a7 100644 --- a/docs/learn/using-zeitgeist-markets.md +++ b/docs/learn/using-zeitgeist-markets.md @@ -290,52 +290,15 @@ as he owns no more "Yes". ### The Liquidity Pool -Zeitgeist supports a constant mean market maker, also referred to as constant -product market maker or CPMM on our platform, which is based on the -[Balancer AMM](https://balancer.fi/whitepaper.pdf), a variation on the basic -$x \cdot y = \mathrm{const}$ formula which allows different assets to have -different _weights_, which define their impact on price. - -This AMM's liquidity pool contains balances of the base asset (e.g. ZTG) and of -all outcome tokens of the market. Users can trade their tokens with tokens -stored in the pool: They can buy outcome tokens from the pool with collateral -which is then added to the pool, or sell outcome tokens to the pool for some of -the pool's collateral. +Zeitgeist supports a constant function market maker called DLMSR, which is based +on Robin Hanson's DLMSR, a variation on the basic $x \cdot y = \mathrm{const}$ +formula. By default, a new market has no liquidity pool. Instead, the pool must either be deployed by the market creator, or by some external liquidity provider. After the pool is created, others may _join_ the liquidity pool by providing -additional liquidity. When deploying liquidity into a pool, a liquidity provider -will usually provide the same amount of complete sets of outcome tokens as -collateral ($x$ of each outcome token and $x$ ZTG). The current minimum for $x$ -is $.1$ units of collateral, making a total value of $.2$ units of collateral. - -For example, lets say the JWST market has no liquidity pool yet and Alice wishes -to deploy a pool. First she mints 100 complete sets of outcome tokens, so she -pays 100 ZTG into the prize pool of the market and receives 100 "Yes" and 100 -"No". Then she transfers these outcome tokens plus 100 ZTG into the pool. The -whole endeavor costs her 200 ZTG plus transaction costs and earns her 100 -liquidity shares. - -Suppose now that the market ends and the balances of the pool are the following: -63 "Yes", 89 "No", and 120 ZTG. The balance of ZTG has increased from trading -fees. After market close, Alice withdraws her funds: The outcome tokens and 120 -ZTG. If the JWST did not launch on December 18, then she can redeem the 89 "No" -for 89 ZTG from the prize pool. This means that she's made a gain of 9 ZTG for -supplying liquidity to the pool. If, on the other hand, the JWST does launch -December 18, Alice is left holding 120 ZTG and 63 "Yes" (redeemable for 63 ZTG). -As a result, Alice will incur a net loss of 17 ZTG, while many traders might -realize a profit. - -For example, if the pool contains 100 ZTG and 100 "Yes" and Alice buys 3 "Yes" -at 0.5 ZTG, then Alice transfers 1.5 ZTG into the pool and receives 3 "Yes" from -the pool, leaving the pool with 101.5 ZTG and 97 "Yes" (ignoring transaction -cost, trading fees and slippage). - -Let's pretend that the automated market maker has now adjusted the price of -"Yes" to 0.6 ZTG and Bob wants to sell 5 "Yes". He would receive 3 ZTG from the -pool and add 5 "Yes", leaving the pool at 98.5 ZTG and 102 "Yes" (ignoring -transaction cost, trading fees and slippage). +additional liquidity. For details on the function of the liquidity pool, see +https://github.com/zeitgeistpm/zeitgeist/blob/main/zrml/neo-swaps/README.md. Note that this means that trading can only happen when the liquidity pool is sufficiently deep. If the pool is too shallow, some trades may be impossible diff --git a/docusaurus.config.js b/docusaurus.config.js index 04f4971..bdff4f1 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -16,17 +16,6 @@ const config = { organizationName: "zeitgeistpm", projectName: "documentation", // Usually your repo name. - // support multi-languages - i18n: { - defaultLocale: "en", - locales: ["en", "zh-CN", "ru"], - localeConfigs: { - en: { - htmlLang: "en-GB", - }, - }, - }, - themeConfig: /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ ({ diff --git a/sidebars.js b/sidebars.js index 0fea758..404db21 100644 --- a/sidebars.js +++ b/sidebars.js @@ -29,6 +29,7 @@ const sidebars = { "learn/governance", "learn/court", "learn/order-book", + "learn/combinatorial-tokens", "learn/futarchy", "learn/comparisons", { diff --git a/yarn.lock b/yarn.lock index 4f33369..c592abf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -48,15 +48,15 @@ dependencies: "@algolia/cache-common" "4.24.0" -"@algolia/client-abtesting@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-abtesting/-/client-abtesting-5.14.2.tgz#bc1ceded86279e53b1f5f34c35d043974e76affe" - integrity sha512-7fq1tWIy1aNJEaNHxWy3EwDkuo4k22+NBnxq9QlYVSLLXtr6HqmAm6bQgNNzGT3vm21iKqWO9efk+HIhEM1SzQ== +"@algolia/client-abtesting@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-abtesting/-/client-abtesting-5.15.0.tgz#6414895e2246dc7b7facd97bd98c3abe13cabe59" + integrity sha512-FaEM40iuiv1mAipYyiptP4EyxkJ8qHfowCpEeusdHUC4C7spATJYArD2rX3AxkVeREkDIgYEOuXcwKUbDCr7Nw== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/client-account@4.24.0": version "4.24.0" @@ -77,15 +77,15 @@ "@algolia/requester-common" "4.24.0" "@algolia/transporter" "4.24.0" -"@algolia/client-analytics@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-5.14.2.tgz#6265c6c9904ccfeac7267de8237abe2ec1ee9fbf" - integrity sha512-5Nm5cOOyAGcY+hKNJVmR2jgoGn1nvoANS8W5EfB8yAaUqUxL3lFNUHSkFafAMTCOcVKNDkZQYjUDbOOfdYJLqw== +"@algolia/client-analytics@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-5.15.0.tgz#7ca1043cba7ac225d30e8bb52579504946b95f58" + integrity sha512-lho0gTFsQDIdCwyUKTtMuf9nCLwq9jOGlLGIeQGKDxXF7HbiAysFIu5QW/iQr1LzMgDyM9NH7K98KY+BiIFriQ== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/client-common@4.24.0": version "4.24.0" @@ -95,20 +95,20 @@ "@algolia/requester-common" "4.24.0" "@algolia/transporter" "4.24.0" -"@algolia/client-common@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-5.14.2.tgz#659e5a78b3563b628a982f3d3054c424d8a3d2c9" - integrity sha512-BW1Qzhh9tMKEsWSQQsiOEcHAd6g7zxq9RpPVmyxbDO/O4eA4vyN+Qz5Jzo686kuYdIQKqIPCEtob/JM89tk57g== +"@algolia/client-common@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-5.15.0.tgz#cd47ae07a3afc7065438a2dab29f8434f848928e" + integrity sha512-IofrVh213VLsDkPoSKMeM9Dshrv28jhDlBDLRcVJQvlL8pzue7PEB1EZ4UoJFYS3NSn7JOcJ/V+olRQzXlJj1w== -"@algolia/client-insights@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-insights/-/client-insights-5.14.2.tgz#6a3b231ac18b1e105a5af50b2fd1c59e92859c64" - integrity sha512-17zg6pqifKORvvrMIqW6HhwUry9RKRXLgADrgFjZ6PZvGB4oVs12dwRG2/HMrIlpxd9cjeQfdlEgHj6lbAf6QA== +"@algolia/client-insights@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-insights/-/client-insights-5.15.0.tgz#f3bead0edd10e69365895da4a96044064b504f4d" + integrity sha512-bDDEQGfFidDi0UQUCbxXOCdphbVAgbVmxvaV75cypBTQkJ+ABx/Npw7LkFGw1FsoVrttlrrQbwjvUB6mLVKs/w== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/client-personalization@4.24.0": version "4.24.0" @@ -119,25 +119,25 @@ "@algolia/requester-common" "4.24.0" "@algolia/transporter" "4.24.0" -"@algolia/client-personalization@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-5.14.2.tgz#810eb67875ab1f776ffb73d0165f7f33011d1ce8" - integrity sha512-5IYt8vbmTA52xyuaZKFwiRoDPeh7hiOC9aBZqqp9fVs6BU01djI/T8pGJXawvwczltCPYzNsdbllV3rqiDbxmQ== +"@algolia/client-personalization@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-5.15.0.tgz#e962793ebf737a5ffa4867d2dfdfe17924be3833" + integrity sha512-LfaZqLUWxdYFq44QrasCDED5bSYOswpQjSiIL7Q5fYlefAAUO95PzBPKCfUhSwhb4rKxigHfDkd81AvEicIEoA== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" -"@algolia/client-query-suggestions@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-query-suggestions/-/client-query-suggestions-5.14.2.tgz#669bdd977f74e0c28e81388d2d4a2209f5d93c72" - integrity sha512-gvCX/cczU76Bu1sGcxxTdoIwxe+FnuC1IlW9SF/gzxd3ZzsgzBpzD2puIJqt9fHQsjLxVGkJqKev2FtExnJYZg== +"@algolia/client-query-suggestions@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-query-suggestions/-/client-query-suggestions-5.15.0.tgz#d9a2d0d0660241bdae5fc36a6f1fcf339abbafeb" + integrity sha512-wu8GVluiZ5+il8WIRsGKu8VxMK9dAlr225h878GGtpTL6VBvwyJvAyLdZsfFIpY0iN++jiNb31q2C1PlPL+n/A== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/client-search@4.24.0": version "4.24.0" @@ -148,30 +148,30 @@ "@algolia/requester-common" "4.24.0" "@algolia/transporter" "4.24.0" -"@algolia/client-search@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-5.14.2.tgz#7e7b7eaa66cea90ba645cb8739e2739d38ec733a" - integrity sha512-0imdBZDjqxrshw0+eyJUgnkRAbS2W93UQ3BVj8VjN4xQylIMf0fWs72W7MZFdHlH78JJYydevgzqvGMcV0Z1CA== +"@algolia/client-search@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-5.15.0.tgz#8645f5bc87a959b8008e021d8b31d55a47920b94" + integrity sha512-Z32gEMrRRpEta5UqVQA612sLdoqY3AovvUPClDfMxYrbdDAebmGDVPtSogUba1FZ4pP5dx20D3OV3reogLKsRA== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/events@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@algolia/events/-/events-4.0.1.tgz#fd39e7477e7bc703d7f893b556f676c032af3950" integrity sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ== -"@algolia/ingestion@1.14.2": - version "1.14.2" - resolved "https://registry.yarnpkg.com/@algolia/ingestion/-/ingestion-1.14.2.tgz#aea1f01c704ef02a8af53973c093bdbd9ebc1959" - integrity sha512-/p4rBNkW0fgCpCwrwre+jHfzlFQsLemgaAQqyui8NPxw95Wgf3p+DKxYzcmh8dygT7ub7FwztTW+uURLX1uqIQ== +"@algolia/ingestion@1.15.0": + version "1.15.0" + resolved "https://registry.yarnpkg.com/@algolia/ingestion/-/ingestion-1.15.0.tgz#a3f3ec2139042f8597c2a975430a6f77cd764db3" + integrity sha512-MkqkAxBQxtQ5if/EX2IPqFA7LothghVyvPoRNA/meS2AW2qkHwcxjuiBxv4H6mnAVEPfJlhu9rkdVz9LgCBgJg== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/logger-common@4.24.0": version "4.24.0" @@ -185,15 +185,15 @@ dependencies: "@algolia/logger-common" "4.24.0" -"@algolia/monitoring@1.14.2": - version "1.14.2" - resolved "https://registry.yarnpkg.com/@algolia/monitoring/-/monitoring-1.14.2.tgz#a8fb4dc135ba2ba6885a512257445e81a607d4c8" - integrity sha512-81R57Y/mS0uNhWpu6cNEfkbkADLW4bP0BNjuPpxAypobv7WzYycUnbMvv1YkN6OsociB4+3M7HfsVzj4Nc09vA== +"@algolia/monitoring@1.15.0": + version "1.15.0" + resolved "https://registry.yarnpkg.com/@algolia/monitoring/-/monitoring-1.15.0.tgz#1eb58722ec9ea6e5de3621150f97a43571bd312e" + integrity sha512-QPrFnnGLMMdRa8t/4bs7XilPYnoUXDY8PMQJ1sf9ZFwhUysYYhQNX34/enoO0LBjpoOY6rLpha39YQEFbzgKyQ== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/recommend@4.24.0": version "4.24.0" @@ -212,15 +212,15 @@ "@algolia/requester-node-http" "4.24.0" "@algolia/transporter" "4.24.0" -"@algolia/recommend@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-5.14.2.tgz#e667cc48d30e153c263ff99f6a525e3e7f5cff5f" - integrity sha512-OwELnAZxCUyfjYjqsrFmC7Vfa12kqwbDdLUV0oi4j+4pxDsfPgkiZ6iCH2uPw6X8VK88Hl3InPt+RPaZvcrCWg== +"@algolia/recommend@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-5.15.0.tgz#8f3359ee7e855849ac3872f67c0672f6835c8f79" + integrity sha512-5eupMwSqMLDObgSMF0XG958zR6GJP3f7jHDQ3/WlzCM9/YIJiWIUoJFGsko9GYsA5xbLDHE/PhWtq4chcCdaGQ== dependencies: - "@algolia/client-common" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + "@algolia/client-common" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" "@algolia/requester-browser-xhr@4.24.0": version "4.24.0" @@ -229,24 +229,24 @@ dependencies: "@algolia/requester-common" "4.24.0" -"@algolia/requester-browser-xhr@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.14.2.tgz#aa2ba4aaa2d8e83e8a546f4a1363339f932c827d" - integrity sha512-irUvkK+TGBhyivtNCIIbVgNUgbUoHOSk8m/kFX4ddto/PUPmLFRRNNnMHtJ1+OzrJ/uD3Am4FUK2Yt+xgQr05w== +"@algolia/requester-browser-xhr@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.15.0.tgz#5ffdccdf5cd7814ed3486bed418edb6db25c32a2" + integrity sha512-Po/GNib6QKruC3XE+WKP1HwVSfCDaZcXu48kD+gwmtDlqHWKc7Bq9lrS0sNZ456rfCKhXksOmMfUs4wRM/Y96w== dependencies: - "@algolia/client-common" "5.14.2" + "@algolia/client-common" "5.15.0" "@algolia/requester-common@4.24.0": version "4.24.0" resolved "https://registry.yarnpkg.com/@algolia/requester-common/-/requester-common-4.24.0.tgz#1c60c198031f48fcdb9e34c4057a3ea987b9a436" integrity sha512-k3CXJ2OVnvgE3HMwcojpvY6d9kgKMPRxs/kVohrwF5WMr2fnqojnycZkxPoEg+bXm8fi5BBfFmOqgYztRtHsQA== -"@algolia/requester-fetch@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/requester-fetch/-/requester-fetch-5.14.2.tgz#d0bcfce9f48efc0bedd40e5579832edbdee5d00a" - integrity sha512-UNBg5mM4MIYdxPuVjyDL22BC6P87g7WuM91Z1Ky0J19aEGvCSF+oR+9autthROFXdRnAa1rACOjuqn95iBbKpw== +"@algolia/requester-fetch@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/requester-fetch/-/requester-fetch-5.15.0.tgz#2ce94d4855090fac192b208d95eeea22e1ca4489" + integrity sha512-rOZ+c0P7ajmccAvpeeNrUmEKoliYFL8aOR5qGW5pFq3oj3Iept7Y5mEtEsOBYsRt6qLnaXn4zUKf+N8nvJpcIw== dependencies: - "@algolia/client-common" "5.14.2" + "@algolia/client-common" "5.15.0" "@algolia/requester-node-http@4.24.0": version "4.24.0" @@ -255,12 +255,12 @@ dependencies: "@algolia/requester-common" "4.24.0" -"@algolia/requester-node-http@5.14.2": - version "5.14.2" - resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-5.14.2.tgz#186631bcb1047c6a352036fb8dcc713c2a2777a7" - integrity sha512-CTFA03YiLcnpP+JoLRqjHt5pqDHuKWJpLsIBY/60Gmw8pjALZ3TwvbAquRX4Vy+yrin178NxMuU+ilZ54f2IrQ== +"@algolia/requester-node-http@5.15.0": + version "5.15.0" + resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-5.15.0.tgz#e2020afcdaea56dc204bc6c82daab41478b32d87" + integrity sha512-b1jTpbFf9LnQHEJP5ddDJKE2sAlhYd7EVSOWgzo/27n/SfCoHfqD0VWntnWYD83PnOKvfe8auZ2+xCb0TXotrQ== dependencies: - "@algolia/client-common" "5.14.2" + "@algolia/client-common" "5.15.0" "@algolia/transporter@4.24.0": version "4.24.0" @@ -1964,9 +1964,9 @@ varint "^6.0.0" "@multiformats/multiaddr@^12.0.0", "@multiformats/multiaddr@^12.1.3": - version "12.3.1" - resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-12.3.1.tgz#953ceb4ae3b39125b7b2c721230ea7b398cf49fe" - integrity sha512-yoGODQY4nIj41ENJClucS8FtBoe8w682bzbKldEQr9lSlfdHqAsRC+vpJAOBpiMwPps1tHua4kxrDmvprdhoDQ== + version "12.3.3" + resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-12.3.3.tgz#eddd0a61a542fc0120da7b5f6fc250177762e6d4" + integrity sha512-3POIUN7myk8JbO8oi/FEyZoLQW2XMhwM/uB7hG5Zl1PgdXJR8UTH9QdQEp1jM358kd3yn+vtS4fFJdqdRk+O7A== dependencies: "@chainsafe/is-ip" "^2.0.1" "@chainsafe/netmask" "^2.0.0" @@ -2834,9 +2834,9 @@ integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== "@types/express-serve-static-core@*", "@types/express-serve-static-core@^5.0.0": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz#3c9997ae9d00bc236e45c6374e84f2596458d9db" - integrity sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA== + version "5.0.2" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.2.tgz#812d2871e5eea17fb0bd5214dda7a7b748c0e12a" + integrity sha512-vluaspfvWEtE4vcSDlKRNer52DvOGrB2xv6diXy6UKyKW0lqZiWHGNApSyxOv+8DE5Z27IzVvE7hNkxg7EXIcg== dependencies: "@types/node" "*" "@types/qs" "*" @@ -2974,9 +2974,9 @@ "@types/node" "*" "@types/node@*", "@types/node@>=13.7.0": - version "22.9.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.9.0.tgz#b7f16e5c3384788542c72dc3d561a7ceae2c0365" - integrity sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ== + version "22.9.3" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.9.3.tgz#08f3d64b3bc6d74b162d36f60213e8a6704ef2b4" + integrity sha512-F3u1fs/fce3FFk+DAxbxc78DF8x0cY09RRL8GnXLmkJ1jvx3TtPdWoTT5/NiYfI5ASqXBmfqJi9dZ3gxMx4lzw== dependencies: undici-types "~6.19.8" @@ -2986,9 +2986,9 @@ integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== "@types/node@^18.0.0": - version "18.19.64" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.64.tgz#122897fb79f2a9ec9c979bded01c11461b2b1478" - integrity sha512-955mDqvO2vFf/oL7V3WiUtiz+BugyX8uVbaT2H8oj3+8dRyH2FLiNdowe7eNqRM7IOIZvzDH76EoAT+gwm6aIQ== + version "18.19.65" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.65.tgz#e6aaac55fab80c6a3ff61ab27bc25105a7bea479" + integrity sha512-Ay5BZuO1UkTmVHzZJNvZKw/E+iB3GQABb6kijEz89w2JrfhNA+M/ebp18pfz9Gqe9ywhMC8AA8yC01lZq48J+Q== dependencies: undici-types "~5.26.4" @@ -3444,23 +3444,23 @@ algoliasearch@^4.13.1: "@algolia/transporter" "4.24.0" algoliasearch@^5.12.0: - version "5.14.2" - resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-5.14.2.tgz#7cbad5a1fe1f94e4df6752f0c78748722d7c6fb9" - integrity sha512-aYjI4WLamMxbhdJ2QAA99VbDCJOGzMOdT2agh57bi40n86ufkhZSIAf6mkocr7NmtBLtwCnSHvD5NJ+Ky5elWw== - dependencies: - "@algolia/client-abtesting" "5.14.2" - "@algolia/client-analytics" "5.14.2" - "@algolia/client-common" "5.14.2" - "@algolia/client-insights" "5.14.2" - "@algolia/client-personalization" "5.14.2" - "@algolia/client-query-suggestions" "5.14.2" - "@algolia/client-search" "5.14.2" - "@algolia/ingestion" "1.14.2" - "@algolia/monitoring" "1.14.2" - "@algolia/recommend" "5.14.2" - "@algolia/requester-browser-xhr" "5.14.2" - "@algolia/requester-fetch" "5.14.2" - "@algolia/requester-node-http" "5.14.2" + version "5.15.0" + resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-5.15.0.tgz#09cef5a2555c4554b37a99f0488ea6ab2347e625" + integrity sha512-Yf3Swz1s63hjvBVZ/9f2P1Uu48GjmjCN+Esxb6MAONMGtZB1fRX8/S1AhUTtsuTlcGovbYLxpHgc7wEzstDZBw== + dependencies: + "@algolia/client-abtesting" "5.15.0" + "@algolia/client-analytics" "5.15.0" + "@algolia/client-common" "5.15.0" + "@algolia/client-insights" "5.15.0" + "@algolia/client-personalization" "5.15.0" + "@algolia/client-query-suggestions" "5.15.0" + "@algolia/client-search" "5.15.0" + "@algolia/ingestion" "1.15.0" + "@algolia/monitoring" "1.15.0" + "@algolia/recommend" "5.15.0" + "@algolia/requester-browser-xhr" "5.15.0" + "@algolia/requester-fetch" "5.15.0" + "@algolia/requester-node-http" "5.15.0" ansi-align@^3.0.0, ansi-align@^3.0.1: version "3.0.1" @@ -3773,9 +3773,9 @@ body-parser@1.20.3: unpipe "1.0.0" bonjour-service@^1.0.11: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.2.1.tgz#eb41b3085183df3321da1264719fbada12478d02" - integrity sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw== + version "1.3.0" + resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.3.0.tgz#80d867430b5a0da64e82a8047fc1e355bdb71722" + integrity sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA== dependencies: fast-deep-equal "^3.1.3" multicast-dns "^7.2.5" @@ -3955,9 +3955,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001646, caniuse-lite@^1.0.30001669: - version "1.0.30001680" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz#5380ede637a33b9f9f1fc6045ea99bd142f3da5e" - integrity sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA== + version "1.0.30001684" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001684.tgz#0eca437bab7d5f03452ff0ef9de8299be6b08e16" + integrity sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ== cborg@^4.0.0: version "4.2.6" @@ -4407,9 +4407,9 @@ cross-fetch@^3.1.5: node-fetch "^2.6.12" cross-spawn@^7.0.3: - version "7.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.5.tgz#910aac880ff5243da96b728bc6521a5f6c2f2f82" - integrity sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug== + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -4982,9 +4982,9 @@ electron-fetch@^1.7.2: encoding "^0.1.13" electron-to-chromium@^1.5.41: - version "1.5.62" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz#8289468414b0b0b3e9180ef619a763555debe612" - integrity sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg== + version "1.5.64" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.64.tgz#ac8c4c89075d35a1514b620f47dfe48a71ec3697" + integrity sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ== emoji-regex@^8.0.0: version "8.0.0" @@ -5068,7 +5068,7 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.17.2, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: +es-abstract@^1.17.2, es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2, es-abstract@^1.23.5: version "1.23.5" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.5.tgz#f4599a4946d57ed467515ed10e4f157289cd52fb" integrity sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ== @@ -6328,9 +6328,9 @@ immer@^9.0.7: integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA== immutable@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.0.2.tgz#bb8a987349a73efbe6b3b292a9cbaf1b530d296b" - integrity sha512-1NU7hWZDkV7hJ4PJ9dur9gTNQ4ePNPN4k9/0YhwjzykTi/+3Q5pF93YU5QoVj8BuOnhLgaY8gs0U2pj4kSYVcw== + version "5.0.3" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.0.3.tgz#aa037e2313ea7b5d400cd9298fa14e404c933db1" + integrity sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw== import-fresh@^3.1.0, import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.0" @@ -6632,6 +6632,13 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== +is-async-function@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646" + integrity sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA== + dependencies: + has-tostringtag "^1.0.0" + is-bigint@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" @@ -6685,7 +6692,7 @@ is-data-view@^1.0.1: dependencies: is-typed-array "^1.1.13" -is-date-object@^1.0.1: +is-date-object@^1.0.1, is-date-object@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== @@ -6717,11 +6724,25 @@ is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== +is-finalizationregistry@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.0.tgz#d74a7d0c5f3578e34a20729e69202e578d495dc2" + integrity sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA== + dependencies: + call-bind "^1.0.7" + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-generator-function@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== + dependencies: + has-tostringtag "^1.0.0" + is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -6742,6 +6763,11 @@ is-installed-globally@^0.4.0: global-dirs "^3.0.0" is-path-inside "^3.0.2" +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + is-negative-zero@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" @@ -6824,6 +6850,11 @@ is-root@^2.1.0: resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" @@ -6862,6 +6893,11 @@ is-typedarray@^1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -6869,6 +6905,14 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" +is-weakset@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.3.tgz#e801519df8c0c43e12ff2834eead84ec9e624007" + integrity sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ== + dependencies: + call-bind "^1.0.7" + get-intrinsic "^1.2.4" + is-whitespace-character@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" @@ -7769,9 +7813,9 @@ node-forge@^1: integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== node-gyp-build@^4.3.0: - version "4.8.3" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.3.tgz#9187216d24dbee29e44eb20d2ebf62a296bbea1a" - integrity sha512-EMS95CMJzdoSKoIiXo8pxKoL8DYxwIZXYlLmgPb8KUv794abpnLK6ynsCAWNliOjREKruYKdzbh76HHYUHX7nw== + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== node-releases@^2.0.18: version "2.0.18" @@ -9037,6 +9081,19 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" +reflect.getprototypeof@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.7.tgz#04311b33a1b713ca5eb7b5aed9950a86481858e5" + integrity sha512-bMvFGIUKlc/eSfXNX+aZ+EL95/EgZzuwA0OBPTbZZDEJw/0AkentjMuM1oiRfwHrshqk4RzdgiTg5CcDalXN5g== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + which-builtin-type "^1.1.4" + regenerate-unicode-properties@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0" @@ -9072,14 +9129,14 @@ regexp.prototype.flags@^1.5.3: set-function-name "^2.0.2" regexpu-core@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac" - integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw== + version "6.2.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.2.0.tgz#0e5190d79e542bf294955dccabae04d3c7d53826" + integrity sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA== dependencies: regenerate "^1.4.2" regenerate-unicode-properties "^10.2.0" regjsgen "^0.8.0" - regjsparser "^0.11.0" + regjsparser "^0.12.0" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.1.0" @@ -9102,10 +9159,10 @@ regjsgen@^0.8.0: resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== -regjsparser@^0.11.0: - version "0.11.2" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.2.tgz#7404ad42be00226d72bcf1f003f1f441861913d8" - integrity sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA== +regjsparser@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc" + integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ== dependencies: jsesc "~3.0.2" @@ -10175,9 +10232,9 @@ typed-array-byte-length@^1.0.1: is-typed-array "^1.1.13" typed-array-byte-offset@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" - integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.3.tgz#3fa9f22567700cc86aaf86a1e7176f74b59600f2" + integrity sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw== dependencies: available-typed-arrays "^1.0.7" call-bind "^1.0.7" @@ -10185,18 +10242,19 @@ typed-array-byte-offset@^1.0.2: gopd "^1.0.1" has-proto "^1.0.3" is-typed-array "^1.1.13" + reflect.getprototypeof "^1.0.6" typed-array-length@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" - integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== + version "1.0.7" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== dependencies: call-bind "^1.0.7" for-each "^0.3.3" gopd "^1.0.1" - has-proto "^1.0.3" is-typed-array "^1.1.13" possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" typedarray-to-buffer@^3.1.5: version "3.1.5" @@ -10814,6 +10872,35 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" +which-builtin-type@^1.1.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.0.tgz#58042ac9602d78a6d117c7e811349df1268ba63c" + integrity sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA== + dependencies: + call-bind "^1.0.7" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.0.5" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.1.4" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.0.2" + which-collection "^1.0.2" + which-typed-array "^1.1.15" + +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== + dependencies: + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + which-typed-array@^1.1.14, which-typed-array@^1.1.15: version "1.1.15" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d"