@hitachivantara/uikit-react-core 6.0.0-next.1 → 6.0.0-next.10

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.
Files changed (46) hide show
  1. package/dist/ActionBar/ActionBar.styles.js +1 -1
  2. package/dist/BaseDropdown/BaseDropdownPanel.js +1 -2
  3. package/dist/Button/Button.js +2 -2
  4. package/dist/CheckBox/CheckBox.js +2 -1
  5. package/dist/CheckBox/CheckBox.styles.js +10 -11
  6. package/dist/ColorPicker/ColorPicker.js +15 -21
  7. package/dist/ColorPicker/ColorPicker.styles.js +5 -10
  8. package/dist/ColorPicker/{Fields → Picker}/Fields.js +54 -44
  9. package/dist/ColorPicker/Picker/Picker.js +32 -41
  10. package/dist/ColorPicker/Picker/Picker.styles.js +21 -37
  11. package/dist/ColorPicker/PresetColors/PresetColors.js +5 -20
  12. package/dist/ColorPicker/PresetColors/PresetColors.styles.js +1 -10
  13. package/dist/ColorPicker/SavedColors/SavedColors.js +14 -37
  14. package/dist/ColorPicker/SavedColors/SavedColors.styles.js +9 -24
  15. package/dist/ColorPicker/Swatch.js +39 -0
  16. package/dist/FormElement/Suggestions/Suggestions.js +1 -2
  17. package/dist/Header/Actions/Actions.styles.js +2 -5
  18. package/dist/Header/Header.js +0 -1
  19. package/dist/Header/Header.styles.js +1 -2
  20. package/dist/Input/Input.js +1 -1
  21. package/dist/OverflowTooltip/OverflowTooltip.js +2 -2
  22. package/dist/Pagination/Pagination.js +17 -39
  23. package/dist/Pagination/Pagination.styles.js +32 -54
  24. package/dist/Radio/Radio.js +2 -2
  25. package/dist/Radio/Radio.styles.js +9 -11
  26. package/dist/SearchInput/SearchInput.styles.js +1 -2
  27. package/dist/Select/Option.js +1 -1
  28. package/dist/Select/OptionGroup.js +1 -1
  29. package/dist/Select/Select.js +4 -4
  30. package/dist/StatusIcon/StatusIcon.js +4 -4
  31. package/dist/StatusIcon/StatusIcon.styles.js +9 -14
  32. package/dist/Tag/Tag.js +1 -1
  33. package/dist/TextArea/TextArea.js +1 -1
  34. package/dist/TreeView/TreeView.js +1 -1
  35. package/dist/VerticalNavigation/NavigationPopup/NavigationPopupContainer.js +1 -2
  36. package/dist/icons.js +2 -2
  37. package/dist/index.d.ts +98 -115
  38. package/dist/index.js +3 -4
  39. package/dist/providers/Provider.js +3 -3
  40. package/dist/providers/ThemeProvider.js +24 -6
  41. package/dist/themes/index.js +3 -3
  42. package/dist/themes/{ds5.js → next.js} +4 -16
  43. package/dist/themes/pentaho.js +34 -1
  44. package/dist/utils/theme.js +0 -20
  45. package/package.json +11 -10
  46. package/dist/ColorPicker/Fields/Fields.styles.js +0 -36
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
- import { Swatch } from "react-color/lib/components/common";
3
2
  import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
4
3
  import { HvIcon } from "../../icons.js";
4
+ import { Swatch } from "../Swatch.js";
5
5
  import { useClasses } from "./SavedColors.styles.js";
6
6
  import { HvIconButton } from "../../IconButton/IconButton.js";
