@q1travel/design-system 0.30.4 → 0.30.5

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.
@@ -525,6 +525,9 @@ Static WCAG stroke contrast against canvas/panel (2026-10-07): light neutral 5.3
525
525
 
526
526
  CheckCircleFill accepts `tone?: 'default' | 'success'` (default `default`); success adds `.check-circle-fill--success`, using the same derived solid success fill as Badge and `--q1-color-action-on-primary` foreground; existing calls retain their DOM and appearance, and adjacent text conveys completion.
527
527
 
528
+
529
+ **Images and proportions.** AspectRatio requires a finite positive width/height ratio (invalid values render as 1 with one development warning) and only reserves layout space. Image requires alt (empty for decoration), defaults to contain and eager, accepts optional src, fit, loading, sm/md/lg square sizes (32/40/48), onError and root className; omitted size follows host width and natural image ratio. Loading keeps img mounted under a decorative Skeleton; missing and failed sources show a single named image fallback, and source changes isolate stale events. Decorative states are hidden from assistive technology; neither Image nor its host becomes inert. Inside AspectRatio, omit size: the Image root and img fill the ratio frame and object-fit controls complete centered containment or cropping. No new tokens or existing-consumer migration; remove new usages before reverting the additive exports.
530
+
528
531
  **Status and feedback.** Banner, ProjectBanner, Note, ErrorCard, RegionErrorState, ErrorMessage, EmptyState, Badge, Pill, CheckCircleFill, StatusDot, ToastProvider, useToast, Feedback, PageFeedback, Spinner, LoadingDots, Skeleton.
529
532
  **Status and feedback.** Banner, ProjectBanner, Note, ErrorCard, RegionErrorState, ErrorMessage, EmptyState, Badge, Pill, CheckCircleFill, StatusDot, ToastProvider, useToast, Feedback, PageFeedback, Spinner, LoadingDots, Skeleton, StatusPage, SkeletonIllustration, EmptyListIllustration.
530
533
 
@@ -525,6 +525,9 @@ Static WCAG stroke contrast against canvas/panel (2026-10-07): light neutral 5.3
525
525
 
526
526
  CheckCircleFill accepts `tone?: 'default' | 'success'` (default `default`); success adds `.check-circle-fill--success`, using the same derived solid success fill as Badge and `--q1-color-action-on-primary` foreground; existing calls retain their DOM and appearance, and adjacent text conveys completion.
527
527
 
528
+
529
+ **Images and proportions.** AspectRatio requires a finite positive width/height ratio (invalid values render as 1 with one development warning) and only reserves layout space. Image requires alt (empty for decoration), defaults to contain and eager, accepts optional src, fit, loading, sm/md/lg square sizes (32/40/48), onError and root className; omitted size follows host width and natural image ratio. Loading keeps img mounted under a decorative Skeleton; missing and failed sources show a single named image fallback, and source changes isolate stale events. Decorative states are hidden from assistive technology; neither Image nor its host becomes inert. Inside AspectRatio, omit size: the Image root and img fill the ratio frame and object-fit controls complete centered containment or cropping. No new tokens or existing-consumer migration; remove new usages before reverting the additive exports.
530
+
528
531
  **Status and feedback.** Banner, ProjectBanner, Note, ErrorCard, RegionErrorState, ErrorMessage, EmptyState, Badge, Pill, CheckCircleFill, StatusDot, ToastProvider, useToast, Feedback, PageFeedback, Spinner, LoadingDots, Skeleton.
529
532
  **Status and feedback.** Banner, ProjectBanner, Note, ErrorCard, RegionErrorState, ErrorMessage, EmptyState, Badge, Pill, CheckCircleFill, StatusDot, ToastProvider, useToast, Feedback, PageFeedback, Spinner, LoadingDots, Skeleton, StatusPage, SkeletonIllustration, EmptyListIllustration.
530
533
 
@@ -18,6 +18,7 @@ import { MouseEvent as MouseEvent_2 } from 'react';
18
18
  import { MouseEventHandler } from 'react';
19
19
  import { PointerEventHandler } from 'react';
20
20
  import { ReactElement } from 'react';
21
+ import { ReactEventHandler } from 'react';
21
22
  import { ReactNode } from 'react';
22
23
  import { Ref } from 'react';
23
24
  import { RefAttributes } from 'react';
@@ -29,6 +30,14 @@ import { TextareaHTMLAttributes } from 'react';
29
30
 
30
31
  export declare function addDays(date: Date, amount: number): Date;
31
32
 
33
+ export declare function AspectRatio({ ratio, children, className }: AspectRatioProps): JSX.Element;
34
+
35
+ export declare type AspectRatioProps = {
36
+ ratio: number;
37
+ children: ReactNode;
38
+ className?: string;
39
+ };
40
+
32
41
  export declare function Attachment({ name, size, type, progress, error, onRetry, onRemove, }: AttachmentProps): JSX.Element;
33
42
 
34
43
  export declare type AttachmentProps = {
@@ -1260,6 +1269,19 @@ export declare type IconButtonProps = IconButtonAccessibleName & IconButtonBaseP
1260
1269
  ref?: Ref<HTMLButtonElement>;
1261
1270
  };
1262
1271
 
1272
+ declare function Image_2({ src, alt, loading, fit, size, onError, className }: ImageProps): JSX.Element;
1273
+ export { Image_2 as Image }
1274
+
1275
+ export declare type ImageProps = {
1276
+ src?: string;
1277
+ alt: string;
1278
+ loading?: 'eager' | 'lazy';
1279
+ fit?: 'contain' | 'cover';
1280
+ size?: 'sm' | 'md' | 'lg';
1281
+ onError?: ReactEventHandler<HTMLImageElement>;
1282
+ className?: string;
1283
+ };
1284
+
1263
1285
  export declare function InfoTip({ label, content }: InfoTipProps): JSX.Element;
1264
1286
 
1265
1287
  export declare type InfoTipProps = {