Aller au contenu principal

Docusaurus 2.3

· 5 minutes de lecture
Sébastien Lorber
Mainteneur de Docusaurus, rédacteur de This Week In React

We are happy to announce Docusaurus 2.3.

La mise à jour devrait être facile : comme expliqué dans notre documentation du processus de publication, les versions mineures respectent le versionnage sémantique.

Docusaurus 2.2 social card

Points importants

Plugin Google Tag Manager

Google Tag Manager est un système de gestion des balises qui offre une grande flexibilité. Il permet aux équipes d'analyse et de marketing de charger facilement d'autres traceurs tiers et des balises d'analyse des incendies.

We now have a @docusaurus/plugin-google-tag-manager package that you can use alongside or as an alternative to the existing gtag.js plugin (refer to this doc to understand when to use which solution).

Google met progressivement fin à Universal Analytics

Google will sunset its Universal Analytics on July 1, 2023, and ask users to migrate to Google Analytics 4.

Therefore, we are also deprecating our existing @docusaurus/plugin-google-analytics package. Docusaurus users should create a new Google Analytics 4 property, and migrate to the gtag.js plugin, or the Google Tag Manager plugin. Refer to the dedicated Docusaurus issue for details and questions.

Prise en charge de la chaîne de requête pour les onglets

Il est maintenant possible de lier un onglet sélectionné à un paramètre de chaîne de requête. When a tab is selected, it will be stored in your browser URL as a ?qs-param=tab-value search parameter.

Cette fonction permet de créer des liens profonds vers un onglet de documentation spécifique qui sera présélectionné au chargement de la page.

When used alongside the groupId prop, the query string tab value takes precedence over the localStorage value.

Make sure to check the documentation and the demo below to understand how it works:

<Tabs groupId="current-os" queryString>
<TabItem value="android" label="Android">
Android
</TabItem>
<TabItem value="ios" label="iOS">
iOS
</TabItem>
</Tabs>
http://localhost:3000

Android

Admonitions imbriquées

Il est désormais possible d'imbriquer une admonition dans une autre en ajoutant des deux-points supplémentaires pour l'admonition extérieure/enveloppante :

::::tip[nested admonitions]

You can now nest one admonition within another!

:::danger

Use this sparingly when it makes sense.

:::

::::
des admonitions imbriquées

Vous pouvez désormais imbriquer une admonition dans une autre !

danger

Utilisez ceci avec parcimonie quand cela a du sens.

Blog createFeedItems

A new blog plugin option feedOptions.createFeedItems gives you more control over the RSS/Atom feed generation. Il est maintenant possible de transformer/filtrer/limiter les éléments de flux grâce à un nouveau callback.

docusaurus.config.js
[
'@docusaurus/preset-classic',
{
blog: {
feedOptions: {
createFeedItems: async (params) => {
const {blogPosts, defaultCreateFeedItems, ...rest} = params;
return defaultCreateFeedItems({
// keep only the 10 most recent blog posts in the feed
blogPosts: blogPosts.filter((item, index) => index < 10),
...rest,
});
},
},
},
},
];

Traductions

Nous avons ajouté ou terminé la prise en charge par défaut de la traduction du thème pour plusieurs langues :

astuce

Terminer les traductions du thème est un effort en cours et un moyen facile de contribuer à Docusaurus. Nous ajoutons régulièrement de nouvelles fonctionnalités de thème, pour lesquelles nous avons souvent besoin de nouvelles traductions.

Autres modifications

Voici les autres changements notables :

  • #8463 and #8328: fix some annoying Docusaurus layout issues
  • #8539: Algolia plugin options.searchPagePath should be correctly applied to search modal footer
  • #8462: Algolia plugin now makes it easier to transform displayed search results with custom logic
  • #8397: the deploy CLI now understands git url insteadOf config

Check the 2.3.0 changelog entry for an exhaustive list of changes.