@dxc-technology/halstack-react 0.0.0-163a7b2 → 0.0.0-16a139e

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.ts 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$J = IndependentProps | NonIndependentProps;
115
+ type Props$M = IndependentProps | NonIndependentProps;
116
116
 
117
117
  declare const DxcAccordion: {
118
- (props: Props$J): JSX.Element;
118
+ (props: Props$M): 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$I = CommonProps$8 & ModeSpecificProps;
201
+ type Props$L = CommonProps$9 & ModeSpecificProps;
202
202
 
203
- declare const DxcAlert: ({ closable, message, mode, primaryAction, secondaryAction, semantic, title, }: Props$I) => react_jsx_runtime.JSX.Element;
203
+ declare const DxcAlert: ({ closable, message, mode, primaryAction, secondaryAction, semantic, title, }: Props$L) => 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.
211
+ * If true, the component will be disabled.
220
212
  */
221
- title?: string;
213
+ disabled?: boolean;
222
214
  /**
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.
215
+ * Function invoked when the search bar loses focus.
225
216
  */
226
- collapsable?: boolean;
217
+ onBlur?: (value: string) => void;
227
218
  /**
228
- * Material Symbol name or SVG icon to be displayed next to the title of the group.
219
+ * Function invoked when the user cancels the search.
229
220
  */
230
- icon?: string | SVG;
221
+ onCancel?: () => void;
231
222
  /**
232
- * The area inside the sidenav group. This area can be used to render sidenav links.
223
+ * Function invoked when the user changes the input value.
233
224
  */
234
- children: ReactNode;
235
- };
236
- type SidenavLinkPropsType = {
225
+ onChange?: (value: string) => void;
237
226
  /**
238
- * Page to be opened when the user clicks on the link.
227
+ * Function invoked when the Enter key is pressed.
239
228
  */
240
- href?: string;
229
+ onEnter?: (value: string) => void;
241
230
  /**
242
- * If true, the page is opened in a new browser tab.
243
- */
244
- newWindow?: boolean;
245
- /**
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$H = {
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$5 = "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$G = {
257
+ type Props$K = {
295
258
  /**
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;
316
- /**
317
- * Whether the arrow next to the label must be displayed or not.
318
- */
319
- caretHidden?: boolean;
320
- /**
321
- * If true, the component will be disabled.
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.
322
261
  */
323
- disabled?: boolean;
262
+ items: (Item$1 | GroupItem$1)[] | Section$1[];
324
263
  /**
325
- * If true, the options are shown when the dropdown is hover.
264
+ * If true the menu will be displayed with a border.
326
265
  */
327
- expandOnHover?: boolean;
266
+ displayBorder?: boolean;
328
267
  /**
329
- * This function will be called every time the selection changes.
330
- * The value of the selected option will be passed as a parameter.
268
+ * If true the menu will have lines marking the groups.
331
269
  */
332
- onSelectOption: (value: string) => void;
270
+ displayGroupLines?: boolean;
333
271
  /**
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.
272
+ * If true the menu will have controls at the end.
337
273
  */
338
- margin?: Space$1 | Margin;
274
+ displayControlsAfter?: boolean;
339
275
  /**
340
- * Size of the component.
276
+ * If true the menu will be icons only and display a popover on click.
341
277
  */
342
- size?: Size$5;
278
+ hasPopOver?: boolean;
343
279
  /**
344
- * Value of the tabindex attribute.
280
+ * If true the menu will be displayed horizontally.
345
281
  */
346
- tabIndex?: number;
282
+ isHorizontal?: boolean;
347
283
  /**
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.
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.
350
286
  */
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$J = {
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$F = {
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 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$I = {
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,31 +468,21 @@ 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$F): JSX.Element;
517
- Dropdown: (props: react.ComponentProps<({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$G) => 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$I) => JSX.Element;
519
474
  Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
520
- SideNav: {
521
- ({ title, children }: Props$H): 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$J) => JSX.Element;
528
476
  };
529
477
 
530
- type Size$4 = "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
478
+ type Size$5 = "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
531
479
  type Shape = "circle" | "square";
532
480
  type Color = "primary" | "secondary" | "tertiary" | "success" | "info" | "neutral" | "warning" | "error";
533
481
  interface Status {
534
482
  mode: "default" | "info" | "success" | "warning" | "error";
535
483
  position: "top" | "bottom";
536
484
  }
537
- type Props$E = {
485
+ type Props$H = {
538
486
  /**
539
487
  * Affects the visual style of the avatar. It can be used following semantic purposes or not.
540
488
  */
@@ -564,6 +512,14 @@ type Props$E = {
564
512
  * This function will be called when the user clicks the avatar. Makes it behave as a button.
565
513
  */
566
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;
567
523
  /**
568
524
  * This will determine if the avatar will be rounded square or a circle.
569
525
  */
@@ -571,7 +527,7 @@ type Props$E = {
571
527
  /**
572
528
  * Size of the component.
573
529
  */
574
- size?: Size$4;
530
+ size?: Size$5;
575
531
  /**
576
532
  * Defines the color of the status indicator displayed on the avatar and where it will be placed.
577
533
  * If not provided, no indicator will be rendered.
@@ -587,7 +543,7 @@ type Props$E = {
587
543
  title?: string;
588
544
  };
589
545
 
590
- declare const DxcAvatar: react.MemoExoticComponent<({ color, disabled, icon, imageSrc, label, linkHref, onClick, shape, size, status, tabIndex, title, }: Props$E) => react_jsx_runtime.JSX.Element>;
546
+ declare const DxcAvatar: react.ForwardRefExoticComponent<Props$H & react.RefAttributes<HTMLDivElement>>;
591
547
 
592
548
  type ContextualProps = {
593
549
  /**
@@ -625,7 +581,7 @@ type NotificationProps = {
625
581
  */
626
582
  color?: never;
627
583
  };
628
- type CommonProps$7 = {
584
+ type CommonProps$8 = {
629
585
  /**
630
586
  * Text representing advisory information related to the badge. Under the hood, this prop also serves as an accessible label for the component.
631
587
  */
@@ -639,11 +595,11 @@ type CommonProps$7 = {
639
595
  */
640
596
  size?: "small" | "medium" | "large";
641
597
  };
642
- type Props$D = (ContextualProps | NotificationProps) & CommonProps$7;
598
+ type Props$G = (ContextualProps | NotificationProps) & CommonProps$8;
643
599
 
644
- declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: Props$D) => JSX.Element;
600
+ declare const DxcBadge: react.ForwardRefExoticComponent<Props$G & react.RefAttributes<HTMLDivElement>>;
645
601
 
646
- type Props$C = {
602
+ type Props$F = {
647
603
  /**
648
604
  * Applies the spacing scale to all sides.
649
605
  */
@@ -678,13 +634,13 @@ type Props$C = {
678
634
  children: ReactNode;
679
635
  };
680
636
 
681
- 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$F) => react_jsx_runtime.JSX.Element;
682
638
 
683
- type Item$1 = {
639
+ type Item = {
684
640
  href?: string;
685
641
  label: string;
686
642
  };
687
- type Props$B = {
643
+ type Props$E = {
688
644
  /**
689
645
  * Provides a label that describes the type of navigation enabled by
690
646
  * the component.
@@ -693,7 +649,7 @@ type Props$B = {
693
649
  /**
694
650
  * Array of objects representing the items of the breadcrumbs.
695
651
  */
696
- items: Item$1[];
652
+ items: Item[];
697
653
  /**
698
654
  * Number of items before showing a collapsed version of the
699
655
  * breadcrumbs. It can't be lower than two (root/collapsed action and
@@ -716,7 +672,7 @@ type Props$B = {
716
672
  showRoot?: boolean;
717
673
  };
718
674
 
719
- 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$E) => react_jsx_runtime.JSX.Element;
720
676
 
721
677
  type IconProps = {
722
678
  /**
@@ -746,7 +702,7 @@ type OtherProps = {
746
702
  */
747
703
  children: ReactNode;
748
704
  };
749
- type Props$A = IconProps | OtherProps;
705
+ type Props$D = IconProps | OtherProps;
750
706
  type BulletedListItemPropsType = {
751
707
  /**
752
708
  * Text to be shown in the list.
@@ -755,20 +711,20 @@ type BulletedListItemPropsType = {
755
711
  };
756
712
 
757
713
  declare const DxcBulletedList: {
758
- ({ children, type, icon }: Props$A): JSX.Element;
714
+ ({ children, type, icon }: Props$D): JSX.Element;
759
715
  Item: ({ children }: BulletedListItemPropsType) => JSX.Element;
760
716
  };
761
717
 
762
718
  type Semantic = "default" | "error" | "warning" | "success" | "info";
763
719
  type Mode$1 = "primary" | "secondary" | "tertiary";
764
- type Size$3 = {
720
+ type Size$4 = {
765
721
  /**
766
722
  * Height of the button.
767
723
  */
768
724
  height?: "small" | "medium" | "large";
769
725
  width?: "small" | "medium" | "large" | "fillParent" | "fitContent";
770
726
  };
771
- type Props$z = {
727
+ type Props$C = {
772
728
  /**
773
729
  * Text to be placed in the button.
774
730
  */
@@ -813,78 +769,176 @@ type Props$z = {
813
769
  /**
814
770
  * Size of the component.
815
771
  */
816
- size?: Size$3;
772
+ size?: Size$4;
817
773
  /**
818
774
  * Value of the tabindex attribute.
819
775
  */
820
776
  tabIndex?: number;
821
777
  };
822
778
 
823
- declare const DxcButton: ({ disabled, icon, iconPosition, label, margin, mode, onClick, semantic, size, tabIndex, title, type, }: Props$z) => JSX.Element;
779
+ declare const DxcButton: react.ForwardRefExoticComponent<Props$C & react.RefAttributes<HTMLButtonElement>>;
824
780
 
825
- type Size$2 = {
826
- top?: Space$1;
827
- bottom?: Space$1;
828
- left?: Space$1;
829
- right?: Space$1;
830
- };
831
- type Props$y = {
781
+ type Props$B = {
832
782
  /**
833
- * URL of the image that will be placed in the card component.
834
- * In case of omission, the image container will not appear and
835
- * 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/
836
787
  */
837
- imageSrc?: string;
788
+ alt: string;
838
789
  /**
839
- * 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.
840
792
  */
841
- imageBgColor?: string;
793
+ caption?: string;
842
794
  /**
843
- * Size of the padding to be applied to the image section of the
844
- * component. You can pass an object with 'top', 'bottom', 'left'
845
- * and 'right' properties in order to specify different padding sizes.
795
+ * Sets the rendered height of the image.
846
796
  */
847
- imagePadding?: Space$1 | Size$2;
797
+ height?: string;
848
798
  /**
849
- * 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).
850
801
  */
851
- imagePosition?: "before" | "after";
802
+ lazyLoading?: boolean;
852
803
  /**
853
- * If defined, the tag will be displayed as an anchor, using this prop
854
- * 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
855
807
  */
856
- linkHref?: string;
808
+ objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
857
809
  /**
858
- * This function will be called when the user clicks the card. Component
859
- * 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
860
813
  */
861
- onClick?: () => void;
814
+ objectPosition?: string;
862
815
  /**
863
- * Whether the image must cover the whole image area of the card.
816
+ * This function will be called when the image fails to load.
864
817
  */
865
- imageCover?: boolean;
818
+ onError?: ReactEventHandler<HTMLImageElement>;
866
819
  /**
867
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
868
- * 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.
869
821
  */
870
- margin?: Space$1 | Size$2;
822
+ onLoad?: ReactEventHandler<HTMLImageElement>;
871
823
  /**
872
- * 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
873
829
  */
874
- tabIndex?: number;
830
+ sizes?: string;
875
831
  /**
876
- * Determines whether or not the component should have an outline.
832
+ * URL of the image. This prop is required and must be valid.
877
833
  */
878
- 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$A = {
879
852
  /**
880
853
  * Custom content that will be placed inside the component.
881
854
  */
882
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$B;
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;
883
937
  };
884
938
 
885
- 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$A & react.RefAttributes<HTMLDivElement | HTMLAnchorElement>>;
886
940
 
887
- type Props$x = {
941
+ type Props$z = {
888
942
  /**
889
943
  * Specifies a string to be used as the name for the checkbox element when no `label` is provided.
890
944
  */
@@ -949,45 +1003,82 @@ type Props$x = {
949
1003
  value?: string;
950
1004
  };
951
1005
 
952
- declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$x & react.RefAttributes<HTMLDivElement>>;
1006
+ declare const DxcCheckbox: react.ForwardRefExoticComponent<Props$z & react.RefAttributes<HTMLDivElement>>;
953
1007
 
954
- type Props$w = {
1008
+ type ChipAvatarType = {
1009
+ color: Props$H["color"];
1010
+ profileName?: Props$H["label"];
1011
+ imageSrc?: Props$H["imageSrc"];
1012
+ icon?: Props$H["icon"];
1013
+ };
1014
+ type CommonProps$7 = {
955
1015
  /**
956
- * Text to be placed on the chip.
1016
+ * Function to be called when the chip is clicked or the dismiss action is triggered.
1017
+ */
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";
1033
+ /**
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).
1036
+ */
1037
+ selected?: boolean;
1038
+ } & ({
1039
+ /**
1040
+ * Element, path or avatar used as icon to be placed before the chip label.
957
1041
  */
958
- label?: string;
1042
+ prefix: ChipAvatarType;
959
1043
  /**
960
- * Element or path used as icon to be placed after the chip label.
1044
+ * Text to be placed on the chip. Required when using an avatar prefix.
961
1045
  */
962
- suffixIcon?: string | SVG;
1046
+ label: string;
1047
+ } | {
963
1048
  /**
964
1049
  * Element or path used as icon to be placed before the chip label.
965
1050
  */
966
- prefixIcon?: string | SVG;
1051
+ prefix: string | SVG;
967
1052
  /**
968
- * This function will be called when the suffix is clicked.
1053
+ * Text to be placed on the chip. Optional when using an icon prefix.
969
1054
  */
970
- onClickSuffix?: () => void;
1055
+ label?: string;
1056
+ } | {
1057
+ prefix?: undefined;
971
1058
  /**
972
- * This function will be called when the prefix is clicked.
1059
+ * Text to be placed on the chip.
973
1060
  */
974
- onClickPrefix?: () => void;
1061
+ label: string;
1062
+ });
1063
+ type DismissibleChipProps = CommonProps$7 & {
975
1064
  /**
976
- * If true, the component will be disabled.
1065
+ * Dismissible chip is used to represent information generated by user input within an interface.
977
1066
  */
978
- disabled?: boolean;
1067
+ mode: "dismissible";
979
1068
  /**
980
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
981
- * 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.
982
1070
  */
983
- margin?: Space$1 | Margin;
1071
+ label: string;
984
1072
  /**
985
- * Value of the tabindex attribute.
1073
+ * Element, path or avatar used as icon to be placed before the chip label.
986
1074
  */
987
- tabIndex?: number;
1075
+ prefix?: string | SVG | ChipAvatarType;
1076
+ selected?: never;
1077
+ disabled?: never;
988
1078
  };
1079
+ type Props$y = SelectableChipProps | DismissibleChipProps;
989
1080
 
990
- declare const DxcChip: ({ label, suffixIcon, prefixIcon, onClickSuffix, onClickPrefix, disabled, margin, tabIndex, }: Props$w) => react_jsx_runtime.JSX.Element;
1081
+ declare const DxcChip: react.ForwardRefExoticComponent<Props$y & react.RefAttributes<HTMLDivElement>>;
991
1082
 
992
1083
  type Space = {
993
1084
  top?: string;
@@ -1030,7 +1121,7 @@ type Overflow = OverflowValues | {
1030
1121
  x?: OverflowValues;
1031
1122
  y?: OverflowValues;
1032
1123
  };
1033
- type Props$v = {
1124
+ type Props$x = {
1034
1125
  /**
1035
1126
  * Based on the CSS property background allows configuring all properties related to the background of a container.
1036
1127
  *
@@ -1152,34 +1243,87 @@ type Props$v = {
1152
1243
  zIndex?: "auto" | number;
1153
1244
  };
1154
1245
 
1155
- declare function DxcContainer({ display, width, height, overflow, ...props }: Props$v): react_jsx_runtime.JSX.Element;
1246
+ declare const DxcContainer: react.ForwardRefExoticComponent<Props$x & react.RefAttributes<HTMLDivElement>>;
1156
1247
 
1157
- type CommonItemProps = {
1158
- badge?: ReactElement;
1248
+ type Props$w = Omit<Props$K, "displayBorder" | "displayGroupLines" | "displayControlsAfter" | "hasPopOver">;
1249
+
1250
+ declare function DxcContextualMenu({ items }: Props$w): 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
+ */
1159
1261
  icon?: string | SVG;
1160
- label: string;
1161
- };
1162
- type Item = CommonItemProps & {
1163
- onSelect?: () => void;
1164
- selectedByDefault?: boolean;
1165
- };
1166
- type GroupItem = CommonItemProps & {
1167
- items: (Item | GroupItem)[];
1168
- };
1169
- type Section = {
1170
- items: (Item | GroupItem)[];
1171
- title?: string;
1262
+ /**
1263
+ * Option inner value.
1264
+ */
1265
+ value: string;
1172
1266
  };
1173
- type Props$u = {
1267
+ type Props$v = {
1174
1268
  /**
1175
- * Array of items to be displayed in the Contextual menu.
1176
- * Each item can be a single/simple item, a group item or a section.
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.
1177
1287
  */
1178
- items: (Item | GroupItem)[] | Section[];
1288
+ label?: string;
1289
+ /**
1290
+ * Whether the arrow next to the label must be displayed or not.
1291
+ */
1292
+ caretHidden?: boolean;
1293
+ /**
1294
+ * If true, the component will be disabled.
1295
+ */
1296
+ disabled?: boolean;
1297
+ /**
1298
+ * If true, the options are shown when the dropdown is hover.
1299
+ */
1300
+ expandOnHover?: boolean;
1301
+ /**
1302
+ * This function will be called every time the selection changes.
1303
+ * The value of the selected option will be passed as a parameter.
1304
+ */
1305
+ onSelectOption: (value: string) => void;
1306
+ /**
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.
1310
+ */
1311
+ margin?: Space$1 | Margin;
1312
+ /**
1313
+ * Size of the component.
1314
+ */
1315
+ size?: Size$2;
1316
+ /**
1317
+ * Value of the tabindex attribute.
1318
+ */
1319
+ tabIndex?: number;
1320
+ /**
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.
1323
+ */
1324
+ title?: string;
1179
1325
  };
1180
1326
 
1181
- declare function DxcContextualMenu({ items }: Props$u): react_jsx_runtime.JSX.Element;
1182
-
1183
1327
  type BaseActionCell = {
1184
1328
  disabled?: boolean;
1185
1329
  tabIndex?: number;
@@ -1203,7 +1347,7 @@ type ActionsCellPropsType = {
1203
1347
  */
1204
1348
  actions: ActionCell[];
1205
1349
  };
1206
- type Props$t = {
1350
+ type Props$u = {
1207
1351
  /**
1208
1352
  * The center section of the table. Can be used to render custom
1209
1353
  * content in this area.
@@ -1437,14 +1581,14 @@ type BasicGridProps = {
1437
1581
  */
1438
1582
  expandable?: false;
1439
1583
  };
1440
- type Props$s = CommonProps$6 & (PaginatedProps$1 | NonPaginatedProps$1) & ((BasicGridProps & SelectableGridProps) | (ExpandableRows & SelectableGridProps) | (HierarchyRows & SelectableGridProps));
1584
+ type Props$t = CommonProps$6 & (PaginatedProps$1 | NonPaginatedProps$1) & ((BasicGridProps & SelectableGridProps) | (ExpandableRows & SelectableGridProps) | (HierarchyRows & SelectableGridProps));
1441
1585
 
1442
1586
  declare const DxcDataGrid: {
1443
- ({ columns, rows, selectable, expandable, onSelectRows, selectedRows, uniqueRowId, summaryRow, onGridRowsChange, showPaginator, showGoToPage, itemsPerPage, itemsPerPageOptions, itemsPerPageFunction, onSort, onPageChange, totalItems, defaultPage, }: Props$s): JSX.Element;
1587
+ ({ columns, rows, selectable, expandable, onSelectRows, selectedRows, uniqueRowId, summaryRow, onGridRowsChange, showPaginator, showGoToPage, itemsPerPage, itemsPerPageOptions, itemsPerPageFunction, onSort, onPageChange, totalItems, defaultPage, }: Props$t): JSX.Element;
1444
1588
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
1445
1589
  };
1446
1590
 
1447
- type Props$r = {
1591
+ type Props$s = {
1448
1592
  /**
1449
1593
  * Initial value of the input element, only when it is uncontrolled.
1450
1594
  */
@@ -1550,9 +1694,9 @@ type Props$r = {
1550
1694
  ariaLabel?: string;
1551
1695
  };
1552
1696
 
1553
- declare const DxcDateInput: react.ForwardRefExoticComponent<Props$r & react.RefAttributes<HTMLDivElement>>;
1697
+ declare const DxcDateInput: react.ForwardRefExoticComponent<Props$s & react.RefAttributes<HTMLDivElement>>;
1554
1698
 
1555
- type Props$q = {
1699
+ type Props$r = {
1556
1700
  /**
1557
1701
  * If true, the close button will be visible.
1558
1702
  */
@@ -1592,9 +1736,9 @@ type Props$q = {
1592
1736
  disableFocusLock?: boolean;
1593
1737
  };
1594
1738
 
1595
- declare const DxcDialog: ({ children, closable, onBackgroundClick, onCloseClick, overlay, tabIndex, disableFocusLock, }: Props$q) => JSX.Element;
1739
+ declare const DxcDialog: ({ children, closable, onBackgroundClick, onCloseClick, overlay, tabIndex, disableFocusLock, }: Props$r) => JSX.Element;
1596
1740
 
1597
- type Props$p = {
1741
+ type Props$q = {
1598
1742
  /**
1599
1743
  * The divider can be shown in horizontal or vertical.
1600
1744
  */
@@ -1615,9 +1759,9 @@ type Props$p = {
1615
1759
  decorative?: boolean;
1616
1760
  };
1617
1761
 
1618
- declare function DxcDivider({ color, decorative, orientation, weight, }: Props$p): react_jsx_runtime.JSX.Element;
1762
+ declare function DxcDivider({ color, decorative, orientation, weight, }: Props$q): react_jsx_runtime.JSX.Element;
1619
1763
 
1620
- declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$G) => react_jsx_runtime.JSX.Element;
1764
+ declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, title, }: Props$v) => react_jsx_runtime.JSX.Element;
1621
1765
 
1622
1766
  type FileData = {
1623
1767
  /**
@@ -1686,6 +1830,10 @@ type CommonProps$5 = {
1686
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.
1687
1831
  */
1688
1832
  showPreview?: boolean;
1833
+ /**
1834
+ * Size of the component.
1835
+ */
1836
+ size?: "medium" | "fillParent";
1689
1837
  /**
1690
1838
  * Value of the tabindex attribute.
1691
1839
  */
@@ -1723,9 +1871,9 @@ type FileModeProps = CommonProps$5 & {
1723
1871
  */
1724
1872
  mode?: "file";
1725
1873
  };
1726
- type Props$o = DropModeProps | FileModeProps;
1874
+ type Props$p = DropModeProps | FileModeProps;
1727
1875
 
1728
- declare const DxcFileInput: react.ForwardRefExoticComponent<Props$o & react.RefAttributes<HTMLDivElement>>;
1876
+ declare const DxcFileInput: react.ForwardRefExoticComponent<Props$p & react.RefAttributes<HTMLDivElement>>;
1729
1877
 
1730
1878
  type Gap$1 = {
1731
1879
  rowGap: string;
@@ -1760,7 +1908,7 @@ type CommonProps$4 = {
1760
1908
  */
1761
1909
  alignSelf?: "auto" | "flex-start" | "flex-end" | "center" | "baseline" | "stretch";
1762
1910
  };
1763
- type Props$n = CommonProps$4 & {
1911
+ type Props$o = CommonProps$4 & {
1764
1912
  /**
1765
1913
  * Sets the flex-direction CSS property.
1766
1914
  *
@@ -1785,6 +1933,10 @@ type Props$n = CommonProps$4 & {
1785
1933
  * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/order
1786
1934
  */
1787
1935
  order?: number;
1936
+ /**
1937
+ * If true, the flex container will take the full height of its parent.
1938
+ */
1939
+ fullHeight?: boolean;
1788
1940
  /**
1789
1941
  * Sets the flex-grow CSS property.
1790
1942
  *
@@ -1813,7 +1965,7 @@ type Props$n = CommonProps$4 & {
1813
1965
  children: ReactNode;
1814
1966
  };
1815
1967
 
1816
- 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$o) => react_jsx_runtime.JSX.Element;
1817
1969
 
1818
1970
  type Gap = string | {
1819
1971
  columnGap?: string;
@@ -1830,7 +1982,7 @@ type PlaceSelfValues = "auto" | "baseline" | "center" | "end" | "start" | "stret
1830
1982
  type PlaceContentValues = "baseline" | "center" | "end" | "normal" | "space-around" | "space-between" | "space-evenly" | "start" | "stretch";
1831
1983
  type PlaceItemsValues = "baseline" | "center" | "end" | "normal" | "start" | "stretch";
1832
1984
  type PlaceObject<Type, Suffix extends string> = {
1833
- [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];
1834
1986
  };
1835
1987
  type PlaceGeneric<PlaceValues, Element extends string> = PlaceObject<{
1836
1988
  align: PlaceValues;
@@ -1871,7 +2023,7 @@ type GridItemProps = {
1871
2023
  */
1872
2024
  row?: number | string | GridCell;
1873
2025
  };
1874
- type Props$m = GridItemProps & {
2026
+ type Props$n = GridItemProps & {
1875
2027
  /**
1876
2028
  * Sets the grid-auto-columns CSS property.
1877
2029
  *
@@ -1929,14 +2081,14 @@ type Props$m = GridItemProps & {
1929
2081
  };
1930
2082
 
1931
2083
  declare const DxcGrid: {
1932
- (props: Props$m): react_jsx_runtime.JSX.Element;
2084
+ (props: Props$n): react_jsx_runtime.JSX.Element;
1933
2085
  Item: _emotion_styled.StyledComponent<{
1934
2086
  theme?: _emotion_react.Theme;
1935
2087
  as?: React.ElementType;
1936
2088
  } & GridItemProps, react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
1937
2089
  };
1938
2090
 
1939
- type Props$l = {
2091
+ type Props$m = {
1940
2092
  /**
1941
2093
  * Defines the heading level from 1 to 5. The styles of the heading are applied according to the level.
1942
2094
  * The html tag of the heading will be the one specified in the 'as' prop.
@@ -1962,159 +2114,208 @@ type Props$l = {
1962
2114
  margin?: Space$1 | Margin;
1963
2115
  };
1964
2116
 
1965
- declare function DxcHeading({ as, level, margin, text, weight }: Props$l): react_jsx_runtime.JSX.Element;
2117
+ declare function DxcHeading({ as, level, margin, text, weight }: Props$m): react_jsx_runtime.JSX.Element;
1966
2118
 
1967
- type Props$k = {
2119
+ declare function DxcImage({ alt, caption, height, lazyLoading, objectFit, objectPosition, onError, onLoad, sizes, src, srcSet, width, }: Props$B): react_jsx_runtime.JSX.Element;
2120
+
2121
+ type Props$l = {
1968
2122
  /**
1969
- * Alternative text description displayed when the specified image is not loaded.
1970
- *
1971
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
1972
- * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
2123
+ * Applies the spacing scale to the bottom side.
1973
2124
  */
1974
- alt: string;
2125
+ bottom?: string;
1975
2126
  /**
1976
- * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
1977
- * which is required regardless of the presence of the caption or not.
2127
+ * Custom content inside the inset.
1978
2128
  */
1979
- caption?: string;
2129
+ children: ReactNode;
1980
2130
  /**
1981
- * Sets the rendered height of the image.
2131
+ * Applies the spacing scale to the left and right sides.
1982
2132
  */
1983
- height?: string;
2133
+ horizontal?: string;
1984
2134
  /**
1985
- * If true, the image will be loaded only when it is visible on the screen (lazy loading).
1986
- * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
2135
+ * Applies the spacing scale to the left side.
1987
2136
  */
1988
- lazyLoading?: boolean;
2137
+ left?: string;
1989
2138
  /**
1990
- * Sets the object-fit CSS property.
1991
- *
1992
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
2139
+ * Applies the spacing scale to the right side.
1993
2140
  */
1994
- objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
2141
+ right?: string;
1995
2142
  /**
1996
- * Sets the object-position CSS property.
1997
- *
1998
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
2143
+ * Applies the spacing scale to all sides.
1999
2144
  */
2000
- objectPosition?: string;
2145
+ space?: string;
2001
2146
  /**
2002
- * This function will be called when the image fails to load.
2147
+ * Applies the spacing scale to the top side.
2003
2148
  */
2004
- onError?: ReactEventHandler<HTMLImageElement>;
2149
+ top?: string;
2005
2150
  /**
2006
- * This function will be called when the image is loaded.
2151
+ * Applies the spacing scale to the top and bottom sides.
2007
2152
  */
2008
- onLoad?: ReactEventHandler<HTMLImageElement>;
2153
+ vertical?: string;
2154
+ };
2155
+
2156
+ declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$l): react_jsx_runtime.JSX.Element;
2157
+
2158
+ type LinkProps = {
2009
2159
  /**
2010
- * One or more strings separated by commas, indicating a set of source sizes.
2011
- * If the srcSet attribute is absent or contains no values with a width descriptor,
2012
- * then this attribute has no effect.
2013
- *
2014
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
2160
+ * If true, the link will be disabled.
2015
2161
  */
2016
- sizes?: string;
2162
+ disabled?: boolean;
2017
2163
  /**
2018
- * URL of the image. This prop is required and must be valid.
2164
+ * If true, the color is inherited from parent.
2019
2165
  */
2020
- src: string;
2166
+ inheritColor?: boolean;
2021
2167
  /**
2022
- * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
2023
- *
2024
- * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
2168
+ * Material Symbol name or SVG element as the icon that will be placed next to the link text.
2025
2169
  */
2026
- srcSet?: string;
2170
+ icon?: string | SVG;
2027
2171
  /**
2028
- * Sets the rendered width of the image.
2172
+ * Indicates the position of the icon in the component.
2029
2173
  */
2030
- width?: string;
2174
+ iconPosition?: "before" | "after";
2175
+ /**
2176
+ * Page to be opened when the user clicks on the link.
2177
+ */
2178
+ href?: string;
2179
+ /**
2180
+ * If true, the page is opened in a new browser tab.
2181
+ */
2182
+ newWindow?: boolean;
2183
+ /**
2184
+ * If defined, the link will be displayed as a button. This
2185
+ * function will be called when the user clicks the link.
2186
+ */
2187
+ onClick?: () => void;
2188
+ /**
2189
+ * Text of the link.
2190
+ */
2191
+ children: string;
2192
+ /**
2193
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
2194
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2195
+ */
2196
+ margin?: Space$1 | Margin;
2197
+ /**
2198
+ * Value of the tabindex.
2199
+ */
2200
+ tabIndex?: number;
2031
2201
  };
2032
2202
 
2033
- declare function DxcImage({ alt, caption, height, lazyLoading, objectFit, objectPosition, onError, onLoad, sizes, src, srcSet, width, }: Props$k): react_jsx_runtime.JSX.Element;
2203
+ declare const DxcLink: react.ForwardRefExoticComponent<LinkProps & react.RefAttributes<HTMLAnchorElement>>;
2034
2204
 
2035
- type Props$j = {
2036
- /**
2037
- * Applies the spacing scale to the bottom side.
2038
- */
2039
- bottom?: string;
2205
+ type SelectOption = {
2206
+ label?: string;
2207
+ value: string;
2208
+ onSelect: (value: string) => void;
2209
+ selected?: boolean;
2210
+ };
2211
+ type Props$k = {
2040
2212
  /**
2041
- * Custom content inside the inset.
2213
+ * If true, the voice recording button will be shown.
2042
2214
  */
2043
- children: ReactNode;
2215
+ allowRecording?: boolean;
2044
2216
  /**
2045
- * Applies the spacing scale to the left and right sides.
2217
+ * This function will be called when the selection of top items changes.
2218
+ * If this function is provided the message input will allow file selection.
2046
2219
  */
2047
- horizontal?: string;
2220
+ callbackFile?: (files: File[]) => void;
2048
2221
  /**
2049
- * Applies the spacing scale to the left side.
2222
+ * Initial value of the input, only when it is uncontrolled.
2050
2223
  */
2051
- left?: string;
2224
+ defaultValue?: string;
2052
2225
  /**
2053
- * Applies the spacing scale to the right side.
2226
+ * If true, the component will be disabled.
2054
2227
  */
2055
- right?: string;
2228
+ disabled?: boolean;
2056
2229
  /**
2057
- * Applies the spacing scale to all sides.
2230
+ * If it is a defined value and also a truthy string, the component will
2231
+ * change its appearance, showing the error below the input component. If
2232
+ * the defined value is an empty string, it will reserve a space below
2233
+ * the component for a future error, but it would not change its look. In
2234
+ * case of being undefined or null, both the appearance and the space for
2235
+ * the error message would not be modified.
2058
2236
  */
2059
- space?: string;
2237
+ error?: string;
2060
2238
  /**
2061
- * Applies the spacing scale to the top side.
2239
+ * Items to be shown at the top.
2062
2240
  */
2063
- top?: string;
2241
+ files?: File[];
2064
2242
  /**
2065
- * Applies the spacing scale to the top and bottom sides.
2243
+ * If true, it indicates that a request is being processed after the user submits a query.
2066
2244
  */
2067
- vertical?: string;
2068
- };
2069
-
2070
- declare function DxcInset({ bottom, children, horizontal, left, right, space, top, vertical }: Props$j): react_jsx_runtime.JSX.Element;
2071
-
2072
- type LinkProps = {
2245
+ isGenerating?: boolean;
2073
2246
  /**
2074
- * If true, the link will be disabled.
2247
+ * Specifies the maximum length allowed by the input.
2248
+ * This will be checked both when the input element loses the
2249
+ * focus and while typing within it. If the string entered does not
2250
+ * comply the maximum length, the onBlur and onChange functions will be called
2251
+ * with the current value and an internal error informing that the value
2252
+ * length does not comply the specified range. If a valid length is
2253
+ * reached, the error parameter of both events will not be defined.
2075
2254
  */
2076
- disabled?: boolean;
2255
+ maxLength?: number;
2077
2256
  /**
2078
- * If true, the color is inherited from parent.
2257
+ * Specifies the minimum length allowed by the input.
2258
+ * This will be checked both when the input element loses the
2259
+ * focus and while typing within it. If the string entered does not
2260
+ * comply the minimum length, the onBlur and onChange functions will be called
2261
+ * with the current value and an internal error informing that the value
2262
+ * length does not comply the specified range. If a valid length is
2263
+ * reached, the error parameter of both events will not be defined.
2079
2264
  */
2080
- inheritColor?: boolean;
2265
+ minLength?: number;
2081
2266
  /**
2082
- * Material Symbol name or SVG element as the icon that will be placed next to the link text.
2267
+ * Options to be shown on the dropdown under the input.
2083
2268
  */
2084
- icon?: string | SVG;
2269
+ selectOptions?: SelectOption[];
2085
2270
  /**
2086
- * Indicates the position of the icon in the component.
2271
+ * This function will be called when the input element loses the focus.
2272
+ * An object including the input value and the error (if the value
2273
+ * entered is not valid) will be passed to this function. If there is no error,
2274
+ * error will not be defined.
2087
2275
  */
2088
- iconPosition?: "before" | "after";
2276
+ onBlur?: (val: {
2277
+ value: string;
2278
+ error?: string;
2279
+ }) => void;
2089
2280
  /**
2090
- * Page to be opened when the user clicks on the link.
2281
+ * This function will be called when the user types within the input
2282
+ * element of the component. An object including the current value and
2283
+ * the error (if the value entered is not valid) will be passed to this
2284
+ * function. If there is no error, error will not be defined.
2091
2285
  */
2092
- href?: string;
2286
+ onChange?: (val: {
2287
+ value: string;
2288
+ error?: string;
2289
+ }) => void;
2093
2290
  /**
2094
- * If true, the page is opened in a new browser tab.
2291
+ * This function will be called when the user clicks on the button (submit or stop) or presses enter.
2292
+ * The type parameter indicates whether it's a "submit" or "stop" event. For submit events, "value", "files" and "selectedOption" are provided.
2095
2293
  */
2096
- newWindow?: boolean;
2294
+ onButtonClick?: (val: {
2295
+ type: "submit" | "stop";
2296
+ value?: string;
2297
+ files?: File[];
2298
+ selectedOption?: SelectOption;
2299
+ }) => void;
2097
2300
  /**
2098
- * If defined, the link will be displayed as a button. This
2099
- * function will be called when the user clicks the link.
2301
+ * Text to be put as placeholder of the input.
2100
2302
  */
2101
- onClick?: () => void;
2303
+ placeholder?: string;
2102
2304
  /**
2103
- * Text of the link.
2305
+ * Specifies the size of the component. The size will affect the width of the input.
2104
2306
  */
2105
- children: string;
2307
+ size?: "small" | "medium" | "large" | "fillParent";
2106
2308
  /**
2107
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
2108
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
2309
+ * Value of the tabindex attribute.
2109
2310
  */
2110
- margin?: Space$1 | Margin;
2311
+ tabIndex?: number;
2111
2312
  /**
2112
- * Value of the tabindex.
2313
+ * Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
2113
2314
  */
2114
- tabIndex?: number;
2315
+ value?: string;
2115
2316
  };
2116
2317
 
2117
- declare const DxcLink: react.ForwardRefExoticComponent<LinkProps & react.RefAttributes<HTMLAnchorElement>>;
2318
+ declare const DxcMessageInput: ({ allowRecording, callbackFile, defaultValue, disabled, error, files, isGenerating, maxLength, minLength, selectOptions, onBlur, onButtonClick, onChange, placeholder, size, tabIndex, value, }: Props$k) => react_jsx_runtime.JSX.Element;
2118
2319
 
2119
2320
  type TabProps$1 = {
2120
2321
  /**
@@ -2150,7 +2351,7 @@ type TabProps$1 = {
2150
2351
  */
2151
2352
  notificationNumber?: boolean | number;
2152
2353
  };
2153
- type Props$i = {
2354
+ type Props$j = {
2154
2355
  /**
2155
2356
  * Contains one or more DxcNavTabs.Tab.
2156
2357
  */
@@ -2166,11 +2367,11 @@ type Props$i = {
2166
2367
  };
2167
2368
 
2168
2369
  declare const DxcNavTabs: {
2169
- ({ iconPosition, tabIndex, children }: Props$i): JSX.Element;
2370
+ ({ iconPosition, tabIndex, children }: Props$j): JSX.Element;
2170
2371
  Tab: react.ForwardRefExoticComponent<TabProps$1 & react.RefAttributes<HTMLDivElement | HTMLAnchorElement>>;
2171
2372
  };
2172
2373
 
2173
- type Props$h = {
2374
+ type Props$i = {
2174
2375
  /**
2175
2376
  * Text to be placed above the number.
2176
2377
  */
@@ -2297,9 +2498,9 @@ type Props$h = {
2297
2498
  showControls?: boolean;
2298
2499
  };
2299
2500
 
2300
- declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$h & react.RefAttributes<HTMLDivElement>>;
2501
+ declare const DxcNumberInput: react.ForwardRefExoticComponent<Props$i & react.RefAttributes<HTMLDivElement>>;
2301
2502
 
2302
- type Props$g = {
2503
+ type Props$h = {
2303
2504
  /**
2304
2505
  * Number of the current selected page.
2305
2506
  */
@@ -2337,13 +2538,13 @@ type Props$g = {
2337
2538
  tabIndex?: number;
2338
2539
  };
2339
2540
 
2340
- declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$g) => JSX.Element;
2541
+ declare const DxcPaginator: ({ currentPage, itemsPerPage, itemsPerPageOptions, totalItems, showGoToPage, onPageChange, itemsPerPageFunction, tabIndex, }: Props$h) => JSX.Element;
2341
2542
 
2342
2543
  declare function DxcParagraph({ children }: {
2343
2544
  children: ReactNode;
2344
2545
  }): react_jsx_runtime.JSX.Element;
2345
2546
 
2346
- type Props$f = {
2547
+ type Props$g = {
2347
2548
  /**
2348
2549
  * Text to be placed above the password input.
2349
2550
  */
@@ -2447,7 +2648,35 @@ type Props$f = {
2447
2648
  ariaLabel?: string;
2448
2649
  };
2449
2650
 
2450
- declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$f & react.RefAttributes<HTMLDivElement>>;
2651
+ declare const DxcPasswordInput: react.ForwardRefExoticComponent<Props$g & react.RefAttributes<HTMLDivElement>>;
2652
+
2653
+ type PopoverPropsType = {
2654
+ /** Action that triggers the popover to open. */
2655
+ actionToOpen?: "click" | "hover";
2656
+ /** Alignment of the popover relative to the trigger element. */
2657
+ align?: "start" | "center" | "end";
2658
+ /** Set to true if child controls the events. It will render the child directly without wrapping it. */
2659
+ asChild?: boolean;
2660
+ /** Element that triggers the popover and works as the anchor. */
2661
+ children: React.ReactNode;
2662
+ /** Whether the popover should display a tip (arrow). */
2663
+ hasTip?: boolean;
2664
+ /** Controlled open state of the popover. If it is left undefined, it will be uncontrolled. */
2665
+ isOpen?: boolean;
2666
+ /** Distance in pixels from the trigger element to the popover. */
2667
+ offset?: number;
2668
+ /** Callback function when the popover is opened.
2669
+ * Used only in controlled mode and if the trigger lacks the events to manage the controlled behavior. */
2670
+ onOpen?: () => void;
2671
+ /** Callback function when the popover is closed. */
2672
+ onClose?: () => void;
2673
+ /** Content to be displayed inside the popover. */
2674
+ popoverContent: React.ReactNode;
2675
+ /** Side of the trigger where the popover will appear. */
2676
+ side?: "top" | "bottom" | "left" | "right";
2677
+ };
2678
+
2679
+ declare const DxcPopover: ({ actionToOpen, align, asChild, children, hasTip, isOpen, offset, onOpen, onClose, popoverContent, side, }: PopoverPropsType) => JSX.Element;
2451
2680
 
2452
2681
  type Size$1 = {
2453
2682
  top?: Space$1;
@@ -2455,7 +2684,7 @@ type Size$1 = {
2455
2684
  left?: Space$1;
2456
2685
  right?: Space$1;
2457
2686
  };
2458
- type Props$e = {
2687
+ type Props$f = {
2459
2688
  /**
2460
2689
  * Text to be placed above the progress bar.
2461
2690
  */
@@ -2489,7 +2718,7 @@ type Props$e = {
2489
2718
  ariaLabel?: string;
2490
2719
  };
2491
2720
 
2492
- declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$e) => JSX.Element;
2721
+ declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, ariaLabel, }: Props$f) => JSX.Element;
2493
2722
 
2494
2723
  type Link = {
2495
2724
  /**
@@ -2501,7 +2730,7 @@ type Link = {
2501
2730
  */
2502
2731
  links?: Link[];
2503
2732
  };
2504
- type Props$d = {
2733
+ type Props$e = {
2505
2734
  /**
2506
2735
  * Title of the quick nav component.
2507
2736
  */
@@ -2512,7 +2741,7 @@ type Props$d = {
2512
2741
  links: Link[];
2513
2742
  };
2514
2743
 
2515
- declare function DxcQuickNav({ links, title }: Props$d): react_jsx_runtime.JSX.Element;
2744
+ declare function DxcQuickNav({ links, title }: Props$e): react_jsx_runtime.JSX.Element;
2516
2745
 
2517
2746
  type Option$1 = {
2518
2747
  /**
@@ -2713,10 +2942,10 @@ type NonPaginatedProps = CommonProps$3 & {
2713
2942
  */
2714
2943
  showGoToPage?: never;
2715
2944
  };
2716
- type Props$c = PaginatedProps | NonPaginatedProps;
2945
+ type Props$d = PaginatedProps | NonPaginatedProps;
2717
2946
 
2718
2947
  declare const DxcResultsetTable: {
2719
- ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, virtualizedHeight, }: Props$c): react_jsx_runtime.JSX.Element;
2948
+ ({ columns, hidePaginator, itemsPerPage, itemsPerPageFunction, itemsPerPageOptions, margin, mode, rows, showGoToPage, tabIndex, virtualizedHeight, }: Props$d): react_jsx_runtime.JSX.Element;
2720
2949
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
2721
2950
  };
2722
2951
 
@@ -2808,6 +3037,12 @@ type CommonProps$2 = {
2808
3037
  * If true, enables search functionality.
2809
3038
  */
2810
3039
  searchable?: boolean;
3040
+ /**
3041
+ * Defines the search mode when searchable is true.
3042
+ * If true, matches options that start with the search text.
3043
+ * If false, matches options that contain the search text anywhere in their label.
3044
+ */
3045
+ searchByStartsWith?: boolean;
2811
3046
  /**
2812
3047
  * Size of the component.
2813
3048
  */
@@ -2902,11 +3137,11 @@ type MultipleSelect = CommonProps$2 & {
2902
3137
  */
2903
3138
  value?: string[];
2904
3139
  };
2905
- type Props$b = SingleSelect | MultipleSelect;
3140
+ type Props$c = SingleSelect | MultipleSelect;
2906
3141
 
2907
- declare const DxcSelect: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
3142
+ declare const DxcSelect: react.ForwardRefExoticComponent<Props$c & react.RefAttributes<HTMLDivElement>>;
2908
3143
 
2909
- type Props$a = {
3144
+ type Props$b = {
2910
3145
  /**
2911
3146
  * Specifies a string to be used as the name for the slider element when no `label` is provided.
2912
3147
  */
@@ -2985,9 +3220,9 @@ type Props$a = {
2985
3220
  value?: number;
2986
3221
  };
2987
3222
 
2988
- declare const DxcSlider: react.ForwardRefExoticComponent<Props$a & react.RefAttributes<HTMLDivElement>>;
3223
+ declare const DxcSlider: react.ForwardRefExoticComponent<Props$b & react.RefAttributes<HTMLDivElement>>;
2989
3224
 
2990
- type Props$9 = {
3225
+ type Props$a = {
2991
3226
  /**
2992
3227
  * 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.
2993
3228
  */
@@ -3021,11 +3256,11 @@ type Props$9 = {
3021
3256
  value?: number;
3022
3257
  };
3023
3258
 
3024
- declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$9) => react_jsx_runtime.JSX.Element;
3259
+ declare const DxcSpinner: ({ ariaLabel, inheritColor, label, margin, mode, showValue, value, }: Props$a) => react_jsx_runtime.JSX.Element;
3025
3260
 
3026
3261
  type Mode = "default" | "info" | "success" | "warning" | "error";
3027
3262
  type Size = "small" | "medium" | "large";
3028
- type Props$8 = {
3263
+ type Props$9 = {
3029
3264
  /**
3030
3265
  * It will define the color of the light based on its semantic meaning.
3031
3266
  */
@@ -3040,9 +3275,9 @@ type Props$8 = {
3040
3275
  size?: Size;
3041
3276
  };
3042
3277
 
3043
- declare function DxcStatusLight({ label, mode, size }: Props$8): react_jsx_runtime.JSX.Element;
3278
+ declare function DxcStatusLight({ label, mode, size }: Props$9): react_jsx_runtime.JSX.Element;
3044
3279
 
3045
- type Props$7 = {
3280
+ type Props$8 = {
3046
3281
  /**
3047
3282
  * Specifies a string to be used as the name for the switch element when no `label` is provided.
3048
3283
  */
@@ -3101,10 +3336,10 @@ type Props$7 = {
3101
3336
  value?: string;
3102
3337
  };
3103
3338
 
3104
- declare const DxcSwitch: react.ForwardRefExoticComponent<Props$7 & react.RefAttributes<HTMLDivElement>>;
3339
+ declare const DxcSwitch: react.ForwardRefExoticComponent<Props$8 & react.RefAttributes<HTMLDivElement>>;
3105
3340
 
3106
3341
  declare const DxcTable: {
3107
- ({ children, margin, mode }: Props$t): react_jsx_runtime.JSX.Element;
3342
+ ({ children, margin, mode }: Props$u): react_jsx_runtime.JSX.Element;
3108
3343
  ActionsCell: ({ actions }: ActionsCellPropsType) => react_jsx_runtime.JSX.Element;
3109
3344
  };
3110
3345
 
@@ -3146,14 +3381,14 @@ type TabsProps = {
3146
3381
  */
3147
3382
  children?: ReactNode;
3148
3383
  };
3149
- type Props$6 = TabsProps;
3384
+ type Props$7 = TabsProps;
3150
3385
 
3151
3386
  declare const DxcTabs: {
3152
- ({ children, iconPosition, margin, tabIndex }: Props$6): react_jsx_runtime.JSX.Element;
3387
+ ({ children, iconPosition, margin, tabIndex }: Props$7): react_jsx_runtime.JSX.Element;
3153
3388
  Tab: react.ForwardRefExoticComponent<TabProps & react.RefAttributes<HTMLButtonElement>>;
3154
3389
  };
3155
3390
 
3156
- type Props$5 = {
3391
+ type Props$6 = {
3157
3392
  /**
3158
3393
  * Specifies a string to be used as the name for the textarea element when no `label` is provided.
3159
3394
  */
@@ -3287,7 +3522,7 @@ type Props$5 = {
3287
3522
  verticalGrow?: "auto" | "manual" | "none";
3288
3523
  };
3289
3524
 
3290
- declare const DxcTextarea: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3525
+ declare const DxcTextarea: react.ForwardRefExoticComponent<Props$6 & react.RefAttributes<HTMLDivElement>>;
3291
3526
 
3292
3527
  type Action$1 = {
3293
3528
  /**
@@ -3305,7 +3540,7 @@ type Action$1 = {
3305
3540
  */
3306
3541
  title?: string;
3307
3542
  };
3308
- type Props$4 = {
3543
+ type Props$5 = {
3309
3544
  /**
3310
3545
  * Sets the alignment inside the input.
3311
3546
  */
@@ -3458,7 +3693,96 @@ type Props$4 = {
3458
3693
  ariaLabel?: string;
3459
3694
  };
3460
3695
 
3461
- declare const DxcTextInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3696
+ declare const DxcTextInput: react.ForwardRefExoticComponent<Props$5 & react.RefAttributes<HTMLDivElement>>;
3697
+
3698
+ type Props$4 = {
3699
+ /**
3700
+ * Specifies a string to be used as the name for the timeInput element when no `label` is provided.
3701
+ */
3702
+ ariaLabel?: string;
3703
+ /**
3704
+ * If true, the input will have an action to clear the entered value.
3705
+ */
3706
+ clearable?: boolean;
3707
+ /**
3708
+ * Initial value of the input, only when it is uncontrolled.
3709
+ */
3710
+ defaultValue?: string;
3711
+ /**
3712
+ * If true, the component will be disabled.
3713
+ */
3714
+ disabled?: boolean;
3715
+ /**
3716
+ * If it is a defined value and also a truthy string, the component will
3717
+ * change its appearance, showing the error below the input component. If
3718
+ * the defined value is an empty string, it will reserve a space below
3719
+ * the component for a future error, but it would not change its look. In
3720
+ * case of being undefined or null, both the appearance and the space for
3721
+ * the error message would not be modified.
3722
+ */
3723
+ error?: string;
3724
+ /**
3725
+ * Helper text to be placed above the input.
3726
+ */
3727
+ helperText?: string;
3728
+ /**
3729
+ * Text to be placed above the input.
3730
+ */
3731
+ label?: string;
3732
+ /**
3733
+ * Name attribute of the input element.
3734
+ */
3735
+ name?: string;
3736
+ /**
3737
+ * This function will be called when the input element loses the focus.
3738
+ * An object including the input value and the error (if the value
3739
+ * entered is not valid) will be passed to this function. If there is no error,
3740
+ * error will not be defined.
3741
+ */
3742
+ onBlur?: (val: {
3743
+ value: string;
3744
+ error?: string;
3745
+ }) => void;
3746
+ /**
3747
+ * This function will be called when the user types within the input
3748
+ * or selects a value in the dropdown element of the component.
3749
+ */
3750
+ onChange?: (value: string) => void;
3751
+ /**
3752
+ * If true, the input will be optional, showing '(Optional)'
3753
+ * next to the label. Otherwise, the field will be considered required and an error will be
3754
+ * passed as a parameter to the OnBlur function when it has
3755
+ * not been filled.
3756
+ */
3757
+ optional?: boolean;
3758
+ /**
3759
+ * If true, the component will not be mutable, meaning the user can not edit the control.
3760
+ * In addition, the clear action will not be displayed even if the flag is set to true.
3761
+ */
3762
+ readOnly?: boolean;
3763
+ /**
3764
+ * 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.
3765
+ */
3766
+ showSeconds?: boolean;
3767
+ /**
3768
+ * Size of the component.
3769
+ */
3770
+ size?: "small" | "medium" | "large" | "fillParent";
3771
+ /**
3772
+ * Value of the tabindex attribute.
3773
+ */
3774
+ tabIndex?: number;
3775
+ /**
3776
+ * Time format of the input. It can be either 12 or 24.
3777
+ */
3778
+ timeFormat?: "12" | "24";
3779
+ /**
3780
+ * Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
3781
+ */
3782
+ value?: string;
3783
+ };
3784
+
3785
+ declare const DxcTimeInput: react.ForwardRefExoticComponent<Props$4 & react.RefAttributes<HTMLDivElement>>;
3462
3786
 
3463
3787
  type Action = {
3464
3788
  /**
@@ -3727,8 +4051,12 @@ declare const defaultTranslatedComponentLabels: {
3727
4051
  previousMonthTitle: string;
3728
4052
  nextMonthTitle: string;
3729
4053
  };
4054
+ card: {
4055
+ noContent: string;
4056
+ };
3730
4057
  dateInput: {
3731
4058
  invalidDateErrorMessage: string;
4059
+ datePickerActionTitle: string;
3732
4060
  };
3733
4061
  dialog: {
3734
4062
  closeIconAriaLabel: string;
@@ -3751,13 +4079,21 @@ declare const defaultTranslatedComponentLabels: {
3751
4079
  requiredSelectionErrorMessage: string;
3752
4080
  requiredValueErrorMessage: string;
3753
4081
  formatRequestedErrorMessage: string;
3754
- lengthErrorMessage: (minLength?: number, maxLength?: number) => string;
3755
- logoAlternativeText: string;
4082
+ minLengthErrorMessage: (minLength: number) => string;
4083
+ maxLengthErrorMessage: (maxLength: number) => string;
3756
4084
  };
3757
4085
  header: {
3758
4086
  closeIcon: string;
3759
4087
  hamburgerTitle: string;
3760
4088
  };
4089
+ messageInput: {
4090
+ inputAriaLabel: string;
4091
+ sendButtonTitle: string;
4092
+ stopButtonTitle: string;
4093
+ attachFileButtonTitle: string;
4094
+ recordAudioButtonTitle: string;
4095
+ stopRecordingButtonTitle: string;
4096
+ };
3761
4097
  numberInput: {
3762
4098
  valueGreaterThanOrEqualToErrorMessage: (value: number) => string;
3763
4099
  valueLessThanOrEqualToErrorMessage: (value: number) => string;
@@ -3784,6 +4120,12 @@ declare const defaultTranslatedComponentLabels: {
3784
4120
  radioGroup: {
3785
4121
  optionalItemLabelDefault: string;
3786
4122
  };
4123
+ searchBar: {
4124
+ clearFieldActionTitle: string;
4125
+ inputAriaLabel: string;
4126
+ triggerTitle: string;
4127
+ cancelButtonLabel: string;
4128
+ };
3787
4129
  select: {
3788
4130
  actionClearSelectionTitle: string;
3789
4131
  actionClearSearchTitle: string;
@@ -3799,11 +4141,20 @@ declare const defaultTranslatedComponentLabels: {
3799
4141
  searchingMessage: string;
3800
4142
  fetchingDataErrorMessage: string;
3801
4143
  };
4144
+ timeInput: {
4145
+ timePickerActionTitle: string;
4146
+ timePeriodAM: string;
4147
+ timePeriodPM: string;
4148
+ };
3802
4149
  toast: {
3803
4150
  clearToastActionTitle: string;
3804
4151
  };
3805
4152
  };
3806
4153
  type TranslatedLabels = typeof defaultTranslatedComponentLabels;
4154
+ type LocalizedContext = {
4155
+ labels: TranslatedLabels;
4156
+ locale?: string;
4157
+ };
3807
4158
 
3808
4159
  /**
3809
4160
  * This type is used to allow labels objects to be passed to the HalstackProvider.
@@ -3812,105 +4163,18 @@ type TranslatedLabels = typeof defaultTranslatedComponentLabels;
3812
4163
  type DeepPartial<T> = {
3813
4164
  [P in keyof T]?: Partial<T[P]>;
3814
4165
  };
3815
- declare const HalstackLanguageContext: react.Context<{
3816
- applicationLayout: {
3817
- visibilityToggleTitle: string;
3818
- };
3819
- alert: {
3820
- previousMessageActionTitle: string;
3821
- nextMessageActionTitle: string;
3822
- closeAlertActionTitle: string;
3823
- closeMessageActionTitle: string;
3824
- };
3825
- calendar: {
3826
- daysShort: string[];
3827
- months: string[];
3828
- previousMonthTitle: string;
3829
- nextMonthTitle: string;
3830
- };
3831
- dateInput: {
3832
- invalidDateErrorMessage: string;
3833
- };
3834
- dialog: {
3835
- closeIconAriaLabel: string;
3836
- };
3837
- fileInput: {
3838
- fileSizeGreaterThanErrorMessage: string;
3839
- fileSizeLessThanErrorMessage: string;
3840
- multipleButtonLabelDefault: string;
3841
- singleButtonLabelDefault: string;
3842
- dropAreaButtonLabelDefault: string;
3843
- multipleDropAreaLabelDefault: string;
3844
- singleDropAreaLabelDefault: string;
3845
- deleteFileActionTitle: string;
3846
- };
3847
- footer: {
3848
- copyrightText: (year: number) => string;
3849
- };
3850
- formFields: {
3851
- optionalLabel: string;
3852
- requiredSelectionErrorMessage: string;
3853
- requiredValueErrorMessage: string;
3854
- formatRequestedErrorMessage: string;
3855
- lengthErrorMessage: (minLength?: number, maxLength?: number) => string;
3856
- logoAlternativeText: string;
3857
- };
3858
- header: {
3859
- closeIcon: string;
3860
- hamburgerTitle: string;
3861
- };
3862
- numberInput: {
3863
- valueGreaterThanOrEqualToErrorMessage: (value: number) => string;
3864
- valueLessThanOrEqualToErrorMessage: (value: number) => string;
3865
- decrementValueTitle: string;
3866
- incrementValueTitle: string;
3867
- };
3868
- paginator: {
3869
- itemsPerPageText: string;
3870
- minToMaxOfText: (minNumberOfItems: number, maxNumberOfItems: number, totalItems: number) => string;
3871
- goToPageText: string;
3872
- pageOfText: (pageNumber: number, totalPagesNumber: number) => string;
3873
- firstResultsTitle: string;
3874
- previousResultsTitle: string;
3875
- nextResultsTitle: string;
3876
- lastResultsTitle: string;
3877
- };
3878
- passwordInput: {
3879
- inputShowPasswordTitle: string;
3880
- inputHidePasswordTitle: string;
3881
- };
3882
- quickNav: {
3883
- contentTitle: string;
3884
- };
3885
- radioGroup: {
3886
- optionalItemLabelDefault: string;
3887
- };
3888
- select: {
3889
- actionClearSelectionTitle: string;
3890
- actionClearSearchTitle: string;
3891
- noMatchesErrorMessage: string;
3892
- selectAllLabel: string;
3893
- };
3894
- tabs: {
3895
- scrollLeft: string;
3896
- scrollRight: string;
3897
- };
3898
- textInput: {
3899
- clearFieldActionTitle: string;
3900
- searchingMessage: string;
3901
- fetchingDataErrorMessage: string;
3902
- };
3903
- toast: {
3904
- clearToastActionTitle: string;
3905
- };
3906
- }>;
3907
- type ThemeType = Record<string, string | number>;
4166
+ declare const HalstackLanguageContext: react.Context<LocalizedContext>;
4167
+ type ThemeType = {
4168
+ tokens?: Record<string, string | number>;
4169
+ logos?: Record<string, string | undefined>;
4170
+ };
3908
4171
  type HalstackProviderPropsType = {
3909
4172
  labels?: DeepPartial<TranslatedLabels>;
3910
4173
  children: ReactNode;
3911
4174
  opinionatedTheme?: ThemeType;
4175
+ localeTag?: string;
3912
4176
  };
3913
- declare const HalstackProvider: ({ labels, children, opinionatedTheme }: HalstackProviderPropsType) => JSX.Element;
4177
+ declare const HalstackProvider: ({ labels, children, opinionatedTheme, localeTag, }: HalstackProviderPropsType) => JSX.Element;
3914
4178
 
3915
4179
  declare function useToast(): {
3916
4180
  default: (toast: DefaultToast) => (() => void) | undefined;
@@ -3920,4 +4184,4 @@ declare function useToast(): {
3920
4184
  loading: (toast: Omit<LoadingToast, "loading">) => (() => void) | undefined;
3921
4185
  };
3922
4186
 
3923
- 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, DxcProgressBar, DxcQuickNav, DxcRadioGroup, DxcResultsetTable, DxcSelect, DxcSlider, DxcSpinner, DxcStatusLight, DxcSwitch, DxcTable, DxcTabs, DxcTextInput, DxcTextarea, DxcToastsQueue, DxcToggleGroup, DxcTooltip, DxcTypography, DxcWizard, HalstackLanguageContext, HalstackProvider, useToast };
4187
+ 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, DxcMessageInput, 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 };