codexly-ui 0.12.9 → 0.12.11

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codexly-ui",
3
- "version": "0.12.9",
3
+ "version": "0.12.11",
4
4
  "description": "Standalone, signal-based Angular UI component library for Codexly, styled with Tailwind CSS.",
5
5
  "keywords": [
6
6
  "angular",
@@ -3322,8 +3322,12 @@ declare class ClxProductComponent {
3322
3322
  protected readonly _buttonSize: _angular_core.Signal<"sm" | "md">;
3323
3323
  protected readonly _skeletonW: _angular_core.Signal<"sm:w-32" | "sm:w-44">;
3324
3324
  protected readonly _skeletonH: _angular_core.Signal<"160px" | "200px">;
3325
- /** Themed border — same accent as the rest of the card (clxColor), same borderLight treatment
3326
- * as clx-card's own elevated variant. */
3325
+ private readonly _themeSvc;
3326
+ /** Themed border deliberately independent from clxColor (which drives the wishlist heart,
3327
+ * "Añadir al carrito" button, price accent, etc). Always resolves from the theme's
3328
+ * cardBorderColor (falling back to primaryColor), same as clx-card's own elevated variant —
3329
+ * so a host that pins clxColor to a one-off brand accent doesn't also drag the card border
3330
+ * along with it. */
3327
3331
  protected readonly _cardClass: _angular_core.Signal<string>;
3328
3332
  protected readonly _imageContainerClass: _angular_core.Signal<string>;
3329
3333
  protected readonly _imageClass: _angular_core.Signal<string>;
@@ -3432,6 +3436,12 @@ declare class ClxProductDetailComponent {
3432
3436
  * clxColor() when not set, so existing consumers are unaffected. */
3433
3437
  readonly actionColor: _angular_core.InputSignal<ClxColorInput | undefined>;
3434
3438
  protected readonly _actionColor: _angular_core.Signal<ClxColorInput>;
3439
+ /** Text color for the same three CTAs (Comprar ahora / Agrega al carrito / Dejar una reseña) —
3440
+ * independent of actionColor, same rationale as clx-button's own [textColor]: a saturated
3441
+ * actionColor (e.g. brand yellow) can force a background where the auto-resolved white/dark-800
3442
+ * contrast text still reads poorly, and this lets a host pin the exact text tone instead.
3443
+ * Undefined (the default) leaves each button's own automatic contrast resolution untouched. */
3444
+ readonly actionTextColor: _angular_core.InputSignal<ClxColorInput | undefined>;
3435
3445
  /** Optional override for the floating wishlist (heart) button on the gallery — same rationale
3436
3446
  * as actionColor: a saturated brand color that works as a small accent elsewhere can look wrong
3437
3447
  * as a solid filled circle. Falls back to clxColor()/'solid' when not set. */
@@ -3449,6 +3459,11 @@ declare class ClxProductDetailComponent {
3449
3459
  protected readonly _discountBadgeColor: _angular_core.Signal<ClxColorInput>;
3450
3460
  protected readonly _specButtonColor: _angular_core.Signal<ClxColorInput>;
3451
3461
  protected readonly _quantityColor: _angular_core.Signal<ClxColorInput>;
3462
+ /** Text color for the spec option buttons (Talla/Material/etc — not the color-swatch spec type,
3463
+ * which uses opt.value as an inline background and has no clx-button text to color). Same
3464
+ * rationale as actionTextColor: independent of specButtonColor, undefined leaves clx-button's
3465
+ * own automatic contrast resolution untouched. */
3466
+ readonly specButtonTextColor: _angular_core.InputSignal<ClxColorInput | undefined>;
3452
3467
  readonly loading: _angular_core.InputSignal<boolean>;
3453
3468
  readonly currency: _angular_core.InputSignal<string>;
3454
3469
  /** Hides the tabs (Características/Especificaciones/Descripción) and the Reviews section —
@@ -3540,7 +3555,7 @@ declare class ClxProductDetailComponent {
3540
3555
  specsLeft<T>(specs: T[]): T[];
3541
3556
  specsRight<T>(specs: T[]): T[];
3542
3557
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClxProductDetailComponent, never>;
3543
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClxProductDetailComponent, "clx-product-detail", never, { "product": { "alias": "product"; "required": false; "isSignal": true; }; "initialVariationId": { "alias": "initialVariationId"; "required": false; "isSignal": true; }; "clxColor": { "alias": "clxColor"; "required": false; "isSignal": true; }; "actionColor": { "alias": "actionColor"; "required": false; "isSignal": true; }; "wishlistColor": { "alias": "wishlistColor"; "required": false; "isSignal": true; }; "wishlistVariant": { "alias": "wishlistVariant"; "required": false; "isSignal": true; }; "stockBadgeColor": { "alias": "stockBadgeColor"; "required": false; "isSignal": true; }; "discountBadgeColor": { "alias": "discountBadgeColor"; "required": false; "isSignal": true; }; "specButtonColor": { "alias": "specButtonColor"; "required": false; "isSignal": true; }; "quantityColor": { "alias": "quantityColor"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "currency": { "alias": "currency"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; }, { "addToCart": "addToCart"; "buyNow": "buyNow"; "wishlist": "wishlist"; "variationChange": "variationChange"; "leaveReview": "leaveReview"; }, never, never, true, never>;
3558
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClxProductDetailComponent, "clx-product-detail", never, { "product": { "alias": "product"; "required": false; "isSignal": true; }; "initialVariationId": { "alias": "initialVariationId"; "required": false; "isSignal": true; }; "clxColor": { "alias": "clxColor"; "required": false; "isSignal": true; }; "actionColor": { "alias": "actionColor"; "required": false; "isSignal": true; }; "actionTextColor": { "alias": "actionTextColor"; "required": false; "isSignal": true; }; "wishlistColor": { "alias": "wishlistColor"; "required": false; "isSignal": true; }; "wishlistVariant": { "alias": "wishlistVariant"; "required": false; "isSignal": true; }; "stockBadgeColor": { "alias": "stockBadgeColor"; "required": false; "isSignal": true; }; "discountBadgeColor": { "alias": "discountBadgeColor"; "required": false; "isSignal": true; }; "specButtonColor": { "alias": "specButtonColor"; "required": false; "isSignal": true; }; "quantityColor": { "alias": "quantityColor"; "required": false; "isSignal": true; }; "specButtonTextColor": { "alias": "specButtonTextColor"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "currency": { "alias": "currency"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; }, { "addToCart": "addToCart"; "buyNow": "buyNow"; "wishlist": "wishlist"; "variationChange": "variationChange"; "leaveReview": "leaveReview"; }, never, never, true, never>;
3544
3559
  }
3545
3560
 
3546
3561
  interface ClxProductQuickViewData {
@@ -3618,8 +3633,11 @@ declare class ClxWishlistComponent {
3618
3633
  /** Emitted from the empty-state's "Ir a la tienda" CTA — the host navigates to the catalog. */
3619
3634
  readonly onBrowseCatalog: _angular_core.OutputEmitterRef<void>;
3620
3635
  readonly _skeletonItems: unknown[];
3621
- /** Themed border — falls back to cardBorderColor() (itself falling back to primaryColor) when
3622
- * `color` is unset, same borderLight treatment as clx-card's own elevated variant. */
3636
+ /** Themed border — deliberately independent from `color` (which drives the search input,
3637
+ * "Agregar todo al carrito" button, "Añadir al carrito" per-item button, etc). Always resolves
3638
+ * from the theme's cardBorderColor (falling back to primaryColor), same as clx-card's own
3639
+ * elevated variant — so a host passing an explicit `color` doesn't also drag the card border
3640
+ * along with it. */
3623
3641
  protected readonly _cardClass: _angular_core.Signal<string>;
3624
3642
  protected readonly _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";
3625
3643
  protected readonly _imageClass = "w-full h-full object-cover transition-transform duration-500 group-hover:scale-105";