codexly-ui 0.24.0 → 0.25.0

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.24.0",
3
+ "version": "0.25.0",
4
4
  "description": "Standalone, signal-based Angular UI component library for Codexly, styled with Tailwind CSS.",
5
5
  "keywords": [
6
6
  "angular",
@@ -141,9 +141,9 @@ declare class ClxSocialIconComponent {
141
141
  readonly platform: _angular_core.InputSignal<ClxSocialPlatform>;
142
142
  readonly variant: _angular_core.InputSignal<ClxButtonVariant>;
143
143
  readonly color: _angular_core.InputSignal<ClxColorInput | undefined>;
144
- readonly size: _angular_core.InputSignal<"sm" | "md" | "xxs" | "xs" | "lg" | undefined>;
144
+ readonly size: _angular_core.InputSignal<"xxs" | "xs" | "sm" | "md" | "lg" | undefined>;
145
145
  protected readonly _color: _angular_core.Signal<ClxColorInput>;
146
- protected readonly _size: _angular_core.Signal<"sm" | "md" | "xxs" | "xs" | "lg">;
146
+ protected readonly _size: _angular_core.Signal<"xxs" | "xs" | "sm" | "md" | "lg">;
147
147
  protected readonly _markup: _angular_core.Signal<SafeHtml>;
148
148
  protected readonly _hostClass: _angular_core.Signal<string>;
149
149
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClxSocialIconComponent, never>;
@@ -166,11 +166,11 @@ declare class ClxButtonComponent {
166
166
  * unusual background shade (bright yellow) where the variant's own resolved text color (white)
167
167
  * reads poorly and a themed text tone is needed instead. */
168
168
  readonly textColor: _angular_core.InputSignal<ClxColorInput | undefined>;
169
- readonly size: _angular_core.InputSignal<"sm" | "md" | "xxs" | "xs" | "lg" | undefined>;
169
+ readonly size: _angular_core.InputSignal<"xxs" | "xs" | "sm" | "md" | "lg" | undefined>;
170
170
  readonly shape: _angular_core.InputSignal<ClxShape | undefined>;
171
171
  private readonly _tableActionsColor;
172
172
  protected readonly _color: _angular_core.Signal<ClxColorInput>;
173
- protected readonly _size: _angular_core.Signal<"sm" | "md" | "xxs" | "xs" | "lg">;
173
+ protected readonly _size: _angular_core.Signal<"xxs" | "xs" | "sm" | "md" | "lg">;
174
174
  protected readonly _shape: _angular_core.Signal<ClxShape>;
175
175
  readonly loading: _angular_core.InputSignal<boolean>;
176
176
  readonly disabled: _angular_core.InputSignal<boolean>;
@@ -214,7 +214,7 @@ declare class ClxButtonGroupComponent {
214
214
  readonly label: _angular_core.InputSignal<string>;
215
215
  readonly shape: _angular_core.InputSignal<ClxButtonGroupShape>;
216
216
  readonly attached: _angular_core.InputSignal<boolean>;
217
- readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
217
+ readonly orientation: _angular_core.InputSignal<"horizontal" | "vertical">;
218
218
  protected readonly _groupClass: _angular_core.Signal<string>;
219
219
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClxButtonGroupComponent, never>;
220
220
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClxButtonGroupComponent, "clx-button-group", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "attached": { "alias": "attached"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -226,13 +226,13 @@ declare class ClxBadgeComponent {
226
226
  private readonly _themeSvc;
227
227
  readonly variant: _angular_core.InputSignal<ClxBadgeVariant>;
228
228
  readonly color: _angular_core.InputSignal<ClxColorInput | undefined>;
229
- readonly size: _angular_core.InputSignal<"sm" | "md" | "xs" | undefined>;
229
+ readonly size: _angular_core.InputSignal<"xs" | "sm" | "md" | undefined>;
230
230
  readonly shape: _angular_core.InputSignal<ClxShape | undefined>;
231
231
  readonly positioned: _angular_core.InputSignal<boolean>;
232
232
  /** Overrides the text color the variant derives from `color` ('white' | 'emerald-900'…). */
233
233
  readonly textColor: _angular_core.InputSignal<ClxColorInput | undefined>;
234
234
  protected readonly _color: _angular_core.Signal<ClxColorInput>;
235
- protected readonly _size: _angular_core.Signal<"sm" | "md" | "xs">;
235
+ protected readonly _size: _angular_core.Signal<"xs" | "sm" | "md">;
236
236
  protected readonly _shape: _angular_core.Signal<ClxShape>;
237
237
  protected readonly _hostClass: _angular_core.Signal<string>;
238
238
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClxBadgeComponent, never>;
@@ -1367,7 +1367,7 @@ declare class ClxRadioGroupComponent implements ControlValueAccessor {
1367
1367
  readonly resolvedColor: _angular_core.Signal<ClxColorInput>;
1368
1368
  readonly variant: _angular_core.InputSignal<ClxRadioVariant>;
1369
1369
  readonly size: _angular_core.InputSignal<"sm" | "md" | "lg">;
1370
- readonly direction: _angular_core.InputSignal<"vertical" | "horizontal">;
1370
+ readonly direction: _angular_core.InputSignal<"horizontal" | "vertical">;
1371
1371
  readonly disabled: _angular_core.InputSignal<boolean>;
1372
1372
  /** Current selected value — readable by child clx-radio via injection */
1373
1373
  readonly _value: _angular_core.WritableSignal<unknown>;
@@ -2492,7 +2492,7 @@ declare class ClxMenuComponent implements AfterViewInit {
2492
2492
  readonly style: _angular_core.InputSignal<ClxNavZoneStyle | undefined>;
2493
2493
  protected readonly _resolved: _angular_core.Signal<{
2494
2494
  color: codexly_ui.ClxColorInput;
2495
- size: "sm" | "md" | "xs";
2495
+ size: "xs" | "sm" | "md";
2496
2496
  weight: codexly_ui.ClxFontWeight;
2497
2497
  }>;
2498
2498
  protected readonly _color: _angular_core.Signal<codexly_ui.ClxColorInput>;
@@ -2848,7 +2848,7 @@ declare class ClxNotificationComponent {
2848
2848
  } | undefined>;
2849
2849
  readonly buttonColor: _angular_core.InputSignal<ClxColorInput | undefined>;
2850
2850
  readonly buttonVariant: _angular_core.InputSignal<ClxButtonVariant>;
2851
- readonly buttonSize: _angular_core.InputSignal<"sm" | "md" | "xxs" | "xs" | "lg">;
2851
+ readonly buttonSize: _angular_core.InputSignal<"xxs" | "xs" | "sm" | "md" | "lg">;
2852
2852
  readonly buttonIcon: _angular_core.InputSignal<string>;
2853
2853
  /** Unread-count badge color — falls back to the theme's notification.unreadColor (then
2854
2854
  * primaryColor) when unset. */
@@ -3402,7 +3402,7 @@ declare class ClxFabComponent {
3402
3402
  protected readonly _position: _angular_core.Signal<ClxFabPosition>;
3403
3403
  protected readonly _triggerClass: _angular_core.Signal<string>;
3404
3404
  /** Los botones de la pila de accesos van un paso más pequeños que el trigger. */
3405
- protected readonly _itemSize: _angular_core.Signal<"sm" | "xxs" | "xs">;
3405
+ protected readonly _itemSize: _angular_core.Signal<"xxs" | "xs" | "sm">;
3406
3406
  private readonly _sso;
3407
3407
  readonly _scrollStrategy: _angular_cdk_overlay.RepositionScrollStrategy;
3408
3408
  readonly _positions: ConnectedPosition[];
@@ -3656,7 +3656,7 @@ declare class ClxStatCardComponent {
3656
3656
  readonly metric: _angular_core.InputSignal<ClxStatMetric>;
3657
3657
  readonly chartData: _angular_core.InputSignal<number[]>;
3658
3658
  readonly color: _angular_core.InputSignal<ClxColorInput>;
3659
- readonly layout: _angular_core.InputSignal<"vertical" | "horizontal" | "bar" | "banner" | "corner">;
3659
+ readonly layout: _angular_core.InputSignal<"horizontal" | "vertical" | "bar" | "banner" | "corner">;
3660
3660
  protected readonly _hostClass: _angular_core.Signal<string>;
3661
3661
  protected readonly _barHeights: _angular_core.Signal<number[]>;
3662
3662
  protected readonly _iconBg: _angular_core.Signal<string>;
@@ -3928,7 +3928,7 @@ declare class ClxProductComponent {
3928
3928
  * itself always reads cardBorderColor() regardless of variant — only whether it's shown at
3929
3929
  * all, and whether a shadow accompanies it, changes. */
3930
3930
  readonly variant: _angular_core.InputSignal<ClxCardVariant>;
3931
- readonly imageFit: _angular_core.InputSignal<"cover" | "contain">;
3931
+ readonly imageFit: _angular_core.InputSignal<"contain" | "cover">;
3932
3932
  readonly addToCart: _angular_core.OutputEmitterRef<ClxProduct>;
3933
3933
  readonly addToWishlist: _angular_core.OutputEmitterRef<ClxProduct>;
3934
3934
  readonly viewOptions: _angular_core.OutputEmitterRef<ClxProduct>;
@@ -3980,7 +3980,7 @@ declare class ClxProductComponent {
3980
3980
  */
3981
3981
  declare class ClxProductBadgesComponent {
3982
3982
  readonly badges: _angular_core.InputSignal<readonly ClxTagBadge[]>;
3983
- readonly size: _angular_core.InputSignal<"sm" | "md" | "xs">;
3983
+ readonly size: _angular_core.InputSignal<"xs" | "sm" | "md">;
3984
3984
  readonly topRightOffset: _angular_core.InputSignal<string | undefined>;
3985
3985
  readonly bottomRightOffset: _angular_core.InputSignal<string | undefined>;
3986
3986
  protected readonly _corners: _angular_core.Signal<{
@@ -4018,6 +4018,9 @@ interface ClxVariation {
4018
4018
  name: string;
4019
4019
  description?: string;
4020
4020
  sale_price?: number;
4021
+ /** This variation's discount when the host resolves it per variation (0 = none); undefined = the
4022
+ * product's has_discount / discount_percentage. */
4023
+ discount_percentage?: number;
4021
4024
  sort_order: number;
4022
4025
  images: string[];
4023
4026
  in_stock: boolean;
@@ -4219,10 +4222,11 @@ declare class ClxProductDetailComponent {
4219
4222
  protected tagLabel(tag: string): string;
4220
4223
  protected tagColor(tag: string): ClxColorInput;
4221
4224
  protected tagVariant(tag: string): codexly_ui.ClxBadgeVariant;
4222
- /** discount_percentage is the primary source (matches this codebase's actual data model: the
4223
- * percentage lives on the product, the price it applies to is sale_price/product_sale_price —
4224
- * see listPrice() above). discount_price is only a fallback for a caller whose backend instead
4225
- * stores a precomputed higher reference price to derive the percentage from. */
4225
+ /** The selected variation's own discount_percentage when the host sends one, else the product's
4226
+ * (it applies on top of the list price — see listPrice() above). discount_price is only a fallback
4227
+ * for a caller whose backend instead stores a precomputed higher reference price to derive the
4228
+ * percentage from. */
4229
+ private readonly _discountPct;
4226
4230
  readonly discount: _angular_core.Signal<number>;
4227
4231
  /** The host's configured tags (ClxProductTagService) for the selected variation, over the gallery —
4228
4232
  * the variation's own tags and settings when the host sends them, else the product's. */
@@ -4598,7 +4602,7 @@ declare class ClxSearchComponent implements ControlValueAccessor {
4598
4602
  padDefaultL: string;
4599
4603
  padDefaultR: string;
4600
4604
  }>;
4601
- protected readonly _buttonSize: _angular_core.Signal<"sm" | "md" | "xs" | "lg">;
4605
+ protected readonly _buttonSize: _angular_core.Signal<"xs" | "sm" | "md" | "lg">;
4602
4606
  protected readonly _accentText: _angular_core.Signal<string>;
4603
4607
  protected readonly _wrapperClass: _angular_core.Signal<string>;
4604
4608
  protected readonly _inputClass: _angular_core.Signal<string>;