codexly-ui 0.15.9 → 0.15.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15965,9 +15965,10 @@ class ClxStatCardComponent {
15965
15965
  // actually fit the grid's default rowHeight (92px × h).
15966
15966
  const base = `bg-clx-surface ${radius} shadow-md border ${border} p-3 w-full h-full justify-center overflow-hidden min-w-[200px]`;
15967
15967
  // horizontal and bar stack a full-width title row above their icon/value/chart row (flex-col)
15968
- // so the title never shares space with — and never truncates against — the chart; vertical
15969
- // keeps a single side-by-side row (flex items-center), it has no title/chart space conflict.
15970
- const layoutCls = this.layout() !== 'vertical' ? 'flex flex-col gap-2' : 'flex items-center gap-3';
15968
+ // so the title never shares space with — and never truncates against — the chart; vertical and
15969
+ // banner are both a single side-by-side row (flex items-center) with no title/chart conflict.
15970
+ const stacked = this.layout() === 'horizontal' || this.layout() === 'bar';
15971
+ const layoutCls = stacked ? 'flex flex-col gap-2' : 'flex items-center gap-3';
15971
15972
  return `${layoutCls} ${base}`;
15972
15973
  }, ...(ngDevMode ? [{ debugName: "_hostClass" }] : /* istanbul ignore next */ []));
15973
15974
  _barHeights = computed(() => {
@@ -16140,6 +16141,28 @@ class ClxStatCardComponent {
16140
16141
  }
16141
16142
  }
16142
16143
 
16144
+ @if (layout() === 'banner') {
16145
+ <!-- Full-width row: icon chip left, title+value stacked right. No sparkline/bars — meant to
16146
+ read as a flat announcement strip rather than a metric card. -->
16147
+ <div class="shrink-0 w-10 h-10 rounded-lg flex items-center justify-center" [class]="_iconBgSubtle()">
16148
+ <span clx-icon [name]="metric().icon" size="sm" [class]="_iconTextBase()"></span>
16149
+ </div>
16150
+ <div class="min-w-0 flex-1">
16151
+ <p class="text-xs text-clx-text-muted truncate">{{ metric().title }}</p>
16152
+ <p class="text-xl font-bold text-clx-text leading-tight">{{ _formattedValue() }}</p>
16153
+ </div>
16154
+ @if (_hasTrend()) {
16155
+ <span clx-badge
16156
+ [color]="_trendColor()"
16157
+ variant="light"
16158
+ shape="pill"
16159
+ class="shrink-0 gap-1">
16160
+ <span clx-icon [name]="_trendIcon()" size="xxs"></span>
16161
+ {{ metric().trend }}
16162
+ </span>
16163
+ }
16164
+ }
16165
+
16143
16166
  @if (layout() === 'vertical') {
16144
16167
  <!-- Col izquierda: badge + valor + título -->
16145
16168
  <div class="flex flex-col justify-between flex-1 min-w-0 gap-1">
@@ -16259,6 +16282,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
16259
16282
  }
16260
16283
  }
16261
16284
 
16285
+ @if (layout() === 'banner') {
16286
+ <!-- Full-width row: icon chip left, title+value stacked right. No sparkline/bars — meant to
16287
+ read as a flat announcement strip rather than a metric card. -->
16288
+ <div class="shrink-0 w-10 h-10 rounded-lg flex items-center justify-center" [class]="_iconBgSubtle()">
16289
+ <span clx-icon [name]="metric().icon" size="sm" [class]="_iconTextBase()"></span>
16290
+ </div>
16291
+ <div class="min-w-0 flex-1">
16292
+ <p class="text-xs text-clx-text-muted truncate">{{ metric().title }}</p>
16293
+ <p class="text-xl font-bold text-clx-text leading-tight">{{ _formattedValue() }}</p>
16294
+ </div>
16295
+ @if (_hasTrend()) {
16296
+ <span clx-badge
16297
+ [color]="_trendColor()"
16298
+ variant="light"
16299
+ shape="pill"
16300
+ class="shrink-0 gap-1">
16301
+ <span clx-icon [name]="_trendIcon()" size="xxs"></span>
16302
+ {{ metric().trend }}
16303
+ </span>
16304
+ }
16305
+ }
16306
+
16262
16307
  @if (layout() === 'vertical') {
16263
16308
  <!-- Col izquierda: badge + valor + título -->
16264
16309
  <div class="flex flex-col justify-between flex-1 min-w-0 gap-1">