@dxc-technology/halstack-react 0.0.0-acc2a7e → 0.0.0-ad2ff92

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/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react from 'react';
2
- import { ReactNode, SVGProps, ReactElement, MouseEvent, ReactEventHandler } from 'react';
2
+ import { ReactNode, SVGProps, ReactElement, ReactEventHandler } from 'react';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { SortColumn } from 'react-data-grid';
5
5
  import * as _emotion_styled from '@emotion/styled';
@@ -59,7 +59,7 @@ type AccordionItemProps = {
59
59
  */
60
60
  tabIndex?: number;
61
61
  };
62
- type CommonProps$9 = {
62
+ type CommonProps$a = {
63
63
  /**
64
64
  * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
65
65
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
@@ -70,7 +70,7 @@ type CommonProps$9 = {
70
70
  */
71
71
  children: ReactElement<AccordionItemProps>[] | ReactElement<AccordionItemProps>;
72
72
  };
73
- type IndependentProps = CommonProps$9 & {
73
+ type IndependentProps = CommonProps$a & {
74
74
  /**
75
75
  * When true, limits the user to single-open section at a time. When false, multiple sections can be opened simultaneously.
76
76
  */
@@ -91,7 +91,7 @@ type IndependentProps = CommonProps$9 & {
91
91
  */
92
92
  onActiveChange?: (index: number) => void;
93
93
  };
94
- type NonIndependentProps = CommonProps$9 & {
94
+ type NonIndependentProps = CommonProps$a & {
95
95
  /**
96
96
  * When true, limits the user to single-open section at a time. When false, multiple sections can be opened simultaneously.
97
97
  */
@@ -112,10 +112,10 @@ type NonIndependentProps = CommonProps$9 & {
112
112
  */
113
113
  onActiveChange?: (index: number[]) => void;
114
114
  };
115
- type Props$I = IndependentProps | NonIndependentProps;
115
+ type Props$L = IndependentProps | NonIndependentProps;
116
116
 
117
117
  declare const DxcAccordion: {
118
- (props: Props$I): JSX.Element;
118
+ (props: Props$L): JSX.Element;
119
119
  AccordionItem: ({ label, subLabel, badge, statusLight, icon, assistiveText, disabled, children, tabIndex, }: AccordionItemProps) => JSX.Element;
120
120
  };
121
121
 
@@ -145,7 +145,7 @@ type Message = {
145
145
  */
146
146
  text: ReactNode;
147
147
  };
148
- type CommonProps$8 = {
148
+ type CommonProps$9 = {
149
149
  /**
150
150
  * If true, the alert will have a close button that will remove the message from the alert,
151
151
  * only in banner and inline modes. The rest of the functionality will depend
@@ -198,206 +198,147 @@ type ModeSpecificProps = {
198
198
  */
199
199
  mode: "modal";
200
200
  };
201
- type Props$H = CommonProps$8 & ModeSpecificProps;
201
+ type Props$K = CommonProps$9 & ModeSpecificProps;
202
202
 
203
- declare function DxcAlert({ closable, message, mode, primaryAction, secondaryAction, semantic, title, }: Props$H): react_jsx_runtime.JSX.Element;
203
+ declare const DxcAlert: ({ closable, message, mode, primaryAction, secondaryAction, semantic, title, }: Props$K) => react_jsx_runtime.JSX.Element;
204
204
 
205
- type SidenavTitlePropsType = {
206
- /**
207
- * The area inside the sidenav title. This area can be used to render custom content.
208
- */
209
- children: ReactNode;
210
- };
211
- type SidenavSectionPropsType = {
205
+ type SearchBarProps = {
212
206
  /**
213
- * The area inside the sidenav section. This area can be used to render sidenav groups, links and custom content.
207
+ * If true, the search bar input will be focused when rendered.
214
208
  */
215
- children: ReactNode;
216
- };
217
- type SidenavGroupPropsType = {
209
+ autoFocus?: boolean;
218
210
  /**
219
- * The title of the sidenav group.
220
- */
221
- title?: string;
222
- /**
223
- * If true, the sidenav group will be a button that will allow you to collapse the links contained within it.
224
- * In addition, if it's collapsed and contains the currently selected link, the group title will also be marked as selected.
211
+ * If true, the component will be disabled.
225
212
  */
226
- collapsable?: boolean;
213
+ disabled?: boolean;
227
214
  /**
228
- * Material Symbol name or SVG icon to be displayed next to the title of the group.
215
+ * Function invoked when the search bar loses focus.
229
216
  */
230
- icon?: string | SVG;
217
+ onBlur?: (value: string) => void;
231
218
  /**
232
- * The area inside the sidenav group. This area can be used to render sidenav links.
219
+ * Function invoked when the user cancels the search.
233
220
  */
234
- children: ReactNode;
235
- };
236
- type SidenavLinkPropsType = {
221
+ onCancel?: () => void;
237
222
  /**
238
- * Page to be opened when the user clicks on the link.
223
+ * Function invoked when the user changes the input value.
239
224
  */
240
- href?: string;
225
+ onChange?: (value: string) => void;
241
226
  /**
242
- * If true, the page is opened in a new browser tab.
227
+ * Function invoked when the Enter key is pressed.
243
228
  */
244
- newWindow?: boolean;
229
+ onEnter?: (value: string) => void;
245
230
  /**
246
- * The Material symbol or SVG element used as the icon that will be placed to the left of the link text.
231
+ * Placeholder text displayed in the search bar input field.
247
232
  */
233
+ placeholder?: string;
234
+ };
235
+
236
+ type CommonItemProps = {
237
+ badge?: ReactElement;
248
238
  icon?: string | SVG;
249
- /**
250
- * If true, the link will be marked as selected. Moreover, in that same case,
251
- * if it is contained within a collapsed group, and consequently, the currently selected link is not visible,
252
- * the group title will appear as selected too.
253
- */
239
+ label: string;
240
+ };
241
+ type Item$1 = CommonItemProps & {
242
+ onSelect?: () => void;
254
243
  selected?: boolean;
255
- /**
256
- * This function will be called when the user clicks the link and the event will be passed to this function.
257
- */
258
- onClick?: (event: MouseEvent<HTMLAnchorElement>) => void;
259
- /**
260
- * The area inside the sidenav link.
261
- */
262
- children: ReactNode;
263
- /**
264
- * Value of the tabindex.
265
- */
266
- tabIndex?: number;
244
+ href?: string;
245
+ renderItem?: (props: {
246
+ children: ReactNode;
247
+ }) => ReactNode;
267
248
  };
268
- type Props$G = {
269
- /**
270
- * The area assigned to render the sidenav title. It is highly recommended to use the sidenav title.
271
- */
272
- title?: ReactNode;
273
- /**
274
- * The area inside the sidenav. This area can be used to render the content inside the sidenav.
275
- */
276
- children: ReactNode;
249
+ type GroupItem$1 = CommonItemProps & {
250
+ items: (Item$1 | GroupItem$1)[];
251
+ defaultOpen?: boolean;
277
252
  };
278
-
279
- type Size$4 = "small" | "medium" | "large" | "fillParent" | "fitContent";
280
- type Option$2 = {
281
- /**
282
- * Option display value.
283
- */
284
- label?: string;
285
- /**
286
- * Material Symbol name or SVG element as the icon that will be placed next to the label.
287
- */
288
- icon?: string | SVG;
289
- /**
290
- * Option inner value.
291
- */
292
- value: string;
253
+ type Section$1 = {
254
+ items: (Item$1 | GroupItem$1)[];
255
+ title?: string;
293
256
  };
294
- type Props$F = {
295
- /**
296
- * An array of objects representing the options.
297
- */
298
- options: Option$2[];
299
- /**
300
- * In case options include icons, whether the icon should appear
301
- * after or before the label.
302
- */
303
- optionsIconPosition?: "before" | "after";
304
- /**
305
- * Material Symbol name or SVG element as the icon that will be placed next to the label.
306
- */
307
- icon?: string | SVG;
308
- /**
309
- * Whether the icon should appear after or before the label.
310
- */
311
- iconPosition?: "before" | "after";
312
- /**
313
- * Text to be placed within the dropdown.
314
- */
315
- label?: string;
257
+ type Props$J = {
316
258
  /**
317
- * Whether the arrow next to the label must be displayed or not.
259
+ * Array of items to be displayed in the menu.
260
+ * Each item can be a single/simple item, a group item or a section.
318
261
  */
319
- caretHidden?: boolean;
262
+ items: (Item$1 | GroupItem$1)[] | Section$1[];
320
263
  /**
321
- * If true, the component will be disabled.
264
+ * If true the menu will be displayed with a border.
322
265
  */
323
- disabled?: boolean;
266
+ displayBorder?: boolean;
324
267
  /**
325
- * If true, the options are shown when the dropdown is hover.
268
+ * If true the menu will have lines marking the groups.
326
269
  */
327
- expandOnHover?: boolean;
270
+ displayGroupLines?: boolean;
328
271
  /**
329
- * This function will be called every time the selection changes.
330
- * The value of the selected option will be passed as a parameter.
272
+ * If true the menu will have controls at the end.
331
273
  */
332
- onSelectOption: (value: string) => void;
274
+ displayControlsAfter?: boolean;
333
275
  /**
334
- * Size of the margin to be applied to the component.
335
- * You can pass an object with 'top', 'bottom', 'left' and 'right'
336
- * properties in order to specify different margin sizes.
276
+ * If true the menu will be icons only and display a popover on click.
337
277
  */
338
- margin?: Space$1 | Margin;
278
+ hasPopOver?: boolean;
339
279
  /**
340
- * Size of the component.
280
+ * If true the menu will be displayed horizontally.
341
281
  */
342
- size?: Size$4;
343
- /**
344
- * Value of the tabindex attribute.
345
- */
346
- tabIndex?: number;
347
- /**
348
- * Text representing advisory information related to the dropdown's trigger action.
349
- * Under the hood, this prop also serves as an accessible label for the component.
350
- */
351
- title?: string;
282
+ isHorizontal?: boolean;
352
283
  };
353
284
 
354
- type Logo$1 = {
355
- /**
356
- * URL to navigate when the logo is clicked.
357
- */
358
- href?: string;
285
+ type Section = {
286
+ items: (Item$1 | GroupItem$1)[];
287
+ title?: string;
288
+ };
289
+ type SearchbarSidenavProps = Omit<SearchBarProps, "autoFocus" | "disabled" | "onCancel">;
290
+ type Props$I = {
359
291
  /**
360
- * Source of the logo image.
292
+ * The content rendered in the bottom part of the sidenav, under the navigation menu.
361
293
  */
362
- src: string;
294
+ bottomContent?: ReactNode;
363
295
  /**
364
- * Alternative text for the logo image.
296
+ * Object with the properties of the branding placed at the top of the sidenav.
365
297
  */
366
- title?: string;
367
- };
368
- type Props$E = {
298
+ appTitle?: string | ReactNode;
369
299
  /**
370
- * Whether a contrast line should appear at the bottom of the header.
300
+ * Initial state of the expansion of the sidenav, only when it is uncontrolled.
371
301
  */
372
- underlined?: boolean;
302
+ defaultExpanded?: boolean;
373
303
  /**
374
- * Content shown in the header. Take into account that the component applies styles
375
- * for the first child in the content, so we recommend the use of React.Fragment
376
- * to be applied correctly. Otherwise, the styles can be modified.
304
+ * If true the nav menu will have lines marking the groups.
377
305
  */
378
- content?: ReactNode;
306
+ displayGroupLines?: boolean;
379
307
  /**
380
- * Content shown in responsive version. It receives the close menu handler that can
381
- * be used to add that functionality when a element is clicked.
308
+ * If true, the sidenav is expanded.
309
+ * If undefined the component will be uncontrolled and the value will be managed internally by the component.
382
310
  */
383
- responsiveContent?: (closeHandler: () => void) => ReactNode;
311
+ expanded?: boolean;
384
312
  /**
385
- * Logo to be displayed inside the header
313
+ * Array of items to be displayed in the navigation menu.
314
+ * Each item can be a single/simple item, a group item or a section.
386
315
  */
387
- logo?: Logo$1;
316
+ navItems?: (Item$1 | GroupItem$1)[] | Section[];
388
317
  /**
389
- * Size of the bottom margin to be applied to the header.
318
+ * Function called when the expansion state of the sidenav changes.
390
319
  */
391
- margin?: Space$1;
320
+ onExpandedChange?: (value: boolean) => void;
392
321
  /**
393
- * This function will be called when the user clicks the header logo.
322
+ * When provided, a search bar will be rendered at the top of the sidenav.
394
323
  */
395
- onClick?: () => void;
324
+ searchBar?: SearchbarSidenavProps;
396
325
  /**
397
- * Value of the tabindex for all interactive elements, except those inside the
398
- * custom area.
326
+ * The additional content rendered in the upper part of the sidenav, under the branding.
399
327
  */
400
- tabIndex?: number;
328
+ topContent?: ReactNode;
329
+ };
330
+
331
+ type GroupItem = CommonItemProps & {
332
+ items: Item$1[];
333
+ };
334
+ type MainNavPropsType = (GroupItem | Item$1)[];
335
+ type SearchBarHeaderProps = Omit<SearchBarProps, "autoFocus" | "disabled">;
336
+ type Props$H = {
337
+ appTitle?: string;
338
+ navItems?: MainNavPropsType;
339
+ responsiveBottomContent?: ReactNode;
340
+ searchBar?: SearchBarHeaderProps;
341
+ sideContent?: ReactNode | ((isResponsive: boolean) => ReactNode);
401
342
  };
402
343
 
403
344
  type SocialLink = {
@@ -425,18 +366,14 @@ type BottomLink = {
425
366
  text: string;
426
367
  };
427
368
  type Logo = {
428
- /**
429
- * URL to navigate when the logo is clicked.
430
- */
431
- href?: string;
432
369
  /**
433
370
  * Source of the logo image.
434
371
  */
435
- src: string;
372
+ src: string | SVG;
436
373
  /**
437
374
  * Alternative text for the logo image.
438
375
  */
439
- title?: string;
376
+ alt: string;
440
377
  };
441
378
  type FooterPropsType = {
442
379
  /**
@@ -444,29 +381,28 @@ type FooterPropsType = {
444
381
  * the bottom part of the footer.
445
382
  */
446
383
  bottomLinks?: BottomLink[];
447
- /**
448
- * The center section of the footer. Can be used to render custom
449
- * content in this area.
450
- */
451
- children?: ReactNode;
452
384
  /**
453
385
  * The text that will be displayed as copyright disclaimer.
454
386
  */
455
387
  copyright?: string;
456
388
  /**
457
- * Logo to be displayed inside the footer
389
+ * Content to be displayed on the left side of the footer under the logo.
458
390
  */
459
- logo?: Logo;
391
+ leftContent?: ReactNode;
460
392
  /**
461
- * Size of the top margin to be applied to the footer.
393
+ * Logo to be displayed inside the footer
462
394
  */
463
- margin?: Space$1;
395
+ logo?: Logo;
464
396
  /**
465
397
  * Determines the visual style and layout
466
398
  * - "default": The default mode with full content and styling.
467
399
  * - "reduced": A reduced mode with minimal content and styling.
468
400
  */
469
401
  mode?: "default" | "reduced";
402
+ /**
403
+ * Content to be displayed on the right side of the footer before the socialLinks if provided.
404
+ */
405
+ rightContent?: ReactNode;
470
406
  /**
471
407
  * An array of objects representing the links that will be rendered as
472
408
  * icons at the top-right side of the footer.
@@ -474,7 +410,7 @@ type FooterPropsType = {
474
410
  socialLinks?: SocialLink[];
475
411
  /**
476
412
  * Value of the tabindex for all interactive elements, except those
477
- * inside the custom area.
413
+ * inside the leftContent and rightContent.
478
414
  */
479
415
  tabIndex?: number;
480
416
  };
@@ -485,12 +421,29 @@ type AppLayoutMainPropsType = {
485
421
  */
486
422
  children: ReactNode;
487
423
  };
424
+ type LogoPropsType = {
425
+ /**
426
+ * Alternative text for the logo image.
427
+ */
428
+ alt: string;
429
+ /**
430
+ * URL to navigate when the logo is clicked.
431
+ */
432
+ href?: string;
433
+ /**
434
+ * Function to be called on logo click.
435
+ */
436
+ onClick?: () => void;
437
+ /**
438
+ * URL or SVG of the image that will be placed in the logo.
439
+ */
440
+ src: string | SVG;
441
+ };
488
442
  type ApplicationLayoutPropsType = {
489
443
  /**
490
- * Text to be placed next to the hamburger button that toggles the
491
- * visibility of the sidenav.
444
+ * Logo properties.
492
445
  */
493
- visibilityToggleLabel?: string;
446
+ logo?: LogoPropsType;
494
447
  /**
495
448
  * Header content.
496
449
  */
@@ -510,23 +463,83 @@ type ApplicationLayoutPropsType = {
510
463
  };
511
464
 
512
465
  declare const DxcApplicationLayout: {
513
- ({ visibilityToggleLabel, header, sidenav, footer, children, }: ApplicationLayoutPropsType): JSX.Element;
514
- Footer: ({ bottomLinks, children, copyright, logo, margin, mode, socialLinks, tabIndex, }: FooterPropsType) => JSX.Element;
515
- Header: {
516
- ({ underlined, content, responsiveContent, logo, margin, onClick, tabIndex, }: Props$E): JSX.Element;
517
- Dropdown: (props: react.ComponentProps<({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$F) => react_jsx_runtime.JSX.Element>) => react_jsx_runtime.JSX.Element;
518
- };
466
+ ({ logo, header, sidenav, footer, children }: ApplicationLayoutPropsType): JSX.Element;
467
+ Footer: ({ bottomLinks, copyright, leftContent, logo, mode, rightContent, socialLinks, tabIndex, }: FooterPropsType) => JSX.Element;
468
+ Header: ({ appTitle, navItems, responsiveBottomContent, searchBar, sideContent, }: Props$H) => JSX.Element;
519
469
  Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
520
- SideNav: {
521
- ({ title, children }: Props$G): JSX.Element;
522
- Section: ({ children }: SidenavSectionPropsType) => JSX.Element;
523
- Group: ({ title, collapsable, icon, children }: SidenavGroupPropsType) => JSX.Element;
524
- Link: react.ForwardRefExoticComponent<SidenavLinkPropsType & react.RefAttributes<HTMLAnchorElement>>;
525
- Title: ({ children }: SidenavTitlePropsType) => JSX.Element;
526
- };
527
- useResponsiveSidenavVisibility: () => ((_isSidenavVisible: boolean) => void) | null;
470
+ Sidenav: ({ topContent, bottomContent, navItems, appTitle, displayGroupLines, expanded, defaultExpanded, onExpandedChange, searchBar, }: Props$I) => JSX.Element;
471
+ };
472
+
473
+ type Size$5 = "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
474
+ type Shape = "circle" | "square";
475
+ type Color = "primary" | "secondary" | "tertiary" | "success" | "info" | "neutral" | "warning" | "error";
476
+ interface Status {
477
+ mode: "default" | "info" | "success" | "warning" | "error";
478
+ position: "top" | "bottom";
479
+ }
480
+ type Props$G = {
481
+ /**
482
+ * Affects the visual style of the avatar. It can be used following semantic purposes or not.
483
+ */
484
+ color?: Color;
485
+ /**
486
+ * If true, the component will be disabled.
487
+ */
488
+ disabled?: boolean;
489
+ /**
490
+ * Material Symbol name or SVG element as the icon that will be placed as avatar.
491
+ */
492
+ icon?: string | SVG;
493
+ /**
494
+ * URL of the image.
495
+ */
496
+ imageSrc?: string;
497
+ /**
498
+ * Text label associated with the avatar.
499
+ * Used to generate and display initials inside the avatar.
500
+ */
501
+ label?: string;
502
+ /**
503
+ * Page to be opened when the user clicks on the link.
504
+ */
505
+ linkHref?: string;
506
+ /**
507
+ * This function will be called when the user clicks the avatar. Makes it behave as a button.
508
+ */
509
+ onClick?: () => void;
510
+ /**
511
+ * Text to be displayed as label next to the avatar.
512
+ */
513
+ primaryText?: string;
514
+ /**
515
+ * Text to be displayed as sublabel next to the avatar.
516
+ */
517
+ secondaryText?: string;
518
+ /**
519
+ * This will determine if the avatar will be rounded square or a circle.
520
+ */
521
+ shape?: Shape;
522
+ /**
523
+ * Size of the component.
524
+ */
525
+ size?: Size$5;
526
+ /**
527
+ * Defines the color of the status indicator displayed on the avatar and where it will be placed.
528
+ * If not provided, no indicator will be rendered.
529
+ */
530
+ status?: Status;
531
+ /**
532
+ * Value of the tabindex attribute. It will only apply when the onClick property is passed.
533
+ */
534
+ tabIndex?: number;
535
+ /**
536
+ * Text to be displayed inside a tooltip when hovering the avatar.
537
+ */
538
+ title?: string;
528
539
  };
529
540
 
541
+ declare const DxcAvatar: react.MemoExoticComponent<({ color, disabled, icon, imageSrc, label, linkHref, onClick, primaryText, secondaryText, shape, size, status, tabIndex, title, }: Props$G) => react_jsx_runtime.JSX.Element>;
542
+
530
543
  type ContextualProps = {
531
544
  /**
532
545
  * Text to be placed in the badge.
@@ -543,7 +556,7 @@ type ContextualProps = {
543
556
  /**
544
557
  * Affects the visual style of the badge. It can be used following semantic purposes or not.
545
558
  */
546
- color?: "grey" | "blue" | "green" | "orange" | "red" | "yellow" | "purple";
559
+ color?: "primary" | "secondary" | "tertiary" | "success" | "info" | "neutral" | "warning" | "error";
547
560
  };
548
561
  type NotificationProps = {
549
562
  /**
@@ -563,7 +576,7 @@ type NotificationProps = {
563
576
  */
564
577
  color?: never;
565
578
  };
566
- type CommonProps$7 = {
579
+ type CommonProps$8 = {
567
580
  /**
568
581
  * Text representing advisory information related to the badge. Under the hood, this prop also serves as an accessible label for the component.
569
582
  */
@@ -577,11 +590,11 @@ type CommonProps$7 = {
577
590
  */
578
591
  size?: "small" | "medium" | "large";
579
592
  };
580
- type Props$D = (ContextualProps | NotificationProps) & CommonProps$7;
593
+ type Props$F = (ContextualProps | NotificationProps) & CommonProps$8;
581
594
 
582
- declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: Props$D) => JSX.Element;
595
+ declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: Props$F) => JSX.Element;
583
596
 
584
- type Props$C = {
597
+ type Props$E = {
585
598
  /**
586
599
  * Applies the spacing scale to all sides.
587
600
  */
@@ -616,13 +629,13 @@ type Props$C = {
616
629
  children: ReactNode;
617
630
  };
618
631
 
619
- declare function DxcBleed({ space, horizontal, vertical, top, right, bottom, left, children }: Props$C): react_jsx_runtime.JSX.Element;
632
+ declare const DxcBleed: ({ space, horizontal, vertical, top, right, bottom, left, children }: Props$E) => react_jsx_runtime.JSX.Element;
620
633
 
621
- type Item$1 = {
634
+ type Item = {
622
635
  href?: string;
623
636
  label: string;
624
637
  };
625
- type Props$B = {
638
+ type Props$D = {
626
639
  /**
627
640
  * Provides a label that describes the type of navigation enabled by
628
641
  * the component.
@@ -631,7 +644,7 @@ type Props$B = {
631
644
  /**
632
645
  * Array of objects representing the items of the breadcrumbs.
633
646
  */
634
- items: Item$1[];
647
+ items: Item[];
635
648
  /**
636
649
  * Number of items before showing a collapsed version of the
637
650
  * breadcrumbs. It can't be lower than two (root/collapsed action and
@@ -654,7 +667,7 @@ type Props$B = {
654
667
  showRoot?: boolean;
655
668
  };
656
669
 
657
- declare const DxcBreadcrumbs: ({ ariaLabel, items, itemsBeforeCollapse, onItemClick, showRoot, }: Props$B) => react_jsx_runtime.JSX.Element;
670
+ declare const DxcBreadcrumbs: ({ ariaLabel, items, itemsBeforeCollapse, onItemClick, showRoot, }: Props$D) => react_jsx_runtime.JSX.Element;
658
671
 
659
672
  type IconProps = {
660
673
  /**
@@ -684,8 +697,7 @@ type OtherProps = {
684
697
  */
685
698
  children: ReactNode;
686
699
  };
687
- type Props$A = IconProps | OtherProps;
688
-
700
+ type Props$C = IconProps | OtherProps;
689
701
  type BulletedListItemPropsType = {
690
702
  /**
691
703
  * Text to be shown in the list.
@@ -694,20 +706,20 @@ type BulletedListItemPropsType = {
694
706
  };
695
707
 
696
708
  declare const DxcBulletedList: {
697
- ({ children, type, icon }: Props$A): JSX.Element;
709
+ ({ children, type, icon }: Props$C): JSX.Element;
698
710
  Item: ({ children }: BulletedListItemPropsType) => JSX.Element;
699
711
  };
700
712
 
701
713
  type Semantic = "default" | "error" | "warning" | "success" | "info";
702
714
  type Mode$1 = "primary" | "secondary" | "tertiary";
703
- type Size$3 = {
715
+ type Size$4 = {
704
716
  /**
705
717
  * Height of the button.
706
718
  */
707
719
  height?: "small" | "medium" | "large";
708
720
  width?: "small" | "medium" | "large" | "fillParent" | "fitContent";
709
721
  };
710
- type Props$z = {
722
+ type Props$B = {
711
723
  /**
712
724
  * Text to be placed in the button.
713
725
  */
@@ -752,78 +764,176 @@ type Props$z = {
752
764
  /**
753
765
  * Size of the component.
754
766
  */
755
- size?: Size$3;
767
+ size?: Size$4;
756
768
  /**
757
769
  * Value of the tabindex attribute.
758
770
  */
759
771
  tabIndex?: number;
760
772
  };
761
773
 
762
- declare const DxcButton: ({ disabled, icon, iconPosition, label, margin, mode, onClick, semantic, size, tabIndex, title, type, }: Props$z) => JSX.Element;
774
+ declare const DxcButton: ({ disabled, icon, iconPosition, label, margin, mode, onClick, semantic, size, tabIndex, title, type, }: Props$B) => JSX.Element;
763
775
 
764
- type Size$2 = {
765
- top?: Space$1;
766
- bottom?: Space$1;
767
- left?: Space$1;
768
- right?: Space$1;
769
- };
770
- type Props$y = {
776
+ type Props$A = {
771
777
  /**
772
- * URL of the image that will be placed in the card component.
773
- * In case of omission, the image container will not appear and
774
- * the content will occupy its space.
778
+ * Alternative text description displayed when the specified image is not loaded.
779
+ *
780
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
781
+ * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
775
782
  */
776
- imageSrc?: string;
783
+ alt: string;
777
784
  /**
778
- * Color of the image background.
785
+ * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
786
+ * which is required regardless of the presence of the caption or not.
779
787
  */
780
- imageBgColor?: string;
788
+ caption?: string;
781
789
  /**
782
- * Size of the padding to be applied to the image section of the
783
- * component. You can pass an object with 'top', 'bottom', 'left'
784
- * and 'right' properties in order to specify different padding sizes.
790
+ * Sets the rendered height of the image.
785
791
  */
786
- imagePadding?: Space$1 | Size$2;
792
+ height?: string;
787
793
  /**
788
- * Whether the image should appear in relation to the content.
794
+ * If true, the image will be loaded only when it is visible on the screen (lazy loading).
795
+ * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
789
796
  */
790
- imagePosition?: "before" | "after";
797
+ lazyLoading?: boolean;
791
798
  /**
792
- * If defined, the tag will be displayed as an anchor, using this prop
793
- * as "href". Component will show some visual feedback on hover.
799
+ * Sets the object-fit CSS property.
800
+ *
801
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
794
802
  */
795
- linkHref?: string;
803
+ objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
796
804
  /**
797
- * This function will be called when the user clicks the card. Component
798
- * will show some visual feedback on hover.
805
+ * Sets the object-position CSS property.
806
+ *
807
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
799
808
  */
800
- onClick?: () => void;
809
+ objectPosition?: string;
810
+ /**
811
+ * This function will be called when the image fails to load.
812
+ */
813
+ onError?: ReactEventHandler<HTMLImageElement>;
801
814
  /**
802
- * Whether the image must cover the whole image area of the card.
815
+ * This function will be called when the image is loaded.
803
816
  */
804
- imageCover?: boolean;
817
+ onLoad?: ReactEventHandler<HTMLImageElement>;
805
818
  /**
806
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
807
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
819
+ * One or more strings separated by commas, indicating a set of source sizes.
820
+ * If the srcSet attribute is absent or contains no values with a width descriptor,
821
+ * then this attribute has no effect.
822
+ *
823
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
808
824
  */
809
- margin?: Space$1 | Size$2;
825
+ sizes?: string;
810
826
  /**
811
- * Value of the tabindex attribute applied when the component is clickable.
827
+ * URL of the image. This prop is required and must be valid.
812
828
  */
813
- tabIndex?: number;
829
+ src: string;
814
830
  /**
815
- * Determines whether or not the component should have an outline.
831
+ * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
832
+ *
833
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
816
834
  */
817
- outlined?: boolean;
835
+ srcSet?: string;
836
+ /**
837
+ * Sets the rendered width of the image.
838
+ */
839
+ width?: string;
840
+ };
841
+
842
+ type Size$3 = {
843
+ width?: "fillParent" | "fitContent";
844
+ height?: "fillParent" | "fitContent";
845
+ };
846
+ type Props$z = {
818
847
  /**
819
848
  * Custom content that will be placed inside the component.
820
849
  */
821
850
  children?: ReactNode;
851
+ /**
852
+ * Initial state of the checkbox, only when it is uncontrolled.
853
+ */
854
+ defaultSelected?: boolean;
855
+ /**
856
+ * Defines the direction of the content inside the card. It can be set to "row" or "column". The default value is "column".
857
+ */
858
+ direction?: "row" | "column";
859
+ /**
860
+ * Defines the size of the card when it is empty.
861
+ */
862
+ emptySize?: {
863
+ width?: string;
864
+ height?: string;
865
+ iconSize?: "small" | "medium" | "large";
866
+ };
867
+ /**
868
+ * URL to navigate to when the card is clicked.
869
+ * If href is defined selectable will be ignored and the link will be always considered as an anchor.
870
+ */
871
+ href?: string;
872
+ /**
873
+ * Image to be displayed inside the card.
874
+ */
875
+ image?: Props$A;
876
+ /**
877
+ * Position of the image inside the card. It can be set to "before" or "after" the content.
878
+ */
879
+ imagePosition?: "before" | "after";
880
+ /**
881
+ * If true, the card will be displayed as empty state.
882
+ */
883
+ isEmpty?: boolean;
884
+ /**
885
+ * If true, a loading state will be displayed inside the card.
886
+ */
887
+ isLoading?: boolean;
888
+ /**
889
+ * Defines the size of the loading card when isLoading is true.
890
+ */
891
+ loadingSize?: {
892
+ width?: string;
893
+ height?: string;
894
+ };
895
+ /**
896
+ * Defines the visual style of the card. It can be set to "elevated" or "outlined".
897
+ */
898
+ mode?: "elevated" | "outlined";
899
+ /**
900
+ * If true, the link will open in a new window. href must be provided for this to work.
901
+ */
902
+ newWindow?: boolean;
903
+ /**
904
+ * Callback function that is called when the card is clicked.
905
+ * It receives a boolean value indicating whether the card is selected or not.
906
+ * selectable must be true for this to work.
907
+ */
908
+ onSelectionChange?: (selected: boolean) => void;
909
+ /**
910
+ * Callback function that is called when the card is clicked.
911
+ */
912
+ onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;
913
+ /**
914
+ * If true, the card can be selected. When the card is clicked, the onSelectionChange callback will be called with the new selected state of the card.
915
+ * If href is defined, the card won't be selectable, even if this prop is true.
916
+ */
917
+ selectable?: boolean;
918
+ /**
919
+ * If true, the card is selected and if defined it will behave as a controlled component.
920
+ */
921
+ selected?: boolean;
922
+ /**
923
+ * Defines the size of the card. Width and height can be set to "fillParent" or "fitContent".
924
+ * The default value is { width: "fitContent", height: "fitContent" }.
925
+ */
926
+ size?: Size$3;
927
+ /**
928
+ * Specifies the tab index of the card.
929
+ * The default value is 0.
930
+ */
931
+ tabIndex?: number;
822
932
  };
823
933
 
824
- declare const DxcCard: ({ imageSrc, imageBgColor, imagePadding, imagePosition, linkHref, onClick, imageCover, margin, tabIndex, outlined, children, }: Props$y) => react_jsx_runtime.JSX.Element;
934
+ declare const DxcCard: react.ForwardRefExoticComponent<Props$z & react.RefAttributes<HTMLAnchorElement>>;
825
935
 
826
- type Props$x = {
936
+ type Props$y = {
827
937
  /**
828
938
  * Specifies a string to be used as the name for the checkbox element when no `label` is provided.
829
939
  */
@@ -888,45 +998,82 @@ type Props$x = {
888
998
  value?: string;
889
999
  };
890
1000
 
891
- declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$x & react.RefAttributes<HTMLDivElement>>;
1001
+ declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$y & react.RefAttributes<HTMLDivElement>>;
892
1002
 
893
- type Props$w = {
1003
+ type ChipAvatarType = {
1004
+ color: Props$G["color"];
1005
+ profileName?: Props$G["label"];
1006
+ imageSrc?: Props$G["imageSrc"];
1007
+ icon?: Props$G["icon"];
1008
+ };
1009
+ type CommonProps$7 = {
894
1010
  /**
895
- * Text to be placed on the chip.
1011
+ * Function to be called when the chip is clicked or the dismiss action is triggered.
896
1012
  */
897
- label?: string;
1013
+ onClick?: () => void;
898
1014
  /**
899
- * Element or path used as icon to be placed after the chip label.
1015
+ * Value of the tabindex attribute.
900
1016
  */
901
- suffixIcon?: string | SVG;
1017
+ tabIndex?: number;
1018
+ };
1019
+ type SelectableChipProps = CommonProps$7 & {
1020
+ /**
1021
+ * If true, the component will be disabled.
1022
+ */
1023
+ disabled?: boolean;
1024
+ /**
1025
+ * The whole chip is an interactive element that allows users to activate or clear options directly within the interface.
1026
+ */
1027
+ mode?: "selectable";
1028
+ /**
1029
+ * If true, the component will be selected. This property is only applicable when the mode is "selectable".
1030
+ * If undefined, the component manages its own internal state (uncontrolled mode).
1031
+ */
1032
+ selected?: boolean;
1033
+ } & ({
1034
+ /**
1035
+ * Element, path or avatar used as icon to be placed before the chip label.
1036
+ */
1037
+ prefix: ChipAvatarType;
1038
+ /**
1039
+ * Text to be placed on the chip. Required when using an avatar prefix.
1040
+ */
1041
+ label: string;
1042
+ } | {
902
1043
  /**
903
1044
  * Element or path used as icon to be placed before the chip label.
904
1045
  */
905
- prefixIcon?: string | SVG;
1046
+ prefix: string | SVG;
906
1047
  /**
907
- * This function will be called when the suffix is clicked.
1048
+ * Text to be placed on the chip. Optional when using an icon prefix.
908
1049
  */
909
- onClickSuffix?: () => void;
1050
+ label?: string;
1051
+ } | {
1052
+ prefix?: undefined;
910
1053
  /**
911
- * This function will be called when the prefix is clicked.
1054
+ * Text to be placed on the chip.
912
1055
  */
913
- onClickPrefix?: () => void;
1056
+ label: string;
1057
+ });
1058
+ type DismissibleChipProps = CommonProps$7 & {
914
1059
  /**
915
- * If true, the component will be disabled.
1060
+ * Dismissible chip is used to represent information generated by user input within an interface.
916
1061
  */
917
- disabled?: boolean;
1062
+ mode: "dismissible";
918
1063
  /**
919
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
920
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
1064
+ * Text to be placed on the chip.
921
1065
  */
922
- margin?: Space$1 | Margin;
1066
+ label: string;
923
1067
  /**
924
- * Value of the tabindex attribute.
1068
+ * Element, path or avatar used as icon to be placed before the chip label.
925
1069
  */
926
- tabIndex?: number;
1070
+ prefix?: string | SVG | ChipAvatarType;
1071
+ selected?: never;
1072
+ disabled?: never;
927
1073
  };
1074
+ type Props$x = SelectableChipProps | DismissibleChipProps;
928
1075
 
929
- declare const DxcChip: ({ label, suffixIcon, prefixIcon, onClickSuffix, onClickPrefix, disabled, margin, tabIndex, }: Props$w) => react_jsx_runtime.JSX.Element;
1076
+ declare const DxcChip: ({ disabled, label, mode, onClick, prefix, selected, tabIndex, }: Props$x) => react_jsx_runtime.JSX.Element | null;
930
1077
 
931
1078
  type Space = {
932
1079
  top?: string;
@@ -969,7 +1116,7 @@ type Overflow = OverflowValues | {
969
1116
  x?: OverflowValues;
970
1117
  y?: OverflowValues;
971
1118
  };
972
- type Props$v = {
1119
+ type Props$w = {
973
1120
  /**
974
1121
  * Based on the CSS property background allows configuring all properties related to the background of a container.
975
1122
  *
@@ -1045,80 +1192,133 @@ type Props$v = {
1045
1192
  */
1046
1193
  maxWidth?: string;
1047
1194
  /**
1048
- * Sets the min-width CSS property.
1049
- *
1050
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-width
1195
+ * Sets the min-width CSS property.
1196
+ *
1197
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-width
1198
+ */
1199
+ minHeight?: string;
1200
+ /**
1201
+ * Sets the min-height CSS property.
1202
+ *
1203
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-height
1204
+ */
1205
+ minWidth?: string;
1206
+ /**
1207
+ * Based on the CSS property outline allows configuring all properties related
1208
+ * to the outline of a container.
1209
+ */
1210
+ outline?: Outline;
1211
+ /**
1212
+ * Sets the overflow CSS property.
1213
+ *
1214
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow
1215
+ */
1216
+ overflow?: Overflow;
1217
+ /**
1218
+ * Size of the padding to be applied to the container.
1219
+ */
1220
+ padding?: string | Space;
1221
+ /**
1222
+ * Sets the position CSS property.
1223
+ *
1224
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/position
1225
+ */
1226
+ position?: "static" | "relative" | "absolute" | "fixed" | "sticky";
1227
+ /**
1228
+ * Sets the width CSS property.
1229
+ *
1230
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/width
1231
+ */
1232
+ width?: string;
1233
+ /**
1234
+ * Sets the z-index CSS property.
1235
+ *
1236
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
1237
+ */
1238
+ zIndex?: "auto" | number;
1239
+ };
1240
+
1241
+ declare const DxcContainer: react.ForwardRefExoticComponent<Props$w & react.RefAttributes<HTMLDivElement>>;
1242
+
1243
+ type Props$v = Omit<Props$J, "displayBorder" | "displayGroupLines" | "displayControlsAfter" | "hasPopOver">;
1244
+
1245
+ declare function DxcContextualMenu({ items }: Props$v): react_jsx_runtime.JSX.Element;
1246
+
1247
+ type Size$2 = "small" | "medium" | "large" | "fillParent" | "fitContent";
1248
+ type Option$2 = {
1249
+ /**
1250
+ * Option display value.
1251
+ */
1252
+ label?: string;
1253
+ /**
1254
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
1255
+ */
1256
+ icon?: string | SVG;
1257
+ /**
1258
+ * Option inner value.
1259
+ */
1260
+ value: string;
1261
+ };
1262
+ type Props$u = {
1263
+ /**
1264
+ * An array of objects representing the options.
1265
+ */
1266
+ options: Option$2[];
1267
+ /**
1268
+ * In case options include icons, whether the icon should appear
1269
+ * after or before the label.
1270
+ */
1271
+ optionsIconPosition?: "before" | "after";
1272
+ /**
1273
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
1274
+ */
1275
+ icon?: string | SVG;
1276
+ /**
1277
+ * Whether the icon should appear after or before the label.
1278
+ */
1279
+ iconPosition?: "before" | "after";
1280
+ /**
1281
+ * Text to be placed within the dropdown.
1051
1282
  */
1052
- minHeight?: string;
1283
+ label?: string;
1053
1284
  /**
1054
- * Sets the min-height CSS property.
1055
- *
1056
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-height
1285
+ * Whether the arrow next to the label must be displayed or not.
1057
1286
  */
1058
- minWidth?: string;
1287
+ caretHidden?: boolean;
1059
1288
  /**
1060
- * Based on the CSS property outline allows configuring all properties related
1061
- * to the outline of a container.
1289
+ * If true, the component will be disabled.
1062
1290
  */
1063
- outline?: Outline;
1291
+ disabled?: boolean;
1064
1292
  /**
1065
- * Sets the overflow CSS property.
1066
- *
1067
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow
1293
+ * If true, the options are shown when the dropdown is hover.
1068
1294
  */
1069
- overflow?: Overflow;
1295
+ expandOnHover?: boolean;
1070
1296
  /**
1071
- * Size of the padding to be applied to the container.
1297
+ * This function will be called every time the selection changes.
1298
+ * The value of the selected option will be passed as a parameter.
1072
1299
  */
1073
- padding?: string | Space;
1300
+ onSelectOption: (value: string) => void;
1074
1301
  /**
1075
- * Sets the position CSS property.
1076
- *
1077
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/position
1302
+ * Size of the margin to be applied to the component.
1303
+ * You can pass an object with 'top', 'bottom', 'left' and 'right'
1304
+ * properties in order to specify different margin sizes.
1078
1305
  */
1079
- position?: "static" | "relative" | "absolute" | "fixed" | "sticky";
1306
+ margin?: Space$1 | Margin;
1080
1307
  /**
1081
- * Sets the width CSS property.
1082
- *
1083
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/width
1308
+ * Size of the component.
1084
1309
  */
1085
- width?: string;
1310
+ size?: Size$2;
1086
1311
  /**
1087
- * Sets the z-index CSS property.
1088
- *
1089
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
1312
+ * Value of the tabindex attribute.
1090
1313
  */
1091
- zIndex?: "auto" | number;
1092
- };
1093
-
1094
- declare function DxcContainer({ display, width, height, overflow, ...props }: Props$v): react_jsx_runtime.JSX.Element;
1095
-
1096
- type CommonItemProps = {
1097
- badge?: ReactElement;
1098
- icon?: string | SVG;
1099
- label: string;
1100
- };
1101
- type Item = CommonItemProps & {
1102
- onSelect?: () => void;
1103
- selectedByDefault?: boolean;
1104
- };
1105
- type GroupItem = CommonItemProps & {
1106
- items: (Item | GroupItem)[];
1107
- };
1108
- type Section = {
1109
- items: (Item | GroupItem)[];
1110
- title?: string;
1111
- };
1112
- type Props$u = {
1314
+ tabIndex?: number;
1113
1315
  /**
1114
- * Array of items to be displayed in the Contextual menu.
1115
- * Each item can be a single/simple item, a group item or a section.
1316
+ * Text representing advisory information related to the dropdown's trigger action.
1317
+ * Under the hood, this prop also serves as an accessible label for the component.
1116
1318
  */
1117
- items: (Item | GroupItem)[] | Section[];
1319
+ title?: string;
1118
1320
  };
1119
1321
 
1120
- declare function DxcContextualMenu({ items }: Props$u): react_jsx_runtime.JSX.Element;
1121
-
1122
1322
  type BaseActionCell = {
1123
1323
  disabled?: boolean;
1124
1324
  tabIndex?: number;
@@ -1556,7 +1756,7 @@ type Props$p = {
1556
1756
 
1557
1757
  declare function DxcDivider({ color, decorative, orientation, weight, }: Props$p): react_jsx_runtime.JSX.Element;
1558
1758
 
1559
- declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$F) => react_jsx_runtime.JSX.Element;
1759
+ declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$u) => react_jsx_runtime.JSX.Element;
1560
1760
 
1561
1761
  type FileData = {
1562
1762
  /**
@@ -1625,6 +1825,10 @@ type CommonProps$5 = {
1625
1825
  * If true, if the file is an image, a preview of it will be shown. If not, an icon refering to the file type will be shown.
1626
1826
  */
1627
1827
  showPreview?: boolean;
1828
+ /**
1829
+ * Size of the component.
1830
+ */
1831
+ size?: "medium" | "fillParent";
1628
1832
  /**
1629
1833
  * Value of the tabindex attribute.
1630
1834
  */
@@ -1724,6 +1928,10 @@ type Props$n = CommonProps$4 & {
1724
1928
  * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/order
1725
1929
  */
1726
1930
  order?: number;
1931
+ /**
1932
+ * If true, the flex container will take the full height of its parent.
1933
+ */
1934
+ fullHeight?: boolean;
1727
1935
  /**
1728
1936
  * Sets the flex-grow CSS property.
1729
1937
  *
@@ -1752,7 +1960,7 @@ type Props$n = CommonProps$4 & {
1752
1960
  children: ReactNode;
1753
1961
  };
1754
1962
 
1755
- declare const DxcFlex: ({ basis, direction, gap, grow, order, shrink, wrap, ...props }: Props$n) => react_jsx_runtime.JSX.Element;
1963
+ declare const DxcFlex: ({ basis, direction, fullHeight, gap, grow, order, shrink, wrap, ...props }: Props$n) => react_jsx_runtime.JSX.Element;
1756
1964
 
1757
1965
  type Gap = string | {
1758
1966
  columnGap?: string;
@@ -1769,7 +1977,7 @@ type PlaceSelfValues = "auto" | "baseline" | "center" | "end" | "start" | "stret
1769
1977
  type PlaceContentValues = "baseline" | "center" | "end" | "normal" | "space-around" | "space-between" | "space-evenly" | "start" | "stretch";
1770
1978
  type PlaceItemsValues = "baseline" | "center" | "end" | "normal" | "start" | "stretch";
1771
1979
  type PlaceObject<Type, Suffix extends string> = {
1772
- [Property in keyof Type as `${string & Property}${Capitalize<string & Suffix>}`]: Type[Property];
1980
+ [Property in Extract<keyof Type, string> as `${Property}${Capitalize<Suffix>}`]: Type[Property];
1773
1981
  };
1774
1982
  type PlaceGeneric<PlaceValues, Element extends string> = PlaceObject<{
1775
1983
  align: PlaceValues;
@@ -1903,75 +2111,9 @@ type Props$l = {
1903
2111
 
1904
2112
  declare function DxcHeading({ as, level, margin, text, weight }: Props$l): react_jsx_runtime.JSX.Element;
1905
2113
 
1906
- type Props$k = {
1907
- /**
1908
- * Alternative text description displayed when the specified image is not loaded.
1909
- *
1910
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
1911
- * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
1912
- */
1913
- alt: string;
1914
- /**
1915
- * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
1916
- * which is required regardless of the presence of the caption or not.
1917
- */
1918
- caption?: string;
1919
- /**
1920
- * Sets the rendered height of the image.
1921
- */
1922
- height?: string;
1923
- /**
1924
- * If true, the image will be loaded only when it is visible on the screen (lazy loading).
1925
- * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
1926
- */
1927
- lazyLoading?: boolean;
1928
- /**
1929
- * Sets the object-fit CSS property.
1930
- *
1931
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
1932
- */
1933
- objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
1934
- /**
1935
- * Sets the object-position CSS property.
1936
- *
1937
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
1938
- */
1939
- objectPosition?: string;
1940
- /**
1941
- * This function will be called when the image fails to load.
1942
- */
1943
- onError?: ReactEventHandler<HTMLImageElement>;
1944
- /**
1945
- * This function will be called when the image is loaded.
1946
- */
1947
- onLoad?: ReactEventHandler<HTMLImageElement>;
1948
- /**
1949
- * One or more strings separated by commas, indicating a set of source sizes.
1950
- * If the srcSet attribute is absent or contains no values with a width descriptor,
1951
- * then this attribute has no effect.
1952
- *
1953
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
1954
- */
1955
- sizes?: string;
1956
- /**
1957
- * URL of the image. This prop is required and must be valid.
1958
- */
1959
- src: string;
1960
- /**
1961
- * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
1962
- *
1963
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
1964
- */
1965
- srcSet?: string;
1966
- /**
1967
- * Sets the rendered width of the image.
1968
- */
1969
- width?: string;
1970
- };
1971
-
1972
- declare function DxcImage({ alt, caption, height, lazyLoading, objectFit, objectPosition, onError, onLoad, sizes, src, srcSet, width, }: Props$k): react_jsx_runtime.JSX.Element;
2114
+ declare function DxcImage({ alt, caption, height, lazyLoading, objectFit, objectPosition, onError, onLoad, sizes, src, srcSet, width, }: Props$A): react_jsx_runtime.JSX.Element;
1973
2115
 
1974
- type Props$j = {
2116
+ type Props$k = {
1975
2117
  /**
1976
2118
  * Applies the spacing scale to the bottom side.
1977
2119
  */
@@ -2006,11 +2148,11 @@ type Props$j = {
2006
2148
  vertical?: string;
2007
2149
  };
2008
2150
 
2009
- declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$j): react_jsx_runtime.JSX.Element;
2151
+ declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$k): react_jsx_runtime.JSX.Element;
2010
2152
 
2011
2153
  type LinkProps = {
2012
2154
  /**
2013
- * If true, the link is disabled.
2155
+ * If true, the link will be disabled.
2014
2156
  */
2015
2157
  disabled?: boolean;
2016
2158
  /**
@@ -2065,7 +2207,7 @@ type TabProps$1 = {
2065
2207
  */
2066
2208
  children: string;
2067
2209
  /**
2068
- * Whether the tab is disabled or not.
2210
+ * If true, the tab will be disabled.
2069
2211
  */
2070
2212
  disabled?: boolean;
2071
2213
  /**
@@ -2089,7 +2231,7 @@ type TabProps$1 = {
2089
2231
  */
2090
2232
  notificationNumber?: boolean | number;
2091
2233
  };
2092
- type Props$i = {
2234
+ type Props$j = {
2093
2235
  /**
2094
2236
  * Contains one or more DxcNavTabs.Tab.
2095
2237
  */
@@ -2105,11 +2247,11 @@ type Props$i = {
2105
2247
  };
2106
2248
 
2107
2249
  declare const DxcNavTabs: {
2108
- ({ iconPosition, tabIndex, children }: Props$i): JSX.Element;
2109
- Tab: react.ForwardRefExoticComponent<TabProps$1 & react.RefAttributes<HTMLAnchorElement>>;
2250
+ ({ iconPosition, tabIndex, children }: Props$j): JSX.Element;
2251
+ Tab: react.ForwardRefExoticComponent<TabProps$1 & react.RefAttributes<HTMLDivElement | HTMLAnchorElement>>;
2110
2252
  };
2111
2253
 
2112
- type Props$h = {
2254
+ type Props$i = {
2113
2255
  /**
2114
2256
  * Text to be placed above the number.
2115
2257
  */
@@ -2236,9 +2378,9 @@ type Props$h = {
2236
2378
  showControls?: boolean;
2237
2379
  };
2238
2380
 
2239
- declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$h & react.RefAttributes<HTMLDivElement>>;
2381
+ declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$i & react.RefAttributes<HTMLDivElement>>;
2240
2382
 
2241
- type Props$g = {
2383
+ type Props$h = {
2242
2384
  /**
2243
2385
  * Number of the current selected page.
2244
2386
  */
@@ -2276,13 +2418,13 @@ type Props$g = {
2276
2418
  tabIndex?: number;
2277
2419
  };
2278
2420
 
2279
- declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$g) => JSX.Element;
2421
+ declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$h) => JSX.Element;
2280
2422
 
2281
2423
  declare function DxcParagraph({ children }: {
2282
2424
  children: ReactNode;
2283
2425
  }): react_jsx_runtime.JSX.Element;
2284
2426
 
2285
- type Props$f = {
2427
+ type Props$g = {
2286
2428
  /**
2287
2429
  * Text to be placed above the password input.
2288
2430
  */
@@ -2386,7 +2528,35 @@ type Props$f = {
2386
2528
  ariaLabel?: string;
2387
2529
  };
2388
2530
 
2389
- declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$f & react.RefAttributes<HTMLDivElement>>;
2531
+ declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$g & react.RefAttributes<HTMLDivElement>>;
2532
+
2533
+ type PopoverPropsType = {
2534
+ /** Action that triggers the popover to open. */
2535
+ actionToOpen?: "click" | "hover";
2536
+ /** Alignment of the popover relative to the trigger element. */
2537
+ align?: "start" | "center" | "end";
2538
+ /** Set to true if child controls the events. It will render the child directly without wrapping it. */
2539
+ asChild?: boolean;
2540
+ /** Element that triggers the popover and works as the anchor. */
2541
+ children: React.ReactNode;
2542
+ /** Whether the popover should display a tip (arrow). */
2543
+ hasTip?: boolean;
2544
+ /** Controlled open state of the popover. If it is left undefined, it will be uncontrolled. */
2545
+ isOpen?: boolean;
2546
+ /** Distance in pixels from the trigger element to the popover. */
2547
+ offset?: number;
2548
+ /** Callback function when the popover is opened.
2549
+ * Used only in controlled mode and if the trigger lacks the events to manage the controlled behavior. */
2550
+ onOpen?: () => void;
2551
+ /** Callback function when the popover is closed. */
2552
+ onClose?: () => void;
2553
+ /** Content to be displayed inside the popover. */
2554
+ popoverContent: React.ReactNode;
2555
+ /** Side of the trigger where the popover will appear. */
2556
+ side?: "top" | "bottom" | "left" | "right";
2557
+ };
2558
+
2559
+ declare const DxcPopover: ({ actionToOpen, align, asChild, children, hasTip, isOpen, offset, onOpen, onClose, popoverContent, side, }: PopoverPropsType) => JSX.Element;
2390
2560
 
2391
2561
  type Size$1 = {
2392
2562
  top?: Space$1;
@@ -2394,7 +2564,7 @@ type Size$1 = {
2394
2564
  left?: Space$1;
2395
2565
  right?: Space$1;
2396
2566
  };
2397
- type Props$e = {
2567
+ type Props$f = {
2398
2568
  /**
2399
2569
  * Text to be placed above the progress bar.
2400
2570
  */
@@ -2428,7 +2598,7 @@ type Props$e = {
2428
2598
  ariaLabel?: string;
2429
2599
  };
2430
2600
 
2431
- declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$e) => JSX.Element;
2601
+ declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$f) => JSX.Element;
2432
2602
 
2433
2603
  type Link = {
2434
2604
  /**
@@ -2440,7 +2610,7 @@ type Link = {
2440
2610
  */
2441
2611
  links?: Link[];
2442
2612
  };
2443
- type Props$d = {
2613
+ type Props$e = {
2444
2614
  /**
2445
2615
  * Title of the quick nav component.
2446
2616
  */
@@ -2451,7 +2621,7 @@ type Props$d = {
2451
2621
  links: Link[];
2452
2622
  };
2453
2623
 
2454
- declare function DxcQuickNav({ links, title }: Props$d): react_jsx_runtime.JSX.Element;
2624
+ declare function DxcQuickNav({ links, title }: Props$e): react_jsx_runtime.JSX.Element;
2455
2625
 
2456
2626
  type Option$1 = {
2457
2627
  /**
@@ -2583,26 +2753,31 @@ type CommonProps$3 = {
2583
2753
  * An array of objects representing the columns of the table.
2584
2754
  */
2585
2755
  columns: Column[];
2586
- /**
2587
- * An array of objects representing the rows of the table, you will have
2588
- * as many objects as columns in the table.
2589
- */
2590
- rows: Row[];
2591
2756
  /**
2592
2757
  * Size of the margin to be applied to the component. You can pass an object with 'top',
2593
2758
  * 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2594
2759
  */
2595
2760
  margin?: Space$1 | Margin;
2596
- /**
2597
- * Value of the tabindex attribute applied to the sortable icon.
2598
- */
2599
- tabIndex?: number;
2600
2761
  /**
2601
2762
  * Determines the visual style and layout
2602
2763
  * - "default": The default mode with big spacing
2603
2764
  * - "reduced": A reduced mode with minimal spacing for dense tables
2604
2765
  */
2605
2766
  mode?: "default" | "reduced";
2767
+ /**
2768
+ * An array of objects representing the rows of the table, you will have
2769
+ * as many objects as columns in the table.
2770
+ */
2771
+ rows: Row[];
2772
+ /**
2773
+ * Value of the tabindex attribute applied to the sortable icon.
2774
+ */
2775
+ tabIndex?: number;
2776
+ /**
2777
+ * A fixed height must be set to enable virtualization.
2778
+ * If no height is provided, the table will automatically adjust to the height of its content, and virtualization will not be applied.
2779
+ */
2780
+ virtualizedHeight?: string;
2606
2781
  };
2607
2782
  type PaginatedProps = CommonProps$3 & {
2608
2783
  hidePaginator?: false;
@@ -2629,10 +2804,6 @@ type NonPaginatedProps = CommonProps$3 & {
2629
2804
  * If true, paginator will not be displayed.
2630
2805
  */
2631
2806
  hidePaginator: true;
2632
- /**
2633
- * If true, a select component for navigation between pages will be displayed.
2634
- */
2635
- showGoToPage?: never;
2636
2807
  /**
2637
2808
  * Number of items per page.
2638
2809
  */
@@ -2646,11 +2817,15 @@ type NonPaginatedProps = CommonProps$3 & {
2646
2817
  * option. The value selected will be passed as a parameter.
2647
2818
  */
2648
2819
  itemsPerPageFunction?: never;
2820
+ /**
2821
+ * If true, a select component for navigation between pages will be displayed.
2822
+ */
2823
+ showGoToPage?: never;
2649
2824
  };
2650
- type Props$c = PaginatedProps | NonPaginatedProps;
2825
+ type Props$d = PaginatedProps | NonPaginatedProps;
2651
2826
 
2652
2827
  declare const DxcResultsetTable: {
2653
- ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, }: Props$c): react_jsx_runtime.JSX.Element;
2828
+ ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, virtualizedHeight, }: Props$d): react_jsx_runtime.JSX.Element;
2654
2829
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
2655
2830
  };
2656
2831
 
@@ -2685,33 +2860,43 @@ type ListOptionGroupType = {
2685
2860
  };
2686
2861
  type CommonProps$2 = {
2687
2862
  /**
2688
- * Text to be placed above the select.
2863
+ * Specifies a string to be used as the name for the select element when no `label` is provided.
2689
2864
  */
2690
- label?: string;
2865
+ ariaLabel?: string;
2691
2866
  /**
2692
- * Name attribute of the input element. This attribute will allow users
2693
- * to find the component's value during the submit event. In this event,
2694
- * the component's value will always be a regular string, for both single
2695
- * and multiple selection modes, being a single option value in the first case
2696
- * and more than one value when multiple selection is available, separated by commas.
2867
+ * If true, the component will be disabled.
2697
2868
  */
2698
- name?: string;
2869
+ disabled?: boolean;
2699
2870
  /**
2700
- * An array of objects representing the selectable options.
2871
+ * If it is a defined value and also a truthy string, the component will
2872
+ * change its appearance, showing the error below the select component.
2873
+ * If the defined value is an empty string, it will reserve a space below
2874
+ * the component for a future error, but it would not change its look. In
2875
+ * case of being undefined or null, both the appearance and the space for
2876
+ * the error message would not be modified.
2701
2877
  */
2702
- options: ListOptionType[] | ListOptionGroupType[];
2878
+ error?: string;
2703
2879
  /**
2704
2880
  * Helper text to be placed above the select.
2705
2881
  */
2706
2882
  helperText?: string;
2707
2883
  /**
2708
- * Text to be put as placeholder of the select.
2884
+ * Text to be placed above the select.
2709
2885
  */
2710
- placeholder?: string;
2886
+ label?: string;
2711
2887
  /**
2712
- * If true, the component will be disabled.
2888
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
2889
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2713
2890
  */
2714
- disabled?: boolean;
2891
+ margin?: Space$1 | Margin;
2892
+ /**
2893
+ * Name attribute of the input element. This attribute will allow users
2894
+ * to find the component's value during the submit event. In this event,
2895
+ * the component's value will always be a regular string, for both single
2896
+ * and multiple selection modes, being a single option value in the first case
2897
+ * and more than one value when multiple selection is available, separated by commas.
2898
+ */
2899
+ name?: string;
2715
2900
  /**
2716
2901
  * If true, the select will be optional, showing '(Optional)'
2717
2902
  * next to the label and adding a default first option with an empty string as value,
@@ -2721,23 +2906,23 @@ type CommonProps$2 = {
2721
2906
  */
2722
2907
  optional?: boolean;
2723
2908
  /**
2724
- * If true, enables search functionality.
2909
+ * An array of objects representing the selectable options.
2725
2910
  */
2726
- searchable?: boolean;
2911
+ options: ListOptionType[] | ListOptionGroupType[];
2727
2912
  /**
2728
- * If it is a defined value and also a truthy string, the component will
2729
- * change its appearance, showing the error below the select component.
2730
- * If the defined value is an empty string, it will reserve a space below
2731
- * the component for a future error, but it would not change its look. In
2732
- * case of being undefined or null, both the appearance and the space for
2733
- * the error message would not be modified.
2913
+ * Text to be put as placeholder of the select.
2734
2914
  */
2735
- error?: string;
2915
+ placeholder?: string;
2736
2916
  /**
2737
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
2738
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2917
+ * If true, enables search functionality.
2739
2918
  */
2740
- margin?: Space$1 | Margin;
2919
+ searchable?: boolean;
2920
+ /**
2921
+ * Defines the search mode when searchable is true.
2922
+ * If true, matches options that start with the search text.
2923
+ * If false, matches options that contain the search text anywhere in their label.
2924
+ */
2925
+ searchByStartsWith?: boolean;
2741
2926
  /**
2742
2927
  * Size of the component.
2743
2928
  */
@@ -2747,11 +2932,16 @@ type CommonProps$2 = {
2747
2932
  */
2748
2933
  tabIndex?: number;
2749
2934
  /**
2750
- * Specifies a string to be used as the name for the select element when no `label` is provided.
2935
+ * A fixed height must be set to enable virtualization.
2936
+ * If no height is provided, the select will automatically adjust to the height of its content, and virtualization will not be applied.
2751
2937
  */
2752
- ariaLabel?: string;
2938
+ virtualizedHeight?: string;
2753
2939
  };
2754
2940
  type SingleSelect = CommonProps$2 & {
2941
+ /**
2942
+ * Initial value of the select, only when it is uncontrolled.
2943
+ */
2944
+ defaultValue?: string;
2755
2945
  /**
2756
2946
  * Enables users to select multiple items from the list.
2757
2947
  */
@@ -2763,14 +2953,15 @@ type SingleSelect = CommonProps$2 & {
2763
2953
  */
2764
2954
  multiple?: false;
2765
2955
  /**
2766
- * Initial value of the select, only when it is uncontrolled.
2767
- */
2768
- defaultValue?: string;
2769
- /**
2770
- * Value of the select. If undefined, the component will be uncontrolled
2771
- * and the value will be managed internally by the component.
2956
+ * This function will be called when the select loses the focus. An
2957
+ * object including the value and the error (if the value
2958
+ * selected is not valid) will be passed to this function. If there is no error,
2959
+ * error will not be defined.
2772
2960
  */
2773
- value?: string;
2961
+ onBlur?: (val: {
2962
+ value: string;
2963
+ error?: string;
2964
+ }) => void;
2774
2965
  /**
2775
2966
  * This function will be called when the user selects an option.
2776
2967
  * An object including the current value and the error (if the value entered is not valid)
@@ -2781,17 +2972,16 @@ type SingleSelect = CommonProps$2 & {
2781
2972
  error?: string;
2782
2973
  }) => void;
2783
2974
  /**
2784
- * This function will be called when the select loses the focus. An
2785
- * object including the value and the error (if the value
2786
- * selected is not valid) will be passed to this function. If there is no error,
2787
- * error will not be defined.
2975
+ * Value of the select. If undefined, the component will be uncontrolled
2976
+ * and the value will be managed internally by the component.
2788
2977
  */
2789
- onBlur?: (val: {
2790
- value: string;
2791
- error?: string;
2792
- }) => void;
2978
+ value?: string;
2793
2979
  };
2794
2980
  type MultipleSelect = CommonProps$2 & {
2981
+ /**
2982
+ * Initial value of the select, only when it is uncontrolled.
2983
+ */
2984
+ defaultValue?: string[];
2795
2985
  /**
2796
2986
  * Enables users to select multiple items from the list.
2797
2987
  */
@@ -2803,14 +2993,15 @@ type MultipleSelect = CommonProps$2 & {
2803
2993
  */
2804
2994
  multiple: true;
2805
2995
  /**
2806
- * Initial value of the select, only when it is uncontrolled.
2807
- */
2808
- defaultValue?: string[];
2809
- /**
2810
- * Value of the select. If undefined, the component will be uncontrolled
2811
- * and the value will be managed internally by the component.
2996
+ * This function will be called when the select loses the focus. An
2997
+ * object including the selected values and the error (if the value
2998
+ * selected is not valid) will be passed to this function. If there is no error,
2999
+ * error will be null.
2812
3000
  */
2813
- value?: string[];
3001
+ onBlur?: (val: {
3002
+ value: string[];
3003
+ error?: string;
3004
+ }) => void;
2814
3005
  /**
2815
3006
  * This function will be called when the user selects an option.
2816
3007
  * An object including the current selected values and the error (if the value entered is not valid)
@@ -2821,21 +3012,16 @@ type MultipleSelect = CommonProps$2 & {
2821
3012
  error?: string;
2822
3013
  }) => void;
2823
3014
  /**
2824
- * This function will be called when the select loses the focus. An
2825
- * object including the selected values and the error (if the value
2826
- * selected is not valid) will be passed to this function. If there is no error,
2827
- * error will be null.
3015
+ * Value of the select. If undefined, the component will be uncontrolled
3016
+ * and the value will be managed internally by the component.
2828
3017
  */
2829
- onBlur?: (val: {
2830
- value: string[];
2831
- error?: string;
2832
- }) => void;
3018
+ value?: string[];
2833
3019
  };
2834
- type Props$b = SingleSelect | MultipleSelect;
3020
+ type Props$c = SingleSelect | MultipleSelect;
2835
3021
 
2836
- declare const DxcSelect: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
3022
+ declare const DxcSelect: react.ForwardRefExoticComponent<Props$c & react.RefAttributes<HTMLDivElement>>;
2837
3023
 
2838
- type Props$a = {
3024
+ type Props$b = {
2839
3025
  /**
2840
3026
  * Specifies a string to be used as the name for the slider element when no `label` is provided.
2841
3027
  */
@@ -2914,9 +3100,9 @@ type Props$a = {
2914
3100
  value?: number;
2915
3101
  };
2916
3102
 
2917
- declare const DxcSlider: react.ForwardRefExoticComponent<Props$a & react.RefAttributes<HTMLDivElement>>;
3103
+ declare const DxcSlider: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
2918
3104
 
2919
- type Props$9 = {
3105
+ type Props$a = {
2920
3106
  /**
2921
3107
  * Specifies a string to be used as the name for the spinner element when no `label` is provided or the `mode` is set to small.
2922
3108
  */
@@ -2950,11 +3136,11 @@ type Props$9 = {
2950
3136
  value?: number;
2951
3137
  };
2952
3138
 
2953
- declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$9) => react_jsx_runtime.JSX.Element;
3139
+ declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$a) => react_jsx_runtime.JSX.Element;
2954
3140
 
2955
3141
  type Mode = "default" | "info" | "success" | "warning" | "error";
2956
3142
  type Size = "small" | "medium" | "large";
2957
- type Props$8 = {
3143
+ type Props$9 = {
2958
3144
  /**
2959
3145
  * It will define the color of the light based on its semantic meaning.
2960
3146
  */
@@ -2969,9 +3155,9 @@ type Props$8 = {
2969
3155
  size?: Size;
2970
3156
  };
2971
3157
 
2972
- declare function DxcStatusLight({ label, mode, size }: Props$8): react_jsx_runtime.JSX.Element;
3158
+ declare function DxcStatusLight({ label, mode, size }: Props$9): react_jsx_runtime.JSX.Element;
2973
3159
 
2974
- type Props$7 = {
3160
+ type Props$8 = {
2975
3161
  /**
2976
3162
  * Specifies a string to be used as the name for the switch element when no `label` is provided.
2977
3163
  */
@@ -3030,44 +3216,32 @@ type Props$7 = {
3030
3216
  value?: string;
3031
3217
  };
3032
3218
 
3033
- declare const DxcSwitch: react.ForwardRefExoticComponent<Props$7 & react.RefAttributes<HTMLDivElement>>;
3219
+ declare const DxcSwitch: react.ForwardRefExoticComponent<Props$8 & react.RefAttributes<HTMLDivElement>>;
3034
3220
 
3035
3221
  declare const DxcTable: {
3036
3222
  ({ children, margin, mode }: Props$t): react_jsx_runtime.JSX.Element;
3037
3223
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
3038
3224
  };
3039
3225
 
3040
- type TabLabelProps = {
3041
- /**
3042
- * Tab label.
3043
- */
3044
- label: string;
3045
- /**
3046
- * Material Symbol name or SVG element used as the icon that will be displayed in the tab.
3047
- */
3048
- icon?: string | SVG;
3049
- };
3050
- type TabIconProps = {
3051
- /**
3052
- * Tab label.
3053
- */
3054
- label?: string;
3055
- /**
3056
- * Material Symbol name or SVG element used as the icon that will be displayed in the tab.
3057
- */
3058
- icon: string | SVG;
3059
- };
3060
- type TabProps = {
3226
+ type CommonTabProps = {
3061
3227
  defaultActive?: boolean;
3062
3228
  active?: boolean;
3063
3229
  title?: string;
3064
- tabId?: string;
3065
3230
  disabled?: boolean;
3066
3231
  notificationNumber?: boolean | number;
3067
3232
  children: ReactNode;
3068
3233
  onClick?: () => void;
3069
3234
  onHover?: () => void;
3070
- } & (TabLabelProps | TabIconProps);
3235
+ };
3236
+ type TabProps = (CommonTabProps & {
3237
+ tabId: string;
3238
+ label?: string;
3239
+ icon?: string | SVG;
3240
+ }) | (CommonTabProps & {
3241
+ tabId?: string;
3242
+ label: string;
3243
+ icon?: string | SVG;
3244
+ });
3071
3245
  type TabsProps = {
3072
3246
  /**
3073
3247
  * Whether the icon should appear above or to the left of the label.
@@ -3087,14 +3261,14 @@ type TabsProps = {
3087
3261
  */
3088
3262
  children?: ReactNode;
3089
3263
  };
3090
- type Props$6 = TabsProps;
3264
+ type Props$7 = TabsProps;
3091
3265
 
3092
3266
  declare const DxcTabs: {
3093
- ({ children, iconPosition, margin, tabIndex }: Props$6): react_jsx_runtime.JSX.Element;
3267
+ ({ children, iconPosition, margin, tabIndex }: Props$7): react_jsx_runtime.JSX.Element;
3094
3268
  Tab: react.ForwardRefExoticComponent<TabProps & react.RefAttributes<HTMLButtonElement>>;
3095
3269
  };
3096
3270
 
3097
- type Props$5 = {
3271
+ type Props$6 = {
3098
3272
  /**
3099
3273
  * Specifies a string to be used as the name for the textarea element when no `label` is provided.
3100
3274
  */
@@ -3228,7 +3402,7 @@ type Props$5 = {
3228
3402
  verticalGrow?: "auto" | "manual" | "none";
3229
3403
  };
3230
3404
 
3231
- declare const DxcTextarea: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3405
+ declare const DxcTextarea: react.ForwardRefExoticComponent<Props$6 & react.RefAttributes<HTMLDivElement>>;
3232
3406
 
3233
3407
  type Action$1 = {
3234
3408
  /**
@@ -3246,7 +3420,7 @@ type Action$1 = {
3246
3420
  */
3247
3421
  title?: string;
3248
3422
  };
3249
- type Props$4 = {
3423
+ type Props$5 = {
3250
3424
  /**
3251
3425
  * Sets the alignment inside the input.
3252
3426
  */
@@ -3399,7 +3573,96 @@ type Props$4 = {
3399
3573
  ariaLabel?: string;
3400
3574
  };
3401
3575
 
3402
- declare const DxcTextInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3576
+ declare const DxcTextInput: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3577
+
3578
+ type Props$4 = {
3579
+ /**
3580
+ * Specifies a string to be used as the name for the timeInput element when no `label` is provided.
3581
+ */
3582
+ ariaLabel?: string;
3583
+ /**
3584
+ * If true, the input will have an action to clear the entered value.
3585
+ */
3586
+ clearable?: boolean;
3587
+ /**
3588
+ * Initial value of the input, only when it is uncontrolled.
3589
+ */
3590
+ defaultValue?: string;
3591
+ /**
3592
+ * If true, the component will be disabled.
3593
+ */
3594
+ disabled?: boolean;
3595
+ /**
3596
+ * If it is a defined value and also a truthy string, the component will
3597
+ * change its appearance, showing the error below the input component. If
3598
+ * the defined value is an empty string, it will reserve a space below
3599
+ * the component for a future error, but it would not change its look. In
3600
+ * case of being undefined or null, both the appearance and the space for
3601
+ * the error message would not be modified.
3602
+ */
3603
+ error?: string;
3604
+ /**
3605
+ * Helper text to be placed above the input.
3606
+ */
3607
+ helperText?: string;
3608
+ /**
3609
+ * Text to be placed above the input.
3610
+ */
3611
+ label?: string;
3612
+ /**
3613
+ * Name attribute of the input element.
3614
+ */
3615
+ name?: string;
3616
+ /**
3617
+ * This function will be called when the input element loses the focus.
3618
+ * An object including the input value and the error (if the value
3619
+ * entered is not valid) will be passed to this function. If there is no error,
3620
+ * error will not be defined.
3621
+ */
3622
+ onBlur?: (val: {
3623
+ value: string;
3624
+ error?: string;
3625
+ }) => void;
3626
+ /**
3627
+ * This function will be called when the user types within the input
3628
+ * or selects a value in the dropdown element of the component.
3629
+ */
3630
+ onChange?: (value: string) => void;
3631
+ /**
3632
+ * If true, the input will be optional, showing '(Optional)'
3633
+ * next to the label. Otherwise, the field will be considered required and an error will be
3634
+ * passed as a parameter to the OnBlur function when it has
3635
+ * not been filled.
3636
+ */
3637
+ optional?: boolean;
3638
+ /**
3639
+ * If true, the component will not be mutable, meaning the user can not edit the control.
3640
+ * In addition, the clear action will not be displayed even if the flag is set to true.
3641
+ */
3642
+ readOnly?: boolean;
3643
+ /**
3644
+ * If true, the component will display seconds and allow the user to input them. Otherwise, seconds will not be shown and the user will not be able to input them.
3645
+ */
3646
+ showSeconds?: boolean;
3647
+ /**
3648
+ * Size of the component.
3649
+ */
3650
+ size?: "small" | "medium" | "large" | "fillParent";
3651
+ /**
3652
+ * Value of the tabindex attribute.
3653
+ */
3654
+ tabIndex?: number;
3655
+ /**
3656
+ * Time format of the input. It can be either 12 or 24.
3657
+ */
3658
+ timeFormat?: "12" | "24";
3659
+ /**
3660
+ * Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
3661
+ */
3662
+ value?: string;
3663
+ };
3664
+
3665
+ declare const DxcTimeInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3403
3666
 
3404
3667
  type Action = {
3405
3668
  /**
@@ -3574,7 +3837,7 @@ type Props$2 = {
3574
3837
  position?: "bottom" | "top" | "left" | "right";
3575
3838
  };
3576
3839
 
3577
- declare function DxcTooltip(props: Props$2): react_jsx_runtime.JSX.Element;
3840
+ declare const DxcTooltip: (props: Props$2) => react_jsx_runtime.JSX.Element;
3578
3841
 
3579
3842
  type Props$1 = {
3580
3843
  as?: "a" | "blockquote" | "cite" | "code" | "div" | "em" | "figcaption" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p" | "pre" | "small" | "span" | "strong";
@@ -3609,7 +3872,7 @@ type StepProps = {
3609
3872
  */
3610
3873
  icon?: string | SVG;
3611
3874
  /**
3612
- * Whether the step is disabled or not.
3875
+ * If true, the step will be disabled.
3613
3876
  */
3614
3877
  disabled?: boolean;
3615
3878
  /**
@@ -3668,8 +3931,12 @@ declare const defaultTranslatedComponentLabels: {
3668
3931
  previousMonthTitle: string;
3669
3932
  nextMonthTitle: string;
3670
3933
  };
3934
+ card: {
3935
+ noContent: string;
3936
+ };
3671
3937
  dateInput: {
3672
3938
  invalidDateErrorMessage: string;
3939
+ datePickerActionTitle: string;
3673
3940
  };
3674
3941
  dialog: {
3675
3942
  closeIconAriaLabel: string;
@@ -3725,6 +3992,12 @@ declare const defaultTranslatedComponentLabels: {
3725
3992
  radioGroup: {
3726
3993
  optionalItemLabelDefault: string;
3727
3994
  };
3995
+ searchBar: {
3996
+ clearFieldActionTitle: string;
3997
+ inputAriaLabel: string;
3998
+ triggerTitle: string;
3999
+ cancelButtonLabel: string;
4000
+ };
3728
4001
  select: {
3729
4002
  actionClearSelectionTitle: string;
3730
4003
  actionClearSearchTitle: string;
@@ -3740,11 +4013,18 @@ declare const defaultTranslatedComponentLabels: {
3740
4013
  searchingMessage: string;
3741
4014
  fetchingDataErrorMessage: string;
3742
4015
  };
4016
+ timeInput: {
4017
+ timePickerActionTitle: string;
4018
+ };
3743
4019
  toast: {
3744
4020
  clearToastActionTitle: string;
3745
4021
  };
3746
4022
  };
3747
4023
  type TranslatedLabels = typeof defaultTranslatedComponentLabels;
4024
+ type LocalizedContext = {
4025
+ labels: TranslatedLabels;
4026
+ locale?: string;
4027
+ };
3748
4028
 
3749
4029
  /**
3750
4030
  * This type is used to allow labels objects to be passed to the HalstackProvider.
@@ -3753,103 +4033,18 @@ type TranslatedLabels = typeof defaultTranslatedComponentLabels;
3753
4033
  type DeepPartial<T> = {
3754
4034
  [P in keyof T]?: Partial<T[P]>;
3755
4035
  };
3756
- declare const HalstackLanguageContext: react.Context<{
3757
- applicationLayout: {
3758
- visibilityToggleTitle: string;
3759
- };
3760
- alert: {
3761
- previousMessageActionTitle: string;
3762
- nextMessageActionTitle: string;
3763
- closeAlertActionTitle: string;
3764
- closeMessageActionTitle: string;
3765
- };
3766
- calendar: {
3767
- daysShort: string[];
3768
- months: string[];
3769
- previousMonthTitle: string;
3770
- nextMonthTitle: string;
3771
- };
3772
- dateInput: {
3773
- invalidDateErrorMessage: string;
3774
- };
3775
- dialog: {
3776
- closeIconAriaLabel: string;
3777
- };
3778
- fileInput: {
3779
- fileSizeGreaterThanErrorMessage: string;
3780
- fileSizeLessThanErrorMessage: string;
3781
- multipleButtonLabelDefault: string;
3782
- singleButtonLabelDefault: string;
3783
- dropAreaButtonLabelDefault: string;
3784
- multipleDropAreaLabelDefault: string;
3785
- singleDropAreaLabelDefault: string;
3786
- deleteFileActionTitle: string;
3787
- };
3788
- footer: {
3789
- copyrightText: (year: number) => string;
3790
- };
3791
- formFields: {
3792
- optionalLabel: string;
3793
- requiredSelectionErrorMessage: string;
3794
- requiredValueErrorMessage: string;
3795
- formatRequestedErrorMessage: string;
3796
- lengthErrorMessage: (minLength?: number, maxLength?: number) => string;
3797
- logoAlternativeText: string;
3798
- };
3799
- header: {
3800
- closeIcon: string;
3801
- hamburgerTitle: string;
3802
- };
3803
- numberInput: {
3804
- valueGreaterThanOrEqualToErrorMessage: (value: number) => string;
3805
- valueLessThanOrEqualToErrorMessage: (value: number) => string;
3806
- decrementValueTitle: string;
3807
- incrementValueTitle: string;
3808
- };
3809
- paginator: {
3810
- itemsPerPageText: string;
3811
- minToMaxOfText: (minNumberOfItems: number, maxNumberOfItems: number, totalItems: number) => string;
3812
- goToPageText: string;
3813
- pageOfText: (pageNumber: number, totalPagesNumber: number) => string;
3814
- firstResultsTitle: string;
3815
- previousResultsTitle: string;
3816
- nextResultsTitle: string;
3817
- lastResultsTitle: string;
3818
- };
3819
- passwordInput: {
3820
- inputShowPasswordTitle: string;
3821
- inputHidePasswordTitle: string;
3822
- };
3823
- quickNav: {
3824
- contentTitle: string;
3825
- };
3826
- radioGroup: {
3827
- optionalItemLabelDefault: string;
3828
- };
3829
- select: {
3830
- actionClearSelectionTitle: string;
3831
- actionClearSearchTitle: string;
3832
- noMatchesErrorMessage: string;
3833
- selectAllLabel: string;
3834
- };
3835
- tabs: {
3836
- scrollLeft: string;
3837
- scrollRight: string;
3838
- };
3839
- textInput: {
3840
- clearFieldActionTitle: string;
3841
- searchingMessage: string;
3842
- fetchingDataErrorMessage: string;
3843
- };
3844
- toast: {
3845
- clearToastActionTitle: string;
3846
- };
3847
- }>;
4036
+ declare const HalstackLanguageContext: react.Context<LocalizedContext>;
4037
+ type ThemeType = {
4038
+ tokens?: Record<string, string | number>;
4039
+ logos?: Record<string, string | undefined>;
4040
+ };
3848
4041
  type HalstackProviderPropsType = {
3849
4042
  labels?: DeepPartial<TranslatedLabels>;
3850
4043
  children: ReactNode;
4044
+ opinionatedTheme?: ThemeType;
4045
+ localeTag?: string;
3851
4046
  };
3852
- declare const HalstackProvider: ({ labels, children }: HalstackProviderPropsType) => JSX.Element;
4047
+ declare const HalstackProvider: ({ labels, children, opinionatedTheme, localeTag, }: HalstackProviderPropsType) => JSX.Element;
3853
4048
 
3854
4049
  declare function useToast(): {
3855
4050
  default: (toast: DefaultToast) => (() => void) | undefined;
@@ -3859,4 +4054,4 @@ declare function useToast(): {
3859
4054
  loading: (toast: Omit<LoadingToast, "loading">) => (() => void) | undefined;
3860
4055
  };
3861
4056
 
3862
- export { DxcAccordion, DxcAlert, DxcApplicationLayout, DxcBadge, DxcBleed, DxcBreadcrumbs, DxcBulletedList, DxcButton, DxcCard, DxcCheckbox, DxcChip, DxcContainer, DxcContextualMenu, DxcDataGrid, DxcDateInput, DxcDialog, DxcDivider, DxcDropdown, DxcFileInput, DxcFlex, DxcGrid, DxcHeading, DxcImage, DxcInset, DxcLink, DxcNavTabs, DxcNumberInput, DxcPaginator, DxcParagraph, DxcPasswordInput, DxcProgressBar, DxcQuickNav, DxcRadioGroup, DxcResultsetTable, DxcSelect, DxcSlider, DxcSpinner, DxcStatusLight, DxcSwitch, DxcTable, DxcTabs, DxcTextInput, DxcTextarea, DxcToastsQueue, DxcToggleGroup, DxcTooltip, DxcTypography, DxcWizard, HalstackLanguageContext, HalstackProvider, useToast };
4057
+ export { DxcAccordion, DxcAlert, DxcApplicationLayout, DxcAvatar, DxcBadge, DxcBleed, DxcBreadcrumbs, DxcBulletedList, DxcButton, DxcCard, DxcCheckbox, DxcChip, DxcContainer, DxcContextualMenu, DxcDataGrid, DxcDateInput, DxcDialog, DxcDivider, DxcDropdown, DxcFileInput, DxcFlex, DxcGrid, DxcHeading, DxcImage, DxcInset, DxcLink, DxcNavTabs, DxcNumberInput, DxcPaginator, DxcParagraph, DxcPasswordInput, DxcPopover, DxcProgressBar, DxcQuickNav, DxcRadioGroup, DxcResultsetTable, DxcSelect, DxcSlider, DxcSpinner, DxcStatusLight, DxcSwitch, DxcTable, DxcTabs, DxcTextInput, DxcTextarea, DxcTimeInput, DxcToastsQueue, DxcToggleGroup, DxcTooltip, DxcTypography, DxcWizard, HalstackLanguageContext, HalstackProvider, useToast };