@dxc-technology/halstack-react 15.2.2 → 15.3.2

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.mjs CHANGED
@@ -1959,6 +1959,7 @@ var Flex = styled2.div`
1959
1959
  ${typeof props.alignSelf === "string" ? `align-self: ${props.alignSelf};` : ""}
1960
1960
  ${typeof props.$basis === "string" ? `flex-basis: ${props.$basis};` : ""}
1961
1961
  ${typeof props.$direction === "string" ? `flex-direction: ${props.$direction};` : ""}
1962
+ ${props.$fullHeight ? "height: 100%;" : ""}
1962
1963
  ${typeof props.$gap === "string" ? `gap: ${props.$gap};` : ""}
1963
1964
  ${typeof props.$gap === "object" ? `column-gap: ${props.$gap.columnGap}; row-gap: ${props.$gap.rowGap};` : ""}
1964
1965
  ${typeof props.$grow === "number" ? `flex-grow: ${props.$grow};` : ""}
@@ -1968,16 +1969,7 @@ var Flex = styled2.div`
1968
1969
  ${typeof props.$wrap === "string" ? `flex-wrap: ${props.$wrap};` : ""}
1969
1970
  `}
1970
1971
  `;
1971
- var DxcFlex = ({
1972
- basis,
1973
- direction,
1974
- gap,
1975
- grow,
1976
- order,
1977
- shrink,
1978
- wrap,
1979
- ...props
1980
- }) => /* @__PURE__ */ jsx3(
1972
+ var DxcFlex = ({ basis, direction, fullHeight = false, gap, grow, order, shrink, wrap, ...props }) => /* @__PURE__ */ jsx3(
1981
1973
  Flex,
1982
1974
  {
1983
1975
  $basis: basis,
@@ -1987,6 +1979,7 @@ var DxcFlex = ({
1987
1979
  $order: order,
1988
1980
  $shrink: shrink,
1989
1981
  $wrap: wrap,
1982
+ $fullHeight: fullHeight,
1990
1983
  ...props
1991
1984
  }
1992
1985
  );
@@ -1994,6 +1987,7 @@ var Flex_default = DxcFlex;
1994
1987
 
1995
1988
  // src/container/Container.tsx
1996
1989
  import styled3 from "styled-components";
1990
+ import { forwardRef } from "react";
1997
1991
  import { jsx as jsx4 } from "react/jsx-runtime";
1998
1992
  var getBorderStyles = (direction, borderProperties) => `border-${direction}: ${borderProperties.width ?? ""} ${borderProperties.style ?? ""} ${borderProperties.color ? getCoreColorToken(borderProperties.color) : ""};`;
1999
1993
  var Container = styled3.div`
@@ -2057,9 +2051,12 @@ var Container = styled3.div`
2057
2051
  padding-bottom: ${({ padding }) => typeof padding === "object" && padding.bottom ? spaces[padding.bottom] : ""};
2058
2052
  padding-left: ${({ padding }) => typeof padding === "object" && padding.left ? spaces[padding.left] : ""};
2059
2053
  `;
2060
- function DxcContainer({ display, width, height, overflow, ...props }) {
2061
- return /* @__PURE__ */ jsx4(Container, { $display: display, $width: width, $height: height, $overflow: overflow, ...props });
2062
- }
2054
+ var DxcContainer = forwardRef(
2055
+ ({ display, width, height, overflow, ...props }, ref) => {
2056
+ return /* @__PURE__ */ jsx4(Container, { ref, $display: display, $width: width, $height: height, $overflow: overflow, ...props });
2057
+ }
2058
+ );
2059
+ var Container_default = DxcContainer;
2063
2060
 
2064
2061
  // src/accordion/AccordionItem.tsx
2065
2062
  import React from "react";
@@ -2094,7 +2091,7 @@ var AccordionItem = ({
2094
2091
  tabIndex: disabled ? -1 : tabIndex,
2095
2092
  "aria-expanded": isItemExpanded,
2096
2093
  "aria-controls": `accordion-panel-${id}`,
2097
- children: /* @__PURE__ */ jsx5(DxcContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxs(Flex_default, { gap: "1.5rem", children: [
2094
+ children: /* @__PURE__ */ jsx5(Container_default, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxs(Flex_default, { gap: "1.5rem", children: [
2098
2095
  /* @__PURE__ */ jsx5(LeftSideContainer, { children: /* @__PURE__ */ jsxs(Flex_default, { gap: "0.75rem", children: [
2099
2096
  (icon || badge?.position === "before") && /* @__PURE__ */ jsx5(OptionalElement, { children: icon ? /* @__PURE__ */ jsx5(IconContainer2, { disabled, children: typeof icon === "string" ? /* @__PURE__ */ jsx5(Icon_default, { icon }) : icon }) : /* @__PURE__ */ jsx5(StatusContainer, { subLabel, children: disabled ? cloneElement(badge?.element, { color: "grey" }) : badge?.element }) }),
2100
2097
  /* @__PURE__ */ jsxs(LabelsContainer, { children: [
@@ -2928,7 +2925,7 @@ var StyledDivider = styled8.hr`
2928
2925
  var Divider_default = DxcDivider;
2929
2926
 
2930
2927
  // src/action-icon/ActionIcon.tsx
2931
- import { forwardRef } from "react";
2928
+ import { forwardRef as forwardRef2 } from "react";
2932
2929
  import styled9 from "styled-components";
2933
2930
  import { jsx as jsx10 } from "react/jsx-runtime";
2934
2931
  var ActionIcon = styled9.button`
@@ -2968,7 +2965,7 @@ var ActionIcon = styled9.button`
2968
2965
  height: 16px;
2969
2966
  }
2970
2967
  `;
2971
- var ActionIcon_default = forwardRef(
2968
+ var ActionIcon_default = forwardRef2(
2972
2969
  ({ disabled = false, title, icon, onClick, tabIndex }, ref) => /* @__PURE__ */ jsx10(Tooltip, { label: title, children: /* @__PURE__ */ jsx10(
2973
2970
  ActionIcon,
2974
2971
  {
@@ -3736,7 +3733,7 @@ var useWidth = (target) => {
3736
3733
  var useWidth_default = useWidth;
3737
3734
 
3738
3735
  // src/dropdown/DropdownMenu.tsx
3739
- import { forwardRef as forwardRef2, memo as memo3 } from "react";
3736
+ import { forwardRef as forwardRef3, memo as memo3 } from "react";
3740
3737
  import styled14 from "styled-components";
3741
3738
 
3742
3739
  // src/dropdown/DropdownMenuItem.tsx
@@ -3809,7 +3806,7 @@ var DropdownMenuItem_default = memo2(DropdownMenuItem);
3809
3806
 
3810
3807
  // src/dropdown/DropdownMenu.tsx
3811
3808
  import { jsx as jsx17 } from "react/jsx-runtime";
3812
- var DropdownMenu = forwardRef2(
3809
+ var DropdownMenu = forwardRef3(
3813
3810
  ({ id, dropdownTriggerId, iconsPosition, visualFocusIndex, menuItemOnClick, onKeyDown, options, styles }, ref) => /* @__PURE__ */ jsx17(
3814
3811
  DropdownMenuContainer,
3815
3812
  {
@@ -4429,7 +4426,7 @@ var Overlay2 = styled16.div`
4429
4426
  var Header_default = DxcHeader;
4430
4427
 
4431
4428
  // src/sidenav/Sidenav.tsx
4432
- import { forwardRef as forwardRef3, useContext as useContext10, useEffect as useEffect5, useState as useState8 } from "react";
4429
+ import { forwardRef as forwardRef4, useContext as useContext10, useEffect as useEffect5, useState as useState8 } from "react";
4433
4430
  import styled18, { ThemeProvider as ThemeProvider8 } from "styled-components";
4434
4431
 
4435
4432
  // src/bleed/Bleed.tsx
@@ -4508,7 +4505,7 @@ var Group = ({ title, collapsable = false, icon, children }) => {
4508
4505
  !collapsed && children
4509
4506
  ] }) });
