diff --git a/README.md b/README.md index 3a128d56..516a1aba 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Website -My teaching website, built with [Docusaurus](https://docusaurus.io/). +My teaching website, built with [Docusaurus](https://docusaurus.io/). Visit at [https://teach.silasberger.ch/](https://teach.silasberger.ch/). ## Install and build - `yarn install`: Install dependencies. diff --git a/content/material/Components-Gallery/00-Markdown-Features.mdx b/content/material/Components-Gallery/00-Markdown-Features.mdx index 1db69203..b44e0ad4 100644 --- a/content/material/Components-Gallery/00-Markdown-Features.mdx +++ b/content/material/Components-Gallery/00-Markdown-Features.mdx @@ -2,7 +2,7 @@ sidebar_label: Markdown and HTML Features --- -# Markdown and HTML Features [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/00-Markdown-Features.mdx) +# Markdown and HTML Features :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/00-Markdown-Features.mdx] These features are part of [standard MDX syntax](https://docusaurus.io/docs/markdown-features) as used by Docusaurus by default. @@ -65,7 +65,7 @@ Footnotes[^1] are a great[^2] way to move additional information to the bottom o Details can even be nested...
...and nothing stops you from hiding a YouTube video here, if you want 😎 - [@YouTubeVideo](https://youtu.be/bEWP7llgGec) + ::youtube[https://youtu.be/bEWP7llgGec]
diff --git a/content/material/Components-Gallery/01-Admonitions.mdx b/content/material/Components-Gallery/01-Admonitions.mdx index 1d7e7719..cd49ba23 100644 --- a/content/material/Components-Gallery/01-Admonitions.mdx +++ b/content/material/Components-Gallery/01-Admonitions.mdx @@ -2,41 +2,41 @@ sidebar_label: Admonitions --- -# Admonitions [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/01-Admonitions.mdx) +# Admonitions :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/01-Admonitions.mdx] Admonitions are a [builtin feature](https://docusaurus.io/docs/markdown-features/admonition) of the Docusaurus default theme. This project uses a customized version of the Admonition component, with its own semantics. -:::danger Danger +:::danger[Danger] Do not forget to **save your work** before leaving the site! ::: -:::warning Warning +:::warning[Warning] If you get an error saying `SyntaxError: expected ':'`, double-check whether your `if`-line ends with a `:`. ::: -:::key Key Takeaway +:::key[Key Takeaway] We use `for`-loops to repeat a set of instructions for a _known, predetermined number of iterations_. ::: -:::definition Definition +:::definition[Definition] An algorithm is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. [[Wikipedia](https://en.wikipedia.org/wiki/Algorithm)] ::: -:::insight Insight +:::insight[Insight] The tradition of using the string `Hello, World!` for small test programs goes back to at least 1978, where it was used in the book [The C Programming Language](https://en.wikipedia.org/wiki/The_C_Programming_Language). ::: -:::info Tip +:::info[Tip] Remember: (255)2 = (11111111)2 ::: ## Nested Admonitions -:::insight Good to know! +:::insight[Good to know!] Admonitions can be nested. -:::warning Design +:::warning[Design] While nesting Admonitions may be useful in some cases, this can also result in visual clutter. ::: diff --git a/content/material/Components-Gallery/02-Tiles.mdx b/content/material/Components-Gallery/02-Tiles.mdx index 0262b8b6..2ecaac71 100644 --- a/content/material/Components-Gallery/02-Tiles.mdx +++ b/content/material/Components-Gallery/02-Tiles.mdx @@ -2,10 +2,10 @@ sidebar_label: Tiles --- -import TileGrid, {Layout} from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid, {Layout} from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; -# Tiles [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/02-Tiles.mdx) +# Tiles :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/02-Tiles.mdx] ## Tile types diff --git a/content/material/Components-Gallery/03-YouTube-Video.mdx b/content/material/Components-Gallery/03-YouTube-Video.mdx index 36f2ae94..9c78c58e 100644 --- a/content/material/Components-Gallery/03-YouTube-Video.mdx +++ b/content/material/Components-Gallery/03-YouTube-Video.mdx @@ -2,28 +2,26 @@ sidebar_label: YouTube Video --- -import YouTubeVideo from "@site/src/components/YouTubeVideo" - -# YouTube Video [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/03-YouTube-Video.mdx) +# YouTube Video :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/03-YouTube-Video.mdx] Videos can be embedded at full width: -[@YouTubeVideo](https://youtu.be/bEWP7llgGec) +::youtube[https://youtu.be/bEWP7llgGec] ...or scaled down: - +::youtube[https://youtu.be/bEWP7llgGec]{width=60%} *** -:::info Good to know +:::info[Good to know] This will put the plain text line right above the video player: ```markdown Videos can be embedded at full width... -[@YouTubeVideo](https://youtu.be/bEWP7llgGec) +::youtube[https://youtu.be/bEWP7llgGec] ``` ...while this will result in a paragraph spacing between the text and the video player: ```markdown Videos can be embedded at full width... -[@YouTubeVideo](https://youtu.be/bEWP7llgGec) +::youtube[https://youtu.be/bEWP7llgGec] ``` ::: diff --git a/content/material/Components-Gallery/04-Hero-Image.mdx b/content/material/Components-Gallery/04-Hero-Image.mdx index 79948404..1996cb9d 100644 --- a/content/material/Components-Gallery/04-Hero-Image.mdx +++ b/content/material/Components-Gallery/04-Hero-Image.mdx @@ -2,7 +2,7 @@ sidebar_label: Hero Image --- -# Hero Image [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/04-Hero-Image-and-Source-Reference.mdx) +# Hero Image :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/04-Hero-Image-and-Source-Reference.mdx] :::Hero ![Hero](img/hero.jpeg) ::: diff --git a/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx b/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx index 017ebfd2..7c3bb81b 100644 --- a/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx +++ b/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx @@ -2,7 +2,7 @@ sidebar_label: Mermaid Diagrams --- -# Mermaid Diagrams [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx) +# Mermaid Diagrams :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/05-Mermaid-Diagrams.mdx] Mermaid is a plugin for rendering complex diagrams from Markdown code blocks. In Docusaurus, it is provided by the `@docusaurus/theme-mermaid` plugin as described [here](https://docusaurus.io/docs/next/markdown-features/diagrams). diff --git a/content/material/Components-Gallery/06-Definition-List.mdx b/content/material/Components-Gallery/06-Definition-List.mdx index 3357b0c8..6f550993 100644 --- a/content/material/Components-Gallery/06-Definition-List.mdx +++ b/content/material/Components-Gallery/06-Definition-List.mdx @@ -2,9 +2,9 @@ sidebar_label: Definition List --- -import DefinitionList from "@site/src/components/DefinitionList"; +import DefinitionList from "@site/src/app/components/DefinitionList"; -# Definition List [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/06-Definition-List.mdx) +# Definition List :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/06-Definition-List.mdx]
Purpose
Add an _at a glance_ informational header to a page.
diff --git a/content/material/Components-Gallery/07-Browser-Window.mdx b/content/material/Components-Gallery/07-Browser-Window.mdx index e30c2420..41865ea3 100644 --- a/content/material/Components-Gallery/07-Browser-Window.mdx +++ b/content/material/Components-Gallery/07-Browser-Window.mdx @@ -2,9 +2,9 @@ sidebar_label: Browser Window --- -import BrowserWindow, {Browser} from "@site/src/components/BrowserWindow"; +import BrowserWindow, {Browser} from "@site/src/app/components/BrowserWindow"; -# Browser Window [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/07-Browser-Window.mdx) +# Browser Window :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/07-Browser-Window.mdx] ## Web browser diff --git a/content/material/Components-Gallery/08-Material-Design-Icons.mdx b/content/material/Components-Gallery/08-Material-Design-Icons.mdx index 865f23c1..dedfdb69 100644 --- a/content/material/Components-Gallery/08-Material-Design-Icons.mdx +++ b/content/material/Components-Gallery/08-Material-Design-Icons.mdx @@ -2,22 +2,22 @@ sidebar_label: Material Design Icons --- -# Material Design Icons (MDI) [@SeeCode](https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/08-Material-Design-Icons.mdx) -Using the `:mdi-:` shorthand pattern in a plain text paragraph (that is, not inside an inline code +# Material Design Icons (MDI) :seeCode[https://github.com/SilasBerger/teaching-website/blob/main/content/material/Components-Gallery/08-Material-Design-Icons.mdx] +Using the `:mdi[]` text directive in a plain text paragraph (that is, not inside an inline code or similar element), we can conveniently include Material Design icons within our MDX pages. Here are some examples: | Shorthand | Yields icon | |------------------------------------|:--------------------------------:| -| `:mdi-google-chrome:` | :mdi-google-chrome: | -| `:mdi-microsoft-edge:` | :mdi-microsoft-edge: | -| `:mdi-apple-safari:` | :mdi-apple-safari: | -| `:mdi-firefox:` | :mdi-firefox: | -| `:mdi-lightbulb:` | :mdi-lightbulb: | -| `:mdi-alarm:` | :mdi-alarm: | -| `:mdi-heart-outline:` | :mdi-heart-outline: | -| `:mdi-application-braces-outline:` | :mdi-application-braces-outline: | -| `:mdi-language-python:` | :mdi-language-python: | +| `:mdi[google-chrome]` | :mdi[google-chrome] | +| `:mdi[microsoft-edge]` | :mdi[microsoft-edge] | +| `:mdi[apple-safari]` | :mdi[apple-safari] | +| `:mdi[firefox]` | :mdi[firefox] | +| `:mdi[lightbulb]` | :mdi[lightbulb] | +| `:mdi[alarm]` | :mdi[alarm] | +| `:mdi[heart-outline]` | :mdi[heart-outline] | +| `:mdi[application-braces-outline]` | :mdi[application-braces-outline] | +| `:mdi[language-python]` | :mdi[language-python] | Search the [MDI library on Iconify](https://icon-sets.iconify.design/mdi/) for an icon that suits your needs! diff --git a/content/material/Components-Gallery/index.[cc].mdx b/content/material/Components-Gallery/index.[cc].mdx index df3256ac..0aabdfdc 100644 --- a/content/material/Components-Gallery/index.[cc].mdx +++ b/content/material/Components-Gallery/index.[cc].mdx @@ -1,7 +1,7 @@ # Komponentengalerie Entdecken Sie hier eine Galerie sämtlicher Komponenten, die für diese Unterrichtswebseite zur Verfügung stehen. -:::info Technische Dokumentation +:::info[Technische Dokumentation] Bei diesem Abschnitt handelt es sich um einen Auszug aus der technischen Dokumentation dieses Projekts. Daher sind alle Artikel in englischer Sprache verfasst. ::: diff --git a/content/material/Components-Gallery/index.mdx b/content/material/Components-Gallery/index.mdx index b3c3d3e5..450af911 100644 --- a/content/material/Components-Gallery/index.mdx +++ b/content/material/Components-Gallery/index.mdx @@ -1,5 +1,5 @@ -import TileGrid, {Layout} from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid, {Layout} from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; # Components A gallery and development sandbox for React components. diff --git a/content/material/Microbit/Der-Microbit.gym.mdx b/content/material/Microbit/Der-Microbit.gym.mdx index 5aae3eec..985759f5 100644 --- a/content/material/Microbit/Der-Microbit.gym.mdx +++ b/content/material/Microbit/Der-Microbit.gym.mdx @@ -19,7 +19,7 @@ Der Micro:bit ist eine kompakter _Einplatinencomputer_ - er verfügt also weder Maus oder eine Tastatur. Sie verwenden den Micro:bit, indem Sie auf ihrem Laptop ein Programm dafür entwickeln, welches Sie anschliessend via USB-Kabel auf das Gerät übertragen. -:::insight Wozu wurde dieser Computer entwickelt? +:::insight[Wozu wurde der Micro\:bit entwickelt?] Der Micro:bit wurde von der BBC (_British Broadcasting Corporation_) entwickelt, damit Menschen von jung bis alt die Grundlagen der Programmierung und der Robotik auf spannende, kreative Weise entdecken können. ::: diff --git a/content/material/Microbit/Der-Microbit.prim-sek.mdx b/content/material/Microbit/Der-Microbit.prim-sek.mdx index 1ffe147f..bb88afa7 100644 --- a/content/material/Microbit/Der-Microbit.prim-sek.mdx +++ b/content/material/Microbit/Der-Microbit.prim-sek.mdx @@ -19,7 +19,7 @@ Der Micro:bit ist kein gewöhnlicher Computer, wie du ihn in deinem Alltag finde oder Tastatur. Er ist so klein, dass du ihn vielleicht sogar in deiner Faust verstecken kannst! Der Micro:bit ist nämlich winziger sogenannter _Einplatinencomputer_. -:::insight Wozu wurde dieser Computer entwickelt? +:::insight[Wozu wurde der Micro\:bit entwickelt?] Der Micro:bit wurde von der BBC (_British Broadcasting Corporation_) entwickelt, damit Menschen von jung bis alt die Grundlagen der Programmierung und der Robotik auf spannende, kreative Weise entdecken können. ::: diff --git a/content/material/Microbit/Projektideen-Python/01-Health-Points.mdx b/content/material/Microbit/Projektideen-Python/01-Health-Points.mdx index 8970b14f..14dffa51 100644 --- a/content/material/Microbit/Projektideen-Python/01-Health-Points.mdx +++ b/content/material/Microbit/Projektideen-Python/01-Health-Points.mdx @@ -2,5 +2,5 @@ sidebar_label: Health Points --- -# Health Points [@SeeCode](https://github.com/SilasBerger/microbit/tree/main/projects/health-points) -[@YouTubeVideo](https://youtu.be/XqjzFh4eGzI) +# Health Points :seeCode[https://github.com/SilasBerger/microbit/tree/main/projects/health-points] +::youtube[https://youtu.be/XqjzFh4eGzI] diff --git a/content/material/Microbit/Projektideen-Python/02-Jukebox.mdx b/content/material/Microbit/Projektideen-Python/02-Jukebox.mdx index d4b5e459..bcd8a371 100644 --- a/content/material/Microbit/Projektideen-Python/02-Jukebox.mdx +++ b/content/material/Microbit/Projektideen-Python/02-Jukebox.mdx @@ -2,5 +2,5 @@ sidebar_label: Jukebox --- -# Jukebox [@SeeCode](https://github.com/SilasBerger/microbit/blob/main/projects/jukebox.py) -[@YouTubeVideo](https://youtu.be/3yAkX2k_DGs) +# Jukebox :seeCode[https://github.com/SilasBerger/microbit/blob/main/projects/jukebox.py] +::youtube[https://youtu.be/3yAkX2k_DGs] diff --git a/content/material/Microbit/Projektideen-Python/03-Maqueen-RC-Car.mdx b/content/material/Microbit/Projektideen-Python/03-Maqueen-RC-Car.mdx index eaa55ccf..44ac70f9 100644 --- a/content/material/Microbit/Projektideen-Python/03-Maqueen-RC-Car.mdx +++ b/content/material/Microbit/Projektideen-Python/03-Maqueen-RC-Car.mdx @@ -2,5 +2,5 @@ sidebar_label: Maqueen RC Car --- -# Maqueen RC Car [@SeeCode](https://github.com/SilasBerger/microbit/tree/main/projects/maqueen-rc-car) -[@YouTubeVideo](https://youtu.be/bEWP7llgGec) +# Maqueen RC Car :seeCode[https://github.com/SilasBerger/microbit/tree/main/projects/maqueen-rc-car] +::youtube[https://youtu.be/bEWP7llgGec] diff --git a/content/material/Netzwerke/01-World-Wide-Web/01-Ablauf-Webseitenaufruf.mdx b/content/material/Netzwerke/01-World-Wide-Web/01-Ablauf-Webseitenaufruf.mdx index f4c04e81..281840d6 100644 --- a/content/material/Netzwerke/01-World-Wide-Web/01-Ablauf-Webseitenaufruf.mdx +++ b/content/material/Netzwerke/01-World-Wide-Web/01-Ablauf-Webseitenaufruf.mdx @@ -10,7 +10,7 @@ In diesem Abschnitt verschaffen wir uns einen Überblick über den Ablauf eines Der erste Teilnehmer ist dabei der sogenannte **Browser** - also ein Programm auf dem Computer der Benutzerin, welches Webseiten aufrufen und anzeigen kann. -:::definition Browser +:::definition[Browser] **Webbrowser** oder allgemein auch **Browser** (englisch: _to browse_, 'stöbern') sind Computerprogramme zur Darstellung von Webseiten im World Wide Web oder allgemein von Dokumenten und Daten. ::: @@ -22,7 +22,7 @@ konzeptuell die Partei, die um etwas bittet (in diesem Fall um eine HTML-Datei), anbietet. Wir können dabei sowohl den Browser als auch den Computer der Benutzerin als Client bezeichnen - im Prinzip sogar die Benutzerin selbst. -:::definition Client und Server +:::definition[Client und Server] - Ein **Client** ist ein Programm oder ein Gerät, das Dienste von einem _Server_ abruft. Ein _Browser_ ist also ein Beispiel für einen Client. - Ein **Server** ist ein Programm oder Gerät, das auf die Kontaktaufnahme eines _Clients_ wartet, um eine bestimmte @@ -45,7 +45,7 @@ finden Sie im [nächsten Abschnitt](./02-Http-Status-Codes.mdx). ![HTTP-Webseitenaufruf, Schritt 2: Antwort (Response)](img/http-response.png) -:::definition Payload +:::definition[Payload] In der Datenübertragung ist die **Payload** derjenige Anteil eines Pakets, bei dem es sich um den eigentlichen Inhalt der Übertragung handelt. Bei einer _Response_ würde man zum Beispiel die angefragte HTML-Datei als Payload bezeichnen. @@ -59,7 +59,7 @@ erhaltene HTML-Datei nun entgegen und präsentiert deren Inhalt auf dem Bildschi ![HTTP-Webseitenaufruf, Schritt 3: Die Webseite ist angekommen](img/http-website-loaded.png) *** -:::key Request-Response-Prinzip +:::key[Request-Response-Prinzip] Ein Webseitenaufruf erfolgt nach sogenannten **Request-Resopnse-Prinzip**: Der _Client_ sendet eine **Anfrage (Request)** an den _Server_. Diese Anfrage beinhaltet unter anderem Informationen darüber, welche Ressource (z.B. welche HTML-Datei) der Client in Anspruch nehmen möchte. @@ -74,7 +74,7 @@ dieses Request-Response-Prinzips, bestimmt andererseits aber auch, wie diese Anf Antwort (Response) auszusehen haben. Solange sich beide Parteien, also Client und Server, an diese Spielregeln halten, können wir sicherstellen, dass ein solcher Aufruf ordnungsgemäss funktioniert. -:::definition Protokoll +:::definition[Protokoll] In der Informatik und in der Telekommunikation ist ein **Protokoll** (oder **Kommunikationsprotokoll**) eine Vereinbarung, nach der die Datenübertragung zwischen zwei oder mehreren Parteien abläuft. ::: diff --git a/content/material/Netzwerke/01-World-Wide-Web/02-Http-Status-Codes.mdx b/content/material/Netzwerke/01-World-Wide-Web/02-Http-Status-Codes.mdx index 092f80a7..64a09ab0 100644 --- a/content/material/Netzwerke/01-World-Wide-Web/02-Http-Status-Codes.mdx +++ b/content/material/Netzwerke/01-World-Wide-Web/02-Http-Status-Codes.mdx @@ -1,4 +1,4 @@ -import DefinitionList from "@site/src/components/DefinitionList"; +import DefinitionList from "@site/src/app/components/DefinitionList"; # HTTP Status Codes Wie wir im vorherigen Abschnitt gesehen haben, enthält das Antwortpaket nicht nur die gewünschte Ressource @@ -21,7 +21,7 @@ vermutlich einloggen, oder um die entsprechende Berechtigung fragen. Der Status die Benutzerin insbesondere im Fall einer unerwarteten Antwort möglichst genau zu informieren, weshalb es etwas nicht geklappt hat. -:::insight Häufig verwendete Status Codes +:::insight[Häufig verwendete Status Codes]
`301`
`Moved Permanently`
diff --git a/content/material/Netzwerke/01-World-Wide-Web/03-Anfaenge-des-Web.mdx b/content/material/Netzwerke/01-World-Wide-Web/03-Anfaenge-des-Web.mdx index e42a32f9..84675efe 100644 --- a/content/material/Netzwerke/01-World-Wide-Web/03-Anfaenge-des-Web.mdx +++ b/content/material/Netzwerke/01-World-Wide-Web/03-Anfaenge-des-Web.mdx @@ -7,12 +7,12 @@ Bild: [Thomas Stiren, Wikipedia](https://de.wikipedia.org/wiki/World_Wide_Web#/media/Datei:Tim_berners_lee_webserver.jpg). ::: -:::key Die erste Webseite +:::key[Die erste Webseite] Anfang der 1990er-Jahre veröffentlichte [Tim Berners-Lee](https://de.wikipedia.org/wiki/Tim_Berners-Lee) am CERN in Genf **die erste Webseite der Welt**. Diese Seite besteht bis heute unverändert unter http://info.cern.ch/hypertext/WWW/TheProject.html. ::: -:::insight CERN: Anfänge des World Wide Web +:::insight[CERN: Anfänge des World Wide Web] Mehr Informationen zur Geburt des World Wide Web finden Sie auf dieser [Webseite des CERN](https://home.cern/science/computing/birth-web). ::: @@ -32,7 +32,7 @@ im Menu auf "Links" → "Follow link": ![Erster Web Browser: Einem Hyperlink folgen](img/first-browser-follow-hyperlink.png) -:::insight Parallelen +:::insight[Parallelen] Unsere modernen Web Browser wie Google Chrome, Microsoft Edge, Safari und Firefox sind zweifellos viel mächtiger und benutzerfreundlicher als der _WorldWideWeb_ Browser von damals. Welche Elemente sind dennoch bis heute erhalten geblieben? @@ -49,6 +49,6 @@ Vision einer weltweiten Vernetzung von Informationen und Geräten ein entscheide Auch vom line-mode Browser gibt es eine Nachbildung, die Sie [hier ausprobieren](https://line-mode.cern.ch/) können. -:::warning Verfügbarkeit +:::warning[Verfügbarkeit] Die Nachbildung des line-mode Browsers ist leider ab und zu nicht verfügbar. ::: diff --git a/content/material/Netzwerke/01-World-Wide-Web/04-Webserver-mit-Xampp.mdx b/content/material/Netzwerke/01-World-Wide-Web/04-Webserver-mit-Xampp.mdx index 5ac2d262..2dde2c39 100644 --- a/content/material/Netzwerke/01-World-Wide-Web/04-Webserver-mit-Xampp.mdx +++ b/content/material/Netzwerke/01-World-Wide-Web/04-Webserver-mit-Xampp.mdx @@ -31,7 +31,7 @@ Wenn alles funktioniert hat, sollte das Control Panel am Schluss wie folgt ausse Um das zu kontrollieren, rufen Sie die Adresse http://127.0.0.1 auf. Es sollte folgende Webseite angezeigt werden: ![XAMPP Standard-Homepage im Browser](img/xampp-default-page.png) -:::insight Exkurs: Die Loopback-Adresse +:::insight[Exkurs: Die Loopback-Adresse] Sie haben damit auch gleich eine spezielle IP-Adresse kennengelernt: `127.0.0.1` ist die sogenannte **Loopback-Adresse**, auch **Localhost** genannt. Unter dieser Adresse erreicht jedes Gerät immer sich selbst (deshalb _Loopback_), unabhängig von der tatsächlichen IP-Adresse, welche dem Gerät im Netzwerk zugewiesen wurde. @@ -46,7 +46,7 @@ erstellt haben. - Unter Windows finden Sie diesen unter `C:\xampp\htdocs` - Unter macOS befindet er sich unter `Programme → XAMPP → xamppfiles → htdocs` -:::info Zur Orientierung... +:::info[Zur Orientierung...] Im XAMPP `htdocs`-Ordner finden Sie einige Dateien wie `index.php` und `applications.html`, sowie einige Ordner wie `dashboard` und `img`. Wenn Sie diese sehen, dann sind sie am richtigen Ort. ::: @@ -59,7 +59,7 @@ Diese Webseite können Sie jetzt im Browser öffnen. Angenommen, Ihre HTML-Datei die Adresse [http://127.0.0.1/meine-webseite/webseite.html](http://127.0.0.1/meine-webseite/webseite.html) aufrufen und sehen dort Ihr Werk! -:::insight Ausnahme: index.html +:::insight[Ausnahme: index.html] Falls Sie Ihre HTML-Datei `index.html` genannt haben, dann reicht es, wenn Sie die Adresse nur als [http://127.0.0.1/meine-webseite/](http://127.0.0.1/meine-webseite/) angeben - der Web Server sucht dann automatisch nach einer Datei namens `index.html`. @@ -74,7 +74,7 @@ dem **Namen ihrer HTML-Datei**. Rufen Sie anschliessend die Adresse `http:///meine-webseite/.html` auf. Dabei ersetzen Sie natürlich die Angaben in spitzen Klammern `<>` durch die echten Angaben Ihrer Kollegin oder Ihres Kollegen. -:::info Beispiel +:::info[Beispiel] Angenommen, die IP-Adersse sei `192.168.10.20` und der Name der HTML-Datei sei `website.html`. Dann lautet die Adresse dieser Webseite [http://192.168.10.20/meine-webseite/website.html](http://192.168.10.20/meine-webseite/website.html). diff --git a/content/sites/drafts/index.mdx b/content/sites/drafts/index.mdx index 59ed45f0..2ff85445 100644 --- a/content/sites/drafts/index.mdx +++ b/content/sites/drafts/index.mdx @@ -1,5 +1,5 @@ -import TileGrid, {Layout} from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid, {Layout} from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; # Drafts diff --git a/content/sites/gbsl/index.mdx b/content/sites/gbsl/index.mdx index cdebccfb..88e59300 100644 --- a/content/sites/gbsl/index.mdx +++ b/content/sites/gbsl/index.mdx @@ -1,5 +1,5 @@ -import TileGrid, {Layout} from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid, {Layout} from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; # GBSL diff --git a/content/sites/lerbermatt/index.mdx b/content/sites/lerbermatt/index.mdx index ad7d54d5..24bb695f 100644 --- a/content/sites/lerbermatt/index.mdx +++ b/content/sites/lerbermatt/index.mdx @@ -1,5 +1,5 @@ -import TileGrid from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; # Lerbermatt diff --git a/content/sites/teach/index.mdx b/content/sites/teach/index.mdx index b9833c8e..ce6e1606 100644 --- a/content/sites/teach/index.mdx +++ b/content/sites/teach/index.mdx @@ -1,5 +1,5 @@ -import TileGrid from "@site/src/components/tiles/TileGrid"; -import Tile from "@site/src/components/tiles/Tile"; +import TileGrid from "@site/src/app/components/tiles/TileGrid"; +import Tile from "@site/src/app/components/tiles/Tile"; # Teach diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 70f86710..8aae754a 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -1,27 +1,27 @@ import {themes as prismThemes} from 'prism-react-renderer'; import type {Config, LoadContext, PluginOptions} from '@docusaurus/types'; import type * as Preset from '@docusaurus/preset-classic'; -import {loadSiteConfig} from "./src/builder/site-config-loader"; -import {buildScripts} from "./src/builder/scripts-builder"; import {SCRIPTS_ROOT} from "./config/builder-config"; import * as osPath from "path"; -import { Logger } from './src/builder/util/logger'; -import remarkMdi from "./src/plugins/remark-mdi"; -import remarkFencedBlocks from "./src/plugins/remark-fenced-blocks"; -import {fencedBlocksDefinedKeywords, fencedBlocksConfig} from "./src/pluginConfigs/remark-fenced-blocks.plugin-config"; -import remarkSpecialLinks from "./src/plugins/remark-special-links"; -import {specialLinksConfig} from "./src/pluginConfigs/remark-special-links.plugin-config"; +import {loadConfigForActiveSite} from "./src/framework/builder/site-config-loader"; +import {Log} from "./src/framework/util/log"; +import {buildScripts} from "./src/framework/builder/scripts-builder"; +import {remarkContainerDirectivesConfig} from "./src/framework/plugin-configs/remark-container-blocks/plugin-config"; +import remarkContainerDirectives from "./src/framework/plugins/remark-container-directives/plugin"; +import remarkLineDirectives from "./src/framework/plugins/remark-line-directives/plugin"; +import {remarkLineDirectivesPluginConfig} from "./src/framework/plugin-configs/remark-line-directives/plugin-config"; -const siteConfig = loadSiteConfig(); -Logger.instance.info(`🔧 Building site '${siteConfig.siteId}'`); +const siteConfig = loadConfigForActiveSite(); +Log.instance.info(`🔧 Building site '${siteConfig.siteId}'`); const scriptRoots = buildScripts(siteConfig.properties.scriptsConfigsFile); -Logger.instance.info(`📂 Creating docs plugin roots: [${scriptRoots}]`); +Log.instance.info(`📂 Creating docs plugin roots: [${scriptRoots}]`); -const admonitionConfig = { - keywords: fencedBlocksDefinedKeywords(), -}; +const remarkPlugins = [ + [remarkContainerDirectives, remarkContainerDirectivesConfig], + [remarkLineDirectives, remarkLineDirectivesPluginConfig], +]; const docsConfigs = scriptRoots.map((scriptRoot, index) => { return [ @@ -31,12 +31,7 @@ const docsConfigs = scriptRoots.map((scriptRoot, index) => { path: `${SCRIPTS_ROOT}${scriptRoot}`, routeBasePath: `${scriptRoot}`, sidebarPath: `./config/sidebars/${siteConfig.siteId}.sidebars.ts`, - admonitions: admonitionConfig, - remarkPlugins: [ - remarkMdi, - [remarkFencedBlocks, fencedBlocksConfig], - [remarkSpecialLinks, specialLinksConfig], - ] + remarkPlugins: remarkPlugins, } ]; }); @@ -69,15 +64,11 @@ const config: Config = { { pages: { path: siteConfig.properties.pagesRoot, - admonitions: admonitionConfig, - remarkPlugins: [ - remarkMdi, - [remarkFencedBlocks, fencedBlocksConfig] - ] + remarkPlugins: remarkPlugins, }, docs: false, theme: { - customCss: [require.resolve('./src/css/styles.scss')], + customCss: [require.resolve('./src/app/css/styles.scss')], }, } satisfies Preset.Options, ], diff --git a/package.json b/package.json index 2168e242..180e4d76 100644 --- a/package.json +++ b/package.json @@ -16,8 +16,8 @@ "typecheck": "tsc" }, "dependencies": { - "@docusaurus/core": "^3.0.1", - "@docusaurus/preset-classic": "^3.0.1", + "@docusaurus/core": "^3.1.0", + "@docusaurus/preset-classic": "^3.1.0", "@docusaurus/theme-mermaid": "^3.0.1", "@mdi/font": "^7.4.47", "@mdx-js/react": "^3.0.0", @@ -33,9 +33,9 @@ "yaml": "^2.3.4" }, "devDependencies": { - "@docusaurus/module-type-aliases": "3.0.0", - "@docusaurus/tsconfig": "3.0.0", - "@docusaurus/types": "3.0.0", + "@docusaurus/module-type-aliases": "^3.1.0", + "@docusaurus/tsconfig": "^3.1.0", + "@docusaurus/types": "^3.1.0", "@types/fs-extra": "^11.0.4", "docusaurus-plugin-sass": "^0.2.5", "sass": "^1.69.6", diff --git a/src/components/BrowserWindow/index.tsx b/src/app/components/BrowserWindow/index.tsx similarity index 100% rename from src/components/BrowserWindow/index.tsx rename to src/app/components/BrowserWindow/index.tsx diff --git a/src/components/BrowserWindow/styles.module.scss b/src/app/components/BrowserWindow/styles.module.scss similarity index 100% rename from src/components/BrowserWindow/styles.module.scss rename to src/app/components/BrowserWindow/styles.module.scss diff --git a/src/components/Caption/index.tsx b/src/app/components/Caption/index.tsx similarity index 85% rename from src/components/Caption/index.tsx rename to src/app/components/Caption/index.tsx index 363bf57b..db17872e 100644 --- a/src/components/Caption/index.tsx +++ b/src/app/components/Caption/index.tsx @@ -1,4 +1,4 @@ -import {ReactNode} from "react"; +import React, {ReactNode} from "react"; import styles from "./styles.module.scss"; export interface Props { diff --git a/src/components/Caption/styles.module.scss b/src/app/components/Caption/styles.module.scss similarity index 100% rename from src/components/Caption/styles.module.scss rename to src/app/components/Caption/styles.module.scss diff --git a/src/components/DefinitionList/index.tsx b/src/app/components/DefinitionList/index.tsx similarity index 100% rename from src/components/DefinitionList/index.tsx rename to src/app/components/DefinitionList/index.tsx diff --git a/src/components/DefinitionList/styles.module.scss b/src/app/components/DefinitionList/styles.module.scss similarity index 100% rename from src/components/DefinitionList/styles.module.scss rename to src/app/components/DefinitionList/styles.module.scss diff --git a/src/components/HeroContainer/index.tsx b/src/app/components/HeroContainer/index.tsx similarity index 100% rename from src/components/HeroContainer/index.tsx rename to src/app/components/HeroContainer/index.tsx diff --git a/src/components/HeroContainer/styles.module.scss b/src/app/components/HeroContainer/styles.module.scss similarity index 100% rename from src/components/HeroContainer/styles.module.scss rename to src/app/components/HeroContainer/styles.module.scss diff --git a/src/components/SeeCodeBadge/index.tsx b/src/app/components/SeeCodeBadge/index.tsx similarity index 100% rename from src/components/SeeCodeBadge/index.tsx rename to src/app/components/SeeCodeBadge/index.tsx diff --git a/src/components/SeeCodeBadge/styles.module.scss b/src/app/components/SeeCodeBadge/styles.module.scss similarity index 100% rename from src/components/SeeCodeBadge/styles.module.scss rename to src/app/components/SeeCodeBadge/styles.module.scss diff --git a/src/components/YouTubeVideo/index.tsx b/src/app/components/YouTubeVideo/index.tsx similarity index 100% rename from src/components/YouTubeVideo/index.tsx rename to src/app/components/YouTubeVideo/index.tsx diff --git a/src/components/YouTubeVideo/styles.module.scss b/src/app/components/YouTubeVideo/styles.module.scss similarity index 100% rename from src/components/YouTubeVideo/styles.module.scss rename to src/app/components/YouTubeVideo/styles.module.scss diff --git a/src/components/tiles/Tile/index.tsx b/src/app/components/tiles/Tile/index.tsx similarity index 100% rename from src/components/tiles/Tile/index.tsx rename to src/app/components/tiles/Tile/index.tsx diff --git a/src/components/tiles/Tile/styles.module.scss b/src/app/components/tiles/Tile/styles.module.scss similarity index 100% rename from src/components/tiles/Tile/styles.module.scss rename to src/app/components/tiles/Tile/styles.module.scss diff --git a/src/components/tiles/TileGrid/index.tsx b/src/app/components/tiles/TileGrid/index.tsx similarity index 100% rename from src/components/tiles/TileGrid/index.tsx rename to src/app/components/tiles/TileGrid/index.tsx diff --git a/src/components/tiles/TileGrid/styles.module.scss b/src/app/components/tiles/TileGrid/styles.module.scss similarity index 100% rename from src/components/tiles/TileGrid/styles.module.scss rename to src/app/components/tiles/TileGrid/styles.module.scss diff --git a/src/css/_variables.scss b/src/app/css/_variables.scss similarity index 100% rename from src/css/_variables.scss rename to src/app/css/_variables.scss diff --git a/src/css/styles.scss b/src/app/css/styles.scss similarity index 100% rename from src/css/styles.scss rename to src/app/css/styles.scss diff --git a/src/app/demo.ts b/src/app/demo.ts new file mode 100644 index 00000000..761dcf97 --- /dev/null +++ b/src/app/demo.ts @@ -0,0 +1 @@ +export type Demo = boolean; diff --git a/src/builder/models/markers.ts b/src/framework/builder/models/markers.ts similarity index 100% rename from src/builder/models/markers.ts rename to src/framework/builder/models/markers.ts diff --git a/src/builder/models/script-config.ts b/src/framework/builder/models/script-config.ts similarity index 100% rename from src/builder/models/script-config.ts rename to src/framework/builder/models/script-config.ts diff --git a/src/builder/models/site-config.ts b/src/framework/builder/models/site-config.ts similarity index 100% rename from src/builder/models/site-config.ts rename to src/framework/builder/models/site-config.ts diff --git a/src/builder/models/sync.ts b/src/framework/builder/models/sync.ts similarity index 100% rename from src/builder/models/sync.ts rename to src/framework/builder/models/sync.ts diff --git a/src/builder/scripts-builder.ts b/src/framework/builder/scripts-builder.ts similarity index 91% rename from src/builder/scripts-builder.ts rename to src/framework/builder/scripts-builder.ts index e039358a..9a9b6fcb 100644 --- a/src/builder/scripts-builder.ts +++ b/src/framework/builder/scripts-builder.ts @@ -2,12 +2,12 @@ import * as fs from "fs"; import {ScriptConfig } from "./models/script-config"; import {DestNode, SourceNode} from "./sync/sync-nodes"; import * as osPath from "path"; -import {MATERIAL_ROOT, SCRIPTS_ROOT} from "../../config/builder-config"; -import {Logger} from "./util/logger"; +import {Log} from "../util/log"; import {createDestTree, createSourceTree} from "./sync/sync-tree-builder"; import {copyFilesToScriptDir, removeObsoleteScriptFiles} from "./sync/file-ops"; import {applyMarkers, applySectionMappings, collectSyncPairs} from "./sync/sync-tree-processing"; import {parse} from "yaml"; +import {MATERIAL_ROOT, SCRIPTS_ROOT} from "../../../config/builder-config"; export function buildScripts(scriptsConfigsFile: string) { const scriptsConfigs = _loadScriptsConfigs(scriptsConfigsFile); @@ -32,7 +32,7 @@ function _createMaterialTree(): SourceNode { } function _buildScript(scriptRoot: string, scriptConfig: ScriptConfig) { - Logger.instance.info(`📝 Building script '${scriptRoot}'`); + Log.instance.info(`📝 Building script '${scriptRoot}'`); const materialTree = _createMaterialTree(); const scriptRootPath = osPath.resolve(osPath.join(SCRIPTS_ROOT, scriptRoot)); const scriptTree = createDestTree(scriptRootPath); diff --git a/src/builder/site-config-loader.ts b/src/framework/builder/site-config-loader.ts similarity index 85% rename from src/builder/site-config-loader.ts rename to src/framework/builder/site-config-loader.ts index dc49ca76..f26ef6e1 100644 --- a/src/builder/site-config-loader.ts +++ b/src/framework/builder/site-config-loader.ts @@ -1,6 +1,6 @@ import * as process from "process"; import { SiteConfig, SiteProperties } from "./models/site-config"; -import {siteProperties} from "../../config/siteProperties/site-properties"; +import {siteProperties} from "../../../config/siteProperties/site-properties"; function getSitePropertiesFor(site: string): SiteProperties { return siteProperties[site]; @@ -21,7 +21,7 @@ function identifySite() { return site; } -export function loadSiteConfig(): SiteConfig { +export function loadConfigForActiveSite(): SiteConfig { const site = identifySite(); return { siteId: site, diff --git a/src/builder/sync/file-ops.ts b/src/framework/builder/sync/file-ops.ts similarity index 82% rename from src/builder/sync/file-ops.ts rename to src/framework/builder/sync/file-ops.ts index cb9bd2dc..ffe33375 100644 --- a/src/builder/sync/file-ops.ts +++ b/src/framework/builder/sync/file-ops.ts @@ -1,11 +1,11 @@ import {DestNode} from "./sync-nodes"; -import {Logger} from "../util/logger"; +import {Log} from "../../util/log"; import osPath from "path"; import * as fs from "fs-extra"; import {SyncPair} from "../models/sync"; export function copyFilesToScriptDir(syncPairs: SyncPair[]): void { - Logger.instance.info('🖨 Copying resources to script...') + Log.instance.info('🖨 Copying resources to script...') syncPairs.forEach(([sourceNode, destNode]) => { _copyFileIfChanged(sourceNode.absPath, destNode.absPath); }) @@ -21,7 +21,7 @@ function _copyFileIfChanged(sourcePath: string, destPath: string): void { fs.mkdirSync(destDir, { recursive: true }); } - Logger.instance.info(`[COPY] '${sourcePath}' -> '${destPath}'`); + Log.instance.info(`[COPY] '${sourcePath}' -> '${destPath}'`); fs.copySync(sourcePath, destPath, { preserveTimestamps: true }); } @@ -39,7 +39,7 @@ export function removeObsoleteScriptFiles(scriptTree: DestNode): void { const deletionCandidates = scriptTree .collect((node: DestNode) => !node.hasUsableSourceCandidates()); if (deletionCandidates.length > 0) { - Logger.instance.info('🗑️ Deleting obsolete script files...'); + Log.instance.info('🗑️ Deleting obsolete script files...'); deletionCandidates.forEach(candidate => { _deleteFile(candidate.absPath); }); @@ -48,7 +48,7 @@ export function removeObsoleteScriptFiles(scriptTree: DestNode): void { function _deleteFile(path: string): void { if (fs.existsSync(path)) { - Logger.instance.info(`[DELETE] '${path}'`); + Log.instance.info(`[DELETE] '${path}'`); fs.rmSync(path, {recursive: true}) } } diff --git a/src/builder/sync/marker.spec.ts b/src/framework/builder/sync/marker.spec.ts similarity index 100% rename from src/builder/sync/marker.spec.ts rename to src/framework/builder/sync/marker.spec.ts diff --git a/src/builder/sync/markers.ts b/src/framework/builder/sync/markers.ts similarity index 98% rename from src/builder/sync/markers.ts rename to src/framework/builder/sync/markers.ts index 5ec26ac1..5efab178 100644 --- a/src/builder/sync/markers.ts +++ b/src/framework/builder/sync/markers.ts @@ -2,7 +2,7 @@ import {MarkersDefinition} from "../models/script-config"; import {MarkerWithSpecificity} from "../models/markers"; import {SourceNode} from "./sync-nodes"; import _ from "lodash"; -import {Optional} from "../../shared/util/optional"; +import {Optional} from "../../util/optional"; const MARKER_PATTERN = /(?.*)\.\s*\[\s*(?([a-zA-Z0-9_.-]+(\s*,\s*[a-zA-Z0-9_-]+)*)?)\s*](?.*)/; diff --git a/src/builder/sync/sync-nodes.spec.ts b/src/framework/builder/sync/sync-nodes.spec.ts similarity index 100% rename from src/builder/sync/sync-nodes.spec.ts rename to src/framework/builder/sync/sync-nodes.spec.ts diff --git a/src/builder/sync/sync-nodes.ts b/src/framework/builder/sync/sync-nodes.ts similarity index 93% rename from src/builder/sync/sync-nodes.ts rename to src/framework/builder/sync/sync-nodes.ts index 23a79b1c..0162508e 100644 --- a/src/builder/sync/sync-nodes.ts +++ b/src/framework/builder/sync/sync-nodes.ts @@ -1,8 +1,8 @@ import * as osPath from "path"; -import {Optional} from "../../shared/util/optional"; -import {canonicalNameFrom, markersFrom} from "../../builder/sync/markers"; -import {Logger} from "../util/logger"; +import {canonicalNameFrom, markersFrom} from "./markers"; +import {Log} from "../../util/log"; import {SourceCandidacy, SourceCandidate, SourceCandidateGenerator, SourceCandidateType} from "../models/sync"; +import {Optional} from "../../util/optional"; export abstract class SyncNode { @@ -137,7 +137,7 @@ export class SourceNode extends SyncNode { implicit: candidate.implicit, node: destNode, } - Logger.instance.debug(`Adding /${candidate.node.treePath} as candidate for /${destNode.treePath}, type=${candidate.type}, implicit=${candidate.implicit}`); + Log.instance.debug(`Adding /${candidate.node.treePath} as candidate for /${destNode.treePath}, type=${candidate.type}, implicit=${candidate.implicit}`); this._sourceCandidacies.push(candidacy); destNode.addSourceCandidate(candidate); } @@ -162,7 +162,7 @@ export class SourceNode extends SyncNode { propagateAsIgnored() { this._isIgnored = true; - Logger.instance.debug(`Marking /${this.treePath} as ignored`); + Log.instance.debug(`Marking /${this.treePath} as ignored`); this.children.forEach(child => child.propagateAsIgnored()); } } diff --git a/src/builder/sync/sync-tree-builder.ts b/src/framework/builder/sync/sync-tree-builder.ts similarity index 100% rename from src/builder/sync/sync-tree-builder.ts rename to src/framework/builder/sync/sync-tree-builder.ts diff --git a/src/builder/sync/sync-tree-processing.spec.ts b/src/framework/builder/sync/sync-tree-processing.spec.ts similarity index 98% rename from src/builder/sync/sync-tree-processing.spec.ts rename to src/framework/builder/sync/sync-tree-processing.spec.ts index 9ba47482..209801d4 100644 --- a/src/builder/sync/sync-tree-processing.spec.ts +++ b/src/framework/builder/sync/sync-tree-processing.spec.ts @@ -1,8 +1,8 @@ import {ScriptConfig} from "../models/script-config"; -import {DestNode, SourceNode} from "../sync/sync-nodes"; +import {DestNode, SourceNode} from "./sync-nodes"; import {MappedSourceCandidate, MarkedSourceCandidate, SourceCandidateType} from "../models/sync"; -import {applyMarkers, applySectionMappings, collectSyncPairs} from "../sync/sync-tree-processing"; -import {Optional} from "../../shared/util/optional"; +import {applyMarkers, applySectionMappings, collectSyncPairs} from "./sync-tree-processing"; +import {Optional} from "../../util/optional"; describe('applySectionMappings', () => { it('correctly propagates each mapping as mapped candidate', () => { diff --git a/src/builder/sync/sync-tree-processing.ts b/src/framework/builder/sync/sync-tree-processing.ts similarity index 100% rename from src/builder/sync/sync-tree-processing.ts rename to src/framework/builder/sync/sync-tree-processing.ts diff --git a/src/framework/plugin-configs/remark-container-blocks/Caption.ts b/src/framework/plugin-configs/remark-container-blocks/Caption.ts new file mode 100644 index 00000000..1bb63d21 --- /dev/null +++ b/src/framework/plugin-configs/remark-container-blocks/Caption.ts @@ -0,0 +1,21 @@ +import { + ContainerDirectiveDeclaration, + ContainerDirectiveTransformerProps +} from "../../plugins/remark-container-directives/model"; +import {Optional} from "../../util/optional"; +import {jsxFlowElementFrom} from "../../plugins/shared/util/jsx-node-util"; +import {ImportType} from "../../plugins/shared/models"; + +interface Props extends ContainerDirectiveTransformerProps {} + +export default { + name: 'Caption', + transform: ({children}: Props) => Optional.of(jsxFlowElementFrom({ + componentName: 'Caption', + attributes: [] + }, children)), + esmImports: [{ + sourcePackage: '@site/src/app/components/Caption', + specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'Caption'}], + }] +} as ContainerDirectiveDeclaration diff --git a/src/framework/plugin-configs/remark-container-blocks/Hero.ts b/src/framework/plugin-configs/remark-container-blocks/Hero.ts new file mode 100644 index 00000000..4b2615f6 --- /dev/null +++ b/src/framework/plugin-configs/remark-container-blocks/Hero.ts @@ -0,0 +1,21 @@ +import { + ContainerDirectiveDeclaration, + ContainerDirectiveTransformerProps +} from "../../plugins/remark-container-directives/model"; +import {ImportType} from "../../plugins/shared/models"; +import {jsxFlowElementFrom} from "../../plugins/shared/util/jsx-node-util"; +import {Optional} from "../../util/optional"; + +interface Props extends ContainerDirectiveTransformerProps {} + +export default { + name: 'Hero', + transform: ({children}: Props) => Optional.of(jsxFlowElementFrom({ + componentName: 'HeroContainer', + attributes: [] + }, children)), + esmImports: [{ + sourcePackage: '@site/src/app/components/HeroContainer', + specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'HeroContainer'}], + }] +} as ContainerDirectiveDeclaration diff --git a/src/framework/plugin-configs/remark-container-blocks/admonitions.ts b/src/framework/plugin-configs/remark-container-blocks/admonitions.ts new file mode 100644 index 00000000..0d69973d --- /dev/null +++ b/src/framework/plugin-configs/remark-container-blocks/admonitions.ts @@ -0,0 +1,37 @@ +import { + ContainerDirectiveDeclaration, + ContainerDirectiveTransformerProps +} from "../../plugins/remark-container-directives/model"; +import {jsxFlowElementFrom} from "../../plugins/shared/util/jsx-node-util"; +import {ImportType} from "../../plugins/shared/models"; +import {Optional} from "../../util/optional"; + +interface Props extends ContainerDirectiveTransformerProps {} + +function admonitionBlock(name: string, type: string): ContainerDirectiveDeclaration { + return { + name: name, + transform: (({label, children}: Props) => Optional.of(jsxFlowElementFrom({ + componentName: 'Admonition', + attributes: [ + {name: 'type', value: type}, + {name: 'title', value: label}, + ], + }, children))), + esmImports: [{ + sourcePackage: '@site/src/theme/Admonition', + specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'Admonition'}], + }] + } +} + +export default [ + admonitionBlock('danger', 'danger'), + admonitionBlock('warning', 'warning'), + admonitionBlock('key', 'key'), + admonitionBlock('definition', 'definition'), + admonitionBlock('insight', 'insight'), + admonitionBlock('info', 'info'), + admonitionBlock('tip', 'info'), + admonitionBlock('note', 'info'), +] as ContainerDirectiveDeclaration[]; diff --git a/src/framework/plugin-configs/remark-container-blocks/plugin-config.ts b/src/framework/plugin-configs/remark-container-blocks/plugin-config.ts new file mode 100644 index 00000000..89aa36bc --- /dev/null +++ b/src/framework/plugin-configs/remark-container-blocks/plugin-config.ts @@ -0,0 +1,12 @@ +import {ContainerDirectivesConfig} from "../../plugins/remark-container-directives/model"; +import admonitions from "./admonitions"; +import Hero from "./Hero"; +import Caption from "./Caption"; + +export const remarkContainerDirectivesConfig: ContainerDirectivesConfig = { + declarations: [ + ...admonitions, + Hero, + Caption, + ] +} diff --git a/src/framework/plugin-configs/remark-line-directives/leaf/youtube.ts b/src/framework/plugin-configs/remark-line-directives/leaf/youtube.ts new file mode 100644 index 00000000..19f5791b --- /dev/null +++ b/src/framework/plugin-configs/remark-line-directives/leaf/youtube.ts @@ -0,0 +1,33 @@ +import {jsxFlowElementFrom} from "../../../plugins/shared/util/jsx-node-util"; +import {ImportType} from "../../../plugins/shared/models"; +import {LeafDirectiveDeclaration, LeafDirectiveTransformerProps,} from "../../../plugins/remark-line-directives/model"; +import {Optional} from "../../../util/optional"; +import {Log} from "../../../util/log"; +import {definedAttributes} from "../../../plugins/shared/util/plugin-config-util"; + +interface Props extends LeafDirectiveTransformerProps { + width?: string; +} + +export default { + name: 'youtube', + transform: ({literal, width}: Props) => { + if (!literal) { + Log.instance.warn(`Missing literal on 'youtube' directive`); + return Optional.empty(); + } + + return Optional.of(jsxFlowElementFrom({ + componentName: 'YouTubeVideo', + attributes: definedAttributes([ + {name: "videoUrl", value: literal}, + {name: "width", value: width}, + ]) + })); + }, + esmImports: [{ + sourcePackage: '@site/src/app/components/YouTubeVideo', + specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'YouTubeVideo'}], + }], +} as LeafDirectiveDeclaration + diff --git a/src/framework/plugin-configs/remark-line-directives/plugin-config.ts b/src/framework/plugin-configs/remark-line-directives/plugin-config.ts new file mode 100644 index 00000000..6f059fca --- /dev/null +++ b/src/framework/plugin-configs/remark-line-directives/plugin-config.ts @@ -0,0 +1,14 @@ +import mdi from "./text/mdi"; +import {LineDirectivesConfig} from "../../plugins/remark-line-directives/model"; +import youtube from "./leaf/youtube"; +import seeCode from "./text/seeCode"; + +export const remarkLineDirectivesPluginConfig: LineDirectivesConfig = { + textDirectives: [ + mdi, + seeCode, + ], + leafDirectives: [ + youtube, + ], +} diff --git a/src/framework/plugin-configs/remark-line-directives/text/mdi.ts b/src/framework/plugin-configs/remark-line-directives/text/mdi.ts new file mode 100644 index 00000000..f14aea0b --- /dev/null +++ b/src/framework/plugin-configs/remark-line-directives/text/mdi.ts @@ -0,0 +1,21 @@ +import {Optional} from "../../../util/optional"; +import {jsxTextElementFrom} from "../../../plugins/shared/util/jsx-node-util"; +import {Log} from "../../../util/log"; +import {TextDirectiveDeclaration, TextDirectiveTransformerProps} from "../../../plugins/remark-line-directives/model"; + +interface Props extends TextDirectiveTransformerProps {} + +export default { + name: 'mdi', + transform: ({literal}: Props) => { + if (!literal) { + Log.instance.warn(`Missing literal on 'mdi' directive`); + return Optional.empty(); + } + + return Optional.of(jsxTextElementFrom({ + componentName: 'span', + attributes: [{name: 'class', value: `mdi mdi-${literal}`}] + })); + }, +} as TextDirectiveDeclaration; diff --git a/src/framework/plugin-configs/remark-line-directives/text/seeCode.ts b/src/framework/plugin-configs/remark-line-directives/text/seeCode.ts new file mode 100644 index 00000000..7039fe5f --- /dev/null +++ b/src/framework/plugin-configs/remark-line-directives/text/seeCode.ts @@ -0,0 +1,26 @@ +import {jsxTextElementFrom} from "../../../plugins/shared/util/jsx-node-util"; +import {ImportType} from "../../../plugins/shared/models"; +import {TextDirectiveDeclaration, TextDirectiveTransformerProps} from "../../../plugins/remark-line-directives/model"; +import {Log} from "../../../util/log"; +import {Optional} from "../../../util/optional"; + +interface Props extends TextDirectiveTransformerProps {} + +export default { + name: 'seeCode', + transform: ({literal}: Props) => { + if (!literal) { + Log.instance.warn(`Missing literal on 'seeCode' directive`); + return Optional.empty(); + } + + return Optional.of(jsxTextElementFrom({ + componentName: 'SeeCodeBadge', + attributes: [{name: 'url', value: literal}] + })); + }, + esmImports: [{ + sourcePackage: '@site/src/app/components/SeeCodeBadge', + specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'SeeCodeBadge'}], + }], +} as TextDirectiveDeclaration diff --git a/src/framework/plugins/remark-container-directives/model.ts b/src/framework/plugins/remark-container-directives/model.ts new file mode 100644 index 00000000..426d0d0f --- /dev/null +++ b/src/framework/plugins/remark-container-directives/model.ts @@ -0,0 +1,23 @@ +import {EsmImport} from "../shared/models"; +import {MdxJsxFlowElement} from "mdast-util-mdx-jsx"; +import {Optional} from "../../util/optional"; +import {Node} from "unist"; + +export interface ContainerDirectiveDeclaration { + name: string; + transform: ContainerDirectiveTransformer, + esmImports: EsmImport[]; +} + +export type ContainerDirectiveTransformer + = (props: T) => Optional; + +export interface ContainerDirectiveTransformerProps { + label?: string; + class?: string; + children?: Node[] +} + +export interface ContainerDirectivesConfig { + declarations: ContainerDirectiveDeclaration[]; +} diff --git a/src/framework/plugins/remark-container-directives/plugin.ts b/src/framework/plugins/remark-container-directives/plugin.ts new file mode 100644 index 00000000..3f6ac098 --- /dev/null +++ b/src/framework/plugins/remark-container-directives/plugin.ts @@ -0,0 +1,73 @@ +import {Transformer} from "unified"; +import {Literal, Parent} from "unist"; +import {visit} from "unist-util-visit"; +import {ContainerDirective} from "mdast-util-directive"; +import {ContainerDirectiveDeclaration, ContainerDirectivesConfig} from "./model"; +import {Optional} from "../../util/optional"; +import {replaceNode} from "../shared/util/mdast-util"; +import {Log} from "../../util/log"; +import {ensureEsmImports} from "../shared/util/mdast-util-esm-imports"; +import {MdxJsxFlowElement} from "mdast-util-mdx-jsx"; + +/** @type {import('unified').Plugin<[ContainerDirectivesConfig], MdastRoot>} */ +export default function remarkContainerDirectives(config: ContainerDirectivesConfig): Transformer { + return (mdast: Parent) => { + if (!config) { + console.warn('remarkContainerDirectives invoked without config: Plugin has no effect'); + return; + } + + visit(mdast, 'containerDirective', (directive: ContainerDirective, _: number, parent: Parent) => { + matchDeclaration(config.declarations, directive).ifPresent(declaration => { + const jsxElement = transform(directive, declaration); + if (jsxElement.isEmpty()){ + Log.instance.warn(`Received no JSX element from declaration '${declaration.name}'`); + return; + } + + replaceNode(parent, directive, jsxElement.get()); + ensureEsmImports(mdast, declaration.esmImports); + }); + }); + }; +}; + +function matchDeclaration(declarations: ContainerDirectiveDeclaration[], directive: ContainerDirective): Optional { + return Optional.of(declarations.find(declaration => declaration.name === directive.name)); +} + +function transform(directive: ContainerDirective, declaration: ContainerDirectiveDeclaration): Optional { + return declaration.transform({ + ...directive.attributes, + label: consumeDirectiveLabelIfApplicable(directive), + children: directive.children, + }); +} +function consumeDirectiveLabelIfApplicable(directive: ContainerDirective) { + return consumeDirectiveLabelChild(directive) ?? extractDirectiveLabelFromAdmonitionData(directive); +} + +function consumeDirectiveLabelChild(directive: ContainerDirective): string { + const directiveLabelChild = directive.children + .find(child => child.data && (child.data as any).directiveLabel === true); + + if (!directiveLabelChild) { + return; + } + + const value = (directiveLabelChild as Parent).children + .filter(child => child.type === 'text') + .map(child => (child as Literal).value as string) + .find(value => !!value); + + if (value) { + // Remove directive label child from directive's children. + directive.children.splice(directive.children.indexOf(directiveLabelChild), 1); + } + + return value; +} + +function extractDirectiveLabelFromAdmonitionData(directive: ContainerDirective) { + return (directive.data as any)?.hProperties?.title; +} diff --git a/src/framework/plugins/remark-line-directives/model.ts b/src/framework/plugins/remark-line-directives/model.ts new file mode 100644 index 00000000..55812bb8 --- /dev/null +++ b/src/framework/plugins/remark-line-directives/model.ts @@ -0,0 +1,43 @@ +import {EsmImport} from "../shared/models"; +import {Optional} from "../../util/optional"; +import {MdxJsxFlowElement, MdxJsxTextElement} from "mdast-util-mdx-jsx"; +import {PhrasingContent, DefinitionContent, BlockContent} from "mdast"; + +export interface LineDirectivesConfig { + textDirectives: TextDirectiveDeclaration[]; + leafDirectives: LeafDirectiveDeclaration[]; +} + +export interface LineDirectiveDeclarationBase { + name: string; + esmImports: EsmImport[]; +} + +export interface TextDirectiveDeclaration extends LineDirectiveDeclarationBase { + transform: TextDirectiveTransformer, +} + +export interface LeafDirectiveDeclaration extends LineDirectiveDeclarationBase { + transform: LeafDirectiveTransformer, +} + +export type LineDirectiveDeclaration = TextDirectiveDeclaration | LeafDirectiveDeclaration; + +export type TextDirectiveTransformer + = (attributes: T) => Optional + +export type LeafDirectiveTransformer + = (attributes: T) => Optional + +export interface LineDirectiveTransformerProps { + literal?: string, + class?: string; +} + +export interface TextDirectiveTransformerProps extends LineDirectiveTransformerProps { + children: PhrasingContent[], +} + +export interface LeafDirectiveTransformerProps extends LineDirectiveTransformerProps { + children: (DefinitionContent | BlockContent)[], +} diff --git a/src/framework/plugins/remark-line-directives/plugin.ts b/src/framework/plugins/remark-line-directives/plugin.ts new file mode 100644 index 00000000..6fb91676 --- /dev/null +++ b/src/framework/plugins/remark-line-directives/plugin.ts @@ -0,0 +1,76 @@ +import {Transformer} from "unified"; +import {VFile} from "vfile"; +import {Literal, Node, Parent} from "unist"; +import {visit} from "unist-util-visit"; +import {Directives} from "mdast-util-directive"; +import {Optional} from "../../util/optional"; +import {Log} from "../../util/log"; +import {ensureEsmImports} from "../shared/util/mdast-util-esm-imports"; +import {MdxJsxFlowElement, MdxJsxTextElement} from "mdast-util-mdx-jsx"; +import {LineDirectiveDeclaration, LineDirectivesConfig} from "./model"; +import {Link} from "mdast"; +import {replaceNode} from "../shared/util/mdast-util"; + +/** @type {import('unified').Plugin<[LineDirectivesConfig], MdastRoot>} */ +export default function remarkLineDirectives(config: LineDirectivesConfig): Transformer { + if (!config) { + console.warn('remarkLineDirectives invoked without config: Plugin has no effect'); + return; + } + + return (mdast: Parent, _: VFile) => { + visit(mdast, (node: Node) => { + return node.type === 'textDirective' || node.type === 'leafDirective'; + }, (directive: Directives, _: number, parent: Parent) => { + switch(directive.type) { + case 'textDirective': + consumeDirective(config.textDirectives, directive, parent, mdast); + break; + case 'leafDirective': + consumeDirective(config.leafDirectives, directive, parent, mdast); + break; + } + }); + }; +}; + +function consumeDirective(declarations: LineDirectiveDeclaration[], directive: Directives, parent: Parent, mdast: Parent) { + matchDeclaration(declarations, directive).ifPresent(declaration => { + const jsxElement = transform(directive, declaration); + if (jsxElement.isEmpty()){ + Log.instance.warn(`Received no JSX element from declaration '${declaration.name}'`); + return; + } + + replaceNode(parent, directive, jsxElement.get()); + ensureEsmImports(mdast, declaration.esmImports); + }); +} + +function matchDeclaration(declarations: LineDirectiveDeclaration[], node: Directives): Optional { + return Optional.of(declarations.find(declaration => declaration.name === node.name)); +} + +function transform(directive: Directives, declaration: LineDirectiveDeclaration): Optional { + const children = directive.children; + const literal = extractLiteral(children); + return declaration.transform({ + ...directive.attributes, + literal, + children: [...children], + }); +} + +function extractLiteral(children: Node[]): string { + if (children.length !== 1) { + return; + } + + const child = children[0]; + if (child.type === 'text') { + return (child as Literal).value as string; + } + if (child.type === 'link') { + return (child as Link).url; + } +} diff --git a/src/plugins/util/models.ts b/src/framework/plugins/shared/models.ts similarity index 69% rename from src/plugins/util/models.ts rename to src/framework/plugins/shared/models.ts index 828046f8..7f05fb27 100644 --- a/src/plugins/util/models.ts +++ b/src/framework/plugins/shared/models.ts @@ -1,12 +1,15 @@ -export enum JsxElementType { - FLOW_ELEMENT = 'mdxJsxFlowElement', - TEXT_ELEMENT = 'mdxJsxTextElement', -} +import {MdxJsxFlowElement, MdxJsxTextElement} from "mdast-util-mdx-jsx"; + +export type MdxJsxElement = MdxJsxFlowElement | MdxJsxTextElement; export interface JsxElementSpec { - jsxElementType: JsxElementType; componentName: string; - attributes: {name: string, value: string}[] + attributes: JsxAttributesSpec[] +} + +export interface JsxAttributesSpec { + name: string; + value: string; } /** diff --git a/src/framework/plugins/shared/util/jsx-node-util.ts b/src/framework/plugins/shared/util/jsx-node-util.ts new file mode 100644 index 00000000..3a1bbef5 --- /dev/null +++ b/src/framework/plugins/shared/util/jsx-node-util.ts @@ -0,0 +1,34 @@ +import {JsxElementSpec} from "../models"; +import {PhrasingContent} from 'mdast'; +import {MdxJsxTextElement, MdxJsxAttribute, MdxJsxFlowElement} from "mdast-util-mdx-jsx"; +import {Node} from "unist"; + +export function jsxFlowElementFrom(spec: JsxElementSpec, children?: Node[]): MdxJsxFlowElement { + return { + type: 'mdxJsxFlowElement', + name: spec.componentName, + attributes: mapJsxAttributes(spec), + children: children ?? [] as unknown, + data: {_mdxExplicitJsx: true} + } as MdxJsxFlowElement; +} + +export function jsxTextElementFrom(spec: JsxElementSpec, children?: PhrasingContent[]): MdxJsxTextElement { + return { + type: 'mdxJsxTextElement', + name: spec.componentName, + attributes: mapJsxAttributes(spec), + children: children ?? [], + data: {_mdxExplicitJsx: true} + }; +} + +function mapJsxAttributes(spec: JsxElementSpec): MdxJsxAttribute[] { + return spec.attributes.map(attr => { + return { + type: 'mdxJsxAttribute', + name: attr.name, + value: attr.value, + } + }) +} diff --git a/src/plugins/util/mdast-util-esm-imports.ts b/src/framework/plugins/shared/util/mdast-util-esm-imports.ts similarity index 95% rename from src/plugins/util/mdast-util-esm-imports.ts rename to src/framework/plugins/shared/util/mdast-util-esm-imports.ts index 73b45f1d..8f0decc0 100644 --- a/src/plugins/util/mdast-util-esm-imports.ts +++ b/src/framework/plugins/shared/util/mdast-util-esm-imports.ts @@ -1,6 +1,6 @@ import {Parent} from "unist"; import {visit} from "unist-util-visit"; -import {EsmImport, EsmImportSpecifier, ImportType} from "./models"; +import {EsmImport, EsmImportSpecifier, ImportType} from "../models"; interface ImportSpecifierEntry { type: ImportType; @@ -37,12 +37,15 @@ interface EsmImportsNode { } /** - * Ensure `mdast` has import declaration nodes for all entries in `importDeclaratin`. + * Ensure `mdast` has import declaration nodes for all entries in `importDeclarations`. * * @param mdast the mdAST root - * @param importDeclarations the import declarations to ensure + * @param importDeclarations the import declarations to ensure - may be empty or undefined */ export function ensureEsmImports(mdast: Parent, importDeclarations: EsmImport[]): void { + if (!importDeclarations) { + return; + } const esmImportsNodes = ensureEsmImportsNode(mdast); importDeclarations.forEach(esmImport => { const declarationEntries = ensureImportDeclarationEntry(esmImportsNodes, esmImport); diff --git a/src/framework/plugins/shared/util/mdast-util.ts b/src/framework/plugins/shared/util/mdast-util.ts new file mode 100644 index 00000000..bf07aba8 --- /dev/null +++ b/src/framework/plugins/shared/util/mdast-util.ts @@ -0,0 +1,12 @@ +import {Parent, Node} from "unist"; +import {visit} from "unist-util-visit"; + +/** + * Replace `target` with `replacement` in `parent.children`. + * @param parent The node within whose children to do the replacement. + * @param target The node to be replaced - must be included in `parent.children`. + * @param replacement The node to replace `target` with. + */ +export function replaceNode(parent: Parent, target: Node, replacement: Node) { + parent.children[parent.children.indexOf(target)] = replacement; +} diff --git a/src/framework/plugins/shared/util/plugin-config-util.ts b/src/framework/plugins/shared/util/plugin-config-util.ts new file mode 100644 index 00000000..297f4c65 --- /dev/null +++ b/src/framework/plugins/shared/util/plugin-config-util.ts @@ -0,0 +1,11 @@ +import {MdxJsxAttribute} from "mdast-util-mdx-jsx"; +import {JsxAttributesSpec} from "../models"; + +/** + * Filter attributes to only include entries where `value` is not `undefined`. + * + * @param attributes The MdxJsxAttribute attributes to filter + */ +export function definedAttributes(attributes: JsxAttributesSpec[]): JsxAttributesSpec[] { + return attributes.filter(attribute => attribute.value !== undefined); +} diff --git a/src/framework/tsconfig.json b/src/framework/tsconfig.json new file mode 100644 index 00000000..9bebf8b0 --- /dev/null +++ b/src/framework/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../tsconfig", + "compilerOptions": { + // This is a basic IntelliJ workaround to prevent it from using @site imports, which apparently don't work when + // compiling docusaurus.config.ts. Unfortunately, this does not take effect in docusaurus.config.ts itself. + "paths": {} + } +} diff --git a/src/builder/util/logger.ts b/src/framework/util/log.ts similarity index 72% rename from src/builder/util/logger.ts rename to src/framework/util/log.ts index efb0ffb2..571ce98c 100644 --- a/src/builder/util/logger.ts +++ b/src/framework/util/log.ts @@ -7,25 +7,25 @@ export enum LogLevel { DEBUG, } -export class Logger { +export class Log { - private static _instance: Logger; + private static _instance: Log; constructor(private _logLevel: LogLevel) { } - static get instance(): Logger { - if (!Logger._instance) { + static get instance(): Log { + if (!Log._instance) { const logLevelEnv = process.env.LOG_LEVEL; const logLevel = logLevelEnv ? toNumber(logLevelEnv) : LogLevel.INFO; - Logger._instance = new Logger(logLevel); + Log._instance = new Log(logLevel); } - return Logger._instance; + return Log._instance; } warn(msg: string) { if (this._logLevel >= LogLevel.WARN) { - console.log(`[WARN] ${msg}`); + console.warn(`[WARN] ${msg}`); } } diff --git a/src/shared/util/optional.spec.ts b/src/framework/util/optional.spec.ts similarity index 100% rename from src/shared/util/optional.spec.ts rename to src/framework/util/optional.spec.ts diff --git a/src/shared/util/optional.ts b/src/framework/util/optional.ts similarity index 100% rename from src/shared/util/optional.ts rename to src/framework/util/optional.ts diff --git a/src/pluginConfigs/remark-fenced-blocks.plugin-config.ts b/src/pluginConfigs/remark-fenced-blocks.plugin-config.ts deleted file mode 100644 index 07cc85a0..00000000 --- a/src/pluginConfigs/remark-fenced-blocks.plugin-config.ts +++ /dev/null @@ -1,62 +0,0 @@ -import {FencedBlockConfig, FencedBlocksConfig} from "../plugins/remark-fenced-blocks"; -import {ImportType, JsxElementType} from "../plugins/util/models"; - -const admonitionsBlock: FencedBlockConfig = { - keywords: ['danger', 'warning', 'key', 'finding', 'definition', 'insight', 'info', 'note', 'tip'], - converter: (type: string, header: string) => { - return { - jsxElementType: JsxElementType.FLOW_ELEMENT, - componentName: 'Admonition', - attributes: [ - {name: 'type', value: type}, - {name: 'title', value: header}, - ], - } - }, - esmImports: [{ - sourcePackage: '@site/src/theme/Admonition', - specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'Admonition'}], - }] -}; - -const heroBlock: FencedBlockConfig = { - keywords: ['Hero'], - converter: (type: string, header: string) => { - return { - jsxElementType: JsxElementType.FLOW_ELEMENT, - componentName: 'HeroContainer', - attributes: [], - } - }, - esmImports: [{ - sourcePackage: '@site/src/components/HeroContainer', - specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'HeroContainer'}], - }] -}; - -const captionBlock: FencedBlockConfig = { - keywords: ['Caption'], - converter: (type: string, header: string) => { - return { - jsxElementType: JsxElementType.FLOW_ELEMENT, - componentName: 'Caption', - attributes: [], - } - }, - esmImports: [{ - sourcePackage: '@site/src/components/Caption', - specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'Caption'}], - }] -}; - -export const fencedBlocksConfig: FencedBlocksConfig = { - blocks: [ - admonitionsBlock, - heroBlock, - captionBlock, - ], -}; - -export function fencedBlocksDefinedKeywords() { - return fencedBlocksConfig.blocks.flatMap(blockConfig => blockConfig.keywords); -} diff --git a/src/pluginConfigs/remark-special-links.plugin-config.ts b/src/pluginConfigs/remark-special-links.plugin-config.ts deleted file mode 100644 index ac886efa..00000000 --- a/src/pluginConfigs/remark-special-links.plugin-config.ts +++ /dev/null @@ -1,42 +0,0 @@ -import {SpecialLinksConfig, SpecialLinksConfigEntry} from "../plugins/remark-special-links"; -import {ImportType, JsxElementType} from "../plugins/util/models"; - -const youTubeVideoLinks: SpecialLinksConfigEntry = { - converter: (url: string) => { - return { - jsxElementType: JsxElementType.FLOW_ELEMENT, - componentName: 'YouTubeVideo', - attributes: [ - {name: 'videoUrl', value: url}, - ], - } - }, - esmImports: [{ - sourcePackage: '@site/src/components/YouTubeVideo', - specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'YouTubeVideo'}], - }] -}; - -const seeCodeBadgeLinks: SpecialLinksConfigEntry = { - converter: (url: string) => { - return { - jsxElementType: JsxElementType.TEXT_ELEMENT, - componentName: 'SeeCodeBadge', - attributes: [ - {name: 'url', value: url}, - ], - } - }, - esmImports: [{ - sourcePackage: '@site/src/components/SeeCodeBadge', - specifiers: [{type: ImportType.DEFAULT_IMPORT, name: 'SeeCodeBadge'}], - }] -}; - -export const specialLinksConfig: SpecialLinksConfig = { - delimiter: '@', - markers: { - 'YouTubeVideo': youTubeVideoLinks, - 'SeeCode': seeCodeBadgeLinks, - }, -}; diff --git a/src/plugins/remark-fenced-blocks.ts b/src/plugins/remark-fenced-blocks.ts deleted file mode 100644 index 85da1976..00000000 --- a/src/plugins/remark-fenced-blocks.ts +++ /dev/null @@ -1,63 +0,0 @@ -import {Transformer} from "unified"; -import {VFile} from "vfile"; -import {Parent, Node} from "unist"; -import {visit} from "unist-util-visit"; -import {Directives} from "mdast-util-directive"; -import {ensureEsmImports} from "./util/mdast-util-esm-imports"; -import {EsmImport, JsxElementSpec} from "./util/models"; -import {createJsxNode} from "./util/jsx-node-util"; - -export interface FencedBlockConfig { - keywords: string[]; - converter: (type: string, header: string) => JsxElementSpec, - esmImports: EsmImport[]; -} - -export interface FencedBlocksConfig { - blocks: FencedBlockConfig[]; -} - -/** @type {import('unified').Plugin<[FencedBlocksConfig], MdastRoot>} */ -export default function remarkFencedBlocks(config: FencedBlocksConfig): Transformer { - return (mdast: Parent, _: VFile) => { - if (!config) { - console.warn('remarkFencedBlocks invoked without options, bailing'); - return; - } - const esmImports = new Set(); - transformContainerDirectives(mdast, config.blocks, esmImports); - ensureEsmImports(mdast, Array.from(esmImports.values())) - }; -}; - -function transformContainerDirectives(mdast: Parent, blockConfigs: FencedBlockConfig[], esmImports: Set): void { - visit(mdast, 'containerDirective', (containerRoot: Directives, _: number, parent: Parent) => { - const containerName: string = containerRoot.name; - - // Find a block config whose keywords contain this container directive's name. - const matchingBlockConfig = blockConfigs - .find(config => config.keywords.includes(containerName)); - if (!matchingBlockConfig) { - return; - } - - // Since we have discovered a block of this type, collect its required ESM imports. - matchingBlockConfig.esmImports.forEach(esmImport => esmImports.add(esmImport)); - - // Create new JSX node from container root + converter, replace container root node. - replaceContainerRootWithJsxNode(matchingBlockConfig, containerRoot, parent); - }); -} - -function replaceContainerRootWithJsxNode(blockConfig: FencedBlockConfig, containerRoot: Directives, parent: Parent) { - const jsxNodeSpec = blockConfig.converter( - containerRoot.name, - (containerRoot.data as any).hProperties?.title - ); - - const jsxNode = createJsxNode(jsxNodeSpec, containerRoot.children) - - // Replace container root node with new JSX node in container root's parent. - const containerRootIndex = parent.children.indexOf(containerRoot); - parent.children[containerRootIndex] = jsxNode; -} diff --git a/src/plugins/remark-mdi.ts b/src/plugins/remark-mdi.ts deleted file mode 100644 index 21e0da3f..00000000 --- a/src/plugins/remark-mdi.ts +++ /dev/null @@ -1,52 +0,0 @@ -import {Transformer} from "unified"; -import {VFile} from "vfile"; -import {Node, Literal, Parent} from "unist"; -import {visit} from "unist-util-visit"; - -const MDI_PATTERN = /(?[\s\S]*):(?mdi-[a-z-]+):(?[\s\S]*)/; - -/** @type {import('unified').Plugin<[], MdastRoot>} */ -export default function remarkMdi(): Transformer { - return (mdast: Node, _: VFile) => { - visit(mdast, 'text', (node: Literal, _: number, parent: Parent) => { - if (!node.value || typeof node.value !== 'string') { - return; - } - - const nodeLiteral: string = node.value; - const mdiPatternMatch = nodeLiteral.match(MDI_PATTERN); - if (!mdiPatternMatch) { - return; - } - - const replacementNodes = [ - { - type: 'text', - value: mdiPatternMatch.groups.before, - }, - { - type: 'mdxJsxTextElement', - name: 'span', - attributes: [ - { - type: 'mdxJsxAttribute', - name: 'class', - value: `mdi ${mdiPatternMatch.groups.icon}` - } - ], - children: [], - data: {_mdxExplicitJsx: true} - }, - { - type: 'text', - value: mdiPatternMatch.groups.after, - } - ]; - - const children = parent.children; - const matchIndex = children.indexOf(node); - children.splice(matchIndex, 1); - children.splice(matchIndex, 0, ...replacementNodes); - }); - }; -}; diff --git a/src/plugins/remark-special-links.ts b/src/plugins/remark-special-links.ts deleted file mode 100644 index 5182993e..00000000 --- a/src/plugins/remark-special-links.ts +++ /dev/null @@ -1,54 +0,0 @@ -import {Transformer} from "unified"; -import {VFile} from "vfile"; -import {Literal, Parent} from "unist"; -import {visit} from "unist-util-visit"; -import {Link} from "mdast"; -import {EsmImport, JsxElementSpec} from "./util/models"; -import {createJsxNode} from "./util/jsx-node-util"; -import {ensureEsmImports} from "./util/mdast-util-esm-imports"; -import {replaceNode} from "./util/mdast-util"; - -export interface SpecialLinksConfigEntry { - converter: (url: string) => JsxElementSpec; - esmImports: EsmImport[]; -} - -export type SpecialLinksConfig = { - delimiter: string; - markers: { - [key: string]: SpecialLinksConfigEntry - } -} - -function findMatchingMarker(node: Parent, config: SpecialLinksConfig) { - if (node.children?.length === 0) { - return; - } - - const potentialMarker = (node.children[0] as Literal).value as string; - if (!potentialMarker.startsWith(config.delimiter)) { - return; - } - - const matchingConfig = Object.entries(config.markers) - .find(([definedMarker, markerConfig]) => { - return potentialMarker == `@${definedMarker}` - }); - - return matchingConfig ? matchingConfig[1] : undefined; -} - -/** @type {import('unified').Plugin<[SpecialLinksConfig], MdastRoot>} */ -export default function remarkSpecialLinks(config: SpecialLinksConfig): Transformer { - return (mdast: Parent, _: VFile) => { - visit(mdast, 'link', (node: Link & Parent, _: number, parent: Parent) => { - const markerConfig = findMatchingMarker(node, config); - if (!markerConfig) { - return; - } - - parent.children[parent.children.indexOf(node)] = createJsxNode(markerConfig.converter(node.url)); - ensureEsmImports(mdast, markerConfig.esmImports); - }); - }; -}; diff --git a/src/plugins/util/jsx-node-util.ts b/src/plugins/util/jsx-node-util.ts deleted file mode 100644 index e2b9c306..00000000 --- a/src/plugins/util/jsx-node-util.ts +++ /dev/null @@ -1,18 +0,0 @@ -import {JsxElementSpec} from "./models"; -import {Node} from "unist"; - -export function createJsxNode(spec: JsxElementSpec, children?: Node[]): any { - return { - type: spec.jsxElementType, - name: spec.componentName, - attributes: spec.attributes.map(attr => { - return { - type: 'mdxJsxAttribute', - name: attr.name, - value: attr.value, - } - }), - children: children ?? [], - data: {_mdxExplicitJsx: true} - } -} diff --git a/src/plugins/util/mdast-util.ts b/src/plugins/util/mdast-util.ts deleted file mode 100644 index 02c6aa0a..00000000 --- a/src/plugins/util/mdast-util.ts +++ /dev/null @@ -1,12 +0,0 @@ -import {Parent, Node} from "unist"; -import {visit} from "unist-util-visit"; - -export function replaceNode(mdast: Parent, target: Node, replacement: Node) { - visit( - mdast, - (node: Node) => node === target, - (node: Node, _: number, parent: Parent) => { - parent.children[parent.children.indexOf(node)] = replacement; - } - ); -} diff --git a/src/theme/Admonition/index.tsx b/src/theme/Admonition/index.tsx index a82d0116..4b7508c5 100644 --- a/src/theme/Admonition/index.tsx +++ b/src/theme/Admonition/index.tsx @@ -98,7 +98,6 @@ function processAdmonitionProps(props: Props): Props { } export default function Admonition(props: Props): JSX.Element { - console.log(props); const {children, type, title, icon: iconProp} = processAdmonitionProps(props); const typeConfig = getAdmonitionConfig(type); diff --git a/yarn.lock b/yarn.lock index c26232fe..3902087f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -146,15 +146,7 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.8.3": - version "7.22.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" - integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== - dependencies: - "@babel/highlight" "^7.22.13" - chalk "^2.4.2" - -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.8.3": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== @@ -162,17 +154,12 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.3.tgz#3febd552541e62b5e883a25eb3effd7c7379db11" - integrity sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ== - -"@babel/compat-data@^7.23.5": +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.3", "@babel/compat-data@^7.23.5": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== -"@babel/core@^7.11.6", "@babel/core@^7.12.3": +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.19.6", "@babel/core@^7.23.3": version "7.23.7" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.7.tgz#4d8016e06a14b5f92530a13ed0561730b5c6483f" integrity sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw== @@ -193,69 +180,7 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/core@^7.19.6": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.3.tgz#5ec09c8803b91f51cc887dedc2654a35852849c9" - integrity sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.2" - "@babel/parser" "^7.23.3" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.3" - "@babel/types" "^7.23.3" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/core@^7.23.3": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.5.tgz#6e23f2acbcb77ad283c5ed141f824fd9f70101c7" - integrity sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.5" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.5" - "@babel/parser" "^7.23.5" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.5" - "@babel/types" "^7.23.5" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/generator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.3.tgz#86e6e83d95903fbe7613f448613b8b319f330a8e" - integrity sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg== - dependencies: - "@babel/types" "^7.23.3" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/generator@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.5.tgz#17d0a1ea6b62f351d281350a5f80b87a810c4755" - integrity sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA== - dependencies: - "@babel/types" "^7.23.5" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/generator@^7.23.6", "@babel/generator@^7.7.2": +"@babel/generator@^7.23.3", "@babel/generator@^7.23.6", "@babel/generator@^7.7.2": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== @@ -279,18 +204,7 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" - integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== - dependencies: - "@babel/compat-data" "^7.22.9" - "@babel/helper-validator-option" "^7.22.15" - browserslist "^4.21.9" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-compilation-targets@^7.23.6": +"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== @@ -301,17 +215,17 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4" - integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg== +"@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.23.6": + version "7.23.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.7.tgz#b2e6826e0e20d337143655198b79d58fdc9bd43d" + integrity sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-function-name" "^7.22.5" - "@babel/helper-member-expression-to-functions" "^7.22.15" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-member-expression-to-functions" "^7.23.0" "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.9" + "@babel/helper-replace-supers" "^7.22.20" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" @@ -325,10 +239,10 @@ regexpu-core "^5.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.4.3": - version "0.4.3" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz#a71c10f7146d809f4a256c373f462d9bba8cf6ba" - integrity sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug== +"@babel/helper-define-polyfill-provider@^0.4.4": + version "0.4.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz#64df615451cb30e94b59a9696022cffac9a10088" + integrity sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -336,7 +250,7 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5": +"@babel/helper-environment-visitor@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== @@ -356,7 +270,7 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-member-expression-to-functions@^7.22.15": +"@babel/helper-member-expression-to-functions@^7.22.15", "@babel/helper-member-expression-to-functions@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== @@ -402,7 +316,7 @@ "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-wrap-function" "^7.22.20" -"@babel/helper-replace-supers@^7.22.20", "@babel/helper-replace-supers@^7.22.9": +"@babel/helper-replace-supers@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== @@ -432,11 +346,6 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-string-parser@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" - integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== - "@babel/helper-string-parser@^7.23.4": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" @@ -447,12 +356,7 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== -"@babel/helper-validator-option@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" - integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== - -"@babel/helper-validator-option@^7.23.5": +"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.23.5": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== @@ -466,24 +370,6 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.22.19" -"@babel/helpers@^7.23.2": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767" - integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ== - dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.2" - "@babel/types" "^7.23.0" - -"@babel/helpers@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.5.tgz#52f522840df8f1a848d06ea6a79b79eefa72401e" - integrity sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg== - dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.5" - "@babel/types" "^7.23.5" - "@babel/helpers@^7.23.7": version "7.23.7" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.7.tgz#eb543c36f81da2873e47b76ee032343ac83bba60" @@ -493,15 +379,6 @@ "@babel/traverse" "^7.23.7" "@babel/types" "^7.23.6" -"@babel/highlight@^7.22.13": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" - integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" - "@babel/highlight@^7.23.4": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" @@ -511,21 +388,11 @@ chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.6": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.22.7", "@babel/parser@^7.23.6": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.6.tgz#ba1c9e512bda72a47e285ae42aff9d2a635a9e3b" integrity sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ== -"@babel/parser@^7.22.15", "@babel/parser@^7.22.7", "@babel/parser@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" - integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== - -"@babel/parser@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.5.tgz#37dee97c4752af148e1d38c34b856b2507660563" - integrity sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ== - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" @@ -542,10 +409,10 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/plugin-transform-optional-chaining" "^7.23.3" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.3.tgz#20c60d4639d18f7da8602548512e9d3a4c8d7098" - integrity sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.7": + version "7.23.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz#516462a95d10a9618f197d39ad291a9b47ae1d7b" + integrity sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.22.5" @@ -625,7 +492,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.23.3", "@babel/plugin-syntax-jsx@^7.7.2": +"@babel/plugin-syntax-jsx@^7.23.3", "@babel/plugin-syntax-jsx@^7.7.2": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== @@ -710,10 +577,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-async-generator-functions@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.3.tgz#9df2627bad7f434ed13eef3e61b2b65cafd4885b" - integrity sha512-59GsVNavGxAXCDDbakWSMJhajASb4kBCqDjqJsv+p5nKdbz7istmZ3HrX3L2LuiI80+zsOADCvooqQH3qGCucQ== +"@babel/plugin-transform-async-generator-functions@^7.23.7": + version "7.23.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.7.tgz#3aa0b4f2fa3788b5226ef9346cf6d16ec61f99cd" + integrity sha512-PdxEpL71bJp1byMG0va5gwQcXHxuEYC/BgI/e88mGTtohbZN28O5Yit0Plkkm/dBzCF/BxmbNcses1RH1T+urA== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.22.5" @@ -736,10 +603,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-block-scoping@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.3.tgz#e99a3ff08f58edd28a8ed82481df76925a4ffca7" - integrity sha512-QPZxHrThbQia7UdvfpaRRlq/J9ciz1J4go0k+lPBXbgaNeY7IQrBj/9ceWjvMMI07/ZBzHl/F0R/2K0qH7jCVw== +"@babel/plugin-transform-block-scoping@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz#b2d38589531c6c80fbe25e6b58e763622d2d3cf5" + integrity sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -751,25 +618,24 @@ "@babel/helper-create-class-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-class-static-block@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.3.tgz#56f2371c7e5bf6ff964d84c5dc4d4db5536b5159" - integrity sha512-PENDVxdr7ZxKPyi5Ffc0LjXdnJyrJxyqF5T5YjlVg4a0VFfQHW0r8iAtRiDXkfHlu1wwcvdtnndGYIeJLSuRMQ== +"@babel/plugin-transform-class-static-block@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz#2a202c8787a8964dd11dfcedf994d36bfc844ab5" + integrity sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-transform-classes@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.3.tgz#73380c632c095b03e8503c24fd38f95ad41ffacb" - integrity sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w== +"@babel/plugin-transform-classes@^7.23.8": + version "7.23.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz#d08ae096c240347badd68cdf1b6d1624a6435d92" + integrity sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" - "@babel/helper-optimise-call-expression" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-replace-supers" "^7.22.20" "@babel/helper-split-export-declaration" "^7.22.6" @@ -805,10 +671,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dynamic-import@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.3.tgz#82625924da9ed5fb11a428efb02e43bc9a3ab13e" - integrity sha512-vTG+cTGxPFou12Rj7ll+eD5yWeNl5/8xvQvF08y5Gv3v4mZQoyFf8/n9zg4q5vvCWt5jmgymfzMAldO7orBn7A== +"@babel/plugin-transform-dynamic-import@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz#c7629e7254011ac3630d47d7f34ddd40ca535143" + integrity sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" @@ -821,20 +687,21 @@ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-export-namespace-from@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.3.tgz#dcd066d995f6ac6077e5a4ccb68322a01e23ac49" - integrity sha512-yCLhW34wpJWRdTxxWtFZASJisihrfyMOTOQexhVzA78jlU+dH7Dw+zQgcPepQ5F3C6bAIiblZZ+qBggJdHiBAg== +"@babel/plugin-transform-export-namespace-from@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz#084c7b25e9a5c8271e987a08cf85807b80283191" + integrity sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-for-of@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.3.tgz#afe115ff0fbce735e02868d41489093c63e15559" - integrity sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw== +"@babel/plugin-transform-for-of@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz#81c37e24171b37b370ba6aaffa7ac86bcb46f94e" + integrity sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/plugin-transform-function-name@^7.23.3": version "7.23.3" @@ -845,10 +712,10 @@ "@babel/helper-function-name" "^7.23.0" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-json-strings@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.3.tgz#489724ab7d3918a4329afb4172b2fd2cf3c8d245" - integrity sha512-H9Ej2OiISIZowZHaBwF0tsJOih1PftXJtE8EWqlEIwpc7LMTGq0rPOrywKLQ4nefzx8/HMR0D3JGXoMHYvhi0A== +"@babel/plugin-transform-json-strings@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz#a871d9b6bd171976efad2e43e694c961ffa3714d" + integrity sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-json-strings" "^7.8.3" @@ -860,10 +727,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-logical-assignment-operators@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.3.tgz#3a406d6083feb9487083bca6d2334a3c9b6c4808" - integrity sha512-+pD5ZbxofyOygEp+zZAfujY2ShNCXRpDRIPOiBmTO693hhyOEteZgl876Xs9SAHPQpcV0vz8LvA/T+w8AzyX8A== +"@babel/plugin-transform-logical-assignment-operators@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz#e599f82c51d55fac725f62ce55d3a0886279ecb5" + integrity sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -925,26 +792,26 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-nullish-coalescing-operator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.3.tgz#8a613d514b521b640344ed7c56afeff52f9413f8" - integrity sha512-xzg24Lnld4DYIdysyf07zJ1P+iIfJpxtVFOzX4g+bsJ3Ng5Le7rXx9KwqKzuyaUeRnt+I1EICwQITqc0E2PmpA== +"@babel/plugin-transform-nullish-coalescing-operator@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz#45556aad123fc6e52189ea749e33ce090637346e" + integrity sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.3.tgz#2f8da42b75ba89e5cfcd677afd0856d52c0c2e68" - integrity sha512-s9GO7fIBi/BLsZ0v3Rftr6Oe4t0ctJ8h4CCXfPoEJwmvAPMyNrfkOOJzm6b9PX9YXcCJWWQd/sBF/N26eBiMVw== +"@babel/plugin-transform-numeric-separator@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz#03d08e3691e405804ecdd19dd278a40cca531f29" + integrity sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.3.tgz#509373753b5f7202fe1940e92fd075bd7874955f" - integrity sha512-VxHt0ANkDmu8TANdE9Kc0rndo/ccsmfe2Cx2y5sI4hu3AukHQ5wAu4cM7j3ba8B9548ijVyclBU+nuDQftZsog== +"@babel/plugin-transform-object-rest-spread@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz#2b9c2d26bf62710460bdc0d1730d4f1048361b83" + integrity sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g== dependencies: "@babel/compat-data" "^7.23.3" "@babel/helper-compilation-targets" "^7.22.15" @@ -960,18 +827,18 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-replace-supers" "^7.22.20" -"@babel/plugin-transform-optional-catch-binding@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.3.tgz#362c0b545ee9e5b0fa9d9e6fe77acf9d4c480027" - integrity sha512-LxYSb0iLjUamfm7f1D7GpiS4j0UAC8AOiehnsGAP8BEsIX8EOi3qV6bbctw8M7ZvLtcoZfZX5Z7rN9PlWk0m5A== +"@babel/plugin-transform-optional-catch-binding@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz#318066de6dacce7d92fa244ae475aa8d91778017" + integrity sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.3.tgz#92fc83f54aa3adc34288933fa27e54c13113f4be" - integrity sha512-zvL8vIfIUgMccIAK1lxjvNv572JHFJIKb4MWBz5OGdBQA0fB0Xluix5rmOby48exiJc987neOmP/m9Fnpkz3Tg== +"@babel/plugin-transform-optional-chaining@^7.23.3", "@babel/plugin-transform-optional-chaining@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz#6acf61203bdfc4de9d4e52e64490aeb3e52bd017" + integrity sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" @@ -992,10 +859,10 @@ "@babel/helper-create-class-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-private-property-in-object@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.3.tgz#5cd34a2ce6f2d008cc8f91d8dcc29e2c41466da6" - integrity sha512-a5m2oLNFyje2e/rGKjVfAELTVI5mbA0FeZpBnkOWWV7eSmKQ+T/XW0Vf+29ScLzSxX+rnsarvU0oie/4m6hkxA== +"@babel/plugin-transform-private-property-in-object@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz#3ec711d05d6608fd173d9b8de39872d8dbf68bf5" + integrity sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-create-class-features-plugin" "^7.22.15" @@ -1031,15 +898,15 @@ "@babel/plugin-transform-react-jsx" "^7.22.5" "@babel/plugin-transform-react-jsx@^7.22.15", "@babel/plugin-transform-react-jsx@^7.22.5": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.15.tgz#7e6266d88705d7c49f11c98db8b9464531289cd6" - integrity sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA== + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz#393f99185110cea87184ea47bcb4a7b0c2e39312" + integrity sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-module-imports" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-jsx" "^7.22.5" - "@babel/types" "^7.22.15" + "@babel/plugin-syntax-jsx" "^7.23.3" + "@babel/types" "^7.23.4" "@babel/plugin-transform-react-pure-annotations@^7.23.3": version "7.23.3" @@ -1065,15 +932,15 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-runtime@^7.22.9": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.3.tgz#0aa7485862b0b5cb0559c1a5ec08b4923743ee3b" - integrity sha512-XcQ3X58CKBdBnnZpPaQjgVMePsXtSZzHoku70q9tUAQp02ggPQNM04BF3RvlW1GSM/McbSOQAzEK4MXbS7/JFg== + version "7.23.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.7.tgz#52bbd20054855beb9deae3bee9ceb05289c343e6" + integrity sha512-fa0hnfmiXc9fq/weK34MUV0drz2pOL/vfKWvN7Qw127hiUPabFCUMgAbYWcchRzMJit4o5ARsK/s+5h0249pLw== dependencies: "@babel/helper-module-imports" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" - babel-plugin-polyfill-corejs2 "^0.4.6" - babel-plugin-polyfill-corejs3 "^0.8.5" - babel-plugin-polyfill-regenerator "^0.5.3" + babel-plugin-polyfill-corejs2 "^0.4.7" + babel-plugin-polyfill-corejs3 "^0.8.7" + babel-plugin-polyfill-regenerator "^0.5.4" semver "^6.3.1" "@babel/plugin-transform-shorthand-properties@^7.23.3": @@ -1113,12 +980,12 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-typescript@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.3.tgz#ce806e6cb485d468c48c4f717696719678ab0138" - integrity sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw== + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz#aa36a94e5da8d94339ae3a4e22d40ed287feb34c" + integrity sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-create-class-features-plugin" "^7.23.6" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-typescript" "^7.23.3" @@ -1154,17 +1021,17 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/preset-env@^7.19.4", "@babel/preset-env@^7.22.9": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.3.tgz#d299e0140a7650684b95c62be2db0ef8c975143e" - integrity sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q== + version "7.23.8" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.8.tgz#7d6f8171ea7c221ecd28059e65ad37c20e441e3e" + integrity sha512-lFlpmkApLkEP6woIKprO6DO60RImpatTQKtz4sUcDjVcK8M8mQ4sZsuxaTMNOZf0sqAq/ReYW1ZBHnOQwKpLWA== dependencies: - "@babel/compat-data" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" + "@babel/compat-data" "^7.23.5" + "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.15" + "@babel/helper-validator-option" "^7.23.5" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.3" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.7" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" @@ -1185,25 +1052,25 @@ "@babel/plugin-syntax-top-level-await" "^7.14.5" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" "@babel/plugin-transform-arrow-functions" "^7.23.3" - "@babel/plugin-transform-async-generator-functions" "^7.23.3" + "@babel/plugin-transform-async-generator-functions" "^7.23.7" "@babel/plugin-transform-async-to-generator" "^7.23.3" "@babel/plugin-transform-block-scoped-functions" "^7.23.3" - "@babel/plugin-transform-block-scoping" "^7.23.3" + "@babel/plugin-transform-block-scoping" "^7.23.4" "@babel/plugin-transform-class-properties" "^7.23.3" - "@babel/plugin-transform-class-static-block" "^7.23.3" - "@babel/plugin-transform-classes" "^7.23.3" + "@babel/plugin-transform-class-static-block" "^7.23.4" + "@babel/plugin-transform-classes" "^7.23.8" "@babel/plugin-transform-computed-properties" "^7.23.3" "@babel/plugin-transform-destructuring" "^7.23.3" "@babel/plugin-transform-dotall-regex" "^7.23.3" "@babel/plugin-transform-duplicate-keys" "^7.23.3" - "@babel/plugin-transform-dynamic-import" "^7.23.3" + "@babel/plugin-transform-dynamic-import" "^7.23.4" "@babel/plugin-transform-exponentiation-operator" "^7.23.3" - "@babel/plugin-transform-export-namespace-from" "^7.23.3" - "@babel/plugin-transform-for-of" "^7.23.3" + "@babel/plugin-transform-export-namespace-from" "^7.23.4" + "@babel/plugin-transform-for-of" "^7.23.6" "@babel/plugin-transform-function-name" "^7.23.3" - "@babel/plugin-transform-json-strings" "^7.23.3" + "@babel/plugin-transform-json-strings" "^7.23.4" "@babel/plugin-transform-literals" "^7.23.3" - "@babel/plugin-transform-logical-assignment-operators" "^7.23.3" + "@babel/plugin-transform-logical-assignment-operators" "^7.23.4" "@babel/plugin-transform-member-expression-literals" "^7.23.3" "@babel/plugin-transform-modules-amd" "^7.23.3" "@babel/plugin-transform-modules-commonjs" "^7.23.3" @@ -1211,15 +1078,15 @@ "@babel/plugin-transform-modules-umd" "^7.23.3" "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" "@babel/plugin-transform-new-target" "^7.23.3" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.3" - "@babel/plugin-transform-numeric-separator" "^7.23.3" - "@babel/plugin-transform-object-rest-spread" "^7.23.3" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" + "@babel/plugin-transform-numeric-separator" "^7.23.4" + "@babel/plugin-transform-object-rest-spread" "^7.23.4" "@babel/plugin-transform-object-super" "^7.23.3" - "@babel/plugin-transform-optional-catch-binding" "^7.23.3" - "@babel/plugin-transform-optional-chaining" "^7.23.3" + "@babel/plugin-transform-optional-catch-binding" "^7.23.4" + "@babel/plugin-transform-optional-chaining" "^7.23.4" "@babel/plugin-transform-parameters" "^7.23.3" "@babel/plugin-transform-private-methods" "^7.23.3" - "@babel/plugin-transform-private-property-in-object" "^7.23.3" + "@babel/plugin-transform-private-property-in-object" "^7.23.4" "@babel/plugin-transform-property-literals" "^7.23.3" "@babel/plugin-transform-regenerator" "^7.23.3" "@babel/plugin-transform-reserved-words" "^7.23.3" @@ -1233,9 +1100,9 @@ "@babel/plugin-transform-unicode-regex" "^7.23.3" "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.6" - babel-plugin-polyfill-corejs3 "^0.8.5" - babel-plugin-polyfill-regenerator "^0.5.3" + babel-plugin-polyfill-corejs2 "^0.4.7" + babel-plugin-polyfill-corejs3 "^0.8.7" + babel-plugin-polyfill-regenerator "^0.5.4" core-js-compat "^3.31.0" semver "^6.3.1" @@ -1277,17 +1144,17 @@ integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== "@babel/runtime-corejs3@^7.22.6": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.23.2.tgz#a5cd9d8b408fb946b2f074b21ea40c04e516795c" - integrity sha512-54cIh74Z1rp4oIjsHjqN+WM4fMyCBYe+LpZ9jWm51CZ1fbH3SkAzQD/3XLoNkjbJ7YEmjobLXyvQrFypRHOrXw== + version "7.23.8" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.23.8.tgz#b8aa3d47570bdd08fed77fdfd69542118af0df26" + integrity sha512-2ZzmcDugdm0/YQKFVYsXiwUN7USPX8PM7cytpb4PFl87fM+qYPSvTZX//8tyeJB1j0YDmafBJEbl5f8NfLyuKw== dependencies: core-js-pure "^3.30.2" regenerator-runtime "^0.14.0" "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.22.6", "@babel/runtime@^7.8.4": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885" - integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg== + version "7.23.8" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.8.tgz#8ee6fe1ac47add7122902f257b8ddf55c898f650" + integrity sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw== dependencies: regenerator-runtime "^0.14.0" @@ -1300,39 +1167,7 @@ "@babel/parser" "^7.22.15" "@babel/types" "^7.22.15" -"@babel/traverse@^7.22.8", "@babel/traverse@^7.23.2", "@babel/traverse@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.3.tgz#26ee5f252e725aa7aca3474aa5b324eaf7908b5b" - integrity sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.3" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.3" - "@babel/types" "^7.23.3" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/traverse@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.5.tgz#f546bf9aba9ef2b042c0e00d245990c15508e7ec" - integrity sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.5" - "@babel/types" "^7.23.5" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/traverse@^7.23.7": +"@babel/traverse@^7.22.8", "@babel/traverse@^7.23.7": version "7.23.7" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.7.tgz#9a7bf285c928cb99b5ead19c3b1ce5b310c9c305" integrity sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg== @@ -1348,7 +1183,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.23.6", "@babel/types@^7.3.3": +"@babel/types@^7.0.0", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.23.6", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.6.tgz#be33fdb151e1f5a56877d704492c240fc71c7ccd" integrity sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg== @@ -1357,24 +1192,6 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" -"@babel/types@^7.20.0", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.3", "@babel/types@^7.4.4": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.3.tgz#d5ea892c07f2ec371ac704420f4dcdb07b5f9598" - integrity sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw== - dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" - -"@babel/types@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.5.tgz#48d730a00c95109fa4393352705954d74fb5b602" - integrity sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w== - dependencies: - "@babel/helper-string-parser" "^7.23.4" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" - "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -1410,10 +1227,10 @@ "@docsearch/css" "3.5.2" algoliasearch "^4.19.1" -"@docusaurus/core@3.0.1", "@docusaurus/core@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.0.1.tgz#ad9a66b20802ea81b25e65db75d4ca952eda7e01" - integrity sha512-CXrLpOnW+dJdSv8M5FAJ3JBwXtL6mhUWxFA8aS0ozK6jBG/wgxERk5uvH28fCeFxOGbAT9v1e9dOMo1X2IEVhQ== +"@docusaurus/core@3.1.0", "@docusaurus/core@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.1.0.tgz#b66e7eaf867c1f44738d725d217a1c0e879629d7" + integrity sha512-GWudMGYA9v26ssbAWJNfgeDZk+lrudUTclLPRsmxiknEBk7UMp7Rglonhqbsf3IKHOyHkMU4Fr5jFyg5SBx9jQ== dependencies: "@babel/core" "^7.23.3" "@babel/generator" "^7.23.3" @@ -1425,13 +1242,13 @@ "@babel/runtime" "^7.22.6" "@babel/runtime-corejs3" "^7.22.6" "@babel/traverse" "^7.22.8" - "@docusaurus/cssnano-preset" "3.0.1" - "@docusaurus/logger" "3.0.1" - "@docusaurus/mdx-loader" "3.0.1" + "@docusaurus/cssnano-preset" "3.1.0" + "@docusaurus/logger" "3.1.0" + "@docusaurus/mdx-loader" "3.1.0" "@docusaurus/react-loadable" "5.5.2" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-common" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-common" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" "@slorber/static-site-generator-webpack-plugin" "^4.0.7" "@svgr/webpack" "^6.5.1" autoprefixer "^10.4.14" @@ -1485,34 +1302,34 @@ webpack-merge "^5.9.0" webpackbar "^5.0.2" -"@docusaurus/cssnano-preset@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.0.1.tgz#22fbf2e97389e338747864baf011743846e8fd26" - integrity sha512-wjuXzkHMW+ig4BD6Ya1Yevx9UJadO4smNZCEljqBoQfIQrQskTswBs7lZ8InHP7mCt273a/y/rm36EZhqJhknQ== +"@docusaurus/cssnano-preset@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.1.0.tgz#b3fe7134cc4d0c1950eeb1c940089a190591ad4e" + integrity sha512-ned7qsgCqSv/e7KyugFNroAfiszuxLwnvMW7gmT2Ywxb/Nyt61yIw7KHyAZCMKglOalrqnYA4gMhLUCK/mVePA== dependencies: cssnano-preset-advanced "^5.3.10" postcss "^8.4.26" postcss-sort-media-queries "^4.4.1" tslib "^2.6.0" -"@docusaurus/logger@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.0.1.tgz#06f512eef6c6ae4e2da63064257e01b1cdc41a82" - integrity sha512-I5L6Nk8OJzkVA91O2uftmo71LBSxe1vmOn9AMR6JRCzYeEBrqneWMH02AqMvjJ2NpMiviO+t0CyPjyYV7nxCWQ== +"@docusaurus/logger@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.1.0.tgz#eef6475c2d59a3ae7e138ac1f60007d6fafd76b0" + integrity sha512-p740M+HCst1VnKKzL60Hru9xfG4EUYJDarjlEC4hHeBy9+afPmY3BNPoSHx9/8zxuYfUlv/psf7I9NvRVdmdvg== dependencies: chalk "^4.1.2" tslib "^2.6.0" -"@docusaurus/mdx-loader@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.0.1.tgz#89f221e5bcc570983fd61d7ab56d6fbe36810b59" - integrity sha512-ldnTmvnvlrONUq45oKESrpy+lXtbnTcTsFkOTIDswe5xx5iWJjt6eSa0f99ZaWlnm24mlojcIGoUWNCS53qVlQ== +"@docusaurus/mdx-loader@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.1.0.tgz#61d562ff442f62ef04cc31d3f0d5865a8dd390e4" + integrity sha512-D7onDz/3mgBonexWoQXPw3V2E5Bc4+jYRf9gGUUK+KoQwU8xMDaDkUUfsr7t6UBa/xox9p5+/3zwLuXOYMzGSg== dependencies: "@babel/parser" "^7.22.7" "@babel/traverse" "^7.22.8" - "@docusaurus/logger" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/logger" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" "@mdx-js/mdx" "^3.0.0" "@slorber/remark-comment" "^1.0.0" escape-html "^1.0.3" @@ -1535,27 +1352,13 @@ vfile "^6.0.1" webpack "^5.88.1" -"@docusaurus/module-type-aliases@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.0.0.tgz#9a7dd323bb87ca666eb4b0b4b90d04425f2e05d6" - integrity sha512-CfC6CgN4u/ce+2+L1JdsHNyBd8yYjl4De2B2CBj2a9F7WuJ5RjV1ciuU7KDg8uyju+NRVllRgvJvxVUjCdkPiw== - dependencies: - "@docusaurus/react-loadable" "5.5.2" - "@docusaurus/types" "3.0.0" - "@types/history" "^4.7.11" - "@types/react" "*" - "@types/react-router-config" "*" - "@types/react-router-dom" "*" - react-helmet-async "*" - react-loadable "npm:@docusaurus/react-loadable@5.5.2" - -"@docusaurus/module-type-aliases@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.0.1.tgz#d45990fe377d7ffaa68841cf89401188a5d65293" - integrity sha512-DEHpeqUDsLynl3AhQQiO7AbC7/z/lBra34jTcdYuvp9eGm01pfH1wTVq8YqWZq6Jyx0BgcVl/VJqtE9StRd9Ag== +"@docusaurus/module-type-aliases@3.1.0", "@docusaurus/module-type-aliases@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.1.0.tgz#f3451702f143557bfde0502287713a08086a0415" + integrity sha512-XUl7Z4PWlKg4l6KF05JQ3iDHQxnPxbQUqTNKvviHyuHdlalOFv6qeDAm7IbzyQPJD5VA6y4dpRbTWSqP9ClwPg== dependencies: "@docusaurus/react-loadable" "5.5.2" - "@docusaurus/types" "3.0.1" + "@docusaurus/types" "3.1.0" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1563,18 +1366,18 @@ react-helmet-async "*" react-loadable "npm:@docusaurus/react-loadable@5.5.2" -"@docusaurus/plugin-content-blog@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.0.1.tgz#dee6147187c2d8b634252444d60312d12c9571a6" - integrity sha512-cLOvtvAyaMQFLI8vm4j26svg3ktxMPSXpuUJ7EERKoGbfpJSsgtowNHcRsaBVmfuCsRSk1HZ/yHBsUkTmHFEsg== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/logger" "3.0.1" - "@docusaurus/mdx-loader" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-common" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" +"@docusaurus/plugin-content-blog@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.1.0.tgz#d2102e9286486e526dbc0dfc741e53dc5cee0ff0" + integrity sha512-iMa6WBaaEdYuxckvJtLcq/HQdlA4oEbCXf/OFfsYJCCULcDX7GDZpKxLF3X1fLsax3sSm5bmsU+CA0WD+R1g3A== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/logger" "3.1.0" + "@docusaurus/mdx-loader" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-common" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" cheerio "^1.0.0-rc.12" feed "^4.2.2" fs-extra "^11.1.1" @@ -1586,18 +1389,18 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-docs@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.0.1.tgz#d9b1884562186573d5c4521ac3546b68512c1126" - integrity sha512-dRfAOA5Ivo+sdzzJGXEu33yAtvGg8dlZkvt/NEJ7nwi1F2j4LEdsxtfX2GKeETB2fP6XoGNSQnFXqa2NYGrHFg== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/logger" "3.0.1" - "@docusaurus/mdx-loader" "3.0.1" - "@docusaurus/module-type-aliases" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" +"@docusaurus/plugin-content-docs@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.1.0.tgz#55d7bdb8e14f854ea6c6e256f1b51b8c17963c19" + integrity sha512-el5GxhT8BLrsWD0qGa8Rq+Ttb/Ni6V3DGT2oAPio0qcs/mUAxeyXEAmihkvmLCnAgp6xD27Ce7dISZ5c6BXeqA== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/logger" "3.1.0" + "@docusaurus/mdx-loader" "3.1.0" + "@docusaurus/module-type-aliases" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" "@types/react-router-config" "^5.0.7" combine-promises "^1.1.0" fs-extra "^11.1.1" @@ -1607,96 +1410,96 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-pages@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.0.1.tgz#27e6424c77173f867760efe53f848bbab8849ea6" - integrity sha512-oP7PoYizKAXyEttcvVzfX3OoBIXEmXTMzCdfmC4oSwjG4SPcJsRge3mmI6O8jcZBgUPjIzXD21bVGWEE1iu8gg== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/mdx-loader" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" +"@docusaurus/plugin-content-pages@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.1.0.tgz#cdb73c804ded307e81ceea39874dc0bb540c2dc4" + integrity sha512-9gntYQFpk+93+Xl7gYczJu8I9uWoyRLnRwS0+NUFcs9iZtHKsdqKWPRrONC9elfN3wJ9ORwTbcVzsTiB8jvYlg== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/mdx-loader" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" fs-extra "^11.1.1" tslib "^2.6.0" webpack "^5.88.1" -"@docusaurus/plugin-debug@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.0.1.tgz#886b5dd03c066e970484ca251c1b79613df90700" - integrity sha512-09dxZMdATky4qdsZGzhzlUvvC+ilQ2hKbYF+wez+cM2mGo4qHbv8+qKXqxq0CQZyimwlAOWQLoSozIXU0g0i7g== +"@docusaurus/plugin-debug@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.1.0.tgz#545872bc8f9cd697d9f1d6c695f8a1674bfc149c" + integrity sha512-AbvJwCVRbmQ8w9d8QXbF4Iq/ui0bjPZNYFIhtducGFnm2YQRN1mraK8mCEQb0Aq0T8SqRRvSfC/far4n/s531w== dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" + "@docusaurus/core" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" fs-extra "^11.1.1" react-json-view-lite "^1.2.0" tslib "^2.6.0" -"@docusaurus/plugin-google-analytics@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.0.1.tgz#ec69902131ea3aad8b062eeb1d17bf0962986f80" - integrity sha512-jwseSz1E+g9rXQwDdr0ZdYNjn8leZBnKPjjQhMBEiwDoenL3JYFcNW0+p0sWoVF/f2z5t7HkKA+cYObrUh18gg== +"@docusaurus/plugin-google-analytics@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.1.0.tgz#3035eace3121db16aec7c10852ebb4cd860f4434" + integrity sha512-zvUOMzu9Uhz0ciqnSbtnp/5i1zEYlzarQrOXG90P3Is3efQI43p2YLW/rzSGdLb5MfQo2HvKT6Q5+tioMO045Q== dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/core" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" tslib "^2.6.0" -"@docusaurus/plugin-google-gtag@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.0.1.tgz#bb5526377d3a324ebec235127846fda386562b05" - integrity sha512-UFTDvXniAWrajsulKUJ1DB6qplui1BlKLQZjX4F7qS/qfJ+qkKqSkhJ/F4VuGQ2JYeZstYb+KaUzUzvaPK1aRQ== +"@docusaurus/plugin-google-gtag@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.1.0.tgz#2f4040da81d36bfc6324abc1a12b258e6c7f202a" + integrity sha512-0txshvaY8qIBdkk2UATdVcfiCLGq3KAUfuRQD2cRNgO39iIf4/ihQxH9NXcRTwKs4Q5d9yYHoix3xT6pFuEYOg== dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/core" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" "@types/gtag.js" "^0.0.12" tslib "^2.6.0" -"@docusaurus/plugin-google-tag-manager@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.0.1.tgz#4e36d13279cf90c2614b62438aa1109dd4696ec8" - integrity sha512-IPFvuz83aFuheZcWpTlAdiiX1RqWIHM+OH8wS66JgwAKOiQMR3+nLywGjkLV4bp52x7nCnwhNk1rE85Cpy/CIw== +"@docusaurus/plugin-google-tag-manager@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.1.0.tgz#4c026e9f65468a332326770f95ccd9c6e12d564b" + integrity sha512-zOWPEi8kMyyPtwG0vhyXrdbLs8fIZmY5vlbi9lUU+v8VsroO5iHmfR2V3SMsrsfOanw5oV/ciWqbxezY00qEZg== dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/core" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" tslib "^2.6.0" -"@docusaurus/plugin-sitemap@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.0.1.tgz#ab55857e90d4500f892e110b30e4bc3289202bd4" - integrity sha512-xARiWnjtVvoEniZudlCq5T9ifnhCu/GAZ5nA7XgyLfPcNpHQa241HZdsTlLtVcecEVVdllevBKOp7qknBBaMGw== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/logger" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-common" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" +"@docusaurus/plugin-sitemap@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.1.0.tgz#9d9dbb4d87e6dc46ae9321badf6ac7cd9aa96b23" + integrity sha512-TkR5vGBpUooEB9SoW42thahqqwKzfHrQQhkB+JrEGERsl4bKODSuJNle4aA4h6LSkg4IyfXOW8XOI0NIPWb9Cg== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/logger" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-common" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" fs-extra "^11.1.1" sitemap "^7.1.1" tslib "^2.6.0" -"@docusaurus/preset-classic@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.0.1.tgz#d363ac837bba967095ed2a896d13c54f3717d6b5" - integrity sha512-il9m9xZKKjoXn6h0cRcdnt6wce0Pv1y5t4xk2Wx7zBGhKG1idu4IFHtikHlD0QPuZ9fizpXspXcTzjL5FXc1Gw== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/plugin-content-blog" "3.0.1" - "@docusaurus/plugin-content-docs" "3.0.1" - "@docusaurus/plugin-content-pages" "3.0.1" - "@docusaurus/plugin-debug" "3.0.1" - "@docusaurus/plugin-google-analytics" "3.0.1" - "@docusaurus/plugin-google-gtag" "3.0.1" - "@docusaurus/plugin-google-tag-manager" "3.0.1" - "@docusaurus/plugin-sitemap" "3.0.1" - "@docusaurus/theme-classic" "3.0.1" - "@docusaurus/theme-common" "3.0.1" - "@docusaurus/theme-search-algolia" "3.0.1" - "@docusaurus/types" "3.0.1" +"@docusaurus/preset-classic@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.1.0.tgz#ca67d5e416c211b4c23f0fb01f0e3e36b759dfa0" + integrity sha512-xGLQRFmmT9IinAGUDVRYZ54Ys28USNbA3OTXQXnSJLPr1rCY7CYnHI4XoOnKWrNnDiAI4ruMzunXWyaElUYCKQ== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/plugin-content-blog" "3.1.0" + "@docusaurus/plugin-content-docs" "3.1.0" + "@docusaurus/plugin-content-pages" "3.1.0" + "@docusaurus/plugin-debug" "3.1.0" + "@docusaurus/plugin-google-analytics" "3.1.0" + "@docusaurus/plugin-google-gtag" "3.1.0" + "@docusaurus/plugin-google-tag-manager" "3.1.0" + "@docusaurus/plugin-sitemap" "3.1.0" + "@docusaurus/theme-classic" "3.1.0" + "@docusaurus/theme-common" "3.1.0" + "@docusaurus/theme-search-algolia" "3.1.0" + "@docusaurus/types" "3.1.0" "@docusaurus/react-loadable@5.5.2", "react-loadable@npm:@docusaurus/react-loadable@5.5.2": version "5.5.2" @@ -1706,23 +1509,23 @@ "@types/react" "*" prop-types "^15.6.2" -"@docusaurus/theme-classic@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.0.1.tgz#3ba4dc77553d2c1608e433c0d01bed7c6db14eb9" - integrity sha512-XD1FRXaJiDlmYaiHHdm27PNhhPboUah9rqIH0lMpBt5kYtsGjJzhqa27KuZvHLzOP2OEpqd2+GZ5b6YPq7Q05Q== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/mdx-loader" "3.0.1" - "@docusaurus/module-type-aliases" "3.0.1" - "@docusaurus/plugin-content-blog" "3.0.1" - "@docusaurus/plugin-content-docs" "3.0.1" - "@docusaurus/plugin-content-pages" "3.0.1" - "@docusaurus/theme-common" "3.0.1" - "@docusaurus/theme-translations" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-common" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" +"@docusaurus/theme-classic@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.1.0.tgz#6ee68bf4d4db53c8d9b18d4866512abadb00a802" + integrity sha512-/+jMl2Z9O8QQxves5AtHdt91gWsEZFgOV3La/6eyKEd7QLqQUtM5fxEJ40rq9NKYjqCd1HzZ9egIMeJoWwillw== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/mdx-loader" "3.1.0" + "@docusaurus/module-type-aliases" "3.1.0" + "@docusaurus/plugin-content-blog" "3.1.0" + "@docusaurus/plugin-content-docs" "3.1.0" + "@docusaurus/plugin-content-pages" "3.1.0" + "@docusaurus/theme-common" "3.1.0" + "@docusaurus/theme-translations" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-common" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" "@mdx-js/react" "^3.0.0" clsx "^2.0.0" copy-text-to-clipboard "^3.2.0" @@ -1737,18 +1540,18 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-common@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.0.1.tgz#29a5bcb286296a52bc10afa5308e360cbed6b49c" - integrity sha512-cr9TOWXuIOL0PUfuXv6L5lPlTgaphKP+22NdVBOYah5jSq5XAAulJTjfe+IfLsEG4L7lJttLbhW7LXDFSAI7Ag== - dependencies: - "@docusaurus/mdx-loader" "3.0.1" - "@docusaurus/module-type-aliases" "3.0.1" - "@docusaurus/plugin-content-blog" "3.0.1" - "@docusaurus/plugin-content-docs" "3.0.1" - "@docusaurus/plugin-content-pages" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-common" "3.0.1" +"@docusaurus/theme-common@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.1.0.tgz#d176af1d0fc8ea27fea0afb298157f9a75256336" + integrity sha512-YGwEFALLIbF5ocW/Fy6Ae7tFWUOugEN3iwxTx8UkLAcLqYUboDSadesYtVBmRCEB4FVA2qoP7YaW3lu3apUPPw== + dependencies: + "@docusaurus/mdx-loader" "3.1.0" + "@docusaurus/module-type-aliases" "3.1.0" + "@docusaurus/plugin-content-blog" "3.1.0" + "@docusaurus/plugin-content-docs" "3.1.0" + "@docusaurus/plugin-content-pages" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-common" "3.1.0" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1759,31 +1562,31 @@ utility-types "^3.10.0" "@docusaurus/theme-mermaid@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-mermaid/-/theme-mermaid-3.0.1.tgz#a8e3db9f8ccb680f0a4359e2b0f6427f52223c15" - integrity sha512-jquSDnZfazABnC5i+02GzRIvufXKruKgvbYkQjKbI7/LWo0XvBs0uKAcCDGgHhth0t/ON5+Sn27joRfpeSk3Lw== - dependencies: - "@docusaurus/core" "3.0.1" - "@docusaurus/module-type-aliases" "3.0.1" - "@docusaurus/theme-common" "3.0.1" - "@docusaurus/types" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-mermaid/-/theme-mermaid-3.1.0.tgz#1e7f8e96e21b5d180043f8f7793f1b38045c5806" + integrity sha512-63y08fvRWIe9satRV1e/Dps9he+sPjQ+kwl4ccQQEzkM2nxeAgWwk8WzpbVhm1Pf02N/11y0C6FcvFqn4dERHA== + dependencies: + "@docusaurus/core" "3.1.0" + "@docusaurus/module-type-aliases" "3.1.0" + "@docusaurus/theme-common" "3.1.0" + "@docusaurus/types" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" mermaid "^10.4.0" tslib "^2.6.0" -"@docusaurus/theme-search-algolia@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.0.1.tgz#d8fb6bddca8d8355e4706c4c7d30d3b800217cf4" - integrity sha512-DDiPc0/xmKSEdwFkXNf1/vH1SzJPzuJBar8kMcBbDAZk/SAmo/4lf6GU2drou4Ae60lN2waix+jYWTWcJRahSA== +"@docusaurus/theme-search-algolia@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.1.0.tgz#3cdb1f0e8d15698a60110856ca5a06f10d3b049d" + integrity sha512-8cJH0ZhPsEDjq3jR3I+wHmWzVY2bXMQJ59v2QxUmsTZxbWA4u+IzccJMIJx4ooFl9J6iYynwYsFuHxyx/KUmfQ== dependencies: "@docsearch/react" "^3.5.2" - "@docusaurus/core" "3.0.1" - "@docusaurus/logger" "3.0.1" - "@docusaurus/plugin-content-docs" "3.0.1" - "@docusaurus/theme-common" "3.0.1" - "@docusaurus/theme-translations" "3.0.1" - "@docusaurus/utils" "3.0.1" - "@docusaurus/utils-validation" "3.0.1" + "@docusaurus/core" "3.1.0" + "@docusaurus/logger" "3.1.0" + "@docusaurus/plugin-content-docs" "3.1.0" + "@docusaurus/theme-common" "3.1.0" + "@docusaurus/theme-translations" "3.1.0" + "@docusaurus/utils" "3.1.0" + "@docusaurus/utils-validation" "3.1.0" algoliasearch "^4.18.0" algoliasearch-helper "^3.13.3" clsx "^2.0.0" @@ -1793,38 +1596,25 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-translations@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.0.1.tgz#837a01a166ccd698a3eceaed0c2f798555bc024b" - integrity sha512-6UrbpzCTN6NIJnAtZ6Ne9492vmPVX+7Fsz4kmp+yor3KQwA1+MCzQP7ItDNkP38UmVLnvB/cYk/IvehCUqS3dg== +"@docusaurus/theme-translations@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.1.0.tgz#1c6bdc19723a87e042b5e89b6cdc8b747fdcbc13" + integrity sha512-DApE4AbDI+WBajihxB54L4scWQhVGNZAochlC9fkbciPuFAgdRBD3NREb0rgfbKexDC/rioppu/WJA0u8tS+yA== dependencies: fs-extra "^11.1.1" tslib "^2.6.0" -"@docusaurus/tsconfig@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@docusaurus/tsconfig/-/tsconfig-3.0.0.tgz#89ce292cff8debaa03d93d651ffd6375561e7dab" - integrity sha512-yR9sng4izFudS+v1xV5yboNfc1hATMDpYp9iYfWggbBDwKSm0J1IdIgkygRnqC/AWs1ARUQUpG0gFotPCE/4Ew== - -"@docusaurus/types@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.0.0.tgz#3edabe43f70b45f81a48f3470d6a73a2eba41945" - integrity sha512-Qb+l/hmCOVemReuzvvcFdk84bUmUFyD0Zi81y651ie3VwMrXqC7C0E7yZLKMOsLj/vkqsxHbtkAuYMI89YzNzg== - dependencies: - "@types/history" "^4.7.11" - "@types/react" "*" - commander "^5.1.0" - joi "^17.9.2" - react-helmet-async "^1.3.0" - utility-types "^3.10.0" - webpack "^5.88.1" - webpack-merge "^5.9.0" +"@docusaurus/tsconfig@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/tsconfig/-/tsconfig-3.1.0.tgz#ab6936a72b5a52904f37c0ef7d65c6d6aa6ab46d" + integrity sha512-PE6fSuj5gJy5sNC1OO+bYAU1/xZH5YqddGjhrNu3/T7OAUroqkMZfVl13Tz70CjYB8no4OWcraqSkObAeNdIcQ== -"@docusaurus/types@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.0.1.tgz#4fe306aa10ef7c97dbc07588864f6676a40f3b6f" - integrity sha512-plyX2iU1tcUsF46uQ01pAd4JhexR7n0iiQ5MSnBFX6M6NSJgDYdru/i1/YNPKOnQHBoXGLHv0dNT6OAlDWNjrg== +"@docusaurus/types@3.1.0", "@docusaurus/types@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.1.0.tgz#1dbb60ea38e98ba869f8d7ea2323e4460f05ab65" + integrity sha512-VaczOZf7+re8aFBIWnex1XENomwHdsSTkrdX43zyor7G/FY4OIsP6X28Xc3o0jiY0YdNuvIDyA5TNwOtpgkCVw== dependencies: + "@mdx-js/mdx" "^3.0.0" "@types/history" "^4.7.11" "@types/react" "*" commander "^5.1.0" @@ -1834,30 +1624,30 @@ webpack "^5.88.1" webpack-merge "^5.9.0" -"@docusaurus/utils-common@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.0.1.tgz#111f450089d5f0a290c0c25f8a574a270d08436f" - integrity sha512-W0AxD6w6T8g6bNro8nBRWf7PeZ/nn7geEWM335qHU2DDDjHuV4UZjgUGP1AQsdcSikPrlIqTJJbKzer1lRSlIg== +"@docusaurus/utils-common@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.1.0.tgz#846ce9c12b9ebf1ebf513e65303fb8158dcd2e1b" + integrity sha512-SfvnRLHoZ9bwTw67knkSs7IcUR0GY2SaGkpdB/J9pChrDiGhwzKNUhcieoPyPYrOWGRPk3rVNYtoy+Bc7psPAw== dependencies: tslib "^2.6.0" -"@docusaurus/utils-validation@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.0.1.tgz#3c5f12941b328a19fc9acb34d070219f3e865ec6" - integrity sha512-ujTnqSfyGQ7/4iZdB4RRuHKY/Nwm58IIb+41s5tCXOv/MBU2wGAjOHq3U+AEyJ8aKQcHbxvTKJaRchNHYUVUQg== +"@docusaurus/utils-validation@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.1.0.tgz#3e88c42caec29cd3eedbbd17af97f88719613340" + integrity sha512-dFxhs1NLxPOSzmcTk/eeKxLY5R+U4cua22g9MsAMiRWcwFKStZ2W3/GDY0GmnJGqNS8QAQepJrxQoyxXkJNDeg== dependencies: - "@docusaurus/logger" "3.0.1" - "@docusaurus/utils" "3.0.1" + "@docusaurus/logger" "3.1.0" + "@docusaurus/utils" "3.1.0" joi "^17.9.2" js-yaml "^4.1.0" tslib "^2.6.0" -"@docusaurus/utils@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.0.1.tgz#c64f68980a90c5bc6d53a5b8f32deb9026b1e303" - integrity sha512-TwZ33Am0q4IIbvjhUOs+zpjtD/mXNmLmEgeTGuRq01QzulLHuPhaBTTAC/DHu6kFx3wDgmgpAlaRuCHfTcXv8g== +"@docusaurus/utils@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.1.0.tgz#6ef821bc4c40a91586835a385110b5c0082c590c" + integrity sha512-LgZfp0D+UBqAh7PZ//MUNSFBMavmAPku6Si9x8x3V+S318IGCNJ6hUr2O29UO0oLybEWUjD5Jnj9IUN6XyZeeg== dependencies: - "@docusaurus/logger" "3.0.1" + "@docusaurus/logger" "3.1.0" "@svgr/webpack" "^6.5.1" escape-string-regexp "^4.0.0" file-loader "^6.2.0" @@ -2127,7 +1917,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.9": version "0.3.20" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== @@ -2223,10 +2013,10 @@ "@pnpm/network.ca-file" "^1.0.1" config-chain "^1.1.11" -"@polka/url@^1.0.0-next.20": - version "1.0.0-next.23" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.23.tgz#498e41218ab3b6a1419c735e5c6ae2c5ed609b6c" - integrity sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg== +"@polka/url@^1.0.0-next.24": + version "1.0.0-next.24" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.24.tgz#58601079e11784d20f82d0585865bb42305c4df3" + integrity sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ== "@sideway/address@^4.1.3": version "4.1.4" @@ -2250,10 +2040,10 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== -"@sindresorhus/is@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-3.1.2.tgz#548650de521b344e3781fbdb0ece4aa6f729afb8" - integrity sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ== +"@sindresorhus/is@^4.6.0": + version "4.6.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" + integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== "@sindresorhus/is@^5.2.0": version "5.6.0" @@ -2466,9 +2256,9 @@ "@types/node" "*" "@types/connect-history-api-fallback@^1.3.5": - version "1.5.3" - resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.3.tgz#7793aa2160cef7db0ce5fe2b8aab621200f1a470" - integrity sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA== + version "1.5.4" + resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz#7de71645a103056b48ac3ce07b3520b819c1d5b3" + integrity sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw== dependencies: "@types/express-serve-static-core" "*" "@types/node" "*" @@ -2513,9 +2303,9 @@ "@types/estree" "*" "@types/eslint@*": - version "8.44.7" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.44.7.tgz#430b3cc96db70c81f405e6a08aebdb13869198f5" - integrity sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ== + version "8.56.2" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.2.tgz#1c72a9b794aa26a8b94ad26d5b9aa51c8a6384bb" + integrity sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw== dependencies: "@types/estree" "*" "@types/json-schema" "*" @@ -2685,16 +2475,16 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node-forge@^1.3.0": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.9.tgz#0fe4a7ba69c0b173f56e6de65d0eae2c1dd4bbfe" - integrity sha512-meK88cx/sTalPSLSoCzkiUB4VPIFHmxtXm5FaaqRDqBX2i/Sy8bJ4odsan0b20RBjPh06dAQ+OTTdnyQyhJZyQ== + version "1.3.11" + resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.11.tgz#0972ea538ddb0f4d9c2fa0ec5db5724773a604da" + integrity sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ== dependencies: "@types/node" "*" "@types/node@*": - version "20.9.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.9.1.tgz#9d578c610ce1e984adda087f685ace940954fe19" - integrity sha512-HhmzZh5LSJNS5O8jQKpJ/3ZcrrlG6L70hpGqMIAoM9YVD0YBRNWYsfwcXq8VnSjlNpCpgLzMXdiPo+dxcvSmiA== + version "20.11.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.0.tgz#8e0b99e70c0c1ade1a86c4a282f7b7ef87c9552f" + integrity sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ== dependencies: undici-types "~5.26.4" @@ -2714,14 +2504,14 @@ integrity sha512-A0D0aTXvjlqJ5ZILMz3rNfDBOx9hHxLZYv2by47Sm/pqW35zzjusrZTryatjN/Rf8Us2gZrJD+KeHbUSTux1Cw== "@types/prop-types@*": - version "15.7.10" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.10.tgz#892afc9332c4d62a5ea7e897fe48ed2085bbb08a" - integrity sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A== + version "15.7.11" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" + integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== "@types/qs@*": - version "6.9.10" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.10.tgz#0af26845b5067e1c9a622658a51f60a3934d51e8" - integrity sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw== + version "6.9.11" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.11.tgz#208d8a30bc507bd82e03ada29e4732ea46a6bbda" + integrity sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ== "@types/range-parser@*": version "1.2.7" @@ -2729,9 +2519,9 @@ integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== "@types/react-router-config@*", "@types/react-router-config@^5.0.7": - version "5.0.10" - resolved "https://registry.yarnpkg.com/@types/react-router-config/-/react-router-config-5.0.10.tgz#1f7537b8d23ad6bb8e7609268fdd89b8b2de1eaf" - integrity sha512-Wn6c/tXdEgi9adCMtDwx8Q2vGty6TsPTc/wCQQ9kAlye8UqFxj0vGFWWuhywNfkwqth+SOgJxQTLTZukrqDQmQ== + version "5.0.11" + resolved "https://registry.yarnpkg.com/@types/react-router-config/-/react-router-config-5.0.11.tgz#2761a23acc7905a66a94419ee40294a65aaa483a" + integrity sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw== dependencies: "@types/history" "^4.7.11" "@types/react" "*" @@ -2755,9 +2545,9 @@ "@types/react" "*" "@types/react@*": - version "18.2.37" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.37.tgz#0f03af69e463c0f19a356c2660dbca5d19c44cae" - integrity sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw== + version "18.2.47" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.47.tgz#85074b27ab563df01fbc3f68dc64bf7050b0af40" + integrity sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -2776,9 +2566,9 @@ "@types/node" "*" "@types/scheduler@*": - version "0.16.6" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.6.tgz#eb26db6780c513de59bee0b869ef289ad3068711" - integrity sha512-Vlktnchmkylvc9SnwwwozTv04L/e1NykF5vgoQ0XTmI8DD+wxfjQuHuvHS3p0r2jz2x2ghPs2h1FVeDirIteWA== + 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/send@*": version "0.17.4" @@ -2827,9 +2617,9 @@ integrity sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA== "@types/ws@^8.5.5": - version "8.5.9" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.9.tgz#384c489f99c83225a53f01ebc3eddf3b8e202a8c" - integrity sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg== + version "8.5.10" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.10.tgz#4acfb517970853fa6574a3a6886791d04a396787" + integrity sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A== dependencies: "@types/node" "*" @@ -2839,9 +2629,9 @@ integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^17.0.8": - version "17.0.31" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.31.tgz#8fd0089803fd55d8a285895a18b88cb71a99683c" - integrity sha512-bocYSx4DI8TmdlvxqGpVNXOgCNR1Jj0gNPhhAY+iz1rgKDAaYrAYdFYnhDV1IFuiuVc9HkOwyDcFxaTElF3/wg== + version "17.0.32" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229" + integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog== dependencies: "@types/yargs-parser" "*" @@ -3000,14 +2790,14 @@ acorn-jsx@^5.0.0: integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.0.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.0.tgz#2097665af50fd0cf7a2dfccd2b9368964e66540f" - integrity sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA== + version "8.3.1" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.1.tgz#2f10f5b69329d90ae18c58bf1fa8fccd8b959a43" + integrity sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw== acorn@^8.0.0, acorn@^8.0.4, acorn@^8.7.1, acorn@^8.8.2: - version "8.11.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" - integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== address@^1.0.1, address@^1.1.2: version "1.2.2" @@ -3171,11 +2961,6 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== -array-flatten@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" @@ -3252,29 +3037,29 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" -babel-plugin-polyfill-corejs2@^0.4.6: - version "0.4.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz#b2df0251d8e99f229a8e60fc4efa9a68b41c8313" - integrity sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q== +babel-plugin-polyfill-corejs2@^0.4.7: + version "0.4.7" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.7.tgz#679d1b94bf3360f7682e11f2cb2708828a24fe8c" + integrity sha512-LidDk/tEGDfuHW2DWh/Hgo4rmnw3cduK6ZkOI1NPFceSK3n/yAGeOsNT7FLnSGHkXj3RHGSEVkN3FsCTY6w2CQ== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.4.3" + "@babel/helper-define-polyfill-provider" "^0.4.4" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.8.5: - version "0.8.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz#25c2d20002da91fe328ff89095c85a391d6856cf" - integrity sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ== +babel-plugin-polyfill-corejs3@^0.8.7: + version "0.8.7" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz#941855aa7fdaac06ed24c730a93450d2b2b76d04" + integrity sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA== dependencies: - "@babel/helper-define-polyfill-provider" "^0.4.3" + "@babel/helper-define-polyfill-provider" "^0.4.4" core-js-compat "^3.33.1" -babel-plugin-polyfill-regenerator@^0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz#d4c49e4b44614607c13fb769bcd85c72bb26a4a5" - integrity sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw== +babel-plugin-polyfill-regenerator@^0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.4.tgz#c6fc8eab610d3a11eb475391e52584bacfc020f4" + integrity sha512-S/x2iOCvDaCASLYsOOgWOq4bCfKYVqvO/uxjkaYyZ3rVsVE3CeAI/c84NpyuBBymEgNvHgjEot3a9/Z/kXvqsg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.4.3" + "@babel/helper-define-polyfill-provider" "^0.4.4" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" @@ -3346,12 +3131,10 @@ body-parser@1.20.1: unpipe "1.0.0" bonjour-service@^1.0.11: - version "1.1.1" - resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.1.1.tgz#960948fa0e0153f5d26743ab15baf8e33752c135" - integrity sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg== + version "1.2.1" + resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.2.1.tgz#eb41b3085183df3321da1264719fbada12478d02" + integrity sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw== dependencies: - array-flatten "^2.1.2" - dns-equal "^1.0.0" fast-deep-equal "^3.1.3" multicast-dns "^7.2.5" @@ -3403,17 +3186,7 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9, browserslist@^4.22.1: - version "4.22.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" - integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== - dependencies: - caniuse-lite "^1.0.30001541" - electron-to-chromium "^1.4.535" - node-releases "^2.0.13" - update-browserslist-db "^1.0.13" - -browserslist@^4.22.2: +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.22.2: version "4.22.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.2.tgz#704c4943072bd81ea18997f3bd2180e89c77874b" integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== @@ -3470,7 +3243,7 @@ cacheable-request@^10.2.8: normalize-url "^8.0.0" responselike "^3.0.0" -call-bind@^1.0.0, call-bind@^1.0.2: +call-bind@^1.0.0, call-bind@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== @@ -3517,10 +3290,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001538, caniuse-lite@^1.0.30001541: - version "1.0.30001563" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz#aa68a64188903e98f36eb9c56e48fba0c1fe2a32" - integrity sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001538: + version "1.0.30001576" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz#893be772cf8ee6056d6c1e2d07df365b9ec0a5c4" + integrity sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg== caniuse-lite@^1.0.30001565: version "1.0.30001572" @@ -3635,9 +3408,9 @@ cjs-module-lexer@^1.0.0: integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== clean-css@^5.2.2, clean-css@^5.3.2, clean-css@~5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.2.tgz#70ecc7d4d4114921f5d298349ff86a31a9975224" - integrity sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww== + version "5.3.3" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.3.tgz#b330653cd3bd6b75009cc25c714cae7b93351ccd" + integrity sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg== dependencies: source-map "~0.6.0" @@ -3684,9 +3457,9 @@ clsx@^1.2.1: integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== 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== co@^4.6.0: version "4.6.0" @@ -3881,21 +3654,21 @@ copy-webpack-plugin@^11.0.0: serialize-javascript "^6.0.0" core-js-compat@^3.31.0, core-js-compat@^3.33.1: - version "3.33.2" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.33.2.tgz#3ea4563bfd015ad4e4b52442865b02c62aba5085" - integrity sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw== + version "3.35.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.35.0.tgz#c149a3d1ab51e743bc1da61e39cb51f461a41873" + integrity sha512-5blwFAddknKeNgsjBzilkdQ0+YK8L1PfqPYq40NOYMYFSS38qj+hpTcLLWwpIwA2A5bje/x5jmVn2tzUMg9IVw== dependencies: - browserslist "^4.22.1" + browserslist "^4.22.2" core-js-pure@^3.30.2: - version "3.33.2" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.33.2.tgz#644830db2507ef84d068a70980ccd99c275f5fa6" - integrity sha512-a8zeCdyVk7uF2elKIGz67AjcXOxjRbwOLz8SbklEso1V+2DoW4OkAMZN9S9GBgvZIaqQi/OemFX4OiSoQEmg1Q== + version "3.35.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.35.0.tgz#4660033304a050215ae82e476bd2513a419fbb34" + integrity sha512-f+eRYmkou59uh7BPcyJ8MC76DiGhspj1KMxVIcF24tzP8NA9HVa1uC7BTW2tgx7E1QVCzDzsgp7kArrzhlz8Ew== core-js@^3.31.1: - version "3.33.2" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.33.2.tgz#312bbf6996a3a517c04c99b9909cdd27138d1ceb" - integrity sha512-XeBzWI6QL3nJQiHmdzbAOiMYqjrb7hwU7A39Qhvd/POSa/t9E1AeZyEZx3fNvp/vtM8zXwhoL0FsiS0hD0pruQ== + version "3.35.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.35.0.tgz#58e651688484f83c34196ca13f099574ee53d6b4" + integrity sha512-ntakECeqg81KqMueeGJ79Q5ZgQNR+6eaE8sxGCx62zMbAIj65q+uYvatToew3m6eAGdU4gNZwpZ34NMe4GYswg== core-util-is@~1.0.0: version "1.0.3" @@ -3938,7 +3711,7 @@ cosmiconfig@^7.0.1: path-type "^4.0.0" yaml "^1.10.0" -cosmiconfig@^8.2.0: +cosmiconfig@^8.3.5: version "8.3.6" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3" integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA== @@ -3983,18 +3756,18 @@ css-declaration-sorter@^6.3.1: integrity sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g== css-loader@^6.8.1: - version "6.8.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.8.1.tgz#0f8f52699f60f5e679eab4ec0fcd68b8e8a50a88" - integrity sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g== + version "6.9.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.9.0.tgz#0cc2f14df94ed97c526c5ae42b6b13916d1d8d0e" + integrity sha512-3I5Nu4ytWlHvOP6zItjiHlefBNtrH+oehq8tnQa2kO305qpVyx9XNIT1CXIj5bgCJs7qICBCkgCYxQLKPANoLA== dependencies: icss-utils "^5.1.0" - postcss "^8.4.21" + postcss "^8.4.31" postcss-modules-extract-imports "^3.0.0" postcss-modules-local-by-default "^4.0.3" - postcss-modules-scope "^3.0.0" + postcss-modules-scope "^3.1.0" postcss-modules-values "^4.0.0" postcss-value-parser "^4.2.0" - semver "^7.3.8" + semver "^7.5.4" css-minimizer-webpack-plugin@^4.2.2: version "4.2.2" @@ -4117,9 +3890,9 @@ csso@^4.2.0: css-tree "^1.1.2" csstype@^3.0.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" - integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== + 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" @@ -4501,7 +4274,7 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.4: +define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -4601,11 +4374,6 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg== - dns-packet@^5.2.2: version "5.6.1" resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" @@ -4665,9 +4433,9 @@ domhandler@^5.0.2, domhandler@^5.0.3: domelementtype "^2.3.0" dompurify@^3.0.5: - version "3.0.7" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.7.tgz#de8cab085ec28388b95ebf588244ab5f28096e1a" - integrity sha512-BViYTZoqP3ak/ULKOc101y+CtHDUvBsVgSxIF1ku0HmK6BRf+C03MC+tArMvOPtVtZp83DDh5puywKDu4sbVjQ== + version "3.0.8" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.0.8.tgz#e0021ab1b09184bc8af7e35c7dd9063f43a8a437" + integrity sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ== domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" @@ -4717,11 +4485,6 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.4.535: - version "1.4.588" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.588.tgz#d553f3c008e73488fb181fdf2601fdb0b1ffbb78" - integrity sha512-soytjxwbgcCu7nh5Pf4S2/4wa6UIu+A3p03U2yVr53qGxi1/VTR3ENI+p50v+UxqqZAfl48j3z55ud7VHIOr9w== - electron-to-chromium@^1.4.601: version "1.4.617" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.617.tgz#3b0dde6c54e5f0f26db75ce6c6ae751e5df4bf75" @@ -5058,9 +4821,9 @@ fast-url-parser@1.1.3: punycode "^1.3.2" fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + version "1.16.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.16.0.tgz#83b9a9375692db77a822df081edb6a9cf6839320" + integrity sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA== dependencies: reusify "^1.0.4" @@ -5170,9 +4933,9 @@ flat@^5.0.2: integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== follow-redirects@^1.0.0: - version "1.15.3" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" - integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + version "1.15.4" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.4.tgz#cdc7d308bf6493126b17ea2191ea0ccf3e535adf" + integrity sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw== fork-ts-checker-webpack-plugin@^6.5.0: version "6.5.3" @@ -5218,16 +4981,7 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -fs-extra@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" - integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-extra@^11.2.0: +fs-extra@^11.1.1, fs-extra@^11.2.0: version "11.2.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== @@ -5546,17 +5300,23 @@ hast-util-to-estree@^3.0.0: zwitch "^2.0.0" hast-util-to-jsx-runtime@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.2.0.tgz#ffd59bfcf0eb8321c6ed511bfc4b399ac3404bc2" - integrity sha512-wSlp23N45CMjDg/BPW8zvhEi3R+8eRE1qFbjEyAUzMCzu2l1Wzwakq+Tlia9nkCtEl5mDxa7nKHsvYJ6Gfn21A== + version "2.3.0" + resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz#3ed27caf8dc175080117706bf7269404a0aa4f7c" + integrity sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ== dependencies: + "@types/estree" "^1.0.0" "@types/hast" "^3.0.0" "@types/unist" "^3.0.0" comma-separated-tokens "^2.0.0" + devlop "^1.0.0" + estree-util-is-identifier-name "^3.0.0" hast-util-whitespace "^3.0.0" + mdast-util-mdx-expression "^2.0.0" + mdast-util-mdx-jsx "^3.0.0" + mdast-util-mdxjs-esm "^2.0.0" property-information "^6.0.0" space-separated-tokens "^2.0.0" - style-to-object "^0.4.0" + style-to-object "^1.0.0" unist-util-position "^5.0.0" vfile-message "^4.0.0" @@ -5677,9 +5437,9 @@ html-void-elements@^3.0.0: integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== html-webpack-plugin@^5.5.3: - version "5.5.3" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz#72270f4a78e222b5825b296e5e3e1328ad525a3e" - integrity sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg== + version "5.6.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.6.0.tgz#50a8fa6709245608cb00e811eacecb8e0d7b7ea0" + integrity sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw== dependencies: "@types/html-minifier-terser" "^6.0.0" html-minifier-terser "^6.0.2" @@ -5801,9 +5561,9 @@ ignore@^5.2.0, ignore@^5.2.4: integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== image-size@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.0.2.tgz#d778b6d0ab75b2737c1556dd631652eb963bc486" - integrity sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg== + version "1.1.1" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.1.1.tgz#ddd67d4dc340e52ac29ce5f546a09f4e29e840ac" + integrity sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ== dependencies: queue "6.0.2" @@ -5886,6 +5646,11 @@ inline-style-parser@0.1.1: resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== +inline-style-parser@0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.2.tgz#d498b4e6de0373458fc610ff793f6b14ebf45633" + integrity sha512-EcKzdTHVe8wFVOGEYXiW9WmJXPjqi1T+234YpJr98RiFYKHV3cdy1+3mkTE+KHTHxFFLH51SfaGOoUdW+v7ViQ== + "internmap@1 - 2": version "2.0.3" resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" @@ -6538,7 +6303,7 @@ jest@^29.7.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^1.18.2, jiti@^1.20.0: +jiti@^1.20.0: version "1.21.0" resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== @@ -7030,9 +6795,9 @@ mdast-util-phrasing@^4.0.0: unist-util-is "^6.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" @@ -7042,6 +6807,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@^2.0.0: version "2.1.0" @@ -7771,9 +7537,9 @@ mimic-response@^4.0.0: integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg== mini-css-extract-plugin@^2.7.6: - version "2.7.6" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz#282a3d38863fddcd2e0c220aaed5b90bc156564d" - integrity sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw== + version "2.7.7" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.7.tgz#4acf02f362c641c38fb913bfcb7ca2fc4a7cf339" + integrity sha512-+0n11YGyRavUR3IlaOzJ0/4Il1avMvJ1VJfhWfCn24ITQXhRr1gghbhhrda6tgtNcpZaWKdSuwKq20Jb7fnlyw== dependencies: schema-utils "^4.0.0" @@ -7799,10 +7565,10 @@ mri@^1.1.0: resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== -mrmime@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" - integrity sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw== +mrmime@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4" + integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw== ms@2.0.0: version "2.0.0" @@ -7827,7 +7593,7 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" -nanoid@^3.3.6: +nanoid@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== @@ -7856,11 +7622,11 @@ no-case@^3.0.4: tslib "^2.0.3" node-emoji@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.1.0.tgz#93c99b0d3dfe7d5e37c056aded389e013c72d0c5" - integrity sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A== + version "2.1.3" + resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.1.3.tgz#93cfabb5cc7c3653aa52f29d6ffb7927d8047c06" + integrity sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA== dependencies: - "@sindresorhus/is" "^3.1.2" + "@sindresorhus/is" "^4.6.0" char-regex "^1.0.2" emojilib "^2.4.0" skin-tone "^2.0.0" @@ -7875,11 +7641,6 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.13: - version "2.0.13" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" - integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== - node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" @@ -7945,12 +7706,12 @@ object-keys@^1.1.1: integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.0: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" + call-bind "^1.0.5" + define-properties "^1.2.1" has-symbols "^1.0.3" object-keys "^1.1.1" @@ -8311,13 +8072,13 @@ postcss-discard-unused@^5.1.0: postcss-selector-parser "^6.0.5" postcss-loader@^7.3.3: - version "7.3.3" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.3.3.tgz#6da03e71a918ef49df1bb4be4c80401df8e249dd" - integrity sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA== + version "7.3.4" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.3.4.tgz#aed9b79ce4ed7e9e89e56199d25ad1ec8f606209" + integrity sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A== dependencies: - cosmiconfig "^8.2.0" - jiti "^1.18.2" - semver "^7.3.8" + cosmiconfig "^8.3.5" + jiti "^1.20.0" + semver "^7.5.4" postcss-merge-idents@^5.1.1: version "5.1.1" @@ -8391,10 +8152,10 @@ postcss-modules-local-by-default@^4.0.3: postcss-selector-parser "^6.0.2" postcss-value-parser "^4.1.0" -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== +postcss-modules-scope@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.1.0.tgz#fbfddfda93a31f310f1d152c2bb4d3f3c5592ee0" + integrity sha512-SaIbK8XW+MZbd0xHPf7kdfA/3eOt7vxJ72IRecn3EzuZVLr1r0orzf0MX/pN8m+NMDoo6X/SQd8oeKqGZd8PXg== dependencies: postcss-selector-parser "^6.0.4" @@ -8499,9 +8260,9 @@ postcss-reduce-transforms@^5.1.0: postcss-value-parser "^4.2.0" postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: - version "6.0.13" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" - integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== + version "6.0.15" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz#11cc2b21eebc0b99ea374ffb9887174855a01535" + integrity sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" @@ -8538,12 +8299,12 @@ postcss-zindex@^5.1.0: resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-5.1.0.tgz#4a5c7e5ff1050bd4c01d95b1847dfdcc58a496ff" integrity sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A== -postcss@^8.4.17, postcss@^8.4.21, postcss@^8.4.26: - version "8.4.31" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" - integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== +postcss@^8.4.17, postcss@^8.4.21, postcss@^8.4.26, postcss@^8.4.31: + version "8.4.33" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.33.tgz#1378e859c9f69bf6f638b990a0212f43e2aaa742" + integrity sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg== dependencies: - nanoid "^3.3.6" + nanoid "^3.3.7" picocolors "^1.0.0" source-map-js "^1.0.2" @@ -8578,9 +8339,9 @@ prism-react-renderer@^2.1.0: clsx "^1.2.1" prism-react-renderer@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-2.3.0.tgz#5f8f615af6af8201a0b734bd8c946df3d818ea54" - integrity sha512-UYRg2TkVIaI6tRVHC5OJ4/BxqPUxJkJvq/odLT/ykpt1zGYXooNperUxQcCvi87LyRnR4nCh81ceOA+e7nrydg== + version "2.3.1" + resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-2.3.1.tgz#e59e5450052ede17488f6bc85de1553f584ff8d5" + integrity sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw== dependencies: "@types/prismjs" "^1.26.0" clsx "^2.0.0" @@ -8756,12 +8517,21 @@ react-error-overlay@^6.0.11: resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.11.tgz#92835de5841c5cf08ba00ddd2d677b6d17ff9adb" integrity sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg== -react-fast-compare@^3.2.0: +react-fast-compare@^3.2.0, react-fast-compare@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== -react-helmet-async@*, react-helmet-async@^1.3.0: +react-helmet-async@*: + version "2.0.4" + resolved "https://registry.yarnpkg.com/react-helmet-async/-/react-helmet-async-2.0.4.tgz#50a4377778f380ed1d0136303916b38eff1bf153" + integrity sha512-yxjQMWposw+akRfvpl5+8xejl4JtUlHnEBcji6u8/e6oc7ozT+P9PNTWMhCbz2y9tc5zPegw2BvKjQA+NwdEjQ== + dependencies: + invariant "^2.2.4" + react-fast-compare "^3.2.2" + shallowequal "^1.1.0" + +react-helmet-async@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/react-helmet-async/-/react-helmet-async-1.3.0.tgz#7bd5bf8c5c69ea9f02f6083f14ce33ef545c222e" integrity sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg== @@ -8897,9 +8667,9 @@ regenerate@^1.4.2: integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" - integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== + version "0.14.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" + integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== regenerator-transform@^0.15.2: version "0.15.2" @@ -9017,9 +8787,9 @@ remark-parse@^11.0.0: unified "^11.0.0" remark-rehype@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-11.0.0.tgz#7f21c08738bde024be5f16e4a8b13e5d7a04cf6b" - integrity sha512-vx8x2MDMcxuE4lBmQ46zYUDfcFMmvg80WYX+UNLeG6ixjdCCLcw1lrgAukwBTuOFsS78eoAedHGn9sNM0w7TPw== + version "11.1.0" + resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-11.1.0.tgz#d5f264f42bcbd4d300f030975609d01a1697ccdc" + integrity sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g== dependencies: "@types/hast" "^3.0.0" "@types/mdast" "^4.0.0" @@ -9279,7 +9049,7 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4: +semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -9306,9 +9076,9 @@ send@0.18.0: statuses "2.0.1" serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" - integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: randombytes "^2.1.0" @@ -9422,12 +9192,12 @@ signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== sirv@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.3.tgz#ca5868b87205a74bef62a469ed0296abceccd446" - integrity sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA== + version "2.0.4" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" + integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ== dependencies: - "@polka/url" "^1.0.0-next.20" - mrmime "^1.0.0" + "@polka/url" "^1.0.0-next.24" + mrmime "^2.0.0" totalist "^3.0.0" sisteransi@^1.0.5: @@ -9568,9 +9338,9 @@ statuses@2.0.1: integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== std-env@^3.0.1: - version "3.5.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.5.0.tgz#83010c9e29bd99bf6f605df87c19012d82d63b97" - integrity sha512-JGUEaALvL0Mf6JCfYnJOTcobY+Nc7sG/TemDRBqCA0wEr4DER7zDchaaixTlmOxAjG1uRJmX82EQcxwTQTkqVA== + version "3.7.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== string-length@^4.0.1: version "4.0.2" @@ -9675,6 +9445,13 @@ style-to-object@^0.4.0: dependencies: inline-style-parser "0.1.1" +style-to-object@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.5.tgz#5e918349bc3a39eee3a804497d97fcbbf2f0d7c0" + integrity sha512-rDRwHtoDD3UMMrmZ6BzOW0naTjMsVZLIjsGleSKS/0Oz+cgCfAPRspaqJuE8rDzpKha/nEvnM0IF4seEAZUTKQ== + dependencies: + inline-style-parser "0.2.2" + stylehacks@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" @@ -9743,20 +9520,20 @@ tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== terser-webpack-plugin@^5.3.7, terser-webpack-plugin@^5.3.9: - version "5.3.9" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#832536999c51b46d468067f9e37662a3b96adfe1" - integrity sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA== + version "5.3.10" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" + integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== dependencies: - "@jridgewell/trace-mapping" "^0.3.17" + "@jridgewell/trace-mapping" "^0.3.20" jest-worker "^27.4.5" schema-utils "^3.1.1" serialize-javascript "^6.0.1" - terser "^5.16.8" + terser "^5.26.0" -terser@^5.10.0, terser@^5.15.1, terser@^5.16.8: - version "5.24.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.24.0.tgz#4ae50302977bca4831ccc7b4fef63a3c04228364" - integrity sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw== +terser@^5.10.0, terser@^5.15.1, terser@^5.26.0: + version "5.26.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.26.0.tgz#ee9f05d929f4189a9c28a0feb889d96d50126fe1" + integrity sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.8.2" @@ -10383,9 +10160,9 @@ ws@^7.3.1: integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== ws@^8.13.0: - version "8.14.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f" - integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g== + version "8.16.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.16.0.tgz#d1cd774f36fbc07165066a60e40323eab6446fd4" + integrity sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ== xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: version "5.1.0"