codexly-ui 0.11.5 → 0.11.8

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.
@@ -641,7 +641,9 @@ class ClxThemeService {
641
641
  error: n?.severityColors?.error ?? this._config().dangerColor,
642
642
  },
643
643
  unreadColor: n?.unreadColor ?? this._config().primaryColor,
644
+ tabsColor: n?.tabsColor ?? this._config().primaryColor,
644
645
  size: n?.size ?? 'md',
646
+ border: n?.border ?? true,
645
647
  borderColor: n?.borderColor ?? this._config().listBorderColor ?? this._config().primaryColor,
646
648
  radius: n?.radius ?? this._config().borderRadius,
647
649
  titleWeight: n?.titleWeight ?? 600,
@@ -5235,7 +5237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
5235
5237
 
5236
5238
  const SWITCH_SIZE_MAP = {
5237
5239
  xs: { track: 'w-7 h-4', thumb: 'w-3 h-3', translate: 'translate-x-3', label: 'text-xs' },
5238
- sm: { track: 'w-9 h-5', thumb: 'w-4 h-4', translate: 'translate-x-4', label: 'text-xs' },
5240
+ sm: { track: 'w-9 h-5', thumb: 'w-4 h-4', translate: 'translate-x-4', label: 'text-sm' },
5239
5241
  md: { track: 'w-12 h-6', thumb: 'w-5 h-5', translate: 'translate-x-6', label: 'text-sm' },
5240
5242
  lg: { track: 'w-14 h-7', thumb: 'w-6 h-6', translate: 'translate-x-7', label: 'text-base' },
5241
5243
  };
