From 7147e1fd27113d71aeb2381aef130ebb761b15df Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Wed, 28 Feb 2024 23:11:17 -0600 Subject: [PATCH 01/29] Added Tokenomics draft section with utility, allocation, inflation and launch timelines --- pages/docs/_meta.json | 1 + pages/docs/tokenomics/_meta.json | 6 +++ pages/docs/tokenomics/allocation.mdx | 52 +++++++++++++++++++++++++ pages/docs/tokenomics/inflation.mdx | 42 ++++++++++++++++++++ pages/docs/tokenomics/launch.mdx | 21 ++++++++++ pages/docs/tokenomics/usage.mdx | 20 ++++++++++ public/images/allocation-pie-chart.png | Bin 0 -> 216753 bytes public/images/desmos-graph.png | Bin 0 -> 175998 bytes 8 files changed, 142 insertions(+) create mode 100644 pages/docs/tokenomics/_meta.json create mode 100644 pages/docs/tokenomics/allocation.mdx create mode 100644 pages/docs/tokenomics/inflation.mdx create mode 100644 pages/docs/tokenomics/launch.mdx create mode 100644 pages/docs/tokenomics/usage.mdx create mode 100644 public/images/allocation-pie-chart.png create mode 100644 public/images/desmos-graph.png diff --git a/pages/docs/_meta.json b/pages/docs/_meta.json index 9815666f..dbba113b 100644 --- a/pages/docs/_meta.json +++ b/pages/docs/_meta.json @@ -2,6 +2,7 @@ "index": { "title": "Overview" }, + "tokenomics": "Tokenomics", "usecases": "Use Cases", "network-information-configuration": "Network Configuration", "build": "Build", diff --git a/pages/docs/tokenomics/_meta.json b/pages/docs/tokenomics/_meta.json new file mode 100644 index 00000000..5d7a34f8 --- /dev/null +++ b/pages/docs/tokenomics/_meta.json @@ -0,0 +1,6 @@ +{ + "usage": "Token Utility", + "allocation": "Allocation", + "launch": "Network Launch Timeline", + "inflation": "Inflation" +} diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx new file mode 100644 index 00000000..6328565c --- /dev/null +++ b/pages/docs/tokenomics/allocation.mdx @@ -0,0 +1,52 @@ +--- +title: Genesis Allocations and Token Allocation Details +tags: + - [NetworkName] + - Token + - Tokenomics +--- + + + +### Prototypical Genesis Allocations + +Using aggregated data on successful networks as a benchmark, Tangle Net has tailored its genesis allocation to meet its unique needs and goals. + +![Allocation Pie Cahrt](/allocation-pie-chart.png) + + +### Vesting Schedule +Vesting schedules in Tangle Network are meticulously designed to promote long-term commitment and ensure a phased distribution of tokens. The network adopts a structured vesting strategy with distinct categories: + +- **A-Vesting**: This category entails a vesting period of 2 years with a 1-year cliff. This means that upon completing the first year, the allocation for that year vests immediately, ensuring a staggered release of tokens. The remaining year is distributed monthly in 1/12 increments. + +- **B-Vesting**: Upon claiming, 5% of the tokens become immediately liquid, while the remaining 95% of tokens under B-Vesting are distributed over 2 years with a commencement one month post-allocation. Post-cliff, tokens vest linearly with each blockchain block, distributing a proportionate amount of tokens until the conclusion of the 2-year period. + + +### Detailed Allocation Overview + +The Tangle Network's allocation model is designed to support our foundational structures, incentivize community participation, and ensure long-term sustainability and success: + +- **Contributors** allocation supports the core teams and advisors essential for the network's development and strategic direction. +- **Airdrops** are aimed at rewarding early supporters and participants, fostering a strong and engaged community from the outset. +- **Treasury** funds are earmarked for community decisionmaking, future development, network success programs, liquidity provisions, and partnerships critical for launch and growth. + + +Here is a breakdown of the Tangle Network's token allocation: + +| Category | Allocation | Subtotals | Vesting | +|-----------------------------|--------------------|----------------------------|--------------------| +| **Contributors** | | **60.00%** | - | +| Foundation | 15.00% | | None | +| Webb | 31.36% | | A-Vesting | +| Investors and Advisors | 13.64% | | A-Vesting | +| **Airdrops** | | **5.00%** | - | +| Leaderboard | 2.00% | | B-Vesting | +| EDG Genesis | 1.00% | | B-Vesting | +| EDG Snapshot | 1.00% | | B-Vesting | +| DOT Validators Snapshot | 1.00% | | B-Vesting | +| **Treasury** | | **35.00%** | - | +| Treasury Allocation | 20.00% | | None | +| Recom. Budgeted for Network Success & Liquidity Programs | 14.00% | | None | +| Recomd. Budgeted for Launch Partners | 1.00% | | None | +| **Total** | | **100.00%** | | diff --git a/pages/docs/tokenomics/inflation.mdx b/pages/docs/tokenomics/inflation.mdx new file mode 100644 index 00000000..6dba7820 --- /dev/null +++ b/pages/docs/tokenomics/inflation.mdx @@ -0,0 +1,42 @@ +# Tangle Network's Inflation Model + +## Overview + +Tangle Network utilizes a Nominated Proof of Stake (NPoS) system to secure its network and incentivize participation. The creation (minting) of new Tangle Network Tokens (TNT) serves as the primary mechanism for rewarding validators and nominators, which in turn introduces inflation into the system. This document outlines the key aspects of how rewards are distributed and how inflation is managed within Tangle Network. + +## NPoS Payments and Inflation + +- **Purpose**: Rewards are distributed to validators and nominators for their roles in block production and network security. +- **Inflation**: The minting of new TNT for rewards is the main source of inflation within Tangle Network. +- **Exclusions**: This overview **does not** account for penalties (slashings), rewards for reporting misconduct, or transaction fee rewards, which are covered separately. + +## Inflation Model Simplified + +- **Staking Rate ($x$)**: Represents the proportion of total TNT supply that is staked in the NPoS system. +- **Ideal Staking Rate ($\chi_{ideal}$)**: The target staking rate Tangle Network aims to achieve for optimal security and liquidity balance. +- **Yearly Interest Rate ($i(x)$)**: The rate at which rewards are paid out relative to the amount staked, adjusted based on the staking rate to incentivize desired staking levels. + +### Key Concepts: + +- **Incentives**: The system adjusts rewards to encourage a staking rate close to $\chi_{ideal}$, reducing rewards as staking exceeds this target to prevent liquidity issues. +- **Inflation Rate ($I$)**: Calculated based on several factors, including rewards for NPoS participation, treasury funding, penalties, and transaction fees. The goal is to balance inflation with network security and operational needs. +- **Adjustable Parameters**: The model includes variables like the ideal interest rate ($i_{ideal}$) and inflation limits that can be tuned to manage the network's economic dynamics effectively. + +![Inflation](/desmos-graph.png) + +## Reward Distribution Mechanism + +- Validators and nominators receive rewards for their contributions to block production and network security, with rewards calculated based on several factors including the total points earned for various actions within the network. +- **Payment Details**: Rewards are allocated based on a point system, where different network contributions earn different points. The total payout is then distributed proportionally to the points earned by each participant. + +## Inflation Control and Staking Incentives + +- The inflation model is designed to encourage a balanced staking rate by adjusting rewards based on the current staking rate relative to the ideal target. +- **Ideal Staking Rate Adjustment**: Factors such as network growth and operational needs may lead to adjustments in the ideal staking rate to maintain network security and efficiency. + +## Simplifying Complexities + +- While the underlying mechanics are complex, the essence is to incentivize behaviors that secure the network and ensure its smooth operation, balancing between rewarding participation and controlling inflation. +- **Governance Role**: The community and governance processes play a crucial role in adjusting parameters within the inflation model to respond to evolving network needs and conditions. + +This simplified overview aims to provide a clearer understanding of how Tangle Network manages inflation and rewards within its NPoS system, making the information accessible to a broader audience without diminishing the intricacies of the underlying mechanisms. diff --git a/pages/docs/tokenomics/launch.mdx b/pages/docs/tokenomics/launch.mdx new file mode 100644 index 00000000..be0debc0 --- /dev/null +++ b/pages/docs/tokenomics/launch.mdx @@ -0,0 +1,21 @@ +# Tangle Network Mainnet Launch + +## Launch Date + +- **Mainnet Activation**: Scheduled for April 10, 2024, Tangle Network will make its entrance as a fully operational NPoS network, virtually permissionless, decentralized and community governed from the start. + +## NPoS Launch and Operations + +- **NPoS Framework**: Upon launch, Tangle Network will adopt a Nominated Proof of Stake model as its foundational security mechanism. This allows TNT holders to engage directly in the network's security by nominating validators they trust to be responsible for block production and transaction validation. +- **Validator Participation**: Validators are essential to the network's integrity and performance from the very beginning. Potential validators are thus encouraged to prepare for their roles by learning to stake TNT tokens and signaling their commitment to maintaining network protocols. + +## Governance Activation + +- **Initial Governance**: Concurrent with the NPoS launch, governance modules will be activated, granting TNT holders the power to participate in decision-making processes through proposals, referenda, and council elections, ensuring a democratic approach to the network's development. +- **Webb's Sudo Key Role**: Initially, Webb, the core developer team, will hold a Sudo key to ensure smooth operations and governance transitions. This temporary measure allows for efficient implementation of critical updates and decisions during the early stages of the network. +- **Sudo Key Deactivation**: A timeline is in place for deactivating the Sudo key, transitioning to a fully decentralized governance model. This significant step is expected to occur within the first few months after launch, with input from the token holders to affirm the network's readiness. + +## Core Functionality + +- **Balances and Transfers**: From launch day, TNT token balances will be active, with token transfer capabilities generally enabled to ensure liquidity and participation in the network's economy. **If you recieve tokens through the airdrop or other allocation processes, up to 95% of these may be subject to a lockup. [See the Allocation page for details.](allocation.mdx)** +- **Community Proposals for Additional Features**: Post-launch, the community will be empowered to propose and vote on activating additional core functionalities. This encompasses enhanced transaction types, new governance mechanisms, and network upgrades, among others. diff --git a/pages/docs/tokenomics/usage.mdx b/pages/docs/tokenomics/usage.mdx new file mode 100644 index 00000000..6225ee78 --- /dev/null +++ b/pages/docs/tokenomics/usage.mdx @@ -0,0 +1,20 @@ +# TNT Token Utility + +The Tangle Network introduces its native token, TNT, pivotal in driving the network's unique capabilities in Zero-Knowledge (ZK) and Multiparty Computation (MPC) as-a-service on its platform. TNT plays a multifaceted role, underpinning the entire ecosystem's operation and governance. Here's how TNT integrates into Tangle Network's innovative framework: + +## TNT Token Utility and Network Dynamics +**Consensus and Economic Model:** The Tangle Network dynamically mints or burns TNT tokens to reward consensus protocol participants, fund its treasury, manage inflation, and ensure the network's economic stability. + +**ZK and MPC Operations** TNT serves as the currency for transactions between job submitters and validators within the Tangle Network's ZK and MPC services. This facilitates seamless, secure, and efficient execution of complex computations and privacy-preserving operations. + +**Validator Restaking:** Validators are required to restake TNT tokens to maintain their role in performing ZK and MPC services. This mechanism promotes ongoing commitment and participation in the network's core functionalities. + +**Slashing Mechanisms:** To safeguard against malicious activities, TNT tokens are integral to Tangle's slashing protocols. These measures are designed to deter attacks and incentivize adherence to network protocols. + +**Governance Empowerment:** TNT holders wield governance power, enabling them to partake in pivotal network decisions through referenda. This democratic approach ensures that the Tangle Network evolves in alignment with its community's interests. + + +Through the Substrate-standard proof-of-stake model, Tangle Network aims to foster a robust and secure ecosystem. Validators and nominators play a critical role, with validators facilitating block production and consensus, while nominators back their preferred validators, contributing to network integrity. + +A considerable portion of TNT will be actively engaged in the network, either staked by validators and nominators for network security or utilized in the execution of ZK and MPC tasks. This not only ensures the network's resilience and security but also drives engagement and utility within the Tangle ecosystem. + diff --git a/public/images/allocation-pie-chart.png b/public/images/allocation-pie-chart.png new file mode 100644 index 0000000000000000000000000000000000000000..ad5bdea42c402e1b988ec5b4c8a094c6dd384aac GIT binary patch literal 216753 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�kLUnKyt$^0MAPmac_BVb9uNMU{-iB4a@6q` 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
  • hy`F4LRHURzS`jY2%2ej{BHIY%9He^T3yX1 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 MX+rK7YuLW|A9pcBd;kCd literal 0 HcmV?d00001 diff --git a/public/images/desmos-graph.png b/public/images/desmos-graph.png new file mode 100644 index 0000000000000000000000000000000000000000..27a3d7685295d571bf747ee810d0b159b70b2694 GIT binary patch literal 175998 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 (w{Xm4cxL8Z|(a&Unro8#xP42KI>E7lhVxC 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�J1GTSZ$t9mPweSJznS`ac0BI*op((Tu{@tf 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 literal 0 HcmV?d00001 From 0608f1c06fd93120bd0ba709dcedcde09e53add3 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Thu, 29 Feb 2024 17:20:23 -0600 Subject: [PATCH 02/29] added integration page with metadata and other details under Build --- pages/docs/build/_meta.json | 1 + pages/docs/build/integrate.mdx | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 pages/docs/build/integrate.mdx diff --git a/pages/docs/build/_meta.json b/pages/docs/build/_meta.json index a20be584..ac8ffc65 100644 --- a/pages/docs/build/_meta.json +++ b/pages/docs/build/_meta.json @@ -1,6 +1,7 @@ { "deploy-using-hardhat": "Deploy on Tangle with Hardhat", "json-rpc-endpoints": "RPC Endpoints", + "integrate": "Integrate Tangle", "pallets": "Pallets", "precompiles": "Precompiles" } diff --git a/pages/docs/build/integrate.mdx b/pages/docs/build/integrate.mdx new file mode 100644 index 00000000..b425b0b2 --- /dev/null +++ b/pages/docs/build/integrate.mdx @@ -0,0 +1,27 @@ +# Integrating with Tangle Network + +This guide provides essential information required for integrating with Tangle Network. + + +## Integration Resources + +| Category | Details | +|--------------------------|----------------------------------------------------| +| **Blockchain Name** | Tangle Network | +| **Blockchain Type** | Substrate with EVM compatibility via Frontier | +| WebSocket RPC Endpoint** | `wss://rpc.tangle.tools` | +| **HTTP RPC Endpoint** | `http://rpc.tangle.tools` | +| **Chain ID** | 5845 | +| **Address Prefix** | `tg` | +| **Network** | `tangle` | +| **Symbols** | `TNT` | +| **Decimals** | `18` | +| **Standard Account** | `*25519` | +| **Website** | https://www.tangle.tools/ | +| **EVM Block Explorer** | https://testnet-explorer.tangle.tools/ | +| **Runtime Types** | https://github.com/webb-tools/tangle/blob/main/types/src/interfaces/lookup.ts | +| **Substrate Block Explorer** | Coming soon. | +| **Polkadot Apps** | https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftestnet-rpc.tangle.tools#/explorer | +| **Node Telemetry** | https://telemetry.polkadot.io/#/0x3d22af97d919611e03bbcbda96f65988758865423e89b2d99547a6bb61452db3 | +| **Whitepaper** | https://github.com/webb-tools/tangle/blob/main/Tangle_Network_Whitepaper-VerrsFeb282024.pdf | +| **Github Repo**. | https://github.com/webb-tools/tangle | From 99287b5f09bab1c2a1e0de30a7b0bdb29c283854 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Thu, 29 Feb 2024 17:23:20 -0600 Subject: [PATCH 03/29] added overide for prettier to map mdx files to markdown --- package.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index d8e8d4f1..ebaec580 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,13 @@ }, "prettier": { "embeddedLanguageFormatting": "off", - "htmlWhitespaceSensitivity": "strict" + "htmlWhitespaceSensitivity": "strict", + "overrides": [ + { + "files": "*.mdx", + "options": { "parser": "mdx" } + } + ] }, "engines": { "npm": "please-use-yarn", From faa95bb1fb2693d9a7d5900782d8d9ebd7ada278 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Thu, 29 Feb 2024 17:28:22 -0600 Subject: [PATCH 04/29] added babel parser to prettier for mdx --- package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index ebaec580..c44cec6f 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,10 @@ "overrides": [ { "files": "*.mdx", - "options": { "parser": "mdx" } + "options": { + "parser": "mdx", + "plugins": ["prettier/parser-babel"] + } } ] }, From e849c7d12249a84f60e375372525c56ac2d8ef93 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Thu, 29 Feb 2024 17:35:58 -0600 Subject: [PATCH 05/29] updated allocation and usage typos and text --- pages/docs/tokenomics/allocation.mdx | 11 +++++------ pages/docs/tokenomics/usage.mdx | 2 +- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index 6328565c..cb56f2f2 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -1,7 +1,6 @@ --- title: Genesis Allocations and Token Allocation Details tags: - - [NetworkName] - Token - Tokenomics --- @@ -10,7 +9,7 @@ tags: ### Prototypical Genesis Allocations -Using aggregated data on successful networks as a benchmark, Tangle Net has tailored its genesis allocation to meet its unique needs and goals. +Using aggregated data on successful networks as a benchmark,Tangle Network has tailored its genesis allocation to meet its unique needs and goals. ![Allocation Pie Cahrt](/allocation-pie-chart.png) @@ -27,7 +26,7 @@ Vesting schedules in Tangle Network are meticulously designed to promote long-te The Tangle Network's allocation model is designed to support our foundational structures, incentivize community participation, and ensure long-term sustainability and success: -- **Contributors** allocation supports the core teams and advisors essential for the network's development and strategic direction. +- **Contributors** allocation supports the core teams, core-team investors and advisors essential for the network's development and strategic direction. - **Airdrops** are aimed at rewarding early supporters and participants, fostering a strong and engaged community from the outset. - **Treasury** funds are earmarked for community decisionmaking, future development, network success programs, liquidity provisions, and partnerships critical for launch and growth. @@ -36,16 +35,16 @@ Here is a breakdown of the Tangle Network's token allocation: | Category | Allocation | Subtotals | Vesting | |-----------------------------|--------------------|----------------------------|--------------------| -| **Contributors** | | **60.00%** | - | +| **Contributors** | | **60.00%** | | | Foundation | 15.00% | | None | | Webb | 31.36% | | A-Vesting | | Investors and Advisors | 13.64% | | A-Vesting | -| **Airdrops** | | **5.00%** | - | +| **Airdrops** | | **5.00%** | | | Leaderboard | 2.00% | | B-Vesting | | EDG Genesis | 1.00% | | B-Vesting | | EDG Snapshot | 1.00% | | B-Vesting | | DOT Validators Snapshot | 1.00% | | B-Vesting | -| **Treasury** | | **35.00%** | - | +| **Treasury** | | **35.00%** | | | Treasury Allocation | 20.00% | | None | | Recom. Budgeted for Network Success & Liquidity Programs | 14.00% | | None | | Recomd. Budgeted for Launch Partners | 1.00% | | None | diff --git a/pages/docs/tokenomics/usage.mdx b/pages/docs/tokenomics/usage.mdx index 6225ee78..a7968490 100644 --- a/pages/docs/tokenomics/usage.mdx +++ b/pages/docs/tokenomics/usage.mdx @@ -3,7 +3,7 @@ The Tangle Network introduces its native token, TNT, pivotal in driving the network's unique capabilities in Zero-Knowledge (ZK) and Multiparty Computation (MPC) as-a-service on its platform. TNT plays a multifaceted role, underpinning the entire ecosystem's operation and governance. Here's how TNT integrates into Tangle Network's innovative framework: ## TNT Token Utility and Network Dynamics -**Consensus and Economic Model:** The Tangle Network dynamically mints or burns TNT tokens to reward consensus protocol participants, fund its treasury, manage inflation, and ensure the network's economic stability. +**Consensus and Economic Model:** The Tangle Network dynamically mints or burns TNT tokens to reward consensus protocol participants, partially fund its treasury, manage inflation, and ensure the network's economic stability. **ZK and MPC Operations** TNT serves as the currency for transactions between job submitters and validators within the Tangle Network's ZK and MPC services. This facilitates seamless, secure, and efficient execution of complex computations and privacy-preserving operations. From 889a3d892c6d7d0a4f4c8b842decd43521e6dc40 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Thu, 29 Feb 2024 22:22:12 -0600 Subject: [PATCH 06/29] Added detailed vesting schedule and allocation details --- pages/docs/tokenomics/allocation.mdx | 114 ++++++++++++++++++++------- 1 file changed, 87 insertions(+), 27 deletions(-) diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index cb56f2f2..f3dd8505 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -7,19 +7,23 @@ tags: -### Prototypical Genesis Allocations +### Overview: Genesis Allocations -Using aggregated data on successful networks as a benchmark,Tangle Network has tailored its genesis allocation to meet its unique needs and goals. +Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. ![Allocation Pie Cahrt](/allocation-pie-chart.png) -### Vesting Schedule +### Vesting Schedules Vesting schedules in Tangle Network are meticulously designed to promote long-term commitment and ensure a phased distribution of tokens. The network adopts a structured vesting strategy with distinct categories: -- **A-Vesting**: This category entails a vesting period of 2 years with a 1-year cliff. This means that upon completing the first year, the allocation for that year vests immediately, ensuring a staggered release of tokens. The remaining year is distributed monthly in 1/12 increments. +**A-Vesting:** This category is characterized by a vesting period of 2 years, with a 12-month cliff. This means that no tokens are released in the first year. After completing the first year (the cliff period), the tokens allocated for that year become immediately available in full. The remainder of the allocation is then distributed monthly in equal 1/12 increments over the second year, facilitating a gradual release of tokens. This approach aligns with the policy of Immediate Vesting Post-Cliff with Retroactive Accumulation. + +**B-Vesting:** For participants in this category, a small portion of the tokens (as specified, 5% or a different predetermined percentage based on individual agreements) becomes immediately available upon claiming. The remaining 95% of the tokens are then vested over a period of 2 years, with the vesting commencing one month after allocation. The first month serves as a cliff, during which no tokens are vested. Following this cliff, the tokens begin to vest linearly each month, ensuring a steady distribution until the end of the 2-year period. This vesting schedule adheres to the policy of Immediate Vesting Post-Cliff with Retroactive Accumulation, allowing for a proportional monthly distribution of tokens. + +**C-Vesting:** This vesting category is tailored for airdrop participants, featuring a 2-year vesting period with a notably short cliff of just 1 month. A predefined percentage of tokens becomes immediately available at the start. Subsequent to the cliff period, the remaining tokens are distributed on a monthly basis, ensuring a consistent flow of tokens into circulation. This strategy also follows the Immediate Vesting Post-Cliff with Retroactive Accumulation policy, aiming to reward early supporters while promoting long-term holding. + -- **B-Vesting**: Upon claiming, 5% of the tokens become immediately liquid, while the remaining 95% of tokens under B-Vesting are distributed over 2 years with a commencement one month post-allocation. Post-cliff, tokens vest linearly with each blockchain block, distributing a proportionate amount of tokens until the conclusion of the 2-year period. ### Detailed Allocation Overview @@ -27,25 +31,81 @@ Vesting schedules in Tangle Network are meticulously designed to promote long-te The Tangle Network's allocation model is designed to support our foundational structures, incentivize community participation, and ensure long-term sustainability and success: - **Contributors** allocation supports the core teams, core-team investors and advisors essential for the network's development and strategic direction. -- **Airdrops** are aimed at rewarding early supporters and participants, fostering a strong and engaged community from the outset. -- **Treasury** funds are earmarked for community decisionmaking, future development, network success programs, liquidity provisions, and partnerships critical for launch and growth. - - -Here is a breakdown of the Tangle Network's token allocation: - -| Category | Allocation | Subtotals | Vesting | -|-----------------------------|--------------------|----------------------------|--------------------| -| **Contributors** | | **60.00%** | | -| Foundation | 15.00% | | None | -| Webb | 31.36% | | A-Vesting | -| Investors and Advisors | 13.64% | | A-Vesting | -| **Airdrops** | | **5.00%** | | -| Leaderboard | 2.00% | | B-Vesting | -| EDG Genesis | 1.00% | | B-Vesting | -| EDG Snapshot | 1.00% | | B-Vesting | -| DOT Validators Snapshot | 1.00% | | B-Vesting | -| **Treasury** | | **35.00%** | | -| Treasury Allocation | 20.00% | | None | -| Recom. Budgeted for Network Success & Liquidity Programs | 14.00% | | None | -| Recomd. Budgeted for Launch Partners | 1.00% | | None | -| **Total** | | **100.00%** | | +- **Airdrops** are aimed at rewardingand incentivizing early supporters and participants, fostering a strong and engaged community from the outset. +- **Governance-Managed** funds are earmarked for community decisionmaking, future development, network success programs, liquidity provisions, and partnerships critical for launch and growth. + + + +| Allocation Category | Entity Name | Allocated Share (%) | Vesting Plan | Cliff (Months) | Vesting Period (Months) | Immediate Liquidity (%) | Initial Liquid Tokens | Cliff-Release Tokens | Monthly Vesting Rate | Total Tokens Allocated | +|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| +| Contributors | Webb (Developer) | 29.93% | B-Vesting | 12 | 24 | 5% | 1,424,500.00 | 13,532,750.00 | 2,255,458.33 | 28,490,000.00 | +| Contributors | Investors | 13.64% | A-Vesting | 12 | 24 | 0% | 0.00 | 6,820,000.00 | 1,136,666.67 | 13,640,000.00 | +| Contributors | Indiv. Contributors | 1.44% | B-Vesting | 12 | 48 | 5% | 71,750.00 | 340,812.50 | 37,868.06 | 1,435,000.00 | +| Contributors Total | | 45.00% | | | | | 1,496,250.00 | | | 43,565,000.00 | +|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| +| Governance-Managed | Treasury | 35.00% | n/a | n/a | n/a | 100% | 35,000,000.00 | n/a | n/a | 35,000,000.00 | +| Governance-Managed | Foundation | 15.00% | n/a | n/a | n/a | 100% | 15,000,000.00 | n/a | n/a | 15,000,000.00 | +| Governance-Managed Total| | 50% | | | | | 50,000,000.00 | | | 50,000,000.00 | +|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| +| Airdrops | Leaderboard Participants| 2% | C-Vesting | 1 | 24 | 5% | 100,000.00 | 79,166.67 | 82,608.70 | 2,000,000.00 | +| Airdrops | DOT Validators Snapshot | 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | +| Airdrops | EDG Genesis Participants| 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | +| Airdrops | EDG 2023 Snapshot | 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | +| Airdrops Subtotal | | 5% | | | | | 250,000.00 | 197,916.67 | | 5,000,000.00 | +|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| +| Total Supply | | 100% | | | | | 51,746,250.00 | | | 100,000,000.00 | + + + +# Token Allocation and Vesting Schedule Formulas + +This section outlines the formulas used to calculate various aspects of our token allocation and vesting schedules, presented in a way that's compatible with Markdown rendering. + +### Initial Liquid Tokens +```plaintext +=Total_Tokens_Allocated * Immediate_Liquidity_Percentage +``` +**Description:** Calculates the number of tokens that are immediately liquid and available at launch, based on the total tokens allocated to an entity and the percentage designated as immediately liquid. + +### Cliff-Release Tokens (for entities with a retroactive vesting cliff) +```plaintext +=Total_Tokens_Allocated * (Cliff_Duration / Total_Vesting_Period) +``` +**Description:** For allocations with a retroactive vesting cliff, this calculates the number of tokens released at the end of the cliff period, based on the total allocation and the proportion of the vesting period represented by the cliff. + +### Monthly Vesting Rate (for entities with post-cliff monthly vesting) +```plaintext +=(Total_Tokens_Allocated - Initial_Liquid_Tokens - Cliff_Release_Tokens) / (Vesting_Period - Cliff_Duration) +``` +**Description:** Determines the monthly rate at which tokens vest after the cliff period, considering the total tokens allocated minus any initially liquid tokens and tokens released at the cliff, divided by the remaining months of the vesting period. + + +### Special Considerations +For entities without a vesting plan (e.g., Treasury, Foundation) +**Entire allocation is considered liquid at launch,** though it is only utilized through governance and so not 'liquid' in the traditional tokenomic sense. +```plaintext +=Total_Tokens_Allocated +``` + + +## Definitions + +1. **Allocation Category**: A grouping used to categorize the distribution of tokens or shares within a project or organization, typically indicating the purpose or recipient of the allocation. +2. **Entity Name**: The name of the individual or organization receiving the allocation of tokens or shares. +3. **Allocated Share (%)**: The percentage of the total token supply allocated to a specific entity or category. +4. **Vesting Plan**: A structured timeline outlining how allocated tokens or shares become available to the recipient over a period, usually to incentivize long-term commitment or performance. +5. **Cliff (Months)**: The initial period after which a portion of the allocated tokens or shares becomes accessible to the recipient, often used as a safeguard against early departures or underperformance. +6. **Vesting Period (Months)**: The total duration over which allocated tokens or shares gradually become available to the recipient according to the vesting schedule. +7. **Immediate Liquidity (%)**: The percentage of allocated tokens or shares that are immediately accessible or liquid upon allocation, without being subject to vesting restrictions. +8. **Initial Liquid Tokens**: The number of tokens or shares initially available for immediate use or transfer upon allocation. +9. **Cliff-Release Tokens**: The number of tokens or shares released after the cliff period, becoming accessible to the recipient according to the vesting schedule. +10. **Monthly Vesting Rate**: The rate at which tokens or shares vest on a monthly basis after the cliff period, determining the pace of distribution to the recipient. +11. **Total Tokens Allocated**: The overall sum of tokens or shares allocated to a specific entity or category, representing the total amount of ownership or participation assigned. +12. **Contributors**: Individuals or entities actively involved in contributing to the project's development, growth, or success. +13. **Governance-Managed**: Tokens allocated for governance purposes and managed by a designated entity or organization within the project, typically used for decision-making or protocol governance. +14. **Airdrops**: Distribution of tokens to a specific group of recipients, often as a promotional or community-building activity, without requiring direct financial investment. +15. **Leaderboard Participants**: Participants who engage with the project's leaderboard, often in competitions or challenges, and receive tokens as rewards or incentives. +16. **DOT Validators Snapshot**: Participants included in a specific snapshot of DOT (Polkadot) validators and rewarded with tokens accordingly. +17. **EDG Genesis Participants**: Participants involved in the project's genesis event or initial launch phase and eligible for token rewards. +18. **EDG 2023 Snapshot**: Participants included in a snapshot taken in the year 2023 and eligible for token rewards based on their inclusion in the snapshot. +19. **Total Supply**: The overall quantity of tokens or shares in existence within the project or organization, representing the maximum potential ownership or participation. From fc56d56f669de1a869f3c373619851db70e25180 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 15:32:07 -0600 Subject: [PATCH 07/29] Removed katex and remark support in favor of native latex support by nextra, activated that. Updated tokenomics and added a comprehensive chart component for allocation. installed styled-components for chart --- components/AllocationTable.tsx | 227 +++++++++++++++++++++++++++ next.config.mjs | 11 +- pages/docs/tokenomics/_meta.json | 2 +- pages/docs/tokenomics/allocation.mdx | 28 +--- pages/docs/tokenomics/inflation.mdx | 20 ++- pages/docs/tokenomics/launch.mdx | 4 +- pages/docs/tokenomics/usage.mdx | 38 +++-- 7 files changed, 282 insertions(+), 48 deletions(-) create mode 100644 components/AllocationTable.tsx diff --git a/components/AllocationTable.tsx b/components/AllocationTable.tsx new file mode 100644 index 00000000..aca8514f --- /dev/null +++ b/components/AllocationTable.tsx @@ -0,0 +1,227 @@ +import React from "react"; +import styled from "styled-components"; + +const TableContainer = styled.div` + overflow-x: auto; + margin: 20px; +`; + +const Table = styled.table` + width: 100%; + border-collapse: collapse; + text-align: left; + font-size: 14px; + + @media (max-width: 768px) { + font-size: 12px; + } +`; + +const Header = styled.th` + background-color: #f1f1f1; + padding: 12px; + font-weight: bold; + border: 1px solid #ddd; + white-space: nowrap; +`; + +const Row = styled.tr` + &:nth-child(even) { + background-color: #f9f9f9; + } +`; + +const SubtotalRow = styled(Row)` + background-color: #e6f2ff !important; + font-weight: bold; +`; + +const TotalRow = styled(Row)` + background-color: #d9ead3; + font-weight: bold; +`; + +const Cell = styled.td` + padding: 12px; + border: 1px solid #ddd; + white-space: nowrap; +`; + +export default function AllocationTable() { + return ( + + + + +
    Allocation Category
    +
    Entity Name
    +
    Allocated Share (%)
    +
    Vesting Plan
    +
    Cliff (Months)
    +
    Vesting Period (Months)
    +
    Immediate Liquidity (%)
    +
    Initial Liquid Tokens
    +
    Cliff-Release Tokens
    +
    Monthly Vesting Rate
    +
    Total Tokens Allocated
    +
    + + + + Contributors + Webb (Developer) + 29.93% + B-Vesting + 12 + 24 + 5% + 1,424,500.00 + 13,532,750.00 + 2,255,458.33 + 28,490,000.00 + + + Contributors + Investors + 13.64% + A-Vesting + 12 + 24 + 0% + 0.00 + 6,820,000.00 + 1,136,666.67 + 13,640,000.00 + + + Contributors + Indiv. Contributors + 1.44% + B-Vesting + 12 + 48 + 5% + 71,750.00 + 340,812.50 + 37,868.06 + 1,435,000.00 + + + + Contributors Subtotal + + 45.00% + + 1,496,250.00 + + 43,565,000.00 + + + Governance-Managed + Treasury + 35.00% + n/a + n/a + n/a + 100% + n/a + n/a + n/a + 35,000,000.00 + + + Governance-Managed + Foundation + 15.00% + n/a + n/a + n/a + 100% + n/a + n/a + n/a + 15,000,000.00 + + + + Governance-Managed Subtotal + + 50% + + 50,000,000.00 + + + Airdrops + Leaderboard Participants + 2% + C-Vesting + 1 + 24 + 5% + 100,000.00 + 79,166.67 + 82,608.70 + 2,000,000.00 + + + Airdrops + DOT Validators Snapshot + 1% + C-Vesting + 1 + 24 + 5% + 50,000.00 + 39,583.33 + 41,304.35 + 1,000,000.00 + + + Airdrops + EDG Genesis Participants + 1% + C-Vesting + 1 + 24 + 5% + 50,000.00 + 39,583.33 + 41,304.35 + 1,000,000.00 + + + Airdrops + EDG 2023 Snapshot + 1% + C-Vesting + 1 + 24 + 5% + 50,000.00 + 39,583.33 + 41,304.35 + 1,000,000.00 + + + + Airdrops Subtotal + + + 250,000.00 + 197,916.67 + + 5,000,000.00 + + + + Total Supply + + 100% + + 100,000,000.00 + + +
    +
    + ); +} diff --git a/next.config.mjs b/next.config.mjs index acc5feb6..b36667ac 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -1,6 +1,4 @@ import nextra from "nextra"; -import rehypeKatex from "rehype-katex"; -import remarkMath from "remark-math"; /** * @type {import('next').NextConfig} @@ -39,11 +37,8 @@ const withNextra = nextra({ themeConfig: "./theme.config.js", staticImage: true, flexsearch: true, - latex: true, - mdxOptions: { - remarkPlugins: [remarkMath], - rehypePlugins: [rehypeKatex], - }, + latex: true, // Ensure this is enabled to use Nextra's native LaTeX support + // Since Nextra supports LaTeX natively, remove the custom MDX option for remarkMath and rehypeKatex }); -export default withNextra(nextConfig); +export default withNextra(nextConfig); \ No newline at end of file diff --git a/pages/docs/tokenomics/_meta.json b/pages/docs/tokenomics/_meta.json index 5d7a34f8..4532e31b 100644 --- a/pages/docs/tokenomics/_meta.json +++ b/pages/docs/tokenomics/_meta.json @@ -1,5 +1,5 @@ { - "usage": "Token Utility", + "usage": "Token Overview and Utility", "allocation": "Allocation", "launch": "Network Launch Timeline", "inflation": "Inflation" diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index f3dd8505..bb337263 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -5,17 +5,18 @@ tags: - Tokenomics --- +import AllocationTable from 'components/AllocationTable.tsx'; ### Overview: Genesis Allocations Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. -![Allocation Pie Cahrt](/allocation-pie-chart.png) +![Allocation Pie Chart](/../public/images/allocation-pie-chart.png) ### Vesting Schedules -Vesting schedules in Tangle Network are meticulously designed to promote long-term commitment and ensure a phased distribution of tokens. The network adopts a structured vesting strategy with distinct categories: +Vesting schedules in Tangle Network are designed to promote long-term commitment and ensure a phased distribution of tokens. The network adopts a structured vesting strategy with distinct categories: **A-Vesting:** This category is characterized by a vesting period of 2 years, with a 12-month cliff. This means that no tokens are released in the first year. After completing the first year (the cliff period), the tokens allocated for that year become immediately available in full. The remainder of the allocation is then distributed monthly in equal 1/12 increments over the second year, facilitating a gradual release of tokens. This approach aligns with the policy of Immediate Vesting Post-Cliff with Retroactive Accumulation. @@ -31,29 +32,10 @@ Vesting schedules in Tangle Network are meticulously designed to promote long-te The Tangle Network's allocation model is designed to support our foundational structures, incentivize community participation, and ensure long-term sustainability and success: - **Contributors** allocation supports the core teams, core-team investors and advisors essential for the network's development and strategic direction. -- **Airdrops** are aimed at rewardingand incentivizing early supporters and participants, fostering a strong and engaged community from the outset. +- **Airdrops** are aimed at rewardingg and incentivizing validators, early supporters and participants, fostering a strong and engaged community from the outset. - **Governance-Managed** funds are earmarked for community decisionmaking, future development, network success programs, liquidity provisions, and partnerships critical for launch and growth. - - -| Allocation Category | Entity Name | Allocated Share (%) | Vesting Plan | Cliff (Months) | Vesting Period (Months) | Immediate Liquidity (%) | Initial Liquid Tokens | Cliff-Release Tokens | Monthly Vesting Rate | Total Tokens Allocated | -|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| -| Contributors | Webb (Developer) | 29.93% | B-Vesting | 12 | 24 | 5% | 1,424,500.00 | 13,532,750.00 | 2,255,458.33 | 28,490,000.00 | -| Contributors | Investors | 13.64% | A-Vesting | 12 | 24 | 0% | 0.00 | 6,820,000.00 | 1,136,666.67 | 13,640,000.00 | -| Contributors | Indiv. Contributors | 1.44% | B-Vesting | 12 | 48 | 5% | 71,750.00 | 340,812.50 | 37,868.06 | 1,435,000.00 | -| Contributors Total | | 45.00% | | | | | 1,496,250.00 | | | 43,565,000.00 | -|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| -| Governance-Managed | Treasury | 35.00% | n/a | n/a | n/a | 100% | 35,000,000.00 | n/a | n/a | 35,000,000.00 | -| Governance-Managed | Foundation | 15.00% | n/a | n/a | n/a | 100% | 15,000,000.00 | n/a | n/a | 15,000,000.00 | -| Governance-Managed Total| | 50% | | | | | 50,000,000.00 | | | 50,000,000.00 | -|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| -| Airdrops | Leaderboard Participants| 2% | C-Vesting | 1 | 24 | 5% | 100,000.00 | 79,166.67 | 82,608.70 | 2,000,000.00 | -| Airdrops | DOT Validators Snapshot | 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | -| Airdrops | EDG Genesis Participants| 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | -| Airdrops | EDG 2023 Snapshot | 1% | C-Vesting | 1 | 24 | 5% | 50,000.00 | 39,583.33 | 41,304.35 | 1,000,000.00 | -| Airdrops Subtotal | | 5% | | | | | 250,000.00 | 197,916.67 | | 5,000,000.00 | -|---------------------|--------------------------|---------------------|--------------|----------------|-------------------------|-------------------------|-----------------------|----------------------|-----------------------|------------------------| -| Total Supply | | 100% | | | | | 51,746,250.00 | | | 100,000,000.00 | + diff --git a/pages/docs/tokenomics/inflation.mdx b/pages/docs/tokenomics/inflation.mdx index 6dba7820..da400913 100644 --- a/pages/docs/tokenomics/inflation.mdx +++ b/pages/docs/tokenomics/inflation.mdx @@ -12,9 +12,21 @@ Tangle Network utilizes a Nominated Proof of Stake (NPoS) system to secure its n ## Inflation Model Simplified -- **Staking Rate ($x$)**: Represents the proportion of total TNT supply that is staked in the NPoS system. -- **Ideal Staking Rate ($\chi_{ideal}$)**: The target staking rate Tangle Network aims to achieve for optimal security and liquidity balance. -- **Yearly Interest Rate ($i(x)$)**: The rate at which rewards are paid out relative to the amount staked, adjusted based on the staking rate to incentivize desired staking levels. +- **Staking Rate:** + +($$x$$) + +Represents the proportion of total TNT supply that is staked in the NPoS system. +- **Ideal Staking Rate** + +($$\chi_{\text{ideal}}$$) + +The target staking rate Tangle Network aims to achieve for optimal security and liquidity balance. +- **Yearly Interest Rate:** + +($$i(x)$$) + +The rate at which rewards are paid out relative to the amount staked, adjusted based on the staking rate to incentivize desired staking levels. ### Key Concepts: @@ -22,7 +34,7 @@ Tangle Network utilizes a Nominated Proof of Stake (NPoS) system to secure its n - **Inflation Rate ($I$)**: Calculated based on several factors, including rewards for NPoS participation, treasury funding, penalties, and transaction fees. The goal is to balance inflation with network security and operational needs. - **Adjustable Parameters**: The model includes variables like the ideal interest rate ($i_{ideal}$) and inflation limits that can be tuned to manage the network's economic dynamics effectively. -![Inflation](/desmos-graph.png) +![Inflation](public/images/desmos-graph.png) ## Reward Distribution Mechanism diff --git a/pages/docs/tokenomics/launch.mdx b/pages/docs/tokenomics/launch.mdx index be0debc0..8577439d 100644 --- a/pages/docs/tokenomics/launch.mdx +++ b/pages/docs/tokenomics/launch.mdx @@ -2,7 +2,7 @@ ## Launch Date -- **Mainnet Activation**: Scheduled for April 10, 2024, Tangle Network will make its entrance as a fully operational NPoS network, virtually permissionless, decentralized and community governed from the start. +- **Mainnet Activation**: Scheduled for April 10, 2024, Tangle Network will make its entrance as a fully operational NPoS network, virtually permissionless, decentralized and community governed from the start. Validators will be able to participate in validation on the 10th. ## NPoS Launch and Operations @@ -12,7 +12,7 @@ ## Governance Activation - **Initial Governance**: Concurrent with the NPoS launch, governance modules will be activated, granting TNT holders the power to participate in decision-making processes through proposals, referenda, and council elections, ensuring a democratic approach to the network's development. -- **Webb's Sudo Key Role**: Initially, Webb, the core developer team, will hold a Sudo key to ensure smooth operations and governance transitions. This temporary measure allows for efficient implementation of critical updates and decisions during the early stages of the network. +- **Webb's Sudo Key Role**: Initially, Webb, a core development team, will hold a Sudo key to ensure smooth operations and governance transitions. This temporary measure allows for efficient implementation of critical updates and decisions during the early stages of the network. - **Sudo Key Deactivation**: A timeline is in place for deactivating the Sudo key, transitioning to a fully decentralized governance model. This significant step is expected to occur within the first few months after launch, with input from the token holders to affirm the network's readiness. ## Core Functionality diff --git a/pages/docs/tokenomics/usage.mdx b/pages/docs/tokenomics/usage.mdx index a7968490..3c9dab24 100644 --- a/pages/docs/tokenomics/usage.mdx +++ b/pages/docs/tokenomics/usage.mdx @@ -1,20 +1,38 @@ -# TNT Token Utility +# TNT Token Information and Utility -The Tangle Network introduces its native token, TNT, pivotal in driving the network's unique capabilities in Zero-Knowledge (ZK) and Multiparty Computation (MPC) as-a-service on its platform. TNT plays a multifaceted role, underpinning the entire ecosystem's operation and governance. Here's how TNT integrates into Tangle Network's innovative framework: +The Tangle Network's native token is TNT, critical for the capabilities in Zero-Knowledge (ZK) and Multiparty Computation (MPC) as-a-service. TNT also underpins the entire ecosystem's operation and governance. -## TNT Token Utility and Network Dynamics -**Consensus and Economic Model:** The Tangle Network dynamically mints or burns TNT tokens to reward consensus protocol participants, partially fund its treasury, manage inflation, and ensure the network's economic stability. +| Token Name | Symbol | Decimal Places | +|-----------------------------------|--------|----------------| +| Tangle Network Token | TNT | 18 | +| Testnet Tangle Network Token | tTNT | 18 | -**ZK and MPC Operations** TNT serves as the currency for transactions between job submitters and validators within the Tangle Network's ZK and MPC services. This facilitates seamless, secure, and efficient execution of complex computations and privacy-preserving operations. +## Usage Cases -**Validator Restaking:** Validators are required to restake TNT tokens to maintain their role in performing ZK and MPC services. This mechanism promotes ongoing commitment and participation in the network's core functionalities. +### Consensus Mechanism and nPoS: -**Slashing Mechanisms:** To safeguard against malicious activities, TNT tokens are integral to Tangle's slashing protocols. These measures are designed to deter attacks and incentivize adherence to network protocols. +The Tangle Network's nominated proof-of-stake (nPoS) consensus mechanism requires TNT to be staked by validators to participate in validating blocks. Additionally, nominators can nominate their TNT to individual validators to participate in the rewards to that validator and increase that validator's tokens-at-stake. -**Governance Empowerment:** TNT holders wield governance power, enabling them to partake in pivotal network decisions through referenda. This democratic approach ensures that the Tangle Network evolves in alignment with its community's interests. +### Network Economics +Tangle Network dynamically mints or burns TNT tokens to reward consensus protocol participants like validators and nominators, partially fund its treasury, manage inflation, and ensure the network's economic stability. -Through the Substrate-standard proof-of-stake model, Tangle Network aims to foster a robust and secure ecosystem. Validators and nominators play a critical role, with validators facilitating block production and consensus, while nominators back their preferred validators, contributing to network integrity. +### ZK and MPC Operations -A considerable portion of TNT will be actively engaged in the network, either staked by validators and nominators for network security or utilized in the execution of ZK and MPC tasks. This not only ensures the network's resilience and security but also drives engagement and utility within the Tangle ecosystem. +TNT serves as the currency for transactions between job submitters and validators within the Tangle Network's ZK and MPC services. This facilitates seamless, secure, and efficient execution of complex computations and privacy-preserving operations. + +### Validator Restaking: + +Validators are required to restake TNT tokens to maintain their role in performing ZK and MPC services. This mechanism promotes ongoing commitment and participation in the network's core functionalities. + +### Slashing Mechanisms: + +To safeguard against malicious activities, TNT tokens are integral to Tangle's slashing protocols across consensus and the restaking system. These measures are designed to deter attacks and incentivize adherence to network protocols. +### Governance Empowerment: + +TNT holders wield governance power, enabling them to partake in pivotal network decisions through referenda. This democratic approach ensures that the Tangle Network evolves in alignment with its community's interests. + +--- + +A considerable portion of TNT will be actively engaged in the network, either staked by validators and nominators for network security or utilized in the execution of ZK and MPC tasks. This not only ensures the network's resilience and security but also drives engagement and utility within the Tangle ecosystem. From 36cc6cfd25b12a8016b717ddaa617ff7c5883e26 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 16:14:17 -0600 Subject: [PATCH 08/29] Moved launch page to top sidebar section. added sidebar seperators. created services page --- pages/docs/_meta.json | 10 ++++- pages/docs/launch.mdx | 21 ++++++++++ pages/docs/services.mdx | 66 ++++++++++++++++++++++++++++++++ pages/docs/tokenomics/_meta.json | 1 - 4 files changed, 96 insertions(+), 2 deletions(-) create mode 100644 pages/docs/launch.mdx create mode 100644 pages/docs/services.mdx diff --git a/pages/docs/_meta.json b/pages/docs/_meta.json index dbba113b..f474567a 100644 --- a/pages/docs/_meta.json +++ b/pages/docs/_meta.json @@ -2,13 +2,21 @@ "index": { "title": "Overview" }, + "launch": "Network Launch", "tokenomics": "Tokenomics", "usecases": "Use Cases", + "services": "Services", + "---": { + "type": "separator" + }, "network-information-configuration": "Network Configuration", "build": "Build", "node": "Node", - "use": "Use", + "use": "Basic Blockchain Interactions", "governance": "Govern", + "": { + "type": "separator" + }, "community": "Community", "faq": "FAQ", "glossary": "Glossary", diff --git a/pages/docs/launch.mdx b/pages/docs/launch.mdx new file mode 100644 index 00000000..8577439d --- /dev/null +++ b/pages/docs/launch.mdx @@ -0,0 +1,21 @@ +# Tangle Network Mainnet Launch + +## Launch Date + +- **Mainnet Activation**: Scheduled for April 10, 2024, Tangle Network will make its entrance as a fully operational NPoS network, virtually permissionless, decentralized and community governed from the start. Validators will be able to participate in validation on the 10th. + +## NPoS Launch and Operations + +- **NPoS Framework**: Upon launch, Tangle Network will adopt a Nominated Proof of Stake model as its foundational security mechanism. This allows TNT holders to engage directly in the network's security by nominating validators they trust to be responsible for block production and transaction validation. +- **Validator Participation**: Validators are essential to the network's integrity and performance from the very beginning. Potential validators are thus encouraged to prepare for their roles by learning to stake TNT tokens and signaling their commitment to maintaining network protocols. + +## Governance Activation + +- **Initial Governance**: Concurrent with the NPoS launch, governance modules will be activated, granting TNT holders the power to participate in decision-making processes through proposals, referenda, and council elections, ensuring a democratic approach to the network's development. +- **Webb's Sudo Key Role**: Initially, Webb, a core development team, will hold a Sudo key to ensure smooth operations and governance transitions. This temporary measure allows for efficient implementation of critical updates and decisions during the early stages of the network. +- **Sudo Key Deactivation**: A timeline is in place for deactivating the Sudo key, transitioning to a fully decentralized governance model. This significant step is expected to occur within the first few months after launch, with input from the token holders to affirm the network's readiness. + +## Core Functionality + +- **Balances and Transfers**: From launch day, TNT token balances will be active, with token transfer capabilities generally enabled to ensure liquidity and participation in the network's economy. **If you recieve tokens through the airdrop or other allocation processes, up to 95% of these may be subject to a lockup. [See the Allocation page for details.](allocation.mdx)** +- **Community Proposals for Additional Features**: Post-launch, the community will be empowered to propose and vote on activating additional core functionalities. This encompasses enhanced transaction types, new governance mechanisms, and network upgrades, among others. diff --git a/pages/docs/services.mdx b/pages/docs/services.mdx new file mode 100644 index 00000000..c20305f2 --- /dev/null +++ b/pages/docs/services.mdx @@ -0,0 +1,66 @@ +--- +title: Services on Tangle Network +--- + +# Services on Tangle Network + +Tangle Network provides developers with a suite of multi-party computation (MPC) services to power privacy-enhancing applications, cross-chain applications, and other complex cryptographically secure decentralized applications. By leveraging restaking, Tangle Network enables staked validators to provide these MPC services to paying developers over a decentralized network. + +![MPC User Flow](public/images/MPCaaS-flow.png) + +Through these services, Tangle Network aims to achieve the following for these developers: + +1. Reduced friction in deploying advanced cryptographic and zero-knowledge applications. +2. Expanded frontier of possible zero-knowledge application space through cross-chain interoperability and privacy-preserving tools. +3. Simplified APIs for interacting with zero-knowledge applications. +4. Outsourced proof generation and trusted setup generation, eliminating operational burdens. + +## Core Services: + +### Multi-Party Computation (MPC) + +#### Threshold Signing as a Service (TSSaaS) MPC +Signatures are pervasive in the design of blockchain bridges, oracles, and custody solutions. Tangle Network offers signature schemes as a service using threshold cryptography, enabling developers to build private and non-private cross-chain applications. + +Tangle currently supports several Threshold signature schemes: + +- DfnsCGGMP21Secp256k1 +- DfnsCGGMP21Secp256r1 +- DfnsCGGMP21Stark +- ZcashFrostP256 +- ZcashFrostP384 +- ZcashFrostSecp256k1 +- ZcashFrostEd25519 +- ZcashFrostEd448 +- ZcashFrostRistretto255 + +Use cases include bridges, oracles, interoperable shielded pools, and social and identity bridges. + +### Proof Generation + +#### zkSNARKs as a Service (zkSaaS) + +Proof generation is critical for maintaining privacy and implementation of complex cryptographic protocols within decentralized applications. Tangle's zkSnark service allows users to access proof generation functionality directly through the network. This allows developers to outsource the computationally expensive tasks to a privacy-preserving infrastructure. + +Tangle currently supports SGroth16 proofs ,and our targeted systems will include: + +- Groth16 +- PLONK +- Nova +- Halo2 +- Stark + +#### Trusted Setups as a Service (TaaS) + +Tangle Network streamlines the trusted setup process for zero-knowledge applications, reducing friction and enabling faster deployment to production. + +## Future Services: + +We're exploring the development of new privacy technologies for the future: + +- Witness generation +- Data storage and availability for privacy applications +- Private information retrieval as a service +- Threshold decryption as a service +- Sequencing as a service +- Randomness beacons diff --git a/pages/docs/tokenomics/_meta.json b/pages/docs/tokenomics/_meta.json index 4532e31b..fc1cfd1f 100644 --- a/pages/docs/tokenomics/_meta.json +++ b/pages/docs/tokenomics/_meta.json @@ -1,6 +1,5 @@ { "usage": "Token Overview and Utility", "allocation": "Allocation", - "launch": "Network Launch Timeline", "inflation": "Inflation" } From 5b0cecf925698539cea55b967e043627b0b434f9 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 16:14:31 -0600 Subject: [PATCH 09/29] removed old launch page location --- pages/docs/tokenomics/launch.mdx | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 pages/docs/tokenomics/launch.mdx diff --git a/pages/docs/tokenomics/launch.mdx b/pages/docs/tokenomics/launch.mdx deleted file mode 100644 index 8577439d..00000000 --- a/pages/docs/tokenomics/launch.mdx +++ /dev/null @@ -1,21 +0,0 @@ -# Tangle Network Mainnet Launch - -## Launch Date - -- **Mainnet Activation**: Scheduled for April 10, 2024, Tangle Network will make its entrance as a fully operational NPoS network, virtually permissionless, decentralized and community governed from the start. Validators will be able to participate in validation on the 10th. - -## NPoS Launch and Operations - -- **NPoS Framework**: Upon launch, Tangle Network will adopt a Nominated Proof of Stake model as its foundational security mechanism. This allows TNT holders to engage directly in the network's security by nominating validators they trust to be responsible for block production and transaction validation. -- **Validator Participation**: Validators are essential to the network's integrity and performance from the very beginning. Potential validators are thus encouraged to prepare for their roles by learning to stake TNT tokens and signaling their commitment to maintaining network protocols. - -## Governance Activation - -- **Initial Governance**: Concurrent with the NPoS launch, governance modules will be activated, granting TNT holders the power to participate in decision-making processes through proposals, referenda, and council elections, ensuring a democratic approach to the network's development. -- **Webb's Sudo Key Role**: Initially, Webb, a core development team, will hold a Sudo key to ensure smooth operations and governance transitions. This temporary measure allows for efficient implementation of critical updates and decisions during the early stages of the network. -- **Sudo Key Deactivation**: A timeline is in place for deactivating the Sudo key, transitioning to a fully decentralized governance model. This significant step is expected to occur within the first few months after launch, with input from the token holders to affirm the network's readiness. - -## Core Functionality - -- **Balances and Transfers**: From launch day, TNT token balances will be active, with token transfer capabilities generally enabled to ensure liquidity and participation in the network's economy. **If you recieve tokens through the airdrop or other allocation processes, up to 95% of these may be subject to a lockup. [See the Allocation page for details.](allocation.mdx)** -- **Community Proposals for Additional Features**: Post-launch, the community will be empowered to propose and vote on activating additional core functionalities. This encompasses enhanced transaction types, new governance mechanisms, and network upgrades, among others. From 666404b22ac9c221330c06dbf13f3ea1dd8a1523 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 16:14:53 -0600 Subject: [PATCH 10/29] updated path for image in alllocation --- pages/docs/tokenomics/allocation.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index bb337263..3e334c7e 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -12,7 +12,7 @@ import AllocationTable from 'components/AllocationTable.tsx'; Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. -![Allocation Pie Chart](/../public/images/allocation-pie-chart.png) +![Allocation Pie Chart](public/images/allocation-pie-chart.png) ### Vesting Schedules From 70ab31471ff12070e78b933a35aab2e31568707d Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 16:18:05 -0600 Subject: [PATCH 11/29] updated sidebar and typos --- pages/docs/_meta.json | 2 +- pages/docs/services.mdx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pages/docs/_meta.json b/pages/docs/_meta.json index f474567a..e26be1fe 100644 --- a/pages/docs/_meta.json +++ b/pages/docs/_meta.json @@ -12,7 +12,7 @@ "network-information-configuration": "Network Configuration", "build": "Build", "node": "Node", - "use": "Basic Blockchain Interactions", + "use": "Basics", "governance": "Govern", "": { "type": "separator" diff --git a/pages/docs/services.mdx b/pages/docs/services.mdx index c20305f2..2db96fcc 100644 --- a/pages/docs/services.mdx +++ b/pages/docs/services.mdx @@ -15,7 +15,7 @@ Through these services, Tangle Network aims to achieve the following for these d 3. Simplified APIs for interacting with zero-knowledge applications. 4. Outsourced proof generation and trusted setup generation, eliminating operational burdens. -## Core Services: +## Core Services ### Multi-Party Computation (MPC) @@ -54,7 +54,7 @@ Tangle currently supports SGroth16 proofs ,and our targeted systems will include Tangle Network streamlines the trusted setup process for zero-knowledge applications, reducing friction and enabling faster deployment to production. -## Future Services: +## Future Services We're exploring the development of new privacy technologies for the future: From c8da1f230670c980f9c9ffa9b5b436242a52a445 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 16:19:23 -0600 Subject: [PATCH 12/29] Pushing yarn configs --- package.json | 6 ++- yarn.lock | 120 ++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 118 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index c44cec6f..1813b753 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@mdx-js/react": "^2.2.1", "@react-aria/ssr": "3.4.0", "@sentry/nextjs": "^7.27.0", + "@types/styled-components": "^5.1.34", "@vercel/analytics": "^0.1.6", "axios": "0.27.2", "classnames": "2.3.2", @@ -42,6 +43,7 @@ "rehype-katex": "5.0.0", "remark-math": "4.0.0", "sharp": "^0.31.3", + "styled-components": "^6.1.8", "swr": "1.3.0" }, "devDependencies": { @@ -69,7 +71,9 @@ "files": "*.mdx", "options": { "parser": "mdx", - "plugins": ["prettier/parser-babel"] + "plugins": [ + "prettier/parser-babel" + ] } } ] diff --git a/yarn.lock b/yarn.lock index 21cc9011..0005ccf7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -203,6 +203,13 @@ resolved "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz#923ca57e173c6b232bbbb07347b1be982f03e783" integrity sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A== +"@emotion/is-prop-valid@1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" + "@emotion/is-prop-valid@^0.8.2": version "0.8.8" resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz" @@ -215,6 +222,16 @@ resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz" integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== + +"@emotion/unitless@0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.0.tgz#a4a36e9cbdc6903737cd20d38033241e1b8833db" + integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== + "@eslint/eslintrc@^1.3.3": version "1.4.1" resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz" @@ -776,6 +793,14 @@ dependencies: "@types/unist" "*" +"@types/hoist-non-react-statics@*": + version "3.3.5" + resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz#dab7867ef789d87e2b4b0003c9d65c49cc44a494" + integrity sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg== + dependencies: + "@types/react" "*" + hoist-non-react-statics "^3.3.0" + "@types/js-cookie@^2.2.6": version "2.2.7" resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz" @@ -850,6 +875,15 @@ resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz" integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== +"@types/react@*": + version "18.2.64" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.64.tgz#3700fbb6b2fa60a6868ec1323ae4cbd446a2197d" + integrity sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + "@types/react@18.0.26", "@types/react@>=16": version "18.0.26" resolved "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz" @@ -864,6 +898,20 @@ resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz" integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== +"@types/styled-components@^5.1.34": + version "5.1.34" + resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-5.1.34.tgz#4107df8ef8a7eaba4fa6b05f78f93fba4daf0300" + integrity sha512-mmiVvwpYklFIv9E8qfxuPyIt/OuyIrn6gMOAMOFUO3WJfSrSE+sGUoa4PiZj77Ut7bKZpaa6o1fBKS/4TOEvnA== + dependencies: + "@types/hoist-non-react-statics" "*" + "@types/react" "*" + csstype "^3.0.2" + +"@types/stylis@4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/stylis/-/stylis-4.2.0.tgz#199a3f473f0c3a6f6e4e1b17cdbc967f274bdc6b" + integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== + "@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": version "2.0.6" resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" @@ -1356,6 +1404,11 @@ camelcase@^1.0.2: resolved "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz" integrity sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g== +camelize@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" + integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== + caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001449: version "1.0.30001570" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz" @@ -1682,6 +1735,11 @@ cross-spawn@^7.0.2: shebang-command "^2.0.0" which "^2.0.1" +css-color-keywords@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== + css-in-js-utils@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz" @@ -1689,6 +1747,15 @@ css-in-js-utils@^3.1.0: dependencies: hyphenate-style-name "^1.0.3" +css-to-react-native@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.2.0.tgz#cdd8099f71024e149e4f6fe17a7d46ecd55f1e32" + integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== + dependencies: + camelize "^1.0.0" + css-color-keywords "^1.0.0" + postcss-value-parser "^4.0.2" + css-tree@^1.1.2: version "1.1.3" resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz" @@ -1707,6 +1774,11 @@ csstype@3.1.1, csstype@^3.0.2, csstype@^3.0.6: resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== +csstype@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== + cytoscape-cose-bilkent@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz#762fa121df9930ffeb51a495d87917c570ac209b" @@ -3306,7 +3378,7 @@ hey-listen@^1.0.8: resolved "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz" integrity sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q== -hoist-non-react-statics@^3.3.2: +hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: version "3.3.2" resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -5331,7 +5403,7 @@ postcss-selector-parser@^6.0.10: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0: +postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, 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== @@ -5354,6 +5426,15 @@ postcss@8.4.20: picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@8.4.31: + version "8.4.31" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + postcss@^8.4.18: version "8.4.23" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz" @@ -5921,6 +6002,11 @@ set-harmonic-interval@^1.0.1: resolved "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz" integrity sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g== +shallowequal@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + sharp@^0.31.3: version "0.31.3" resolved "https://registry.npmjs.org/sharp/-/sharp-0.31.3.tgz" @@ -6252,6 +6338,21 @@ style-to-object@^0.4.1: dependencies: inline-style-parser "0.1.1" +styled-components@^6.1.8: + version "6.1.8" + resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-6.1.8.tgz#c109d36aeea52d8f049e12de2f3be39a6fc86201" + integrity sha512-PQ6Dn+QxlWyEGCKDS71NGsXoVLKfE1c3vApkvDYS5KAK+V8fNWGhbSUEo9Gg2iaID2tjLXegEW3bZDUGpofRWw== + dependencies: + "@emotion/is-prop-valid" "1.2.1" + "@emotion/unitless" "0.8.0" + "@types/stylis" "4.2.0" + css-to-react-native "3.2.0" + csstype "3.1.2" + postcss "8.4.31" + shallowequal "1.1.0" + stylis "4.3.1" + tslib "2.5.0" + styled-jsx@5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz" @@ -6259,6 +6360,11 @@ styled-jsx@5.1.1: dependencies: client-only "0.0.1" +stylis@4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.1.tgz#ed8a9ebf9f76fe1e12d462f5cc3c4c980b23a7eb" + integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== + stylis@^4.0.6: version "4.1.3" resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz" @@ -6491,16 +6597,16 @@ tslib@2.4.0: resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== +tslib@2.5.0, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + tslib@^1.8.1, tslib@^1.9.3: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== - tsutils@^3.21.0: version "3.21.0" resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz" From 90071cec26d0669113331f1af0d061c10483c3d0 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 17:00:08 -0600 Subject: [PATCH 13/29] adding services, restaking and job provision guides under Services --- pages/docs/services/_meta.json | 4 + pages/docs/services/service-provider.mdx | 174 +++++++++++++++++++++++ pages/docs/{ => services}/services.mdx | 0 3 files changed, 178 insertions(+) create mode 100644 pages/docs/services/_meta.json create mode 100644 pages/docs/services/service-provider.mdx rename pages/docs/{ => services}/services.mdx (100%) diff --git a/pages/docs/services/_meta.json b/pages/docs/services/_meta.json new file mode 100644 index 00000000..21ac59c0 --- /dev/null +++ b/pages/docs/services/_meta.json @@ -0,0 +1,4 @@ +{ + "services": "MPC and ZK Services", + "service-provider": "Provide Services" +} \ No newline at end of file diff --git a/pages/docs/services/service-provider.mdx b/pages/docs/services/service-provider.mdx new file mode 100644 index 00000000..31f97f72 --- /dev/null +++ b/pages/docs/services/service-provider.mdx @@ -0,0 +1,174 @@ +# Validator Restaking and Job Provision + +## 1. Introduction + +This guide will help you understand the concept of restaking, the various roles available, and how to maximize their earnings through active participation in the Tangle network. + +Restaking is a unique feature of the Tangle network that allows validators to commit their staked Tangle Native Tokens (TNT) to additional roles beyond the initial validation responsibilities. By restaking, validators can contribute to the network's security, efficiency, and growth while earning rewards for their efforts. + +## 2. Understanding Restaking on Tangle + +### What is Restaking? + +Restaking is the process of allocating a portion of a validator's staked TNT to specific roles within the Tangle network. These roles include Threshold Signature Scheme (TSS) and Zero-Knowledge Proofs as a Service (ZkSaaS) roles, which are crucial for maintaining the network's integrity and supporting advanced features like privacy-preserving transactions. + +By restaking, validators demonstrate their long-term commitment to the network and align their incentives with its performance and growth. Restaking offers flexibility and additional opportunities for validators to earn rewards while contributing to the network's overall health. + +## 3. Validator Roles and Responsibilities + +By opting into various roles through restaking, validators can contribute to different aspects of the network. + +### TSS Roles + +Threshold Signature Scheme (TSS) roles involve participating in collective signing processes to secure multi-signature transactions and contracts. Validators can opt into the following TSS roles: + +- DfnsCGGMP21Secp256k1 +- DfnsCGGMP21Secp256r1 +- DfnsCGGMP21Stark +- ZcashFrostP256 +- ZcashFrostP384 +- ZcashFrostSecp256k1 +- ZcashFrostEd25519 +- ZcashFrostEd448 +- ZcashFrostRistretto255 + +Validators in TSS roles are responsible for collaborating with other validators to generate and manage shared keys, ensuring the security and integrity of multi-signature operations. + +### ZkSaaS Roles + +Zero-Knowledge Proofs as a Service (ZkSaaS) roles require validators to provide computational resources for generating zero-knowledge proofs, enabling private and scalable transactions on the Tangle Blockchain. The main ZkSaaS role is: + +- ZkSaaSGroth16 + +Validators in ZkSaaS roles contribute their computing power to generate zero-knowledge proofs, facilitating privacy-preserving transactions and enhancing the network's scalability. + +### Responsibilities for Each Role + +Regardless of the specific role, all validators are expected to: + +- Maintain high availability and uptime to ensure the network's smooth operation +- Actively participate in the consensus mechanism and fulfill their validation duties +- Perform role-specific tasks, such as collaborating in TSS or generating zero-knowledge proofs +- Stay updated with network upgrades and adhere to best practices for security and performance + +By fulfilling these responsibilities, validators contribute to the overall health, security, and efficiency of the Tangle Blockchain. + +## 4. Restaking Mechanisms + +### Maximum Restake Amount + +Currently, validators can restake up to 50% of their initially staked TNT for participating in additional roles. This limit ensures a balance between the network's security needs and the flexibility for validators to engage in various functions. + +### Independent vs. Shared Restaking + +Validators have two options when it comes to restaking: + +1. **Independent Restaking**: Validators can allocate specific amounts of TNT to different roles, tailoring their risk and reward distribution according to their preferences and strategies. This approach allows for more granular control over the allocation of staked TNT. + +2. **Shared Restaking**: Validators can choose to distribute a single restake amount across multiple roles. This simplifies stake management and potentially diversifies risk by participating in various roles simultaneously. + +### Process for Opting into Roles and Restaking TNT + +To opt into roles and restake TNT, validators should follow these steps: + +1. **Evaluate Roles**: Carefully consider the available TSS and ZkSaaS roles and assess their technological requirements, potential rewards, and risks. + +2. **Restaking Decision**: Decide between independent and shared restaking based on your preferred strategy and risk tolerance. + +3. **Restake Execution**: Allocate TNT to the selected roles through the Tangle Blockchain's interface using the appropriate dispatchable calls (detailed in Section 7). + +## 5. Economic Incentives and Rewards + +The Tangle Blockchain employs a comprehensive rewards system to incentivize validators for their active participation and contributions to the network. + +### Rewards System Breakdown + +Validator rewards are calculated based on two main factors: + +1. **Active Validator Rewards (50%)**: Rewards for validators who have completed jobs in the current era. + - The total jobs completed (TJC) by all active validators are calculated. + - Each validator's share (VS) of the rewards is determined by the proportion of their completed jobs relative to the TJC. + - The validator reward (VR) is computed as: VR = VS × Total Rewards + +2. **Validator Rewards by Restake (50%)**: Rewards for validators based on their restaked amount. + - The total restake (TR) in the system is calculated by summing all validators' restaked amounts. + - The restake-to-stake ratio (RSR) is computed as: RSR = TR / Total Stake in the Era + - The missing restake ratio (MRR) is calculated as: MRR = Maximum Restake Ratio - RSR + - The adjusted total rewards (ATR) are computed based on the MRR to ensure proper reward distribution. + - Each validator's reward share (RS) is determined by their restaked amount relative to the TR. + - The final reward for each validator is calculated as: Reward = RS × ATR + +#### Example Reward Calculation + +Let's consider an example in era 100, with 20 restakers and a total role reward of 1000 TNT: + +- **Active Validator Rewards**: + - 10 restakers have completed 5 jobs each. + - 50% of the 1000 TNT (500 TNT) is equally divided among the 10 active restakers. + - If one restaker had completed more jobs than the others, they would receive a larger share of the rewards. + +- **Rewards by Restake**: + - The remaining 50% of the 1000 TNT (500 TNT) is distributed among all restakers based on their restaked amount. + - If a restaker has restaked 100 TNT out of a total restake of 1000 TNT, they are eligible for 10% of the rewards. + - The rewards are adjusted based on the total restake relative to the total stake in the system. + +### Capital Efficiency and Reward Optimization + +Restaking allows validators to earn rewards from multiple roles without requiring additional capital. This mechanism encourages efficient stake allocation and active participation in the network. By strategically allocating their staked TNT to various roles, validators can optimize their potential rewards while contributing to the network's security and functionality. + +## 6. Risks and Mitigation Strategies + +While restaking offers validators the opportunity to earn additional rewards, it is essential to be aware of the potential risks involved. + +### Slashing Risks + +Validators who fail to fulfill their responsibilities or engage in malicious behavior may be subject to slashing penalties. Slashing involves the loss of a portion of the validator's staked and restaked TNT. To mitigate slashing risks, validators should: + +- Maintain high availability and uptime +- Adhere to the network's rules and protocols +- Regularly monitor their validator nodes and address any issues promptly + +### Centralization Risks + +If a significant portion of the network's staked TNT is concentrated among a few validators, it could lead to centralization risks. To mitigate these risks, the Tangle Blockchain has implemented a maximum restake amount limit and encourages a diverse set of validators to participate in the network. + +### Yield Risks + +The rewards earned through restaking may vary depending on factors such as network activity, total staked TNT, and the number of validators participating in each role. Validators should be aware of the potential fluctuations in rewards and make informed decisions when allocating their staked TNT to different roles. + +## 7. Dispatchable Calls and Validator Management + +The Tangle Blockchain provides a set of dispatchable calls for validators to manage their profiles, opt into roles, and perform various actions related to restaking and job provision. + +### Dispatchable Calls for Validators + +- `create_profile`: Allows validators to create a profile, specifying the roles they want to participate in and the restaking amounts for each role. Profiles can be shared or independent, and the total restaking amount should meet minimum requirements. + +- `update_profile`: Enables validators to update their profiles, adjusting restaking amounts for roles. The update operation ensures that the new restaking amounts meet the minimum requirements and do not exceed the maximum allowed. + +- `delete_profile`: Allows validators to submit a request to delete their profile, initiating the process to exit from all services. This operation fails if there are pending jobs associated with the roles. + +- `chill`: Enables validators to declare no desire to validate or nominate, effectively opting out of all roles and services. + +- `unbond_funds`: Allows validators to unbond funds. These operations are only allowed when the validator has no active roles. + +- `withdraw_unbonded`: Enables validators to withdraw unbonded funds after a certain period. These operations are only allowed when the validator has no active roles. + +*Detailed examples and technical steps for each call will be provided in the technical documentation.* + +### Best Practices for Managing Validator Profiles + +To effectively manage their profiles and optimize their participation in the Tangle Blockchain, validators should: + +- Regularly review and adjust TNT allocations to optimize for reward potential and adhere to network updates. +- Monitor the network's performance and adapt their restaking strategies accordingly. +- Keep their validator nodes updated with the latest software versions and security patches. +- Participate in the Tangle community and stay informed about upcoming changes and improvements to the network. + +By following these best practices, validators can ensure a smooth and profitable experience while contributing to the overall health and growth of the Tangle Blockchain. + +## 8. Conclusion + +Restaking and job provision on the Tangle Blockchain offer validators exciting opportunities to earn additional rewards, contribute to the network's security and efficiency, and support advanced features like privacy-preserving transactions. By understanding the various roles, restaking mechanisms, and economic incentives, validators can make informed decisions and optimize their participation in the network. + +As a validator on the Tangle Blockchain, you play a crucial role in the network's success and growth. By actively participating in restaking and job provision, you can maximize your rewards, contribute to the network's security and functionality, and be a part of the exciting journey towards a more efficient, privacy-focused, and decentralized future. \ No newline at end of file diff --git a/pages/docs/services.mdx b/pages/docs/services/services.mdx similarity index 100% rename from pages/docs/services.mdx rename to pages/docs/services/services.mdx From 0ab706720bea20b477578416e5f3fc1210264367 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 21:51:20 -0600 Subject: [PATCH 14/29] fixed broken paths --- pages/docs/launch.mdx | 2 +- pages/docs/services/services.mdx | 2 +- pages/docs/tokenomics/allocation.mdx | 2 +- pages/docs/tokenomics/inflation.mdx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pages/docs/launch.mdx b/pages/docs/launch.mdx index 8577439d..33746f45 100644 --- a/pages/docs/launch.mdx +++ b/pages/docs/launch.mdx @@ -17,5 +17,5 @@ ## Core Functionality -- **Balances and Transfers**: From launch day, TNT token balances will be active, with token transfer capabilities generally enabled to ensure liquidity and participation in the network's economy. **If you recieve tokens through the airdrop or other allocation processes, up to 95% of these may be subject to a lockup. [See the Allocation page for details.](allocation.mdx)** +- **Balances and Transfers**: From launch day, TNT token balances will be active, with token transfer capabilities generally enabled to ensure liquidity and participation in the network's economy. **If you recieve tokens through the airdrop or other allocation processes, up to 95% of these may be subject to a lockup. [See the Allocation page for details.](/docs/tokenomics/allocation)** - **Community Proposals for Additional Features**: Post-launch, the community will be empowered to propose and vote on activating additional core functionalities. This encompasses enhanced transaction types, new governance mechanisms, and network upgrades, among others. diff --git a/pages/docs/services/services.mdx b/pages/docs/services/services.mdx index 2db96fcc..778c1811 100644 --- a/pages/docs/services/services.mdx +++ b/pages/docs/services/services.mdx @@ -6,7 +6,7 @@ title: Services on Tangle Network Tangle Network provides developers with a suite of multi-party computation (MPC) services to power privacy-enhancing applications, cross-chain applications, and other complex cryptographically secure decentralized applications. By leveraging restaking, Tangle Network enables staked validators to provide these MPC services to paying developers over a decentralized network. -![MPC User Flow](public/images/MPCaaS-flow.png) +![MPC User Flow](/images/MPCaaS-flow.png) Through these services, Tangle Network aims to achieve the following for these developers: diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index 3e334c7e..bb1da838 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -12,7 +12,7 @@ import AllocationTable from 'components/AllocationTable.tsx'; Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. -![Allocation Pie Chart](public/images/allocation-pie-chart.png) +![Allocation Pie Chart](/images/allocation-pie-chart.png) ### Vesting Schedules diff --git a/pages/docs/tokenomics/inflation.mdx b/pages/docs/tokenomics/inflation.mdx index da400913..b5a22771 100644 --- a/pages/docs/tokenomics/inflation.mdx +++ b/pages/docs/tokenomics/inflation.mdx @@ -34,7 +34,7 @@ The rate at which rewards are paid out relative to the amount staked, adjusted b - **Inflation Rate ($I$)**: Calculated based on several factors, including rewards for NPoS participation, treasury funding, penalties, and transaction fees. The goal is to balance inflation with network security and operational needs. - **Adjustable Parameters**: The model includes variables like the ideal interest rate ($i_{ideal}$) and inflation limits that can be tuned to manage the network's economic dynamics effectively. -![Inflation](public/images/desmos-graph.png) +![Inflation](/images/desmos-graph.png) ## Reward Distribution Mechanism From 914995753cd18057bbff6ee942ceccc72c997d1e Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Wed, 6 Mar 2024 21:54:10 -0600 Subject: [PATCH 15/29] ran prettier --- pages/docs/build/integrate.mdx | 43 +++++++++++------------- pages/docs/services/_meta.json | 6 ++-- pages/docs/services/service-provider.mdx | 6 ++-- pages/docs/services/services.mdx | 21 ++++++------ pages/docs/tokenomics/allocation.mdx | 20 +++++------ pages/docs/tokenomics/inflation.mdx | 8 +++-- pages/docs/tokenomics/usage.mdx | 8 ++--- 7 files changed, 57 insertions(+), 55 deletions(-) diff --git a/pages/docs/build/integrate.mdx b/pages/docs/build/integrate.mdx index b425b0b2..1065098f 100644 --- a/pages/docs/build/integrate.mdx +++ b/pages/docs/build/integrate.mdx @@ -1,27 +1,24 @@ # Integrating with Tangle Network -This guide provides essential information required for integrating with Tangle Network. - - ## Integration Resources -| Category | Details | -|--------------------------|----------------------------------------------------| -| **Blockchain Name** | Tangle Network | -| **Blockchain Type** | Substrate with EVM compatibility via Frontier | -| WebSocket RPC Endpoint** | `wss://rpc.tangle.tools` | -| **HTTP RPC Endpoint** | `http://rpc.tangle.tools` | -| **Chain ID** | 5845 | -| **Address Prefix** | `tg` | -| **Network** | `tangle` | -| **Symbols** | `TNT` | -| **Decimals** | `18` | -| **Standard Account** | `*25519` | -| **Website** | https://www.tangle.tools/ | -| **EVM Block Explorer** | https://testnet-explorer.tangle.tools/ | -| **Runtime Types** | https://github.com/webb-tools/tangle/blob/main/types/src/interfaces/lookup.ts | -| **Substrate Block Explorer** | Coming soon. | -| **Polkadot Apps** | https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftestnet-rpc.tangle.tools#/explorer | -| **Node Telemetry** | https://telemetry.polkadot.io/#/0x3d22af97d919611e03bbcbda96f65988758865423e89b2d99547a6bb61452db3 | -| **Whitepaper** | https://github.com/webb-tools/tangle/blob/main/Tangle_Network_Whitepaper-VerrsFeb282024.pdf | -| **Github Repo**. | https://github.com/webb-tools/tangle | +| Category | Details | +| ---------------------------- | -------------------------------------------------------------------------------------------------- | +| **Blockchain Name** | Tangle Network | +| **Blockchain Type** | Substrate with EVM compatibility via Frontier | +| WebSocket RPC Endpoint\*\* | `wss://rpc.tangle.tools` | +| **HTTP RPC Endpoint** | `http://rpc.tangle.tools` | +| **Chain ID** | 5845 | +| **Address Prefix** | `tg` | +| **Network** | `tangle` | +| **Symbols** | `TNT` | +| **Decimals** | `18` | +| **Standard Account** | `*25519` | +| **Website** | https://www.tangle.tools/ | +| **EVM Block Explorer** | https://testnet-explorer.tangle.tools/ | +| **Runtime Types** | https://github.com/webb-tools/tangle/blob/main/types/src/interfaces/lookup.ts | +| **Substrate Block Explorer** | Coming soon. | +| **Polkadot Apps** | https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftestnet-rpc.tangle.tools#/explorer | +| **Node Telemetry** | https://telemetry.polkadot.io/#/0x3d22af97d919611e03bbcbda96f65988758865423e89b2d99547a6bb61452db3 | +| **Whitepaper** | https://github.com/webb-tools/tangle/blob/main/Tangle_Network_Whitepaper-VerrsFeb282024.pdf | +| **Github Repo**. | https://github.com/webb-tools/tangle | diff --git a/pages/docs/services/_meta.json b/pages/docs/services/_meta.json index 21ac59c0..a849ea52 100644 --- a/pages/docs/services/_meta.json +++ b/pages/docs/services/_meta.json @@ -1,4 +1,4 @@ { - "services": "MPC and ZK Services", - "service-provider": "Provide Services" -} \ No newline at end of file + "services": "MPC and ZK Services", + "service-provider": "Provide Services" +} diff --git a/pages/docs/services/service-provider.mdx b/pages/docs/services/service-provider.mdx index 31f97f72..610b3fcf 100644 --- a/pages/docs/services/service-provider.mdx +++ b/pages/docs/services/service-provider.mdx @@ -86,6 +86,7 @@ The Tangle Blockchain employs a comprehensive rewards system to incentivize vali Validator rewards are calculated based on two main factors: 1. **Active Validator Rewards (50%)**: Rewards for validators who have completed jobs in the current era. + - The total jobs completed (TJC) by all active validators are calculated. - Each validator's share (VS) of the rewards is determined by the proportion of their completed jobs relative to the TJC. - The validator reward (VR) is computed as: VR = VS × Total Rewards @@ -103,6 +104,7 @@ Validator rewards are calculated based on two main factors: Let's consider an example in era 100, with 20 restakers and a total role reward of 1000 TNT: - **Active Validator Rewards**: + - 10 restakers have completed 5 jobs each. - 50% of the 1000 TNT (500 TNT) is equally divided among the 10 active restakers. - If one restaker had completed more jobs than the others, they would receive a larger share of the rewards. @@ -154,7 +156,7 @@ The Tangle Blockchain provides a set of dispatchable calls for validators to man - `withdraw_unbonded`: Enables validators to withdraw unbonded funds after a certain period. These operations are only allowed when the validator has no active roles. -*Detailed examples and technical steps for each call will be provided in the technical documentation.* +_Detailed examples and technical steps for each call will be provided in the technical documentation._ ### Best Practices for Managing Validator Profiles @@ -171,4 +173,4 @@ By following these best practices, validators can ensure a smooth and profitable Restaking and job provision on the Tangle Blockchain offer validators exciting opportunities to earn additional rewards, contribute to the network's security and efficiency, and support advanced features like privacy-preserving transactions. By understanding the various roles, restaking mechanisms, and economic incentives, validators can make informed decisions and optimize their participation in the network. -As a validator on the Tangle Blockchain, you play a crucial role in the network's success and growth. By actively participating in restaking and job provision, you can maximize your rewards, contribute to the network's security and functionality, and be a part of the exciting journey towards a more efficient, privacy-focused, and decentralized future. \ No newline at end of file +As a validator on the Tangle Blockchain, you play a crucial role in the network's success and growth. By actively participating in restaking and job provision, you can maximize your rewards, contribute to the network's security and functionality, and be a part of the exciting journey towards a more efficient, privacy-focused, and decentralized future. diff --git a/pages/docs/services/services.mdx b/pages/docs/services/services.mdx index 778c1811..5d49a659 100644 --- a/pages/docs/services/services.mdx +++ b/pages/docs/services/services.mdx @@ -20,18 +20,19 @@ Through these services, Tangle Network aims to achieve the following for these d ### Multi-Party Computation (MPC) #### Threshold Signing as a Service (TSSaaS) MPC + Signatures are pervasive in the design of blockchain bridges, oracles, and custody solutions. Tangle Network offers signature schemes as a service using threshold cryptography, enabling developers to build private and non-private cross-chain applications. -Tangle currently supports several Threshold signature schemes: +Tangle currently supports several Threshold signature schemes: -- DfnsCGGMP21Secp256k1 -- DfnsCGGMP21Secp256r1 -- DfnsCGGMP21Stark -- ZcashFrostP256 -- ZcashFrostP384 -- ZcashFrostSecp256k1 -- ZcashFrostEd25519 -- ZcashFrostEd448 +- DfnsCGGMP21Secp256k1 +- DfnsCGGMP21Secp256r1 +- DfnsCGGMP21Stark +- ZcashFrostP256 +- ZcashFrostP384 +- ZcashFrostSecp256k1 +- ZcashFrostEd25519 +- ZcashFrostEd448 - ZcashFrostRistretto255 Use cases include bridges, oracles, interoperable shielded pools, and social and identity bridges. @@ -44,7 +45,7 @@ Proof generation is critical for maintaining privacy and implementation of compl Tangle currently supports SGroth16 proofs ,and our targeted systems will include: -- Groth16 +- Groth16 - PLONK - Nova - Halo2 diff --git a/pages/docs/tokenomics/allocation.mdx b/pages/docs/tokenomics/allocation.mdx index bb1da838..915e6da2 100644 --- a/pages/docs/tokenomics/allocation.mdx +++ b/pages/docs/tokenomics/allocation.mdx @@ -7,15 +7,14 @@ tags: import AllocationTable from 'components/AllocationTable.tsx'; - ### Overview: Genesis Allocations -Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. +Observing successful networks as a benchmark, Tangle Network has tailored its genesis allocation to meet its unique needs and goals. ![Allocation Pie Chart](/images/allocation-pie-chart.png) - ### Vesting Schedules + Vesting schedules in Tangle Network are designed to promote long-term commitment and ensure a phased distribution of tokens. The network adopts a structured vesting strategy with distinct categories: **A-Vesting:** This category is characterized by a vesting period of 2 years, with a 12-month cliff. This means that no tokens are released in the first year. After completing the first year (the cliff period), the tokens allocated for that year become immediately available in full. The remainder of the allocation is then distributed monthly in equal 1/12 increments over the second year, facilitating a gradual release of tokens. This approach aligns with the policy of Immediate Vesting Post-Cliff with Retroactive Accumulation. @@ -24,9 +23,6 @@ Vesting schedules in Tangle Network are designed to promote long-term commitment **C-Vesting:** This vesting category is tailored for airdrop participants, featuring a 2-year vesting period with a notably short cliff of just 1 month. A predefined percentage of tokens becomes immediately available at the start. Subsequent to the cliff period, the remaining tokens are distributed on a monthly basis, ensuring a consistent flow of tokens into circulation. This strategy also follows the Immediate Vesting Post-Cliff with Retroactive Accumulation policy, aiming to reward early supporters while promoting long-term holding. - - - ### Detailed Allocation Overview The Tangle Network's allocation model is designed to support our foundational structures, incentivize community participation, and ensure long-term sustainability and success: @@ -37,39 +33,43 @@ The Tangle Network's allocation model is designed to support our foundational st - - # Token Allocation and Vesting Schedule Formulas This section outlines the formulas used to calculate various aspects of our token allocation and vesting schedules, presented in a way that's compatible with Markdown rendering. ### Initial Liquid Tokens + ```plaintext =Total_Tokens_Allocated * Immediate_Liquidity_Percentage ``` + **Description:** Calculates the number of tokens that are immediately liquid and available at launch, based on the total tokens allocated to an entity and the percentage designated as immediately liquid. ### Cliff-Release Tokens (for entities with a retroactive vesting cliff) + ```plaintext =Total_Tokens_Allocated * (Cliff_Duration / Total_Vesting_Period) ``` + **Description:** For allocations with a retroactive vesting cliff, this calculates the number of tokens released at the end of the cliff period, based on the total allocation and the proportion of the vesting period represented by the cliff. ### Monthly Vesting Rate (for entities with post-cliff monthly vesting) + ```plaintext =(Total_Tokens_Allocated - Initial_Liquid_Tokens - Cliff_Release_Tokens) / (Vesting_Period - Cliff_Duration) ``` -**Description:** Determines the monthly rate at which tokens vest after the cliff period, considering the total tokens allocated minus any initially liquid tokens and tokens released at the cliff, divided by the remaining months of the vesting period. +**Description:** Determines the monthly rate at which tokens vest after the cliff period, considering the total tokens allocated minus any initially liquid tokens and tokens released at the cliff, divided by the remaining months of the vesting period. ### Special Considerations + For entities without a vesting plan (e.g., Treasury, Foundation) **Entire allocation is considered liquid at launch,** though it is only utilized through governance and so not 'liquid' in the traditional tokenomic sense. + ```plaintext =Total_Tokens_Allocated ``` - ## Definitions 1. **Allocation Category**: A grouping used to categorize the distribution of tokens or shares within a project or organization, typically indicating the purpose or recipient of the allocation. diff --git a/pages/docs/tokenomics/inflation.mdx b/pages/docs/tokenomics/inflation.mdx index b5a22771..b59b580c 100644 --- a/pages/docs/tokenomics/inflation.mdx +++ b/pages/docs/tokenomics/inflation.mdx @@ -12,17 +12,19 @@ Tangle Network utilizes a Nominated Proof of Stake (NPoS) system to secure its n ## Inflation Model Simplified -- **Staking Rate:** +- **Staking Rate:** ($$x$$) Represents the proportion of total TNT supply that is staked in the NPoS system. -- **Ideal Staking Rate** + +- **Ideal Staking Rate** ($$\chi_{\text{ideal}}$$) The target staking rate Tangle Network aims to achieve for optimal security and liquidity balance. -- **Yearly Interest Rate:** + +- **Yearly Interest Rate:** ($$i(x)$$) diff --git a/pages/docs/tokenomics/usage.mdx b/pages/docs/tokenomics/usage.mdx index 3c9dab24..fb078345 100644 --- a/pages/docs/tokenomics/usage.mdx +++ b/pages/docs/tokenomics/usage.mdx @@ -2,10 +2,10 @@ The Tangle Network's native token is TNT, critical for the capabilities in Zero-Knowledge (ZK) and Multiparty Computation (MPC) as-a-service. TNT also underpins the entire ecosystem's operation and governance. -| Token Name | Symbol | Decimal Places | -|-----------------------------------|--------|----------------| -| Tangle Network Token | TNT | 18 | -| Testnet Tangle Network Token | tTNT | 18 | +| Token Name | Symbol | Decimal Places | +| ---------------------------- | ------ | -------------- | +| Tangle Network Token | TNT | 18 | +| Testnet Tangle Network Token | tTNT | 18 | ## Usage Cases From ee86d96f5f6ad7c3c50e5c3faa3b47752443b864 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Thu, 7 Mar 2024 16:04:23 -0600 Subject: [PATCH 16/29] Updated allocaton to match code re treasury --- components/AllocationTable.tsx | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/components/AllocationTable.tsx b/components/AllocationTable.tsx index aca8514f..8a3543d3 100644 --- a/components/AllocationTable.tsx +++ b/components/AllocationTable.tsx @@ -70,15 +70,15 @@ export default function AllocationTable() { Contributors Webb (Developer) - 29.93% + 28.56% B-Vesting 12 24 5% - 1,424,500.00 - 13,532,750.00 - 2,255,458.33 - 28,490,000.00 + 1,356,250.00 + 12,884,375.00 + 2,147,395.83 + 27,125,000.00 Contributors @@ -95,7 +95,7 @@ export default function AllocationTable() { Contributors - Indiv. Contributors + Indiv. Webb Contributors 1.44% B-Vesting 12 @@ -110,16 +110,16 @@ export default function AllocationTable() { Contributors Subtotal - 45.00% + 43.64% - 1,496,250.00 + 1,428,000.00 - 43,565,000.00 + 42,200,000.00 Governance-Managed Treasury - 35.00% + 36.36% n/a n/a n/a @@ -127,7 +127,7 @@ export default function AllocationTable() { n/a n/a n/a - 35,000,000.00 + 36,360,000.00 Governance-Managed @@ -146,9 +146,9 @@ export default function AllocationTable() { Governance-Managed Subtotal - 50% + 51% - 50,000,000.00 + 51,360,000.00 Airdrops From 56b0dfdde8dac424ec3ec1e8b278872ca6e9b564 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Thu, 7 Mar 2024 16:05:40 -0600 Subject: [PATCH 17/29] fixed totals --- components/AllocationTable.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/components/AllocationTable.tsx b/components/AllocationTable.tsx index 8a3543d3..bfca2b6d 100644 --- a/components/AllocationTable.tsx +++ b/components/AllocationTable.tsx @@ -217,7 +217,9 @@ export default function AllocationTable() { Total Supply 100% - + + 1,678,000.00 + 100,000,000.00 From 2fa881707e5a6a6218a41fb2d79eeb048e7a2345 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Thu, 7 Mar 2024 16:36:05 -0600 Subject: [PATCH 18/29] updated nextra and fixed seperator syntax in sidebar, eliminated zero width space error --- pages/docs/_meta.json | 73 ++- yarn.lock | 1178 ++++++++++++++++++++--------------------- 2 files changed, 627 insertions(+), 624 deletions(-) diff --git a/pages/docs/_meta.json b/pages/docs/_meta.json index e26be1fe..939666dc 100644 --- a/pages/docs/_meta.json +++ b/pages/docs/_meta.json @@ -1,28 +1,69 @@ { "index": { - "title": "Overview" + "title": "Overview", + "type": "doc" + }, + "launch": { + "title": "Network Launch", + "type": "doc" + }, + "tokenomics": { + "title": "Tokenomics", + "type": "doc" + }, + "usecases": { + "title": "Use Cases", + "type": "doc" + }, + "services": { + "title": "Services", + "type": "doc" }, - "launch": "Network Launch", - "tokenomics": "Tokenomics", - "usecases": "Use Cases", - "services": "Services", "---": { "type": "separator" }, - "network-information-configuration": "Network Configuration", - "build": "Build", - "node": "Node", - "use": "Basics", - "governance": "Govern", - "": { + "network-information-configuration": { + "title": "Network Configuration", + "type": "doc" + }, + "build": { + "title": "Build", + "type": "doc" + }, + "node": { + "title": "Node", + "type": "doc" + }, + "use": { + "title": "Basics", + "type": "doc" + }, + "governance": { + "title": "Govern", + "type": "doc" + }, + "---": { "type": "separator" }, - "community": "Community", - "faq": "FAQ", - "glossary": "Glossary", - "contribute": "Contribute or Submit a Bug", + "community": { + "title": "Community", + "type": "doc" + }, + "faq": { + "title": "FAQ", + "type": "doc" + }, + "glossary": { + "title": "Glossary", + "type": "doc" + }, + "contribute": { + "title": "Contribute or Submit a Bug", + "type": "doc" + }, "webb_docs_link": { "title": "Webb Docs", - "href": "https://docs.webb.tools/docs" + "href": "https://docs.webb.tools/docs", + "type": "doc" } } diff --git a/yarn.lock b/yarn.lock index 0005ccf7..0762cb00 100644 --- a/yarn.lock +++ b/yarn.lock @@ -247,7 +247,15 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@headlessui/react@^1.7.10", "@headlessui/react@^1.7.7": +"@headlessui/react@^1.7.10", "@headlessui/react@^1.7.17": + version "1.7.18" + resolved "https://registry.yarnpkg.com/@headlessui/react/-/react-1.7.18.tgz#30af4634d2215b2ca1aa29d07f33d02bea82d9d7" + integrity sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ== + dependencies: + "@tanstack/react-virtual" "^3.0.0-beta.60" + client-only "^0.0.1" + +"@headlessui/react@^1.7.7": version "1.7.14" resolved "https://registry.npmjs.org/@headlessui/react/-/react-1.7.14.tgz" integrity sha512-znzdq9PG8rkwcu9oQ2FwIy0ZFtP9Z7ycS+BAqJ3R5EIqC/0bJGvhT7193rFf+45i9nnPsYvCQVW4V/bB9Xc+gA== @@ -317,7 +325,7 @@ "@mdx-js/mdx@^2.2.1", "@mdx-js/mdx@^2.3.0": version "2.3.0" - resolved "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-2.3.0.tgz#d65d8c3c28f3f46bb0e7cb3bf7613b39980671a9" integrity sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -399,77 +407,77 @@ hey-listen "^1.0.8" tslib "^2.3.1" -"@napi-rs/simple-git-android-arm-eabi@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.9.tgz#0326fbc4ffafb678bda3474018e2a24a8d2a21b6" - integrity sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug== - -"@napi-rs/simple-git-android-arm64@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.9.tgz#4f2c3c3c2c8b6e82999b94dd771ab40c6a9511a4" - integrity sha512-Krilsw0gPrrASZzudNEl9pdLuNbhoTK0j7pUbfB8FRifpPdFB/zouwuEm0aSnsDXN4ftGrmGG82kuiR/2MeoPg== - -"@napi-rs/simple-git-darwin-arm64@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.9.tgz#cea5a57db6a8ee17dc6a368d98b5d04766ddd2cc" - integrity sha512-H/F09nDgYjv4gcFrZBgdTKkZEepqt0KLYcCJuUADuxkKupmjLdecMhypXLk13AzvLW4UQI7NlLTLDXUFLyr2BA== - -"@napi-rs/simple-git-darwin-x64@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.9.tgz#4106471b4edd2e9876cbd68951855c9a51debf06" - integrity sha512-jBR2xS9nVPqmHv0TWz874W0m/d453MGrMeLjB+boK5IPPLhg3AWIZj0aN9jy2Je1BGVAa0w3INIQJtBBeB6kFA== - -"@napi-rs/simple-git-linux-arm-gnueabihf@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.9.tgz#823ae5f84808b193f3bb0b6491c947ad13a78da8" - integrity sha512-3n0+VpO4YfZxndZ0sCvsHIvsazd+JmbSjrlTRBCnJeAU1/sfos3skNZtKGZksZhjvd+3o+/GFM8L7Xnv01yggA== - -"@napi-rs/simple-git-linux-arm64-gnu@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.9.tgz#9489634bf30c5acddcf18d2275e1927447753d40" - integrity sha512-lIzf0KHU2SKC12vMrWwCtysG2Sdt31VHRPMUiz9lD9t3xwVn8qhFSTn5yDkTeG3rgX6o0p5EKalfQN5BXsJq2w== - -"@napi-rs/simple-git-linux-arm64-musl@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.9.tgz#ba1ffae12974539810552c0f3b966298aae3a26d" - integrity sha512-KQozUoNXrxrB8k741ncWXSiMbjl1AGBGfZV21PANzUM8wH4Yem2bg3kfglYS/QIx3udspsT35I9abu49n7D1/w== - -"@napi-rs/simple-git-linux-x64-gnu@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.9.tgz#e18cd9059db7313cc2a9bbdc2535b6cac5e80689" - integrity sha512-O/Niui5mnHPcK3iYC3ui8wgERtJWsQ3Y74W/09t0bL/3dgzGMl4oQt0qTj9dWCsnoGsIEYHPzwCBp/2vqYp/pw== - -"@napi-rs/simple-git-linux-x64-musl@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.9.tgz#456fba6dd186c25d588390ab42db95ba327028fb" - integrity sha512-L9n+e8Wn3hKr3RsIdY8GaB+ry4xZ4BaGwyKExgoB8nDGQuRUY9oP6p0WA4hWfJvJnU1H6hvo36a5UFPReyBO7A== - -"@napi-rs/simple-git-win32-arm64-msvc@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.9.tgz#0f1a7048cf891f968ee71138548ccad350dea685" - integrity sha512-Z6Ja/SZK+lMvRWaxj7wjnvSbAsGrH006sqZo8P8nxKUdZfkVvoCaAWr1r0cfkk2Z3aijLLtD+vKeXGlUPH6gGQ== - -"@napi-rs/simple-git-win32-x64-msvc@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.9.tgz#75a5d9c3f41b44221e520824e51befa2dde19688" - integrity sha512-VAZj1UvC+R2MjKOD3I/Y7dmQlHWAYy4omhReQJRpbCf+oGCBi9CWiIduGqeYEq723nLIKdxP7XjaO0wl1NnUww== +"@napi-rs/simple-git-android-arm-eabi@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.16.tgz#36b752f84a7e75a9dada3d8b307817f0b015a57d" + integrity sha512-dbrCL0Pl5KZG7x7tXdtVsA5CO6At5ohDX3myf5xIYn9kN4jDFxsocl8bNt6Vb/hZQoJd8fI+k5VlJt+rFhbdVw== + +"@napi-rs/simple-git-android-arm64@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.16.tgz#f84d9e2fdae91bb810b55ffc30a42ce5fe020c76" + integrity sha512-xYz+TW5J09iK8SuTAKK2D5MMIsBUXVSs8nYp7HcMi8q6FCRO7yJj96YfP9PvKsc/k64hOyqGmL5DhCzY9Cu1FQ== + +"@napi-rs/simple-git-darwin-arm64@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.16.tgz#8d995a920146c320bf13b32d1b1654f44beaa16b" + integrity sha512-XfgsYqxhUE022MJobeiX563TJqyQyX4FmYCnqrtJwAfivESVeAJiH6bQIum8dDEYMHXCsG7nL8Ok0Dp8k2m42g== + +"@napi-rs/simple-git-darwin-x64@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.16.tgz#7cc7155392c62f885d248af5f720e108d0aad2b5" + integrity sha512-tkEVBhD6vgRCbeWsaAQqM3bTfpIVGeitamPPRVSbsq8qgzJ5Dx6ZedH27R7KSsA/uao7mZ3dsrNLXbu1Wy5MzA== + +"@napi-rs/simple-git-linux-arm-gnueabihf@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.16.tgz#d5135543d372e0571d7c19928e75751eb407d7dd" + integrity sha512-R6VAyNnp/yRaT7DV1Ao3r67SqTWDa+fNq2LrNy0Z8gXk2wB9ZKlrxFtLPE1WSpWknWtyRDLpRlsorh7Evk7+7w== + +"@napi-rs/simple-git-linux-arm64-gnu@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.16.tgz#4e293005b2fd62d1eb399b50e53d983378c19fb7" + integrity sha512-LAGI0opFKw/HBMCV2qIBK3uWSEW9h4xd2ireZKLJy8DBPymX6NrWIamuxYNyCuACnFdPRxR4LaRFy4J5ZwuMdw== + +"@napi-rs/simple-git-linux-arm64-musl@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.16.tgz#679edd2c6d88de6aa35993401722ade04595869b" + integrity sha512-I57Ph0F0Yn2KW93ep+V1EzKhACqX0x49vvSiapqIsdDA2PifdEWLc1LJarBolmK7NKoPqKmf6lAKKO9lhiZzkg== + +"@napi-rs/simple-git-linux-x64-gnu@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.16.tgz#b33054b14a88335f19261b812f65f8d567e7d199" + integrity sha512-AZYYFY2V7hlcQASPEOWyOa3e1skzTct9QPzz0LiDM3f/hCFY/wBaU2M6NC5iG3d2Kr38heuyFS/+JqxLm5WaKA== + +"@napi-rs/simple-git-linux-x64-musl@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.16.tgz#8cfc8f5f35951dacae86e72b5535ea401f868b7a" + integrity sha512-9TyMcYSBJwjT8jwjY9m24BZbu7ozyWTjsmYBYNtK3B0Um1Ov6jthSNneLVvouQ6x+k3Ow+00TiFh6bvmT00r8g== + +"@napi-rs/simple-git-win32-arm64-msvc@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.16.tgz#e6b220574421695f4c05be4e065b1fd46ffb7007" + integrity sha512-uslJ1WuAHCYJWui6xjsyT47SjX6KOHDtClmNO8hqKz1pmDSNY7AjyUY8HxvD1lK9bDnWwc4JYhikS9cxCqHybw== + +"@napi-rs/simple-git-win32-x64-msvc@0.1.16": + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.16.tgz#4ec44d57fc2c069544ffb923a2871d81d5db7cfc" + integrity sha512-SoEaVeCZCDF1MP+M9bMSXsZWgEjk4On9GWADO5JOulvzR1bKjk0s9PMHwe/YztR9F0sJzrCxwtvBZowhSJsQPg== "@napi-rs/simple-git@^0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git/-/simple-git-0.1.9.tgz#ea730d6202010acae7bb9057d79681424c41fd12" - integrity sha512-qKzDS0+VjMvVyU28px+C6zlD1HKy83NIdYzfMQWa/g/V1iG/Ic8uwrS2ihHfm7mp7X0PPrmINLiTTi6ieUIKfw== + version "0.1.16" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git/-/simple-git-0.1.16.tgz#c48d03b27956ddcd2c886a5e3d5c8bdc0d7ad5fe" + integrity sha512-C5wRPw9waqL2jk3jEDeJv+f7ScuO3N0a39HVdyFLkwKxHH4Sya4ZbzZsu2JLi6eEqe7RuHipHL6mC7B2OfYZZw== optionalDependencies: - "@napi-rs/simple-git-android-arm-eabi" "0.1.9" - "@napi-rs/simple-git-android-arm64" "0.1.9" - "@napi-rs/simple-git-darwin-arm64" "0.1.9" - "@napi-rs/simple-git-darwin-x64" "0.1.9" - "@napi-rs/simple-git-linux-arm-gnueabihf" "0.1.9" - "@napi-rs/simple-git-linux-arm64-gnu" "0.1.9" - "@napi-rs/simple-git-linux-arm64-musl" "0.1.9" - "@napi-rs/simple-git-linux-x64-gnu" "0.1.9" - "@napi-rs/simple-git-linux-x64-musl" "0.1.9" - "@napi-rs/simple-git-win32-arm64-msvc" "0.1.9" - "@napi-rs/simple-git-win32-x64-msvc" "0.1.9" + "@napi-rs/simple-git-android-arm-eabi" "0.1.16" + "@napi-rs/simple-git-android-arm64" "0.1.16" + "@napi-rs/simple-git-darwin-arm64" "0.1.16" + "@napi-rs/simple-git-darwin-x64" "0.1.16" + "@napi-rs/simple-git-linux-arm-gnueabihf" "0.1.16" + "@napi-rs/simple-git-linux-arm64-gnu" "0.1.16" + "@napi-rs/simple-git-linux-arm64-musl" "0.1.16" + "@napi-rs/simple-git-linux-x64-gnu" "0.1.16" + "@napi-rs/simple-git-linux-x64-musl" "0.1.16" + "@napi-rs/simple-git-win32-arm64-msvc" "0.1.16" + "@napi-rs/simple-git-win32-x64-msvc" "0.1.16" "@next/env@13.3.0": version "13.3.0" @@ -720,76 +728,88 @@ dependencies: tslib "^2.4.0" -"@theguild/remark-mermaid@^0.0.4": - version "0.0.4" - resolved "https://registry.yarnpkg.com/@theguild/remark-mermaid/-/remark-mermaid-0.0.4.tgz#a48edb1ddada28e3c7136bbbc4edd22bd2c6ed0b" - integrity sha512-C1gssw07eURtCwzXqZZdvyV/eawQ/cXfARaXIgBU9orffox+/YQ+exxmNu9v16NSGzAVsGF4qEVHvCOcCR/FpQ== +"@tanstack/react-virtual@^3.0.0-beta.60": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.1.3.tgz#4ef2a7dd819a7dd2b634d50cbd6ba498f06529ec" + integrity sha512-YCzcbF/Ws/uZ0q3Z6fagH+JVhx4JLvbSflgldMgLsuvB8aXjZLLb3HvrEVxY480F9wFlBiXlvQxOyXb5ENPrNA== + dependencies: + "@tanstack/virtual-core" "3.1.3" + +"@tanstack/virtual-core@3.1.3": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@tanstack/virtual-core/-/virtual-core-3.1.3.tgz#77ced625f19ec9350f6e460f142b3be9bff03866" + integrity sha512-Y5B4EYyv1j9V8LzeAoOVeTg0LI7Fo5InYKgAjkY1Pu9GjtUwX/EKxNcU7ng3sKr99WEf+bPTcktAeybyMOYo+g== + +"@theguild/remark-mermaid@^0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz#0f95671d247381f416e528e937be08bb7a695224" + integrity sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw== dependencies: mermaid "^10.2.2" unist-util-visit "^5.0.0" -"@theguild/remark-npm2yarn@^0.1.1": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.1.1.tgz#7392d8a3ec176c22ee5e26f2e44eae8e0d97e191" - integrity sha512-ZKwd/bjQ9V+pESLnu8+q8jqn15alXzJOuVckraebsXwqVBTw53Gmupiw9zCdLNHU829KTYNycJYea6m9HRLuOg== +"@theguild/remark-npm2yarn@^0.2.0": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz#63bf5a8c85d7fe505d4808812dbc56d9c2ce00f8" + integrity sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA== dependencies: - npm-to-yarn "^2.0.0" + npm-to-yarn "^2.1.0" unist-util-visit "^5.0.0" "@types/acorn@^4.0.0": version "4.0.6" - resolved "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz" + resolved "https://registry.yarnpkg.com/@types/acorn/-/acorn-4.0.6.tgz#d61ca5480300ac41a7d973dd5b84d0a591154a22" integrity sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ== dependencies: "@types/estree" "*" "@types/d3-scale-chromatic@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz#103124777e8cdec85b20b51fd3397c682ee1e954" - integrity sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw== + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz#fc0db9c10e789c351f4c42d96f31f2e4df8f5644" + integrity sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw== "@types/d3-scale@^4.0.3": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.4.tgz#3c5e2263eea5a3670cd91043b9f4d150a94c43f1" - integrity sha512-eq1ZeTj0yr72L8MQk6N6heP603ubnywSDRfNpi5enouR112HzGLS6RIvExCzZTraFF4HdzNpJMwA/zGiMoHUUw== + version "4.0.8" + resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" + integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== dependencies: "@types/d3-time" "*" "@types/d3-time@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.0.tgz#e1ac0f3e9e195135361fa1a1d62f795d87e6e819" - integrity sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg== + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" + integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== "@types/debug@^4.0.0": - version "4.1.7" - resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz" - integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg== + version "4.1.12" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" + integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== dependencies: "@types/ms" "*" "@types/estree-jsx@^1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.0.tgz" - integrity sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ== + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18" + integrity sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg== dependencies: "@types/estree" "*" "@types/estree@*", "@types/estree@^1.0.0": - 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.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== "@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== + version "2.3.10" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.10.tgz#5c9d9e0b304bbb8879b857225c5ebab2d81d7643" + integrity sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw== dependencies: - "@types/unist" "*" + "@types/unist" "^2" "@types/hast@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.1.tgz#e1705ec9258ac4885659c2d50bac06b4fcd16466" - integrity sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ== + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" + integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== dependencies: "@types/unist" "*" @@ -807,9 +827,9 @@ integrity sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA== "@types/js-yaml@^4.0.0": - version "4.0.5" - resolved "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz" - integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA== + version "4.0.9" + resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.9.tgz#cd82382c4f902fed9691a2ed79ec68c5898af4c2" + integrity sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg== "@types/json5@^0.0.29": version "0.0.29" @@ -821,39 +841,34 @@ resolved "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz" integrity sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg== -"@types/katex@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@types/katex/-/katex-0.14.0.tgz#b84c0afc3218069a5ad64fe2a95321881021b5fe" - integrity sha512-+2FW2CcT0K3P+JMR8YG846bmDwplKUTsWgT2ENwdQ1UdVfRk3GQrh6Mi4sTopy30gI8Uau5CEqHTDZ6YvWIUPA== - "@types/katex@^0.16.0": - version "0.16.0" - resolved "https://registry.npmjs.org/@types/katex/-/katex-0.16.0.tgz" - integrity sha512-hz+S3nV6Mym5xPbT9fnO8dDhBFQguMYpY0Ipxv06JMi1ORgnEM4M1ymWDUhUNer3ElLmT583opRo4RzxKmh9jw== + version "0.16.7" + resolved "https://registry.yarnpkg.com/@types/katex/-/katex-0.16.7.tgz#03ab680ab4fa4fbc6cb46ecf987ecad5d8019868" + integrity sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ== "@types/mdast@^3.0.0": - version "3.0.11" - resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz" - integrity sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw== + version "3.0.15" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5" + integrity sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ== dependencies: - "@types/unist" "*" + "@types/unist" "^2" "@types/mdast@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.0.tgz#9f9462d4584a8b3e3711ea8bb4a94c485559ab90" - integrity sha512-YLeG8CujC9adtj/kuDzq1N4tCDYKoZ5l/bnjq8d74+t/3q/tHquJOJKUQXJrLCflOHpKjXgcI/a929gpmLOEng== + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.3.tgz#1e011ff013566e919a4232d1701ad30d70cab333" + integrity sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg== dependencies: "@types/unist" "*" "@types/mdx@^2.0.0": - version "2.0.4" - resolved "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.4.tgz" - integrity sha512-qCYrNdpKwN6YO6FVnx+ulfqifKlE3lQGsNhvDaW9Oxzyob/cRLBJWow8GHBBD4NxQ7BVvtsATgLsX0vZAWmtrg== + version "2.0.11" + resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.11.tgz#21f4c166ed0e0a3a733869ba04cd8daea9834b8e" + integrity sha512-HM5bwOaIQJIQbAYfax35HCKxx7a3KrK3nBtIqJgSOitivTD1y3oW9P3rxY9RkXYPUk7y/AjAohfHKmFpGE79zw== "@types/ms@*": - version "0.7.31" - resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz" - integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== + version "0.7.34" + resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433" + integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": version "16.18.24" @@ -871,11 +886,11 @@ 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== + version "15.7.11" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" + integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== -"@types/react@*": +"@types/react@*", "@types/react@>=16": version "18.2.64" resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.64.tgz#3700fbb6b2fa60a6868ec1323ae4cbd446a2197d" integrity sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg== @@ -884,7 +899,7 @@ "@types/scheduler" "*" csstype "^3.0.2" -"@types/react@18.0.26", "@types/react@>=16": +"@types/react@18.0.26": version "18.0.26" resolved "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz" integrity sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug== @@ -894,9 +909,9 @@ csstype "^3.0.2" "@types/scheduler@*": - version "0.16.3" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz" - integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== + version "0.16.8" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff" + integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== "@types/styled-components@^5.1.34": version "5.1.34" @@ -912,16 +927,21 @@ resolved "https://registry.yarnpkg.com/@types/stylis/-/stylis-4.2.0.tgz#199a3f473f0c3a6f6e4e1b17cdbc967f274bdc6b" integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": +"@types/unist@*", "@types/unist@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.2.tgz#6dd61e43ef60b34086287f83683a5c1b2dc53d20" + integrity sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ== + +"@types/unist@^2", "@types/unist@^2.0.0": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.10.tgz#04ffa7f406ab628f7f7e97ca23e290cd8ab15efc" + integrity sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA== + +"@types/unist@^2.0.2": version "2.0.6" resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== -"@types/unist@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.0.tgz#988ae8af1e5239e89f9fbb1ade4c935f4eeedf9a" - integrity sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w== - "@typescript-eslint/parser@^5.21.0": version "5.59.0" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.0.tgz" @@ -1010,7 +1030,12 @@ acorn@^7.0.0: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.0.0, acorn@^8.8.0: +acorn@^8.0.0: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== + +acorn@^8.8.0: version "8.8.2" resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== @@ -1048,9 +1073,9 @@ ansi-regex@^5.0.1: integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-sequence-parser@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz" - integrity sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ== + version "1.1.1" + resolved "https://registry.yarnpkg.com/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz#e0aa1cdcbc8f8bb0b5bca625aac41f5f056973cf" + integrity sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg== ansi-styles@^1.1.0: version "1.1.0" @@ -1086,12 +1111,12 @@ anymatch@~3.1.2: arch@^2.1.0: version "2.2.0" - resolved "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== arg@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/arg/-/arg-1.0.0.tgz#444d885a4e25b121640b55155ef7cd03975d6050" integrity sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw== arg@^5.0.2: @@ -1108,7 +1133,7 @@ argparse@^1.0.7: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== aria-query@^5.1.3: @@ -1179,9 +1204,9 @@ ast-types-flow@^0.0.7: integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag== astring@^1.8.0: - version "1.8.4" - resolved "https://registry.npmjs.org/astring/-/astring-1.8.4.tgz" - integrity sha512-97a+l2LBU3Op3bBQEff79i/E4jMD2ZLFD8rHx9B6mXyB2uQwhJQYfiDqUwtfjF4QA1F2qs//N6Cw8LetMbQjcw== + version "1.8.6" + resolved "https://registry.yarnpkg.com/astring/-/astring-1.8.6.tgz#2c9c157cf1739d67561c56ba896e6948f6b93731" + integrity sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg== asynckit@^0.4.0: version "0.4.0" @@ -1232,7 +1257,7 @@ bail@^1.0.0: bail@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== balanced-match@^1.0.0: @@ -1416,12 +1441,12 @@ caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.300014 ccount@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== chalk@2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== dependencies: ansi-styles "^3.1.0" @@ -1482,7 +1507,7 @@ char-spinner@^1.0.1: character-entities-html4@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== character-entities-legacy@^1.0.0: @@ -1492,7 +1517,7 @@ character-entities-legacy@^1.0.0: character-entities-legacy@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== character-entities@^1.0.0: @@ -1502,7 +1527,7 @@ character-entities@^1.0.0: character-entities@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22" integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ== character-reference-invalid@^1.0.0: @@ -1512,7 +1537,7 @@ character-reference-invalid@^1.0.0: character-reference-invalid@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9" integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw== chokidar@^3.5.3: @@ -1549,25 +1574,25 @@ cli-table@~0.3.1: client-only@0.0.1, client-only@^0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== clipboardy@1.2.2: version "1.2.2" - resolved "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz" + resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-1.2.2.tgz#2ce320b9ed9be1514f79878b53ff9765420903e2" integrity sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw== dependencies: arch "^2.1.0" execa "^0.8.0" clsx@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b" - integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q== + version "2.1.0" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.0.tgz#e851283bcb5c80ee7608db18487433f7b23f77cb" + integrity sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" @@ -1633,7 +1658,7 @@ comma-separated-tokens@^1.0.0: comma-separated-tokens@^2.0.0: version "2.0.3" - resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== commander@7: @@ -1648,7 +1673,7 @@ commander@^2.19.0: commander@^8.0.0, commander@^8.3.0: version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== commondir@^1.0.1: @@ -1710,16 +1735,9 @@ cose-base@^1.0.0: dependencies: layout-base "^1.0.0" -cose-base@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cose-base/-/cose-base-2.2.0.tgz#1c395c35b6e10bb83f9769ca8b817d614add5c01" - integrity sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g== - dependencies: - layout-base "^2.0.0" - cross-spawn@^5.0.1: version "5.1.0" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== dependencies: lru-cache "^4.0.1" @@ -1769,7 +1787,7 @@ cssesc@^3.0.0: resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@3.1.1, csstype@^3.0.2, csstype@^3.0.6: +csstype@3.1.1, csstype@^3.0.6: version "3.1.1" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== @@ -1779,6 +1797,11 @@ csstype@3.1.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== +csstype@^3.0.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + cytoscape-cose-bilkent@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz#762fa121df9930ffeb51a495d87917c570ac209b" @@ -1786,17 +1809,10 @@ cytoscape-cose-bilkent@^4.1.0: dependencies: cose-base "^1.0.0" -cytoscape-fcose@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz#e4d6f6490df4fab58ae9cea9e5c3ab8d7472f471" - integrity sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ== - dependencies: - cose-base "^2.2.0" - -cytoscape@^3.23.0: - version "3.26.0" - resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.26.0.tgz#b4c6961445fd51e1fd3cca83c3ffe924d9a8abc9" - integrity sha512-IV+crL+KBcrCnVVUCZW+zRRRFUZQcrtdOPXki+o4CFUWLdAEYvuZLcBSJC9EBK++suamERKzeY7roq2hdovV3w== +cytoscape@^3.28.1: + version "3.28.1" + resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.28.1.tgz#f32c3e009bdf32d47845a16a4cd2be2bbc01baf7" + integrity sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg== dependencies: heap "^0.2.6" lodash "^4.17.21" @@ -2118,7 +2134,7 @@ debug@^3.2.7: decode-named-character-reference@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz#daabac9690874c394c81e4162a0304b35d824f0e" integrity sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg== dependencies: character-entities "^2.0.0" @@ -2184,11 +2200,11 @@ defined@^1.0.0: integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== delaunator@5: - version "5.0.0" - resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.0.tgz#60f052b28bd91c9b4566850ebf7756efe821d81b" - integrity sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw== + version "5.0.1" + resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.1.tgz#39032b08053923e924d6094fe2cde1a99cc51278" + integrity sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw== dependencies: - robust-predicates "^3.0.0" + robust-predicates "^3.0.2" delayed-stream@~1.0.0: version "1.0.0" @@ -2197,7 +2213,7 @@ delayed-stream@~1.0.0: dequal@^2.0.0: version "2.0.3" - resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== detect-libc@^2.0.0, detect-libc@^2.0.1: @@ -2219,7 +2235,7 @@ dev-null@^0.1.1: resolved "https://registry.npmjs.org/dev-null/-/dev-null-0.1.1.tgz" integrity sha512-nMNZG0zfMgmdv8S5O0TM5cpwNbGKRGPCxVsr0SmA3NZZy9CYBbuNLL0PD3Acx9e5LIUgwONXtM9kM6RlawPxEQ== -devlop@^1.0.0: +devlop@^1.0.0, devlop@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== @@ -2232,9 +2248,9 @@ didyoumean@^1.2.2: integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== diff@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz" - integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== + version "5.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" + integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== dir-glob@^3.0.1: version "3.0.1" @@ -2263,9 +2279,9 @@ doctrine@^3.0.0: esutils "^2.0.2" dompurify@^3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.5.tgz#eb3d9cfa10037b6e73f32c586682c4b2ab01fbed" - integrity sha512-F9e6wPGtY+8KNMRAVfxeCOHU0/NPWMSENNq4pQctuXRqqdEPW7q3CrLbR5Nse044WwacyjHGOMlvNsBe1y6z9A== + version "3.0.9" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.9.tgz#b3f362f24b99f53498c75d43ecbd784b0b3ad65e" + integrity sha512-uyb4NDIvQ3hRn6NiC+SIFaP4mJ/MdXlvtunaqK9Bn6dD3RuB/1S/gasEjDHD8eiaqdSael2vBv+hOs7Y+jhYOQ== duplexer@~0.1.1: version "0.1.2" @@ -2277,10 +2293,10 @@ electron-to-chromium@^1.4.284: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.368.tgz" integrity sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw== -elkjs@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.8.2.tgz#c37763c5a3e24e042e318455e0147c912a7c248e" - integrity sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ== +elkjs@^0.9.0: + version "0.9.2" + resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.9.2.tgz#3d4ef6f17fde06a5d7eaa3063bb875e25e59e972" + integrity sha512-2Y/RaA1pdgSHpY0YG4TYuYCD2wh97CRvu22eLG3Kz0pgQ/6KbIFTxsTnDc4MH/6hFlg2L/9qXrDMG0nMjP63iw== emoji-regex@^9.2.2: version "9.2.2" @@ -2410,7 +2426,7 @@ escalade@^3.1.1: escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: @@ -2420,7 +2436,7 @@ escape-string-regexp@^4.0.0: escape-string-regexp@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== eslint-config-next@12.3.1: @@ -2644,14 +2660,14 @@ estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: estree-util-attach-comments@^2.0.0: version "2.1.1" - resolved "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz#ee44f4ff6890ee7dfb3237ac7810154c94c63f84" integrity sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w== dependencies: "@types/estree" "^1.0.0" estree-util-build-jsx@^2.0.0: version "2.2.2" - resolved "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz" + resolved "https://registry.yarnpkg.com/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz#32f8a239fb40dc3f3dca75bb5dcf77a831e4e47b" integrity sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2660,12 +2676,12 @@ estree-util-build-jsx@^2.0.0: estree-util-is-identifier-name@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz#fb70a432dcb19045e77b05c8e732f1364b4b49b2" integrity sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ== estree-util-to-js@^1.1.0: version "1.2.0" - resolved "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz#0f80d42443e3b13bd32f7012fffa6f93603f4a36" integrity sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2674,14 +2690,14 @@ estree-util-to-js@^1.1.0: estree-util-value-to-estree@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz#1d3125594b4d6680f666644491e7ac1745a3df49" integrity sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw== dependencies: is-plain-obj "^3.0.0" estree-util-visit@^1.0.0: version "1.2.1" - resolved "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/estree-util-visit/-/estree-util-visit-1.2.1.tgz#8bc2bc09f25b00827294703835aabee1cc9ec69d" integrity sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2694,7 +2710,7 @@ estree-walker@^2.0.2: estree-walker@^3.0.0: version "3.0.3" - resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== dependencies: "@types/estree" "^1.0.0" @@ -2706,7 +2722,7 @@ esutils@^2.0.2: execa@^0.8.0: version "0.8.0" - resolved "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" integrity sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA== dependencies: cross-spawn "^5.0.1" @@ -2736,7 +2752,7 @@ extend@^2.0.0: extend@^3.0.0: version "3.0.2" - resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: @@ -2936,7 +2952,7 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@ get-stream@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" integrity sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ== get-symbol-description@^1.0.0: @@ -2969,7 +2985,7 @@ github-from-package@0.0.0: github-slugger@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-2.0.0.tgz#52cf2f9279a21eb6c59dd385b410f0c0adda8f1a" integrity sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw== glob-parent@^5.1.2, glob-parent@~5.1.2: @@ -3105,7 +3121,7 @@ has-bigints@^1.0.1, has-bigints@^1.0.2: has-flag@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" integrity sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng== has-flag@^3.0.0: @@ -3151,41 +3167,43 @@ has@^1.0.3: hash-obj@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/hash-obj/-/hash-obj-4.0.0.tgz#3fafeb0b5f17994441dbe04efbdee82e26b74c8c" integrity sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg== dependencies: is-obj "^3.0.0" sort-keys "^5.0.0" type-fest "^1.0.2" -hast-util-from-dom@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/hast-util-from-dom/-/hast-util-from-dom-4.2.0.tgz#25836ddecc3cc0849d32749c2a7aec03e94b59a7" - integrity sha512-t1RJW/OpJbCAJQeKi3Qrj1cAOLA0+av/iPFori112+0X7R3wng+jxLA+kXec8K4szqPRGI8vPxbbpEYvvpwaeQ== +hast-util-from-dom@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz#d32edd25bf28f4b178b5ae318f8d05762e67bd16" + integrity sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg== dependencies: - hastscript "^7.0.0" + "@types/hast" "^3.0.0" + hastscript "^8.0.0" web-namespaces "^2.0.0" -hast-util-from-html-isomorphic@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-1.0.0.tgz#592b2bea880d476665b76ca1cf7d1a94925c80ec" - integrity sha512-Yu480AKeOEN/+l5LA674a+7BmIvtDj24GvOt7MtQWuhzUwlaaRWdEPXAh3Qm5vhuthpAipFb2vTetKXWOjmTvw== +hast-util-from-html-isomorphic@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz#b31baee386a899a2472326a3c5692f29f86d1d3c" + integrity sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw== dependencies: - "@types/hast" "^2.0.0" - hast-util-from-dom "^4.0.0" - hast-util-from-html "^1.0.0" - unist-util-remove-position "^4.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" -hast-util-from-html@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/hast-util-from-html/-/hast-util-from-html-1.0.2.tgz#2482fd701b2d8270b912b3909d6fb645d4a346cf" - integrity sha512-LhrTA2gfCbLOGJq2u/asp4kwuG0y6NhWTXiPKP+n0qNukKy7hc10whqqCFfyvIA1Q5U5d0sp9HhNim9gglEH4A== +hast-util-from-html@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz#9cd38ee81bf40b2607368b92a04b0905fa987488" + integrity sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g== dependencies: - "@types/hast" "^2.0.0" - hast-util-from-parse5 "^7.0.0" + "@types/hast" "^3.0.0" + devlop "^1.1.0" + hast-util-from-parse5 "^8.0.0" parse5 "^7.0.0" - vfile "^5.0.0" - vfile-message "^3.0.0" + vfile "^6.0.0" + vfile-message "^4.0.0" hast-util-from-parse5@^6.0.0: version "6.0.1" @@ -3199,19 +3217,6 @@ hast-util-from-parse5@^6.0.0: vfile-location "^3.2.0" web-namespaces "^1.0.0" -hast-util-from-parse5@^7.0.0: - version "7.1.2" - resolved "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz" - integrity sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw== - dependencies: - "@types/hast" "^2.0.0" - "@types/unist" "^2.0.0" - hastscript "^7.0.0" - property-information "^6.0.0" - vfile "^5.0.0" - vfile-location "^4.0.0" - web-namespaces "^2.0.0" - hast-util-from-parse5@^8.0.0: version "8.0.1" resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz#654a5676a41211e14ee80d1b1758c399a0327651" @@ -3231,26 +3236,18 @@ hast-util-is-element@^1.0.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-is-element@^2.0.0: - version "2.1.3" - resolved "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-2.1.3.tgz" - integrity sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA== +hast-util-is-element@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz#6e31a6532c217e5b533848c7e52c9d9369ca0932" + integrity sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g== dependencies: - "@types/hast" "^2.0.0" - "@types/unist" "^2.0.0" + "@types/hast" "^3.0.0" 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-parse-selector@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz" - integrity sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA== - dependencies: - "@types/hast" "^2.0.0" - hast-util-parse-selector@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz#352879fa86e25616036037dd8931fb5f34cb4a27" @@ -3259,9 +3256,9 @@ hast-util-parse-selector@^4.0.0: "@types/hast" "^3.0.0" hast-util-raw@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.0.1.tgz#2ba8510e4ed2a1e541cde2a4ebb5c38ab4c82c2d" - integrity sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA== + version "9.0.2" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.0.2.tgz#39b4a4886bd9f0a5dd42e86d02c966c2c152884c" + integrity sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA== dependencies: "@types/hast" "^3.0.0" "@types/unist" "^3.0.0" @@ -3278,9 +3275,9 @@ hast-util-raw@^9.0.0: zwitch "^2.0.0" hast-util-to-estree@^2.0.0: - version "2.3.2" - resolved "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.2.tgz" - integrity sha512-YYDwATNdnvZi3Qi84iatPIl1lWpXba1MeNrNbDfJfVzEBZL8uUmtR7mt7bxKBC8kuAuvb0bkojXYZzsNHyHCLg== + version "2.3.3" + resolved "https://registry.yarnpkg.com/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz#da60142ffe19a6296923ec222aba73339c8bf470" + integrity sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ== dependencies: "@types/estree" "^1.0.0" "@types/estree-jsx" "^1.0.0" @@ -3320,19 +3317,19 @@ hast-util-to-text@^2.0.0: repeat-string "^1.0.0" unist-util-find-after "^3.0.0" -hast-util-to-text@^3.1.0: - version "3.1.2" - resolved "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-3.1.2.tgz" - integrity sha512-tcllLfp23dJJ+ju5wCCZHVpzsQQ43+moJbqVX3jNWPB7z/KFC4FyZD6R7y94cHL6MQ33YtMZL8Z0aIXXI4XFTw== +hast-util-to-text@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-text/-/hast-util-to-text-4.0.0.tgz#7f33a45d0bf7981ead44e82d9d8d75f511b3642f" + integrity sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w== dependencies: - "@types/hast" "^2.0.0" - "@types/unist" "^2.0.0" - hast-util-is-element "^2.0.0" - unist-util-find-after "^4.0.0" + "@types/hast" "^3.0.0" + "@types/unist" "^3.0.0" + hast-util-is-element "^3.0.0" + unist-util-find-after "^5.0.0" hast-util-whitespace@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz#0ec64e257e6fc216c7d14c8a1b74d27d650b4557" integrity sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng== hastscript@^6.0.0: @@ -3346,17 +3343,6 @@ hastscript@^6.0.0: property-information "^5.0.0" space-separated-tokens "^1.0.0" -hastscript@^7.0.0: - version "7.2.0" - resolved "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz" - integrity sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^2.0.0" - hast-util-parse-selector "^3.0.0" - property-information "^6.0.0" - space-separated-tokens "^2.0.0" - hastscript@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-8.0.0.tgz#4ef795ec8dee867101b9f23cc830d4baf4fd781a" @@ -3468,7 +3454,7 @@ ini@~1.3.0: 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" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== inline-style-prefixer@^6.0.0: @@ -3510,7 +3496,7 @@ is-alphabetical@^1.0.0: is-alphabetical@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b" integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ== is-alphanumerical@^1.0.0: @@ -3523,7 +3509,7 @@ is-alphanumerical@^1.0.0: is-alphanumerical@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875" integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw== dependencies: is-alphabetical "^2.0.0" @@ -3580,7 +3566,7 @@ is-browser@^2.0.1: is-buffer@^2.0.0: version "2.0.5" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: @@ -3609,7 +3595,7 @@ is-decimal@^1.0.0: is-decimal@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7" integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A== is-extendable@^0.1.0: @@ -3636,7 +3622,7 @@ is-hexadecimal@^1.0.0: is-hexadecimal@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg== is-map@^2.0.1, is-map@^2.0.2: @@ -3663,7 +3649,7 @@ is-number@^7.0.0: is-obj@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-3.0.0.tgz#b0889f1f9f8cb87e87df53a8d1230a2250f8b9be" integrity sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ== is-object@^1.0.1: @@ -3683,12 +3669,12 @@ is-plain-obj@^2.0.0: 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" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== is-plain-obj@^4.0.0: version "4.1.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== is-reference@1.2.1: @@ -3699,9 +3685,9 @@ is-reference@1.2.1: "@types/estree" "*" is-reference@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/is-reference/-/is-reference-3.0.1.tgz" - integrity sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w== + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-3.0.2.tgz#154747a01f45cd962404ee89d43837af2cba247c" + integrity sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg== dependencies: "@types/estree" "*" @@ -3804,7 +3790,7 @@ isbot@^2.0.0: isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== js-cookie@3.0.1: @@ -3870,9 +3856,9 @@ json5@^2.2.1: integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz" - integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== + version "3.2.1" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" + integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== "jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.3: version "3.3.3" @@ -3896,24 +3882,24 @@ katex@^0.13.0: dependencies: commander "^8.0.0" -katex@^0.16.0, katex@^0.16.4: - version "0.16.6" - resolved "https://registry.npmjs.org/katex/-/katex-0.16.6.tgz" - integrity sha512-XVB7X8jEogjJ+OY+a9JdE+VOk9i7znela0HP6WaDbpB4sUh8ghrG0Ccluu2MA2tcJbFAViBC9aVXus2UvkEr8A== +katex@^0.16.0, katex@^0.16.9: + version "0.16.9" + resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.9.tgz#bc62d8f7abfea6e181250f85a56e4ef292dcb1fa" + integrity sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ== dependencies: commander "^8.3.0" -katex@^0.16.8: - version "0.16.8" - resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.8.tgz#89b453f40e8557f423f31a1009e9298dd99d5ceb" - integrity sha512-ftuDnJbcbOckGY11OO+zg3OofESlbR5DRl2cmN8HeWeeFIV7wTXvAOx8kEjZjobhA+9wh2fbKeO6cdcA9Mnovg== +katex@^0.16.4: + version "0.16.6" + resolved "https://registry.npmjs.org/katex/-/katex-0.16.6.tgz" + integrity sha512-XVB7X8jEogjJ+OY+a9JdE+VOk9i7znela0HP6WaDbpB4sUh8ghrG0Ccluu2MA2tcJbFAViBC9aVXus2UvkEr8A== dependencies: commander "^8.3.0" khroma@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.0.0.tgz#7577de98aed9f36c7a474c4d453d94c0d6c6588b" - integrity sha512-2J8rDNlQWbtiNYThZRvmMv5yt44ZakX+Tz5ZIp/mN1pt4snn+m030Va5Z4v8xA0cQFDXBwO/8i42xL4QPsVk3g== + version "2.1.0" + resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.1.0.tgz#45f2ce94ce231a437cf5b63c2e886e6eb42bbbb1" + integrity sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw== kind-of@^6.0.0, kind-of@^6.0.2: version "6.0.3" @@ -3922,7 +3908,7 @@ kind-of@^6.0.0, kind-of@^6.0.2: kleur@^4.0.3: version "4.1.5" - resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== language-subtag-registry@~0.3.2: @@ -3942,11 +3928,6 @@ layout-base@^1.0.0: resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-1.0.2.tgz#1291e296883c322a9dd4c5dd82063721b53e26e2" integrity sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg== -layout-base@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-2.0.1.tgz#d0337913586c90f9c2c075292069f5c2da5dd285" - integrity sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg== - levn@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" @@ -4006,7 +3987,7 @@ lodash.clonedeep@^4.5.0: lodash.get@^4.4.2: version "4.4.2" - resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.merge@^4.6.2: @@ -4026,7 +4007,7 @@ longest-streak@^2.0.0: longest-streak@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== loose-envify@^1.1.0, loose-envify@^1.4.0: @@ -4072,12 +4053,12 @@ magic-string@^0.27.0: markdown-extensions@^1.0.0: version "1.1.1" - resolved "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/markdown-extensions/-/markdown-extensions-1.1.1.tgz#fea03b539faeaee9b4ef02a3769b455b189f7fc3" integrity sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q== markdown-table@^3.0.0: version "3.0.3" - resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.3.tgz#e6331d30e493127e031dd385488b5bd326e4a6bd" integrity sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw== match-sorter@^6.3.1: @@ -4095,7 +4076,7 @@ maybe-callback@^2.1.0: mdast-util-definitions@^5.0.0: version "5.1.2" - resolved "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz#9910abb60ac5d7115d6819b57ae0bcef07a3f7a7" integrity sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA== dependencies: "@types/mdast" "^3.0.0" @@ -4104,7 +4085,7 @@ mdast-util-definitions@^5.0.0: mdast-util-find-and-replace@^2.0.0: version "2.2.2" - resolved "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz#cc2b774f7f3630da4bd592f61966fecade8b99b1" integrity sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw== dependencies: "@types/mdast" "^3.0.0" @@ -4112,25 +4093,7 @@ mdast-util-find-and-replace@^2.0.0: unist-util-is "^5.0.0" unist-util-visit-parents "^5.0.0" -mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0: - version "1.3.0" - resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz" - integrity sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g== - dependencies: - "@types/mdast" "^3.0.0" - "@types/unist" "^2.0.0" - decode-named-character-reference "^1.0.0" - mdast-util-to-string "^3.1.0" - micromark "^3.0.0" - micromark-util-decode-numeric-character-reference "^1.0.0" - micromark-util-decode-string "^1.0.0" - micromark-util-normalize-identifier "^1.0.0" - micromark-util-symbol "^1.0.0" - micromark-util-types "^1.0.0" - unist-util-stringify-position "^3.0.0" - uvu "^0.5.0" - -mdast-util-from-markdown@^1.3.0: +mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0, mdast-util-from-markdown@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz#9421a5a247f10d31d2faed2a30df5ec89ceafcf0" integrity sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww== @@ -4150,7 +4113,7 @@ mdast-util-from-markdown@^1.3.0: mdast-util-gfm-autolink-literal@^1.0.0: version "1.0.3" - resolved "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz#67a13abe813d7eba350453a5333ae1bc0ec05c06" integrity sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA== dependencies: "@types/mdast" "^3.0.0" @@ -4160,7 +4123,7 @@ mdast-util-gfm-autolink-literal@^1.0.0: mdast-util-gfm-footnote@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz#ce5e49b639c44de68d5bf5399877a14d5020424e" integrity sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ== dependencies: "@types/mdast" "^3.0.0" @@ -4169,7 +4132,7 @@ mdast-util-gfm-footnote@^1.0.0: mdast-util-gfm-strikethrough@^1.0.0: version "1.0.3" - resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz#5470eb105b483f7746b8805b9b989342085795b7" integrity sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ== dependencies: "@types/mdast" "^3.0.0" @@ -4177,7 +4140,7 @@ mdast-util-gfm-strikethrough@^1.0.0: mdast-util-gfm-table@^1.0.0: version "1.0.7" - resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz#3552153a146379f0f9c4c1101b071d70bbed1a46" integrity sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg== dependencies: "@types/mdast" "^3.0.0" @@ -4187,7 +4150,7 @@ mdast-util-gfm-table@^1.0.0: mdast-util-gfm-task-list-item@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz#b280fcf3b7be6fd0cc012bbe67a59831eb34097b" integrity sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ== dependencies: "@types/mdast" "^3.0.0" @@ -4195,7 +4158,7 @@ mdast-util-gfm-task-list-item@^1.0.0: mdast-util-gfm@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz#e92f4d8717d74bdba6de57ed21cc8b9552e2d0b6" integrity sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg== dependencies: mdast-util-from-markdown "^1.0.0" @@ -4217,7 +4180,7 @@ mdast-util-math@^0.1.0: mdast-util-math@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-math/-/mdast-util-math-2.0.2.tgz#19a06a81f31643f48cc805e7c31edb7ce739242c" integrity sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ== dependencies: "@types/mdast" "^3.0.0" @@ -4226,7 +4189,7 @@ mdast-util-math@^2.0.0: mdast-util-mdx-expression@^1.0.0: version "1.3.2" - resolved "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz#d027789e67524d541d6de543f36d51ae2586f220" integrity sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -4236,9 +4199,9 @@ mdast-util-mdx-expression@^1.0.0: mdast-util-to-markdown "^1.0.0" mdast-util-mdx-jsx@^2.0.0: - version "2.1.2" - resolved "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.2.tgz" - integrity sha512-o9vBCYQK5ZLGEj3tCGISJGjvafyHRVJlZmfJzSE7xjiogSzIeph/Z4zMY65q4WGRMezQBeAwPlrdymDYYYx0tA== + version "2.1.4" + resolved "https://registry.yarnpkg.com/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz#7c1f07f10751a78963cfabee38017cbc8b7786d1" + integrity sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA== dependencies: "@types/estree-jsx" "^1.0.0" "@types/hast" "^2.0.0" @@ -4255,7 +4218,7 @@ mdast-util-mdx-jsx@^2.0.0: mdast-util-mdx@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz#49b6e70819b99bb615d7223c088d295e53bb810f" integrity sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw== dependencies: mdast-util-from-markdown "^1.0.0" @@ -4266,7 +4229,7 @@ mdast-util-mdx@^2.0.0: mdast-util-mdxjs-esm@^1.0.0: version "1.3.1" - resolved "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz#645d02cd607a227b49721d146fd81796b2e2d15b" integrity sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w== dependencies: "@types/estree-jsx" "^1.0.0" @@ -4277,7 +4240,7 @@ mdast-util-mdxjs-esm@^1.0.0: mdast-util-phrasing@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz#c7c21d0d435d7fb90956038f02e8702781f95463" integrity sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg== dependencies: "@types/mdast" "^3.0.0" @@ -4285,7 +4248,7 @@ mdast-util-phrasing@^3.0.0: mdast-util-to-hast@^12.1.0: version "12.3.0" - resolved "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz#045d2825fb04374e59970f5b3f279b5700f6fb49" integrity sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw== dependencies: "@types/hast" "^2.0.0" @@ -4298,9 +4261,9 @@ mdast-util-to-hast@^12.1.0: unist-util-visit "^4.0.0" mdast-util-to-hast@^13.0.0: - version "13.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.0.2.tgz#74c0a9f014bb2340cae6118f6fccd75467792be7" - integrity sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og== + version "13.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz#1ae54d903150a10fe04d59f03b2b95fd210b2124" + integrity sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA== dependencies: "@types/hast" "^3.0.0" "@types/mdast" "^4.0.0" @@ -4310,6 +4273,7 @@ mdast-util-to-hast@^13.0.0: trim-lines "^3.0.0" unist-util-position "^5.0.0" unist-util-visit "^5.0.0" + vfile "^6.0.0" mdast-util-to-markdown@^0.6.0: version "0.6.5" @@ -4325,7 +4289,7 @@ mdast-util-to-markdown@^0.6.0: mdast-util-to-markdown@^1.0.0, mdast-util-to-markdown@^1.3.0: version "1.5.0" - resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz#c13343cb3fc98621911d33b5cd42e7d0731171c6" integrity sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A== dependencies: "@types/mdast" "^3.0.0" @@ -4344,7 +4308,7 @@ mdast-util-to-string@^2.0.0: mdast-util-to-string@^3.0.0, mdast-util-to-string@^3.1.0: version "3.2.0" - resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz#66f7bb6324756741c5f47a53557f0cbf16b6f789" integrity sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg== dependencies: "@types/mdast" "^3.0.0" @@ -4360,22 +4324,22 @@ merge2@^1.3.0, merge2@^1.4.1: integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== mermaid@^10.2.2: - version "10.4.0" - resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-10.4.0.tgz#f89bf0ada161cbbe4dba2776e805119f7245a102" - integrity sha512-4QCQLp79lvz7UZxow5HUX7uWTPJOaQBVExduo91tliXC7v78i6kssZOPHxLL+Xs30KU72cpPn3g3imw/xm/gaw== + version "10.9.0" + resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-10.9.0.tgz#4d1272fbe434bd8f3c2c150554dc8a23a9bf9361" + integrity sha512-swZju0hFox/B/qoLKK0rOxxgh8Cf7rJSfAUc1u8fezVihYMvrJAS45GzAxTVf4Q+xn9uMgitBcmWk7nWGXOs/g== dependencies: "@braintree/sanitize-url" "^6.0.1" "@types/d3-scale" "^4.0.3" "@types/d3-scale-chromatic" "^3.0.0" - cytoscape "^3.23.0" + cytoscape "^3.28.1" cytoscape-cose-bilkent "^4.1.0" - cytoscape-fcose "^2.1.0" d3 "^7.4.0" d3-sankey "^0.12.3" dagre-d3-es "7.0.10" dayjs "^1.11.7" dompurify "^3.0.5" - elkjs "^0.8.2" + elkjs "^0.9.0" + katex "^0.16.9" khroma "^2.0.0" lodash-es "^4.17.21" mdast-util-from-markdown "^1.3.0" @@ -4386,9 +4350,9 @@ mermaid@^10.2.2: web-worker "^1.2.0" micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: - version "1.0.6" - resolved "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz" - integrity sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz#1386628df59946b2d39fb2edfd10f3e8e0a75bb8" + integrity sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw== dependencies: decode-named-character-reference "^1.0.0" micromark-factory-destination "^1.0.0" @@ -4408,20 +4372,19 @@ micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: uvu "^0.5.0" micromark-extension-gfm-autolink-literal@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz" - integrity sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg== + version "1.0.5" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz#5853f0e579bbd8ef9e39a7c0f0f27c5a063a66e7" + integrity sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg== dependencies: micromark-util-character "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-extension-gfm-footnote@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.0.tgz" - integrity sha512-RWYce7j8+c0n7Djzv5NzGEGitNNYO3uj+h/XYMdS/JinH1Go+/Qkomg/rfxExFzYTiydaV6GLeffGO5qcJbMPA== + version "1.1.2" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz#05e13034d68f95ca53c99679040bc88a6f92fe2e" + integrity sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q== dependencies: micromark-core-commonmark "^1.0.0" micromark-factory-space "^1.0.0" @@ -4433,9 +4396,9 @@ micromark-extension-gfm-footnote@^1.0.0: uvu "^0.5.0" micromark-extension-gfm-strikethrough@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.5.tgz" - integrity sha512-X0oI5eYYQVARhiNfbETy7BfLSmSilzN1eOuoRnrf9oUNsPRrWOAe9UqSizgw1vNxQBfOwL+n2610S3bYjVNi7w== + version "1.0.7" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz#c8212c9a616fa3bf47cb5c711da77f4fdc2f80af" + integrity sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw== dependencies: micromark-util-chunked "^1.0.0" micromark-util-classify-character "^1.0.0" @@ -4445,9 +4408,9 @@ micromark-extension-gfm-strikethrough@^1.0.0: uvu "^0.5.0" micromark-extension-gfm-table@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz" - integrity sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg== + version "1.0.7" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz#dcb46074b0c6254c3fc9cc1f6f5002c162968008" + integrity sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4457,15 +4420,15 @@ micromark-extension-gfm-table@^1.0.0: micromark-extension-gfm-tagfilter@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz#aa7c4dd92dabbcb80f313ebaaa8eb3dac05f13a7" integrity sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g== dependencies: micromark-util-types "^1.0.0" micromark-extension-gfm-task-list-item@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.4.tgz" - integrity sha512-9XlIUUVnYXHsFF2HZ9jby4h3npfX10S1coXTnV035QGPgrtNYQq3J6IfIvcCIUAJrrqBVi5BqA/LmaOMJqPwMQ== + version "1.0.5" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz#b52ce498dc4c69b6a9975abafc18f275b9dde9f4" + integrity sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4474,9 +4437,9 @@ micromark-extension-gfm-task-list-item@^1.0.0: uvu "^0.5.0" micromark-extension-gfm@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.1.tgz" - integrity sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA== + version "2.0.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz#e517e8579949a5024a493e49204e884aa74f5acf" + integrity sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ== dependencies: micromark-extension-gfm-autolink-literal "^1.0.0" micromark-extension-gfm-footnote "^1.0.0" @@ -4496,9 +4459,9 @@ micromark-extension-math@^0.1.0: micromark "~2.11.0" micromark-extension-math@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.0.tgz" - integrity sha512-WH+fJkveMvM3ZN+deb/jT3UW623x8xO9ycfJNDC+UQXX+V72RO6hT9KqxA7c8XFwozAFJ7tufOeG+x/CVSXHUw== + version "2.1.2" + resolved "https://registry.yarnpkg.com/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz#52c70cc8266cd20ada1ef5a479bfed9a19b789bf" + integrity sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg== dependencies: "@types/katex" "^0.16.0" katex "^0.16.0" @@ -4509,10 +4472,11 @@ micromark-extension-math@^2.0.0: uvu "^0.5.0" micromark-extension-mdx-expression@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.4.tgz" - integrity sha512-TCgLxqW6ReQ3AJgtj1P0P+8ZThBTloLbeb7jNaqr6mCOLDpxUiBFE/9STgooMZttEwOQu5iEcCCa3ZSDhY9FGw== + version "1.0.8" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz#5bc1f5fd90388e8293b3ef4f7c6f06c24aff6314" + integrity sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw== dependencies: + "@types/estree" "^1.0.0" micromark-factory-mdx-expression "^1.0.0" micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4522,11 +4486,12 @@ micromark-extension-mdx-expression@^1.0.0: uvu "^0.5.0" micromark-extension-mdx-jsx@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.3.tgz" - integrity sha512-VfA369RdqUISF0qGgv2FfV7gGjHDfn9+Qfiv5hEwpyr1xscRj/CiVRkU7rywGFCO7JwJ5L0e7CJz60lY52+qOA== + version "1.0.5" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz#e72d24b7754a30d20fb797ece11e2c4e2cae9e82" + integrity sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA== dependencies: "@types/acorn" "^4.0.0" + "@types/estree" "^1.0.0" estree-util-is-identifier-name "^2.0.0" micromark-factory-mdx-expression "^1.0.0" micromark-factory-space "^1.0.0" @@ -4537,17 +4502,18 @@ micromark-extension-mdx-jsx@^1.0.0: vfile-message "^3.0.0" micromark-extension-mdx-md@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.0.tgz" - integrity sha512-xaRAMoSkKdqZXDAoSgp20Azm0aRQKGOl0RrS81yGu8Hr/JhMsBmfs4wR7m9kgVUIO36cMUQjNyiyDKPrsv8gOw== + version "1.0.1" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz#595d4b2f692b134080dca92c12272ab5b74c6d1a" + integrity sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA== dependencies: micromark-util-types "^1.0.0" micromark-extension-mdxjs-esm@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.3.tgz" - integrity sha512-2N13ol4KMoxb85rdDwTAC6uzs8lMX0zeqpcyx7FhS7PxXomOnLactu8WI8iBNXW8AVyea3KIJd/1CKnUmwrK9A== + version "1.0.5" + resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz#e4f8be9c14c324a80833d8d3a227419e2b25dec1" + integrity sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w== dependencies: + "@types/estree" "^1.0.0" micromark-core-commonmark "^1.0.0" micromark-util-character "^1.0.0" micromark-util-events-to-acorn "^1.0.0" @@ -4558,9 +4524,9 @@ micromark-extension-mdxjs-esm@^1.0.0: vfile-message "^3.0.0" micromark-extension-mdxjs@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.0.tgz" - integrity sha512-TZZRZgeHvtgm+IhtgC2+uDMR7h8eTKF0QUX9YsgoL9+bADBpBY6SiLvWqnBlLbCEevITmTqmEuY3FoxMKVs1rQ== + version "1.0.1" + resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz#f78d4671678d16395efeda85170c520ee795ded8" + integrity sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q== dependencies: acorn "^8.0.0" acorn-jsx "^5.0.0" @@ -4572,18 +4538,18 @@ micromark-extension-mdxjs@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-destination@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz" - integrity sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz#eb815957d83e6d44479b3df640f010edad667b9f" + integrity sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-factory-label@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz" - integrity sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz#cc95d5478269085cfa2a7282b3de26eb2e2dec68" + integrity sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4591,11 +4557,11 @@ micromark-factory-label@^1.0.0: uvu "^0.5.0" micromark-factory-mdx-expression@^1.0.0: - version "1.0.7" - resolved "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.7.tgz" - integrity sha512-QAdFbkQagTZ/eKb8zDGqmjvgevgJH3+aQpvvKrXWxNJp3o8/l2cAbbrBd0E04r0Gx6nssPpqWIjnbHFvZu5qsQ== + version "1.0.9" + resolved "https://registry.yarnpkg.com/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz#57ba4571b69a867a1530f34741011c71c73a4976" + integrity sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA== dependencies: - micromark-factory-space "^1.0.0" + "@types/estree" "^1.0.0" micromark-util-character "^1.0.0" micromark-util-events-to-acorn "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4605,28 +4571,27 @@ micromark-factory-mdx-expression@^1.0.0: vfile-message "^3.0.0" micromark-factory-space@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz" - integrity sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz#c8f40b0640a0150751d3345ed885a080b0d15faf" + integrity sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ== dependencies: micromark-util-character "^1.0.0" micromark-util-types "^1.0.0" micromark-factory-title@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz" - integrity sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz#dd0fe951d7a0ac71bdc5ee13e5d1465ad7f50ea1" + integrity sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-factory-whitespace@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz" - integrity sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz#798fb7489f4c8abafa7ca77eed6b5745853c9705" + integrity sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4634,56 +4599,56 @@ micromark-factory-whitespace@^1.0.0: micromark-util-types "^1.0.0" micromark-util-character@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz" - integrity sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg== + version "1.2.0" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-1.2.0.tgz#4fedaa3646db249bc58caeb000eb3549a8ca5dcc" + integrity sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg== dependencies: micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-util-character@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.0.1.tgz#52b824c2e2633b6fb33399d2ec78ee2a90d6b298" - integrity sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.0.tgz#31320ace16b4644316f6bf057531689c71e2aee1" + integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ== dependencies: micromark-util-symbol "^2.0.0" micromark-util-types "^2.0.0" micromark-util-chunked@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz" - integrity sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz#37a24d33333c8c69a74ba12a14651fd9ea8a368b" + integrity sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ== dependencies: micromark-util-symbol "^1.0.0" micromark-util-classify-character@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz" - integrity sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz#6a7f8c8838e8a120c8e3c4f2ae97a2bff9190e9d" + integrity sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-util-combine-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz" - integrity sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz#192e2b3d6567660a85f735e54d8ea6e3952dbe84" + integrity sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA== dependencies: micromark-util-chunked "^1.0.0" micromark-util-types "^1.0.0" micromark-util-decode-numeric-character-reference@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz" - integrity sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz#b1e6e17009b1f20bc652a521309c5f22c85eb1c6" + integrity sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw== dependencies: micromark-util-symbol "^1.0.0" micromark-util-decode-string@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz" - integrity sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz#dc12b078cba7a3ff690d0203f95b5d5537f2809c" + integrity sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ== dependencies: decode-named-character-reference "^1.0.0" micromark-util-character "^1.0.0" @@ -4691,9 +4656,9 @@ micromark-util-decode-string@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-encode@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz" - integrity sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz#92e4f565fd4ccb19e0dcae1afab9a173bbeb19a5" + integrity sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw== micromark-util-encode@^2.0.0: version "2.0.0" @@ -4701,41 +4666,42 @@ micromark-util-encode@^2.0.0: integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA== micromark-util-events-to-acorn@^1.0.0: - version "1.2.1" - resolved "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.1.tgz" - integrity sha512-mkg3BaWlw6ZTkQORrKVBW4o9ICXPxLtGz51vml5mQpKFdo9vqIX68CAx5JhTOdjQyAHH7JFmm4rh8toSPQZUmg== + version "1.2.3" + resolved "https://registry.yarnpkg.com/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz#a4ab157f57a380e646670e49ddee97a72b58b557" + integrity sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w== dependencies: "@types/acorn" "^4.0.0" "@types/estree" "^1.0.0" + "@types/unist" "^2.0.0" estree-util-visit "^1.0.0" + micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" uvu "^0.5.0" - vfile-location "^4.0.0" vfile-message "^3.0.0" micromark-util-html-tag-name@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz" - integrity sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA== + version "1.2.0" + resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz#48fd7a25826f29d2f71479d3b4e83e94829b3588" + integrity sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q== micromark-util-normalize-identifier@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz" - integrity sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz#7a73f824eb9f10d442b4d7f120fecb9b38ebf8b7" + integrity sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q== dependencies: micromark-util-symbol "^1.0.0" micromark-util-resolve-all@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz" - integrity sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz#4652a591ee8c8fa06714c9b54cd6c8e693671188" + integrity sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA== dependencies: micromark-util-types "^1.0.0" micromark-util-sanitize-uri@^1.0.0, micromark-util-sanitize-uri@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz" - integrity sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg== + version "1.2.0" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz#613f738e4400c6eedbc53590c67b197e30d7f90d" + integrity sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A== dependencies: micromark-util-character "^1.0.0" micromark-util-encode "^1.0.0" @@ -4751,9 +4717,9 @@ micromark-util-sanitize-uri@^2.0.0: micromark-util-symbol "^2.0.0" micromark-util-subtokenize@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz" - integrity sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz#941c74f93a93eaf687b9054aeb94642b0e92edb1" + integrity sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A== dependencies: micromark-util-chunked "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4761,9 +4727,9 @@ micromark-util-subtokenize@^1.0.0: uvu "^0.5.0" micromark-util-symbol@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz" - integrity sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz#813cd17837bdb912d069a12ebe3a44b6f7063142" + integrity sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag== micromark-util-symbol@^2.0.0: version "2.0.0" @@ -4771,9 +4737,9 @@ micromark-util-symbol@^2.0.0: integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw== micromark-util-types@^1.0.0, micromark-util-types@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz" - integrity sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w== + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-1.1.0.tgz#e6676a8cae0bb86a2171c498167971886cb7e283" + integrity sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg== micromark-util-types@^2.0.0: version "2.0.0" @@ -4781,9 +4747,9 @@ micromark-util-types@^2.0.0: integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w== micromark@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz" - integrity sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA== + version "3.2.0" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-3.2.0.tgz#1af9fef3f995ea1ea4ac9c7e2f19c48fd5c006e9" + integrity sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA== dependencies: "@types/debug" "^4.0.0" debug "^4.0.0" @@ -4886,7 +4852,7 @@ mkdirp@^0.5.5: mri@^1.1.0: version "1.2.0" - resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== ms@2.0.0: @@ -4896,7 +4862,7 @@ ms@2.0.0: ms@2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.1.1, ms@^2.1.3: @@ -4935,7 +4901,7 @@ natural-compare@^1.4.0: next-mdx-remote@^4.2.1: version "4.4.1" - resolved "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz" + resolved "https://registry.yarnpkg.com/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz#96b16e2adc54dbcd0a7f204a9a3c3fd269d41abf" integrity sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ== dependencies: "@mdx-js/mdx" "^2.2.1" @@ -4995,25 +4961,25 @@ nextra-theme-docs@^2.12.3: zod "^3.20.2" nextra@^2.12.3: - version "2.12.3" - resolved "https://registry.yarnpkg.com/nextra/-/nextra-2.12.3.tgz#9ef4fc3f2c62fbd3f8ba557565061f97813daad1" - integrity sha512-0d8wXpGAccFpMFZuxnlnN56MIZj+AWGYXW3Xk6ByXyr0Mb+B/C/0aGZV5YrBex0V1wEqMGQl4LLAJI+AfCbSXg== + version "2.13.4" + resolved "https://registry.yarnpkg.com/nextra/-/nextra-2.13.4.tgz#49e9f558735d86292cd8578b5a69f6d926bc2a14" + integrity sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw== dependencies: - "@headlessui/react" "^1.7.10" + "@headlessui/react" "^1.7.17" "@mdx-js/mdx" "^2.3.0" "@mdx-js/react" "^2.3.0" "@napi-rs/simple-git" "^0.1.9" - "@theguild/remark-mermaid" "^0.0.4" - "@theguild/remark-npm2yarn" "^0.1.1" + "@theguild/remark-mermaid" "^0.0.5" + "@theguild/remark-npm2yarn" "^0.2.0" clsx "^2.0.0" github-slugger "^2.0.0" graceful-fs "^4.2.11" gray-matter "^4.0.3" - katex "^0.16.8" + katex "^0.16.9" lodash.get "^4.4.2" next-mdx-remote "^4.2.1" p-limit "^3.1.0" - rehype-katex "^6.0.3" + rehype-katex "^7.0.0" rehype-pretty-code "0.9.11" rehype-raw "^7.0.0" remark-gfm "^3.0.1" @@ -5024,7 +4990,7 @@ nextra@^2.12.3: title "^3.5.3" unist-util-remove "^4.0.0" unist-util-visit "^5.0.0" - zod "^3.22.2" + zod "^3.22.3" node-abi@^3.3.0: version "3.40.0" @@ -5088,15 +5054,15 @@ normalize-range@^0.1.2: npm-run-path@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== dependencies: path-key "^2.0.0" -npm-to-yarn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/npm-to-yarn/-/npm-to-yarn-2.1.0.tgz#ff4e18028d18eb844691f1ccb556be5f3ccfde34" - integrity sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA== +npm-to-yarn@^2.1.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/npm-to-yarn/-/npm-to-yarn-2.2.1.tgz#048843a6630621daffc6a239dfc89698b8abf7e8" + integrity sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ== object-assign@^2.0.0: version "2.1.1" @@ -5217,7 +5183,7 @@ osx-release@^1.0.0: p-finally@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-limit@^3.0.2, p-limit@^3.1.0: @@ -5260,7 +5226,7 @@ parse-entities@^2.0.0: parse-entities@^4.0.0: version "4.0.1" - resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.1.tgz#4e2a01111fb1c986549b944af39eeda258fc9e4e" integrity sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w== dependencies: "@types/unist" "^2.0.0" @@ -5274,7 +5240,7 @@ parse-entities@^4.0.0: 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" + resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz#7c63b61190d61e4d53a1197f0c83c47bb670ffa3" integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ== parse-path@^7.0.0: @@ -5322,7 +5288,7 @@ path-is-absolute@^1.0.0: path-key@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== path-key@^3.1.0: @@ -5342,7 +5308,7 @@ path-type@^4.0.0: periscopic@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" integrity sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw== dependencies: "@types/estree" "^1.0.0" @@ -5499,9 +5465,9 @@ property-information@^5.0.0: xtend "^4.0.0" property-information@^6.0.0: - version "6.2.0" - resolved "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz" - integrity sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg== + version "6.4.1" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.4.1.tgz#de8b79a7415fd2107dfbe65758bb2cc9dfcf60ac" + integrity sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w== protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" @@ -5520,7 +5486,7 @@ prr@~1.0.1: pseudomap@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28: @@ -5673,7 +5639,7 @@ readdirp@~3.6.0: reading-time@^1.3.0: version "1.5.0" - resolved "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz" + resolved "https://registry.yarnpkg.com/reading-time/-/reading-time-1.5.0.tgz#d2a7f1b6057cb2e169beaf87113cc3411b5bc5bb" integrity sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg== regenerator-runtime@^0.13.11: @@ -5707,17 +5673,18 @@ rehype-katex@5.0.0: unified "^9.0.0" unist-util-visit "^2.0.0" -rehype-katex@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/rehype-katex/-/rehype-katex-6.0.3.tgz#83e5b929b0967978e9491c02117f55be3594d7e1" - integrity sha512-ByZlRwRUcWegNbF70CVRm2h/7xy7jQ3R9LaY4VVSvjnoVWwWVhNL60DiZsBpC5tSzYQOCvDbzncIpIjPZWodZA== +rehype-katex@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/rehype-katex/-/rehype-katex-7.0.0.tgz#f5e9e2825981175a7b0a4d58ed9816c33576dfed" + integrity sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q== dependencies: - "@types/hast" "^2.0.0" - "@types/katex" "^0.14.0" - hast-util-from-html-isomorphic "^1.0.0" - hast-util-to-text "^3.1.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 "^4.0.0" + unist-util-visit-parents "^6.0.0" + vfile "^6.0.0" rehype-parse@^7.0.0: version "7.0.1" @@ -5747,7 +5714,7 @@ rehype-raw@^7.0.0: remark-gfm@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-3.0.1.tgz#0b180f095e3036545e9dddac0e8df3fa5cfee54f" integrity sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig== dependencies: "@types/mdast" "^3.0.0" @@ -5765,7 +5732,7 @@ remark-math@4.0.0: remark-math@^5.1.1: version "5.1.1" - resolved "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz" + resolved "https://registry.yarnpkg.com/remark-math/-/remark-math-5.1.1.tgz#459e798d978d4ca032e745af0bac81ddcdf94964" integrity sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw== dependencies: "@types/mdast" "^3.0.0" @@ -5775,16 +5742,16 @@ remark-math@^5.1.1: remark-mdx@^2.0.0: version "2.3.0" - resolved "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-2.3.0.tgz#efe678025a8c2726681bde8bf111af4a93943db4" integrity sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g== dependencies: mdast-util-mdx "^2.0.0" micromark-extension-mdxjs "^1.0.0" remark-parse@^10.0.0: - version "10.0.1" - resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz" - integrity sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw== + version "10.0.2" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-10.0.2.tgz#ca241fde8751c2158933f031a4e3efbaeb8bc262" + integrity sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw== dependencies: "@types/mdast" "^3.0.0" mdast-util-from-markdown "^1.0.0" @@ -5792,7 +5759,7 @@ remark-parse@^10.0.0: remark-reading-time@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/remark-reading-time/-/remark-reading-time-2.0.1.tgz#fe8bb8e420db7678dc749385167adb4fc99318f7" integrity sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw== dependencies: estree-util-is-identifier-name "^2.0.0" @@ -5802,7 +5769,7 @@ remark-reading-time@^2.0.1: remark-rehype@^10.0.0: version "10.1.0" - resolved "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz" + resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-10.1.0.tgz#32dc99d2034c27ecaf2e0150d22a6dcccd9a6279" integrity sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw== dependencies: "@types/hast" "^2.0.0" @@ -5883,7 +5850,7 @@ robots-txt-parse@~0.0.4: stream-combiner "^0.2.1" through "^2.3.4" -robust-predicates@^3.0.0: +robust-predicates@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.2.tgz#d5b28528c4824d20fc48df1928d41d9efa1ad771" integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== @@ -5924,7 +5891,7 @@ rw@1: sade@^1.7.3: version "1.8.1" - resolved "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz" + resolved "https://registry.yarnpkg.com/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701" integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== dependencies: mri "^1.1.0" @@ -6023,7 +5990,7 @@ sharp@^0.31.3: shebang-command@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" @@ -6037,7 +6004,7 @@ shebang-command@^2.0.0: shebang-regex@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== shebang-regex@^3.0.0: @@ -6046,9 +6013,9 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^0.14.3: - version "0.14.4" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.4.tgz#2454969b466a5f75067d0f2fa0d7426d32881b20" - integrity sha512-IXCRip2IQzKwxArNNq1S+On4KPML3Yyn8Zzs/xRgcgOWIr8ntIK3IKzjFPfjy/7kt9ZMjc+FItfqHRBg8b6tNQ== + version "0.14.7" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.7.tgz#c3c9e1853e9737845f1d2ef81b31bcfb07056d4e" + integrity sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg== dependencies: ansi-sequence-parser "^1.1.0" jsonc-parser "^3.2.0" @@ -6066,7 +6033,7 @@ side-channel@^1.0.4: signal-exit@^3.0.0: version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-concat@^1.0.0: @@ -6092,12 +6059,12 @@ simple-swizzle@^0.2.2: slash@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== sort-keys@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-5.0.0.tgz#5d775f8ae93ecc29bc7312bbf3acac4e36e3c446" integrity sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw== dependencies: is-plain-obj "^4.0.0" @@ -6119,7 +6086,7 @@ source-map@^0.6.1: source-map@^0.7.0: version "0.7.4" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== sourcemap-codec@^1.4.8: @@ -6134,7 +6101,7 @@ space-separated-tokens@^1.0.0: space-separated-tokens@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== split@^0.3.0: @@ -6279,7 +6246,7 @@ string_decoder@~1.1.1: stringify-entities@^4.0.0: version "4.0.3" - resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.3.tgz#cfabd7039d22ad30f3cc435b0ca2c1574fc88ef8" integrity sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g== dependencies: character-entities-html4 "^2.0.0" @@ -6318,7 +6285,7 @@ strip-bom@^3.0.0: strip-eof@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: @@ -6332,9 +6299,9 @@ strip-json-comments@~2.0.1: integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== style-to-object@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz" - integrity sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw== + version "0.4.4" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.4.4.tgz#266e3dfd56391a7eefb7770423612d043c3f33ec" + integrity sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg== dependencies: inline-style-parser "0.1.1" @@ -6360,7 +6327,7 @@ styled-jsx@5.1.1: dependencies: client-only "0.0.1" -stylis@4.3.1: +stylis@4.3.1, stylis@^4.1.3: version "4.3.1" resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.1.tgz#ed8a9ebf9f76fe1e12d462f5cc3c4c980b23a7eb" integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== @@ -6370,11 +6337,6 @@ stylis@^4.0.6: resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz" integrity sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA== -stylis@^4.1.3: - version "4.3.0" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.0.tgz#abe305a669fc3d8777e10eefcfc73ad861c5588c" - integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== - supports-color@^0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz" @@ -6387,7 +6349,7 @@ supports-color@^2.0.0: supports-color@^4.0.0: version "4.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" integrity sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw== dependencies: has-flag "^2.0.0" @@ -6507,7 +6469,7 @@ through@2, through@^2.3.4, through@~2.3.4: title@^3.5.3: version "3.5.3" - resolved "https://registry.npmjs.org/title/-/title-3.5.3.tgz" + resolved "https://registry.yarnpkg.com/title/-/title-3.5.3.tgz#b338d701a3d949db6b49b2c86f409f9c2f36cd91" integrity sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q== dependencies: arg "1.0.0" @@ -6517,7 +6479,7 @@ title@^3.5.3: titleize@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/titleize/-/titleize-1.0.0.tgz#7d350722061830ba6617631e0cfd3ea08398d95a" integrity sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw== tmp@0.0.x: @@ -6559,7 +6521,7 @@ tr46@~0.0.3: trim-lines@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== trough@^1.0.0: @@ -6568,9 +6530,9 @@ trough@^1.0.0: integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== trough@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz" - integrity sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g== + version "2.2.0" + resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f" + integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw== ts-dedent@^2.2.0: version "2.2.0" @@ -6640,7 +6602,7 @@ type-fest@^0.7.1: type-fest@^1.0.2: version "1.4.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== typed-array-length@^1.0.4: @@ -6674,7 +6636,7 @@ unbox-primitive@^1.0.2: unified@^10.0.0: version "10.1.2" - resolved "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz" + resolved "https://registry.yarnpkg.com/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== dependencies: "@types/unist" "^2.0.0" @@ -6704,17 +6666,17 @@ unist-util-find-after@^3.0.0: dependencies: unist-util-is "^4.0.0" -unist-util-find-after@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-4.0.1.tgz" - integrity sha512-QO/PuPMm2ERxC6vFXEPtmAutOopy5PknD+Oq64gGwxKtk4xwo9Z97t9Av1obPmGU0IyTa6EKYUfTrK2QJS3Ozw== +unist-util-find-after@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz#3fccc1b086b56f34c8b798e1ff90b5c54468e896" + integrity sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ== dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^5.0.0" + "@types/unist" "^3.0.0" + unist-util-is "^6.0.0" unist-util-generated@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-2.0.1.tgz#e37c50af35d3ed185ac6ceacb6ca0afb28a85cae" integrity sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A== unist-util-is@^4.0.0: @@ -6724,7 +6686,7 @@ unist-util-is@^4.0.0: unist-util-is@^5.0.0: version "5.2.1" - resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-5.2.1.tgz#b74960e145c18dcb6226bc57933597f5486deae9" integrity sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw== dependencies: "@types/unist" "^2.0.0" @@ -6738,14 +6700,14 @@ unist-util-is@^6.0.0: unist-util-position-from-estree@^1.0.0, unist-util-position-from-estree@^1.1.0: version "1.1.2" - resolved "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz" + resolved "https://registry.yarnpkg.com/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz#8ac2480027229de76512079e377afbcabcfcce22" integrity sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww== dependencies: "@types/unist" "^2.0.0" unist-util-position@^4.0.0: version "4.0.4" - resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-4.0.4.tgz#93f6d8c7d6b373d9b825844645877c127455f037" integrity sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg== dependencies: "@types/unist" "^2.0.0" @@ -6759,12 +6721,20 @@ unist-util-position@^5.0.0: unist-util-remove-position@^4.0.0: version "4.0.2" - resolved "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz#a89be6ea72e23b1a402350832b02a91f6a9afe51" integrity sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ== dependencies: "@types/unist" "^2.0.0" unist-util-visit "^4.0.0" +unist-util-remove-position@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz#fea68a25658409c9460408bc6b4991b965b52163" + integrity sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q== + dependencies: + "@types/unist" "^3.0.0" + unist-util-visit "^5.0.0" + unist-util-remove@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-4.0.0.tgz#94b7d6bbd24e42d2f841e947ed087be5c82b222e" @@ -6783,7 +6753,7 @@ unist-util-stringify-position@^2.0.0: unist-util-stringify-position@^3.0.0: version "3.0.3" - resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz#03ad3348210c2d930772d64b489580c13a7db39d" integrity sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg== dependencies: "@types/unist" "^2.0.0" @@ -6805,7 +6775,7 @@ unist-util-visit-parents@^3.0.0: unist-util-visit-parents@^4.0.0: version "4.1.1" - resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz#e83559a4ad7e6048a46b1bdb22614f2f3f4724f2" integrity sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw== dependencies: "@types/unist" "^2.0.0" @@ -6813,7 +6783,7 @@ unist-util-visit-parents@^4.0.0: unist-util-visit-parents@^5.0.0, unist-util-visit-parents@^5.1.1: version "5.1.3" - resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz#b4520811b0ca34285633785045df7a8d6776cfeb" integrity sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg== dependencies: "@types/unist" "^2.0.0" @@ -6838,7 +6808,7 @@ unist-util-visit@^2.0.0: unist-util-visit@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-3.1.0.tgz#9420d285e1aee938c7d9acbafc8e160186dbaf7b" integrity sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA== dependencies: "@types/unist" "^2.0.0" @@ -6847,7 +6817,7 @@ unist-util-visit@^3.1.0: unist-util-visit@^4.0.0: version "4.1.2" - resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-4.1.2.tgz#125a42d1eb876283715a3cb5cceaa531828c72e2" integrity sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg== dependencies: "@types/unist" "^2.0.0" @@ -6919,7 +6889,7 @@ uuid@^9.0.0: uvu@^0.5.0: version "0.5.6" - resolved "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz" + resolved "https://registry.yarnpkg.com/uvu/-/uvu-0.5.6.tgz#2754ca20bcb0bb59b64e9985e84d2e81058502df" integrity sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA== dependencies: dequal "^2.0.0" @@ -6932,14 +6902,6 @@ vfile-location@^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-location@^4.0.0: - version "4.1.0" - resolved "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz" - integrity sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw== - dependencies: - "@types/unist" "^2.0.0" - vfile "^5.0.0" - vfile-location@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-5.0.2.tgz#220d9ca1ab6f8b2504a4db398f7ebc149f9cb464" @@ -6950,7 +6912,7 @@ vfile-location@^5.0.0: vfile-matter@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/vfile-matter/-/vfile-matter-3.0.1.tgz#85e26088e43aa85c04d42ffa3693635fa2bc5624" integrity sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg== dependencies: "@types/js-yaml" "^4.0.0" @@ -6967,7 +6929,7 @@ vfile-message@^2.0.0: vfile-message@^3.0.0: version "3.1.4" - resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.4.tgz#15a50816ae7d7c2d1fa87090a7f9f96612b59dea" integrity sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw== dependencies: "@types/unist" "^2.0.0" @@ -6993,7 +6955,7 @@ vfile@^4.0.0: vfile@^5.0.0, vfile@^5.3.0: version "5.3.7" - resolved "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-5.3.7.tgz#de0677e6683e3380fafc46544cfe603118826ab7" integrity sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g== dependencies: "@types/unist" "^2.0.0" @@ -7012,12 +6974,12 @@ vfile@^6.0.0: vscode-oniguruma@^1.7.0: version "1.7.0" - resolved "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz" + resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" integrity sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA== vscode-textmate@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz" + resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-8.0.0.tgz#2c7a3b1163ef0441097e0b5d6389cd5504b59e5d" integrity sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg== web-namespaces@^1.0.0: @@ -7027,13 +6989,13 @@ web-namespaces@^1.0.0: web-namespaces@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== web-worker@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/web-worker/-/web-worker-1.2.0.tgz#5d85a04a7fbc1e7db58f66595d7a3ac7c9c180da" - integrity sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/web-worker/-/web-worker-1.3.0.tgz#e5f2df5c7fe356755a5fb8f8410d4312627e6776" + integrity sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA== webidl-conversions@^3.0.0: version "3.0.1" @@ -7088,7 +7050,7 @@ which-typed-array@^1.1.9: which@^1.2.9: version "1.3.1" - resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" @@ -7134,7 +7096,7 @@ xtend@~3.0.0: yallist@^2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^3.0.2: @@ -7154,7 +7116,7 @@ yaml@^1.10.2: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod@^3.20.2: @@ -7162,10 +7124,10 @@ zod@^3.20.2: resolved "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz" integrity sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw== -zod@^3.22.2: - version "3.22.2" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.2.tgz#3add8c682b7077c05ac6f979fea6998b573e157b" - integrity sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg== +zod@^3.22.3: + version "3.22.4" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" + integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== zwitch@^1.0.0: version "1.0.5" @@ -7174,5 +7136,5 @@ zwitch@^1.0.0: zwitch@^2.0.0: version "2.0.4" - resolved "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From 9affba6b14afa441271fe0b703455d2e339510c3 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Thu, 7 Mar 2024 16:48:42 -0600 Subject: [PATCH 19/29] fixed metajson --- pages/docs/_meta.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/docs/_meta.json b/pages/docs/_meta.json index 939666dc..80d8f977 100644 --- a/pages/docs/_meta.json +++ b/pages/docs/_meta.json @@ -19,7 +19,7 @@ "title": "Services", "type": "doc" }, - "---": { + "----": { "type": "separator" }, "network-information-configuration": { From 0dd16558b6bf90728b494575f498d8dba8add8da Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 08:17:37 -0600 Subject: [PATCH 20/29] Update overview page to match with site and WP --- pages/docs/index.mdx | 62 ++++++++++++++++++++++++++------------------ 1 file changed, 37 insertions(+), 25 deletions(-) diff --git a/pages/docs/index.mdx b/pages/docs/index.mdx index e6fb6130..7972417e 100644 --- a/pages/docs/index.mdx +++ b/pages/docs/index.mdx @@ -1,6 +1,6 @@ --- title: Overview, Use Cases and Actions -description: Explore the Tangle Network ecosystem at a glance including use cases including interoperable shielded pools, identity-based systems, decentralized private finance, and secure multi-party computation, as well as features, and roadmap. +description: Explore the Tangle Network ecosystem at a glance including use cases including secure multi-party computation, as well as features, and roadmap. --- import { RepoArea } from "../../components/RepoArea"; @@ -13,33 +13,45 @@ import { CommonActions } from "../../components/CommonActions"; -## Introduction +# Tangle Network: An MPC-as-a-service blockchain restaking infrastructure -Tangle Network is a Substrate-based mainnet crafted to deliver decentralized cloud services, emphasizing Multi-Party Computation (MPC) as a Service (MPCaaS). Enabled by validator restaking, Tangle provides an ideal framework for application development that prioritizes privacy through the secure computation of private inputs. +## Introduction -Our platform supports an array of critical services tailored for developers working on advanced Zero-Knowledge (ZK) and cross-chain solutions. Central to that is the fusion of cross-chain interoperability, Ethereum Virtual Machine (EVM) compatibility, sophisticated governance protocols, and ZK services. +The Tangle Network is a groundbreaking blockchain platform designed to support cross-chain and zero-knowledge (ZK) applications. Built on the advanced Substrate framework, Tangle Network offers a suite of multi-party computation (MPC) primitives on-demand, empowering developers to create privacy-enhancing ZK applications, cross-chain solutions, and other complex, cryptographically secure decentralized applications. -These services include zkSNARKS-as-a-Service (zk-SNARKsaaS) and Trusted Setups-as-a-Service, as well as non-ZK MPC services like Threshold Signature Schemes as-a-Service (TSSaaS) and threshold encryption. Together, these strengths set the stage for an era of rapid implementation of privacy-centric applications. +At the core of Tangle Network is its innovative restaking mechanism. This allows validators from Tangle and other networks to provide MPC services to paying customers over a decentralized network, earning rewards in the process. The combination of restaking and MPC services enables Tangle to function as an outsourced, crypto-economically secured service provider. ## Key Features -**1. Cross-Chain Functionality and EVM Compatibility** +- **MPC-as-a-Service (MaaS)**: Tangle natively supports various multi-party computation primitives and zero-knowledge proving services that facilitate the development of new applications, particularly in the privacy-preserving space. These services benefit the Tangle community by positioning the network as a core infrastructure for any ZK application across multiple ecosystems. + +- **Restaking**: Tangle's restaking system is directly integrated into its MPC-as-a-Service infrastructure. Validators can restake directly on the set of roles available to them in the runtime, with each role representing an eligible service. This mechanism incentivizes validators to provide high-quality MPC services. + +- **Interoperability**: Tangle is dedicated to enabling fluid cross-chain interactions, from asset bridging to advanced cross-chain communication. We imagine this will be achieved through various technologies such as private bridges, zkBridges, IBC pallets, and XCM. + +- **EVM Compatibility**: The Ethereum Virtual Machine (EVM) is a critical component of Tangle Network, serving as a conduit for compatibility and interoperability with Ethereum-based tools and applications. Developers can seamlessly construct decentralized applications (DApps), generate Non-Fungible Tokens (NFTs), and utilize ERC20 tokens across diverse networks. + +## Services + +Tangle Network offers a range of services to support the development and deployment of advanced cryptographic applications: + +- **Signing as a Service (TSSaaS)**: Tangle provides threshold signatures as a service, enabling the creation of decentralized bridges, oracles, and custody solutions. This service leverages a distributed key generation protocol to ensure robust security. -The Tangle Network breaks traditional chain boundaries, allowing seamless interaction, data exchange, and operation of ZK applications across different blockchain networks. Leveraging the power of the Ethereum Virtual Machine (EVM) on Substrate, developers can utilize familiar EVM tooling and compatibility to build decentralized applications (DApps), create Non-Fungible Tokens (NFTs), and utilize ERC20 tokens across multiple networks. +- **zkSNARKs as a Service (zkSaaS)**: To address the computational challenges faced by resource-constrained devices when running ZK applications, Tangle offers proof generation as a service. This allows developers to outsource the proof generation process to a privacy-preserving infrastructure. -**2. Advanced Governance** +- **Trusted Setups as a Service (TaaS)**: Tangle streamlines the trusted setup process for ZK applications by providing this as a service. This reduces the friction for developers, enabling them to deploy ZK applications to production without organizing a trusted setup themselves. -The Tangle Network implements an innovative governance model based on Distributed Key Generation (DKG) protocol. The DKG protocol serves as a security instrument for the Tangle Network's cross-chain Anchor zkApps, ensuring the validity of bridge updates with crypto-economically secured threshold-signatures. +## Governance and Community -DKG is a cryptographic method where multiple entities collaboratively produce a shared public and private key. In the Tangle Network, DKG fortifies the governance of distributed applications, particularly the Anchor System. It bolsters the security of the network by ensuring the integrity of signed messages via threshold signatures. This not only provides resistance against potential threats but also amplifies the Tangle Network's credibility. +Tangle Network employs an advanced governance model underpinned by a Distributed Key Generation (DKG) protocol. This protocol serves as a security mechanism for the network's cross-chain applications, validating bridge updates with crypto-economically protected threshold signatures. -**3. Privacy-Enhancing ZK Applications** +The Tangle community is a vibrant mix of developers, privacy researchers, decentralized app (dApp) users, bridge users, and token holders. Community members assume various roles within the ecosystem, including technology advocates, validators, data relayers, governance participants, and open-source contributors. -Privacy is a paramount concern in the Tangle Network. By providing an infrastructure for Zero-Knowledge (ZK) applications, we enable users to experience a new generation of privacy-enhancing functionalities. ZK applications empower users to transact, communicate, and interact privately while maintaining the security and immutability of blockchain technology. +## Conclusion -**4. Built on Substrate** +Tangle Network introduces an innovative platform to support cross-chain Zero-Knowledge (ZK) applications and enhance privacy in the blockchain ecosystem. With its unique offering of MPC-as-a-Service, restaking mechanism, and commitment to interoperability, Tangle is well-positioned to become a core infrastructure for enabling privacy-first and interoperable blockchain solutions. -The Tangle Network is built on Substrate, an advanced blockchain framework renowned for its flexibility, scalability, and cutting-edge features. This strategic choice ensures that our platform remains at the forefront of speed, security, and scalability, serving as a reliable backbone for the Tangle Network. Leveraging Substrate's modular architecture, we enable seamless interaction and interoperability with other blockchain networks. +As the network continues to evolve, it aims to expand its services, foster community growth, and drive the adoption of advanced cryptographic techniques in the blockchain space. Tangle Network invites developers, validators, and users to join its mission of building a more private, secure, and interconnected decentralized future. --- @@ -47,28 +59,28 @@ The Tangle Network is built on Substrate, an advanced blockchain framework renow The following is subject to change as DAO governance supports different initiatives. -**Phase 1** +**COMPLETE: Phase 1** -- Test Runtime Upgrade +- Launch democracy governance. - Finalize Tangle Token Distribution - Launch Incentivized testnet **Phase 2** -- Update Tangle Genesis for Launch -- Distribute TNT Tokens -- Launch Democracy Governance -- Launch OFAC VAnchor Bridges +- Launch mainnet on **April 10, 2024** and allocate TNT tokens. +- Deploy threshold signature scheme (TSS) as a service. +- Deploy restaking: linking validators to the MPC services. **Phase 3** -- Launch Cross-chain Transfers -- Validator Staking Upgrades -- Launch Semaphore VAnchor bridges +- Launch cross-chain transfers. +- Initialize proof generation (ZKSaaS) as a service. +- Deploy ETH2 Light Client **Phase 4** -- Remove Sudo -- Improve Relayer & Proposer Security +- Remove Sudo and fully delegate authority to the on-chain community. +- Expand MPC service offerings. +- Integrate with EigenLayer. From 168ccef14ed8fdb45461b0eaae7a0affe8a393a8 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 08:24:16 -0600 Subject: [PATCH 21/29] updated intro to tangle --- pages/docs/index.mdx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pages/docs/index.mdx b/pages/docs/index.mdx index 7972417e..09010e3b 100644 --- a/pages/docs/index.mdx +++ b/pages/docs/index.mdx @@ -17,9 +17,13 @@ import { CommonActions } from "../../components/CommonActions"; ## Introduction -The Tangle Network is a groundbreaking blockchain platform designed to support cross-chain and zero-knowledge (ZK) applications. Built on the advanced Substrate framework, Tangle Network offers a suite of multi-party computation (MPC) primitives on-demand, empowering developers to create privacy-enhancing ZK applications, cross-chain solutions, and other complex, cryptographically secure decentralized applications. +The Tangle Network is a pioneering blockchain platform, uniquely positioned to advance cross-chain and zero-knowledge (ZK) applications within a collaborative ecosystem. Built on the robust Substrate framework, Tangle seamlessly combines Multi-Party Computation (MPC) primitives with an innovative restaking mechanism. This fusion not only empowers developers to forge privacy-enhancing ZK applications and cross-chain solutions but also establishes a decentralized, crypto-economically secured service landscape. -At the core of Tangle Network is its innovative restaking mechanism. This allows validators from Tangle and other networks to provide MPC services to paying customers over a decentralized network, earning rewards in the process. The combination of restaking and MPC services enables Tangle to function as an outsourced, crypto-economically secured service provider. +Central to Tangle's ethos is the creation of a united community of developers, validators, and innovators, all driven to co-create cutting-edge, privacy-preserving applications. By focusing on the development of specific MPC-driven blockchain solutions, such as Threshold Signature as a Service (TSSaaS) and Proof Generation as a Service (ZKSaaS), Tangle offers tangible benefits across its user base: + +**For Application Developers:** Unlock scalable and secure development environments with MPC solutions, ensuring seamless integration into existing and future projects. +**For Protocol Developers:** Explore new horizons and contribute to the MPC infrastructure through innovative protocol upgrades, enhancing the network's capabilities. +**For Validators:** Participate in Tangle's restaking framework to earn additional rewards while providing essential cryptographic services to the network. ## Key Features From c60c8b00d9a40b480834b4c328d54ca644d6cd8e Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 08:32:32 -0600 Subject: [PATCH 22/29] Added developer focused introduction under build --- pages/docs/build/_meta.json | 1 + pages/docs/build/developer-overview.mdx | 44 +++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 pages/docs/build/developer-overview.mdx diff --git a/pages/docs/build/_meta.json b/pages/docs/build/_meta.json index ac8ffc65..00f31156 100644 --- a/pages/docs/build/_meta.json +++ b/pages/docs/build/_meta.json @@ -1,4 +1,5 @@ { + "developer-overview": "Understanding Tangle for Developers", "deploy-using-hardhat": "Deploy on Tangle with Hardhat", "json-rpc-endpoints": "RPC Endpoints", "integrate": "Integrate Tangle", diff --git a/pages/docs/build/developer-overview.mdx b/pages/docs/build/developer-overview.mdx new file mode 100644 index 00000000..88b470d3 --- /dev/null +++ b/pages/docs/build/developer-overview.mdx @@ -0,0 +1,44 @@ +# Developer Introduction to Tangle Network + +Tangle Network is an innovative blockchain platform that empowers developers to build cutting-edge applications with advanced privacy features and distributed trust. By leveraging multi-party computation (MPC) and zero-knowledge proofs (ZKPs), Tangle Network provides a secure and scalable infrastructure for developing blockchain solutions across various domains, including custody, oracles, and bridges. + +## Key Features and Services + +### Threshold Signature as a Service (TSSaaS) + +Tangle Network offers Threshold Signature as a Service (TSSaaS), which enables developers to integrate threshold signature schemes into their applications. Threshold signatures enhance security by distributing the signing authority across multiple parties, eliminating single points of failure. This service is particularly useful for wallet infrastructure, custody solutions, and managing digital assets securely. + +### Proof Generation as a Service (ZKSaaS) + +Tangle Network provides Proof Generation as a Service (ZKSaaS), allowing developers to access zero-knowledge proof generation functionality directly through the network's infrastructure. ZKPs are critical for maintaining privacy and implementing complex cryptographic protocols within decentralized applications. With ZKSaaS, developers can easily integrate privacy-preserving features into their applications without the need for extensive cryptographic expertise. + +### Benefits of MPC + +Tangle Network leverages multi-party computation (MPC) to provide a range of benefits for developers and organizations: + +- Protection of sensitive data +- Distributed model for enhanced security +- Removal of single points of failure +- Compliance with data sharing restrictions +- Protection against malicious parties and attacks +- Enhanced trust and security for users + +## Protocol Extensions and Customization + +Tangle Network allows developers to extend and customize the protocol to suit their specific application requirements. Some of the possibilities include: + +- Adding new threshold signature schemes like ECDSA, Schnorr, BLS, and FROST +- Integrating fully homomorphic encryption (FHE) solutions for secure computation on encrypted data +- Incorporating randomness beacons for unbiased randomness in cryptographic protocols +- Integrating federated learning protocols for privacy-preserving AI and ML model training +- Developing general MPC compiler infrastructure to simplify the creation of secure multi-party applications + +## Getting Started + +To get started with Tangle Network, developers can explore the open-source repositories available on GitHub. Some of the key repositories include: + +- **tangle**: The main repository of Tangle Network, built on Substrate, which powers cross-chain and zero-knowledge application development. +- **gadget**: A common platform for MPC gadgets, allowing peers to query the blockchain for job information and perform cooperative work based on on-chain jobs. +- **zk-SaaS**: Rust implementation of the zkSaaS protocol, leveraging secure multi-party computation to generate zkSNARKs. + +Developers can also refer to the comprehensive documentation and join the vibrant community of builders to enhance their understanding of Tangle Network and contribute to the development of privacy-centric cloud solutions. From cf150cc56e702e6287e2d50d813167047eec9dbd Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 08:34:48 -0600 Subject: [PATCH 23/29] fixed spacing in index --- pages/docs/index.mdx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pages/docs/index.mdx b/pages/docs/index.mdx index 09010e3b..e674420d 100644 --- a/pages/docs/index.mdx +++ b/pages/docs/index.mdx @@ -13,8 +13,6 @@ import { CommonActions } from "../../components/CommonActions"; -# Tangle Network: An MPC-as-a-service blockchain restaking infrastructure - ## Introduction The Tangle Network is a pioneering blockchain platform, uniquely positioned to advance cross-chain and zero-knowledge (ZK) applications within a collaborative ecosystem. Built on the robust Substrate framework, Tangle seamlessly combines Multi-Party Computation (MPC) primitives with an innovative restaking mechanism. This fusion not only empowers developers to forge privacy-enhancing ZK applications and cross-chain solutions but also establishes a decentralized, crypto-economically secured service landscape. @@ -22,7 +20,9 @@ The Tangle Network is a pioneering blockchain platform, uniquely positioned to a Central to Tangle's ethos is the creation of a united community of developers, validators, and innovators, all driven to co-create cutting-edge, privacy-preserving applications. By focusing on the development of specific MPC-driven blockchain solutions, such as Threshold Signature as a Service (TSSaaS) and Proof Generation as a Service (ZKSaaS), Tangle offers tangible benefits across its user base: **For Application Developers:** Unlock scalable and secure development environments with MPC solutions, ensuring seamless integration into existing and future projects. + **For Protocol Developers:** Explore new horizons and contribute to the MPC infrastructure through innovative protocol upgrades, enhancing the network's capabilities. + **For Validators:** Participate in Tangle's restaking framework to earn additional rewards while providing essential cryptographic services to the network. ## Key Features @@ -57,8 +57,6 @@ Tangle Network introduces an innovative platform to support cross-chain Zero-Kno As the network continues to evolve, it aims to expand its services, foster community growth, and drive the adoption of advanced cryptographic techniques in the blockchain space. Tangle Network invites developers, validators, and users to join its mission of building a more private, secure, and interconnected decentralized future. ---- - ## Roadmap The following is subject to change as DAO governance supports different initiatives. From d4342e64d7ee1b98926b128caec3bdabd9009593 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 08:46:49 -0600 Subject: [PATCH 24/29] added a draft mainnet config info component --- components/MainnetConfig.tsx | 106 +++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 components/MainnetConfig.tsx diff --git a/components/MainnetConfig.tsx b/components/MainnetConfig.tsx new file mode 100644 index 00000000..d4ab685a --- /dev/null +++ b/components/MainnetConfig.tsx @@ -0,0 +1,106 @@ +import React, { useState } from "react"; +import Link from "next/link"; +import styles from "./NetworkConfig.module.css"; + +const NetworkCard = ({ + cardTitle, + network, + type, + symbol, + decimals, + chainId, + rpcUrl, + wssUrl, + explorerUrls, + fundingInfo, +}) => { + return ( +

    +
    + {type} {cardTitle} +
    +
    +

    {network}

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + {explorerUrls.map((explorer, index) => ( + + + + + ))} + +
    Network Type{type}
    Native Asset Symbol{symbol}
    Native Asset Decimals{decimals}
    Chain ID{chainId}
    Public RPC URL + {rpcUrl} +
    Public WSS URL + {wssUrl} +
    + {index === 0 ? "Interfaces & Explorers" : ""} + + {explorer.name} +
    +
    + ); +}; + +const NetworkInfo = () => { + // Define the network details here or fetch from an API + const networks = [ + { + cardTitle: "Network Information", + network: "Tangle Network", + type: "Mainnet", + symbol: "TNT", + decimals: 18, + chainId: "5845", + rpcUrl: "https://rpc.tangle.tools", + wssUrl: "wss://rpc.tangle.tools", + explorerUrls: [ + { name: "BlockScout", url: "https://testnet-explorer.tangle.tools" }, // Update this + { + name: "PolkadotJS", + url: "TBD", // Update this + }, + ], + fundingInfo: { + url: "https://discord.gg/PQDYv5GT", + }, + }, + // Add Tangle Mainnet details here when available + ]; + + return ( +
    + {networks.map((network, index) => ( + + ))} +
    + ); +}; + +export default NetworkInfo; From 092c34a16600c57a383155470d799dd41cb4cdc8 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 12:59:11 -0600 Subject: [PATCH 25/29] pinned nextjs version to unproblematic and resolved version issue with nextra-themes --- package.json | 6 +++--- yarn.lock | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 1813b753..12aefe21 100644 --- a/package.json +++ b/package.json @@ -30,10 +30,10 @@ "js-cookie": "3.0.1", "katex": "^0.16.4", "ms": "^2.1.3", - "next": "^13.0.0", + "next": "13.3.0", "next-themes": "^0.2.0", - "nextra": "^2.12.3", - "nextra-theme-docs": "^2.12.3", + "nextra": "2.12.3", + "nextra-theme-docs": "2.12.3", "react": "^18.2.0", "react-dom": "^18.2.0", "react-hot-toast": "2.4.0", diff --git a/yarn.lock b/yarn.lock index 0762cb00..c4774c0e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4919,9 +4919,9 @@ next-themes@^0.2.0, next-themes@^0.2.1: resolved "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz" integrity sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A== -next@^13.0.0: +next@13.3.0: version "13.3.0" - resolved "https://registry.npmjs.org/next/-/next-13.3.0.tgz" + resolved "https://registry.yarnpkg.com/next/-/next-13.3.0.tgz#40632d303d74fc8521faa0a5bf4a033a392749b1" integrity sha512-OVTw8MpIPa12+DCUkPqRGPS3thlJPcwae2ZL4xti3iBff27goH024xy4q2lhlsdoYiKOi8Kz6uJoLW/GXwgfOA== dependencies: "@next/env" "13.3.0" From 5a29e68c726a63b333c6404866b18f704756e258 Mon Sep 17 00:00:00 2001 From: Thom Ivy Date: Fri, 8 Mar 2024 13:07:19 -0600 Subject: [PATCH 26/29] revert next to 13.0.0 to resolve type issues in build time --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 12aefe21..9ff9b189 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "js-cookie": "3.0.1", "katex": "^0.16.4", "ms": "^2.1.3", - "next": "13.3.0", + "next": "13.0.0", "next-themes": "^0.2.0", "nextra": "2.12.3", "nextra-theme-docs": "2.12.3", From 50b6724edf21d129dc232f8cf3c419bb48ad2b10 Mon Sep 17 00:00:00 2001 From: yurixander <101931215+yurixander@users.noreply.github.com> Date: Fri, 8 Mar 2024 14:56:19 -0500 Subject: [PATCH 27/29] fix build error --- yarn.lock | 1373 ++++++++++++++++++++++++++++------------------------- 1 file changed, 714 insertions(+), 659 deletions(-) diff --git a/yarn.lock b/yarn.lock index c4774c0e..12020c32 100644 --- a/yarn.lock +++ b/yarn.lock @@ -247,15 +247,7 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@headlessui/react@^1.7.10", "@headlessui/react@^1.7.17": - version "1.7.18" - resolved "https://registry.yarnpkg.com/@headlessui/react/-/react-1.7.18.tgz#30af4634d2215b2ca1aa29d07f33d02bea82d9d7" - integrity sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ== - dependencies: - "@tanstack/react-virtual" "^3.0.0-beta.60" - client-only "^0.0.1" - -"@headlessui/react@^1.7.7": +"@headlessui/react@^1.7.10", "@headlessui/react@^1.7.7": version "1.7.14" resolved "https://registry.npmjs.org/@headlessui/react/-/react-1.7.14.tgz" integrity sha512-znzdq9PG8rkwcu9oQ2FwIy0ZFtP9Z7ycS+BAqJ3R5EIqC/0bJGvhT7193rFf+45i9nnPsYvCQVW4V/bB9Xc+gA== @@ -325,7 +317,7 @@ "@mdx-js/mdx@^2.2.1", "@mdx-js/mdx@^2.3.0": version "2.3.0" - resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-2.3.0.tgz#d65d8c3c28f3f46bb0e7cb3bf7613b39980671a9" + resolved "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz" integrity sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -407,82 +399,82 @@ hey-listen "^1.0.8" tslib "^2.3.1" -"@napi-rs/simple-git-android-arm-eabi@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.16.tgz#36b752f84a7e75a9dada3d8b307817f0b015a57d" - integrity sha512-dbrCL0Pl5KZG7x7tXdtVsA5CO6At5ohDX3myf5xIYn9kN4jDFxsocl8bNt6Vb/hZQoJd8fI+k5VlJt+rFhbdVw== - -"@napi-rs/simple-git-android-arm64@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.16.tgz#f84d9e2fdae91bb810b55ffc30a42ce5fe020c76" - integrity sha512-xYz+TW5J09iK8SuTAKK2D5MMIsBUXVSs8nYp7HcMi8q6FCRO7yJj96YfP9PvKsc/k64hOyqGmL5DhCzY9Cu1FQ== - -"@napi-rs/simple-git-darwin-arm64@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.16.tgz#8d995a920146c320bf13b32d1b1654f44beaa16b" - integrity sha512-XfgsYqxhUE022MJobeiX563TJqyQyX4FmYCnqrtJwAfivESVeAJiH6bQIum8dDEYMHXCsG7nL8Ok0Dp8k2m42g== - -"@napi-rs/simple-git-darwin-x64@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.16.tgz#7cc7155392c62f885d248af5f720e108d0aad2b5" - integrity sha512-tkEVBhD6vgRCbeWsaAQqM3bTfpIVGeitamPPRVSbsq8qgzJ5Dx6ZedH27R7KSsA/uao7mZ3dsrNLXbu1Wy5MzA== - -"@napi-rs/simple-git-linux-arm-gnueabihf@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.16.tgz#d5135543d372e0571d7c19928e75751eb407d7dd" - integrity sha512-R6VAyNnp/yRaT7DV1Ao3r67SqTWDa+fNq2LrNy0Z8gXk2wB9ZKlrxFtLPE1WSpWknWtyRDLpRlsorh7Evk7+7w== - -"@napi-rs/simple-git-linux-arm64-gnu@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.16.tgz#4e293005b2fd62d1eb399b50e53d983378c19fb7" - integrity sha512-LAGI0opFKw/HBMCV2qIBK3uWSEW9h4xd2ireZKLJy8DBPymX6NrWIamuxYNyCuACnFdPRxR4LaRFy4J5ZwuMdw== - -"@napi-rs/simple-git-linux-arm64-musl@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.16.tgz#679edd2c6d88de6aa35993401722ade04595869b" - integrity sha512-I57Ph0F0Yn2KW93ep+V1EzKhACqX0x49vvSiapqIsdDA2PifdEWLc1LJarBolmK7NKoPqKmf6lAKKO9lhiZzkg== - -"@napi-rs/simple-git-linux-x64-gnu@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.16.tgz#b33054b14a88335f19261b812f65f8d567e7d199" - integrity sha512-AZYYFY2V7hlcQASPEOWyOa3e1skzTct9QPzz0LiDM3f/hCFY/wBaU2M6NC5iG3d2Kr38heuyFS/+JqxLm5WaKA== - -"@napi-rs/simple-git-linux-x64-musl@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.16.tgz#8cfc8f5f35951dacae86e72b5535ea401f868b7a" - integrity sha512-9TyMcYSBJwjT8jwjY9m24BZbu7ozyWTjsmYBYNtK3B0Um1Ov6jthSNneLVvouQ6x+k3Ow+00TiFh6bvmT00r8g== - -"@napi-rs/simple-git-win32-arm64-msvc@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.16.tgz#e6b220574421695f4c05be4e065b1fd46ffb7007" - integrity sha512-uslJ1WuAHCYJWui6xjsyT47SjX6KOHDtClmNO8hqKz1pmDSNY7AjyUY8HxvD1lK9bDnWwc4JYhikS9cxCqHybw== - -"@napi-rs/simple-git-win32-x64-msvc@0.1.16": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.16.tgz#4ec44d57fc2c069544ffb923a2871d81d5db7cfc" - integrity sha512-SoEaVeCZCDF1MP+M9bMSXsZWgEjk4On9GWADO5JOulvzR1bKjk0s9PMHwe/YztR9F0sJzrCxwtvBZowhSJsQPg== +"@napi-rs/simple-git-android-arm-eabi@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.9.tgz#0326fbc4ffafb678bda3474018e2a24a8d2a21b6" + integrity sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug== + +"@napi-rs/simple-git-android-arm64@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.9.tgz#4f2c3c3c2c8b6e82999b94dd771ab40c6a9511a4" + integrity sha512-Krilsw0gPrrASZzudNEl9pdLuNbhoTK0j7pUbfB8FRifpPdFB/zouwuEm0aSnsDXN4ftGrmGG82kuiR/2MeoPg== + +"@napi-rs/simple-git-darwin-arm64@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.9.tgz#cea5a57db6a8ee17dc6a368d98b5d04766ddd2cc" + integrity sha512-H/F09nDgYjv4gcFrZBgdTKkZEepqt0KLYcCJuUADuxkKupmjLdecMhypXLk13AzvLW4UQI7NlLTLDXUFLyr2BA== + +"@napi-rs/simple-git-darwin-x64@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.9.tgz#4106471b4edd2e9876cbd68951855c9a51debf06" + integrity sha512-jBR2xS9nVPqmHv0TWz874W0m/d453MGrMeLjB+boK5IPPLhg3AWIZj0aN9jy2Je1BGVAa0w3INIQJtBBeB6kFA== + +"@napi-rs/simple-git-linux-arm-gnueabihf@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.9.tgz#823ae5f84808b193f3bb0b6491c947ad13a78da8" + integrity sha512-3n0+VpO4YfZxndZ0sCvsHIvsazd+JmbSjrlTRBCnJeAU1/sfos3skNZtKGZksZhjvd+3o+/GFM8L7Xnv01yggA== + +"@napi-rs/simple-git-linux-arm64-gnu@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.9.tgz#9489634bf30c5acddcf18d2275e1927447753d40" + integrity sha512-lIzf0KHU2SKC12vMrWwCtysG2Sdt31VHRPMUiz9lD9t3xwVn8qhFSTn5yDkTeG3rgX6o0p5EKalfQN5BXsJq2w== + +"@napi-rs/simple-git-linux-arm64-musl@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.9.tgz#ba1ffae12974539810552c0f3b966298aae3a26d" + integrity sha512-KQozUoNXrxrB8k741ncWXSiMbjl1AGBGfZV21PANzUM8wH4Yem2bg3kfglYS/QIx3udspsT35I9abu49n7D1/w== + +"@napi-rs/simple-git-linux-x64-gnu@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.9.tgz#e18cd9059db7313cc2a9bbdc2535b6cac5e80689" + integrity sha512-O/Niui5mnHPcK3iYC3ui8wgERtJWsQ3Y74W/09t0bL/3dgzGMl4oQt0qTj9dWCsnoGsIEYHPzwCBp/2vqYp/pw== + +"@napi-rs/simple-git-linux-x64-musl@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.9.tgz#456fba6dd186c25d588390ab42db95ba327028fb" + integrity sha512-L9n+e8Wn3hKr3RsIdY8GaB+ry4xZ4BaGwyKExgoB8nDGQuRUY9oP6p0WA4hWfJvJnU1H6hvo36a5UFPReyBO7A== + +"@napi-rs/simple-git-win32-arm64-msvc@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.9.tgz#0f1a7048cf891f968ee71138548ccad350dea685" + integrity sha512-Z6Ja/SZK+lMvRWaxj7wjnvSbAsGrH006sqZo8P8nxKUdZfkVvoCaAWr1r0cfkk2Z3aijLLtD+vKeXGlUPH6gGQ== + +"@napi-rs/simple-git-win32-x64-msvc@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.9.tgz#75a5d9c3f41b44221e520824e51befa2dde19688" + integrity sha512-VAZj1UvC+R2MjKOD3I/Y7dmQlHWAYy4omhReQJRpbCf+oGCBi9CWiIduGqeYEq723nLIKdxP7XjaO0wl1NnUww== "@napi-rs/simple-git@^0.1.9": - version "0.1.16" - resolved "https://registry.yarnpkg.com/@napi-rs/simple-git/-/simple-git-0.1.16.tgz#c48d03b27956ddcd2c886a5e3d5c8bdc0d7ad5fe" - integrity sha512-C5wRPw9waqL2jk3jEDeJv+f7ScuO3N0a39HVdyFLkwKxHH4Sya4ZbzZsu2JLi6eEqe7RuHipHL6mC7B2OfYZZw== + version "0.1.9" + resolved "https://registry.yarnpkg.com/@napi-rs/simple-git/-/simple-git-0.1.9.tgz#ea730d6202010acae7bb9057d79681424c41fd12" + integrity sha512-qKzDS0+VjMvVyU28px+C6zlD1HKy83NIdYzfMQWa/g/V1iG/Ic8uwrS2ihHfm7mp7X0PPrmINLiTTi6ieUIKfw== optionalDependencies: - "@napi-rs/simple-git-android-arm-eabi" "0.1.16" - "@napi-rs/simple-git-android-arm64" "0.1.16" - "@napi-rs/simple-git-darwin-arm64" "0.1.16" - "@napi-rs/simple-git-darwin-x64" "0.1.16" - "@napi-rs/simple-git-linux-arm-gnueabihf" "0.1.16" - "@napi-rs/simple-git-linux-arm64-gnu" "0.1.16" - "@napi-rs/simple-git-linux-arm64-musl" "0.1.16" - "@napi-rs/simple-git-linux-x64-gnu" "0.1.16" - "@napi-rs/simple-git-linux-x64-musl" "0.1.16" - "@napi-rs/simple-git-win32-arm64-msvc" "0.1.16" - "@napi-rs/simple-git-win32-x64-msvc" "0.1.16" - -"@next/env@13.3.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@next/env/-/env-13.3.0.tgz" - integrity sha512-AjppRV4uG3No7L1plinoTQETH+j2F10TEnrMfzbTUYwze5sBUPveeeBAPZPm8OkJZ1epq9OyYKhZrvbD6/9HCQ== + "@napi-rs/simple-git-android-arm-eabi" "0.1.9" + "@napi-rs/simple-git-android-arm64" "0.1.9" + "@napi-rs/simple-git-darwin-arm64" "0.1.9" + "@napi-rs/simple-git-darwin-x64" "0.1.9" + "@napi-rs/simple-git-linux-arm-gnueabihf" "0.1.9" + "@napi-rs/simple-git-linux-arm64-gnu" "0.1.9" + "@napi-rs/simple-git-linux-arm64-musl" "0.1.9" + "@napi-rs/simple-git-linux-x64-gnu" "0.1.9" + "@napi-rs/simple-git-linux-x64-musl" "0.1.9" + "@napi-rs/simple-git-win32-arm64-msvc" "0.1.9" + "@napi-rs/simple-git-win32-x64-msvc" "0.1.9" + +"@next/env@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/env/-/env-13.0.0.tgz#38527956680693c90b4522ab4ab9a2fbe3a17f67" + integrity sha512-65v9BVuah2Mplohm4+efsKEnoEuhmlGm8B2w6vD1geeEP2wXtlSJCvR/cCRJ3fD8wzCQBV41VcMBQeYET6MRkg== "@next/eslint-plugin-next@12.3.1": version "12.3.1" @@ -491,50 +483,70 @@ dependencies: glob "7.1.7" -"@next/swc-darwin-arm64@13.3.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.3.0.tgz" - integrity sha512-DmIQCNq6JtccLPPBzf0dgh2vzMWt5wjxbP71pCi5EWpWYE3MsP6FcRXi4MlAmFNDQOfcFXR2r7kBeG1LpZUh1w== - -"@next/swc-darwin-x64@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.3.0.tgz#b670ed1fd1d231aa21279173ec52e3ad56dc6aeb" - integrity sha512-oQoqFa88OGgwnYlnAGHVct618FRI/749se0N3S8t9Bzdv5CRbscnO0RcX901+YnNK4Q6yeiizfgO3b7kogtsZg== - -"@next/swc-linux-arm64-gnu@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.3.0.tgz#b114935f6b4c94c123f6cac55a4823d483209ba5" - integrity sha512-Wzz2p/WqAJUqTVoLo6H18WMeAXo3i+9DkPDae4oQG8LMloJ3if4NEZTnOnTUlro6cq+S/W4pTGa97nWTrOjbGw== - -"@next/swc-linux-arm64-musl@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.3.0.tgz#67a57309f8761c7d00d629d6785d56ed0567a0d2" - integrity sha512-xPVrIQOQo9WXJYgmoTlMnAD/HlR/1e1ZIWGbwIzEirXBVBqMARUulBEIKdC19zuvoJ477qZJgBDCKtKEykCpyQ== - -"@next/swc-linux-x64-gnu@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.3.0.tgz#11bd2bea7c00b40be111c0dd16e71171f3792086" - integrity sha512-jOFlpGuPD7W2tuXVJP4wt9a3cpNxWAPcloq5EfMJRiXsBBOjLVFZA7boXYxEBzSVgUiVVr1V9T0HFM7pULJ1qA== - -"@next/swc-linux-x64-musl@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.3.0.tgz#d57e99f85890799b78719c3ea32a4624de8d701b" - integrity sha512-2OwKlzaBgmuet9XYHc3KwsEilzb04F540rlRXkAcjMHL7eCxB7uZIGtsVvKOnQLvC/elrUegwSw1+5f7WmfyOw== - -"@next/swc-win32-arm64-msvc@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.3.0.tgz#0c209aa35d1c88b01e78259a89cd68f4139b5093" - integrity sha512-OeHiA6YEvndxT46g+rzFK/MQTfftKxJmzslERMu9LDdC6Kez0bdrgEYed5eXFK2Z1viKZJCGRlhd06rBusyztA== - -"@next/swc-win32-ia32-msvc@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.3.0.tgz#52ae74da1dd6d840c3743923367d27ed013803dd" - integrity sha512-4aB7K9mcVK1lYEzpOpqWrXHEZympU3oK65fnNcY1Qc4HLJFLJj8AViuqQd4jjjPNuV4sl8jAwTz3gN5VNGWB7w== - -"@next/swc-win32-x64-msvc@13.3.0": - version "13.3.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.3.0.tgz#db7b55fee834dc8c2c484c696469e65bae2ee770" - integrity sha512-Reer6rkLLcoOvB0dd66+Y7WrWVFH7sEEkF/4bJCIfsSKnTStTYaHtwIJAwbqnt9I392Tqvku0KkoqZOryWV9LQ== +"@next/swc-android-arm-eabi@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.0.0.tgz#15cd89d19d3c00d123fdfe367bab38c362f6c515" + integrity sha512-+DUQkYF93gxFjWY+CYWE1QDX6gTgnUiWf+W4UqZjM1Jcef8U97fS6xYh+i+8rH4MM0AXHm7OSakvfOMzmjU6VA== + +"@next/swc-android-arm64@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-13.0.0.tgz#9410365bb07097268d4773a46b02cfe6b3fe3ab7" + integrity sha512-RW9Uy3bMSc0zVGCa11klFuwfP/jdcdkhdruqnrJ7v+7XHm6OFKkSRzX6ee7yGR1rdDZvTnP4GZSRSpzjLv/N0g== + +"@next/swc-darwin-arm64@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.0.0.tgz#caf262fb5cb8bb335f6f344fd67a44dc8bf6a084" + integrity sha512-APA26nps1j4qyhOIzkclW/OmgotVHj1jBxebSpMCPw2rXfiNvKNY9FA0TcuwPmUCNqaTnm703h6oW4dvp73A4Q== + +"@next/swc-darwin-x64@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.0.0.tgz#6b214753410e1d8512a1491045acea1e188df7d6" + integrity sha512-qsUhUdoFuRJiaJ7LnvTQ6GZv1QnMDcRXCIjxaN0FNVXwrjkq++U7KjBUaxXkRzLV4C7u0NHLNOp0iZwNNE7ypw== + +"@next/swc-freebsd-x64@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.0.0.tgz#eeb176bdb585f48882bdac1d04271b918ca87590" + integrity sha512-sCdyCbboS7CwdnevKH9J6hkJI76LUw1jVWt4eV7kISuLiPba3JmehZSWm80oa4ADChRVAwzhLAo2zJaYRrInbg== + +"@next/swc-linux-arm-gnueabihf@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.0.0.tgz#2c2a9622c93f87a8baca94e068f674da4cae6018" + integrity sha512-/X/VxfFA41C9jrEv+sUsPLQ5vbDPVIgG0CJrzKvrcc+b+4zIgPgtfsaWq9ockjHFQi3ycvlZK4TALOXO8ovQ6Q== + +"@next/swc-linux-arm64-gnu@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.0.0.tgz#69505827e2928fb18034150fd4d754d54c4a1c4b" + integrity sha512-x6Oxr1GIi0ZtNiT6jbw+JVcbEi3UQgF7mMmkrgfL4mfchOwXtWSHKTSSPnwoJWJfXYa0Vy1n8NElWNTGAqoWFw== + +"@next/swc-linux-arm64-musl@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.0.0.tgz#487a88f2583a046e882328fe0665b37eca4fd0f6" + integrity sha512-SnMH9ngI+ipGh3kqQ8+mDtWunirwmhQnQeZkEq9e/9Xsgjf04OetqrqRHKM1HmJtG2qMUJbyXFJ0F81TPuT+3g== + +"@next/swc-linux-x64-gnu@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.0.0.tgz#29e89c7e4fd2e2b16ad059076f6261998aee53df" + integrity sha512-VSQwTX9EmdbotArtA1J67X8964oQfe0xHb32x4tu+JqTR+wOHyG6wGzPMdXH2oKAp6rdd7BzqxUXXf0J+ypHlw== + +"@next/swc-linux-x64-musl@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.0.0.tgz#2f63aae922d2b2829aec21bf8f9adda8b6c16365" + integrity sha512-xBCP0nnpO0q4tsytXkvIwWFINtbFRyVY5gxa1zB0vlFtqYR9lNhrOwH3CBrks3kkeaePOXd611+8sjdUtrLnXA== + +"@next/swc-win32-arm64-msvc@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.0.0.tgz#4117bad96c2a6775f70294fba45c63951a8a21ac" + integrity sha512-NutwDafqhGxqPj/eiUixJq9ImS/0sgx6gqlD7jRndCvQ2Q8AvDdu1+xKcGWGNnhcDsNM/n1avf1e62OG1GaqJg== + +"@next/swc-win32-ia32-msvc@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.0.0.tgz#5914eb86f9ea92a00d76cb094dd9734b3bf2012c" + integrity sha512-zNaxaO+Kl/xNz02E9QlcVz0pT4MjkXGDLb25qxtAzyJL15aU0+VjjbIZAYWctG59dvggNIUNDWgoBeVTKB9xLg== + +"@next/swc-win32-x64-msvc@13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.0.0.tgz#c54a5a739dee04b20338d305226a2acdf701f67f" + integrity sha512-FFOGGWwTCRMu9W7MF496Urefxtuo2lttxF1vwS+1rIRsKvuLrWhVaVTj3T8sf2EBL6gtJbmh4TYlizS+obnGKA== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -721,95 +733,83 @@ "@sentry/cli" "^1.74.6" webpack-sources "^2.0.0 || ^3.0.0" -"@swc/helpers@0.4.14": - version "0.4.14" - resolved "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.14.tgz" - integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== +"@swc/helpers@0.4.11": + version "0.4.11" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.11.tgz#db23a376761b3d31c26502122f349a21b592c8de" + integrity sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw== dependencies: tslib "^2.4.0" -"@tanstack/react-virtual@^3.0.0-beta.60": - version "3.1.3" - resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.1.3.tgz#4ef2a7dd819a7dd2b634d50cbd6ba498f06529ec" - integrity sha512-YCzcbF/Ws/uZ0q3Z6fagH+JVhx4JLvbSflgldMgLsuvB8aXjZLLb3HvrEVxY480F9wFlBiXlvQxOyXb5ENPrNA== - dependencies: - "@tanstack/virtual-core" "3.1.3" - -"@tanstack/virtual-core@3.1.3": - version "3.1.3" - resolved "https://registry.yarnpkg.com/@tanstack/virtual-core/-/virtual-core-3.1.3.tgz#77ced625f19ec9350f6e460f142b3be9bff03866" - integrity sha512-Y5B4EYyv1j9V8LzeAoOVeTg0LI7Fo5InYKgAjkY1Pu9GjtUwX/EKxNcU7ng3sKr99WEf+bPTcktAeybyMOYo+g== - -"@theguild/remark-mermaid@^0.0.5": - version "0.0.5" - resolved "https://registry.yarnpkg.com/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz#0f95671d247381f416e528e937be08bb7a695224" - integrity sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw== +"@theguild/remark-mermaid@^0.0.4": + version "0.0.4" + resolved "https://registry.yarnpkg.com/@theguild/remark-mermaid/-/remark-mermaid-0.0.4.tgz#a48edb1ddada28e3c7136bbbc4edd22bd2c6ed0b" + integrity sha512-C1gssw07eURtCwzXqZZdvyV/eawQ/cXfARaXIgBU9orffox+/YQ+exxmNu9v16NSGzAVsGF4qEVHvCOcCR/FpQ== dependencies: mermaid "^10.2.2" unist-util-visit "^5.0.0" -"@theguild/remark-npm2yarn@^0.2.0": - version "0.2.1" - resolved "https://registry.yarnpkg.com/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz#63bf5a8c85d7fe505d4808812dbc56d9c2ce00f8" - integrity sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA== +"@theguild/remark-npm2yarn@^0.1.1": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.1.1.tgz#7392d8a3ec176c22ee5e26f2e44eae8e0d97e191" + integrity sha512-ZKwd/bjQ9V+pESLnu8+q8jqn15alXzJOuVckraebsXwqVBTw53Gmupiw9zCdLNHU829KTYNycJYea6m9HRLuOg== dependencies: - npm-to-yarn "^2.1.0" + npm-to-yarn "^2.0.0" unist-util-visit "^5.0.0" "@types/acorn@^4.0.0": version "4.0.6" - resolved "https://registry.yarnpkg.com/@types/acorn/-/acorn-4.0.6.tgz#d61ca5480300ac41a7d973dd5b84d0a591154a22" + resolved "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz" integrity sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ== dependencies: "@types/estree" "*" "@types/d3-scale-chromatic@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz#fc0db9c10e789c351f4c42d96f31f2e4df8f5644" - integrity sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw== + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz#103124777e8cdec85b20b51fd3397c682ee1e954" + integrity sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw== "@types/d3-scale@^4.0.3": - version "4.0.8" - resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" - integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== + version "4.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.4.tgz#3c5e2263eea5a3670cd91043b9f4d150a94c43f1" + integrity sha512-eq1ZeTj0yr72L8MQk6N6heP603ubnywSDRfNpi5enouR112HzGLS6RIvExCzZTraFF4HdzNpJMwA/zGiMoHUUw== dependencies: "@types/d3-time" "*" "@types/d3-time@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" - integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.0.tgz#e1ac0f3e9e195135361fa1a1d62f795d87e6e819" + integrity sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg== "@types/debug@^4.0.0": - version "4.1.12" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" - integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== + version "4.1.7" + resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz" + integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg== dependencies: "@types/ms" "*" "@types/estree-jsx@^1.0.0": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18" - integrity sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg== + version "1.0.0" + resolved "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.0.tgz" + integrity sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ== dependencies: "@types/estree" "*" "@types/estree@*", "@types/estree@^1.0.0": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" - integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + version "1.0.1" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz" + integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== "@types/hast@^2.0.0": - version "2.3.10" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.10.tgz#5c9d9e0b304bbb8879b857225c5ebab2d81d7643" - integrity sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw== + 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" "^2" + "@types/unist" "*" "@types/hast@^3.0.0": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" - integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.1.tgz#e1705ec9258ac4885659c2d50bac06b4fcd16466" + integrity sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ== dependencies: "@types/unist" "*" @@ -827,9 +827,9 @@ integrity sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA== "@types/js-yaml@^4.0.0": - version "4.0.9" - resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.9.tgz#cd82382c4f902fed9691a2ed79ec68c5898af4c2" - integrity sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg== + version "4.0.5" + resolved "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz" + integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA== "@types/json5@^0.0.29": version "0.0.29" @@ -841,34 +841,39 @@ resolved "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz" integrity sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg== +"@types/katex@^0.14.0": + version "0.14.0" + resolved "https://registry.yarnpkg.com/@types/katex/-/katex-0.14.0.tgz#b84c0afc3218069a5ad64fe2a95321881021b5fe" + integrity sha512-+2FW2CcT0K3P+JMR8YG846bmDwplKUTsWgT2ENwdQ1UdVfRk3GQrh6Mi4sTopy30gI8Uau5CEqHTDZ6YvWIUPA== + "@types/katex@^0.16.0": - version "0.16.7" - resolved "https://registry.yarnpkg.com/@types/katex/-/katex-0.16.7.tgz#03ab680ab4fa4fbc6cb46ecf987ecad5d8019868" - integrity sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ== + version "0.16.0" + resolved "https://registry.npmjs.org/@types/katex/-/katex-0.16.0.tgz" + integrity sha512-hz+S3nV6Mym5xPbT9fnO8dDhBFQguMYpY0Ipxv06JMi1ORgnEM4M1ymWDUhUNer3ElLmT583opRo4RzxKmh9jw== "@types/mdast@^3.0.0": - version "3.0.15" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5" - integrity sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ== + version "3.0.11" + resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz" + integrity sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw== dependencies: - "@types/unist" "^2" + "@types/unist" "*" "@types/mdast@^4.0.0": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.3.tgz#1e011ff013566e919a4232d1701ad30d70cab333" - integrity sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg== + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.0.tgz#9f9462d4584a8b3e3711ea8bb4a94c485559ab90" + integrity sha512-YLeG8CujC9adtj/kuDzq1N4tCDYKoZ5l/bnjq8d74+t/3q/tHquJOJKUQXJrLCflOHpKjXgcI/a929gpmLOEng== dependencies: "@types/unist" "*" "@types/mdx@^2.0.0": - version "2.0.11" - resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.11.tgz#21f4c166ed0e0a3a733869ba04cd8daea9834b8e" - integrity sha512-HM5bwOaIQJIQbAYfax35HCKxx7a3KrK3nBtIqJgSOitivTD1y3oW9P3rxY9RkXYPUk7y/AjAohfHKmFpGE79zw== + version "2.0.4" + resolved "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.4.tgz" + integrity sha512-qCYrNdpKwN6YO6FVnx+ulfqifKlE3lQGsNhvDaW9Oxzyob/cRLBJWow8GHBBD4NxQ7BVvtsATgLsX0vZAWmtrg== "@types/ms@*": - version "0.7.34" - resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433" - integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== + version "0.7.31" + resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz" + integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== "@types/node@*": version "16.18.24" @@ -886,11 +891,11 @@ integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== "@types/prop-types@*": - version "15.7.11" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" - integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== + 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/react@*", "@types/react@>=16": +"@types/react@*": version "18.2.64" resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.64.tgz#3700fbb6b2fa60a6868ec1323ae4cbd446a2197d" integrity sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg== @@ -899,7 +904,7 @@ "@types/scheduler" "*" csstype "^3.0.2" -"@types/react@18.0.26": +"@types/react@18.0.26", "@types/react@>=16": version "18.0.26" resolved "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz" integrity sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug== @@ -909,9 +914,9 @@ csstype "^3.0.2" "@types/scheduler@*": - version "0.16.8" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff" - integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== + version "0.16.3" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz" + integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== "@types/styled-components@^5.1.34": version "5.1.34" @@ -927,21 +932,16 @@ resolved "https://registry.yarnpkg.com/@types/stylis/-/stylis-4.2.0.tgz#199a3f473f0c3a6f6e4e1b17cdbc967f274bdc6b" integrity sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw== -"@types/unist@*", "@types/unist@^3.0.0": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.2.tgz#6dd61e43ef60b34086287f83683a5c1b2dc53d20" - integrity sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ== - -"@types/unist@^2", "@types/unist@^2.0.0": - version "2.0.10" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.10.tgz#04ffa7f406ab628f7f7e97ca23e290cd8ab15efc" - integrity sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA== - -"@types/unist@^2.0.2": +"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": version "2.0.6" resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== +"@types/unist@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.0.tgz#988ae8af1e5239e89f9fbb1ade4c935f4eeedf9a" + integrity sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w== + "@typescript-eslint/parser@^5.21.0": version "5.59.0" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.0.tgz" @@ -1030,12 +1030,7 @@ acorn@^7.0.0: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.0.0: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== - -acorn@^8.8.0: +acorn@^8.0.0, acorn@^8.8.0: version "8.8.2" resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== @@ -1073,9 +1068,9 @@ ansi-regex@^5.0.1: integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-sequence-parser@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz#e0aa1cdcbc8f8bb0b5bca625aac41f5f056973cf" - integrity sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg== + version "1.1.0" + resolved "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.0.tgz" + integrity sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ== ansi-styles@^1.1.0: version "1.1.0" @@ -1111,12 +1106,12 @@ anymatch@~3.1.2: arch@^2.1.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" + resolved "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz" integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== arg@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/arg/-/arg-1.0.0.tgz#444d885a4e25b121640b55155ef7cd03975d6050" + resolved "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz" integrity sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw== arg@^5.0.2: @@ -1133,7 +1128,7 @@ argparse@^1.0.7: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== aria-query@^5.1.3: @@ -1204,9 +1199,9 @@ ast-types-flow@^0.0.7: integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag== astring@^1.8.0: - version "1.8.6" - resolved "https://registry.yarnpkg.com/astring/-/astring-1.8.6.tgz#2c9c157cf1739d67561c56ba896e6948f6b93731" - integrity sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg== + version "1.8.4" + resolved "https://registry.npmjs.org/astring/-/astring-1.8.4.tgz" + integrity sha512-97a+l2LBU3Op3bBQEff79i/E4jMD2ZLFD8rHx9B6mXyB2uQwhJQYfiDqUwtfjF4QA1F2qs//N6Cw8LetMbQjcw== asynckit@^0.4.0: version "0.4.0" @@ -1257,7 +1252,7 @@ bail@^1.0.0: bail@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" + resolved "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz" integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== balanced-match@^1.0.0: @@ -1382,13 +1377,6 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" -busboy@1.6.0: - version "1.6.0" - resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz" - integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== - dependencies: - streamsearch "^1.1.0" - 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" @@ -1441,12 +1429,12 @@ caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.300014 ccount@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" + resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== chalk@2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz" integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== dependencies: ansi-styles "^3.1.0" @@ -1507,7 +1495,7 @@ char-spinner@^1.0.1: character-entities-html4@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" + resolved "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz" integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== character-entities-legacy@^1.0.0: @@ -1517,7 +1505,7 @@ character-entities-legacy@^1.0.0: character-entities-legacy@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" + resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz" integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== character-entities@^1.0.0: @@ -1527,7 +1515,7 @@ character-entities@^1.0.0: character-entities@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22" + resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz" integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ== character-reference-invalid@^1.0.0: @@ -1537,7 +1525,7 @@ character-reference-invalid@^1.0.0: character-reference-invalid@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9" + resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz" integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw== chokidar@^3.5.3: @@ -1574,25 +1562,25 @@ cli-table@~0.3.1: client-only@0.0.1, client-only@^0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" + resolved "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== clipboardy@1.2.2: version "1.2.2" - resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-1.2.2.tgz#2ce320b9ed9be1514f79878b53ff9765420903e2" + resolved "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz" integrity sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw== dependencies: arch "^2.1.0" execa "^0.8.0" clsx@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.0.tgz#e851283bcb5c80ee7608db18487433f7b23f77cb" - integrity sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg== + version "2.0.0" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b" + integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + 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" @@ -1658,7 +1646,7 @@ comma-separated-tokens@^1.0.0: comma-separated-tokens@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" + resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== commander@7: @@ -1673,7 +1661,7 @@ commander@^2.19.0: commander@^8.0.0, commander@^8.3.0: version "8.3.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== commondir@^1.0.1: @@ -1735,9 +1723,16 @@ cose-base@^1.0.0: dependencies: layout-base "^1.0.0" +cose-base@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cose-base/-/cose-base-2.2.0.tgz#1c395c35b6e10bb83f9769ca8b817d614add5c01" + integrity sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g== + dependencies: + layout-base "^2.0.0" + cross-spawn@^5.0.1: version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz" integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== dependencies: lru-cache "^4.0.1" @@ -1787,7 +1782,7 @@ cssesc@^3.0.0: resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@3.1.1, csstype@^3.0.6: +csstype@3.1.1, csstype@^3.0.2, csstype@^3.0.6: version "3.1.1" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== @@ -1797,11 +1792,6 @@ csstype@3.1.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -csstype@^3.0.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== - cytoscape-cose-bilkent@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz#762fa121df9930ffeb51a495d87917c570ac209b" @@ -1809,10 +1799,17 @@ cytoscape-cose-bilkent@^4.1.0: dependencies: cose-base "^1.0.0" -cytoscape@^3.28.1: - version "3.28.1" - resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.28.1.tgz#f32c3e009bdf32d47845a16a4cd2be2bbc01baf7" - integrity sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg== +cytoscape-fcose@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz#e4d6f6490df4fab58ae9cea9e5c3ab8d7472f471" + integrity sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ== + dependencies: + cose-base "^2.2.0" + +cytoscape@^3.23.0: + version "3.26.0" + resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.26.0.tgz#b4c6961445fd51e1fd3cca83c3ffe924d9a8abc9" + integrity sha512-IV+crL+KBcrCnVVUCZW+zRRRFUZQcrtdOPXki+o4CFUWLdAEYvuZLcBSJC9EBK++suamERKzeY7roq2hdovV3w== dependencies: heap "^0.2.6" lodash "^4.17.21" @@ -2134,7 +2131,7 @@ debug@^3.2.7: decode-named-character-reference@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz#daabac9690874c394c81e4162a0304b35d824f0e" + 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" @@ -2200,11 +2197,11 @@ defined@^1.0.0: integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== delaunator@5: - version "5.0.1" - resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.1.tgz#39032b08053923e924d6094fe2cde1a99cc51278" - integrity sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw== + version "5.0.0" + resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.0.tgz#60f052b28bd91c9b4566850ebf7756efe821d81b" + integrity sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw== dependencies: - robust-predicates "^3.0.2" + robust-predicates "^3.0.0" delayed-stream@~1.0.0: version "1.0.0" @@ -2213,7 +2210,7 @@ delayed-stream@~1.0.0: dequal@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== detect-libc@^2.0.0, detect-libc@^2.0.1: @@ -2235,7 +2232,7 @@ dev-null@^0.1.1: resolved "https://registry.npmjs.org/dev-null/-/dev-null-0.1.1.tgz" integrity sha512-nMNZG0zfMgmdv8S5O0TM5cpwNbGKRGPCxVsr0SmA3NZZy9CYBbuNLL0PD3Acx9e5LIUgwONXtM9kM6RlawPxEQ== -devlop@^1.0.0, devlop@^1.1.0: +devlop@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== @@ -2248,9 +2245,9 @@ didyoumean@^1.2.2: integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== diff@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" - integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== + version "5.1.0" + resolved "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz" + integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== dir-glob@^3.0.1: version "3.0.1" @@ -2279,9 +2276,9 @@ doctrine@^3.0.0: esutils "^2.0.2" dompurify@^3.0.5: - version "3.0.9" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.9.tgz#b3f362f24b99f53498c75d43ecbd784b0b3ad65e" - integrity sha512-uyb4NDIvQ3hRn6NiC+SIFaP4mJ/MdXlvtunaqK9Bn6dD3RuB/1S/gasEjDHD8eiaqdSael2vBv+hOs7Y+jhYOQ== + version "3.0.5" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.5.tgz#eb3d9cfa10037b6e73f32c586682c4b2ab01fbed" + integrity sha512-F9e6wPGtY+8KNMRAVfxeCOHU0/NPWMSENNq4pQctuXRqqdEPW7q3CrLbR5Nse044WwacyjHGOMlvNsBe1y6z9A== duplexer@~0.1.1: version "0.1.2" @@ -2293,10 +2290,10 @@ electron-to-chromium@^1.4.284: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.368.tgz" integrity sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw== -elkjs@^0.9.0: - version "0.9.2" - resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.9.2.tgz#3d4ef6f17fde06a5d7eaa3063bb875e25e59e972" - integrity sha512-2Y/RaA1pdgSHpY0YG4TYuYCD2wh97CRvu22eLG3Kz0pgQ/6KbIFTxsTnDc4MH/6hFlg2L/9qXrDMG0nMjP63iw== +elkjs@^0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.8.2.tgz#c37763c5a3e24e042e318455e0147c912a7c248e" + integrity sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ== emoji-regex@^9.2.2: version "9.2.2" @@ -2426,7 +2423,7 @@ escalade@^3.1.1: escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + 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: @@ -2436,7 +2433,7 @@ escape-string-regexp@^4.0.0: escape-string-regexp@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz" integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== eslint-config-next@12.3.1: @@ -2660,14 +2657,14 @@ estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: estree-util-attach-comments@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz#ee44f4ff6890ee7dfb3237ac7810154c94c63f84" + resolved "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz" integrity sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w== dependencies: "@types/estree" "^1.0.0" estree-util-build-jsx@^2.0.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz#32f8a239fb40dc3f3dca75bb5dcf77a831e4e47b" + resolved "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz" integrity sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2676,12 +2673,12 @@ estree-util-build-jsx@^2.0.0: estree-util-is-identifier-name@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz#fb70a432dcb19045e77b05c8e732f1364b4b49b2" + resolved "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz" integrity sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ== estree-util-to-js@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz#0f80d42443e3b13bd32f7012fffa6f93603f4a36" + resolved "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz" integrity sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2690,14 +2687,14 @@ estree-util-to-js@^1.1.0: estree-util-value-to-estree@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz#1d3125594b4d6680f666644491e7ac1745a3df49" + resolved "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz" integrity sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw== dependencies: is-plain-obj "^3.0.0" estree-util-visit@^1.0.0: version "1.2.1" - resolved "https://registry.yarnpkg.com/estree-util-visit/-/estree-util-visit-1.2.1.tgz#8bc2bc09f25b00827294703835aabee1cc9ec69d" + resolved "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz" integrity sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw== dependencies: "@types/estree-jsx" "^1.0.0" @@ -2710,7 +2707,7 @@ estree-walker@^2.0.2: estree-walker@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz" integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== dependencies: "@types/estree" "^1.0.0" @@ -2722,7 +2719,7 @@ esutils@^2.0.2: execa@^0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" + resolved "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz" integrity sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA== dependencies: cross-spawn "^5.0.1" @@ -2752,7 +2749,7 @@ extend@^2.0.0: extend@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + 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: @@ -2952,7 +2949,7 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@ get-stream@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz" integrity sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ== get-symbol-description@^1.0.0: @@ -2985,7 +2982,7 @@ github-from-package@0.0.0: github-slugger@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-2.0.0.tgz#52cf2f9279a21eb6c59dd385b410f0c0adda8f1a" + resolved "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz" integrity sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw== glob-parent@^5.1.2, glob-parent@~5.1.2: @@ -3121,7 +3118,7 @@ has-bigints@^1.0.1, has-bigints@^1.0.2: has-flag@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" integrity sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng== has-flag@^3.0.0: @@ -3167,43 +3164,41 @@ has@^1.0.3: hash-obj@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/hash-obj/-/hash-obj-4.0.0.tgz#3fafeb0b5f17994441dbe04efbdee82e26b74c8c" + resolved "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz" integrity sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg== dependencies: is-obj "^3.0.0" sort-keys "^5.0.0" type-fest "^1.0.2" -hast-util-from-dom@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz#d32edd25bf28f4b178b5ae318f8d05762e67bd16" - integrity sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg== +hast-util-from-dom@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/hast-util-from-dom/-/hast-util-from-dom-4.2.0.tgz#25836ddecc3cc0849d32749c2a7aec03e94b59a7" + integrity sha512-t1RJW/OpJbCAJQeKi3Qrj1cAOLA0+av/iPFori112+0X7R3wng+jxLA+kXec8K4szqPRGI8vPxbbpEYvvpwaeQ== dependencies: - "@types/hast" "^3.0.0" - hastscript "^8.0.0" + hastscript "^7.0.0" web-namespaces "^2.0.0" -hast-util-from-html-isomorphic@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz#b31baee386a899a2472326a3c5692f29f86d1d3c" - integrity sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw== +hast-util-from-html-isomorphic@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-1.0.0.tgz#592b2bea880d476665b76ca1cf7d1a94925c80ec" + integrity sha512-Yu480AKeOEN/+l5LA674a+7BmIvtDj24GvOt7MtQWuhzUwlaaRWdEPXAh3Qm5vhuthpAipFb2vTetKXWOjmTvw== dependencies: - "@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" + "@types/hast" "^2.0.0" + hast-util-from-dom "^4.0.0" + hast-util-from-html "^1.0.0" + unist-util-remove-position "^4.0.0" -hast-util-from-html@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz#9cd38ee81bf40b2607368b92a04b0905fa987488" - integrity sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g== +hast-util-from-html@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hast-util-from-html/-/hast-util-from-html-1.0.2.tgz#2482fd701b2d8270b912b3909d6fb645d4a346cf" + integrity sha512-LhrTA2gfCbLOGJq2u/asp4kwuG0y6NhWTXiPKP+n0qNukKy7hc10whqqCFfyvIA1Q5U5d0sp9HhNim9gglEH4A== dependencies: - "@types/hast" "^3.0.0" - devlop "^1.1.0" - hast-util-from-parse5 "^8.0.0" + "@types/hast" "^2.0.0" + hast-util-from-parse5 "^7.0.0" parse5 "^7.0.0" - vfile "^6.0.0" - vfile-message "^4.0.0" + vfile "^5.0.0" + vfile-message "^3.0.0" hast-util-from-parse5@^6.0.0: version "6.0.1" @@ -3217,6 +3212,19 @@ hast-util-from-parse5@^6.0.0: vfile-location "^3.2.0" web-namespaces "^1.0.0" +hast-util-from-parse5@^7.0.0: + version "7.1.2" + resolved "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz" + integrity sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw== + dependencies: + "@types/hast" "^2.0.0" + "@types/unist" "^2.0.0" + hastscript "^7.0.0" + property-information "^6.0.0" + vfile "^5.0.0" + vfile-location "^4.0.0" + web-namespaces "^2.0.0" + hast-util-from-parse5@^8.0.0: version "8.0.1" resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz#654a5676a41211e14ee80d1b1758c399a0327651" @@ -3236,18 +3244,26 @@ hast-util-is-element@^1.0.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-is-element@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz#6e31a6532c217e5b533848c7e52c9d9369ca0932" - integrity sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g== +hast-util-is-element@^2.0.0: + version "2.1.3" + resolved "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-2.1.3.tgz" + integrity sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA== dependencies: - "@types/hast" "^3.0.0" + "@types/hast" "^2.0.0" + "@types/unist" "^2.0.0" 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-parse-selector@^3.0.0: + version "3.1.1" + resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz" + integrity sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA== + dependencies: + "@types/hast" "^2.0.0" + hast-util-parse-selector@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz#352879fa86e25616036037dd8931fb5f34cb4a27" @@ -3256,9 +3272,9 @@ hast-util-parse-selector@^4.0.0: "@types/hast" "^3.0.0" hast-util-raw@^9.0.0: - version "9.0.2" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.0.2.tgz#39b4a4886bd9f0a5dd42e86d02c966c2c152884c" - integrity sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA== + version "9.0.1" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.0.1.tgz#2ba8510e4ed2a1e541cde2a4ebb5c38ab4c82c2d" + integrity sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA== dependencies: "@types/hast" "^3.0.0" "@types/unist" "^3.0.0" @@ -3275,9 +3291,9 @@ hast-util-raw@^9.0.0: zwitch "^2.0.0" hast-util-to-estree@^2.0.0: - version "2.3.3" - resolved "https://registry.yarnpkg.com/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz#da60142ffe19a6296923ec222aba73339c8bf470" - integrity sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ== + version "2.3.2" + resolved "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.2.tgz" + integrity sha512-YYDwATNdnvZi3Qi84iatPIl1lWpXba1MeNrNbDfJfVzEBZL8uUmtR7mt7bxKBC8kuAuvb0bkojXYZzsNHyHCLg== dependencies: "@types/estree" "^1.0.0" "@types/estree-jsx" "^1.0.0" @@ -3317,19 +3333,19 @@ hast-util-to-text@^2.0.0: repeat-string "^1.0.0" unist-util-find-after "^3.0.0" -hast-util-to-text@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/hast-util-to-text/-/hast-util-to-text-4.0.0.tgz#7f33a45d0bf7981ead44e82d9d8d75f511b3642f" - integrity sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w== +hast-util-to-text@^3.1.0: + version "3.1.2" + resolved "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-3.1.2.tgz" + integrity sha512-tcllLfp23dJJ+ju5wCCZHVpzsQQ43+moJbqVX3jNWPB7z/KFC4FyZD6R7y94cHL6MQ33YtMZL8Z0aIXXI4XFTw== 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" + "@types/hast" "^2.0.0" + "@types/unist" "^2.0.0" + hast-util-is-element "^2.0.0" + unist-util-find-after "^4.0.0" hast-util-whitespace@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz#0ec64e257e6fc216c7d14c8a1b74d27d650b4557" + resolved "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz" integrity sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng== hastscript@^6.0.0: @@ -3343,6 +3359,17 @@ hastscript@^6.0.0: property-information "^5.0.0" space-separated-tokens "^1.0.0" +hastscript@^7.0.0: + version "7.2.0" + resolved "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz" + integrity sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw== + dependencies: + "@types/hast" "^2.0.0" + comma-separated-tokens "^2.0.0" + hast-util-parse-selector "^3.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" + hastscript@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-8.0.0.tgz#4ef795ec8dee867101b9f23cc830d4baf4fd781a" @@ -3454,7 +3481,7 @@ ini@~1.3.0: inline-style-parser@0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" + resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz" integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== inline-style-prefixer@^6.0.0: @@ -3496,7 +3523,7 @@ is-alphabetical@^1.0.0: is-alphabetical@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b" + resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz" integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ== is-alphanumerical@^1.0.0: @@ -3509,7 +3536,7 @@ is-alphanumerical@^1.0.0: is-alphanumerical@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875" + resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz" integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw== dependencies: is-alphabetical "^2.0.0" @@ -3566,7 +3593,7 @@ is-browser@^2.0.1: is-buffer@^2.0.0: version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: @@ -3595,7 +3622,7 @@ is-decimal@^1.0.0: is-decimal@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7" + resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz" integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A== is-extendable@^0.1.0: @@ -3622,7 +3649,7 @@ is-hexadecimal@^1.0.0: is-hexadecimal@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" + resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz" integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg== is-map@^2.0.1, is-map@^2.0.2: @@ -3649,7 +3676,7 @@ is-number@^7.0.0: is-obj@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-3.0.0.tgz#b0889f1f9f8cb87e87df53a8d1230a2250f8b9be" + resolved "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz" integrity sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ== is-object@^1.0.1: @@ -3669,12 +3696,12 @@ is-plain-obj@^2.0.0: is-plain-obj@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== is-plain-obj@^4.0.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz" integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== is-reference@1.2.1: @@ -3685,9 +3712,9 @@ is-reference@1.2.1: "@types/estree" "*" is-reference@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-3.0.2.tgz#154747a01f45cd962404ee89d43837af2cba247c" - integrity sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg== + version "3.0.1" + resolved "https://registry.npmjs.org/is-reference/-/is-reference-3.0.1.tgz" + integrity sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w== dependencies: "@types/estree" "*" @@ -3790,7 +3817,7 @@ isbot@^2.0.0: isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== js-cookie@3.0.1: @@ -3856,9 +3883,9 @@ json5@^2.2.1: integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" - integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== + version "3.2.0" + resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz" + integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== "jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.3: version "3.3.3" @@ -3882,24 +3909,24 @@ katex@^0.13.0: dependencies: commander "^8.0.0" -katex@^0.16.0, katex@^0.16.9: - version "0.16.9" - resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.9.tgz#bc62d8f7abfea6e181250f85a56e4ef292dcb1fa" - integrity sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ== - dependencies: - commander "^8.3.0" - -katex@^0.16.4: +katex@^0.16.0, katex@^0.16.4: version "0.16.6" resolved "https://registry.npmjs.org/katex/-/katex-0.16.6.tgz" integrity sha512-XVB7X8jEogjJ+OY+a9JdE+VOk9i7znela0HP6WaDbpB4sUh8ghrG0Ccluu2MA2tcJbFAViBC9aVXus2UvkEr8A== dependencies: commander "^8.3.0" +katex@^0.16.8: + version "0.16.8" + resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.8.tgz#89b453f40e8557f423f31a1009e9298dd99d5ceb" + integrity sha512-ftuDnJbcbOckGY11OO+zg3OofESlbR5DRl2cmN8HeWeeFIV7wTXvAOx8kEjZjobhA+9wh2fbKeO6cdcA9Mnovg== + dependencies: + commander "^8.3.0" + khroma@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.1.0.tgz#45f2ce94ce231a437cf5b63c2e886e6eb42bbbb1" - integrity sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw== + version "2.0.0" + resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.0.0.tgz#7577de98aed9f36c7a474c4d453d94c0d6c6588b" + integrity sha512-2J8rDNlQWbtiNYThZRvmMv5yt44ZakX+Tz5ZIp/mN1pt4snn+m030Va5Z4v8xA0cQFDXBwO/8i42xL4QPsVk3g== kind-of@^6.0.0, kind-of@^6.0.2: version "6.0.3" @@ -3908,7 +3935,7 @@ kind-of@^6.0.0, kind-of@^6.0.2: kleur@^4.0.3: version "4.1.5" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" + resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== language-subtag-registry@~0.3.2: @@ -3928,6 +3955,11 @@ layout-base@^1.0.0: resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-1.0.2.tgz#1291e296883c322a9dd4c5dd82063721b53e26e2" integrity sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg== +layout-base@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-2.0.1.tgz#d0337913586c90f9c2c075292069f5c2da5dd285" + integrity sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg== + levn@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" @@ -3987,7 +4019,7 @@ lodash.clonedeep@^4.5.0: lodash.get@^4.4.2: version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz" integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.merge@^4.6.2: @@ -4007,7 +4039,7 @@ longest-streak@^2.0.0: longest-streak@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" + resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz" integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== loose-envify@^1.1.0, loose-envify@^1.4.0: @@ -4053,12 +4085,12 @@ magic-string@^0.27.0: markdown-extensions@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/markdown-extensions/-/markdown-extensions-1.1.1.tgz#fea03b539faeaee9b4ef02a3769b455b189f7fc3" + resolved "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz" integrity sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q== markdown-table@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.3.tgz#e6331d30e493127e031dd385488b5bd326e4a6bd" + resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz" integrity sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw== match-sorter@^6.3.1: @@ -4076,7 +4108,7 @@ maybe-callback@^2.1.0: mdast-util-definitions@^5.0.0: version "5.1.2" - resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz#9910abb60ac5d7115d6819b57ae0bcef07a3f7a7" + resolved "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz" integrity sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA== dependencies: "@types/mdast" "^3.0.0" @@ -4085,7 +4117,7 @@ mdast-util-definitions@^5.0.0: mdast-util-find-and-replace@^2.0.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz#cc2b774f7f3630da4bd592f61966fecade8b99b1" + resolved "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz" integrity sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw== dependencies: "@types/mdast" "^3.0.0" @@ -4093,7 +4125,25 @@ mdast-util-find-and-replace@^2.0.0: unist-util-is "^5.0.0" unist-util-visit-parents "^5.0.0" -mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0, mdast-util-from-markdown@^1.3.0: +mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0: + version "1.3.0" + resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz" + integrity sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g== + dependencies: + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + decode-named-character-reference "^1.0.0" + mdast-util-to-string "^3.1.0" + micromark "^3.0.0" + micromark-util-decode-numeric-character-reference "^1.0.0" + micromark-util-decode-string "^1.0.0" + micromark-util-normalize-identifier "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + unist-util-stringify-position "^3.0.0" + uvu "^0.5.0" + +mdast-util-from-markdown@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz#9421a5a247f10d31d2faed2a30df5ec89ceafcf0" integrity sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww== @@ -4113,7 +4163,7 @@ mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0, mdast-util-fro mdast-util-gfm-autolink-literal@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz#67a13abe813d7eba350453a5333ae1bc0ec05c06" + resolved "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz" integrity sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA== dependencies: "@types/mdast" "^3.0.0" @@ -4123,7 +4173,7 @@ mdast-util-gfm-autolink-literal@^1.0.0: mdast-util-gfm-footnote@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz#ce5e49b639c44de68d5bf5399877a14d5020424e" + resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz" integrity sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ== dependencies: "@types/mdast" "^3.0.0" @@ -4132,7 +4182,7 @@ mdast-util-gfm-footnote@^1.0.0: mdast-util-gfm-strikethrough@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz#5470eb105b483f7746b8805b9b989342085795b7" + resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz" integrity sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ== dependencies: "@types/mdast" "^3.0.0" @@ -4140,7 +4190,7 @@ mdast-util-gfm-strikethrough@^1.0.0: mdast-util-gfm-table@^1.0.0: version "1.0.7" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz#3552153a146379f0f9c4c1101b071d70bbed1a46" + resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz" integrity sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg== dependencies: "@types/mdast" "^3.0.0" @@ -4150,7 +4200,7 @@ mdast-util-gfm-table@^1.0.0: mdast-util-gfm-task-list-item@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz#b280fcf3b7be6fd0cc012bbe67a59831eb34097b" + resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz" integrity sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ== dependencies: "@types/mdast" "^3.0.0" @@ -4158,7 +4208,7 @@ mdast-util-gfm-task-list-item@^1.0.0: mdast-util-gfm@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz#e92f4d8717d74bdba6de57ed21cc8b9552e2d0b6" + resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz" integrity sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg== dependencies: mdast-util-from-markdown "^1.0.0" @@ -4180,7 +4230,7 @@ mdast-util-math@^0.1.0: mdast-util-math@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-math/-/mdast-util-math-2.0.2.tgz#19a06a81f31643f48cc805e7c31edb7ce739242c" + resolved "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz" integrity sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ== dependencies: "@types/mdast" "^3.0.0" @@ -4189,7 +4239,7 @@ mdast-util-math@^2.0.0: mdast-util-mdx-expression@^1.0.0: version "1.3.2" - resolved "https://registry.yarnpkg.com/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz#d027789e67524d541d6de543f36d51ae2586f220" + resolved "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz" integrity sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA== dependencies: "@types/estree-jsx" "^1.0.0" @@ -4199,9 +4249,9 @@ mdast-util-mdx-expression@^1.0.0: mdast-util-to-markdown "^1.0.0" mdast-util-mdx-jsx@^2.0.0: - version "2.1.4" - resolved "https://registry.yarnpkg.com/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz#7c1f07f10751a78963cfabee38017cbc8b7786d1" - integrity sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA== + version "2.1.2" + resolved "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.2.tgz" + integrity sha512-o9vBCYQK5ZLGEj3tCGISJGjvafyHRVJlZmfJzSE7xjiogSzIeph/Z4zMY65q4WGRMezQBeAwPlrdymDYYYx0tA== dependencies: "@types/estree-jsx" "^1.0.0" "@types/hast" "^2.0.0" @@ -4218,7 +4268,7 @@ mdast-util-mdx-jsx@^2.0.0: mdast-util-mdx@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz#49b6e70819b99bb615d7223c088d295e53bb810f" + resolved "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz" integrity sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw== dependencies: mdast-util-from-markdown "^1.0.0" @@ -4229,7 +4279,7 @@ mdast-util-mdx@^2.0.0: mdast-util-mdxjs-esm@^1.0.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz#645d02cd607a227b49721d146fd81796b2e2d15b" + resolved "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz" integrity sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w== dependencies: "@types/estree-jsx" "^1.0.0" @@ -4240,7 +4290,7 @@ mdast-util-mdxjs-esm@^1.0.0: mdast-util-phrasing@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz#c7c21d0d435d7fb90956038f02e8702781f95463" + resolved "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz" integrity sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg== dependencies: "@types/mdast" "^3.0.0" @@ -4248,7 +4298,7 @@ mdast-util-phrasing@^3.0.0: mdast-util-to-hast@^12.1.0: version "12.3.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz#045d2825fb04374e59970f5b3f279b5700f6fb49" + resolved "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz" integrity sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw== dependencies: "@types/hast" "^2.0.0" @@ -4261,9 +4311,9 @@ mdast-util-to-hast@^12.1.0: unist-util-visit "^4.0.0" mdast-util-to-hast@^13.0.0: - version "13.1.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz#1ae54d903150a10fe04d59f03b2b95fd210b2124" - integrity sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA== + version "13.0.2" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.0.2.tgz#74c0a9f014bb2340cae6118f6fccd75467792be7" + integrity sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og== dependencies: "@types/hast" "^3.0.0" "@types/mdast" "^4.0.0" @@ -4273,7 +4323,6 @@ mdast-util-to-hast@^13.0.0: trim-lines "^3.0.0" unist-util-position "^5.0.0" unist-util-visit "^5.0.0" - vfile "^6.0.0" mdast-util-to-markdown@^0.6.0: version "0.6.5" @@ -4289,7 +4338,7 @@ mdast-util-to-markdown@^0.6.0: mdast-util-to-markdown@^1.0.0, mdast-util-to-markdown@^1.3.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz#c13343cb3fc98621911d33b5cd42e7d0731171c6" + resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz" integrity sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A== dependencies: "@types/mdast" "^3.0.0" @@ -4308,7 +4357,7 @@ mdast-util-to-string@^2.0.0: mdast-util-to-string@^3.0.0, mdast-util-to-string@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz#66f7bb6324756741c5f47a53557f0cbf16b6f789" + resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz" integrity sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg== dependencies: "@types/mdast" "^3.0.0" @@ -4324,22 +4373,22 @@ merge2@^1.3.0, merge2@^1.4.1: integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== mermaid@^10.2.2: - version "10.9.0" - resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-10.9.0.tgz#4d1272fbe434bd8f3c2c150554dc8a23a9bf9361" - integrity sha512-swZju0hFox/B/qoLKK0rOxxgh8Cf7rJSfAUc1u8fezVihYMvrJAS45GzAxTVf4Q+xn9uMgitBcmWk7nWGXOs/g== + version "10.4.0" + resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-10.4.0.tgz#f89bf0ada161cbbe4dba2776e805119f7245a102" + integrity sha512-4QCQLp79lvz7UZxow5HUX7uWTPJOaQBVExduo91tliXC7v78i6kssZOPHxLL+Xs30KU72cpPn3g3imw/xm/gaw== dependencies: "@braintree/sanitize-url" "^6.0.1" "@types/d3-scale" "^4.0.3" "@types/d3-scale-chromatic" "^3.0.0" - cytoscape "^3.28.1" + cytoscape "^3.23.0" cytoscape-cose-bilkent "^4.1.0" + cytoscape-fcose "^2.1.0" d3 "^7.4.0" d3-sankey "^0.12.3" dagre-d3-es "7.0.10" dayjs "^1.11.7" dompurify "^3.0.5" - elkjs "^0.9.0" - katex "^0.16.9" + elkjs "^0.8.2" khroma "^2.0.0" lodash-es "^4.17.21" mdast-util-from-markdown "^1.3.0" @@ -4350,9 +4399,9 @@ mermaid@^10.2.2: web-worker "^1.2.0" micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz#1386628df59946b2d39fb2edfd10f3e8e0a75bb8" - integrity sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw== + version "1.0.6" + resolved "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz" + integrity sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA== dependencies: decode-named-character-reference "^1.0.0" micromark-factory-destination "^1.0.0" @@ -4372,19 +4421,20 @@ micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: uvu "^0.5.0" micromark-extension-gfm-autolink-literal@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz#5853f0e579bbd8ef9e39a7c0f0f27c5a063a66e7" - integrity sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz" + integrity sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg== dependencies: micromark-util-character "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-extension-gfm-footnote@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz#05e13034d68f95ca53c99679040bc88a6f92fe2e" - integrity sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q== + version "1.1.0" + resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.0.tgz" + integrity sha512-RWYce7j8+c0n7Djzv5NzGEGitNNYO3uj+h/XYMdS/JinH1Go+/Qkomg/rfxExFzYTiydaV6GLeffGO5qcJbMPA== dependencies: micromark-core-commonmark "^1.0.0" micromark-factory-space "^1.0.0" @@ -4396,9 +4446,9 @@ micromark-extension-gfm-footnote@^1.0.0: uvu "^0.5.0" micromark-extension-gfm-strikethrough@^1.0.0: - version "1.0.7" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz#c8212c9a616fa3bf47cb5c711da77f4fdc2f80af" - integrity sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw== + version "1.0.5" + resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.5.tgz" + integrity sha512-X0oI5eYYQVARhiNfbETy7BfLSmSilzN1eOuoRnrf9oUNsPRrWOAe9UqSizgw1vNxQBfOwL+n2610S3bYjVNi7w== dependencies: micromark-util-chunked "^1.0.0" micromark-util-classify-character "^1.0.0" @@ -4408,9 +4458,9 @@ micromark-extension-gfm-strikethrough@^1.0.0: uvu "^0.5.0" micromark-extension-gfm-table@^1.0.0: - version "1.0.7" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz#dcb46074b0c6254c3fc9cc1f6f5002c162968008" - integrity sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw== + version "1.0.5" + resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz" + integrity sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4420,15 +4470,15 @@ micromark-extension-gfm-table@^1.0.0: micromark-extension-gfm-tagfilter@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz#aa7c4dd92dabbcb80f313ebaaa8eb3dac05f13a7" + resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz" integrity sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g== dependencies: micromark-util-types "^1.0.0" micromark-extension-gfm-task-list-item@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz#b52ce498dc4c69b6a9975abafc18f275b9dde9f4" - integrity sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ== + version "1.0.4" + resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.4.tgz" + integrity sha512-9XlIUUVnYXHsFF2HZ9jby4h3npfX10S1coXTnV035QGPgrtNYQq3J6IfIvcCIUAJrrqBVi5BqA/LmaOMJqPwMQ== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4437,9 +4487,9 @@ micromark-extension-gfm-task-list-item@^1.0.0: uvu "^0.5.0" micromark-extension-gfm@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz#e517e8579949a5024a493e49204e884aa74f5acf" - integrity sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ== + version "2.0.1" + resolved "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.1.tgz" + integrity sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA== dependencies: micromark-extension-gfm-autolink-literal "^1.0.0" micromark-extension-gfm-footnote "^1.0.0" @@ -4459,9 +4509,9 @@ micromark-extension-math@^0.1.0: micromark "~2.11.0" micromark-extension-math@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz#52c70cc8266cd20ada1ef5a479bfed9a19b789bf" - integrity sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg== + version "2.1.0" + resolved "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.0.tgz" + integrity sha512-WH+fJkveMvM3ZN+deb/jT3UW623x8xO9ycfJNDC+UQXX+V72RO6hT9KqxA7c8XFwozAFJ7tufOeG+x/CVSXHUw== dependencies: "@types/katex" "^0.16.0" katex "^0.16.0" @@ -4472,11 +4522,10 @@ micromark-extension-math@^2.0.0: uvu "^0.5.0" micromark-extension-mdx-expression@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz#5bc1f5fd90388e8293b3ef4f7c6f06c24aff6314" - integrity sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw== + version "1.0.4" + resolved "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.4.tgz" + integrity sha512-TCgLxqW6ReQ3AJgtj1P0P+8ZThBTloLbeb7jNaqr6mCOLDpxUiBFE/9STgooMZttEwOQu5iEcCCa3ZSDhY9FGw== dependencies: - "@types/estree" "^1.0.0" micromark-factory-mdx-expression "^1.0.0" micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4486,12 +4535,11 @@ micromark-extension-mdx-expression@^1.0.0: uvu "^0.5.0" micromark-extension-mdx-jsx@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz#e72d24b7754a30d20fb797ece11e2c4e2cae9e82" - integrity sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.3.tgz" + integrity sha512-VfA369RdqUISF0qGgv2FfV7gGjHDfn9+Qfiv5hEwpyr1xscRj/CiVRkU7rywGFCO7JwJ5L0e7CJz60lY52+qOA== dependencies: "@types/acorn" "^4.0.0" - "@types/estree" "^1.0.0" estree-util-is-identifier-name "^2.0.0" micromark-factory-mdx-expression "^1.0.0" micromark-factory-space "^1.0.0" @@ -4502,18 +4550,17 @@ micromark-extension-mdx-jsx@^1.0.0: vfile-message "^3.0.0" micromark-extension-mdx-md@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz#595d4b2f692b134080dca92c12272ab5b74c6d1a" - integrity sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.0.tgz" + integrity sha512-xaRAMoSkKdqZXDAoSgp20Azm0aRQKGOl0RrS81yGu8Hr/JhMsBmfs4wR7m9kgVUIO36cMUQjNyiyDKPrsv8gOw== dependencies: micromark-util-types "^1.0.0" micromark-extension-mdxjs-esm@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz#e4f8be9c14c324a80833d8d3a227419e2b25dec1" - integrity sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.3.tgz" + integrity sha512-2N13ol4KMoxb85rdDwTAC6uzs8lMX0zeqpcyx7FhS7PxXomOnLactu8WI8iBNXW8AVyea3KIJd/1CKnUmwrK9A== dependencies: - "@types/estree" "^1.0.0" micromark-core-commonmark "^1.0.0" micromark-util-character "^1.0.0" micromark-util-events-to-acorn "^1.0.0" @@ -4524,9 +4571,9 @@ micromark-extension-mdxjs-esm@^1.0.0: vfile-message "^3.0.0" micromark-extension-mdxjs@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz#f78d4671678d16395efeda85170c520ee795ded8" - integrity sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.0.tgz" + integrity sha512-TZZRZgeHvtgm+IhtgC2+uDMR7h8eTKF0QUX9YsgoL9+bADBpBY6SiLvWqnBlLbCEevITmTqmEuY3FoxMKVs1rQ== dependencies: acorn "^8.0.0" acorn-jsx "^5.0.0" @@ -4538,18 +4585,18 @@ micromark-extension-mdxjs@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-destination@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz#eb815957d83e6d44479b3df640f010edad667b9f" - integrity sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz" + integrity sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-factory-label@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz#cc95d5478269085cfa2a7282b3de26eb2e2dec68" - integrity sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz" + integrity sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4557,11 +4604,11 @@ micromark-factory-label@^1.0.0: uvu "^0.5.0" micromark-factory-mdx-expression@^1.0.0: - version "1.0.9" - resolved "https://registry.yarnpkg.com/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz#57ba4571b69a867a1530f34741011c71c73a4976" - integrity sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA== + version "1.0.7" + resolved "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.7.tgz" + integrity sha512-QAdFbkQagTZ/eKb8zDGqmjvgevgJH3+aQpvvKrXWxNJp3o8/l2cAbbrBd0E04r0Gx6nssPpqWIjnbHFvZu5qsQ== dependencies: - "@types/estree" "^1.0.0" + micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-events-to-acorn "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4571,27 +4618,28 @@ micromark-factory-mdx-expression@^1.0.0: vfile-message "^3.0.0" micromark-factory-space@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz#c8f40b0640a0150751d3345ed885a080b0d15faf" - integrity sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz" + integrity sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew== dependencies: micromark-util-character "^1.0.0" micromark-util-types "^1.0.0" micromark-factory-title@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz#dd0fe951d7a0ac71bdc5ee13e5d1465ad7f50ea1" - integrity sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz" + integrity sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-factory-whitespace@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz#798fb7489f4c8abafa7ca77eed6b5745853c9705" - integrity sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz" + integrity sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -4599,56 +4647,56 @@ micromark-factory-whitespace@^1.0.0: micromark-util-types "^1.0.0" micromark-util-character@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-1.2.0.tgz#4fedaa3646db249bc58caeb000eb3549a8ca5dcc" - integrity sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg== + version "1.1.0" + resolved "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz" + integrity sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg== dependencies: micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-util-character@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.0.tgz#31320ace16b4644316f6bf057531689c71e2aee1" - integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ== + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.0.1.tgz#52b824c2e2633b6fb33399d2ec78ee2a90d6b298" + integrity sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw== dependencies: micromark-util-symbol "^2.0.0" micromark-util-types "^2.0.0" micromark-util-chunked@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz#37a24d33333c8c69a74ba12a14651fd9ea8a368b" - integrity sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz" + integrity sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g== dependencies: micromark-util-symbol "^1.0.0" micromark-util-classify-character@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz#6a7f8c8838e8a120c8e3c4f2ae97a2bff9190e9d" - integrity sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz" + integrity sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" micromark-util-combine-extensions@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz#192e2b3d6567660a85f735e54d8ea6e3952dbe84" - integrity sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz" + integrity sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA== dependencies: micromark-util-chunked "^1.0.0" micromark-util-types "^1.0.0" micromark-util-decode-numeric-character-reference@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz#b1e6e17009b1f20bc652a521309c5f22c85eb1c6" - integrity sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz" + integrity sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w== dependencies: micromark-util-symbol "^1.0.0" micromark-util-decode-string@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz#dc12b078cba7a3ff690d0203f95b5d5537f2809c" - integrity sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz" + integrity sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q== dependencies: decode-named-character-reference "^1.0.0" micromark-util-character "^1.0.0" @@ -4656,9 +4704,9 @@ micromark-util-decode-string@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz#92e4f565fd4ccb19e0dcae1afab9a173bbeb19a5" - integrity sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz" + integrity sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA== micromark-util-encode@^2.0.0: version "2.0.0" @@ -4666,42 +4714,41 @@ micromark-util-encode@^2.0.0: integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA== micromark-util-events-to-acorn@^1.0.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz#a4ab157f57a380e646670e49ddee97a72b58b557" - integrity sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w== + version "1.2.1" + resolved "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.1.tgz" + integrity sha512-mkg3BaWlw6ZTkQORrKVBW4o9ICXPxLtGz51vml5mQpKFdo9vqIX68CAx5JhTOdjQyAHH7JFmm4rh8toSPQZUmg== dependencies: "@types/acorn" "^4.0.0" "@types/estree" "^1.0.0" - "@types/unist" "^2.0.0" estree-util-visit "^1.0.0" - micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" uvu "^0.5.0" + vfile-location "^4.0.0" vfile-message "^3.0.0" micromark-util-html-tag-name@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz#48fd7a25826f29d2f71479d3b4e83e94829b3588" - integrity sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q== + version "1.1.0" + resolved "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz" + integrity sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA== micromark-util-normalize-identifier@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz#7a73f824eb9f10d442b4d7f120fecb9b38ebf8b7" - integrity sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz" + integrity sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg== dependencies: micromark-util-symbol "^1.0.0" micromark-util-resolve-all@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz#4652a591ee8c8fa06714c9b54cd6c8e693671188" - integrity sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz" + integrity sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw== dependencies: micromark-util-types "^1.0.0" micromark-util-sanitize-uri@^1.0.0, micromark-util-sanitize-uri@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz#613f738e4400c6eedbc53590c67b197e30d7f90d" - integrity sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A== + version "1.1.0" + resolved "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz" + integrity sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg== dependencies: micromark-util-character "^1.0.0" micromark-util-encode "^1.0.0" @@ -4717,9 +4764,9 @@ micromark-util-sanitize-uri@^2.0.0: micromark-util-symbol "^2.0.0" micromark-util-subtokenize@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz#941c74f93a93eaf687b9054aeb94642b0e92edb1" - integrity sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz" + integrity sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA== dependencies: micromark-util-chunked "^1.0.0" micromark-util-symbol "^1.0.0" @@ -4727,9 +4774,9 @@ micromark-util-subtokenize@^1.0.0: uvu "^0.5.0" micromark-util-symbol@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz#813cd17837bdb912d069a12ebe3a44b6f7063142" - integrity sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz" + integrity sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ== micromark-util-symbol@^2.0.0: version "2.0.0" @@ -4737,9 +4784,9 @@ micromark-util-symbol@^2.0.0: integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw== micromark-util-types@^1.0.0, micromark-util-types@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-1.1.0.tgz#e6676a8cae0bb86a2171c498167971886cb7e283" - integrity sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz" + integrity sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w== micromark-util-types@^2.0.0: version "2.0.0" @@ -4747,9 +4794,9 @@ micromark-util-types@^2.0.0: integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w== micromark@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/micromark/-/micromark-3.2.0.tgz#1af9fef3f995ea1ea4ac9c7e2f19c48fd5c006e9" - integrity sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA== + version "3.1.0" + resolved "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz" + integrity sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA== dependencies: "@types/debug" "^4.0.0" debug "^4.0.0" @@ -4852,7 +4899,7 @@ mkdirp@^0.5.5: mri@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" + resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz" integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== ms@2.0.0: @@ -4862,7 +4909,7 @@ ms@2.0.0: ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.1.1, ms@^2.1.3: @@ -4901,7 +4948,7 @@ natural-compare@^1.4.0: next-mdx-remote@^4.2.1: version "4.4.1" - resolved "https://registry.yarnpkg.com/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz#96b16e2adc54dbcd0a7f204a9a3c3fd269d41abf" + resolved "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz" integrity sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ== dependencies: "@mdx-js/mdx" "^2.2.1" @@ -4919,29 +4966,33 @@ next-themes@^0.2.0, next-themes@^0.2.1: resolved "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz" integrity sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A== -next@13.3.0: - version "13.3.0" - resolved "https://registry.yarnpkg.com/next/-/next-13.3.0.tgz#40632d303d74fc8521faa0a5bf4a033a392749b1" - integrity sha512-OVTw8MpIPa12+DCUkPqRGPS3thlJPcwae2ZL4xti3iBff27goH024xy4q2lhlsdoYiKOi8Kz6uJoLW/GXwgfOA== +next@13.0.0: + version "13.0.0" + resolved "https://registry.yarnpkg.com/next/-/next-13.0.0.tgz#6f07064a4f374562cf58677bef4dd06326ca648b" + integrity sha512-puH1WGM6rGeFOoFdXXYfUxN9Sgi4LMytCV5HkQJvVUOhHfC1DoVqOfvzaEteyp6P04IW+gbtK2Q9pInVSrltPA== dependencies: - "@next/env" "13.3.0" - "@swc/helpers" "0.4.14" - busboy "1.6.0" + "@next/env" "13.0.0" + "@swc/helpers" "0.4.11" caniuse-lite "^1.0.30001406" postcss "8.4.14" - styled-jsx "5.1.1" + styled-jsx "5.1.0" + use-sync-external-store "1.2.0" optionalDependencies: - "@next/swc-darwin-arm64" "13.3.0" - "@next/swc-darwin-x64" "13.3.0" - "@next/swc-linux-arm64-gnu" "13.3.0" - "@next/swc-linux-arm64-musl" "13.3.0" - "@next/swc-linux-x64-gnu" "13.3.0" - "@next/swc-linux-x64-musl" "13.3.0" - "@next/swc-win32-arm64-msvc" "13.3.0" - "@next/swc-win32-ia32-msvc" "13.3.0" - "@next/swc-win32-x64-msvc" "13.3.0" - -nextra-theme-docs@^2.12.3: + "@next/swc-android-arm-eabi" "13.0.0" + "@next/swc-android-arm64" "13.0.0" + "@next/swc-darwin-arm64" "13.0.0" + "@next/swc-darwin-x64" "13.0.0" + "@next/swc-freebsd-x64" "13.0.0" + "@next/swc-linux-arm-gnueabihf" "13.0.0" + "@next/swc-linux-arm64-gnu" "13.0.0" + "@next/swc-linux-arm64-musl" "13.0.0" + "@next/swc-linux-x64-gnu" "13.0.0" + "@next/swc-linux-x64-musl" "13.0.0" + "@next/swc-win32-arm64-msvc" "13.0.0" + "@next/swc-win32-ia32-msvc" "13.0.0" + "@next/swc-win32-x64-msvc" "13.0.0" + +nextra-theme-docs@2.12.3: version "2.12.3" resolved "https://registry.yarnpkg.com/nextra-theme-docs/-/nextra-theme-docs-2.12.3.tgz#f69a46884718ffc3d8fa54f7092a5da6a144ccd6" integrity sha512-aZywZwokk/h5HrUTh/bsU981Sd2prZks7ci+HNG9wuMnm+drp3PBmRKIuQxBCiJurePVBJ2Qk2/wTV3VECGKnA== @@ -4960,26 +5011,26 @@ nextra-theme-docs@^2.12.3: scroll-into-view-if-needed "^3.0.0" zod "^3.20.2" -nextra@^2.12.3: - version "2.13.4" - resolved "https://registry.yarnpkg.com/nextra/-/nextra-2.13.4.tgz#49e9f558735d86292cd8578b5a69f6d926bc2a14" - integrity sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw== +nextra@2.12.3: + version "2.12.3" + resolved "https://registry.yarnpkg.com/nextra/-/nextra-2.12.3.tgz#9ef4fc3f2c62fbd3f8ba557565061f97813daad1" + integrity sha512-0d8wXpGAccFpMFZuxnlnN56MIZj+AWGYXW3Xk6ByXyr0Mb+B/C/0aGZV5YrBex0V1wEqMGQl4LLAJI+AfCbSXg== dependencies: - "@headlessui/react" "^1.7.17" + "@headlessui/react" "^1.7.10" "@mdx-js/mdx" "^2.3.0" "@mdx-js/react" "^2.3.0" "@napi-rs/simple-git" "^0.1.9" - "@theguild/remark-mermaid" "^0.0.5" - "@theguild/remark-npm2yarn" "^0.2.0" + "@theguild/remark-mermaid" "^0.0.4" + "@theguild/remark-npm2yarn" "^0.1.1" clsx "^2.0.0" github-slugger "^2.0.0" graceful-fs "^4.2.11" gray-matter "^4.0.3" - katex "^0.16.9" + katex "^0.16.8" lodash.get "^4.4.2" next-mdx-remote "^4.2.1" p-limit "^3.1.0" - rehype-katex "^7.0.0" + rehype-katex "^6.0.3" rehype-pretty-code "0.9.11" rehype-raw "^7.0.0" remark-gfm "^3.0.1" @@ -4990,7 +5041,7 @@ nextra@^2.12.3: title "^3.5.3" unist-util-remove "^4.0.0" unist-util-visit "^5.0.0" - zod "^3.22.3" + zod "^3.22.2" node-abi@^3.3.0: version "3.40.0" @@ -5054,15 +5105,15 @@ normalize-range@^0.1.2: npm-run-path@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz" integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== dependencies: path-key "^2.0.0" -npm-to-yarn@^2.1.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/npm-to-yarn/-/npm-to-yarn-2.2.1.tgz#048843a6630621daffc6a239dfc89698b8abf7e8" - integrity sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ== +npm-to-yarn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/npm-to-yarn/-/npm-to-yarn-2.1.0.tgz#ff4e18028d18eb844691f1ccb556be5f3ccfde34" + integrity sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA== object-assign@^2.0.0: version "2.1.1" @@ -5183,7 +5234,7 @@ osx-release@^1.0.0: p-finally@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-limit@^3.0.2, p-limit@^3.1.0: @@ -5226,7 +5277,7 @@ parse-entities@^2.0.0: parse-entities@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.1.tgz#4e2a01111fb1c986549b944af39eeda258fc9e4e" + resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz" integrity sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w== dependencies: "@types/unist" "^2.0.0" @@ -5240,7 +5291,7 @@ parse-entities@^4.0.0: parse-numeric-range@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz#7c63b61190d61e4d53a1197f0c83c47bb670ffa3" + resolved "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz" integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ== parse-path@^7.0.0: @@ -5288,7 +5339,7 @@ path-is-absolute@^1.0.0: path-key@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== path-key@^3.1.0: @@ -5308,7 +5359,7 @@ path-type@^4.0.0: periscopic@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" + resolved "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz" integrity sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw== dependencies: "@types/estree" "^1.0.0" @@ -5465,9 +5516,9 @@ property-information@^5.0.0: xtend "^4.0.0" property-information@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.4.1.tgz#de8b79a7415fd2107dfbe65758bb2cc9dfcf60ac" - integrity sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w== + version "6.2.0" + resolved "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz" + integrity sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg== protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" @@ -5486,7 +5537,7 @@ prr@~1.0.1: pseudomap@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28: @@ -5639,7 +5690,7 @@ readdirp@~3.6.0: reading-time@^1.3.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/reading-time/-/reading-time-1.5.0.tgz#d2a7f1b6057cb2e169beaf87113cc3411b5bc5bb" + resolved "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz" integrity sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg== regenerator-runtime@^0.13.11: @@ -5673,18 +5724,17 @@ rehype-katex@5.0.0: unified "^9.0.0" unist-util-visit "^2.0.0" -rehype-katex@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/rehype-katex/-/rehype-katex-7.0.0.tgz#f5e9e2825981175a7b0a4d58ed9816c33576dfed" - integrity sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q== +rehype-katex@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/rehype-katex/-/rehype-katex-6.0.3.tgz#83e5b929b0967978e9491c02117f55be3594d7e1" + integrity sha512-ByZlRwRUcWegNbF70CVRm2h/7xy7jQ3R9LaY4VVSvjnoVWwWVhNL60DiZsBpC5tSzYQOCvDbzncIpIjPZWodZA== dependencies: - "@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" + "@types/hast" "^2.0.0" + "@types/katex" "^0.14.0" + hast-util-from-html-isomorphic "^1.0.0" + hast-util-to-text "^3.1.0" katex "^0.16.0" - unist-util-visit-parents "^6.0.0" - vfile "^6.0.0" + unist-util-visit "^4.0.0" rehype-parse@^7.0.0: version "7.0.1" @@ -5714,7 +5764,7 @@ rehype-raw@^7.0.0: remark-gfm@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-3.0.1.tgz#0b180f095e3036545e9dddac0e8df3fa5cfee54f" + resolved "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz" integrity sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig== dependencies: "@types/mdast" "^3.0.0" @@ -5732,7 +5782,7 @@ remark-math@4.0.0: remark-math@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/remark-math/-/remark-math-5.1.1.tgz#459e798d978d4ca032e745af0bac81ddcdf94964" + resolved "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz" integrity sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw== dependencies: "@types/mdast" "^3.0.0" @@ -5742,16 +5792,16 @@ remark-math@^5.1.1: remark-mdx@^2.0.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-2.3.0.tgz#efe678025a8c2726681bde8bf111af4a93943db4" + resolved "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz" integrity sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g== dependencies: mdast-util-mdx "^2.0.0" micromark-extension-mdxjs "^1.0.0" remark-parse@^10.0.0: - version "10.0.2" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-10.0.2.tgz#ca241fde8751c2158933f031a4e3efbaeb8bc262" - integrity sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw== + version "10.0.1" + resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz" + integrity sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw== dependencies: "@types/mdast" "^3.0.0" mdast-util-from-markdown "^1.0.0" @@ -5759,7 +5809,7 @@ remark-parse@^10.0.0: remark-reading-time@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/remark-reading-time/-/remark-reading-time-2.0.1.tgz#fe8bb8e420db7678dc749385167adb4fc99318f7" + resolved "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz" integrity sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw== dependencies: estree-util-is-identifier-name "^2.0.0" @@ -5769,7 +5819,7 @@ remark-reading-time@^2.0.1: remark-rehype@^10.0.0: version "10.1.0" - resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-10.1.0.tgz#32dc99d2034c27ecaf2e0150d22a6dcccd9a6279" + resolved "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz" integrity sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw== dependencies: "@types/hast" "^2.0.0" @@ -5850,7 +5900,7 @@ robots-txt-parse@~0.0.4: stream-combiner "^0.2.1" through "^2.3.4" -robust-predicates@^3.0.2: +robust-predicates@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.2.tgz#d5b28528c4824d20fc48df1928d41d9efa1ad771" integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== @@ -5891,7 +5941,7 @@ rw@1: sade@^1.7.3: version "1.8.1" - resolved "https://registry.yarnpkg.com/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701" + resolved "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz" integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== dependencies: mri "^1.1.0" @@ -5990,7 +6040,7 @@ sharp@^0.31.3: shebang-command@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" @@ -6004,7 +6054,7 @@ shebang-command@^2.0.0: shebang-regex@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== shebang-regex@^3.0.0: @@ -6013,9 +6063,9 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^0.14.3: - version "0.14.7" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.7.tgz#c3c9e1853e9737845f1d2ef81b31bcfb07056d4e" - integrity sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg== + version "0.14.4" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.14.4.tgz#2454969b466a5f75067d0f2fa0d7426d32881b20" + integrity sha512-IXCRip2IQzKwxArNNq1S+On4KPML3Yyn8Zzs/xRgcgOWIr8ntIK3IKzjFPfjy/7kt9ZMjc+FItfqHRBg8b6tNQ== dependencies: ansi-sequence-parser "^1.1.0" jsonc-parser "^3.2.0" @@ -6033,7 +6083,7 @@ side-channel@^1.0.4: signal-exit@^3.0.0: version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-concat@^1.0.0: @@ -6059,12 +6109,12 @@ simple-swizzle@^0.2.2: slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== sort-keys@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-5.0.0.tgz#5d775f8ae93ecc29bc7312bbf3acac4e36e3c446" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz" integrity sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw== dependencies: is-plain-obj "^4.0.0" @@ -6086,7 +6136,7 @@ source-map@^0.6.1: source-map@^0.7.0: version "0.7.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== sourcemap-codec@^1.4.8: @@ -6101,7 +6151,7 @@ space-separated-tokens@^1.0.0: space-separated-tokens@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" + resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz" integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== split@^0.3.0: @@ -6179,11 +6229,6 @@ stream-length@^1.0.1, stream-length@^1.0.2: dependencies: bluebird "^2.6.2" -streamsearch@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz" - integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== - string.prototype.matchall@^4.0.8: version "4.0.8" resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz" @@ -6246,7 +6291,7 @@ string_decoder@~1.1.1: stringify-entities@^4.0.0: version "4.0.3" - resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.3.tgz#cfabd7039d22ad30f3cc435b0ca2c1574fc88ef8" + resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz" integrity sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g== dependencies: character-entities-html4 "^2.0.0" @@ -6285,7 +6330,7 @@ strip-bom@^3.0.0: strip-eof@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: @@ -6299,9 +6344,9 @@ strip-json-comments@~2.0.1: integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== style-to-object@^0.4.1: - version "0.4.4" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.4.4.tgz#266e3dfd56391a7eefb7770423612d043c3f33ec" - integrity sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg== + version "0.4.1" + resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz" + integrity sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw== dependencies: inline-style-parser "0.1.1" @@ -6320,14 +6365,14 @@ styled-components@^6.1.8: stylis "4.3.1" tslib "2.5.0" -styled-jsx@5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz" - integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw== +styled-jsx@5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.0.tgz#4a5622ab9714bd3fcfaeec292aa555871f057563" + integrity sha512-/iHaRJt9U7T+5tp6TRelLnqBqiaIT0HsO0+vgyj8hK2KUk7aejFqRrumqPUlAqDwAj8IbS/1hk3IhBAAK/FCUQ== dependencies: client-only "0.0.1" -stylis@4.3.1, stylis@^4.1.3: +stylis@4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.1.tgz#ed8a9ebf9f76fe1e12d462f5cc3c4c980b23a7eb" integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ== @@ -6337,6 +6382,11 @@ stylis@^4.0.6: resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz" integrity sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA== +stylis@^4.1.3: + version "4.3.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.0.tgz#abe305a669fc3d8777e10eefcfc73ad861c5588c" + integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== + supports-color@^0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz" @@ -6349,7 +6399,7 @@ supports-color@^2.0.0: supports-color@^4.0.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" integrity sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw== dependencies: has-flag "^2.0.0" @@ -6469,7 +6519,7 @@ through@2, through@^2.3.4, through@~2.3.4: title@^3.5.3: version "3.5.3" - resolved "https://registry.yarnpkg.com/title/-/title-3.5.3.tgz#b338d701a3d949db6b49b2c86f409f9c2f36cd91" + resolved "https://registry.npmjs.org/title/-/title-3.5.3.tgz" integrity sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q== dependencies: arg "1.0.0" @@ -6479,7 +6529,7 @@ title@^3.5.3: titleize@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/titleize/-/titleize-1.0.0.tgz#7d350722061830ba6617631e0cfd3ea08398d95a" + resolved "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz" integrity sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw== tmp@0.0.x: @@ -6521,7 +6571,7 @@ tr46@~0.0.3: trim-lines@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" + resolved "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz" integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== trough@^1.0.0: @@ -6530,9 +6580,9 @@ trough@^1.0.0: integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== trough@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f" - integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw== + version "2.1.0" + resolved "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz" + integrity sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g== ts-dedent@^2.2.0: version "2.2.0" @@ -6602,7 +6652,7 @@ type-fest@^0.7.1: type-fest@^1.0.2: version "1.4.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== typed-array-length@^1.0.4: @@ -6636,7 +6686,7 @@ unbox-primitive@^1.0.2: unified@^10.0.0: version "10.1.2" - resolved "https://registry.yarnpkg.com/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" + resolved "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz" integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== dependencies: "@types/unist" "^2.0.0" @@ -6666,17 +6716,17 @@ unist-util-find-after@^3.0.0: dependencies: unist-util-is "^4.0.0" -unist-util-find-after@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz#3fccc1b086b56f34c8b798e1ff90b5c54468e896" - integrity sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ== +unist-util-find-after@^4.0.0: + version "4.0.1" + resolved "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-4.0.1.tgz" + integrity sha512-QO/PuPMm2ERxC6vFXEPtmAutOopy5PknD+Oq64gGwxKtk4xwo9Z97t9Av1obPmGU0IyTa6EKYUfTrK2QJS3Ozw== dependencies: - "@types/unist" "^3.0.0" - unist-util-is "^6.0.0" + "@types/unist" "^2.0.0" + unist-util-is "^5.0.0" unist-util-generated@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-2.0.1.tgz#e37c50af35d3ed185ac6ceacb6ca0afb28a85cae" + resolved "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz" integrity sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A== unist-util-is@^4.0.0: @@ -6686,7 +6736,7 @@ unist-util-is@^4.0.0: unist-util-is@^5.0.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-5.2.1.tgz#b74960e145c18dcb6226bc57933597f5486deae9" + resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz" integrity sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw== dependencies: "@types/unist" "^2.0.0" @@ -6700,14 +6750,14 @@ unist-util-is@^6.0.0: unist-util-position-from-estree@^1.0.0, unist-util-position-from-estree@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz#8ac2480027229de76512079e377afbcabcfcce22" + resolved "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz" integrity sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww== dependencies: "@types/unist" "^2.0.0" unist-util-position@^4.0.0: version "4.0.4" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-4.0.4.tgz#93f6d8c7d6b373d9b825844645877c127455f037" + resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz" integrity sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg== dependencies: "@types/unist" "^2.0.0" @@ -6721,20 +6771,12 @@ unist-util-position@^5.0.0: unist-util-remove-position@^4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz#a89be6ea72e23b1a402350832b02a91f6a9afe51" + resolved "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz" integrity sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ== dependencies: "@types/unist" "^2.0.0" unist-util-visit "^4.0.0" -unist-util-remove-position@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz#fea68a25658409c9460408bc6b4991b965b52163" - integrity sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q== - dependencies: - "@types/unist" "^3.0.0" - unist-util-visit "^5.0.0" - unist-util-remove@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-4.0.0.tgz#94b7d6bbd24e42d2f841e947ed087be5c82b222e" @@ -6753,7 +6795,7 @@ unist-util-stringify-position@^2.0.0: unist-util-stringify-position@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz#03ad3348210c2d930772d64b489580c13a7db39d" + resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz" integrity sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg== dependencies: "@types/unist" "^2.0.0" @@ -6775,7 +6817,7 @@ unist-util-visit-parents@^3.0.0: unist-util-visit-parents@^4.0.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz#e83559a4ad7e6048a46b1bdb22614f2f3f4724f2" + resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz" integrity sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw== dependencies: "@types/unist" "^2.0.0" @@ -6783,7 +6825,7 @@ unist-util-visit-parents@^4.0.0: unist-util-visit-parents@^5.0.0, unist-util-visit-parents@^5.1.1: version "5.1.3" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz#b4520811b0ca34285633785045df7a8d6776cfeb" + resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz" integrity sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg== dependencies: "@types/unist" "^2.0.0" @@ -6808,7 +6850,7 @@ unist-util-visit@^2.0.0: unist-util-visit@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-3.1.0.tgz#9420d285e1aee938c7d9acbafc8e160186dbaf7b" + resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz" integrity sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA== dependencies: "@types/unist" "^2.0.0" @@ -6817,7 +6859,7 @@ unist-util-visit@^3.1.0: unist-util-visit@^4.0.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-4.1.2.tgz#125a42d1eb876283715a3cb5cceaa531828c72e2" + resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz" integrity sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg== dependencies: "@types/unist" "^2.0.0" @@ -6864,6 +6906,11 @@ urlobj@0.0.11: is-string "^1.0.4" object-assign "^4.1.1" +use-sync-external-store@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" + integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== + useragent@^2.1.8: version "2.3.0" resolved "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz" @@ -6889,7 +6936,7 @@ uuid@^9.0.0: uvu@^0.5.0: version "0.5.6" - resolved "https://registry.yarnpkg.com/uvu/-/uvu-0.5.6.tgz#2754ca20bcb0bb59b64e9985e84d2e81058502df" + resolved "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz" integrity sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA== dependencies: dequal "^2.0.0" @@ -6902,6 +6949,14 @@ vfile-location@^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-location@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz" + integrity sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw== + dependencies: + "@types/unist" "^2.0.0" + vfile "^5.0.0" + vfile-location@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-5.0.2.tgz#220d9ca1ab6f8b2504a4db398f7ebc149f9cb464" @@ -6912,7 +6967,7 @@ vfile-location@^5.0.0: vfile-matter@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/vfile-matter/-/vfile-matter-3.0.1.tgz#85e26088e43aa85c04d42ffa3693635fa2bc5624" + resolved "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz" integrity sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg== dependencies: "@types/js-yaml" "^4.0.0" @@ -6929,7 +6984,7 @@ vfile-message@^2.0.0: vfile-message@^3.0.0: version "3.1.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.4.tgz#15a50816ae7d7c2d1fa87090a7f9f96612b59dea" + resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz" integrity sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw== dependencies: "@types/unist" "^2.0.0" @@ -6955,7 +7010,7 @@ vfile@^4.0.0: vfile@^5.0.0, vfile@^5.3.0: version "5.3.7" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-5.3.7.tgz#de0677e6683e3380fafc46544cfe603118826ab7" + resolved "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz" integrity sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g== dependencies: "@types/unist" "^2.0.0" @@ -6974,12 +7029,12 @@ vfile@^6.0.0: vscode-oniguruma@^1.7.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" + resolved "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz" integrity sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA== vscode-textmate@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-8.0.0.tgz#2c7a3b1163ef0441097e0b5d6389cd5504b59e5d" + resolved "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz" integrity sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg== web-namespaces@^1.0.0: @@ -6989,13 +7044,13 @@ web-namespaces@^1.0.0: web-namespaces@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" + resolved "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz" integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== web-worker@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/web-worker/-/web-worker-1.3.0.tgz#e5f2df5c7fe356755a5fb8f8410d4312627e6776" - integrity sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA== + version "1.2.0" + resolved "https://registry.yarnpkg.com/web-worker/-/web-worker-1.2.0.tgz#5d85a04a7fbc1e7db58f66595d7a3ac7c9c180da" + integrity sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA== webidl-conversions@^3.0.0: version "3.0.1" @@ -7050,7 +7105,7 @@ which-typed-array@^1.1.9: which@^1.2.9: version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" @@ -7096,7 +7151,7 @@ xtend@~3.0.0: yallist@^2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^3.0.2: @@ -7116,7 +7171,7 @@ yaml@^1.10.2: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zod@^3.20.2: @@ -7124,10 +7179,10 @@ zod@^3.20.2: resolved "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz" integrity sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw== -zod@^3.22.3: - version "3.22.4" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" - integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== +zod@^3.22.2: + version "3.22.2" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.2.tgz#3add8c682b7077c05ac6f979fea6998b573e157b" + integrity sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg== zwitch@^1.0.0: version "1.0.5" @@ -7136,5 +7191,5 @@ zwitch@^1.0.0: zwitch@^2.0.0: version "2.0.4" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" + resolved "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz" integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From e7ff2667162bc5191111f7215edd1fb7f8d9b4d4 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Fri, 8 Mar 2024 14:21:32 -0600 Subject: [PATCH 28/29] Update services to clarify skSaaS for Groth16 Co-authored-by: drewstone --- pages/docs/services/services.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/docs/services/services.mdx b/pages/docs/services/services.mdx index 5d49a659..1d3826b9 100644 --- a/pages/docs/services/services.mdx +++ b/pages/docs/services/services.mdx @@ -43,7 +43,7 @@ Use cases include bridges, oracles, interoperable shielded pools, and social and Proof generation is critical for maintaining privacy and implementation of complex cryptographic protocols within decentralized applications. Tangle's zkSnark service allows users to access proof generation functionality directly through the network. This allows developers to outsource the computationally expensive tasks to a privacy-preserving infrastructure. -Tangle currently supports SGroth16 proofs ,and our targeted systems will include: +Tangle currently supports zkSaaS for Groth16 proofs, and our targeted systems will include: - Groth16 - PLONK From c0b2486939873046c45c0444891e250d6f98dba4 Mon Sep 17 00:00:00 2001 From: Thom Ivy <38070512+thomivy@users.noreply.github.com> Date: Fri, 8 Mar 2024 14:27:54 -0600 Subject: [PATCH 29/29] added GennaroDKGBls381 to TSS --- pages/docs/services/services.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/pages/docs/services/services.mdx b/pages/docs/services/services.mdx index 1d3826b9..3084dc27 100644 --- a/pages/docs/services/services.mdx +++ b/pages/docs/services/services.mdx @@ -34,6 +34,7 @@ Tangle currently supports several Threshold signature schemes: - ZcashFrostEd25519 - ZcashFrostEd448 - ZcashFrostRistretto255 +- GennaroDKGBls381 Use cases include bridges, oracles, interoperable shielded pools, and social and identity bridges.