Dev-C-montee-en-version-du-dsfr-trouver-les-fichiers-css-et-js.Rmd
library(shinygouv)
knitr::opts_chunk$set(eval = FALSE)
Le principe de ce package est de proposer une transposition des fonctions de {shiny} à la charte graphique Marque Etat grâce au [design system de l’Etat](https://www.systeme-de-design.gouv.fr/elements-d-interface/composants/. Pour savoir si une montée de version est nécessaire, consultez les notes de versions du dsfr sur https://www.systeme-de-design.gouv.fr/a-propos/versions/version-courante.
Egalement, les fonctions shiny transposées peuvent évoluer : consultez ici les notes de versions de shiny : https://github.com/rstudio/shiny/blob/main/NEWS.md.
Dans le dossier “inst/” du package, nous allons créer deux dossiers:
Ci-dessous, nous prenons l’exemple de la montée de version de 1.6.0 vers 1.7.2
Indiquez ici le numéro de la nouvelle version à implémenter que vous pourrez trouver sur la page du dsfr
nouvelle_version <- "1.9.3"
1.7.2
qui se
trouve ici
tmp_ <- tempfile(fileext = ".zip")
download.file(
paste0(
"https://github.com/GouvernementFR/dsfr/releases/download/v",
nouvelle_version,
"/dsfr-v",
nouvelle_version,
".zip"
),
tmp_
)
unzip(tmp_, exdir = file.path(paste0("inst/dsfr-v", nouvelle_version)))
Pour une version minimale, les seuls fichiers à garder sont :
/ Racine du projet
└── index.html
└── dsfr.min.css
└── dsfr.module.min.js
└── dsfr.nomodule.min.js
└── favicon
└── font
└── icons
└── utility
└── icons
Vous pouvez lancer le contenu du script dev/tools/maj_version_dsfr.R pour votre version pour réaliser ce nettoyage
On pourra ensuite créer une fonction qui permettera d’ajouter les dépendances dans les applications {shiny}.
Dans le fichier “table_correspondance_shiny_dsfr.csv”, mettez
non
dans la colonne mis_a_jour
car pour le
moment, vous ne vous êtes pas assurer du bon foncionnement des
composants dans la nouvelle version.
corresp <- read.csv2(file.path("inst", paste0("v", nouvelle_version), "table_correspondance_shiny_dsfr.csv"))
corresp[, "mis_a_jour"] <- "non"
write.csv2(corresp, file.path("inst", paste0("v", nouvelle_version), "table_correspondance_shiny_dsfr.csv"))
Vous pouvez ouvrir une issue pour lister tous les fichiers HTML de
composants à vérifier avant de mettre oui
dans la colonne
mis_a_jour
Quand tous les dossiers sont prêt, pour garder trace de la version du dsfr utilisée dans {shinygouv}, nous stockons celle en cours dans le fichier DESCRIPTION
desc::desc_set("VersionDsfr" = nouvelle_version)