From e2e8f5cd1181b17e0407cee1c92b3e815b73b015 Mon Sep 17 00:00:00 2001 From: thibmonier Date: Mon, 14 Sep 2026 15:24:32 +0200 Subject: [PATCH] Add tailsfadmin/tailsfadmin-bundle (#2047) * Add tailsfadmin/tailsfadmin-bundle recipe: manifest * Add tailsfadmin recipe: default config * Add tailsfadmin recipe: asset_mapper paths * Post-install output in English * English comments (default config) * English comments (asset_mapper paths) * Fix CI: remove unsupported alias, use 4-space indentation - manifest.json: drop "aliases" (aliases are not supported in recipes-contrib) - config/packages/tailsfadmin.yaml: put the menu list dash on its own line so every indentation level is a multiple of 4 spaces (recipes-contrib lint) Co-Authored-By: Claude Opus 4.8 --------- Co-authored-by: Claude Opus 4.8 --- .../1.0/config/packages/tailsfadmin.yaml | 12 +++++++++ .../config/packages/tailsfadmin_assets.yaml | 12 +++++++++ .../tailsfadmin-bundle/1.0/manifest.json | 25 +++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100644 tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin.yaml create mode 100644 tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin_assets.yaml create mode 100644 tailsfadmin/tailsfadmin-bundle/1.0/manifest.json diff --git a/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin.yaml b/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin.yaml new file mode 100644 index 00000000..22d3f042 --- /dev/null +++ b/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin.yaml @@ -0,0 +1,12 @@ +# Default configuration for the tailsfadmin admin theme (Flex recipe). +# Adjust the menu to your application; `label` values are translation keys (i18n) +# or raw labels. See the bundle README. +tailsfadmin: + default_locale: fr + locales: ['fr', 'en', 'ar', 'es', 'de'] + rtl_locales: ['ar'] + menu: + - + group: menu.groups.menu + items: + - { label: menu.dashboard, path: /, icon: dashboard } diff --git a/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin_assets.yaml b/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin_assets.yaml new file mode 100644 index 00000000..b6e15803 --- /dev/null +++ b/tailsfadmin/tailsfadmin-bundle/1.0/config/packages/tailsfadmin_assets.yaml @@ -0,0 +1,12 @@ +# AssetMapper path for the bundle's Stimulus controllers (Flex recipe). +# +# The bundle's prepend() does not survive the Flex config merge, so the controllers +# path (and the FullCalendar vendor-src shim) is declared here, on the host side. +# Kept in a SEPARATE file on purpose: Symfony merges framework.asset_mapper.paths +# from every config/packages/ file, so this adds to your asset_mapper.yaml +# without overwriting it. +framework: + asset_mapper: + paths: + 'vendor/tailsfadmin/tailsfadmin-bundle/assets/controllers': 'bundles/tailsfadmin' + 'vendor/tailsfadmin/tailsfadmin-bundle/assets/vendor-src': 'bundles/tailsfadmin-vendor' diff --git a/tailsfadmin/tailsfadmin-bundle/1.0/manifest.json b/tailsfadmin/tailsfadmin-bundle/1.0/manifest.json new file mode 100644 index 00000000..2db2acde --- /dev/null +++ b/tailsfadmin/tailsfadmin-bundle/1.0/manifest.json @@ -0,0 +1,25 @@ +{ + "bundles": { + "Tailsfadmin\\TailsfadminBundle": ["all"] + }, + "copy-from-recipe": { + "config/": "%CONFIG_DIR%/" + }, + "post-install-output": [ + " tailsfadmin admin theme installed.", + "", + " The bundle ships no CDN dependency — two steps for the assets:", + "", + " 1. Vendor the components' third-party JS libs (ApexCharts, flatpickr, Dropzone, …):", + " php bin/console tailsfadmin:assets:install", + "", + " 2. Import the theme into your Tailwind entrypoint (assets/styles/app.css):", + " @import \"tailwindcss\";", + " @import \"../../vendor/tailsfadmin/tailsfadmin-bundle/assets/styles/theme.css\";", + "", + " Then compile: php bin/console tailwind:build && php bin/console asset-map:compile", + "", + " The controllers' AssetMapper path is already set (config/packages/tailsfadmin_assets.yaml).", + " Documentation: https://github.com/thibmonier/tailsfadmin#readme" + ] +}