@dxc-technology/halstack-react 0.0.0-4285b64 → 0.0.0-42b1c58

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,152 @@ 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;
257
+ type Props$J = {
308
258
  /**
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;
316
- /**
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;
282
+ isHorizontal?: boolean;
343
283
  /**
344
- * Value of the tabindex attribute.
284
+ * Function that will be called when an option is clicked.
285
+ * This is used to notify that an item has been selected to close any visible menu that is not managed by the navigation tree.
345
286
  */
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;
287
+ onSelectItem?: () => void;
352
288
  };
353
289
 
354
- type Logo$1 = {
355
- /**
356
- * URL to navigate when the logo is clicked.
357
- */
358
- href?: string;
290
+ type Section = {
291
+ items: (Item$1 | GroupItem$1)[];
292
+ title?: string;
293
+ };
294
+ type SearchbarSidenavProps = Omit<SearchBarProps, "autoFocus" | "disabled" | "onCancel">;
295
+ type Props$I = {
359
296
  /**
360
- * Source of the logo image.
297
+ * The content rendered in the bottom part of the sidenav, under the navigation menu.
361
298
  */
362
- src: string;
299
+ bottomContent?: ReactNode;
363
300
  /**
364
- * Alternative text for the logo image.
301
+ * Object with the properties of the branding placed at the top of the sidenav.
365
302
  */
366
- title?: string;
367
- };
368
- type Props$E = {
303
+ appTitle?: string | ReactNode;
369
304
  /**
370
- * Whether a contrast line should appear at the bottom of the header.
305
+ * Initial state of the expansion of the sidenav, only when it is uncontrolled.
371
306
  */
372
- underlined?: boolean;
307
+ defaultExpanded?: boolean;
373
308
  /**
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.
309
+ * If true the nav menu will have lines marking the groups.
377
310
  */
378
- content?: ReactNode;
311
+ displayGroupLines?: boolean;
379
312
  /**
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.
313
+ * If true, the sidenav is expanded.
314
+ * If undefined the component will be uncontrolled and the value will be managed internally by the component.
382
315
  */
383
- responsiveContent?: (closeHandler: () => void) => ReactNode;
316
+ expanded?: boolean;
384
317
  /**
385
- * Logo to be displayed inside the header
318
+ * Array of items to be displayed in the navigation menu.
319
+ * Each item can be a single/simple item, a group item or a section.
386
320
  */
387
- logo?: Logo$1;
321
+ navItems?: (Item$1 | GroupItem$1)[] | Section[];
388
322
  /**
389
- * Size of the bottom margin to be applied to the header.
323
+ * Function called when the expansion state of the sidenav changes.
390
324
  */
391
- margin?: Space$1;
325
+ onExpandedChange?: (value: boolean) => void;
392
326
  /**
393
- * This function will be called when the user clicks the header logo.
327
+ * When provided, a search bar will be rendered at the top of the sidenav.
394
328
  */
395
- onClick?: () => void;
329
+ searchBar?: SearchbarSidenavProps;
396
330
  /**
397
- * Value of the tabindex for all interactive elements, except those inside the
398
- * custom area.
331
+ * The additional content rendered in the upper part of the sidenav, under the branding.
399
332
  */
400
- tabIndex?: number;
333
+ topContent?: ReactNode;
334
+ };
335
+
336
+ type GroupItem = CommonItemProps & {
337
+ items: Item$1[];
338
+ };
339
+ type MainNavPropsType = (GroupItem | Item$1)[];
340
+ type SearchBarHeaderProps = Omit<SearchBarProps, "autoFocus" | "disabled">;
341
+ type Props$H = {
342
+ appTitle?: string;
343
+ navItems?: MainNavPropsType;
344
+ responsiveBottomContent?: ReactNode;
345
+ searchBar?: SearchBarHeaderProps;
346
+ sideContent?: ReactNode | ((isResponsive: boolean) => ReactNode);
401
347
  };
402
348
 
403
349
  type SocialLink = {
@@ -425,18 +371,14 @@ type BottomLink = {
425
371
  text: string;
426
372
  };
427
373
  type Logo = {
428
- /**
429
- * URL to navigate when the logo is clicked.
430
- */
431
- href?: string;
432
374
  /**
433
375
  * Source of the logo image.
434
376
  */
435
- src: string;
377
+ src: string | SVG;
436
378
  /**
437
379
  * Alternative text for the logo image.
438
380
  */
439
- title?: string;
381
+ alt: string;
440
382
  };
441
383
  type FooterPropsType = {
442
384
  /**
@@ -444,29 +386,28 @@ type FooterPropsType = {
444
386
  * the bottom part of the footer.
445
387
  */
446
388
  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
389
  /**
453
390
  * The text that will be displayed as copyright disclaimer.
454
391
  */
455
392
  copyright?: string;
456
393
  /**
457
- * Logo to be displayed inside the footer
394
+ * Content to be displayed on the left side of the footer under the logo.
458
395
  */
459
- logo?: Logo;
396
+ leftContent?: ReactNode;
460
397
  /**
461
- * Size of the top margin to be applied to the footer.
398
+ * Logo to be displayed inside the footer
462
399
  */
463
- margin?: Space$1;
400
+ logo?: Logo;
464
401
  /**
465
402
  * Determines the visual style and layout
466
403
  * - "default": The default mode with full content and styling.
467
404
  * - "reduced": A reduced mode with minimal content and styling.
468
405
  */
469
406
  mode?: "default" | "reduced";
407
+ /**
408
+ * Content to be displayed on the right side of the footer before the socialLinks if provided.
409
+ */
410
+ rightContent?: ReactNode;
470
411
  /**
471
412
  * An array of objects representing the links that will be rendered as
472
413
  * icons at the top-right side of the footer.
@@ -474,7 +415,7 @@ type FooterPropsType = {
474
415
  socialLinks?: SocialLink[];
475
416
  /**
476
417
  * Value of the tabindex for all interactive elements, except those
477
- * inside the custom area.
418
+ * inside the leftContent and rightContent.
478
419
  */
479
420
  tabIndex?: number;
480
421
  };
@@ -485,12 +426,29 @@ type AppLayoutMainPropsType = {
485
426
  */
486
427
  children: ReactNode;
487
428
  };
429
+ type LogoPropsType = {
430
+ /**
431
+ * Alternative text for the logo image.
432
+ */
433
+ alt: string;
434
+ /**
435
+ * URL to navigate when the logo is clicked.
436
+ */
437
+ href?: string;
438
+ /**
439
+ * Function to be called on logo click.
440
+ */
441
+ onClick?: () => void;
442
+ /**
443
+ * URL or SVG of the image that will be placed in the logo.
444
+ */
445
+ src: string | SVG;
446
+ };
488
447
  type ApplicationLayoutPropsType = {
489
448
  /**
490
- * Text to be placed next to the hamburger button that toggles the
491
- * visibility of the sidenav.
449
+ * Logo properties.
492
450
  */
493
- visibilityToggleLabel?: string;
451
+ logo?: LogoPropsType;
494
452
  /**
495
453
  * Header content.
496
454
  */
@@ -510,23 +468,83 @@ type ApplicationLayoutPropsType = {
510
468
  };
511
469
 
512
470
  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
- };
471
+ ({ logo, header, sidenav, footer, children }: ApplicationLayoutPropsType): JSX.Element;
472
+ Footer: ({ bottomLinks, copyright, leftContent, logo, mode, rightContent, socialLinks, tabIndex, }: FooterPropsType) => JSX.Element;
473
+ Header: ({ appTitle, navItems, responsiveBottomContent, searchBar, sideContent, }: Props$H) => JSX.Element;
519
474
  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;
475
+ Sidenav: ({ topContent, bottomContent, navItems, appTitle, displayGroupLines, expanded, defaultExpanded, onExpandedChange, searchBar, }: Props$I) => JSX.Element;
476
+ };
477
+
478
+ type Size$5 = "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
479
+ type Shape = "circle" | "square";
480
+ type Color = "primary" | "secondary" | "tertiary" | "success" | "info" | "neutral" | "warning" | "error";
481
+ interface Status {
482
+ mode: "default" | "info" | "success" | "warning" | "error";
483
+ position: "top" | "bottom";
484
+ }
485
+ type Props$G = {
486
+ /**
487
+ * Affects the visual style of the avatar. It can be used following semantic purposes or not.
488
+ */
489
+ color?: Color;
490
+ /**
491
+ * If true, the component will be disabled.
492
+ */
493
+ disabled?: boolean;
494
+ /**
495
+ * Material Symbol name or SVG element as the icon that will be placed as avatar.
496
+ */
497
+ icon?: string | SVG;
498
+ /**
499
+ * URL of the image.
500
+ */
501
+ imageSrc?: string;
502
+ /**
503
+ * Text label associated with the avatar.
504
+ * Used to generate and display initials inside the avatar.
505
+ */
506
+ label?: string;
507
+ /**
508
+ * Page to be opened when the user clicks on the link.
509
+ */
510
+ linkHref?: string;
511
+ /**
512
+ * This function will be called when the user clicks the avatar. Makes it behave as a button.
513
+ */
514
+ onClick?: () => void;
515
+ /**
516
+ * Text to be displayed as label next to the avatar.
517
+ */
518
+ primaryText?: string;
519
+ /**
520
+ * Text to be displayed as sublabel next to the avatar.
521
+ */
522
+ secondaryText?: string;
523
+ /**
524
+ * This will determine if the avatar will be rounded square or a circle.
525
+ */
526
+ shape?: Shape;
527
+ /**
528
+ * Size of the component.
529
+ */
530
+ size?: Size$5;
531
+ /**
532
+ * Defines the color of the status indicator displayed on the avatar and where it will be placed.
533
+ * If not provided, no indicator will be rendered.
534
+ */
535
+ status?: Status;
536
+ /**
537
+ * Value of the tabindex attribute. It will only apply when the onClick property is passed.
538
+ */
539
+ tabIndex?: number;
540
+ /**
541
+ * Text to be displayed inside a tooltip when hovering the avatar.
542
+ */
543
+ title?: string;
528
544
  };
529
545
 
546
+ 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>;
547
+
530
548
  type ContextualProps = {
531
549
  /**
532
550
  * Text to be placed in the badge.
@@ -543,7 +561,7 @@ type ContextualProps = {
543
561
  /**
544
562
  * Affects the visual style of the badge. It can be used following semantic purposes or not.
545
563
  */
546
- color?: "grey" | "blue" | "green" | "orange" | "red" | "yellow" | "purple";
564
+ color?: "primary" | "secondary" | "tertiary" | "success" | "info" | "neutral" | "warning" | "error";
547
565
  };
548
566
  type NotificationProps = {
549
567
  /**
@@ -563,7 +581,7 @@ type NotificationProps = {
563
581
  */
564
582
  color?: never;
565
583
  };
566
- type CommonProps$7 = {
584
+ type CommonProps$8 = {
567
585
  /**
568
586
  * Text representing advisory information related to the badge. Under the hood, this prop also serves as an accessible label for the component.
569
587
  */
@@ -577,11 +595,11 @@ type CommonProps$7 = {
577
595
  */
578
596
  size?: "small" | "medium" | "large";
579
597
  };
580
- type Props$D = (ContextualProps | NotificationProps) & CommonProps$7;
598
+ type Props$F = (ContextualProps | NotificationProps) & CommonProps$8;
581
599
 
582
- declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: Props$D) => JSX.Element;
600
+ declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: Props$F) => JSX.Element;
583
601
 
584
- type Props$C = {
602
+ type Props$E = {
585
603
  /**
586
604
  * Applies the spacing scale to all sides.
587
605
  */
@@ -616,13 +634,13 @@ type Props$C = {
616
634
  children: ReactNode;
617
635
  };
618
636
 
619
- declare function DxcBleed({ space, horizontal, vertical, top, right, bottom, left, children }: Props$C): react_jsx_runtime.JSX.Element;
637
+ declare const DxcBleed: ({ space, horizontal, vertical, top, right, bottom, left, children }: Props$E) => react_jsx_runtime.JSX.Element;
620
638
 
621
- type Item$1 = {
639
+ type Item = {
622
640
  href?: string;
623
641
  label: string;
624
642
  };
625
- type Props$B = {
643
+ type Props$D = {
626
644
  /**
627
645
  * Provides a label that describes the type of navigation enabled by
628
646
  * the component.
@@ -631,7 +649,7 @@ type Props$B = {
631
649
  /**
632
650
  * Array of objects representing the items of the breadcrumbs.
633
651
  */
634
- items: Item$1[];
652
+ items: Item[];
635
653
  /**
636
654
  * Number of items before showing a collapsed version of the
637
655
  * breadcrumbs. It can't be lower than two (root/collapsed action and
@@ -654,7 +672,7 @@ type Props$B = {
654
672
  showRoot?: boolean;
655
673
  };
656
674
 
657
- declare const DxcBreadcrumbs: ({ ariaLabel, items, itemsBeforeCollapse, onItemClick, showRoot, }: Props$B) => react_jsx_runtime.JSX.Element;
675
+ declare const DxcBreadcrumbs: ({ ariaLabel, items, itemsBeforeCollapse, onItemClick, showRoot, }: Props$D) => react_jsx_runtime.JSX.Element;
658
676
 
659
677
  type IconProps = {
660
678
  /**
@@ -684,8 +702,7 @@ type OtherProps = {
684
702
  */
685
703
  children: ReactNode;
686
704
  };
687
- type Props$A = IconProps | OtherProps;
688
-
705
+ type Props$C = IconProps | OtherProps;
689
706
  type BulletedListItemPropsType = {
690
707
  /**
691
708
  * Text to be shown in the list.
@@ -694,20 +711,20 @@ type BulletedListItemPropsType = {
694
711
  };
695
712
 
696
713
  declare const DxcBulletedList: {
697
- ({ children, type, icon }: Props$A): JSX.Element;
714
+ ({ children, type, icon }: Props$C): JSX.Element;
698
715
  Item: ({ children }: BulletedListItemPropsType) => JSX.Element;
699
716
  };
700
717
 
701
718
  type Semantic = "default" | "error" | "warning" | "success" | "info";
702
719
  type Mode$1 = "primary" | "secondary" | "tertiary";
703
- type Size$3 = {
720
+ type Size$4 = {
704
721
  /**
705
722
  * Height of the button.
706
723
  */
707
724
  height?: "small" | "medium" | "large";
708
725
  width?: "small" | "medium" | "large" | "fillParent" | "fitContent";
709
726
  };
710
- type Props$z = {
727
+ type Props$B = {
711
728
  /**
712
729
  * Text to be placed in the button.
713
730
  */
@@ -752,78 +769,176 @@ type Props$z = {
752
769
  /**
753
770
  * Size of the component.
754
771
  */
755
- size?: Size$3;
772
+ size?: Size$4;
756
773
  /**
757
774
  * Value of the tabindex attribute.
758
775
  */
759
776
  tabIndex?: number;
760
777
  };
761
778
 
762
- declare const DxcButton: ({ disabled, icon, iconPosition, label, margin, mode, onClick, semantic, size, tabIndex, title, type, }: Props$z) => JSX.Element;
779
+ declare const DxcButton: ({ disabled, icon, iconPosition, label, margin, mode, onClick, semantic, size, tabIndex, title, type, }: Props$B) => JSX.Element;
763
780
 
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 = {
781
+ type Props$A = {
771
782
  /**
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.
783
+ * Alternative text description displayed when the specified image is not loaded.
784
+ *
785
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
786
+ * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
775
787
  */
776
- imageSrc?: string;
788
+ alt: string;
777
789
  /**
778
- * Color of the image background.
790
+ * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
791
+ * which is required regardless of the presence of the caption or not.
779
792
  */
780
- imageBgColor?: string;
793
+ caption?: string;
781
794
  /**
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.
795
+ * Sets the rendered height of the image.
785
796
  */
786
- imagePadding?: Space$1 | Size$2;
797
+ height?: string;
787
798
  /**
788
- * Whether the image should appear in relation to the content.
799
+ * If true, the image will be loaded only when it is visible on the screen (lazy loading).
800
+ * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
789
801
  */
790
- imagePosition?: "before" | "after";
802
+ lazyLoading?: boolean;
791
803
  /**
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.
804
+ * Sets the object-fit CSS property.
805
+ *
806
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
794
807
  */
795
- linkHref?: string;
808
+ objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
796
809
  /**
797
- * This function will be called when the user clicks the card. Component
798
- * will show some visual feedback on hover.
810
+ * Sets the object-position CSS property.
811
+ *
812
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
799
813
  */
800
- onClick?: () => void;
814
+ objectPosition?: string;
801
815
  /**
802
- * Whether the image must cover the whole image area of the card.
816
+ * This function will be called when the image fails to load.
803
817
  */
804
- imageCover?: boolean;
818
+ onError?: ReactEventHandler<HTMLImageElement>;
805
819
  /**
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.
820
+ * This function will be called when the image is loaded.
808
821
  */
809
- margin?: Space$1 | Size$2;
822
+ onLoad?: ReactEventHandler<HTMLImageElement>;
810
823
  /**
811
- * Value of the tabindex attribute applied when the component is clickable.
824
+ * One or more strings separated by commas, indicating a set of source sizes.
825
+ * If the srcSet attribute is absent or contains no values with a width descriptor,
826
+ * then this attribute has no effect.
827
+ *
828
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
812
829
  */
813
- tabIndex?: number;
830
+ sizes?: string;
814
831
  /**
815
- * Determines whether or not the component should have an outline.
832
+ * URL of the image. This prop is required and must be valid.
816
833
  */
817
- outlined?: boolean;
834
+ src: string;
835
+ /**
836
+ * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
837
+ *
838
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
839
+ */
840
+ srcSet?: string;
841
+ /**
842
+ * Sets the rendered width of the image.
843
+ */
844
+ width?: string;
845
+ };
846
+
847
+ type Size$3 = {
848
+ width?: "fillParent" | "fitContent";
849
+ height?: "fillParent" | "fitContent";
850
+ };
851
+ type Props$z = {
818
852
  /**
819
853
  * Custom content that will be placed inside the component.
820
854
  */
821
855
  children?: ReactNode;
856
+ /**
857
+ * Initial state of the checkbox, only when it is uncontrolled.
858
+ */
859
+ defaultSelected?: boolean;
860
+ /**
861
+ * Defines the direction of the content inside the card. It can be set to "row" or "column". The default value is "column".
862
+ */
863
+ direction?: "row" | "column";
864
+ /**
865
+ * Defines the size of the card when it is empty.
866
+ */
867
+ emptySize?: {
868
+ width?: string;
869
+ height?: string;
870
+ iconSize?: "small" | "medium" | "large";
871
+ };
872
+ /**
873
+ * URL to navigate to when the card is clicked.
874
+ * If href is defined selectable will be ignored and the link will be always considered as an anchor.
875
+ */
876
+ href?: string;
877
+ /**
878
+ * Image to be displayed inside the card.
879
+ */
880
+ image?: Props$A;
881
+ /**
882
+ * Position of the image inside the card. It can be set to "before" or "after" the content.
883
+ */
884
+ imagePosition?: "before" | "after";
885
+ /**
886
+ * If true, the card will be displayed as empty state.
887
+ */
888
+ isEmpty?: boolean;
889
+ /**
890
+ * If true, a loading state will be displayed inside the card.
891
+ */
892
+ isLoading?: boolean;
893
+ /**
894
+ * Defines the size of the loading card when isLoading is true.
895
+ */
896
+ loadingSize?: {
897
+ width?: string;
898
+ height?: string;
899
+ };
900
+ /**
901
+ * Defines the visual style of the card. It can be set to "elevated" or "outlined".
902
+ */
903
+ mode?: "elevated" | "outlined";
904
+ /**
905
+ * If true, the link will open in a new window. href must be provided for this to work.
906
+ */
907
+ newWindow?: boolean;
908
+ /**
909
+ * Callback function that is called when the card is clicked.
910
+ * It receives a boolean value indicating whether the card is selected or not.
911
+ * selectable must be true for this to work.
912
+ */
913
+ onSelectionChange?: (selected: boolean) => void;
914
+ /**
915
+ * Callback function that is called when the card is clicked.
916
+ */
917
+ onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;
918
+ /**
919
+ * 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.
920
+ * If href is defined, the card won't be selectable, even if this prop is true.
921
+ */
922
+ selectable?: boolean;
923
+ /**
924
+ * If true, the card is selected and if defined it will behave as a controlled component.
925
+ */
926
+ selected?: boolean;
927
+ /**
928
+ * Defines the size of the card. Width and height can be set to "fillParent" or "fitContent".
929
+ * The default value is { width: "fitContent", height: "fitContent" }.
930
+ */
931
+ size?: Size$3;
932
+ /**
933
+ * Specifies the tab index of the card.
934
+ * The default value is 0.
935
+ */
936
+ tabIndex?: number;
822
937
  };
823
938
 
824
- declare const DxcCard: ({ imageSrc, imageBgColor, imagePadding, imagePosition, linkHref, onClick, imageCover, margin, tabIndex, outlined, children, }: Props$y) => react_jsx_runtime.JSX.Element;
939
+ declare const DxcCard: react.ForwardRefExoticComponent<Props$z & react.RefAttributes<HTMLAnchorElement>>;
825
940
 
826
- type Props$x = {
941
+ type Props$y = {
827
942
  /**
828
943
  * Specifies a string to be used as the name for the checkbox element when no `label` is provided.
829
944
  */
@@ -888,45 +1003,82 @@ type Props$x = {
888
1003
  value?: string;
889
1004
  };
890
1005
 
891
- declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$x & react.RefAttributes<HTMLDivElement>>;
1006
+ declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$y & react.RefAttributes<HTMLDivElement>>;
892
1007
 
893
- type Props$w = {
1008
+ type ChipAvatarType = {
1009
+ color: Props$G["color"];
1010
+ profileName?: Props$G["label"];
1011
+ imageSrc?: Props$G["imageSrc"];
1012
+ icon?: Props$G["icon"];
1013
+ };
1014
+ type CommonProps$7 = {
894
1015
  /**
895
- * Text to be placed on the chip.
1016
+ * Function to be called when the chip is clicked or the dismiss action is triggered.
896
1017
  */
897
- label?: string;
1018
+ onClick?: () => void;
1019
+ /**
1020
+ * Value of the tabindex attribute.
1021
+ */
1022
+ tabIndex?: number;
1023
+ };
1024
+ type SelectableChipProps = CommonProps$7 & {
1025
+ /**
1026
+ * If true, the component will be disabled.
1027
+ */
1028
+ disabled?: boolean;
1029
+ /**
1030
+ * The whole chip is an interactive element that allows users to activate or clear options directly within the interface.
1031
+ */
1032
+ mode?: "selectable";
898
1033
  /**
899
- * Element or path used as icon to be placed after the chip label.
1034
+ * If true, the component will be selected. This property is only applicable when the mode is "selectable".
1035
+ * If undefined, the component manages its own internal state (uncontrolled mode).
900
1036
  */
901
- suffixIcon?: string | SVG;
1037
+ selected?: boolean;
1038
+ } & ({
1039
+ /**
1040
+ * Element, path or avatar used as icon to be placed before the chip label.
1041
+ */
1042
+ prefix: ChipAvatarType;
1043
+ /**
1044
+ * Text to be placed on the chip. Required when using an avatar prefix.
1045
+ */
1046
+ label: string;
1047
+ } | {
902
1048
  /**
903
1049
  * Element or path used as icon to be placed before the chip label.
904
1050
  */
905
- prefixIcon?: string | SVG;
1051
+ prefix: string | SVG;
906
1052
  /**
907
- * This function will be called when the suffix is clicked.
1053
+ * Text to be placed on the chip. Optional when using an icon prefix.
908
1054
  */
909
- onClickSuffix?: () => void;
1055
+ label?: string;
1056
+ } | {
1057
+ prefix?: undefined;
910
1058
  /**
911
- * This function will be called when the prefix is clicked.
1059
+ * Text to be placed on the chip.
912
1060
  */
913
- onClickPrefix?: () => void;
1061
+ label: string;
1062
+ });
1063
+ type DismissibleChipProps = CommonProps$7 & {
914
1064
  /**
915
- * If true, the component will be disabled.
1065
+ * Dismissible chip is used to represent information generated by user input within an interface.
916
1066
  */
917
- disabled?: boolean;
1067
+ mode: "dismissible";
918
1068
  /**
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.
1069
+ * Text to be placed on the chip.
921
1070
  */
922
- margin?: Space$1 | Margin;
1071
+ label: string;
923
1072
  /**
924
- * Value of the tabindex attribute.
1073
+ * Element, path or avatar used as icon to be placed before the chip label.
925
1074
  */
926
- tabIndex?: number;
1075
+ prefix?: string | SVG | ChipAvatarType;
1076
+ selected?: never;
1077
+ disabled?: never;
927
1078
  };
1079
+ type Props$x = SelectableChipProps | DismissibleChipProps;
928
1080
 
929
- declare const DxcChip: ({ label, suffixIcon, prefixIcon, onClickSuffix, onClickPrefix, disabled, margin, tabIndex, }: Props$w) => react_jsx_runtime.JSX.Element;
1081
+ declare const DxcChip: ({ disabled, label, mode, onClick, prefix, selected, tabIndex, }: Props$x) => react_jsx_runtime.JSX.Element | null;
930
1082
 
931
1083
  type Space = {
932
1084
  top?: string;
@@ -969,7 +1121,7 @@ type Overflow = OverflowValues | {
969
1121
  x?: OverflowValues;
970
1122
  y?: OverflowValues;
971
1123
  };
972
- type Props$v = {
1124
+ type Props$w = {
973
1125
  /**
974
1126
  * Based on the CSS property background allows configuring all properties related to the background of a container.
975
1127
  *
@@ -1045,80 +1197,133 @@ type Props$v = {
1045
1197
  */
1046
1198
  maxWidth?: string;
1047
1199
  /**
1048
- * Sets the min-width CSS property.
1049
- *
1050
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-width
1200
+ * Sets the min-width CSS property.
1201
+ *
1202
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-width
1203
+ */
1204
+ minHeight?: string;
1205
+ /**
1206
+ * Sets the min-height CSS property.
1207
+ *
1208
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-height
1209
+ */
1210
+ minWidth?: string;
1211
+ /**
1212
+ * Based on the CSS property outline allows configuring all properties related
1213
+ * to the outline of a container.
1214
+ */
1215
+ outline?: Outline;
1216
+ /**
1217
+ * Sets the overflow CSS property.
1218
+ *
1219
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow
1220
+ */
1221
+ overflow?: Overflow;
1222
+ /**
1223
+ * Size of the padding to be applied to the container.
1224
+ */
1225
+ padding?: string | Space;
1226
+ /**
1227
+ * Sets the position CSS property.
1228
+ *
1229
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/position
1230
+ */
1231
+ position?: "static" | "relative" | "absolute" | "fixed" | "sticky";
1232
+ /**
1233
+ * Sets the width CSS property.
1234
+ *
1235
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/width
1236
+ */
1237
+ width?: string;
1238
+ /**
1239
+ * Sets the z-index CSS property.
1240
+ *
1241
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
1242
+ */
1243
+ zIndex?: "auto" | number;
1244
+ };
1245
+
1246
+ declare const DxcContainer: react.ForwardRefExoticComponent<Props$w & react.RefAttributes<HTMLDivElement>>;
1247
+
1248
+ type Props$v = Omit<Props$J, "displayBorder" | "displayGroupLines" | "displayControlsAfter" | "hasPopOver">;
1249
+
1250
+ declare function DxcContextualMenu({ items }: Props$v): react_jsx_runtime.JSX.Element;
1251
+
1252
+ type Size$2 = "small" | "medium" | "large" | "fillParent" | "fitContent";
1253
+ type Option$2 = {
1254
+ /**
1255
+ * Option display value.
1256
+ */
1257
+ label?: string;
1258
+ /**
1259
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
1260
+ */
1261
+ icon?: string | SVG;
1262
+ /**
1263
+ * Option inner value.
1264
+ */
1265
+ value: string;
1266
+ };
1267
+ type Props$u = {
1268
+ /**
1269
+ * An array of objects representing the options.
1270
+ */
1271
+ options: Option$2[];
1272
+ /**
1273
+ * In case options include icons, whether the icon should appear
1274
+ * after or before the label.
1275
+ */
1276
+ optionsIconPosition?: "before" | "after";
1277
+ /**
1278
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
1279
+ */
1280
+ icon?: string | SVG;
1281
+ /**
1282
+ * Whether the icon should appear after or before the label.
1283
+ */
1284
+ iconPosition?: "before" | "after";
1285
+ /**
1286
+ * Text to be placed within the dropdown.
1051
1287
  */
1052
- minHeight?: string;
1288
+ label?: string;
1053
1289
  /**
1054
- * Sets the min-height CSS property.
1055
- *
1056
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/min-height
1290
+ * Whether the arrow next to the label must be displayed or not.
1057
1291
  */
1058
- minWidth?: string;
1292
+ caretHidden?: boolean;
1059
1293
  /**
1060
- * Based on the CSS property outline allows configuring all properties related
1061
- * to the outline of a container.
1294
+ * If true, the component will be disabled.
1062
1295
  */
1063
- outline?: Outline;
1296
+ disabled?: boolean;
1064
1297
  /**
1065
- * Sets the overflow CSS property.
1066
- *
1067
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow
1298
+ * If true, the options are shown when the dropdown is hover.
1068
1299
  */
1069
- overflow?: Overflow;
1300
+ expandOnHover?: boolean;
1070
1301
  /**
1071
- * Size of the padding to be applied to the container.
1302
+ * This function will be called every time the selection changes.
1303
+ * The value of the selected option will be passed as a parameter.
1072
1304
  */
1073
- padding?: string | Space;
1305
+ onSelectOption: (value: string) => void;
1074
1306
  /**
1075
- * Sets the position CSS property.
1076
- *
1077
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/position
1307
+ * Size of the margin to be applied to the component.
1308
+ * You can pass an object with 'top', 'bottom', 'left' and 'right'
1309
+ * properties in order to specify different margin sizes.
1078
1310
  */
1079
- position?: "static" | "relative" | "absolute" | "fixed" | "sticky";
1311
+ margin?: Space$1 | Margin;
1080
1312
  /**
1081
- * Sets the width CSS property.
1082
- *
1083
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/width
1313
+ * Size of the component.
1084
1314
  */
1085
- width?: string;
1315
+ size?: Size$2;
1086
1316
  /**
1087
- * Sets the z-index CSS property.
1088
- *
1089
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
1317
+ * Value of the tabindex attribute.
1090
1318
  */
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 = {
1319
+ tabIndex?: number;
1113
1320
  /**
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.
1321
+ * Text representing advisory information related to the dropdown's trigger action.
1322
+ * Under the hood, this prop also serves as an accessible label for the component.
1116
1323
  */
1117
- items: (Item | GroupItem)[] | Section[];
1324
+ title?: string;
1118
1325
  };
1119
1326
 
1120
- declare function DxcContextualMenu({ items }: Props$u): react_jsx_runtime.JSX.Element;
1121
-
1122
1327
  type BaseActionCell = {
1123
1328
  disabled?: boolean;
1124
1329
  tabIndex?: number;
@@ -1556,7 +1761,7 @@ type Props$p = {
1556
1761
 
1557
1762
  declare function DxcDivider({ color, decorative, orientation, weight, }: Props$p): react_jsx_runtime.JSX.Element;
1558
1763
 
1559
- declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$F) => react_jsx_runtime.JSX.Element;
1764
+ declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$u) => react_jsx_runtime.JSX.Element;
1560
1765
 
1561
1766
  type FileData = {
1562
1767
  /**
@@ -1625,6 +1830,10 @@ type CommonProps$5 = {
1625
1830
  * 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
1831
  */
1627
1832
  showPreview?: boolean;
1833
+ /**
1834
+ * Size of the component.
1835
+ */
1836
+ size?: "medium" | "fillParent";
1628
1837
  /**
1629
1838
  * Value of the tabindex attribute.
1630
1839
  */
@@ -1724,6 +1933,10 @@ type Props$n = CommonProps$4 & {
1724
1933
  * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/order
1725
1934
  */
1726
1935
  order?: number;
1936
+ /**
1937
+ * If true, the flex container will take the full height of its parent.
1938
+ */
1939
+ fullHeight?: boolean;
1727
1940
  /**
1728
1941
  * Sets the flex-grow CSS property.
1729
1942
  *
@@ -1752,7 +1965,7 @@ type Props$n = CommonProps$4 & {
1752
1965
  children: ReactNode;
1753
1966
  };
1754
1967
 
1755
- declare const DxcFlex: ({ basis, direction, gap, grow, order, shrink, wrap, ...props }: Props$n) => react_jsx_runtime.JSX.Element;
1968
+ declare const DxcFlex: ({ basis, direction, fullHeight, gap, grow, order, shrink, wrap, ...props }: Props$n) => react_jsx_runtime.JSX.Element;
1756
1969
 
1757
1970
  type Gap = string | {
1758
1971
  columnGap?: string;
@@ -1769,7 +1982,7 @@ type PlaceSelfValues = "auto" | "baseline" | "center" | "end" | "start" | "stret
1769
1982
  type PlaceContentValues = "baseline" | "center" | "end" | "normal" | "space-around" | "space-between" | "space-evenly" | "start" | "stretch";
1770
1983
  type PlaceItemsValues = "baseline" | "center" | "end" | "normal" | "start" | "stretch";
1771
1984
  type PlaceObject<Type, Suffix extends string> = {
1772
- [Property in keyof Type as `${string & Property}${Capitalize<string & Suffix>}`]: Type[Property];
1985
+ [Property in Extract<keyof Type, string> as `${Property}${Capitalize<Suffix>}`]: Type[Property];
1773
1986
  };
1774
1987
  type PlaceGeneric<PlaceValues, Element extends string> = PlaceObject<{
1775
1988
  align: PlaceValues;
@@ -1903,75 +2116,9 @@ type Props$l = {
1903
2116
 
1904
2117
  declare function DxcHeading({ as, level, margin, text, weight }: Props$l): react_jsx_runtime.JSX.Element;
1905
2118
 
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;
2119
+ declare function DxcImage({ alt, caption, height, lazyLoading, objectFit, objectPosition, onError, onLoad, sizes, src, srcSet, width, }: Props$A): react_jsx_runtime.JSX.Element;
1973
2120
 
1974
- type Props$j = {
2121
+ type Props$k = {
1975
2122
  /**
1976
2123
  * Applies the spacing scale to the bottom side.
1977
2124
  */
@@ -2006,11 +2153,11 @@ type Props$j = {
2006
2153
  vertical?: string;
2007
2154
  };
2008
2155
 
2009
- declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$j): react_jsx_runtime.JSX.Element;
2156
+ declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$k): react_jsx_runtime.JSX.Element;
2010
2157
 
2011
2158
  type LinkProps = {
2012
2159
  /**
2013
- * If true, the link is disabled.
2160
+ * If true, the link will be disabled.
2014
2161
  */
2015
2162
  disabled?: boolean;
2016
2163
  /**
@@ -2065,7 +2212,7 @@ type TabProps$1 = {
2065
2212
  */
2066
2213
  children: string;
2067
2214
  /**
2068
- * Whether the tab is disabled or not.
2215
+ * If true, the tab will be disabled.
2069
2216
  */
2070
2217
  disabled?: boolean;
2071
2218
  /**
@@ -2089,7 +2236,7 @@ type TabProps$1 = {
2089
2236
  */
2090
2237
  notificationNumber?: boolean | number;
2091
2238
  };
2092
- type Props$i = {
2239
+ type Props$j = {
2093
2240
  /**
2094
2241
  * Contains one or more DxcNavTabs.Tab.
2095
2242
  */
@@ -2105,11 +2252,11 @@ type Props$i = {
2105
2252
  };
2106
2253
 
2107
2254
  declare const DxcNavTabs: {
2108
- ({ iconPosition, tabIndex, children }: Props$i): JSX.Element;
2109
- Tab: react.ForwardRefExoticComponent<TabProps$1 & react.RefAttributes<HTMLAnchorElement>>;
2255
+ ({ iconPosition, tabIndex, children }: Props$j): JSX.Element;
2256
+ Tab: react.ForwardRefExoticComponent<TabProps$1 & react.RefAttributes<HTMLDivElement | HTMLAnchorElement>>;
2110
2257
  };
2111
2258
 
2112
- type Props$h = {
2259
+ type Props$i = {
2113
2260
  /**
2114
2261
  * Text to be placed above the number.
2115
2262
  */
@@ -2236,9 +2383,9 @@ type Props$h = {
2236
2383
  showControls?: boolean;
2237
2384
  };
2238
2385
 
2239
- declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$h & react.RefAttributes<HTMLDivElement>>;
2386
+ declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$i & react.RefAttributes<HTMLDivElement>>;
2240
2387
 
2241
- type Props$g = {
2388
+ type Props$h = {
2242
2389
  /**
2243
2390
  * Number of the current selected page.
2244
2391
  */
@@ -2276,13 +2423,13 @@ type Props$g = {
2276
2423
  tabIndex?: number;
2277
2424
  };
2278
2425
 
2279
- declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$g) => JSX.Element;
2426
+ declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$h) => JSX.Element;
2280
2427
 
2281
2428
  declare function DxcParagraph({ children }: {
2282
2429
  children: ReactNode;
2283
2430
  }): react_jsx_runtime.JSX.Element;
2284
2431
 
2285
- type Props$f = {
2432
+ type Props$g = {
2286
2433
  /**
2287
2434
  * Text to be placed above the password input.
2288
2435
  */
@@ -2386,7 +2533,35 @@ type Props$f = {
2386
2533
  ariaLabel?: string;
2387
2534
  };
2388
2535
 
2389
- declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$f & react.RefAttributes<HTMLDivElement>>;
2536
+ declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$g & react.RefAttributes<HTMLDivElement>>;
2537
+
2538
+ type PopoverPropsType = {
2539
+ /** Action that triggers the popover to open. */
2540
+ actionToOpen?: "click" | "hover";
2541
+ /** Alignment of the popover relative to the trigger element. */
2542
+ align?: "start" | "center" | "end";
2543
+ /** Set to true if child controls the events. It will render the child directly without wrapping it. */
2544
+ asChild?: boolean;
2545
+ /** Element that triggers the popover and works as the anchor. */
2546
+ children: React.ReactNode;
2547
+ /** Whether the popover should display a tip (arrow). */
2548
+ hasTip?: boolean;
2549
+ /** Controlled open state of the popover. If it is left undefined, it will be uncontrolled. */
2550
+ isOpen?: boolean;
2551
+ /** Distance in pixels from the trigger element to the popover. */
2552
+ offset?: number;
2553
+ /** Callback function when the popover is opened.
2554
+ * Used only in controlled mode and if the trigger lacks the events to manage the controlled behavior. */
2555
+ onOpen?: () => void;
2556
+ /** Callback function when the popover is closed. */
2557
+ onClose?: () => void;
2558
+ /** Content to be displayed inside the popover. */
2559
+ popoverContent: React.ReactNode;
2560
+ /** Side of the trigger where the popover will appear. */
2561
+ side?: "top" | "bottom" | "left" | "right";
2562
+ };
2563
+
2564
+ declare const DxcPopover: ({ actionToOpen, align, asChild, children, hasTip, isOpen, offset, onOpen, onClose, popoverContent, side, }: PopoverPropsType) => JSX.Element;
2390
2565
 
2391
2566
  type Size$1 = {
2392
2567
  top?: Space$1;
@@ -2394,7 +2569,7 @@ type Size$1 = {
2394
2569
  left?: Space$1;
2395
2570
  right?: Space$1;
2396
2571
  };
2397
- type Props$e = {
2572
+ type Props$f = {
2398
2573
  /**
2399
2574
  * Text to be placed above the progress bar.
2400
2575
  */
@@ -2428,7 +2603,7 @@ type Props$e = {
2428
2603
  ariaLabel?: string;
2429
2604
  };
2430
2605
 
2431
- declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$e) => JSX.Element;
2606
+ declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$f) => JSX.Element;
2432
2607
 
2433
2608
  type Link = {
2434
2609
  /**
@@ -2440,7 +2615,7 @@ type Link = {
2440
2615
  */
2441
2616
  links?: Link[];
2442
2617
  };
2443
- type Props$d = {
2618
+ type Props$e = {
2444
2619
  /**
2445
2620
  * Title of the quick nav component.
2446
2621
  */
@@ -2451,7 +2626,7 @@ type Props$d = {
2451
2626
  links: Link[];
2452
2627
  };
2453
2628
 
2454
- declare function DxcQuickNav({ links, title }: Props$d): react_jsx_runtime.JSX.Element;
2629
+ declare function DxcQuickNav({ links, title }: Props$e): react_jsx_runtime.JSX.Element;
2455
2630
 
2456
2631
  type Option$1 = {
2457
2632
  /**
@@ -2583,26 +2758,31 @@ type CommonProps$3 = {
2583
2758
  * An array of objects representing the columns of the table.
2584
2759
  */
2585
2760
  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
2761
  /**
2592
2762
  * Size of the margin to be applied to the component. You can pass an object with 'top',
2593
2763
  * 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2594
2764
  */
2595
2765
  margin?: Space$1 | Margin;
2596
- /**
2597
- * Value of the tabindex attribute applied to the sortable icon.
2598
- */
2599
- tabIndex?: number;
2600
2766
  /**
2601
2767
  * Determines the visual style and layout
2602
2768
  * - "default": The default mode with big spacing
2603
2769
  * - "reduced": A reduced mode with minimal spacing for dense tables
2604
2770
  */
2605
2771
  mode?: "default" | "reduced";
2772
+ /**
2773
+ * An array of objects representing the rows of the table, you will have
2774
+ * as many objects as columns in the table.
2775
+ */
2776
+ rows: Row[];
2777
+ /**
2778
+ * Value of the tabindex attribute applied to the sortable icon.
2779
+ */
2780
+ tabIndex?: number;
2781
+ /**
2782
+ * A fixed height must be set to enable virtualization.
2783
+ * If no height is provided, the table will automatically adjust to the height of its content, and virtualization will not be applied.
2784
+ */
2785
+ virtualizedHeight?: string;
2606
2786
  };
2607
2787
  type PaginatedProps = CommonProps$3 & {
2608
2788
  hidePaginator?: false;
@@ -2629,10 +2809,6 @@ type NonPaginatedProps = CommonProps$3 & {
2629
2809
  * If true, paginator will not be displayed.
2630
2810
  */
2631
2811
  hidePaginator: true;
2632
- /**
2633
- * If true, a select component for navigation between pages will be displayed.
2634
- */
2635
- showGoToPage?: never;
2636
2812
  /**
2637
2813
  * Number of items per page.
2638
2814
  */
@@ -2646,11 +2822,15 @@ type NonPaginatedProps = CommonProps$3 & {
2646
2822
  * option. The value selected will be passed as a parameter.
2647
2823
  */
2648
2824
  itemsPerPageFunction?: never;
2825
+ /**
2826
+ * If true, a select component for navigation between pages will be displayed.
2827
+ */
2828
+ showGoToPage?: never;
2649
2829
  };
2650
- type Props$c = PaginatedProps | NonPaginatedProps;
2830
+ type Props$d = PaginatedProps | NonPaginatedProps;
2651
2831
 
2652
2832
  declare const DxcResultsetTable: {
2653
- ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, }: Props$c): react_jsx_runtime.JSX.Element;
2833
+ ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, virtualizedHeight, }: Props$d): react_jsx_runtime.JSX.Element;
2654
2834
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
2655
2835
  };
2656
2836
 
@@ -2685,33 +2865,43 @@ type ListOptionGroupType = {
2685
2865
  };
2686
2866
  type CommonProps$2 = {
2687
2867
  /**
2688
- * Text to be placed above the select.
2868
+ * Specifies a string to be used as the name for the select element when no `label` is provided.
2689
2869
  */
2690
- label?: string;
2870
+ ariaLabel?: string;
2691
2871
  /**
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.
2872
+ * If true, the component will be disabled.
2697
2873
  */
2698
- name?: string;
2874
+ disabled?: boolean;
2699
2875
  /**
2700
- * An array of objects representing the selectable options.
2876
+ * If it is a defined value and also a truthy string, the component will
2877
+ * change its appearance, showing the error below the select component.
2878
+ * If the defined value is an empty string, it will reserve a space below
2879
+ * the component for a future error, but it would not change its look. In
2880
+ * case of being undefined or null, both the appearance and the space for
2881
+ * the error message would not be modified.
2701
2882
  */
2702
- options: ListOptionType[] | ListOptionGroupType[];
2883
+ error?: string;
2703
2884
  /**
2704
2885
  * Helper text to be placed above the select.
2705
2886
  */
2706
2887
  helperText?: string;
2707
2888
  /**
2708
- * Text to be put as placeholder of the select.
2889
+ * Text to be placed above the select.
2709
2890
  */
2710
- placeholder?: string;
2891
+ label?: string;
2711
2892
  /**
2712
- * If true, the component will be disabled.
2893
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
2894
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2713
2895
  */
2714
- disabled?: boolean;
2896
+ margin?: Space$1 | Margin;
2897
+ /**
2898
+ * Name attribute of the input element. This attribute will allow users
2899
+ * to find the component's value during the submit event. In this event,
2900
+ * the component's value will always be a regular string, for both single
2901
+ * and multiple selection modes, being a single option value in the first case
2902
+ * and more than one value when multiple selection is available, separated by commas.
2903
+ */
2904
+ name?: string;
2715
2905
  /**
2716
2906
  * If true, the select will be optional, showing '(Optional)'
2717
2907
  * next to the label and adding a default first option with an empty string as value,
@@ -2721,23 +2911,23 @@ type CommonProps$2 = {
2721
2911
  */
2722
2912
  optional?: boolean;
2723
2913
  /**
2724
- * If true, enables search functionality.
2914
+ * An array of objects representing the selectable options.
2725
2915
  */
2726
- searchable?: boolean;
2916
+ options: ListOptionType[] | ListOptionGroupType[];
2727
2917
  /**
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.
2918
+ * Text to be put as placeholder of the select.
2734
2919
  */
2735
- error?: string;
2920
+ placeholder?: string;
2736
2921
  /**
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.
2922
+ * If true, enables search functionality.
2739
2923
  */
2740
- margin?: Space$1 | Margin;
2924
+ searchable?: boolean;
2925
+ /**
2926
+ * Defines the search mode when searchable is true.
2927
+ * If true, matches options that start with the search text.
2928
+ * If false, matches options that contain the search text anywhere in their label.
2929
+ */
2930
+ searchByStartsWith?: boolean;
2741
2931
  /**
2742
2932
  * Size of the component.
2743
2933
  */
@@ -2747,11 +2937,16 @@ type CommonProps$2 = {
2747
2937
  */
2748
2938
  tabIndex?: number;
2749
2939
  /**
2750
- * Specifies a string to be used as the name for the select element when no `label` is provided.
2940
+ * A fixed height must be set to enable virtualization.
2941
+ * If no height is provided, the select will automatically adjust to the height of its content, and virtualization will not be applied.
2751
2942
  */
2752
- ariaLabel?: string;
2943
+ virtualizedHeight?: string;
2753
2944
  };
2754
2945
  type SingleSelect = CommonProps$2 & {
2946
+ /**
2947
+ * Initial value of the select, only when it is uncontrolled.
2948
+ */
2949
+ defaultValue?: string;
2755
2950
  /**
2756
2951
  * Enables users to select multiple items from the list.
2757
2952
  */
@@ -2763,14 +2958,15 @@ type SingleSelect = CommonProps$2 & {
2763
2958
  */
2764
2959
  multiple?: false;
2765
2960
  /**
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.
2961
+ * This function will be called when the select loses the focus. An
2962
+ * object including the value and the error (if the value
2963
+ * selected is not valid) will be passed to this function. If there is no error,
2964
+ * error will not be defined.
2772
2965
  */
2773
- value?: string;
2966
+ onBlur?: (val: {
2967
+ value: string;
2968
+ error?: string;
2969
+ }) => void;
2774
2970
  /**
2775
2971
  * This function will be called when the user selects an option.
2776
2972
  * An object including the current value and the error (if the value entered is not valid)
@@ -2781,17 +2977,16 @@ type SingleSelect = CommonProps$2 & {
2781
2977
  error?: string;
2782
2978
  }) => void;
2783
2979
  /**
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.
2980
+ * Value of the select. If undefined, the component will be uncontrolled
2981
+ * and the value will be managed internally by the component.
2788
2982
  */
2789
- onBlur?: (val: {
2790
- value: string;
2791
- error?: string;
2792
- }) => void;
2983
+ value?: string;
2793
2984
  };
2794
2985
  type MultipleSelect = CommonProps$2 & {
2986
+ /**
2987
+ * Initial value of the select, only when it is uncontrolled.
2988
+ */
2989
+ defaultValue?: string[];
2795
2990
  /**
2796
2991
  * Enables users to select multiple items from the list.
2797
2992
  */
@@ -2803,14 +2998,15 @@ type MultipleSelect = CommonProps$2 & {
2803
2998
  */
2804
2999
  multiple: true;
2805
3000
  /**
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.
3001
+ * This function will be called when the select loses the focus. An
3002
+ * object including the selected values and the error (if the value
3003
+ * selected is not valid) will be passed to this function. If there is no error,
3004
+ * error will be null.
2812
3005
  */
2813
- value?: string[];
3006
+ onBlur?: (val: {
3007
+ value: string[];
3008
+ error?: string;
3009
+ }) => void;
2814
3010
  /**
2815
3011
  * This function will be called when the user selects an option.
2816
3012
  * An object including the current selected values and the error (if the value entered is not valid)
@@ -2821,21 +3017,16 @@ type MultipleSelect = CommonProps$2 & {
2821
3017
  error?: string;
2822
3018
  }) => void;
2823
3019
  /**
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.
3020
+ * Value of the select. If undefined, the component will be uncontrolled
3021
+ * and the value will be managed internally by the component.
2828
3022
  */
2829
- onBlur?: (val: {
2830
- value: string[];
2831
- error?: string;
2832
- }) => void;
3023
+ value?: string[];
2833
3024
  };
2834
- type Props$b = SingleSelect | MultipleSelect;
3025
+ type Props$c = SingleSelect | MultipleSelect;
2835
3026
 
2836
- declare const DxcSelect: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
3027
+ declare const DxcSelect: react.ForwardRefExoticComponent<Props$c & react.RefAttributes<HTMLDivElement>>;
2837
3028
 
2838
- type Props$a = {
3029
+ type Props$b = {
2839
3030
  /**
2840
3031
  * Specifies a string to be used as the name for the slider element when no `label` is provided.
2841
3032
  */
@@ -2914,9 +3105,9 @@ type Props$a = {
2914
3105
  value?: number;
2915
3106
  };
2916
3107
 
2917
- declare const DxcSlider: react.ForwardRefExoticComponent<Props$a & react.RefAttributes<HTMLDivElement>>;
3108
+ declare const DxcSlider: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
2918
3109
 
2919
- type Props$9 = {
3110
+ type Props$a = {
2920
3111
  /**
2921
3112
  * 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
3113
  */
@@ -2950,11 +3141,11 @@ type Props$9 = {
2950
3141
  value?: number;
2951
3142
  };
2952
3143
 
2953
- declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$9) => react_jsx_runtime.JSX.Element;
3144
+ declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$a) => react_jsx_runtime.JSX.Element;
2954
3145
 
2955
3146
  type Mode = "default" | "info" | "success" | "warning" | "error";
2956
3147
  type Size = "small" | "medium" | "large";
2957
- type Props$8 = {
3148
+ type Props$9 = {
2958
3149
  /**
2959
3150
  * It will define the color of the light based on its semantic meaning.
2960
3151
  */
@@ -2969,9 +3160,9 @@ type Props$8 = {
2969
3160
  size?: Size;
2970
3161
  };
2971
3162
 
2972
- declare function DxcStatusLight({ label, mode, size }: Props$8): react_jsx_runtime.JSX.Element;
3163
+ declare function DxcStatusLight({ label, mode, size }: Props$9): react_jsx_runtime.JSX.Element;
2973
3164
 
2974
- type Props$7 = {
3165
+ type Props$8 = {
2975
3166
  /**
2976
3167
  * Specifies a string to be used as the name for the switch element when no `label` is provided.
2977
3168
  */
@@ -3030,44 +3221,32 @@ type Props$7 = {
3030
3221
  value?: string;
3031
3222
  };
3032
3223
 
3033
- declare const DxcSwitch: react.ForwardRefExoticComponent<Props$7 & react.RefAttributes<HTMLDivElement>>;
3224
+ declare const DxcSwitch: react.ForwardRefExoticComponent<Props$8 & react.RefAttributes<HTMLDivElement>>;
3034
3225
 
3035
3226
  declare const DxcTable: {
3036
3227
  ({ children, margin, mode }: Props$t): react_jsx_runtime.JSX.Element;
3037
3228
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
3038
3229
  };
3039
3230
 
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 = {
3231
+ type CommonTabProps = {
3061
3232
  defaultActive?: boolean;
3062
3233
  active?: boolean;
3063
3234
  title?: string;
3064
- tabId?: string;
3065
3235
  disabled?: boolean;
3066
3236
  notificationNumber?: boolean | number;
3067
3237
  children: ReactNode;
3068
3238
  onClick?: () => void;
3069
3239
  onHover?: () => void;
3070
- } & (TabLabelProps | TabIconProps);
3240
+ };
3241
+ type TabProps = (CommonTabProps & {
3242
+ tabId: string;
3243
+ label?: string;
3244
+ icon?: string | SVG;
3245
+ }) | (CommonTabProps & {
3246
+ tabId?: string;
3247
+ label: string;
3248
+ icon?: string | SVG;
3249
+ });
3071
3250
  type TabsProps = {
3072
3251
  /**
3073
3252
  * Whether the icon should appear above or to the left of the label.
@@ -3087,14 +3266,14 @@ type TabsProps = {
3087
3266
  */
3088
3267
  children?: ReactNode;
3089
3268
  };
3090
- type Props$6 = TabsProps;
3269
+ type Props$7 = TabsProps;
3091
3270
 
3092
3271
  declare const DxcTabs: {
3093
- ({ children, iconPosition, margin, tabIndex }: Props$6): react_jsx_runtime.JSX.Element;
3272
+ ({ children, iconPosition, margin, tabIndex }: Props$7): react_jsx_runtime.JSX.Element;
3094
3273
  Tab: react.ForwardRefExoticComponent<TabProps & react.RefAttributes<HTMLButtonElement>>;
3095
3274
  };
3096
3275
 
3097
- type Props$5 = {
3276
+ type Props$6 = {
3098
3277
  /**
3099
3278
  * Specifies a string to be used as the name for the textarea element when no `label` is provided.
3100
3279
  */
@@ -3228,7 +3407,7 @@ type Props$5 = {
3228
3407
  verticalGrow?: "auto" | "manual" | "none";
3229
3408
  };
3230
3409
 
3231
- declare const DxcTextarea: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3410
+ declare const DxcTextarea: react.ForwardRefExoticComponent<Props$6 & react.RefAttributes<HTMLDivElement>>;
3232
3411
 
3233
3412
  type Action$1 = {
3234
3413
  /**
@@ -3246,7 +3425,7 @@ type Action$1 = {
3246
3425
  */
3247
3426
  title?: string;
3248
3427
  };
3249
- type Props$4 = {
3428
+ type Props$5 = {
3250
3429
  /**
3251
3430
  * Sets the alignment inside the input.
3252
3431
  */
@@ -3399,7 +3578,96 @@ type Props$4 = {
3399
3578
  ariaLabel?: string;
3400
3579
  };
3401
3580
 
3402
- declare const DxcTextInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3581
+ declare const DxcTextInput: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3582
+
3583
+ type Props$4 = {
3584
+ /**
3585
+ * Specifies a string to be used as the name for the timeInput element when no `label` is provided.
3586
+ */
3587
+ ariaLabel?: string;
3588
+ /**
3589
+ * If true, the input will have an action to clear the entered value.
3590
+ */
3591
+ clearable?: boolean;
3592
+ /**
3593
+ * Initial value of the input, only when it is uncontrolled.
3594
+ */
3595
+ defaultValue?: string;
3596
+ /**
3597
+ * If true, the component will be disabled.
3598
+ */
3599
+ disabled?: boolean;
3600
+ /**
3601
+ * If it is a defined value and also a truthy string, the component will
3602
+ * change its appearance, showing the error below the input component. If
3603
+ * the defined value is an empty string, it will reserve a space below
3604
+ * the component for a future error, but it would not change its look. In
3605
+ * case of being undefined or null, both the appearance and the space for
3606
+ * the error message would not be modified.
3607
+ */
3608
+ error?: string;
3609
+ /**
3610
+ * Helper text to be placed above the input.
3611
+ */
3612
+ helperText?: string;
3613
+ /**
3614
+ * Text to be placed above the input.
3615
+ */
3616
+ label?: string;
3617
+ /**
3618
+ * Name attribute of the input element.
3619
+ */
3620
+ name?: string;
3621
+ /**
3622
+ * This function will be called when the input element loses the focus.
3623
+ * An object including the input value and the error (if the value
3624
+ * entered is not valid) will be passed to this function. If there is no error,
3625
+ * error will not be defined.
3626
+ */
3627
+ onBlur?: (val: {
3628
+ value: string;
3629
+ error?: string;
3630
+ }) => void;
3631
+ /**
3632
+ * This function will be called when the user types within the input
3633
+ * or selects a value in the dropdown element of the component.
3634
+ */
3635
+ onChange?: (value: string) => void;
3636
+ /**
3637
+ * If true, the input will be optional, showing '(Optional)'
3638
+ * next to the label. Otherwise, the field will be considered required and an error will be
3639
+ * passed as a parameter to the OnBlur function when it has
3640
+ * not been filled.
3641
+ */
3642
+ optional?: boolean;
3643
+ /**
3644
+ * If true, the component will not be mutable, meaning the user can not edit the control.
3645
+ * In addition, the clear action will not be displayed even if the flag is set to true.
3646
+ */
3647
+ readOnly?: boolean;
3648
+ /**
3649
+ * 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.
3650
+ */
3651
+ showSeconds?: boolean;
3652
+ /**
3653
+ * Size of the component.
3654
+ */
3655
+ size?: "small" | "medium" | "large" | "fillParent";
3656
+ /**
3657
+ * Value of the tabindex attribute.
3658
+ */
3659
+ tabIndex?: number;
3660
+ /**
3661
+ * Time format of the input. It can be either 12 or 24.
3662
+ */
3663
+ timeFormat?: "12" | "24";
3664
+ /**
3665
+ * Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
3666
+ */
3667
+ value?: string;
3668
+ };
3669
+
3670
+ declare const DxcTimeInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3403
3671
 
3404
3672
  type Action = {
3405
3673
  /**
@@ -3574,7 +3842,7 @@ type Props$2 = {
3574
3842
  position?: "bottom" | "top" | "left" | "right";
3575
3843
  };
3576
3844
 
3577
- declare function DxcTooltip(props: Props$2): react_jsx_runtime.JSX.Element;
3845
+ declare const DxcTooltip: (props: Props$2) => react_jsx_runtime.JSX.Element;
3578
3846
 
3579
3847
  type Props$1 = {
3580
3848
  as?: "a" | "blockquote" | "cite" | "code" | "div" | "em" | "figcaption" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p" | "pre" | "small" | "span" | "strong";
@@ -3609,7 +3877,7 @@ type StepProps = {
3609
3877
  */
3610
3878
  icon?: string | SVG;
3611
3879
  /**
3612
- * Whether the step is disabled or not.
3880
+ * If true, the step will be disabled.
3613
3881
  */
3614
3882
  disabled?: boolean;
3615
3883
  /**
@@ -3668,8 +3936,12 @@ declare const defaultTranslatedComponentLabels: {
3668
3936
  previousMonthTitle: string;
3669
3937
  nextMonthTitle: string;
3670
3938
  };
3939
+ card: {
3940
+ noContent: string;
3941
+ };
3671
3942
  dateInput: {
3672
3943
  invalidDateErrorMessage: string;
3944
+ datePickerActionTitle: string;
3673
3945
  };
3674
3946
  dialog: {
3675
3947
  closeIconAriaLabel: string;
@@ -3725,6 +3997,12 @@ declare const defaultTranslatedComponentLabels: {
3725
3997
  radioGroup: {
3726
3998
  optionalItemLabelDefault: string;
3727
3999
  };
4000
+ searchBar: {
4001
+ clearFieldActionTitle: string;
4002
+ inputAriaLabel: string;
4003
+ triggerTitle: string;
4004
+ cancelButtonLabel: string;
4005
+ };
3728
4006
  select: {
3729
4007
  actionClearSelectionTitle: string;
3730
4008
  actionClearSearchTitle: string;
@@ -3740,11 +4018,18 @@ declare const defaultTranslatedComponentLabels: {
3740
4018
  searchingMessage: string;
3741
4019
  fetchingDataErrorMessage: string;
3742
4020
  };
4021
+ timeInput: {
4022
+ timePickerActionTitle: string;
4023
+ };
3743
4024
  toast: {
3744
4025
  clearToastActionTitle: string;
3745
4026
  };
3746
4027
  };
3747
4028
  type TranslatedLabels = typeof defaultTranslatedComponentLabels;
4029
+ type LocalizedContext = {
4030
+ labels: TranslatedLabels;
4031
+ locale?: string;
4032
+ };
3748
4033
 
3749
4034
  /**
3750
4035
  * This type is used to allow labels objects to be passed to the HalstackProvider.
@@ -3753,103 +4038,18 @@ type TranslatedLabels = typeof defaultTranslatedComponentLabels;
3753
4038
  type DeepPartial<T> = {
3754
4039
  [P in keyof T]?: Partial<T[P]>;
3755
4040
  };
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
- }>;
4041
+ declare const HalstackLanguageContext: react.Context<LocalizedContext>;
4042
+ type ThemeType = {
4043
+ tokens?: Record<string, string | number>;
4044
+ logos?: Record<string, string | undefined>;
4045
+ };
3848
4046
  type HalstackProviderPropsType = {
3849
4047
  labels?: DeepPartial<TranslatedLabels>;
3850
4048
  children: ReactNode;
4049
+ opinionatedTheme?: ThemeType;
4050
+ localeTag?: string;
3851
4051
  };
3852
- declare const HalstackProvider: ({ labels, children }: HalstackProviderPropsType) => JSX.Element;
4052
+ declare const HalstackProvider: ({ labels, children, opinionatedTheme, localeTag, }: HalstackProviderPropsType) => JSX.Element;
3853
4053
 
3854
4054
  declare function useToast(): {
3855
4055
  default: (toast: DefaultToast) => (() => void) | undefined;
@@ -3859,4 +4059,4 @@ declare function useToast(): {
3859
4059
  loading: (toast: Omit<LoadingToast, "loading">) => (() => void) | undefined;
3860
4060
  };
3861
4061
 
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 };
4062
+ 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 };