'icon-cogs',
@@ -94,12 +94,14 @@ $categoryOrder = ['core', 'security', 'monitoring', 'content', 'tools', 'api'];
'mod_mokosuiteclient_cache' => 'icon-bolt',
'mod_mokosuiteclient_categories' => 'icon-folder',
];
+ $extCount = count($mokoExts);
+ $colClass = $extCount > 0 ? 'col-' . max(1, (int) floor(12 / $extCount)) : 'col';
foreach ($mokoExts as $ext):
$icon = $extIcons[$ext->element] ?? 'icon-puzzle-piece';
$label = str_replace(['mod_mokosuiteclient_', 'com_mokosuiteclient'], ['', 'Component'], $ext->element);
$label = ucfirst($label ?: 'Component');
?>
-
+
escape($label); ?>
escape($ext->version); ?>
diff --git a/source/packages/com_mokosuiteclient/media/css/dashboard.css b/source/packages/com_mokosuiteclient/media/css/dashboard.css
index ad12a5bd..eb268b8c 100644
--- a/source/packages/com_mokosuiteclient/media/css/dashboard.css
+++ b/source/packages/com_mokosuiteclient/media/css/dashboard.css
@@ -39,30 +39,6 @@
padding: 0.3em 0.6em;
}
-/* Moko extensions version bar — full-width auto-sized */
-.mokosuiteclient-ext-bar {
- display: flex;
- flex-wrap: wrap;
- gap: 0;
- width: 100%;
-}
-
-.mokosuiteclient-ext-bar .mokosuiteclient-ext-item {
- flex: 1 1 0;
- min-width: 0;
- display: flex;
- align-items: center;
- justify-content: center;
- gap: 0.4rem;
- padding: 0.5rem 0.75rem;
- font-size: 0.82rem;
- border-right: 1px solid #dee2e6;
- white-space: nowrap;
-}
-
-.mokosuiteclient-ext-bar .mokosuiteclient-ext-item:last-child {
- border-right: none;
-}
/* Plugin cards */
.mokosuiteclient-plugin-card {