7
7
  const SavedColors = (props) => {
@@ -15,52 +15,29 @@ const SavedColors = (props) => {
15
15
  classes: classesProp
16
16
  } = useDefaultProps("HvColorPickerSavedColors", props);
17
17
  const { classes } = useClasses(classesProp);
18
- const handleClick = (hex) => {
19
- onClickColor({
20
- hex,
21
- source: "hex"
22
- });
23
- };
24
18
  return /* @__PURE__ */ jsxs("div", { className: classes.root, children: [
25
19
  /* @__PURE__ */ jsx(
26
20
  HvIconButton,
27
21
  {
28
- className: classes.addButton,
29
22
  variant: "secondarySubtle",
30
23
  onClick: onAddColor,
31
24
  title: addButtonAriaLabel,
32
25
  children: /* @__PURE__ */ jsx(HvIcon, { name: "Add", compact: true })
33
26
  }
34
27
  ),
35
- colors.map((color, index) => /* @__PURE__ */ jsxs(
36
- "div",
37
- {
38
- className: classes.swatchRoot,
39
- children: [
40
- /* @__PURE__ */ jsx("div", { className: classes.swatchWrap, children: /* @__PURE__ */ jsx(
41
- Swatch,
42
- {
43
- color,
44
- onClick: handleClick,
45
- focusStyle: {
46
- boxShadow: `inset 0 0 0 1px rgba(0,0,0,.15), 0 0 4px ${color}`
47
- }
48
- }
49
- ) }),
50
- /* @__PURE__ */ jsx("div", { className: classes.removeButtonRoot, children: /* @__PURE__ */ jsx(
51
- HvIconButton,
52
- {
53
- className: classes.removeButton,
54
- variant: "secondarySubtle",
55
- onClick: () => onRemoveColor(color, index),
56
- title: deleteButtonAriaLabel,
57
- children: /* @__PURE__ */ jsx(HvIcon, { name: "Close", compact: true, size: "xs" })
58
- }
59
- ) })
60
- ]
61
- },
62
- `saved-color-${color}-${index}`
63
- ))
28
+ [...new Set(colors)].map((color, index) => /* @__PURE__ */ jsxs("div", { className: classes.swatchRoot, children: [
29
+ /* @__PURE__ */ jsx(Swatch, { color, onClick: () => onClickColor(color) }),
30
+ /* @__PURE__ */ jsx(
31
+ HvIconButton,
32
+ {
33
+ className: classes.removeButton,
34
+ variant: "secondarySubtle",
35
+ onClick: () => onRemoveColor(color, index),
36
+ title: deleteButtonAriaLabel,
37
+ children: /* @__PURE__ */ jsx(HvIcon, { name: "Close", compact: true, size: "xs" })
38
+ }
39
+ )
40
+ ] }, color))
64
41
  ] });
65
42
  };