4510
4507
  };
4511
- var Link = forwardRef3(
4508
+ var Link = forwardRef4(
4512
4509
  ({ href, newWindow = false, selected = false, icon, onClick, tabIndex = 0, children, ...otherProps }, ref) => {
4513
4510
  const changeIsGroupSelected = useContext10(GroupContext);
4514
4511
  const setIsSidenavVisibleResponsive = useResponsiveSidenavVisibility();
@@ -5474,11 +5471,11 @@ var CardContent = styled25.div`
5474
5471
  var Card_default = DxcCard;
5475
5472
 
5476
5473
  // src/checkbox/Checkbox.tsx
5477
- import { useContext as useContext15, useState as useState12, useRef as useRef6, useId as useId5, forwardRef as forwardRef4 } from "react";
5474
+ import { useContext as useContext15, useState as useState12, useRef as useRef6, useId as useId5, forwardRef as forwardRef5 } from "react";
5478
5475
  import styled26, { ThemeProvider as ThemeProvider11 } from "styled-components";
5479
5476
  import { jsx as jsx30, jsxs as jsxs19 } from "react/jsx-runtime";
5480
5477
  var checkedIcon = /* @__PURE__ */ jsx30("svg", { fill: "currentColor", focusable: "false", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx30("path", { d: "M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z" }) });
5481
- var DxcCheckbox = forwardRef4(
5478
+ var DxcCheckbox = forwardRef5(
5482
5479
  ({
5483
5480
  checked,
5484
5481
  defaultChecked = false,
@@ -6620,7 +6617,7 @@ import styled36, { ThemeProvider as ThemeProvider16 } from "styled-components";
6620
6617
  // src/select/Select.tsx
6621
6618
  import * as Popover2 from "@radix-ui/react-popover";
6622
6619
  import {
6623
- forwardRef as forwardRef5,
6620
+ forwardRef as forwardRef6,
6624
6621
  useCallback as useCallback6,
6625
6622
  useContext as useContext22,
6626
6623
  useId as useId9,
@@ -6746,22 +6743,21 @@ var isOptionGroup = (option) => "options" in option && option.options != null;
6746
6743
  var isArrayOfOptionGroups = (options) => options[0] != null && isOptionGroup(options[0]);
6747
6744
  var groupsHaveOptions = (options) => isArrayOfOptionGroups(options) ? options.some((groupOption) => groupOption.options.length > 0) : true;
6748
6745
  var canOpenListbox = (options, disabled) => !disabled && options.length > 0 && groupsHaveOptions(options);
6749
- var filterOptionsBySearchValue = (options, searchValue) => {
6750
- if (options.length > 0) {
6751
- if (isArrayOfOptionGroups(options))
6752
- return options.map((optionGroup) => {
6753
- const group = {
6754
- label: optionGroup.label,
6755
- options: optionGroup.options.filter(
6756
- (option) => option.label.toUpperCase().includes(searchValue.toUpperCase())
6757
- )
6758
- };
6759
- return group;
6760
- });
6761
- else return options.filter((option) => option.label.toUpperCase().includes(searchValue.toUpperCase()));
6762
- } else {
6763
- return [];
6764
- }
6746
+ var filterOptionsBySearchValue = (options, searchValue, searchByStartsWith = false) => {
6747
+ const matchesSearch = (label, search, searchByStartsWith2) => {
6748
+ const upperLabel = label.toUpperCase();
6749
+ const upperSearch = search.toUpperCase();
6750
+ return searchByStartsWith2 ? upperLabel.startsWith(upperSearch) : upperLabel.includes(upperSearch);
6751
+ };
6752
+ return options.length > 0 ? isArrayOfOptionGroups(options) ? options.map((optionGroup) => {
6753
+ const group = {
6754
+ label: optionGroup.label,
6755
+ options: optionGroup.options.filter(
6756
+ (option) => matchesSearch(option.label, searchValue, searchByStartsWith)
6757
+ )
6758
+ };
6759
+ return group;
6760
+ }) : options.filter((option) => matchesSearch(option.label, searchValue, searchByStartsWith)) : [];
6765
6761
  };
6766
6762
  var getLastOptionIndex = (options, filteredOptions, searchable, optional, multiple) => {
6767
6763
  let last = 0;
@@ -6986,7 +6982,7 @@ var Listbox_default = Listbox;
6986
6982
 
6987
6983
  // src/select/Select.tsx
6988
6984
  import { jsx as jsx42, jsxs as jsxs28 } from "react/jsx-runtime";
6989
- var DxcSelect = forwardRef5(
6985
+ var DxcSelect = forwardRef6(
6990
6986
  ({
6991
6987
  label,
6992
6988
  name = "",
@@ -6999,6 +6995,7 @@ var DxcSelect = forwardRef5(
6999
6995
  multiple = false,
7000
6996
  optional = false,
7001
6997
  searchable = false,
6998
+ searchByStartsWith = false,
7002
6999
  onChange,
7003
7000
  onBlur,
7004
7001
  error,
@@ -7022,7 +7019,7 @@ var DxcSelect = forwardRef5(
7022
7019
  const colorsTheme = useContext22(HalstackContext);
7023
7020
  const translatedLabels = useContext22(HalstackLanguageContext);
7024
7021
  const optionalItem = { label: placeholder, value: "" };
7025
- const filteredOptions = useMemo10(() => filterOptionsBySearchValue(options, searchValue), [options, searchValue]);
7022
+ const filteredOptions = useMemo10(() => filterOptionsBySearchValue(options, searchValue, searchByStartsWith), [options, searchValue, searchByStartsWith]);
7026
7023
  const lastOptionIndex = useMemo10(
7027
7024
  () => getLastOptionIndex(options, filteredOptions, searchable, optional, multiple),
7028
7025
  [options, filteredOptions, searchable, optional, multiple]
@@ -8287,7 +8284,7 @@ import {
8287
8284
  useId as useId13,
8288
8285
  useCallback as useCallback7,
8289
8286
  useContext as useContext30,
8290
- forwardRef as forwardRef7
8287
+ forwardRef as forwardRef8
8291
8288
  } from "react";
8292
8289
  import dayjs3 from "dayjs";
8293
8290
  import styled45, { ThemeProvider as ThemeProvider20 } from "styled-components";
@@ -8778,7 +8775,7 @@ var DatePicker_default = memo7(DatePicker);
8778
8775
  // src/text-input/TextInput.tsx
8779
8776
  import * as Popover3 from "@radix-ui/react-popover";
8780
8777
  import {
8781
- forwardRef as forwardRef6,
8778
+ forwardRef as forwardRef7,
8782
8779
  useContext as useContext29,
8783
8780
  useEffect as useEffect13,
8784
8781
  useId as useId12,
@@ -9123,7 +9120,7 @@ var ErrorMessageContainer = styled44.span`
9123
9120
  margin-top: 0.25rem;
9124
9121
  `;
9125
9122
  var AutosuggestWrapper = ({ condition, wrapper, children }) => /* @__PURE__ */ jsx51(Fragment12, { children: condition ? wrapper(children) : children });
9126
- var DxcTextInput = forwardRef6(
9123
+ var DxcTextInput = forwardRef7(
9127
9124
  ({
9128
9125
  alignment = "left",
9129
9126
  label,
@@ -9523,7 +9520,7 @@ var DxcTextInput = forwardRef6(
9523
9520
  onClick: handleClearActionOnClick,
9524
9521
  icon: "close",
9525
9522
  tabIndex,
9526
- title: !disabled ? translatedLabels.textInput.clearFieldActionTitle : void 0
9523
+ title: translatedLabels.textInput.clearFieldActionTitle
9527
9524
  }
9528
9525
  ),
9529
9526
  numberInputContext?.typeNumber === "number" && numberInputContext?.showControls && /* @__PURE__ */ jsxs36(Fragment12, { children: [
@@ -9534,7 +9531,7 @@ var DxcTextInput = forwardRef6(
9534
9531
  icon: "remove",
9535
9532
  tabIndex,
9536
9533
  ref: actionRef,
9537
- title: !disabled ? translatedLabels.numberInput.decrementValueTitle : void 0,
9534
+ title: translatedLabels.numberInput.decrementValueTitle,
9538
9535
  disabled
9539
9536
  }
9540
9537
  ),
@@ -9545,7 +9542,7 @@ var DxcTextInput = forwardRef6(
9545
9542
  icon: "add",
9546
9543
  tabIndex,
9547
9544
  ref: actionRef,
9548
- title: !disabled ? translatedLabels.numberInput.incrementValueTitle : void 0,
9545
+ title: translatedLabels.numberInput.incrementValueTitle,
9549
9546
  disabled
9550
9547
  }
9551
9548
  )
@@ -9557,7 +9554,7 @@ var DxcTextInput = forwardRef6(
9557
9554
  icon: action.icon,
9558
9555
  tabIndex,
9559
9556
  ref: actionRef,
9560
- title: !disabled ? action.title ?? void 0 : void 0,
9557
+ title: action.title ?? void 0,
9561
9558
  disabled
9562
9559
  }
9563
9560
  )
@@ -9599,7 +9596,7 @@ var getDate = (value, format, lastValidYear, setLastValidYear) => {
9599
9596
  }
9600
9597
  return newDate;
9601
9598
  };
9602
- var DxcDateInput = forwardRef7(
9599
+ var DxcDateInput = forwardRef8(
9603
9600
  ({
9604
9601
  label,
9605
9602
  name,
@@ -9966,7 +9963,7 @@ var DxcDialog = ({
9966
9963
  var Dialog_default = DxcDialog;
9967
9964
 
9968
9965
  // src/file-input/FileInput.tsx
9969
- import { useCallback as useCallback8, useContext as useContext33, useEffect as useEffect16, useId as useId16, useState as useState26, forwardRef as forwardRef8 } from "react";
9966
+ import { useCallback as useCallback8, useContext as useContext33, useEffect as useEffect16, useId as useId16, useState as useState26, forwardRef as forwardRef9 } from "react";
9970
9967
  import styled48, { ThemeProvider as ThemeProvider22 } from "styled-components";
9971
9968
 
9972
9969
  // src/file-input/FileItem.tsx
@@ -10187,7 +10184,7 @@ var ErrorMessage2 = styled48.div`
10187
10184
  line-height: ${(props) => props.theme.errorMessageLineHeight};
10188
10185
  margin-top: 0.25rem;
10189
10186
  `;
10190
- var DxcFileInput = forwardRef8(
10187
+ var DxcFileInput = forwardRef9(
10191
10188
  ({
10192
10189
  mode = "file",
10193
10190
  label = "",
@@ -10586,7 +10583,7 @@ var Inset = ({ space, horizontal, vertical, top, right, bottom, left, children }
10586
10583
  var Inset_default = Inset;
10587
10584
 
10588
10585
  // src/link/Link.tsx
10589
- import { forwardRef as forwardRef9, useContext as useContext36 } from "react";
10586
+ import { forwardRef as forwardRef10, useContext as useContext36 } from "react";
10590
10587
  import styled53, { ThemeProvider as ThemeProvider25 } from "styled-components";
10591
10588
  import { jsx as jsx60, jsxs as jsxs42 } from "react/jsx-runtime";
10592
10589
  var StyledLink = styled53.a`
@@ -10651,7 +10648,7 @@ var LinkIconContainer = styled53.div`
10651
10648
  height: ${(props) => props.theme.iconSize};
10652
10649
  }
10653
10650
  `;
10654
- var DxcLink = forwardRef9(
10651
+ var DxcLink = forwardRef10(
10655
10652
  ({
10656
10653
  inheritColor = false,
10657
10654
  disabled = false,
@@ -10694,7 +10691,7 @@ import { Children as Children4, useContext as useContext38, useEffect as useEffe
10694
10691
  import styled55, { ThemeProvider as ThemeProvider26 } from "styled-components";
10695
10692
 
10696
10693
  // src/nav-tabs/Tab.tsx
10697
- import { useEffect as useEffect17, forwardRef as forwardRef10, useContext as useContext37, useRef as useRef13, useImperativeHandle } from "react";
10694
+ import { useEffect as useEffect17, forwardRef as forwardRef11, useContext as useContext37, useRef as useRef13, useImperativeHandle } from "react";
10698
10695
  import styled54 from "styled-components";
10699
10696
 
10700
10697
  // src/nav-tabs/NavTabsContext.tsx
@@ -10703,7 +10700,7 @@ var NavTabsContext_default = createContext8(null);
10703
10700
 
10704
10701
  // src/nav-tabs/Tab.tsx
10705
10702
  import { jsx as jsx61, jsxs as jsxs43 } from "react/jsx-runtime";
10706
- var DxcTab = forwardRef10(
10703
+ var DxcTab = forwardRef11(
10707
10704
  ({
10708
10705
  href,
10709
10706
  active = false,
@@ -10937,10 +10934,10 @@ var NavTabsContainer = styled55.div`
10937
10934
  var NavTabs_default = DxcNavTabs;
10938
10935
 
10939
10936
  // src/number-input/NumberInput.tsx
10940
- import { forwardRef as forwardRef11, useEffect as useEffect19, useMemo as useMemo15, useRef as useRef15 } from "react";
10937
+ import { forwardRef as forwardRef12, useEffect as useEffect19, useMemo as useMemo15, useRef as useRef15 } from "react";
10941
10938
  import styled56 from "styled-components";
10942
10939
  import { jsx as jsx63 } from "react/jsx-runtime";
10943
- var DxcNumberInput = forwardRef11(
10940
+ var DxcNumberInput = forwardRef12(
10944
10941
  ({
10945
10942
  label,
10946
10943
  name,
@@ -11055,7 +11052,7 @@ function DxcParagraph({ children }) {
11055
11052
  }
11056
11053
 
11057
11054
  // src/password-input/PasswordInput.tsx
11058
- import { forwardRef as forwardRef12, useContext as useContext40, useEffect as useEffect20, useRef as useRef16, useState as useState28 } from "react";
11055
+ import { forwardRef as forwardRef13, useContext as useContext40, useEffect as useEffect20, useRef as useRef16, useState as useState28 } from "react";
11059
11056
  import styled58 from "styled-components";
11060
11057
  import { jsx as jsx65 } from "react/jsx-runtime";
11061
11058
  var setInputType = (type, element) => {
@@ -11065,7 +11062,7 @@ var setAriaAttributes = (ariaExpanded, element) => {
11065
11062
  const buttonElement = element?.getElementsByTagName("button")[0];
11066
11063
  buttonElement?.setAttribute("aria-expanded", ariaExpanded);
11067
11064
  };
11068
- var DxcPasswordInput = forwardRef12(
11065
+ var DxcPasswordInput = forwardRef13(
11069
11066
  ({
11070
11067
  label,
11071
11068
  name = "",
@@ -11387,7 +11384,7 @@ var Link3 = styled60.a`
11387
11384
  var QuickNav_default = DxcQuickNav;
11388
11385
 
11389
11386
  // src/radio-group/RadioGroup.tsx
11390
- import { forwardRef as forwardRef13, useCallback as useCallback10, useContext as useContext44, useId as useId19, useMemo as useMemo16, useState as useState31 } from "react";
11387
+ import { forwardRef as forwardRef14, useCallback as useCallback10, useContext as useContext44, useId as useId19, useMemo as useMemo16, useState as useState31 } from "react";
11391
11388
  import styled62, { ThemeProvider as ThemeProvider31 } from "styled-components";
11392
11389
 
11393
11390
  // src/radio-group/Radio.tsx
@@ -11525,7 +11522,7 @@ var getInitialFocusIndex = (innerOptions, value) => {
11525
11522
  const initialSelectedOptionIndex = innerOptions.findIndex((option) => option.value === value);
11526
11523
  return initialSelectedOptionIndex !== -1 ? initialSelectedOptionIndex : 0;
11527
11524
  };
11528
- var DxcRadioGroup = forwardRef13(
11525
+ var DxcRadioGroup = forwardRef14(
11529
11526
  ({
11530
11527
  label,
11531
11528
  name,
@@ -11926,7 +11923,7 @@ DxcResultsetTable.ActionsCell = DxcActionsCell;
11926
11923
  var ResultsetTable_default = DxcResultsetTable;
11927
11924
 
11928
11925
  // src/slider/Slider.tsx
11929
- import { forwardRef as forwardRef14, useContext as useContext46, useId as useId20, useMemo as useMemo18, useState as useState33 } from "react";
11926
+ import { forwardRef as forwardRef15, useContext as useContext46, useId as useId20, useMemo as useMemo18, useState as useState33 } from "react";
11930
11927
  import styled64, { ThemeProvider as ThemeProvider33 } from "styled-components";
11931
11928
  import { jsx as jsx72, jsxs as jsxs50 } from "react/jsx-runtime";
11932
11929
  var sizes6 = {
@@ -12097,7 +12094,7 @@ var TextInputContainer2 = styled64.div`
12097
12094
  margin-left: ${(props) => props.theme.inputMarginLeft};
12098
12095
  max-width: 70px;
12099
12096
  `;
12100
- var DxcSlider = forwardRef14(
12097
+ var DxcSlider = forwardRef15(
12101
12098
  ({
12102
12099
  label = "",
12103
12100
  name = "",
@@ -12257,10 +12254,10 @@ var StatusLabel = styled65.span`
12257
12254
  var StatusLight_default = DxcStatusLight;
12258
12255
 
12259
12256
  // src/switch/Switch.tsx
12260
- import { forwardRef as forwardRef15, useContext as useContext47, useId as useId21, useRef as useRef19, useState as useState34 } from "react";
12257
+ import { forwardRef as forwardRef16, useContext as useContext47, useId as useId21, useRef as useRef19, useState as useState34 } from "react";
12261
12258
  import styled66, { ThemeProvider as ThemeProvider34 } from "styled-components";
12262
12259
  import { Fragment as Fragment14, jsx as jsx74, jsxs as jsxs52 } from "react/jsx-runtime";
12263
- var DxcSwitch = forwardRef15(
12260
+ var DxcSwitch = forwardRef16(
12264
12261
  ({
12265
12262
  defaultChecked = false,
12266
12263
  checked,
@@ -12516,10 +12513,10 @@ import { createContext as createContext9 } from "react";
12516
12513
  var TabsContext_default = createContext9(null);
12517
12514
 
12518
12515
  // src/tabs/Tab.tsx
12519
- import { forwardRef as forwardRef16, useContext as useContext48, useEffect as useEffect24, useRef as useRef20 } from "react";
12516
+ import { forwardRef as forwardRef17, useContext as useContext48, useEffect as useEffect24, useRef as useRef20 } from "react";
12520
12517
  import styled67 from "styled-components";
12521
12518
  import { jsx as jsx75, jsxs as jsxs53 } from "react/jsx-runtime";
12522
- var DxcTab2 = forwardRef16(
12519
+ var DxcTab2 = forwardRef17(
12523
12520
  ({
12524
12521
  icon,
12525
12522
  label,
@@ -12736,10 +12733,10 @@ import { useCallback as useCallback11, useContext as useContext49, useEffect as
12736
12733
  import styled69, { ThemeProvider as ThemeProvider35 } from "styled-components";
12737
12734
 
12738
12735
  // src/tabs/TabLegacy.tsx
12739
- import { forwardRef as forwardRef17, memo as memo12 } from "react";
12736
+ import { forwardRef as forwardRef18, memo as memo12 } from "react";
12740
12737
  import styled68 from "styled-components";
12741
12738
  import { jsx as jsx76, jsxs as jsxs54 } from "react/jsx-runtime";
12742
- var Tab2 = forwardRef17(
12739
+ var Tab2 = forwardRef18(
12743
12740
  ({ active, tab, tabIndex, hasLabelAndIcon, iconPosition, onClick, onMouseEnter, onMouseLeave }, ref) => /* @__PURE__ */ jsxs54(
12744
12741
  TabContainer3,
12745
12742
  {
@@ -13312,7 +13309,6 @@ var DxcTabs2 = ({
13312
13309
  const [innerFocusIndex, setInnerFocusIndex] = useState36(null);
13313
13310
  const [activeIndicatorWidth, setActiveIndicatorWidth] = useState36(0);
13314
13311
  const [activeIndicatorLeft, setActiveIndicatorLeft] = useState36(0);
13315
- const [countClick, setCountClick] = useState36(0);
13316
13312
  const [totalTabsWidth, setTotalTabsWidth] = useState36(0);
13317
13313
  const [translateScroll, setTranslateScroll] = useState36(0);
13318
13314
  const [scrollRightEnabled, setScrollRightEnabled] = useState36(true);
@@ -13409,8 +13405,10 @@ var DxcTabs2 = ({
13409
13405
  });
13410
13406
  return total;
13411
13407
  });
13412
- scrollLimitCheck();
13413
- }, [viewWidth, totalTabsWidth]);
13408
+ setTimeout(() => {
13409
+ scrollLimitCheck();
13410
+ }, 0);
13411
+ }, [viewWidth, totalTabsWidth, activeTab]);
13414
13412
  return children ? /* @__PURE__ */ jsxs56(Fragment15, { children: [
13415
13413
  /* @__PURE__ */ jsx78(ThemeProvider36, { theme: colorsTheme.tabs, children: /* @__PURE__ */ jsxs56(TabsContainer2, { margin, children: [
13416
13414
  /* @__PURE__ */ jsx78(Underline3, {}),
@@ -13707,11 +13705,11 @@ var TagLabel = styled71.div`
13707
13705
  var Tag_default = DxcTag;
13708
13706
 
13709
13707
  // src/textarea/Textarea.tsx
13710
- import { forwardRef as forwardRef18, useContext as useContext52, useEffect as useEffect27, useId as useId22, useRef as useRef23, useState as useState38 } from "react";
13708
+ import { forwardRef as forwardRef19, useContext as useContext52, useEffect as useEffect27, useId as useId22, useRef as useRef23, useState as useState38 } from "react";
13711
13709
  import styled72, { ThemeProvider as ThemeProvider38 } from "styled-components";
13712
13710
  import { jsx as jsx80, jsxs as jsxs58 } from "react/jsx-runtime";
13713
13711
  var patternMatch = (pattern, value) => new RegExp(pattern).test(value);
13714
- var DxcTextarea = forwardRef18(
13712
+ var DxcTextarea = forwardRef19(
13715
13713
  ({
13716
13714
  label,
13717
13715
  name = "",
@@ -14614,7 +14612,7 @@ export {
14614
14612
  Card_default as DxcCard,
14615
14613
  Checkbox_default as DxcCheckbox,
14616
14614
  Chip_default as DxcChip,
14617
- DxcContainer,
14615
+ Container_default as DxcContainer,
14618
14616
  DxcContextualMenu,
14619
14617
  DataGrid_default as DxcDataGrid,
14620
14618
  DateInput_default as DxcDateInput,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxc-technology/halstack-react",
3
- "version": "15.2.2",
3
+ "version": "15.3.2",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dxc-technology/halstack-react.git"