95 lines
3.1 KiB
Makefile
95 lines
3.1 KiB
Makefile
set shell := ["fish", "-c"]
|
|
|
|
cacheFolder := ".cache"
|
|
eslintCacheFile := "eslintcache"
|
|
prettierCacheFile := "prettiercache"
|
|
stylelintCacheFile := "stylelintcache"
|
|
|
|
# Liste toutes les recettes
|
|
list:
|
|
@just --list --list-heading 'Recettes disponibles :'\n'' --unsorted
|
|
|
|
# Démarre le conteneur ddev
|
|
start:
|
|
ddev start
|
|
|
|
# Arrête le conteneur ddev
|
|
stop:
|
|
ddev stop
|
|
|
|
# Met à jour les dépendances composer et npm
|
|
update:
|
|
composer update
|
|
pnpm update --latest
|
|
|
|
# Formatte avec Prettier et dprint
|
|
format:
|
|
@echo "Formatage de l'ensemble du code avec Prettier et dprint."
|
|
pnpm prettier \
|
|
--cache \
|
|
--cache-location "{{ cacheFolder }}/{{ prettierCacheFile }}" \
|
|
--ignore-unknown \
|
|
--write \
|
|
.
|
|
dprint fmt
|
|
|
|
# Compile, minifie et optimise Sass vers CSS
|
|
build-css:
|
|
pnpm sass \
|
|
--update \
|
|
"web/app/themes/haiku-atelier-2024/src/sass":"web/app/themes/haiku-atelier-2024/assets/css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/main.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/main.css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-panier.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-panier.css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-accueil.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-accueil.css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-boutique.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-boutique.css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-a-propos.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-a-propos.css"
|
|
pnpm lightningcss \
|
|
--bundle \
|
|
--minify \
|
|
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-contact.min.css" \
|
|
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-contact.css"
|
|
|
|
# Compile le CSS à chaque changement de fichier
|
|
watch-css:
|
|
pnpm sass \
|
|
--update \
|
|
--watch \
|
|
"web/app/themes/haiku-atelier-2024/src/sass":"web/app/themes/haiku-atelier-2024/assets/css"
|
|
|
|
# Compile TypeScript en JavaScript
|
|
build-js:
|
|
pnpm vite build
|
|
|
|
# Compile TypeScript à chaque changement de fichier
|
|
watch-js:
|
|
watchexec -w "web/app/themes/haiku-atelier-2024/src/scripts" just build-js
|
|
|
|
# Vérifie le code TypeScript avec des analyseurs statiques
|
|
lint-js:
|
|
-pnpm eslint "web/app/themes/haiku-atelier-2024/src/scripts"
|
|
-pnpm biome check --reporter=summary "web/app/themes/haiku-atelier-2024/src/scripts"
|
|
-pnpm oxlint "web/app/themes/haiku-atelier-2024/src/scripts"
|
|
|
|
# Vérifie le code TypeScript mort avec knip
|
|
lint-code-mort:
|
|
-pnpm knip
|