66
43
  export {
@@ -1,44 +1,29 @@
1
1
  import { createClasses } from "@hitachivantara/uikit-react-utils";
2
2
  import { theme } from "@hitachivantara/uikit-styles";
3
3
  const { useClasses } = createClasses("HvColorPickerSavedColors", {
4
- addButton: {
5
- margin: theme.space.xxs,
6
- width: "32px",
7
- height: "32px"
8
- },
9
4
  root: {
10
5
  display: "flex",
11
6
  flexWrap: "wrap",
12
7
  position: "relative",
13
- alignItems: "center",
14
- padding: 0,
15
- width: "calc(100% + 8px)",
16
- margin: "-4px -4px"
8
+ gap: theme.space.xs,
9
+ alignItems: "center"
17
10
  },
18
- swatchRoot: { position: "relative" },
19
- swatchWrap: {
20
- width: "32px",
21
- height: "32px",
22
- margin: theme.space.xxs,
23
- "& > span > div": {
24
- borderRadius: theme.radii.base
25
- }
11
+ swatchRoot: {
12
+ position: "relative",
13
+ height: 32
26
14
  },
27
- removeButtonRoot: {
15
+ removeButton: {
28
16
  position: "absolute",
29
17
  top: 0,
30
18
  right: 0,
19
+ transform: "translate(25%, -25%)",
31
20
  display: "flex",
32
21
  justifyContent: "center",
33
22
  alignItems: "center",
34
- height: 16,
35
- width: 16,
36
- background: theme.colors.bgContainer,
37
- borderRadius: theme.radii.base
38
- },
39
- removeButton: {
40
23
  height: 16,
41
24
  width: 16
25
+ // background: theme.colors.bgContainer,
26
+ // borderRadius: theme.radii.base,
42
27
  }
43
28
  });
44
29
  export {
@@ -0,0 +1,39 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useDefaultProps, createClasses, mergeStyles } from "@hitachivantara/uikit-react-utils";
3
+ import { theme } from "@hitachivantara/uikit-styles";
4
+ import { HvButtonBase } from "../ButtonBase/ButtonBase.js";
5
+ const { useClasses } = createClasses("HvColorPickerSwatch", {
6
+ root: {
7
+ width: "32px",
8
+ height: "32px",
9
+ borderRadius: theme.radii.base,
10
+ ":focus": {
11
+ boxShadow: `rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset, var(--color) 0px 0px 4px`
12
+ },
13
+ "&,&:hover,&:focus-visible": {
14
+ backgroundColor: "var(--color)"
15
+ }
16
+ }
17
+ });
18
+ const Swatch = (props) => {
19
+ const {
20
+ classes: classesProp,
21
+ className,
22
+ style,
23
+ color,
24
+ ...others
25
+ } = useDefaultProps("HvColorPickerSwatch", props);
26
+ const { classes, cx } = useClasses(classesProp);
27
+ return /* @__PURE__ */ jsx(
28
+ HvButtonBase,
29
+ {
30
+ title: color,
31
+ style: mergeStyles(style, { "--color": color }),
32
+ className: cx(classes.root, className),
33
+ ...others
34
+ }
35
+ );
36
+ };
37
+ export {
38
+ Swatch
39
+ };
@@ -1,7 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef, useContext, useRef } from "react";
3
- import { ClickAwayListener } from "@mui/base/ClickAwayListener";
4
- import { Popper } from "@mui/base/Popper";
3
+ import { ClickAwayListener, Popper } from "@mui/base";
5
4
  import { useForkRef } from "@mui/material/utils";
6
5
  import { useDefaultProps, useTheme } from "@hitachivantara/uikit-react-utils";
7
6
  import { getContainerElement } from "../../utils/document.js";
@@ -1,16 +1,13 @@
1
1
  import { createClasses } from "@hitachivantara/uikit-react-utils";
2
2
  import { theme } from "@hitachivantara/uikit-styles";
3
- import { staticClasses as staticClasses$1 } from "../../Button/Button.styles.js";
4
3
  const { staticClasses, useClasses } = createClasses("HvHeaderActions", {
5
4
  root: {
6
5
  backgroundColor: "transparent",
7
6
  display: "flex",
8
7
  gap: theme.space.xs,
9
8
  alignItems: "center",
10
- marginLeft: "auto",
11
- [`& .${staticClasses$1?.root}`]: {
12
- "&:hover": { backgroundColor: theme.colors.bgHover }
13
- }
9
+ justifyContent: "flex-end",
10
+ marginLeft: "auto"
14
11
  }
15
12
  });
16
13
  export {
@@ -19,7 +19,6 @@ const HvHeader = forwardRef(function HvHeader2(props, ref) {
19
19
  style: { position },
20
20
  className: cx(
21
21
  classes.root,
22
- classes.backgroundColor,
23
22
  { [classes.fixed]: position === "fixed" },
24
23
  className
25
24
  ),
@@ -23,8 +23,7 @@ const { staticClasses, useClasses } = createClasses("HvHeader", {
23
23
  zIndex: 2
24
24
  }
25
25
  },
26
- fixed: { position: "fixed", top: 0, left: "auto", right: 0 },
27
- backgroundColor: {}
26
+ fixed: { position: "fixed", top: 0, left: "auto", right: 0 }
28
27
  });
29
28
  export {
30
29
  staticClasses,
@@ -89,7 +89,7 @@ const HvInput = fixedForwardRef(function HvInput2(props, ref) {
89
89
  const inputRef = useRef(null);
90
90
  const forkedRef = useForkRef(ref, inputRef, inputRefProp);
91
91
  const suggestionsRef = useRef(null);
92
- const [description, infoMessage] = activeTheme?.name === "pentaho" ? [infoMessageProp, descriptionProp] : [descriptionProp, infoMessageProp];
92
+ const [description, infoMessage] = activeTheme?.name === "pentahoPlus" ? [infoMessageProp, descriptionProp] : [descriptionProp, infoMessageProp];
93
93
  const [focused, setFocused] = useState(false);
94
94
  const isDirty = useRef(false);
95
95
  const isEmptyValue = !inputRef.current?.value;
@@ -5,7 +5,6 @@ import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
5
5
  import { useClasses } from "./OverflowTooltip.styles.js";
6
6
  import { staticClasses } from "./OverflowTooltip.styles.js";
7
7
  import { HvTooltip } from "../Tooltip/Tooltip.js";
8
- import { HvTypography } from "../Typography/Typography.js";
9
8
  const isParagraph = (children = "") => /\s/.test(children);
10
9
  const HvOverflowTooltip = (props) => {
11
10
  const {
@@ -74,7 +73,8 @@ const HvOverflowTooltip = (props) => {
74
73
  disableHoverListener: !isOverflowing,
75
74
  open,
76
75
  placement,
77
- title: /* @__PURE__ */ jsx(HvTypography, { className: classes.tooltipData, variant: "body", children: data }),
76
+ classes: { tooltip: classes.tooltipData },
77
+ title: data,
78
78
  "aria-label": null,
79
79
  "aria-labelledby": null,
80
80
  ...tooltipsProps,
@@ -8,9 +8,9 @@ import { HvIcon } from "../icons.js";
8
8
  import { useClasses } from "./Pagination.styles.js";
9
9
  import { staticClasses } from "./Pagination.styles.js";
10
10
  import HvSelect, { Option } from "./Select.js";
11
- import { HvTypography } from "../Typography/Typography.js";
12
11
  import { HvIconButton } from "../IconButton/IconButton.js";
13
- import { HvInput } from "../Input/Input.js";
12
+ import { HvTypography } from "../Typography/Typography.js";
13
+ import { HvBaseInput } from "../BaseInput/BaseInput.js";
14
14
  const defaultPageSizeOptions = [5, 10, 20, 25, 50, 100];
15
15
  const DEFAULT_LABELS = {
16
16
  /** The show label. */
@@ -74,46 +74,38 @@ const HvPagination = forwardRef(function HvPagination2(props, ref) {
74
74
  useEffect(() => {
75
75
  setPageInput(page);
76
76
  }, [page]);
77
- const renderPageJump = () => /* @__PURE__ */ jsx("div", { className: classes.pageJump, children: /* @__PURE__ */ jsx(
78
- HvInput,
77
+ const renderPageJump = () => /* @__PURE__ */ jsx(
78
+ HvBaseInput,
79
79
  {
80
- labels,
81
80
  inputProps: {
82
81
  "aria-label": labels?.paginationInputLabel,
83
82
  // We really want the native number input
84
83
  type: "number"
85
84
  },
86
85
  classes: {
87
- root: classes?.pageSizeInputContainer,
88
- input: classes?.pageSizeInput,
89
- inputRoot: classes?.pageSizeInputRoot
86
+ root: classes.pageJump,
87
+ input: classes.pageSizeInput
90
88
  },
91
89
  value: String(pageInput + 1),
92
90
  onChange: (event, value) => setPageInput(Number(value) - 1),
93
- onBlur: (evt, value) => changePage(Math.round(Number(value)) - 1),
94
- onEnter: (evt, value) => changePage(Math.round(Number(value)) - 1),
91
+ onBlur: (evt) => changePage(Math.round(Number(evt.target.value)) - 1),
92
+ onKeyDown: (evt) => {
93
+ if (evt.key !== "Enter") return;
94
+ changePage(Math.round(Number(evt.currentTarget.value)) - 1);
95
+ },
95
96
  disabled: pageSize === 0,
96
- disableClear: true,
97
97
  ...currentPageInputProps
98
98
  }
99
- ) });
99
+ );
100
100
  return /* @__PURE__ */ jsxs("div", { ref, id, className: cx(classes.root, className), ...others, children: [
101
101
  /* @__PURE__ */ jsx("div", { className: classes.pageSizeOptions, ...showPageProps, children: showPageSizeOptions && /* @__PURE__ */ jsxs(Fragment, { children: [
102
- !isXsDown && /* @__PURE__ */ jsx(
103
- HvTypography,
104
- {
105
- component: "span",
106
- className: classes?.pageSizeTextContainer,
107
- children: labels?.pageSizePrev
108
- }
109
- ),
102
+ !isXsDown && /* @__PURE__ */ jsx("span", { className: classes?.pageSizeTextContainer, children: labels?.pageSizePrev }),
110
103
  /* @__PURE__ */ jsx(
111
104
  HvSelect,
112
105
  {
113
106
  disabled: pageSize === 0,
114
- className: classes.pageSizeOptionsSelect,
115
107
  "aria-label": labels?.pageSizeSelectorDescription,
116
- onChange: (_, val) => onPageSizeChange?.(val),
108
+ onChange: (evt, val) => onPageSizeChange?.(val),
117
109
  value: pageSize,
118
110
  classes: {
119
111
  header: classes.pageSizeHeader,
@@ -122,14 +114,7 @@ const HvPagination = forwardRef(function HvPagination2(props, ref) {
122
114
  children: pageSizeOptions.map((option) => /* @__PURE__ */ jsx(Option, { value: option, children: option }, option))
123
115
  }
124
116
  ),
125
- !isXsDown && /* @__PURE__ */ jsx(
126
- HvTypography,
127
- {
128
- component: "span",
129
- className: classes.pageSizeTextContainer,
130
- children: labels?.pageSizeEntryName
131
- }
132
- )
117
+ !isXsDown && /* @__PURE__ */ jsx("span", { className: classes.pageSizeTextContainer, children: labels?.pageSizeEntryName })
133
118
  ] }) }),
134
119
  /* @__PURE__ */ jsxs("div", { className: classes.pageNavigator, ...navigationProps, children: [
135
120
  /* @__PURE__ */ jsx(
@@ -153,16 +138,9 @@ const HvPagination = forwardRef(function HvPagination2(props, ref) {
153
138
  }
154
139
  ),
155
140
  /* @__PURE__ */ jsxs("div", { className: classes.pageInfo, children: [
156
- showPageJump ? renderPageJump() : /* @__PURE__ */ jsx(HvTypography, { variant: "caption2", component: "span", children: `${page + 1}` }),
141
+ showPageJump ? renderPageJump() : /* @__PURE__ */ jsx("span", { children: `${page + 1}` }),
157
142
  /* @__PURE__ */ jsx(HvTypography, { component: "span", children: `${labels?.pagesSeparator} ` }),
158
- /* @__PURE__ */ jsx(
159
- HvTypography,
160
- {
161
- component: "span",
162
- className: classes.totalPagesTextContainer,
163
- children: pages
164
- }
165
- )
143
+ /* @__PURE__ */ jsx("span", { children: pages })
166
144
  ] }),
167
145
  /* @__PURE__ */ jsx(
168
146
  HvIconButton,
@@ -1,8 +1,7 @@
1
1
  import { createClasses } from "@hitachivantara/uikit-react-utils";
2
2
  import { theme } from "@hitachivantara/uikit-styles";
3
- import { staticClasses as staticClasses$2 } from "../BaseDropdown/BaseDropdown.styles.js";
3
+ import { staticClasses as staticClasses$1 } from "../BaseDropdown/BaseDropdown.styles.js";
4
4
  import "../BaseDropdown/BaseDropdown.js";
5
- import { staticClasses as staticClasses$1 } from "../Input/Input.styles.js";
6
5
  const { staticClasses, useClasses } = createClasses("HvPagination", {
7
6
  /** Styles applied to the component root class. */
8
7
  root: {
@@ -13,24 +12,7 @@ const { staticClasses, useClasses } = createClasses("HvPagination", {
13
12
  alignItems: "stretch",
14
13
  flexWrap: "wrap",
15
14
  marginTop: theme.space.sm,
16
- [`& $pageSizeInput`]: {
17
- ...theme.typography.caption2,
18
- "&:focus": {
19
- padding: 0
20
- }
21
- },
22
- [`& $pageSizeInputContainer`]: {
23
- width: 24,
24
- minWidth: 24,
25
- maxWidth: theme.spacing(8)
26
- },
27
- [`&& $pageSizeInputRoot`]: {
28
- backgroundColor: "transparent",
29
- height: "24px",
30
- "&:focus, &:focus-within, &:hover": {
31
- backgroundColor: theme.colors.bgHover
32
- }
33
- }
15
+ ...theme.typography.caption2
34
16
  },
35
17
  /** Styles applied to the page size selector container. */
36
18
  pageSizeOptions: {
@@ -46,7 +28,7 @@ const { staticClasses, useClasses } = createClasses("HvPagination", {
46
28
  height: 24,
47
29
  display: "flex",
48
30
  alignItems: "center",
49
- [`& .${staticClasses$2.arrowContainer}`]: {
31
+ [`& .${staticClasses$1.arrowContainer}`]: {
50
32
  display: "flex",
51
33
  alignItems: "center",
52
34
  top: "unset",
@@ -58,6 +40,7 @@ const { staticClasses, useClasses } = createClasses("HvPagination", {
58
40
  }
59
41
  },
60
42
  pageSizeRoot: {
43
+ display: "inline-block",
61
44
  width: "auto"
62
45
  },
63
46
  /** Styles applied to the element that holds the labels for the page size selector */
@@ -66,17 +49,7 @@ const { staticClasses, useClasses } = createClasses("HvPagination", {
66
49
  alignItems: "center",
67
50
  justifyContent: "center",
68
51
  height: "24px",
69
- padding: "8px 0",
70
- ...theme.typography.caption2
71
- },
72
- totalPagesTextContainer: {
73
- ...theme.typography.caption2
74
- },
75
- /** Styles applied to the page size selector dropdown element. */
76
- pageSizeOptionsSelect: {
77
- display: "inline-block",
78
- width: "auto",
79
- ...theme.typography.caption2
52
+ padding: "8px 0"
80
53
  },
81
54
  /** Styles applied to the page navigation container. */
82
55
  pageNavigator: {
@@ -100,31 +73,36 @@ const { staticClasses, useClasses } = createClasses("HvPagination", {
100
73
  },
101
74
  /** Styles applied to the page selector input container. */
102
75
  pageJump: {
103
- display: "inline-block",
104
- marginRight: `4px`,
105
- [`& .${staticClasses$1.inputRoot}`]: {
106
- [`& $pageSizeInput`]: {
107
- paddingLeft: `4px`,
108
- paddingRight: `4px`,
109
- margin: 0,
110
- textAlign: "center",
111
- borderRadius: theme.radii.base,
112
- MozAppearance: "textfield",
113
- "&:focus": {
114
- backgroundColor: theme.colors.bgHover
115
- },
116
- "&:hover": {
117
- cursor: "pointer"
118
- }
119
- }
76
+ marginRight: 4,
77
+ width: 24,
78
+ minWidth: 24,
79
+ maxWidth: theme.spacing(8),
80
+ backgroundColor: "transparent",
81
+ height: "24px",
82
+ "&:focus, &:focus-within, &:hover": {
83
+ backgroundColor: theme.colors.bgHover
84
+ },
85
+ "&, & $pageSizeInput": {
86
+ fontSize: "inherit",
87
+ lineHeight: "inherit"
120
88
  }
121
89
  },
122
90
  /** Styles passed down to the page selector Input component as `input`. */
123
- pageSizeInput: {},
124
- /** Styles passed down to the page selector Input root. */
125
- pageSizeInputRoot: {},
126
- /** Styles passed down to the page selector Input component as `container`. */
127
- pageSizeInputContainer: {}
91
+ pageSizeInput: {
92
+ paddingLeft: 4,
93
+ paddingRight: 4,
94
+ margin: 0,
95
+ textAlign: "center",
96
+ borderRadius: theme.radii.base,
97
+ MozAppearance: "textfield",
98
+ "&:focus": {
99
+ padding: 0,
100
+ backgroundColor: theme.colors.bgHover
101
+ },
102
+ "&:hover": {
103
+ cursor: "pointer"
104
+ }
105
+ }
128
106
  });
129
107
  export {
130
108
  staticClasses,
@@ -109,12 +109,12 @@ const HvRadio = forwardRef(
109
109
  disabled,
110
110
  required,
111
111
  readOnly,
112
- className: cx(classes.root, className),
112
+ className: cx(classes.root, classes[labelPosition], className),
113
113
  children: [
114
114
  hasLabel ? /* @__PURE__ */ jsxs(
115
115
  "div",
116
116
  {
117
- className: cx(classes.container, classes[labelPosition], {
117
+ className: cx(classes.container, {
118
118
  [classes.focusVisible]: !!(focusVisible && label),
119
119
  [classes.semantic]: semantic,
120
120
  [classes.checked]: isChecked,
@@ -14,13 +14,6 @@ const { staticClasses, useClasses } = createClasses("HvRadio", {
14
14
  },
15
15
  ":where(:has($label)) $radio": {
16
16
  borderRadius: "inherit"
17
- },
18
- "&$left": {
19
- flexDirection: "row-reverse",
20
- justifyContent: "flex-end"
21
- },
22
- "&$right": {
23
- flexDirection: "row"
24
17
  }
25
18
  },
26
19
  invalidContainer: {},
@@ -38,17 +31,22 @@ const { staticClasses, useClasses } = createClasses("HvRadio", {
38
31
  verticalAlign: "middle",
39
32
  ...theme.typography.body,
40
33
  cursor: "pointer",
41
- lineHeight: "32px"
34
+ lineHeight: "32px",
35
+ flex: 1
42
36
  },
43
37
  checked: {},
44
38
  semantic: {},
45
39
  left: {
46
- "& .HvRadio-label": {
47
- paddingLeft: theme.space.xs
40
+ "& $label": {
41
+ paddingLeft: theme.space.xs,
42
+ textAlign: "right"
43
+ },
44
+ "& $container": {
45
+ flexDirection: "row-reverse"
48
46
  }
49
47
  },
50
48
  right: {
51
- "& .HvRadio-label": {
49
+ "& $label": {
52
50
  paddingRight: theme.space.xs
53
51
  }
54
52
  }
@@ -1,7 +1,6 @@
1
1
  import { createClasses } from "@hitachivantara/uikit-react-utils";
2
- import { theme } from "@hitachivantara/uikit-styles";
3
2
  const { staticClasses, useClasses } = createClasses("HvSearchInput", {
4
- root: { paddingLeft: theme.space.xs },
3
+ root: {},
5
4
  input: { marginLeft: 0 }
6
5
  });
7
6
  export {
@@ -1,6 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { useRef } from "react";
3
- import { useOption } from "@mui/base/useOption";
3
+ import { useOption } from "@mui/base";
4
4
  import { useForkRef } from "@mui/material/utils";
5
5
  import { createClasses, useDefaultProps } from "@hitachivantara/uikit-react-utils";
6
6
  import { fixedForwardRef } from "../types/generic.js";
@@ -1,6 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
- import { OptionGroup } from "@mui/base/OptionGroup";
3
+ import { OptionGroup } from "@mui/base";
4
4
  import { createClasses, useDefaultProps } from "@hitachivantara/uikit-react-utils";
5
5
  import { theme } from "@hitachivantara/uikit-styles";
6
6
  const { staticClasses, useClasses } = createClasses("HvOptionGroup", {
@@ -1,7 +1,6 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useState, useRef } from "react";
3
- import { Popper } from "@mui/base/Popper";
4
- import { useSelect, SelectProvider } from "@mui/base/useSelect";
3
+ import { useSelect, Popper, SelectProvider } from "@mui/base";
5
4
  import { useForkRef, useControlled } from "@mui/material/utils";
6
5
  import { clsx } from "clsx";
7
6
  import { useDefaultProps, useTheme } from "@hitachivantara/uikit-react-utils";
@@ -19,7 +18,6 @@ import { HvListContainer } from "../ListContainer/ListContainer.js";
19
18
  import { HvWarningText } from "../FormElement/WarningText/WarningText.js";
20
19
  function defaultRenderValue(options) {
21
20
  if (Array.isArray(options)) {
22
- if (options.length === 0) return null;
23
21
  return /* @__PURE__ */ jsx(Fragment, { children: options.map((o) => o.label).join(", ") });
24
22
  }
25
23
  return options?.label ?? null;
@@ -45,6 +43,7 @@ const HvSelect = fixedForwardRef(function HvSelect2(props, ref) {
45
43
  defaultOpen,
46
44
  multiple,
47
45
  autoComplete,
46
+ renderValue: renderValueProp,
48
47
  options: optionsProp,
49
48
  variableWidth,
50
49
  value: valueProp,
@@ -95,6 +94,7 @@ const HvSelect = fixedForwardRef(function HvSelect2(props, ref) {
95
94
  onChange,
96
95
  onOpenChange: handleOpenChange
97
96
  });
97
+ const renderValue = renderValueProp ?? defaultRenderValue;
98
98
  const id = useUniqueId(idProp);
99
99
  const labelId = useUniqueId(setId(idProp, "label"));
100
100
  const descriptionId = useUniqueId(setId(idProp, "description"));
@@ -171,7 +171,7 @@ const HvSelect = fixedForwardRef(function HvSelect2(props, ref) {
171
171
  [descriptionId]: description
172
172
  }),
173
173
  ...getButtonProps(),
174
- children: defaultRenderValue(actualValue) ?? placeholder
174
+ children: renderValue(actualValue) ?? placeholder
175
175
  }
176
176
  ),
177
177
  /* @__PURE__ */ jsx(
@@ -55,8 +55,8 @@ const pentahoIconsMap = {
55
55
  ] })
56
56
  },
57
57
  info: {
58
- regular: /* @__PURE__ */ jsx("path", { d: "M140,180a12,12,0,1,1-12-12A12,12,0,0,1,140,180ZM128,72c-22.06,0-40,16.15-40,36v4a8,8,0,0,0,16,0v-4c0-11,10.77-20,24-20s24,9,24,20-10.77,20-24,20a8,8,0,0,0-8,8v8a8,8,0,0,0,16,0v-.72c18.24-3.35,32-17.9,32-35.28C168,88.15,150.06,72,128,72Zm104,56A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z" }),
59
- fill: /* @__PURE__ */ jsx("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,168a12,12,0,1,1,12-12A12,12,0,0,1,128,192Zm8-48.72V144a8,8,0,0,1-16,0v-8a8,8,0,0,1,8-8c13.23,0,24-9,24-20s-10.77-20-24-20-24,9-24,20v4a8,8,0,0,1-16,0v-4c0-19.85,17.94-36,40-36s40,16.15,40,36C168,125.38,154.24,139.93,136,143.28Z" }),
58
+ regular: /* @__PURE__ */ jsx("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm16-40a8,8,0,0,1-8,8,16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40A8,8,0,0,1,144,176ZM112,84a12,12,0,1,1,12,12A12,12,0,0,1,112,84Z" }),
59
+ fill: /* @__PURE__ */ jsx("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-4,48a12,12,0,1,1-12,12A12,12,0,0,1,124,72Zm12,112a16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40a8,8,0,0,1,0,16Z" }),
60
60
  duotone: /* @__PURE__ */ jsxs(Fragment, { children: [
61
61
  /* @__PURE__ */ jsx(
62
62
  "path",
@@ -65,7 +65,7 @@ const pentahoIconsMap = {
65
65
  opacity: "0.2"
66
66
  }
67
67
  ),
68
- /* @__PURE__ */ jsx("path", { d: "M140,180a12,12,0,1,1-12-12A12,12,0,0,1,140,180ZM128,72c-22.06,0-40,16.15-40,36v4a8,8,0,0,0,16,0v-4c0-11,10.77-20,24-20s24,9,24,20-10.77,20-24,20a8,8,0,0,0-8,8v8a8,8,0,0,0,16,0v-.72c18.24-3.35,32-17.9,32-35.28C168,88.15,150.06,72,128,72Zm104,56A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z" })
68
+ /* @__PURE__ */ jsx("path", { d: "M144,176a8,8,0,0,1-8,8,16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40A8,8,0,0,1,144,176Zm88-48A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128ZM124,96a12,12,0,1,0-12-12A12,12,0,0,0,124,96Z" })
69
69
  ] })
70
70
  }
71
71
  };
@@ -89,7 +89,7 @@ const HvStatusIcon = forwardRef(function HvStatusIcon2(props, ref) {
89
89
  "data-type": type,
90
90
  "data-size": size,
91
91
  className: cx(classes.root, className),
92
- children: activeTheme?.name === "pentaho" && !customIcon ? /* @__PURE__ */ jsx(HvIconContainer, { size, children: /* @__PURE__ */ jsx(SvgBase, { viewBox: "0 0 256 256", className: classes.icon, children: pentahoIconsMap[variant]?.[weight] }) }) : /* @__PURE__ */ jsx(HvIconContainer, { size, children: customIcon || /* @__PURE__ */ jsx(
92
+ children: activeTheme?.name === "pentahoPlus" && !customIcon ? /* @__PURE__ */ jsx(HvIconContainer, { size, children: /* @__PURE__ */ jsx(SvgBase, { viewBox: "0 0 256 256", className: classes.icon, children: pentahoIconsMap[variant]?.[weight] }) }) : /* @__PURE__ */ jsx(HvIconContainer, { size, children: customIcon || /* @__PURE__ */ jsx(
93
93
  HvIcon,
94
94
  {
95
95
  compact: true,