codexly-ui 0.11.1 → 0.11.3
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.
- package/fesm2022/codexly-ui.mjs +88 -100
- package/fesm2022/codexly-ui.mjs.map +1 -1
- package/package.json +1 -1
package/fesm2022/codexly-ui.mjs
CHANGED
|
@@ -11271,6 +11271,78 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11271
11271
|
}]
|
|
11272
11272
|
}], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], showClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClose", required: false }] }], confirmButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "confirmButton", required: false }] }], cancelButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelButton", required: false }] }], showCancelButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showCancelButton", required: false }] }], confirmClick: [{ type: i0.Output, args: ["confirmClick"] }], cancelClick: [{ type: i0.Output, args: ["cancelClick"] }] } });
|
|
11273
11273
|
|
|
11274
|
+
class ClxPageEmptyComponent {
|
|
11275
|
+
_themeSvc = inject(ClxThemeService);
|
|
11276
|
+
icon = input('inbox', ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
11277
|
+
/** Named "heading", not "title" — the latter shadows the native HTML title attribute (tooltip
|
|
11278
|
+
* on hover) when bound without brackets, e.g. `title="..."` instead of `[title]="..."`. */
|
|
11279
|
+
heading = input('Sin resultados', ...(ngDevMode ? [{ debugName: "heading" }] : /* istanbul ignore next */ []));
|
|
11280
|
+
description = input('', ...(ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []));
|
|
11281
|
+
ctaLabel = input('', ...(ngDevMode ? [{ debugName: "ctaLabel" }] : /* istanbul ignore next */ []));
|
|
11282
|
+
ctaIcon = input('add', ...(ngDevMode ? [{ debugName: "ctaIcon" }] : /* istanbul ignore next */ []));
|
|
11283
|
+
ctaColor = input(undefined, ...(ngDevMode ? [{ debugName: "ctaColor" }] : /* istanbul ignore next */ []));
|
|
11284
|
+
_ctaColor = computed(() => this.ctaColor() ?? this._themeSvc.config().primaryColor, ...(ngDevMode ? [{ debugName: "_ctaColor" }] : /* istanbul ignore next */ []));
|
|
11285
|
+
cta = output();
|
|
11286
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxPageEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11287
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxPageEmptyComponent, isStandalone: true, selector: "clx-page-empty", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, ctaLabel: { classPropertyName: "ctaLabel", publicName: "ctaLabel", isSignal: true, isRequired: false, transformFunction: null }, ctaIcon: { classPropertyName: "ctaIcon", publicName: "ctaIcon", isSignal: true, isRequired: false, transformFunction: null }, ctaColor: { classPropertyName: "ctaColor", publicName: "ctaColor", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { cta: "cta" }, host: { classAttribute: "flex flex-col items-center justify-center w-full px-6 text-center text-sm" }, ngImport: i0, template: `
|
|
11288
|
+
<div class="w-20 h-20 rounded-2xl bg-clx-surface-2 flex items-center justify-center mb-6">
|
|
11289
|
+
<span clx-icon [name]="icon()" size="xl" class="text-clx-text-faint"></span>
|
|
11290
|
+
</div>
|
|
11291
|
+
|
|
11292
|
+
<h1 class="text-base font-semibold text-clx-text-label mb-2">{{ heading() }}</h1>
|
|
11293
|
+
|
|
11294
|
+
@if (description()) {
|
|
11295
|
+
<p class="text-clx-text-subtle max-w-sm mb-8">{{ description() }}</p>
|
|
11296
|
+
}
|
|
11297
|
+
|
|
11298
|
+
@if (ctaLabel()) {
|
|
11299
|
+
<button
|
|
11300
|
+
clx-button
|
|
11301
|
+
type="button"
|
|
11302
|
+
[color]="_ctaColor()"
|
|
11303
|
+
variant="solid"
|
|
11304
|
+
[icon]="ctaIcon()"
|
|
11305
|
+
(click)="cta.emit()">
|
|
11306
|
+
{{ ctaLabel() }}
|
|
11307
|
+
</button>
|
|
11308
|
+
}
|
|
11309
|
+
`, isInline: true, dependencies: [{ 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: ClxIconComponent, selector: "span[clx-icon]", inputs: ["name", "size", "color", "fill"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
11310
|
+
}
|
|
11311
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxPageEmptyComponent, decorators: [{
|
|
11312
|
+
type: Component,
|
|
11313
|
+
args: [{
|
|
11314
|
+
selector: 'clx-page-empty',
|
|
11315
|
+
standalone: true,
|
|
11316
|
+
imports: [ClxButtonComponent, ClxIconComponent],
|
|
11317
|
+
encapsulation: ViewEncapsulation.None,
|
|
11318
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
11319
|
+
host: { class: 'flex flex-col items-center justify-center w-full px-6 text-center text-sm' },
|
|
11320
|
+
template: `
|
|
11321
|
+
<div class="w-20 h-20 rounded-2xl bg-clx-surface-2 flex items-center justify-center mb-6">
|
|
11322
|
+
<span clx-icon [name]="icon()" size="xl" class="text-clx-text-faint"></span>
|
|
11323
|
+
</div>
|
|
11324
|
+
|
|
11325
|
+
<h1 class="text-base font-semibold text-clx-text-label mb-2">{{ heading() }}</h1>
|
|
11326
|
+
|
|
11327
|
+
@if (description()) {
|
|
11328
|
+
<p class="text-clx-text-subtle max-w-sm mb-8">{{ description() }}</p>
|
|
11329
|
+
}
|
|
11330
|
+
|
|
11331
|
+
@if (ctaLabel()) {
|
|
11332
|
+
<button
|
|
11333
|
+
clx-button
|
|
11334
|
+
type="button"
|
|
11335
|
+
[color]="_ctaColor()"
|
|
11336
|
+
variant="solid"
|
|
11337
|
+
[icon]="ctaIcon()"
|
|
11338
|
+
(click)="cta.emit()">
|
|
11339
|
+
{{ ctaLabel() }}
|
|
11340
|
+
</button>
|
|
11341
|
+
}
|
|
11342
|
+
`,
|
|
11343
|
+
}]
|
|
11344
|
+
}], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], heading: [{ type: i0.Input, args: [{ isSignal: true, alias: "heading", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], ctaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaLabel", required: false }] }], ctaIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaIcon", required: false }] }], ctaColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaColor", required: false }] }], cta: [{ type: i0.Output, args: ["cta"] }] } });
|
|
11345
|
+
|
|
11274
11346
|
// ── Size map — same density-token shape as LIST_SIZE_MAP ──────────────────────
|
|
11275
11347
|
const NOTIFICATION_SIZE_MAP = {
|
|
11276
11348
|
sm: { row: 'py-2', iconWrap: 'w-7 h-7', iconSize: 'xs', title: 'text-xs', detail: 'text-[11px]', time: 'text-[10px]' },
|
|
@@ -11440,10 +11512,8 @@ class ClxNotificationComponent {
|
|
|
11440
11512
|
Marcar todo leído
|
|
11441
11513
|
</button>
|
|
11442
11514
|
}
|
|
11443
|
-
<button type="button"
|
|
11444
|
-
aria-label="Cerrar" (click)="_close()">
|
|
11445
|
-
<span clx-icon name="close" size="xs"></span>
|
|
11446
|
-
</button>
|
|
11515
|
+
<button clx-button type="button" variant="ghost" color="slate" shape="circle" size="xs"
|
|
11516
|
+
icon="close" [iconOnly]="true" aria-label="Cerrar" (click)="_close()"></button>
|
|
11447
11517
|
</div>
|
|
11448
11518
|
</div>
|
|
11449
11519
|
|
|
@@ -11494,33 +11564,29 @@ class ClxNotificationComponent {
|
|
|
11494
11564
|
}
|
|
11495
11565
|
}
|
|
11496
11566
|
} @else {
|
|
11497
|
-
<
|
|
11498
|
-
|
|
11499
|
-
<p class="text-sm font-medium text-clx-text-label">
|
|
11500
|
-
{{ _filter() === 'unread' ? 'No tienes notificaciones sin leer' : 'No hay notificaciones' }}
|
|
11501
|
-
</p>
|
|
11502
|
-
</div>
|
|
11567
|
+
<clx-page-empty icon="notifications_off" class="py-10"
|
|
11568
|
+
[heading]="_filter() === 'unread' ? 'No tienes notificaciones sin leer' : 'No hay notificaciones'" />
|
|
11503
11569
|
}
|
|
11504
11570
|
</div>
|
|
11505
11571
|
|
|
11506
11572
|
@if (_readCount() > 0) {
|
|
11507
|
-
<div class="flex justify-end px-
|
|
11508
|
-
<button type="button"
|
|
11509
|
-
(click)="deleteAllRead.emit()">
|
|
11573
|
+
<div class="flex justify-end px-3 py-2.5 border-t border-clx-border-soft">
|
|
11574
|
+
<button clx-button type="button" variant="ghost" color="red" size="xs"
|
|
11575
|
+
icon="delete_sweep" (click)="deleteAllRead.emit()">
|
|
11510
11576
|
Eliminar leídas
|
|
11511
11577
|
</button>
|
|
11512
11578
|
</div>
|
|
11513
11579
|
}
|
|
11514
11580
|
</div>
|
|
11515
11581
|
</ng-template>
|
|
11516
|
-
`, 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: ClxTabsComponent, selector: "clx-tabs", inputs: ["tabs", "clxColor", "activeTab"], outputs: ["activeTabChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
11582
|
+
`, 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 });
|
|
11517
11583
|
}
|
|
11518
11584
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxNotificationComponent, decorators: [{
|
|
11519
11585
|
type: Component,
|
|
11520
11586
|
args: [{
|
|
11521
11587
|
selector: 'clx-notification',
|
|
11522
11588
|
standalone: true,
|
|
11523
|
-
imports: [OverlayModule, ClxIconComponent, ClxBadgeComponent, ClxTabsComponent],
|
|
11589
|
+
imports: [OverlayModule, ClxIconComponent, ClxBadgeComponent, ClxButtonComponent, ClxPageEmptyComponent, ClxTabsComponent],
|
|
11524
11590
|
template: `
|
|
11525
11591
|
<!-- Trigger -->
|
|
11526
11592
|
<button
|
|
@@ -11560,10 +11626,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11560
11626
|
Marcar todo leído
|
|
11561
11627
|
</button>
|
|
11562
11628
|
}
|
|
11563
|
-
<button type="button"
|
|
11564
|
-
aria-label="Cerrar" (click)="_close()">
|
|
11565
|
-
<span clx-icon name="close" size="xs"></span>
|
|
11566
|
-
</button>
|
|
11629
|
+
<button clx-button type="button" variant="ghost" color="slate" shape="circle" size="xs"
|
|
11630
|
+
icon="close" [iconOnly]="true" aria-label="Cerrar" (click)="_close()"></button>
|
|
11567
11631
|
</div>
|
|
11568
11632
|
</div>
|
|
11569
11633
|
|
|
@@ -11614,19 +11678,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11614
11678
|
}
|
|
11615
11679
|
}
|
|
11616
11680
|
} @else {
|
|
11617
|
-
<
|
|
11618
|
-
|
|
11619
|
-
<p class="text-sm font-medium text-clx-text-label">
|
|
11620
|
-
{{ _filter() === 'unread' ? 'No tienes notificaciones sin leer' : 'No hay notificaciones' }}
|
|
11621
|
-
</p>
|
|
11622
|
-
</div>
|
|
11681
|
+
<clx-page-empty icon="notifications_off" class="py-10"
|
|
11682
|
+
[heading]="_filter() === 'unread' ? 'No tienes notificaciones sin leer' : 'No hay notificaciones'" />
|
|
11623
11683
|
}
|
|
11624
11684
|
</div>
|
|
11625
11685
|
|
|
11626
11686
|
@if (_readCount() > 0) {
|
|
11627
|
-
<div class="flex justify-end px-
|
|
11628
|
-
<button type="button"
|
|
11629
|
-
(click)="deleteAllRead.emit()">
|
|
11687
|
+
<div class="flex justify-end px-3 py-2.5 border-t border-clx-border-soft">
|
|
11688
|
+
<button clx-button type="button" variant="ghost" color="red" size="xs"
|
|
11689
|
+
icon="delete_sweep" (click)="deleteAllRead.emit()">
|
|
11630
11690
|
Eliminar leídas
|
|
11631
11691
|
</button>
|
|
11632
11692
|
</div>
|
|
@@ -14030,78 +14090,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
14030
14090
|
args: ['clxColumn']
|
|
14031
14091
|
}], headerCell: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ClxHeaderCellDirective), { isSignal: true }] }], cell: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ClxCellDirective), { isSignal: true }] }] } });
|
|
14032
14092
|
|
|
14033
|
-
class ClxPageEmptyComponent {
|
|
14034
|
-
_themeSvc = inject(ClxThemeService);
|
|
14035
|
-
icon = input('inbox', ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
14036
|
-
/** Named "heading", not "title" — the latter shadows the native HTML title attribute (tooltip
|
|
14037
|
-
* on hover) when bound without brackets, e.g. `title="..."` instead of `[title]="..."`. */
|
|
14038
|
-
heading = input('Sin resultados', ...(ngDevMode ? [{ debugName: "heading" }] : /* istanbul ignore next */ []));
|
|
14039
|
-
description = input('', ...(ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []));
|
|
14040
|
-
ctaLabel = input('', ...(ngDevMode ? [{ debugName: "ctaLabel" }] : /* istanbul ignore next */ []));
|
|
14041
|
-
ctaIcon = input('add', ...(ngDevMode ? [{ debugName: "ctaIcon" }] : /* istanbul ignore next */ []));
|
|
14042
|
-
ctaColor = input(undefined, ...(ngDevMode ? [{ debugName: "ctaColor" }] : /* istanbul ignore next */ []));
|
|
14043
|
-
_ctaColor = computed(() => this.ctaColor() ?? this._themeSvc.config().primaryColor, ...(ngDevMode ? [{ debugName: "_ctaColor" }] : /* istanbul ignore next */ []));
|
|
14044
|
-
cta = output();
|
|
14045
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxPageEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14046
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxPageEmptyComponent, isStandalone: true, selector: "clx-page-empty", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, ctaLabel: { classPropertyName: "ctaLabel", publicName: "ctaLabel", isSignal: true, isRequired: false, transformFunction: null }, ctaIcon: { classPropertyName: "ctaIcon", publicName: "ctaIcon", isSignal: true, isRequired: false, transformFunction: null }, ctaColor: { classPropertyName: "ctaColor", publicName: "ctaColor", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { cta: "cta" }, host: { classAttribute: "flex flex-col items-center justify-center w-full px-6 text-center text-sm" }, ngImport: i0, template: `
|
|
14047
|
-
<div class="w-20 h-20 rounded-2xl bg-clx-surface-2 flex items-center justify-center mb-6">
|
|
14048
|
-
<span clx-icon [name]="icon()" size="xl" class="text-clx-text-faint"></span>
|
|
14049
|
-
</div>
|
|
14050
|
-
|
|
14051
|
-
<h1 class="text-base font-semibold text-clx-text-label mb-2">{{ heading() }}</h1>
|
|
14052
|
-
|
|
14053
|
-
@if (description()) {
|
|
14054
|
-
<p class="text-clx-text-subtle max-w-sm mb-8">{{ description() }}</p>
|
|
14055
|
-
}
|
|
14056
|
-
|
|
14057
|
-
@if (ctaLabel()) {
|
|
14058
|
-
<button
|
|
14059
|
-
clx-button
|
|
14060
|
-
type="button"
|
|
14061
|
-
[color]="_ctaColor()"
|
|
14062
|
-
variant="solid"
|
|
14063
|
-
[icon]="ctaIcon()"
|
|
14064
|
-
(click)="cta.emit()">
|
|
14065
|
-
{{ ctaLabel() }}
|
|
14066
|
-
</button>
|
|
14067
|
-
}
|
|
14068
|
-
`, isInline: true, dependencies: [{ 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: ClxIconComponent, selector: "span[clx-icon]", inputs: ["name", "size", "color", "fill"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
14069
|
-
}
|
|
14070
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxPageEmptyComponent, decorators: [{
|
|
14071
|
-
type: Component,
|
|
14072
|
-
args: [{
|
|
14073
|
-
selector: 'clx-page-empty',
|
|
14074
|
-
standalone: true,
|
|
14075
|
-
imports: [ClxButtonComponent, ClxIconComponent],
|
|
14076
|
-
encapsulation: ViewEncapsulation.None,
|
|
14077
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
14078
|
-
host: { class: 'flex flex-col items-center justify-center w-full px-6 text-center text-sm' },
|
|
14079
|
-
template: `
|
|
14080
|
-
<div class="w-20 h-20 rounded-2xl bg-clx-surface-2 flex items-center justify-center mb-6">
|
|
14081
|
-
<span clx-icon [name]="icon()" size="xl" class="text-clx-text-faint"></span>
|
|
14082
|
-
</div>
|
|
14083
|
-
|
|
14084
|
-
<h1 class="text-base font-semibold text-clx-text-label mb-2">{{ heading() }}</h1>
|
|
14085
|
-
|
|
14086
|
-
@if (description()) {
|
|
14087
|
-
<p class="text-clx-text-subtle max-w-sm mb-8">{{ description() }}</p>
|
|
14088
|
-
}
|
|
14089
|
-
|
|
14090
|
-
@if (ctaLabel()) {
|
|
14091
|
-
<button
|
|
14092
|
-
clx-button
|
|
14093
|
-
type="button"
|
|
14094
|
-
[color]="_ctaColor()"
|
|
14095
|
-
variant="solid"
|
|
14096
|
-
[icon]="ctaIcon()"
|
|
14097
|
-
(click)="cta.emit()">
|
|
14098
|
-
{{ ctaLabel() }}
|
|
14099
|
-
</button>
|
|
14100
|
-
}
|
|
14101
|
-
`,
|
|
14102
|
-
}]
|
|
14103
|
-
}], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], heading: [{ type: i0.Input, args: [{ isSignal: true, alias: "heading", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], ctaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaLabel", required: false }] }], ctaIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaIcon", required: false }] }], ctaColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "ctaColor", required: false }] }], cta: [{ type: i0.Output, args: ["cta"] }] } });
|
|
14104
|
-
|
|
14105
14093
|
class ClxTableComponent {
|
|
14106
14094
|
_themeSvc = inject(ClxThemeService);
|
|
14107
14095
|
// ── Inputs ─────────────────────────────────────────────────────────────────
|