@@ -11365,22 +11367,39 @@ const NOTIFICATION_SEVERITY_ICON = {
11365
11367
  class ClxNotificationComponent {
11366
11368
  _themeSvc = inject(ClxThemeService);
11367
11369
  items = input.required(...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
11368
- color = input(undefined, ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
11369
11370
  /** Optional third tab that filters items by ClxNotificationItem.category — e.g.
11370
11371
  * `{ id: 'orders', label: 'Órdenes' }`. Omit for just Todas/Sin leer. */
11371
11372
  categoryTab = input(undefined, ...(ngDevMode ? [{ debugName: "categoryTab" }] : /* istanbul ignore next */ []));
11372
- // ── Trigger button overrides the bell is a real clx-button under the hood, so any of its
11373
- // own look-and-feel inputs can be pinned here without needing a separate trigger component. ──
11374
- triggerVariant = input('ghost', ...(ngDevMode ? [{ debugName: "triggerVariant" }] : /* istanbul ignore next */ []));
11375
- triggerSize = input('md', ...(ngDevMode ? [{ debugName: "triggerSize" }] : /* istanbul ignore next */ []));
11376
- triggerIcon = input('notifications', ...(ngDevMode ? [{ debugName: "triggerIcon" }] : /* istanbul ignore next */ []));
11373
+ // ── Bell button — a real clx-button under the hood, so its own look-and-feel can be pinned
11374
+ // per instance without needing a separate trigger component. Each falls back to the
11375
+ // notification theme block, then a sensible built-in default. ──────────────────────────────
11376
+ buttonColor = input(undefined, ...(ngDevMode ? [{ debugName: "buttonColor" }] : /* istanbul ignore next */ []));
11377
+ buttonVariant = input('ghost', ...(ngDevMode ? [{ debugName: "buttonVariant" }] : /* istanbul ignore next */ []));
11378
+ buttonSize = input('md', ...(ngDevMode ? [{ debugName: "buttonSize" }] : /* istanbul ignore next */ []));
11379
+ buttonIcon = input('notifications', ...(ngDevMode ? [{ debugName: "buttonIcon" }] : /* istanbul ignore next */ []));
11380
+ /** Unread-count badge color — falls back to the theme's notification.unreadColor (then
11381
+ * primaryColor) when unset. */
11382
+ badgeColor = input(undefined, ...(ngDevMode ? [{ debugName: "badgeColor" }] : /* istanbul ignore next */ []));
11383
+ // ── Panel accents — independent from the bell button's own color. ──────────────────────────
11384
+ /** clx-tabs (Todas/Sin leer/...) + "Marcar todo leído" link accent — falls back to the theme's
11385
+ * notification.tabsColor (then primaryColor) when unset. */
11386
+ tabsColor = input(undefined, ...(ngDevMode ? [{ debugName: "tabsColor" }] : /* istanbul ignore next */ []));
11387
+ /** Whether the floating panel shows its outer border — falls back to the theme's
11388
+ * notification.border (then true) when unset. */
11389
+ border = input(undefined, ...(ngDevMode ? [{ debugName: "border" }] : /* istanbul ignore next */ []));
11390
+ /** Panel wrapper border color — falls back to the theme's notification.borderColor when unset. */
11391
+ borderColor = input(undefined, ...(ngDevMode ? [{ debugName: "borderColor" }] : /* istanbul ignore next */ []));
11377
11392
  itemClick = output();
11378
11393
  markRead = output();
11379
11394
  markAllRead = output();
11380
11395
  delete = output();
11381
11396
  deleteAllRead = output();
11382
11397
  _style = this._themeSvc.notificationStyle;
11383
- _color = computed(() => this.color() ?? this._themeSvc.config().primaryColor, ...(ngDevMode ? [{ debugName: "_color" }] : /* istanbul ignore next */ []));
11398
+ _buttonColor = computed(() => this.buttonColor() ?? this._themeSvc.config().primaryColor, ...(ngDevMode ? [{ debugName: "_buttonColor" }] : /* istanbul ignore next */ []));
11399
+ _badgeColor = computed(() => this.badgeColor() ?? this._style().unreadColor, ...(ngDevMode ? [{ debugName: "_badgeColor" }] : /* istanbul ignore next */ []));
11400
+ _tabsColor = computed(() => this.tabsColor() ?? this._style().tabsColor, ...(ngDevMode ? [{ debugName: "_tabsColor" }] : /* istanbul ignore next */ []));
11401
+ _border = computed(() => this.border() ?? this._style().border, ...(ngDevMode ? [{ debugName: "_border" }] : /* istanbul ignore next */ []));
11402
+ _borderColor = computed(() => this.borderColor() ?? this._style().borderColor, ...(ngDevMode ? [{ debugName: "_borderColor" }] : /* istanbul ignore next */ []));
11384
11403
  // ── CDK Overlay ─────────────────────────────────────────────────────────────
11385
11404
  _sso = inject(ScrollStrategyOptions);
11386
11405
  _scrollStrategy = this._sso.reposition();
@@ -11390,7 +11409,10 @@ class ClxNotificationComponent {
11390
11409
  ];
11391
11410
  _isOpen = signal(false, ...(ngDevMode ? [{ debugName: "_isOpen" }] : /* istanbul ignore next */ []));
11392
11411
  _filter = signal('all', ...(ngDevMode ? [{ debugName: "_filter" }] : /* istanbul ignore next */ []));
11393
- _panelClass = computed(() => `w-96 bg-clx-surface shadow-xl border border-clx-border-soft overflow-hidden mt-2 flex flex-col ${resolveContainerRadius(this._style().radius)}`, ...(ngDevMode ? [{ debugName: "_panelClass" }] : /* istanbul ignore next */ []));
11412
+ _panelClass = computed(() => {
11413
+ const borderCls = this._border() ? `border ${resolveColor(this._borderColor()).borderLight}` : 'border border-transparent';
11414
+ return `w-96 bg-clx-surface shadow-xl ${borderCls} overflow-hidden mt-2 flex flex-col ${resolveContainerRadius(this._style().radius)}`;
11415
+ }, ...(ngDevMode ? [{ debugName: "_panelClass" }] : /* istanbul ignore next */ []));
11394
11416
  _unreadCount = computed(() => this.items().filter(i => !i.read).length, ...(ngDevMode ? [{ debugName: "_unreadCount" }] : /* istanbul ignore next */ []));
11395
11417
  _readCount = computed(() => this.items().filter(i => i.read).length, ...(ngDevMode ? [{ debugName: "_readCount" }] : /* istanbul ignore next */ []));
11396
11418
  _tabs = computed(() => {
@@ -11428,7 +11450,6 @@ class ClxNotificationComponent {
11428
11450
  const w = this._style().groupLabelWeight;
11429
11451
  return `px-2 pt-3 pb-1.5 text-[11px] uppercase tracking-wide text-clx-text-subtle font-[${w}]`;
11430
11452
  }, ...(ngDevMode ? [{ debugName: "_groupLabelClass" }] : /* istanbul ignore next */ []));
11431
- _linkClass = computed(() => resolveColor(this._color()).textSubtle, ...(ngDevMode ? [{ debugName: "_linkClass" }] : /* istanbul ignore next */ []));
11432
11453
  _unreadRailClass = computed(() => resolveColor(this._style().unreadColor).bg, ...(ngDevMode ? [{ debugName: "_unreadRailClass" }] : /* istanbul ignore next */ []));
11433
11454
  _unreadDotClass = computed(() => `w-1.5 h-1.5 rounded-full shrink-0 ${resolveColor(this._style().unreadColor).bg}`, ...(ngDevMode ? [{ debugName: "_unreadDotClass" }] : /* istanbul ignore next */ []));
11434
11455
  _detailClass = computed(() => this._style().detailColor ? resolveColor(this._style().detailColor).textSubtle : 'text-clx-text-muted', ...(ngDevMode ? [{ debugName: "_detailClass" }] : /* istanbul ignore next */ []));
@@ -11474,26 +11495,22 @@ class ClxNotificationComponent {
11474
11495
  return new Date(iso).toLocaleTimeString('es-CO', { hour: '2-digit', minute: '2-digit' });
11475
11496
  }
11476
11497
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxNotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11477
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxNotificationComponent, isStandalone: true, selector: "clx-notification", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, categoryTab: { classPropertyName: "categoryTab", publicName: "categoryTab", isSignal: true, isRequired: false, transformFunction: null }, triggerVariant: { classPropertyName: "triggerVariant", publicName: "triggerVariant", isSignal: true, isRequired: false, transformFunction: null }, triggerSize: { classPropertyName: "triggerSize", publicName: "triggerSize", isSignal: true, isRequired: false, transformFunction: null }, triggerIcon: { classPropertyName: "triggerIcon", publicName: "triggerIcon", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick", markRead: "markRead", markAllRead: "markAllRead", delete: "delete", deleteAllRead: "deleteAllRead" }, host: { classAttribute: "relative inline-flex items-center" }, ngImport: i0, template: `
11498
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxNotificationComponent, isStandalone: true, selector: "clx-notification", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, categoryTab: { classPropertyName: "categoryTab", publicName: "categoryTab", isSignal: true, isRequired: false, transformFunction: null }, buttonColor: { classPropertyName: "buttonColor", publicName: "buttonColor", isSignal: true, isRequired: false, transformFunction: null }, buttonVariant: { classPropertyName: "buttonVariant", publicName: "buttonVariant", isSignal: true, isRequired: false, transformFunction: null }, buttonSize: { classPropertyName: "buttonSize", publicName: "buttonSize", isSignal: true, isRequired: false, transformFunction: null }, buttonIcon: { classPropertyName: "buttonIcon", publicName: "buttonIcon", isSignal: true, isRequired: false, transformFunction: null }, badgeColor: { classPropertyName: "badgeColor", publicName: "badgeColor", isSignal: true, isRequired: false, transformFunction: null }, tabsColor: { classPropertyName: "tabsColor", publicName: "tabsColor", isSignal: true, isRequired: false, transformFunction: null }, border: { classPropertyName: "border", publicName: "border", isSignal: true, isRequired: false, transformFunction: null }, borderColor: { classPropertyName: "borderColor", publicName: "borderColor", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick", markRead: "markRead", markAllRead: "markAllRead", delete: "delete", deleteAllRead: "deleteAllRead" }, host: { classAttribute: "relative inline-flex items-center" }, ngImport: i0, template: `
11478
11499
  <!-- Trigger -->
11479
11500
  <button clx-button
11480
11501
  #origin="cdkOverlayOrigin"
11481
11502
  cdkOverlayOrigin
11482
11503
  type="button"
11483
- [variant]="triggerVariant()"
11484
- [color]="_color()"
11485
- [size]="triggerSize()"
11504
+ [variant]="buttonVariant()"
11505
+ [color]="_buttonColor()"
11506
+ [size]="buttonSize()"
11486
11507
  shape="circle"
11487
- [icon]="triggerIcon()"
11508
+ [icon]="buttonIcon()"
11488
11509
  [iconOnly]="true"
11510
+ [badge]="_unreadCount() > 0 ? (_unreadCount() > 9 ? '9+' : _unreadCount()) : undefined"
11511
+ [badgeColor]="_badgeColor()"
11489
11512
  aria-label="Notificaciones"
11490
- class="relative"
11491
11513
  (click)="_toggle()">
11492
- @if (_unreadCount() > 0) {
11493
- <span clx-badge [color]="_style().unreadColor" variant="solid" size="xs" shape="circle" [positioned]="true">
11494
- {{ _unreadCount() > 9 ? '9+' : _unreadCount() }}
11495
- </span>
11496
- }
11497
11514
  </button>
11498
11515
 
11499
11516
  <!-- Overlay panel -->
@@ -11513,7 +11530,7 @@ class ClxNotificationComponent {
11513
11530
  <p class="text-base font-semibold text-clx-text-label">Notificaciones</p>
11514
11531
  <div class="flex items-center gap-3">
11515
11532
  @if (_unreadCount() > 0) {
11516
- <button clx-button type="button" variant="ghost" [color]="_color()" size="xs"
11533
+ <button clx-button type="button" variant="ghost" [color]="_tabsColor()" size="xs"
11517
11534
  (click)="markAllRead.emit()">
11518
11535
  Marcar todo leído
11519
11536
  </button>
@@ -11525,7 +11542,7 @@ class ClxNotificationComponent {
11525
11542
 
11526
11543
  <!-- Tabs -->
11527
11544
  <div class="px-4">
11528
- <clx-tabs [tabs]="_tabs()" [(activeTab)]="_filter" [clxColor]="_color()" />
11545
+ <clx-tabs [tabs]="_tabs()" [(activeTab)]="_filter" [clxColor]="_tabsColor()" />
11529
11546
  </div>
11530
11547
 
11531
11548
  <!-- List -->
@@ -11584,34 +11601,30 @@ class ClxNotificationComponent {
11584
11601
  }
11585
11602
  </div>
11586
11603
  </ng-template>
11587
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ClxIconComponent, selector: "span[clx-icon]", inputs: ["name", "size", "color", "fill"] }, { kind: "component", type: ClxBadgeComponent, selector: "span[clx-badge]", inputs: ["variant", "color", "size", "shape", "positioned"] }, { kind: "component", type: ClxButtonComponent, selector: "button[clx-button], a[clx-button]", inputs: ["variant", "color", "textColor", "size", "shape", "loading", "disabled", "block", "icon", "iconPosition", "iconOnly", "badge", "badgeColor"] }, { kind: "component", type: ClxPageEmptyComponent, selector: "clx-page-empty", inputs: ["icon", "heading", "description", "ctaLabel", "ctaIcon", "ctaColor"], outputs: ["cta"] }, { kind: "component", type: ClxTabsComponent, selector: "clx-tabs", inputs: ["tabs", "clxColor", "activeTab"], outputs: ["activeTabChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
11604
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ClxIconComponent, selector: "span[clx-icon]", inputs: ["name", "size", "color", "fill"] }, { kind: "component", type: ClxButtonComponent, selector: "button[clx-button], a[clx-button]", inputs: ["variant", "color", "textColor", "size", "shape", "loading", "disabled", "block", "icon", "iconPosition", "iconOnly", "badge", "badgeColor"] }, { kind: "component", type: ClxPageEmptyComponent, selector: "clx-page-empty", inputs: ["icon", "heading", "description", "ctaLabel", "ctaIcon", "ctaColor"], outputs: ["cta"] }, { kind: "component", type: ClxTabsComponent, selector: "clx-tabs", inputs: ["tabs", "clxColor", "activeTab"], outputs: ["activeTabChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
11588
11605
  }
11589
11606
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxNotificationComponent, decorators: [{
11590
11607
  type: Component,
11591
11608
  args: [{
11592
11609
  selector: 'clx-notification',
11593
11610
  standalone: true,
11594
- imports: [OverlayModule, ClxIconComponent, ClxBadgeComponent, ClxButtonComponent, ClxPageEmptyComponent, ClxTabsComponent],
11611
+ imports: [OverlayModule, ClxIconComponent, ClxButtonComponent, ClxPageEmptyComponent, ClxTabsComponent],
11595
11612
  template: `
11596
11613
  <!-- Trigger -->
11597
11614
  <button clx-button
11598
11615
  #origin="cdkOverlayOrigin"
11599
11616
  cdkOverlayOrigin
11600
11617
  type="button"
11601
- [variant]="triggerVariant()"
11602
- [color]="_color()"
11603
- [size]="triggerSize()"
11618
+ [variant]="buttonVariant()"
11619
+ [color]="_buttonColor()"
11620
+ [size]="buttonSize()"
11604
11621
  shape="circle"
11605
- [icon]="triggerIcon()"
11622
+ [icon]="buttonIcon()"
11606
11623
  [iconOnly]="true"
11624
+ [badge]="_unreadCount() > 0 ? (_unreadCount() > 9 ? '9+' : _unreadCount()) : undefined"
11625
+ [badgeColor]="_badgeColor()"
11607
11626
  aria-label="Notificaciones"
11608
- class="relative"
11609
11627
  (click)="_toggle()">
11610
- @if (_unreadCount() > 0) {
11611
- <span clx-badge [color]="_style().unreadColor" variant="solid" size="xs" shape="circle" [positioned]="true">
11612
- {{ _unreadCount() > 9 ? '9+' : _unreadCount() }}
11613
- </span>
11614
- }
11615
11628
  </button>
11616
11629
 
11617
11630
  <!-- Overlay panel -->
@@ -11631,7 +11644,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
11631
11644
  <p class="text-base font-semibold text-clx-text-label">Notificaciones</p>
11632
11645
  <div class="flex items-center gap-3">
11633
11646
  @if (_unreadCount() > 0) {
11634
- <button clx-button type="button" variant="ghost" [color]="_color()" size="xs"
11647
+ <button clx-button type="button" variant="ghost" [color]="_tabsColor()" size="xs"
11635
11648
  (click)="markAllRead.emit()">
11636
11649
  Marcar todo leído
11637
11650
  </button>
@@ -11643,7 +11656,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
11643
11656
 
11644
11657
  <!-- Tabs -->
11645
11658
  <div class="px-4">
11646
- <clx-tabs [tabs]="_tabs()" [(activeTab)]="_filter" [clxColor]="_color()" />
11659
+ <clx-tabs [tabs]="_tabs()" [(activeTab)]="_filter" [clxColor]="_tabsColor()" />
11647
11660
  </div>
11648
11661
 
11649
11662
  <!-- List -->
@@ -11707,7 +11720,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
11707
11720
  changeDetection: ChangeDetectionStrategy.OnPush,
11708
11721
  host: { class: 'relative inline-flex items-center' },
11709
11722
  }]
11710
- }], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], categoryTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryTab", required: false }] }], triggerVariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "triggerVariant", required: false }] }], triggerSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "triggerSize", required: false }] }], triggerIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "triggerIcon", required: false }] }], itemClick: [{ type: i0.Output, args: ["itemClick"] }], markRead: [{ type: i0.Output, args: ["markRead"] }], markAllRead: [{ type: i0.Output, args: ["markAllRead"] }], delete: [{ type: i0.Output, args: ["delete"] }], deleteAllRead: [{ type: i0.Output, args: ["deleteAllRead"] }] } });
11723
+ }], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], categoryTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryTab", required: false }] }], buttonColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonColor", required: false }] }], buttonVariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonVariant", required: false }] }], buttonSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonSize", required: false }] }], buttonIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonIcon", required: false }] }], badgeColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "badgeColor", required: false }] }], tabsColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabsColor", required: false }] }], border: [{ type: i0.Input, args: [{ isSignal: true, alias: "border", required: false }] }], borderColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "borderColor", required: false }] }], itemClick: [{ type: i0.Output, args: ["itemClick"] }], markRead: [{ type: i0.Output, args: ["markRead"] }], markAllRead: [{ type: i0.Output, args: ["markAllRead"] }], delete: [{ type: i0.Output, args: ["delete"] }], deleteAllRead: [{ type: i0.Output, args: ["deleteAllRead"] }] } });
11711
11724
 
11712
11725
  // ─── CDK overlay token (carries the resolved ref into the component) ──────────
11713
11726
  const CLX_ALERT_OPTIONS = new InjectionToken('CLX_ALERT_OPTIONS');