fix : layout style client + admin
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 2m3s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Failing after 10s

This commit is contained in:
2026-06-08 16:23:49 +02:00
parent 5c35f4b8f0
commit 51676ca195
12 changed files with 22 additions and 45 deletions
@@ -9,7 +9,7 @@
v-bind="{ ariaLabel: t('commercial.clients.edit.back') }"
@click="goBack"
/>
<h1 class="text-[30px] font-bold text-m-primary">{{ headerTitle }}</h1>
<h1 class="text-[30px] font-semibold text-m-primary">{{ headerTitle }}</h1>
</div>
<!-- Etats de chargement / introuvable. -->
@@ -9,7 +9,7 @@
v-bind="{ ariaLabel: t('commercial.clients.consultation.back') }"
@click="goBack"
/>
<h1 class="text-[30px] font-bold text-m-primary">{{ headerTitle }}</h1>
<h1 class="text-[30px] font-semibold text-m-primary">{{ headerTitle }}</h1>
<!-- gap-12 = 48px : meme espacement que Ajouter / Filtres du repertoire. -->
<div class="ml-auto flex items-center gap-12">
@@ -39,7 +39,7 @@
:per-page="itemsPerPage"
:per-page-options="itemsPerPageOptions"
row-clickable
table-class="table-fixed clients-table"
table-class="table-fixed"
:empty-message="t('commercial.clients.empty')"
@row-click="onRowClick"
@update:page="goToPage"
@@ -56,7 +56,7 @@
<span
v-for="site in (item.sites as ClientSite[])"
:key="site.id"
class="inline-flex items-center rounded-full px-2 py-0.5 text-sm font-medium text-white"
class="inline-flex items-center rounded-full px-2 py-0.5 font-medium text-white"
:style="{ backgroundColor: site.color }"
>
{{ site.name }}
@@ -419,25 +419,3 @@ onMounted(() => {
})
})
</script>
<style scoped>
/*
* Surcharge du style par defaut de MalioDataTable pour le repertoire client :
* le composant rend les titres de colonne et le corps en bleu (text-m-primary),
* en 20px (titres) / 18px (corps). Demande : titres NOIRS a 16px, corps NOIR a 14px.
* Les badges de site (text-white / text-xs) gardent leur style propre (plus
* specifique sur leur span).
*/
:deep(.clients-table thead th) {
font-size: 16px;
}
:deep(.clients-table thead th span) {
color: #000;
}
:deep(.clients-table tbody td) {
color: #000;
font-size: 14px;
}
</style>
@@ -9,7 +9,7 @@
v-bind="{ ariaLabel: t('commercial.clients.form.back') }"
@click="goBack"
/>
<h1 class="text-[32px] font-bold text-m-primary">{{ t('commercial.clients.form.title') }}</h1>
<h1 class="text-[30px] font-semibold text-m-primary">{{ t('commercial.clients.form.title') }}</h1>
</div>
<!-- Formulaire principal (pre-onglets)
@@ -30,7 +30,7 @@
>
<template #cell-action="{ item }">
<span
class="inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium"
class="inline-flex items-center rounded-full px-2 py-0.5 font-medium"
:class="actionBadgeClass(item.action as string)"
>
{{ t(`audit.action.${item.action}`) }}
@@ -38,15 +38,14 @@
</template>
<template #cell-entityType="{ item }">
<span
class="text-xs"
:title="item.entityType as string"
>{{ formatEntityType(item.entityType as string) }}</span>
</template>
<template #cell-entityId="{ item }">
<span class="font-mono text-xs">{{ item.entityId }}</span>
<span>{{ item.entityId }}</span>
</template>
<template #cell-summary="{ item }">
<span class="text-xs text-gray-600">{{ item.summary }}</span>
<span class="text-gray-600">{{ item.summary }}</span>
</template>
</MalioDataTable>
+2 -2
View File
@@ -28,7 +28,7 @@
@update:per-page="setItemsPerPage"
>
<template #cell-code="{ item }">
<span class="font-mono text-xs">{{ item.code }}</span>
<span>{{ item.code }}</span>
</template>
<template #cell-permissions="{ item }">
{{ item.permissions }}
@@ -36,7 +36,7 @@
<template #cell-system="{ item }">
<span
v-if="item.isSystem"
class="inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 text-xs font-medium text-blue-800"
class="inline-flex items-center rounded-full bg-blue-100 px-2.5 py-0.5 font-medium text-blue-800"
>
{{ t('admin.roles.table.system') }}
</span>
+1 -1
View File
@@ -19,7 +19,7 @@
<template #cell-admin="{ item }">
<span
v-if="item.admin"
class="inline-flex items-center rounded-full bg-purple-100 px-2.5 py-0.5 text-xs font-medium text-purple-800"
class="inline-flex items-center rounded-full bg-purple-100 px-2.5 py-0.5 font-medium text-purple-800"
>
{{ t('admin.users.table.admin') }}
</span>
@@ -62,7 +62,7 @@
<MalioInputText
v-model="form.color"
placeholder="#RRGGBB"
input-class="w-full font-mono"
input-class="w-full"
required
/>
<!-- pb-4 sur le wrapper : simule le slot message du
+2 -2
View File
@@ -33,11 +33,11 @@
:style="{ backgroundColor: item.color }"
class="inline-block size-5 rounded-full border border-neutral-200"
/>
<span class="font-mono text-xs">{{ item.color }}</span>
<span>{{ item.color }}</span>
</span>
</template>
<template #cell-fullAddress="{ item }">
<span class="line-clamp-2 text-xs text-neutral-600">
<span class="line-clamp-2 text-neutral-600">
{{ item.fullAddress }}
</span>
</template>
+4 -4
View File
@@ -7,7 +7,7 @@
"name": "starseed-frontend",
"hasInstallScript": true,
"dependencies": {
"@malio/layer-ui": "^1.7.6",
"@malio/layer-ui": "^1.7.7",
"@nuxt/icon": "^2.2.1",
"@nuxtjs/i18n": "^10.2.3",
"@nuxtjs/tailwindcss": "^6.14.0",
@@ -1847,9 +1847,9 @@
"license": "MIT"
},
"node_modules/@malio/layer-ui": {
"version": "1.7.6",
"resolved": "https://gitea.malio.fr/api/packages/MALIO-DEV/npm/%40malio%2Flayer-ui/-/1.7.6/layer-ui-1.7.6.tgz",
"integrity": "sha512-ZyukXUPZo0lfXFJr2rxYc1Z+eBQOJQnth6GusewZKmyDXkW3T/khD80ZoE2S7r1jBqzgqiBwr4byrg/wfJ8fbg==",
"version": "1.7.7",
"resolved": "https://gitea.malio.fr/api/packages/MALIO-DEV/npm/%40malio%2Flayer-ui/-/1.7.7/layer-ui-1.7.7.tgz",
"integrity": "sha512-MLHDtOzUxcCwIBGWj4FcUMLQTExtGD29uLvpU+IA6qr7gCj9kZ9fGZDu76LXxuJJdfBwzZmenuZioE7Z1qQUUw==",
"dependencies": {
"@nuxt/icon": "^2.2.1",
"@nuxtjs/tailwindcss": "^6.14.0",
+1 -1
View File
@@ -17,7 +17,7 @@
"test:e2e:ui": "playwright test --ui"
},
"dependencies": {
"@malio/layer-ui": "^1.7.6",
"@malio/layer-ui": "^1.7.7",
"@nuxt/icon": "^2.2.1",
"@nuxtjs/i18n": "^10.2.3",
"@nuxtjs/tailwindcss": "^6.14.0",
@@ -23,7 +23,7 @@
</thead>
<tbody>
<tr v-for="(diff, field) in updateDiff" :key="field" class="border-t border-gray-200">
<td class="px-2 py-1 font-mono">{{ field }}</td>
<td class="px-2 py-1">{{ field }}</td>
<td class="px-2 py-1 text-red-700">{{ formatValue(diff.old) }}</td>
<td class="px-2 py-1 text-green-700">{{ formatValue(diff.new) }}</td>
</tr>
@@ -31,7 +31,7 @@
{ added: [ids], removed: [ids] } affiche + et - sur
la meme ligne pour garder une colonne field unique. -->
<tr v-for="(diff, field) in collectionDiff" :key="`col-${field}`" class="border-t border-gray-200">
<td class="px-2 py-1 font-mono">{{ field }}</td>
<td class="px-2 py-1">{{ field }}</td>
<td class="px-2 py-1 text-red-700">
<span v-if="diff.removed.length"> {{ diff.removed.join(', ') }}</span>
<span v-else class="text-gray-400"></span>
@@ -47,7 +47,7 @@
<div v-else class="space-y-1">
<div v-for="(value, key) in entry.changes" :key="key" class="flex gap-2">
<span class="font-mono text-xs text-gray-600">{{ key }}:</span>
<span class="text-xs text-gray-600">{{ key }}:</span>
<span class="text-xs">{{ formatValue(value) }}</span>
</div>
</div>