Vouvoiement, libreDecision : bouton + URL

- Vouvoiement partout dans les pages numerique (cloud-libre, logiciel-libre, wot)
- Bouton "Ouvrir libreDecision" dans home AxisBlock (Décision collective)
  - AxisAction supporte href pour liens externes
  - URL prod : decision.librodrome.org
- Labels "Ouvrir libreDecision" (sans Ğ) dans citoyenne/index et [slug]
- app.config.ts : URL prod libredecision mise à jour

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Yvv
2026-03-23 02:37:42 +01:00
parent b9e6b4a96c
commit 99a8b84164
8 changed files with 283 additions and 60 deletions

View File

@@ -52,16 +52,18 @@
<div v-if="item.actions?.length" class="axis-actions">
<!-- Primary row -->
<div class="axis-actions-row">
<button
<component
:is="action.href ? 'a' : 'button'"
v-for="action in primaryActions(item.actions)"
:key="action.id"
v-bind="action.href ? { href: action.href, target: '_blank', rel: 'noopener noreferrer' } : {}"
class="axis-action-btn"
:class="{ 'axis-action-btn--highlight': action.highlight }"
@click.stop="handleAction(action.id)"
@click.stop="!action.href && handleAction(action.id)"
>
<div :class="iconClass(action.icon)" class="h-3.5 w-3.5" />
{{ action.label }}
</button>
</component>
</div>
<!-- Secondary row -->
<div v-if="secondaryActions(item.actions).length" class="axis-actions-secondary">
@@ -91,6 +93,7 @@ interface AxisAction {
highlight?: boolean
secondary?: boolean
to?: string
href?: string
}
interface AxisItem {