codexly-ui 0.12.15 → 0.12.17
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 +40 -12
- package/fesm2022/codexly-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/codexly-ui.d.ts +21 -3
package/fesm2022/codexly-ui.mjs
CHANGED
|
@@ -15346,6 +15346,9 @@ class ClxProductComponent {
|
|
|
15346
15346
|
* variant="ghost" (text tinted at textSubtle strength, not a solid fill), so contrast risk is
|
|
15347
15347
|
* low, but this is still exposed for full parity with clx-product-detail/clx-wishlist. */
|
|
15348
15348
|
actionTextColor = input(undefined, ...(ngDevMode ? [{ debugName: "actionTextColor" }] : /* istanbul ignore next */ []));
|
|
15349
|
+
/** Card drop shadow — same ClxCardShadow scale as clx-card ('none' turns it off entirely).
|
|
15350
|
+
* Falls back to 'sm', the shadow this card has always rendered with. */
|
|
15351
|
+
shadow = input(undefined, ...(ngDevMode ? [{ debugName: "shadow" }] : /* istanbul ignore next */ []));
|
|
15349
15352
|
imageFit = input('cover', ...(ngDevMode ? [{ debugName: "imageFit" }] : /* istanbul ignore next */ []));
|
|
15350
15353
|
addToCart = output();
|
|
15351
15354
|
addToWishlist = output();
|
|
@@ -15369,9 +15372,10 @@ class ClxProductComponent {
|
|
|
15369
15372
|
* so a host that pins clxColor to a one-off brand accent doesn't also drag the card border
|
|
15370
15373
|
* along with it. */
|
|
15371
15374
|
_cardClass = computed(() => {
|
|
15375
|
+
const shadowCls = CARD_SHADOW_MAP[this.shadow() ?? 'sm'];
|
|
15372
15376
|
const hover = this._disabled() ? '' : 'hover:shadow-md hover:-translate-y-0.5';
|
|
15373
15377
|
const t = resolveColor(this._themeSvc.cardBorderColor());
|
|
15374
|
-
return `bg-clx-surface rounded-2xl
|
|
15378
|
+
return `bg-clx-surface rounded-2xl ${shadowCls} border ${t.borderLight} transition-[box-shadow,transform] duration-200 overflow-hidden group ${hover} ${this._h() ? 'flex flex-col sm:flex-row' : 'flex flex-col'}`;
|
|
15375
15379
|
}, ...(ngDevMode ? [{ debugName: "_cardClass" }] : /* istanbul ignore next */ []));
|
|
15376
15380
|
_imageContainerClass = computed(() => this._h()
|
|
15377
15381
|
? `relative shrink-0 w-full aspect-square sm:aspect-auto ${this._sm() ? 'sm:w-32' : 'sm:w-44'} overflow-hidden rounded-t-2xl sm:rounded-t-none sm:rounded-l-2xl`
|
|
@@ -15403,7 +15407,7 @@ class ClxProductComponent {
|
|
|
15403
15407
|
return `${sz} font-bold ${color}`;
|
|
15404
15408
|
}, ...(ngDevMode ? [{ debugName: "_priceClass" }] : /* istanbul ignore next */ []));
|
|
15405
15409
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxProductComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15406
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxProductComponent, isStandalone: true, selector: "clx-product", inputs: { product: { classPropertyName: "product", publicName: "product", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, priority: { classPropertyName: "priority", publicName: "priority", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, clxColor: { classPropertyName: "clxColor", publicName: "clxColor", isSignal: true, isRequired: false, transformFunction: null }, actionTextColor: { classPropertyName: "actionTextColor", publicName: "actionTextColor", isSignal: true, isRequired: false, transformFunction: null }, imageFit: { classPropertyName: "imageFit", publicName: "imageFit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { addToCart: "addToCart", addToWishlist: "addToWishlist", viewOptions: "viewOptions" }, ngImport: i0, template: `
|
|
15410
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxProductComponent, isStandalone: true, selector: "clx-product", inputs: { product: { classPropertyName: "product", publicName: "product", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, priority: { classPropertyName: "priority", publicName: "priority", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, clxColor: { classPropertyName: "clxColor", publicName: "clxColor", isSignal: true, isRequired: false, transformFunction: null }, actionTextColor: { classPropertyName: "actionTextColor", publicName: "actionTextColor", isSignal: true, isRequired: false, transformFunction: null }, shadow: { classPropertyName: "shadow", publicName: "shadow", isSignal: true, isRequired: false, transformFunction: null }, imageFit: { classPropertyName: "imageFit", publicName: "imageFit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { addToCart: "addToCart", addToWishlist: "addToWishlist", viewOptions: "viewOptions" }, ngImport: i0, template: `
|
|
15407
15411
|
@if (loading()) {
|
|
15408
15412
|
@if (_h()) {
|
|
15409
15413
|
<!-- Skeleton Horizontal -->
|
|
@@ -15673,7 +15677,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
15673
15677
|
encapsulation: ViewEncapsulation.None,
|
|
15674
15678
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
15675
15679
|
}]
|
|
15676
|
-
}], propDecorators: { product: [{ type: i0.Input, args: [{ isSignal: true, alias: "product", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], priority: [{ type: i0.Input, args: [{ isSignal: true, alias: "priority", required: false }] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], clxColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "clxColor", required: false }] }], actionTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "actionTextColor", required: false }] }], imageFit: [{ type: i0.Input, args: [{ isSignal: true, alias: "imageFit", required: false }] }], addToCart: [{ type: i0.Output, args: ["addToCart"] }], addToWishlist: [{ type: i0.Output, args: ["addToWishlist"] }], viewOptions: [{ type: i0.Output, args: ["viewOptions"] }] } });
|
|
15680
|
+
}], propDecorators: { product: [{ type: i0.Input, args: [{ isSignal: true, alias: "product", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], priority: [{ type: i0.Input, args: [{ isSignal: true, alias: "priority", required: false }] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], clxColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "clxColor", required: false }] }], actionTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "actionTextColor", required: false }] }], shadow: [{ type: i0.Input, args: [{ isSignal: true, alias: "shadow", required: false }] }], imageFit: [{ type: i0.Input, args: [{ isSignal: true, alias: "imageFit", required: false }] }], addToCart: [{ type: i0.Output, args: ["addToCart"] }], addToWishlist: [{ type: i0.Output, args: ["addToWishlist"] }], viewOptions: [{ type: i0.Output, args: ["viewOptions"] }] } });
|
|
15677
15681
|
|
|
15678
15682
|
class ClxProductDetailComponent {
|
|
15679
15683
|
product = input(null, ...(ngDevMode ? [{ debugName: "product" }] : /* istanbul ignore next */ []));
|
|
@@ -16024,6 +16028,9 @@ class ClxWishlistComponent {
|
|
|
16024
16028
|
/** Text color for each item's own "Añadir al carrito" (variant="solid") — independent of
|
|
16025
16029
|
* `color`, same rationale as checkoutAllTextColor. */
|
|
16026
16030
|
addToCartTextColor = input(undefined, ...(ngDevMode ? [{ debugName: "addToCartTextColor" }] : /* istanbul ignore next */ []));
|
|
16031
|
+
/** Product card drop shadow — same ClxCardShadow scale as clx-card ('none' turns it off
|
|
16032
|
+
* entirely). Falls back to 'sm', the shadow these cards have always rendered with. */
|
|
16033
|
+
shadow = input(undefined, ...(ngDevMode ? [{ debugName: "shadow" }] : /* istanbul ignore next */ []));
|
|
16027
16034
|
sortOptions = input(WISHLIST_SORT_OPTIONS, ...(ngDevMode ? [{ debugName: "sortOptions" }] : /* istanbul ignore next */ []));
|
|
16028
16035
|
currentPage = model(1, ...(ngDevMode ? [{ debugName: "currentPage" }] : /* istanbul ignore next */ []));
|
|
16029
16036
|
pageSize = model(WISHLIST_PAGE_SIZE_DEFAULT, ...(ngDevMode ? [{ debugName: "pageSize" }] : /* istanbul ignore next */ []));
|
|
@@ -16050,7 +16057,8 @@ class ClxWishlistComponent {
|
|
|
16050
16057
|
* along with it. */
|
|
16051
16058
|
_cardClass = computed(() => {
|
|
16052
16059
|
const t = resolveColor(this._themeSvc.cardBorderColor());
|
|
16053
|
-
|
|
16060
|
+
const shadowCls = CARD_SHADOW_MAP[this.shadow() ?? 'sm'];
|
|
16061
|
+
return `bg-clx-surface rounded-2xl ${shadowCls} border ${t.borderLight} transition-[box-shadow,transform] duration-200 overflow-hidden group hover:shadow-md hover:-translate-y-0.5 flex flex-col sm:flex-row`;
|
|
16054
16062
|
}, ...(ngDevMode ? [{ debugName: "_cardClass" }] : /* istanbul ignore next */ []));
|
|
16055
16063
|
_imageContainerClass = 'relative shrink-0 w-full p-2.5 aspect-square sm:aspect-auto sm:w-40 overflow-hidden rounded-t-2xl sm:rounded-t-none sm:rounded-l-2xl';
|
|
16056
16064
|
_imageClass = 'w-full h-full object-cover transition-transform duration-500 group-hover:scale-105';
|
|
@@ -16121,7 +16129,7 @@ class ClxWishlistComponent {
|
|
|
16121
16129
|
this.onCheckoutAll.emit(this._filtered());
|
|
16122
16130
|
}
|
|
16123
16131
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxWishlistComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16124
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxWishlistComponent, isStandalone: true, selector: "clx-wishlist", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, checkoutAllTextColor: { classPropertyName: "checkoutAllTextColor", publicName: "checkoutAllTextColor", isSignal: true, isRequired: false, transformFunction: null }, addToCartTextColor: { classPropertyName: "addToCartTextColor", publicName: "addToCartTextColor", isSignal: true, isRequired: false, transformFunction: null }, sortOptions: { classPropertyName: "sortOptions", publicName: "sortOptions", isSignal: true, isRequired: false, transformFunction: null }, currentPage: { classPropertyName: "currentPage", publicName: "currentPage", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, sortValue: { classPropertyName: "sortValue", publicName: "sortValue", isSignal: true, isRequired: false, transformFunction: null }, searchValue: { classPropertyName: "searchValue", publicName: "searchValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { currentPage: "currentPageChange", pageSize: "pageSizeChange", sortValue: "sortValueChange", searchValue: "searchValueChange", onRemove: "onRemove", onAddToCart: "onAddToCart", onSearchChange: "onSearchChange", onSortChange: "onSortChange", onPageChange: "onPageChange", onCheckoutAll: "onCheckoutAll", onBrowseCatalog: "onBrowseCatalog" }, ngImport: i0, template: `
|
|
16132
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxWishlistComponent, isStandalone: true, selector: "clx-wishlist", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, checkoutAllTextColor: { classPropertyName: "checkoutAllTextColor", publicName: "checkoutAllTextColor", isSignal: true, isRequired: false, transformFunction: null }, addToCartTextColor: { classPropertyName: "addToCartTextColor", publicName: "addToCartTextColor", isSignal: true, isRequired: false, transformFunction: null }, shadow: { classPropertyName: "shadow", publicName: "shadow", isSignal: true, isRequired: false, transformFunction: null }, sortOptions: { classPropertyName: "sortOptions", publicName: "sortOptions", isSignal: true, isRequired: false, transformFunction: null }, currentPage: { classPropertyName: "currentPage", publicName: "currentPage", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, sortValue: { classPropertyName: "sortValue", publicName: "sortValue", isSignal: true, isRequired: false, transformFunction: null }, searchValue: { classPropertyName: "searchValue", publicName: "searchValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { currentPage: "currentPageChange", pageSize: "pageSizeChange", sortValue: "sortValueChange", searchValue: "searchValueChange", onRemove: "onRemove", onAddToCart: "onAddToCart", onSearchChange: "onSearchChange", onSortChange: "onSortChange", onPageChange: "onPageChange", onCheckoutAll: "onCheckoutAll", onBrowseCatalog: "onBrowseCatalog" }, ngImport: i0, template: `
|
|
16125
16133
|
<div class="flex flex-col gap-6">
|
|
16126
16134
|
|
|
16127
16135
|
@if (loading() || items().length > 0) {
|
|
@@ -16524,7 +16532,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
16524
16532
|
encapsulation: ViewEncapsulation.None,
|
|
16525
16533
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
16526
16534
|
}]
|
|
16527
|
-
}], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], checkoutAllTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "checkoutAllTextColor", required: false }] }], addToCartTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "addToCartTextColor", required: false }] }], sortOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortOptions", required: false }] }], currentPage: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentPage", required: false }] }, { type: i0.Output, args: ["currentPageChange"] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }, { type: i0.Output, args: ["pageSizeChange"] }], sortValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortValue", required: false }] }, { type: i0.Output, args: ["sortValueChange"] }], searchValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchValue", required: false }] }, { type: i0.Output, args: ["searchValueChange"] }], onRemove: [{ type: i0.Output, args: ["onRemove"] }], onAddToCart: [{ type: i0.Output, args: ["onAddToCart"] }], onSearchChange: [{ type: i0.Output, args: ["onSearchChange"] }], onSortChange: [{ type: i0.Output, args: ["onSortChange"] }], onPageChange: [{ type: i0.Output, args: ["onPageChange"] }], onCheckoutAll: [{ type: i0.Output, args: ["onCheckoutAll"] }], onBrowseCatalog: [{ type: i0.Output, args: ["onBrowseCatalog"] }] } });
|
|
16535
|
+
}], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], checkoutAllTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "checkoutAllTextColor", required: false }] }], addToCartTextColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "addToCartTextColor", required: false }] }], shadow: [{ type: i0.Input, args: [{ isSignal: true, alias: "shadow", required: false }] }], sortOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortOptions", required: false }] }], currentPage: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentPage", required: false }] }, { type: i0.Output, args: ["currentPageChange"] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }, { type: i0.Output, args: ["pageSizeChange"] }], sortValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortValue", required: false }] }, { type: i0.Output, args: ["sortValueChange"] }], searchValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchValue", required: false }] }, { type: i0.Output, args: ["searchValueChange"] }], onRemove: [{ type: i0.Output, args: ["onRemove"] }], onAddToCart: [{ type: i0.Output, args: ["onAddToCart"] }], onSearchChange: [{ type: i0.Output, args: ["onSearchChange"] }], onSortChange: [{ type: i0.Output, args: ["onSortChange"] }], onPageChange: [{ type: i0.Output, args: ["onPageChange"] }], onCheckoutAll: [{ type: i0.Output, args: ["onCheckoutAll"] }], onBrowseCatalog: [{ type: i0.Output, args: ["onBrowseCatalog"] }] } });
|
|
16528
16536
|
|
|
16529
16537
|
class ClxCartComponent {
|
|
16530
16538
|
items = input([], ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
|
|
@@ -16537,7 +16545,27 @@ class ClxCartComponent {
|
|
|
16537
16545
|
* showing a code input that always fails would read as broken, not "not built yet". */
|
|
16538
16546
|
showCoupon = input(true, ...(ngDevMode ? [{ debugName: "showCoupon" }] : /* istanbul ignore next */ []));
|
|
16539
16547
|
coupon = model(null, ...(ngDevMode ? [{ debugName: "coupon" }] : /* istanbul ignore next */ []));
|
|
16548
|
+
/** Drop shadow for the item cards and Order Summary panel — same ClxCardShadow scale as
|
|
16549
|
+
* clx-card ('none' turns it off entirely). Falls back to 'sm', the shadow these have always
|
|
16550
|
+
* rendered with. */
|
|
16551
|
+
shadow = input(undefined, ...(ngDevMode ? [{ debugName: "shadow" }] : /* istanbul ignore next */ []));
|
|
16552
|
+
_themeSvc = inject(ClxThemeService);
|
|
16540
16553
|
_quantityColor = computed(() => this.quantityColor() ?? this.color(), ...(ngDevMode ? [{ debugName: "_quantityColor" }] : /* istanbul ignore next */ []));
|
|
16554
|
+
/** Item cards — was bg-clx-surface + shadow-sm with NO border at all (unlike clx-product/
|
|
16555
|
+
* clx-wishlist, which already read cardBorderColor). Now consistent: themed border +
|
|
16556
|
+
* configurable shadow, same borderLight treatment as clx-card's own elevated variant. */
|
|
16557
|
+
_cardClass = computed(() => {
|
|
16558
|
+
const t = resolveColor(this._themeSvc.cardBorderColor());
|
|
16559
|
+
const shadowCls = CARD_SHADOW_MAP[this.shadow() ?? 'sm'];
|
|
16560
|
+
return `bg-clx-surface rounded-2xl ${shadowCls} border ${t.borderLight} flex gap-0 overflow-hidden group transition-[box-shadow,transform] duration-200 hover:shadow-md hover:-translate-y-0.5`;
|
|
16561
|
+
}, ...(ngDevMode ? [{ debugName: "_cardClass" }] : /* istanbul ignore next */ []));
|
|
16562
|
+
/** Order Summary panel — same border/shadow treatment as _cardClass, but no hover lift (it's a
|
|
16563
|
+
* static panel, not a clickable card). */
|
|
16564
|
+
_summaryClass = computed(() => {
|
|
16565
|
+
const t = resolveColor(this._themeSvc.cardBorderColor());
|
|
16566
|
+
const shadowCls = CARD_SHADOW_MAP[this.shadow() ?? 'sm'];
|
|
16567
|
+
return `bg-clx-surface rounded-2xl ${shadowCls} border ${t.borderLight} p-5 flex flex-col gap-4`;
|
|
16568
|
+
}, ...(ngDevMode ? [{ debugName: "_summaryClass" }] : /* istanbul ignore next */ []));
|
|
16541
16569
|
onRemove = output();
|
|
16542
16570
|
onQuantityChange = output();
|
|
16543
16571
|
onClearCart = output();
|
|
@@ -16573,7 +16601,7 @@ class ClxCartComponent {
|
|
|
16573
16601
|
this.coupon.set(null);
|
|
16574
16602
|
}
|
|
16575
16603
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxCartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16576
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxCartComponent, isStandalone: true, selector: "clx-cart", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, quantityColor: { classPropertyName: "quantityColor", publicName: "quantityColor", isSignal: true, isRequired: false, transformFunction: null }, showCoupon: { classPropertyName: "showCoupon", publicName: "showCoupon", isSignal: true, isRequired: false, transformFunction: null }, coupon: { classPropertyName: "coupon", publicName: "coupon", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { coupon: "couponChange", onRemove: "onRemove", onQuantityChange: "onQuantityChange", onClearCart: "onClearCart", onApplyCoupon: "onApplyCoupon", onCheckout: "onCheckout", onBrowseCatalog: "onBrowseCatalog" }, ngImport: i0, template: `
|
|
16604
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxCartComponent, isStandalone: true, selector: "clx-cart", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, quantityColor: { classPropertyName: "quantityColor", publicName: "quantityColor", isSignal: true, isRequired: false, transformFunction: null }, showCoupon: { classPropertyName: "showCoupon", publicName: "showCoupon", isSignal: true, isRequired: false, transformFunction: null }, coupon: { classPropertyName: "coupon", publicName: "coupon", isSignal: true, isRequired: false, transformFunction: null }, shadow: { classPropertyName: "shadow", publicName: "shadow", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { coupon: "couponChange", onRemove: "onRemove", onQuantityChange: "onQuantityChange", onClearCart: "onClearCart", onApplyCoupon: "onApplyCoupon", onCheckout: "onCheckout", onBrowseCatalog: "onBrowseCatalog" }, ngImport: i0, template: `
|
|
16577
16605
|
<!-- ── Loading ─────────────────────────────────────────────────────────────── -->
|
|
16578
16606
|
@if (loading()) {
|
|
16579
16607
|
|
|
@@ -16637,7 +16665,7 @@ class ClxCartComponent {
|
|
|
16637
16665
|
|
|
16638
16666
|
<!-- Item cards -->
|
|
16639
16667
|
@for (item of items(); track item.id) {
|
|
16640
|
-
<article class="
|
|
16668
|
+
<article [class]="_cardClass()">
|
|
16641
16669
|
|
|
16642
16670
|
<!-- Image — fixed square -->
|
|
16643
16671
|
<div class="relative shrink-0 w-28 h-28 p-2.5 lg:w-36 lg:h-36 overflow-hidden">
|
|
@@ -16737,7 +16765,7 @@ class ClxCartComponent {
|
|
|
16737
16765
|
<!-- ══ RIGHT — Order Summary ══════════════════════════════════════════════ -->
|
|
16738
16766
|
<aside class="w-full lg:w-80 shrink-0 lg:sticky lg:top-6 flex flex-col gap-4">
|
|
16739
16767
|
|
|
16740
|
-
<div class="
|
|
16768
|
+
<div [class]="_summaryClass()">
|
|
16741
16769
|
<h2 class="text-base font-semibold text-clx-text-label">Order Summary</h2>
|
|
16742
16770
|
|
|
16743
16771
|
<!-- Coupon -->
|
|
@@ -16918,7 +16946,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
16918
16946
|
|
|
16919
16947
|
<!-- Item cards -->
|
|
16920
16948
|
@for (item of items(); track item.id) {
|
|
16921
|
-
<article class="
|
|
16949
|
+
<article [class]="_cardClass()">
|
|
16922
16950
|
|
|
16923
16951
|
<!-- Image — fixed square -->
|
|
16924
16952
|
<div class="relative shrink-0 w-28 h-28 p-2.5 lg:w-36 lg:h-36 overflow-hidden">
|
|
@@ -17018,7 +17046,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
17018
17046
|
<!-- ══ RIGHT — Order Summary ══════════════════════════════════════════════ -->
|
|
17019
17047
|
<aside class="w-full lg:w-80 shrink-0 lg:sticky lg:top-6 flex flex-col gap-4">
|
|
17020
17048
|
|
|
17021
|
-
<div class="
|
|
17049
|
+
<div [class]="_summaryClass()">
|
|
17022
17050
|
<h2 class="text-base font-semibold text-clx-text-label">Order Summary</h2>
|
|
17023
17051
|
|
|
17024
17052
|
<!-- Coupon -->
|
|
@@ -17117,7 +17145,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
17117
17145
|
}
|
|
17118
17146
|
`,
|
|
17119
17147
|
}]
|
|
17120
|
-
}], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], quantityColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "quantityColor", required: false }] }], showCoupon: [{ type: i0.Input, args: [{ isSignal: true, alias: "showCoupon", required: false }] }], coupon: [{ type: i0.Input, args: [{ isSignal: true, alias: "coupon", required: false }] }, { type: i0.Output, args: ["couponChange"] }], onRemove: [{ type: i0.Output, args: ["onRemove"] }], onQuantityChange: [{ type: i0.Output, args: ["onQuantityChange"] }], onClearCart: [{ type: i0.Output, args: ["onClearCart"] }], onApplyCoupon: [{ type: i0.Output, args: ["onApplyCoupon"] }], onCheckout: [{ type: i0.Output, args: ["onCheckout"] }], onBrowseCatalog: [{ type: i0.Output, args: ["onBrowseCatalog"] }] } });
|
|
17148
|
+
}], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], quantityColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "quantityColor", required: false }] }], showCoupon: [{ type: i0.Input, args: [{ isSignal: true, alias: "showCoupon", required: false }] }], coupon: [{ type: i0.Input, args: [{ isSignal: true, alias: "coupon", required: false }] }, { type: i0.Output, args: ["couponChange"] }], shadow: [{ type: i0.Input, args: [{ isSignal: true, alias: "shadow", required: false }] }], onRemove: [{ type: i0.Output, args: ["onRemove"] }], onQuantityChange: [{ type: i0.Output, args: ["onQuantityChange"] }], onClearCart: [{ type: i0.Output, args: ["onClearCart"] }], onApplyCoupon: [{ type: i0.Output, args: ["onApplyCoupon"] }], onCheckout: [{ type: i0.Output, args: ["onCheckout"] }], onBrowseCatalog: [{ type: i0.Output, args: ["onBrowseCatalog"] }] } });
|
|
17121
17149
|
|
|
17122
17150
|
class ClxCartSummaryDrawer {
|
|
17123
17151
|
data = inject(CLX_MODAL_DATA);
|