@hitachivantara/uikit-react-core 5.46.2 → 5.47.0
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/cjs/ListContainer/ListItem/ListItem.cjs +27 -32
- package/dist/cjs/ListContainer/ListItem/ListItem.cjs.map +1 -1
- package/dist/cjs/Panel/Panel.cjs +13 -11
- package/dist/cjs/Panel/Panel.cjs.map +1 -1
- package/dist/cjs/Section/Section.cjs +32 -20
- package/dist/cjs/Section/Section.cjs.map +1 -1
- package/dist/cjs/Section/Section.styles.cjs +13 -3
- package/dist/cjs/Section/Section.styles.cjs.map +1 -1
- package/dist/cjs/TableSection/TableSection.cjs +24 -0
- package/dist/cjs/TableSection/TableSection.cjs.map +1 -0
- package/dist/cjs/TableSection/TableSection.styles.cjs +81 -0
- package/dist/cjs/TableSection/TableSection.styles.cjs.map +1 -0
- package/dist/cjs/index.cjs +4 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/ListContainer/ListItem/ListItem.js +27 -32
- package/dist/esm/ListContainer/ListItem/ListItem.js.map +1 -1
- package/dist/esm/Panel/Panel.js +13 -11
- package/dist/esm/Panel/Panel.js.map +1 -1
- package/dist/esm/Section/Section.js +32 -20
- package/dist/esm/Section/Section.js.map +1 -1
- package/dist/esm/Section/Section.styles.js +13 -3
- package/dist/esm/Section/Section.styles.js.map +1 -1
- package/dist/esm/TableSection/TableSection.js +25 -0
- package/dist/esm/TableSection/TableSection.js.map +1 -0
- package/dist/esm/TableSection/TableSection.styles.js +81 -0
- package/dist/esm/TableSection/TableSection.styles.js.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +46 -2
- package/package.json +2 -2
|
@@ -9,27 +9,24 @@ const Focus = require("../../Focus/Focus.cjs");
|
|
|
9
9
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
10
10
|
const React__default = /* @__PURE__ */ _interopDefault(React);
|
|
11
11
|
const applyClassNameAndStateToElement = (element, selected, disabled, onClick, className) => {
|
|
12
|
-
if (element
|
|
13
|
-
return
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
return null;
|
|
12
|
+
if (element == null)
|
|
13
|
+
return null;
|
|
14
|
+
return React__default.default.cloneElement(element, {
|
|
15
|
+
className,
|
|
16
|
+
checked: !!selected,
|
|
17
|
+
disabled,
|
|
18
|
+
onChange: onClick
|
|
19
|
+
});
|
|
21
20
|
};
|
|
22
21
|
const applyClassNameToElement = (element, className) => {
|
|
23
|
-
if (element
|
|
24
|
-
return
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
return null;
|
|
22
|
+
if (element == null)
|
|
23
|
+
return null;
|
|
24
|
+
return React__default.default.cloneElement(element, {
|
|
25
|
+
className
|
|
26
|
+
});
|
|
29
27
|
};
|
|
30
28
|
const HvListItem = React.forwardRef((props, ref) => {
|
|
31
29
|
const {
|
|
32
|
-
id,
|
|
33
30
|
classes: classesProp,
|
|
34
31
|
className,
|
|
35
32
|
role,
|
|
@@ -53,14 +50,14 @@ const HvListItem = React.forwardRef((props, ref) => {
|
|
|
53
50
|
disableGutters: disableGuttersContext,
|
|
54
51
|
interactive: interactiveContext
|
|
55
52
|
} = React.useContext(ListContext.default);
|
|
56
|
-
const condensed = condensedProp
|
|
57
|
-
const disableGutters = disableGuttersProp
|
|
58
|
-
const interactive = interactiveProp
|
|
59
|
-
const
|
|
53
|
+
const condensed = condensedProp ?? condensedContext;
|
|
54
|
+
const disableGutters = disableGuttersProp ?? disableGuttersContext;
|
|
55
|
+
const interactive = interactiveProp ?? interactiveContext;
|
|
56
|
+
const handleClick = React.useCallback(
|
|
60
57
|
(evt) => {
|
|
61
|
-
if (
|
|
62
|
-
|
|
63
|
-
|
|
58
|
+
if (disabled)
|
|
59
|
+
return;
|
|
60
|
+
onClick?.(evt);
|
|
64
61
|
},
|
|
65
62
|
[disabled, onClick]
|
|
66
63
|
);
|
|
@@ -69,7 +66,7 @@ const HvListItem = React.forwardRef((props, ref) => {
|
|
|
69
66
|
startAdornment,
|
|
70
67
|
selected,
|
|
71
68
|
disabled,
|
|
72
|
-
|
|
69
|
+
handleClick,
|
|
73
70
|
cx(
|
|
74
71
|
classes.startAdornment,
|
|
75
72
|
{ [classes.disabled]: disabled },
|
|
@@ -81,7 +78,7 @@ const HvListItem = React.forwardRef((props, ref) => {
|
|
|
81
78
|
classes?.startAdornment,
|
|
82
79
|
classes?.disabled,
|
|
83
80
|
disabled,
|
|
84
|
-
|
|
81
|
+
handleClick,
|
|
85
82
|
selected,
|
|
86
83
|
startAdornment
|
|
87
84
|
]
|
|
@@ -103,11 +100,10 @@ const HvListItem = React.forwardRef((props, ref) => {
|
|
|
103
100
|
} : {};
|
|
104
101
|
const listItem = (
|
|
105
102
|
// For later: this should only have an onClick event if interactive and has the appropriate role.
|
|
106
|
-
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
103
|
+
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events
|
|
107
104
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
108
105
|
"li",
|
|
109
106
|
{
|
|
110
|
-
id,
|
|
111
107
|
ref,
|
|
112
108
|
role,
|
|
113
109
|
value,
|
|
@@ -117,16 +113,15 @@ const HvListItem = React.forwardRef((props, ref) => {
|
|
|
117
113
|
[classes.gutters]: !disableGutters,
|
|
118
114
|
[classes.condensed]: condensed,
|
|
119
115
|
[classes.interactive]: interactive,
|
|
120
|
-
[classes.selected]:
|
|
121
|
-
[classes.disabled]:
|
|
116
|
+
[classes.selected]: selected || props["aria-selected"],
|
|
117
|
+
[classes.disabled]: disabled || props["aria-disabled"],
|
|
122
118
|
[classes.withStartAdornment]: startAdornment != null,
|
|
123
119
|
[classes.withEndAdornment]: endAdornment != null
|
|
124
120
|
},
|
|
125
121
|
className
|
|
126
122
|
),
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
},
|
|
123
|
+
tabIndex: interactive ? void 0 : tabIndex,
|
|
124
|
+
onClick: handleClick,
|
|
130
125
|
...roleOptionAriaProps,
|
|
131
126
|
...others,
|
|
132
127
|
children: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.cjs","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { HvBaseProps } from \"../../types/generic\";\nimport { useDefaultProps } from \"../../hooks/useDefaultProps\";\nimport { ExtractNames } from \"../../utils/classes\";\nimport { HvFocus } from \"../../Focus\";\n\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element,\n selected,\n disabled,\n onClick
|
|
1
|
+
{"version":3,"file":"ListItem.cjs","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { HvBaseProps } from \"../../types/generic\";\nimport { useDefaultProps } from \"../../hooks/useDefaultProps\";\nimport { ExtractNames } from \"../../utils/classes\";\nimport { HvFocus } from \"../../Focus\";\n\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element: any,\n selected: boolean | undefined,\n disabled: boolean | undefined,\n onClick: React.MouseEventHandler<HTMLLIElement>,\n className?: string\n) => {\n if (element == null) return null;\n\n return React.cloneElement(element, {\n className,\n checked: !!selected,\n disabled,\n onChange: onClick,\n });\n};\n\nconst applyClassNameToElement = (element, className?: string) => {\n if (element == null) return null;\n\n return React.cloneElement(element, {\n className,\n });\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = forwardRef<any, HvListItemProps>((props, ref) => {\n const {\n classes: classesProp,\n className,\n role,\n value,\n selected,\n disabled,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n } = useDefaultProps(\"HvListItem\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n } = useContext(HvListContext);\n\n const condensed = condensedProp ?? condensedContext;\n const disableGutters = disableGuttersProp ?? disableGuttersContext;\n const interactive = interactiveProp ?? interactiveContext;\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLLIElement>>(\n (evt) => {\n if (disabled) return;\n onClick?.(evt);\n },\n [disabled, onClick]\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleClick,\n cx(\n classes.startAdornment,\n { [classes.disabled]: disabled },\n React.isValidElement(startAdornment)\n ? startAdornment.props.className\n : undefined\n )\n ),\n [\n cx,\n classes?.startAdornment,\n classes?.disabled,\n disabled,\n handleClick,\n selected,\n startAdornment,\n ]\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n cx(\n classes.endAdornment,\n { [classes.disabled]: disabled },\n React.isValidElement(endAdornment)\n ? endAdornment.props.className\n : undefined\n )\n ),\n [cx, classes?.endAdornment, classes?.disabled, disabled, endAdornment]\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n // For later: this should only have an onClick event if interactive and has the appropriate role.\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events\n <li\n ref={ref}\n role={role}\n value={value}\n className={cx(\n classes.root,\n {\n [classes.gutters]: !disableGutters,\n [classes.condensed]: condensed,\n [classes.interactive]: interactive,\n [classes.selected]: selected || props[\"aria-selected\"],\n [classes.disabled]: disabled || props[\"aria-disabled\"],\n [classes.withStartAdornment]: startAdornment != null,\n [classes.withEndAdornment]: endAdornment != null,\n },\n className\n )}\n tabIndex={interactive ? undefined : tabIndex}\n onClick={handleClick}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </li>\n );\n\n return interactive ? (\n <HvFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: classes.focus }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </HvFocus>\n ) : (\n listItem\n );\n});\n"],"names":["React","forwardRef","useDefaultProps","useClasses","useContext","HvListContext","useCallback","useMemo","jsxs","jsx","HvFocus"],"mappings":"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"}
|
package/dist/cjs/Panel/Panel.cjs
CHANGED
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
4
|
+
const React = require("react");
|
|
4
5
|
const useDefaultProps = require("../hooks/useDefaultProps.cjs");
|
|
5
6
|
const Panel_styles = require("./Panel.styles.cjs");
|
|
6
|
-
const HvPanel = (
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
7
|
+
const HvPanel = React.forwardRef(
|
|
8
|
+
(props, ref) => {
|
|
9
|
+
const {
|
|
10
|
+
className,
|
|
11
|
+
classes: classesProp,
|
|
12
|
+
children,
|
|
13
|
+
...others
|
|
14
|
+
} = useDefaultProps.useDefaultProps("HvPanel", props);
|
|
15
|
+
const { classes, cx } = Panel_styles.useClasses(classesProp);
|
|
16
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cx(classes.root, className), ...others, children });
|
|
17
|
+
}
|
|
18
|
+
);
|
|
17
19
|
exports.panelClasses = Panel_styles.staticClasses;
|
|
18
20
|
exports.HvPanel = HvPanel;
|
|
19
21
|
//# sourceMappingURL=Panel.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Panel.cjs","sources":["../../../src/Panel/Panel.tsx"],"sourcesContent":["import { useDefaultProps } from \"../hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"../types/generic\";\n\nimport { ExtractNames } from \"../utils/classes\";\n\nimport { staticClasses, useClasses } from \"./Panel.styles\";\n\nexport { staticClasses as panelClasses };\n\nexport type HvPanelClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPanelProps extends HvBaseProps {\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvPanelClasses;\n}\n\n/**\n * A panel is a container used in a variety of patterns (e.g. dropdown, filter group, details section).\n * It can be horizontal or vertical and its size is defined by its content and how it relates to surrounding patterns.\n * Regardless of its content, a panel look and feel should be consistent.\n */\nexport const HvPanel = (props
|
|
1
|
+
{"version":3,"file":"Panel.cjs","sources":["../../../src/Panel/Panel.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"../types/generic\";\n\nimport { ExtractNames } from \"../utils/classes\";\n\nimport { staticClasses, useClasses } from \"./Panel.styles\";\n\nexport { staticClasses as panelClasses };\n\nexport type HvPanelClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPanelProps extends HvBaseProps {\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvPanelClasses;\n}\n\n/**\n * A panel is a container used in a variety of patterns (e.g. dropdown, filter group, details section).\n * It can be horizontal or vertical and its size is defined by its content and how it relates to surrounding patterns.\n * Regardless of its content, a panel look and feel should be consistent.\n */\nexport const HvPanel = forwardRef<HTMLDivElement, HvPanelProps>(\n (props, ref) => {\n const {\n className,\n classes: classesProp,\n children,\n ...others\n } = useDefaultProps(\"HvPanel\", props);\n const { classes, cx } = useClasses(classesProp);\n\n return (\n <div ref={ref} className={cx(classes.root, className)} {...others}>\n {children}\n </div>\n );\n }\n);\n"],"names":["forwardRef","useDefaultProps","useClasses","jsx"],"mappings":";;;;;;AAwBO,MAAM,UAAUA,MAAA;AAAA,EACrB,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,IACDC,gBAAgB,gBAAA,WAAW,KAAK;AACpC,UAAM,EAAE,SAAS,GAAG,IAAIC,wBAAW,WAAW;AAG5C,WAAAC,2BAAA,IAAC,OAAI,EAAA,KAAU,WAAW,GAAG,QAAQ,MAAM,SAAS,GAAI,GAAG,QACxD,SACH,CAAA;AAAA,EAEJ;AACF;;;"}
|
|
@@ -22,6 +22,7 @@ const HvSection = React.forwardRef(
|
|
|
22
22
|
actions,
|
|
23
23
|
onToggle,
|
|
24
24
|
expandButtonProps,
|
|
25
|
+
raisedHeader,
|
|
25
26
|
children,
|
|
26
27
|
...others
|
|
27
28
|
} = useDefaultProps.useDefaultProps("HvSection", props);
|
|
@@ -41,31 +42,42 @@ const HvSection = React.forwardRef(
|
|
|
41
42
|
className: cx(classes.root, className),
|
|
42
43
|
...others,
|
|
43
44
|
children: [
|
|
44
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
{
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
45
|
+
(title || actions || expandable) && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
46
|
+
"div",
|
|
47
|
+
{
|
|
48
|
+
className: cx(classes.header, {
|
|
49
|
+
[classes.raisedHeader]: raisedHeader && isOpen
|
|
50
|
+
}),
|
|
51
|
+
children: [
|
|
52
|
+
expandable && /* @__PURE__ */ jsxRuntime.jsx(
|
|
53
|
+
Button.HvButton,
|
|
54
|
+
{
|
|
55
|
+
icon: true,
|
|
56
|
+
onClick: (event) => {
|
|
57
|
+
setIsOpen((o) => !o);
|
|
58
|
+
onToggle?.(event, !isOpen);
|
|
59
|
+
},
|
|
60
|
+
"aria-expanded": isOpen,
|
|
61
|
+
"aria-controls": contentId,
|
|
62
|
+
"aria-label": isOpen ? "Collapse" : "Expand",
|
|
63
|
+
...expandButtonProps,
|
|
64
|
+
children: isOpen ? /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.Up, {}) : /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.Down, {})
|
|
65
|
+
}
|
|
66
|
+
),
|
|
67
|
+
title,
|
|
68
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: classes.actions, children: actions })
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
),
|
|
63
72
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
64
73
|
"div",
|
|
65
74
|
{
|
|
66
75
|
id: contentId,
|
|
67
76
|
hidden: !isOpen,
|
|
68
|
-
className: cx(classes.content, {
|
|
77
|
+
className: cx(classes.content, {
|
|
78
|
+
[classes.hidden]: !showContent,
|
|
79
|
+
[classes.spaceTop]: !(title || actions || expandable)
|
|
80
|
+
}),
|
|
69
81
|
children
|
|
70
82
|
}
|
|
71
83
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Section.cjs","sources":["../../../src/Section/Section.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Down, Up } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { ExtractNames } from \"../utils/classes\";\nimport { HvButton, HvButtonProps } from \"../Button\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { setId } from \"../utils/setId\";\n\nimport { staticClasses, useClasses } from \"./Section.styles\";\n\nexport { staticClasses as sectionClasses };\n\nexport type HvSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvSectionProps\n extends Omit<HvBaseProps<HTMLDivElement>, \"title\"> {\n /** The title of the section */\n title?: React.ReactNode;\n /** Whether or not the section is expandable. */\n expandable?: boolean;\n /** Whether the section is open or not, if this property is defined the accordion must be fully controlled. */\n expanded?: boolean;\n /** When uncontrolled, defines the initial expanded state. */\n defaultExpanded?: boolean;\n /** Section actions */\n actions?: React.ReactNode;\n /** Section onExpand callback */\n onToggle?: (\n event: React.MouseEvent<HTMLButtonElement>,\n open: boolean\n ) => void;\n /** Props to be passed to the expand button */\n expandButtonProps?: HvButtonProps;\n /** A Jss Object used to override or extend the styles applied to the empty state component. */\n classes?: HvSectionClasses;\n}\n\n/**\n * Sections allow grouping information on a page under the same topic.\n */\nexport const HvSection = forwardRef<HTMLDivElement, HvSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n className,\n title,\n expandable,\n expanded,\n defaultExpanded = true,\n actions,\n onToggle,\n expandButtonProps,\n children,\n ...others\n } = useDefaultProps(\"HvSection\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const [isOpen, setIsOpen] = useControlled(\n expanded,\n Boolean(defaultExpanded)\n );\n\n const elementId = useUniqueId(id, \"hvSection\");\n const contentId = setId(elementId, \"content\");\n\n const showContent = expandable ? !!isOpen : true;\n\n return (\n <div\n ref={ref}\n id={elementId}\n className={cx(classes.root, className)}\n {...others}\n >\n <div
|
|
1
|
+
{"version":3,"file":"Section.cjs","sources":["../../../src/Section/Section.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Down, Up } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { ExtractNames } from \"../utils/classes\";\nimport { HvButton, HvButtonProps } from \"../Button\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { setId } from \"../utils/setId\";\n\nimport { staticClasses, useClasses } from \"./Section.styles\";\n\nexport { staticClasses as sectionClasses };\n\nexport type HvSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvSectionProps\n extends Omit<HvBaseProps<HTMLDivElement>, \"title\"> {\n /** The title of the section */\n title?: React.ReactNode;\n /** Whether or not the section is expandable. */\n expandable?: boolean;\n /** Whether the section is open or not, if this property is defined the accordion must be fully controlled. */\n expanded?: boolean;\n /** When uncontrolled, defines the initial expanded state. */\n defaultExpanded?: boolean;\n /** Section actions */\n actions?: React.ReactNode;\n /** Section onExpand callback */\n onToggle?: (\n event: React.MouseEvent<HTMLButtonElement>,\n open: boolean\n ) => void;\n /** Props to be passed to the expand button */\n expandButtonProps?: HvButtonProps;\n /** Determines whether or not the header has a shadow on the bottom border. */\n raisedHeader?: boolean;\n /** A Jss Object used to override or extend the styles applied to the empty state component. */\n classes?: HvSectionClasses;\n}\n\n/**\n * Sections allow grouping information on a page under the same topic.\n */\nexport const HvSection = forwardRef<HTMLDivElement, HvSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n className,\n title,\n expandable,\n expanded,\n defaultExpanded = true,\n actions,\n onToggle,\n expandButtonProps,\n raisedHeader,\n children,\n ...others\n } = useDefaultProps(\"HvSection\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const [isOpen, setIsOpen] = useControlled(\n expanded,\n Boolean(defaultExpanded)\n );\n\n const elementId = useUniqueId(id, \"hvSection\");\n const contentId = setId(elementId, \"content\");\n\n const showContent = expandable ? !!isOpen : true;\n\n return (\n <div\n ref={ref}\n id={elementId}\n className={cx(classes.root, className)}\n {...others}\n >\n {(title || actions || expandable) && (\n <div\n className={cx(classes.header, {\n [classes.raisedHeader]: raisedHeader && isOpen,\n })}\n >\n {expandable && (\n <HvButton\n icon\n onClick={(event) => {\n setIsOpen((o) => !o);\n onToggle?.(event, !isOpen);\n }}\n aria-expanded={isOpen}\n aria-controls={contentId}\n aria-label={isOpen ? \"Collapse\" : \"Expand\"}\n {...expandButtonProps}\n >\n {isOpen ? <Up /> : <Down />}\n </HvButton>\n )}\n {title}\n <div className={classes.actions}>{actions}</div>\n </div>\n )}\n <div\n id={contentId}\n hidden={!isOpen}\n className={cx(classes.content, {\n [classes.hidden]: !showContent,\n [classes.spaceTop]: !(title || actions || expandable),\n })}\n >\n {children}\n </div>\n </div>\n );\n }\n);\n"],"names":["forwardRef","useDefaultProps","useClasses","useControlled","useUniqueId","setId","jsxs","jsx","HvButton","Up","Down"],"mappings":";;;;;;;;;;;AA6CO,MAAM,YAAYA,MAAA;AAAA,EACvB,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,kBAAkB;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IAAA,IACDC,gBAAgB,gBAAA,aAAa,KAAK;AAEtC,UAAM,EAAE,SAAS,GAAG,IAAIC,0BAAW,WAAW;AAExC,UAAA,CAAC,QAAQ,SAAS,IAAIC,cAAA;AAAA,MAC1B;AAAA,MACA,QAAQ,eAAe;AAAA,IAAA;AAGnB,UAAA,YAAYC,YAAAA,YAAY,IAAI,WAAW;AACvC,UAAA,YAAYC,MAAAA,MAAM,WAAW,SAAS;AAE5C,UAAM,cAAc,aAAa,CAAC,CAAC,SAAS;AAG1C,WAAAC,2BAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,IAAI;AAAA,QACJ,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,QACpC,GAAG;AAAA,QAEF,UAAA;AAAA,WAAA,SAAS,WAAW,eACpBA,2BAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAW,GAAG,QAAQ,QAAQ;AAAA,gBAC5B,CAAC,QAAQ,YAAY,GAAG,gBAAgB;AAAA,cAAA,CACzC;AAAA,cAEA,UAAA;AAAA,gBACC,cAAAC,2BAAA;AAAA,kBAACC,OAAA;AAAA,kBAAA;AAAA,oBACC,MAAI;AAAA,oBACJ,SAAS,CAAC,UAAU;AACR,gCAAA,CAAC,MAAM,CAAC,CAAC;AACR,iCAAA,OAAO,CAAC,MAAM;AAAA,oBAC3B;AAAA,oBACA,iBAAe;AAAA,oBACf,iBAAe;AAAA,oBACf,cAAY,SAAS,aAAa;AAAA,oBACjC,GAAG;AAAA,oBAEH,UAAS,SAAAD,2BAAAA,IAACE,gBAAG,IAAA,CAAA,CAAA,mCAAMC,gBAAK,MAAA,EAAA;AAAA,kBAAA;AAAA,gBAC3B;AAAA,gBAED;AAAA,gBACAH,2BAAA,IAAA,OAAA,EAAI,WAAW,QAAQ,SAAU,UAAQ,SAAA;AAAA,cAAA;AAAA,YAAA;AAAA,UAC5C;AAAA,UAEFA,2BAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,cACJ,QAAQ,CAAC;AAAA,cACT,WAAW,GAAG,QAAQ,SAAS;AAAA,gBAC7B,CAAC,QAAQ,MAAM,GAAG,CAAC;AAAA,gBACnB,CAAC,QAAQ,QAAQ,GAAG,EAAE,SAAS,WAAW;AAAA,cAAA,CAC3C;AAAA,cAEA;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;;;"}
|
|
@@ -7,7 +7,6 @@ const { staticClasses, useClasses } = classes.createClasses("HvSection", {
|
|
|
7
7
|
width: "100%",
|
|
8
8
|
display: "flex",
|
|
9
9
|
flexDirection: "column",
|
|
10
|
-
padding: uikitStyles.theme.space.sm,
|
|
11
10
|
backgroundColor: uikitStyles.theme.colors.atmo1,
|
|
12
11
|
borderRadius: uikitStyles.theme.radii.round,
|
|
13
12
|
border: `1px solid ${uikitStyles.theme.colors.atmo4}`
|
|
@@ -17,16 +16,27 @@ const { staticClasses, useClasses } = classes.createClasses("HvSection", {
|
|
|
17
16
|
display: "flex",
|
|
18
17
|
alignItems: "center",
|
|
19
18
|
position: "relative",
|
|
20
|
-
minHeight: uikitStyles.theme.sizes.sm
|
|
19
|
+
minHeight: uikitStyles.theme.sizes.sm,
|
|
20
|
+
padding: uikitStyles.theme.space.sm
|
|
21
21
|
},
|
|
22
22
|
content: {
|
|
23
|
-
|
|
23
|
+
padding: uikitStyles.theme.spacing(0, "sm", "sm", "sm")
|
|
24
|
+
},
|
|
25
|
+
spaceTop: {
|
|
26
|
+
paddingTop: uikitStyles.theme.space.sm
|
|
24
27
|
},
|
|
25
28
|
actions: {
|
|
26
29
|
display: "flex",
|
|
27
30
|
gap: uikitStyles.theme.space.xs,
|
|
28
31
|
position: "absolute",
|
|
29
32
|
right: 0
|
|
33
|
+
},
|
|
34
|
+
raisedHeader: {
|
|
35
|
+
zIndex: 1,
|
|
36
|
+
boxShadow: uikitStyles.theme.colors.shadow,
|
|
37
|
+
"+ div": {
|
|
38
|
+
paddingTop: uikitStyles.theme.space.sm
|
|
39
|
+
}
|
|
30
40
|
}
|
|
31
41
|
});
|
|
32
42
|
exports.staticClasses = staticClasses;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Section.styles.cjs","sources":["../../../src/Section/Section.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvSection\", {\n root: {\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n
|
|
1
|
+
{"version":3,"file":"Section.styles.cjs","sources":["../../../src/Section/Section.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvSection\", {\n root: {\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n backgroundColor: theme.colors.atmo1,\n borderRadius: theme.radii.round,\n border: `1px solid ${theme.colors.atmo4}`,\n },\n hidden: { height: 0, display: \"none\" },\n header: {\n display: \"flex\",\n alignItems: \"center\",\n position: \"relative\",\n minHeight: theme.sizes.sm,\n padding: theme.space.sm,\n },\n content: {\n padding: theme.spacing(0, \"sm\", \"sm\", \"sm\"),\n },\n spaceTop: {\n paddingTop: theme.space.sm,\n },\n actions: {\n display: \"flex\",\n gap: theme.space.xs,\n position: \"absolute\",\n right: 0,\n },\n raisedHeader: {\n zIndex: 1,\n boxShadow: theme.colors.shadow,\n \"+ div\": {\n paddingTop: theme.space.sm,\n },\n },\n});\n"],"names":["createClasses","theme"],"mappings":";;;;AAIO,MAAM,EAAE,eAAe,eAAeA,QAAAA,cAAc,aAAa;AAAA,EACtE,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,SAAS;AAAA,IACT,eAAe;AAAA,IACf,iBAAiBC,YAAAA,MAAM,OAAO;AAAA,IAC9B,cAAcA,YAAAA,MAAM,MAAM;AAAA,IAC1B,QAAQ,aAAaA,YAAM,MAAA,OAAO,KAAK;AAAA,EACzC;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG,SAAS,OAAO;AAAA,EACrC,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,WAAWA,YAAAA,MAAM,MAAM;AAAA,IACvB,SAASA,YAAAA,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,SAAS;AAAA,IACP,SAASA,YAAM,MAAA,QAAQ,GAAG,MAAM,MAAM,IAAI;AAAA,EAC5C;AAAA,EACA,UAAU;AAAA,IACR,YAAYA,YAAAA,MAAM,MAAM;AAAA,EAC1B;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,IACT,KAAKA,YAAAA,MAAM,MAAM;AAAA,IACjB,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AAAA,EACA,cAAc;AAAA,IACZ,QAAQ;AAAA,IACR,WAAWA,YAAAA,MAAM,OAAO;AAAA,IACxB,SAAS;AAAA,MACP,YAAYA,YAAAA,MAAM,MAAM;AAAA,IAC1B;AAAA,EACF;AACF,CAAC;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
4
|
+
const React = require("react");
|
|
5
|
+
const useDefaultProps = require("../hooks/useDefaultProps.cjs");
|
|
6
|
+
const useUniqueId = require("../hooks/useUniqueId.cjs");
|
|
7
|
+
const TableSection_styles = require("./TableSection.styles.cjs");
|
|
8
|
+
const Section = require("../Section/Section.cjs");
|
|
9
|
+
const HvTableSection = React.forwardRef(
|
|
10
|
+
(props, ref) => {
|
|
11
|
+
const {
|
|
12
|
+
id,
|
|
13
|
+
classes: classesProp,
|
|
14
|
+
children,
|
|
15
|
+
...others
|
|
16
|
+
} = useDefaultProps.useDefaultProps("HvTableSection", props);
|
|
17
|
+
const { classes } = TableSection_styles.useClasses(classesProp);
|
|
18
|
+
const elementId = useUniqueId.useUniqueId(id, "hvTableSection");
|
|
19
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Section.HvSection, { id: elementId, ref, classes, ...others, children });
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
exports.tableSectionClasses = TableSection_styles.staticClasses;
|
|
23
|
+
exports.HvTableSection = HvTableSection;
|
|
24
|
+
//# sourceMappingURL=TableSection.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableSection.cjs","sources":["../../../src/TableSection/TableSection.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { ExtractNames } from \"../utils/classes\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { staticClasses, useClasses } from \"./TableSection.styles\";\nimport { HvSection, HvSectionProps } from \"../Section\";\n\nexport { staticClasses as tableSectionClasses };\n\nexport type HvTableSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTableSectionProps extends HvSectionProps {}\n\n/**\n * The `TableSection` component is a wrapper for the `Section` component that applies\n * specific stylings for tables that follow the latest DS specifications.\n */\nexport const HvTableSection = forwardRef<HTMLDivElement, HvTableSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n children,\n ...others\n } = useDefaultProps(\"HvTableSection\", props);\n\n const { classes } = useClasses(classesProp);\n const elementId = useUniqueId(id, \"hvTableSection\");\n\n return (\n <HvSection id={elementId} ref={ref} classes={classes} {...others}>\n {children}\n </HvSection>\n );\n }\n);\n"],"names":["forwardRef","useDefaultProps","useClasses","useUniqueId","jsx","HvSection"],"mappings":";;;;;;;;AAkBO,MAAM,iBAAiBA,MAAA;AAAA,EAC5B,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,IACDC,gBAAgB,gBAAA,kBAAkB,KAAK;AAE3C,UAAM,EAAE,QAAA,IAAYC,oBAAA,WAAW,WAAW;AACpC,UAAA,YAAYC,YAAAA,YAAY,IAAI,gBAAgB;AAGhD,WAAAC,+BAACC,QAAAA,aAAU,IAAI,WAAW,KAAU,SAAmB,GAAG,QACvD,SACH,CAAA;AAAA,EAEJ;AACF;;;"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const uikitStyles = require("@hitachivantara/uikit-styles");
|
|
4
|
+
const classes = require("../utils/classes.cjs");
|
|
5
|
+
const Section_styles = require("../Section/Section.styles.cjs");
|
|
6
|
+
require("../Section/Section.cjs");
|
|
7
|
+
const TableContainer_styles = require("../Table/TableContainer/TableContainer.styles.cjs");
|
|
8
|
+
require("../Table/TableContainer/TableContainer.cjs");
|
|
9
|
+
const TableHeader_styles = require("../Table/TableHeader/TableHeader.styles.cjs");
|
|
10
|
+
require("../Table/TableHeader/TableHeader.cjs");
|
|
11
|
+
const TableCell_styles = require("../Table/TableCell/TableCell.styles.cjs");
|
|
12
|
+
require("../Table/TableCell/TableCell.cjs");
|
|
13
|
+
const BulkActions_styles = require("../BulkActions/BulkActions.styles.cjs");
|
|
14
|
+
require("@emotion/react/jsx-runtime");
|
|
15
|
+
const Pagination_styles = require("../Pagination/Pagination.styles.cjs");
|
|
16
|
+
require("react");
|
|
17
|
+
require("@mui/material/Hidden");
|
|
18
|
+
require("@hitachivantara/uikit-react-icons");
|
|
19
|
+
const { staticClasses, useClasses } = classes.createClasses("HvTableSection", {
|
|
20
|
+
root: {
|
|
21
|
+
padding: 0
|
|
22
|
+
},
|
|
23
|
+
header: {
|
|
24
|
+
padding: uikitStyles.theme.spacing("xs", "xs", "xs", "sm"),
|
|
25
|
+
borderBottom: `1px solid ${uikitStyles.theme.colors.atmo3}`,
|
|
26
|
+
[`&.${Section_styles.staticClasses.raisedHeader}`]: {
|
|
27
|
+
"+ div": {
|
|
28
|
+
paddingTop: `0`
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
actions: {
|
|
33
|
+
right: uikitStyles.theme.space.sm
|
|
34
|
+
},
|
|
35
|
+
content: {
|
|
36
|
+
marginTop: 0,
|
|
37
|
+
padding: 0,
|
|
38
|
+
[`&&`]: {
|
|
39
|
+
paddingTop: 0
|
|
40
|
+
},
|
|
41
|
+
[`& .${TableContainer_styles.staticClasses.root}`]: {
|
|
42
|
+
paddingBottom: 0,
|
|
43
|
+
borderRadius: `${uikitStyles.theme.radii.round} ${uikitStyles.theme.radii.round} 0 0`
|
|
44
|
+
},
|
|
45
|
+
[`& .${TableHeader_styles.staticClasses.head}`]: {
|
|
46
|
+
backgroundColor: uikitStyles.theme.colors.atmo2,
|
|
47
|
+
borderBottomColor: uikitStyles.theme.colors.atmo3,
|
|
48
|
+
[`&.${TableHeader_styles.staticClasses.variantCheckbox}`]: {
|
|
49
|
+
borderRight: "none"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
[`& .${TableCell_styles.staticClasses.root}`]: {
|
|
53
|
+
borderBottomColor: uikitStyles.theme.colors.atmo3
|
|
54
|
+
},
|
|
55
|
+
[`& .${TableCell_styles.staticClasses.variantCheckbox}`]: {
|
|
56
|
+
borderRight: "none"
|
|
57
|
+
},
|
|
58
|
+
[`& .${BulkActions_styles.staticClasses.root}`]: {
|
|
59
|
+
marginBottom: 0,
|
|
60
|
+
border: "none",
|
|
61
|
+
borderBottom: `1px solid ${uikitStyles.theme.colors.atmo3}`,
|
|
62
|
+
padding: uikitStyles.theme.spacing("xs", "sm"),
|
|
63
|
+
borderRadius: `${uikitStyles.theme.radii.round} ${uikitStyles.theme.radii.round} 0 0`
|
|
64
|
+
},
|
|
65
|
+
[`& .${Pagination_styles.staticClasses.root}`]: {
|
|
66
|
+
margin: 0,
|
|
67
|
+
backgroundColor: uikitStyles.theme.colors.atmo2,
|
|
68
|
+
padding: uikitStyles.theme.space.xs,
|
|
69
|
+
borderRadius: `0 0 ${uikitStyles.theme.radii.round} ${uikitStyles.theme.radii.round}`
|
|
70
|
+
},
|
|
71
|
+
[`& .${Pagination_styles.staticClasses.pageSizeOptions}`]: {
|
|
72
|
+
left: uikitStyles.theme.space.sm
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
hidden: {},
|
|
76
|
+
raisedHeader: {},
|
|
77
|
+
spaceTop: {}
|
|
78
|
+
});
|
|
79
|
+
exports.staticClasses = staticClasses;
|
|
80
|
+
exports.useClasses = useClasses;
|
|
81
|
+
//# sourceMappingURL=TableSection.styles.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableSection.styles.cjs","sources":["../../../src/TableSection/TableSection.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { bulkActionsClasses } from \"../BulkActions\";\nimport { paginationClasses } from \"../Pagination\";\nimport { sectionClasses } from \"../Section\";\n\nimport { tableCellClasses } from \"../Table/TableCell\";\nimport { tableContainerClasses } from \"../Table/TableContainer\";\nimport { tableHeaderClasses } from \"../Table/TableHeader\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTableSection\", {\n root: {\n padding: 0,\n },\n header: {\n padding: theme.spacing(\"xs\", \"xs\", \"xs\", \"sm\"),\n borderBottom: `1px solid ${theme.colors.atmo3}`,\n [`&.${sectionClasses.raisedHeader}`]: {\n \"+ div\": {\n paddingTop: `0`,\n },\n },\n },\n actions: {\n right: theme.space.sm,\n },\n content: {\n marginTop: 0,\n padding: 0,\n [`&&`]: {\n paddingTop: 0,\n },\n [`& .${tableContainerClasses.root}`]: {\n paddingBottom: 0,\n borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`,\n },\n [`& .${tableHeaderClasses.head}`]: {\n backgroundColor: theme.colors.atmo2,\n borderBottomColor: theme.colors.atmo3,\n [`&.${tableHeaderClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n },\n [`& .${tableCellClasses.root}`]: {\n borderBottomColor: theme.colors.atmo3,\n },\n [`& .${tableCellClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n [`& .${bulkActionsClasses.root}`]: {\n marginBottom: 0,\n border: \"none\",\n borderBottom: `1px solid ${theme.colors.atmo3}`,\n padding: theme.spacing(\"xs\", \"sm\"),\n borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`,\n },\n [`& .${paginationClasses.root}`]: {\n margin: 0,\n backgroundColor: theme.colors.atmo2,\n padding: theme.space.xs,\n borderRadius: `0 0 ${theme.radii.round} ${theme.radii.round}`,\n },\n [`& .${paginationClasses.pageSizeOptions}`]: {\n left: theme.space.sm,\n },\n },\n hidden: {},\n raisedHeader: {},\n spaceTop: {},\n});\n"],"names":["createClasses","theme","sectionClasses","tableContainerClasses","tableHeaderClasses","tableCellClasses","bulkActionsClasses","paginationClasses"],"mappings":";;;;;;;;;;;;;;;;;;AAYO,MAAM,EAAE,eAAe,eAAeA,QAAAA,cAAc,kBAAkB;AAAA,EAC3E,MAAM;AAAA,IACJ,SAAS;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACN,SAASC,YAAM,MAAA,QAAQ,MAAM,MAAM,MAAM,IAAI;AAAA,IAC7C,cAAc,aAAaA,YAAM,MAAA,OAAO,KAAK;AAAA,IAC7C,CAAC,KAAKC,6BAAe,YAAY,EAAE,GAAG;AAAA,MACpC,SAAS;AAAA,QACP,YAAY;AAAA,MACd;AAAA,IACF;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,OAAOD,YAAAA,MAAM,MAAM;AAAA,EACrB;AAAA,EACA,SAAS;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA,IACT,CAAC,IAAI,GAAG;AAAA,MACN,YAAY;AAAA,IACd;AAAA,IACA,CAAC,MAAME,oCAAsB,IAAI,EAAE,GAAG;AAAA,MACpC,eAAe;AAAA,MACf,cAAc,GAAGF,YAAM,MAAA,MAAM,KAAK,IAAIA,kBAAM,MAAM,KAAK;AAAA,IACzD;AAAA,IACA,CAAC,MAAMG,iCAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,iBAAiBH,YAAAA,MAAM,OAAO;AAAA,MAC9B,mBAAmBA,YAAAA,MAAM,OAAO;AAAA,MAChC,CAAC,KAAKG,iCAAmB,eAAe,EAAE,GAAG;AAAA,QAC3C,aAAa;AAAA,MACf;AAAA,IACF;AAAA,IACA,CAAC,MAAMC,+BAAiB,IAAI,EAAE,GAAG;AAAA,MAC/B,mBAAmBJ,YAAAA,MAAM,OAAO;AAAA,IAClC;AAAA,IACA,CAAC,MAAMI,+BAAiB,eAAe,EAAE,GAAG;AAAA,MAC1C,aAAa;AAAA,IACf;AAAA,IACA,CAAC,MAAMC,iCAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,cAAc;AAAA,MACd,QAAQ;AAAA,MACR,cAAc,aAAaL,YAAM,MAAA,OAAO,KAAK;AAAA,MAC7C,SAASA,YAAA,MAAM,QAAQ,MAAM,IAAI;AAAA,MACjC,cAAc,GAAGA,YAAM,MAAA,MAAM,KAAK,IAAIA,kBAAM,MAAM,KAAK;AAAA,IACzD;AAAA,IACA,CAAC,MAAMM,gCAAkB,IAAI,EAAE,GAAG;AAAA,MAChC,QAAQ;AAAA,MACR,iBAAiBN,YAAAA,MAAM,OAAO;AAAA,MAC9B,SAASA,YAAAA,MAAM,MAAM;AAAA,MACrB,cAAc,OAAOA,YAAAA,MAAM,MAAM,KAAK,IAAIA,YAAA,MAAM,MAAM,KAAK;AAAA,IAC7D;AAAA,IACA,CAAC,MAAMM,gCAAkB,eAAe,EAAE,GAAG;AAAA,MAC3C,MAAMN,YAAAA,MAAM,MAAM;AAAA,IACpB;AAAA,EACF;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,cAAc,CAAC;AAAA,EACf,UAAU,CAAC;AACb,CAAC;;;"}
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -302,6 +302,8 @@ const TreeView$1 = require("./VerticalNavigation/TreeView/TreeView.cjs");
|
|
|
302
302
|
const TreeViewItem_styles = require("./VerticalNavigation/TreeView/TreeViewItem.styles.cjs");
|
|
303
303
|
const TreeViewItem = require("./VerticalNavigation/TreeView/TreeViewItem.cjs");
|
|
304
304
|
const VerticalNavigationContext = require("./VerticalNavigation/VerticalNavigationContext.cjs");
|
|
305
|
+
const TableSection_styles = require("./TableSection/TableSection.styles.cjs");
|
|
306
|
+
const TableSection = require("./TableSection/TableSection.cjs");
|
|
305
307
|
const uikitReactShared = require("@hitachivantara/uikit-react-shared");
|
|
306
308
|
Object.defineProperty(exports, "ds3", {
|
|
307
309
|
enumerable: true,
|
|
@@ -673,6 +675,8 @@ exports.HvVerticalNavigationTreeView = TreeView$1.HvVerticalNavigationTreeView;
|
|
|
673
675
|
exports.treeViewItemClasses = TreeViewItem_styles.staticClasses;
|
|
674
676
|
exports.HvVerticalNavigationTreeViewItem = TreeViewItem.HvVerticalNavigationTreeViewItem;
|
|
675
677
|
exports.VerticalNavigationContext = VerticalNavigationContext.VerticalNavigationContext;
|
|
678
|
+
exports.tableSectionClasses = TableSection_styles.staticClasses;
|
|
679
|
+
exports.HvTableSection = TableSection.HvTableSection;
|
|
676
680
|
Object.defineProperty(exports, "EmotionContext", {
|
|
677
681
|
enumerable: true,
|
|
678
682
|
get: () => uikitReactShared.EmotionContext
|
package/dist/cjs/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -6,27 +6,24 @@ import { staticClasses } from "./ListItem.styles.js";
|
|
|
6
6
|
import HvListContext from "../ListContext/ListContext.js";
|
|
7
7
|
import { HvFocus } from "../../Focus/Focus.js";
|
|
8
8
|
const applyClassNameAndStateToElement = (element, selected, disabled, onClick, className) => {
|
|
9
|
-
if (element
|
|
10
|
-
return
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
return null;
|
|
9
|
+
if (element == null)
|
|
10
|
+
return null;
|
|
11
|
+
return React__default.cloneElement(element, {
|
|
12
|
+
className,
|
|
13
|
+
checked: !!selected,
|
|
14
|
+
disabled,
|
|
15
|
+
onChange: onClick
|
|
16
|
+
});
|
|
18
17
|
};
|
|
19
18
|
const applyClassNameToElement = (element, className) => {
|
|
20
|
-
if (element
|
|
21
|
-
return
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
return null;
|
|
19
|
+
if (element == null)
|
|
20
|
+
return null;
|
|
21
|
+
return React__default.cloneElement(element, {
|
|
22
|
+
className
|
|
23
|
+
});
|
|
26
24
|
};
|
|
27
25
|
const HvListItem = forwardRef((props, ref) => {
|
|
28
26
|
const {
|
|
29
|
-
id,
|
|
30
27
|
classes: classesProp,
|
|
31
28
|
className,
|
|
32
29
|
role,
|
|
@@ -50,14 +47,14 @@ const HvListItem = forwardRef((props, ref) => {
|
|
|
50
47
|
disableGutters: disableGuttersContext,
|
|
51
48
|
interactive: interactiveContext
|
|
52
49
|
} = useContext(HvListContext);
|
|
53
|
-
const condensed = condensedProp
|
|
54
|
-
const disableGutters = disableGuttersProp
|
|
55
|
-
const interactive = interactiveProp
|
|
56
|
-
const
|
|
50
|
+
const condensed = condensedProp ?? condensedContext;
|
|
51
|
+
const disableGutters = disableGuttersProp ?? disableGuttersContext;
|
|
52
|
+
const interactive = interactiveProp ?? interactiveContext;
|
|
53
|
+
const handleClick = useCallback(
|
|
57
54
|
(evt) => {
|
|
58
|
-
if (
|
|
59
|
-
|
|
60
|
-
|
|
55
|
+
if (disabled)
|
|
56
|
+
return;
|
|
57
|
+
onClick?.(evt);
|
|
61
58
|
},
|
|
62
59
|
[disabled, onClick]
|
|
63
60
|
);
|
|
@@ -66,7 +63,7 @@ const HvListItem = forwardRef((props, ref) => {
|
|
|
66
63
|
startAdornment,
|
|
67
64
|
selected,
|
|
68
65
|
disabled,
|
|
69
|
-
|
|
66
|
+
handleClick,
|
|
70
67
|
cx(
|
|
71
68
|
classes.startAdornment,
|
|
72
69
|
{ [classes.disabled]: disabled },
|
|
@@ -78,7 +75,7 @@ const HvListItem = forwardRef((props, ref) => {
|
|
|
78
75
|
classes?.startAdornment,
|
|
79
76
|
classes?.disabled,
|
|
80
77
|
disabled,
|
|
81
|
-
|
|
78
|
+
handleClick,
|
|
82
79
|
selected,
|
|
83
80
|
startAdornment
|
|
84
81
|
]
|
|
@@ -100,11 +97,10 @@ const HvListItem = forwardRef((props, ref) => {
|
|
|
100
97
|
} : {};
|
|
101
98
|
const listItem = (
|
|
102
99
|
// For later: this should only have an onClick event if interactive and has the appropriate role.
|
|
103
|
-
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
100
|
+
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events
|
|
104
101
|
/* @__PURE__ */ jsxs(
|
|
105
102
|
"li",
|
|
106
103
|
{
|
|
107
|
-
id,
|
|
108
104
|
ref,
|
|
109
105
|
role,
|
|
110
106
|
value,
|
|
@@ -114,16 +110,15 @@ const HvListItem = forwardRef((props, ref) => {
|
|
|
114
110
|
[classes.gutters]: !disableGutters,
|
|
115
111
|
[classes.condensed]: condensed,
|
|
116
112
|
[classes.interactive]: interactive,
|
|
117
|
-
[classes.selected]:
|
|
118
|
-
[classes.disabled]:
|
|
113
|
+
[classes.selected]: selected || props["aria-selected"],
|
|
114
|
+
[classes.disabled]: disabled || props["aria-disabled"],
|
|
119
115
|
[classes.withStartAdornment]: startAdornment != null,
|
|
120
116
|
[classes.withEndAdornment]: endAdornment != null
|
|
121
117
|
},
|
|
122
118
|
className
|
|
123
119
|
),
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
},
|
|
120
|
+
tabIndex: interactive ? void 0 : tabIndex,
|
|
121
|
+
onClick: handleClick,
|
|
127
122
|
...roleOptionAriaProps,
|
|
128
123
|
...others,
|
|
129
124
|
children: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.js","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { HvBaseProps } from \"../../types/generic\";\nimport { useDefaultProps } from \"../../hooks/useDefaultProps\";\nimport { ExtractNames } from \"../../utils/classes\";\nimport { HvFocus } from \"../../Focus\";\n\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element,\n selected,\n disabled,\n onClick
|
|
1
|
+
{"version":3,"file":"ListItem.js","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { HvBaseProps } from \"../../types/generic\";\nimport { useDefaultProps } from \"../../hooks/useDefaultProps\";\nimport { ExtractNames } from \"../../utils/classes\";\nimport { HvFocus } from \"../../Focus\";\n\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element: any,\n selected: boolean | undefined,\n disabled: boolean | undefined,\n onClick: React.MouseEventHandler<HTMLLIElement>,\n className?: string\n) => {\n if (element == null) return null;\n\n return React.cloneElement(element, {\n className,\n checked: !!selected,\n disabled,\n onChange: onClick,\n });\n};\n\nconst applyClassNameToElement = (element, className?: string) => {\n if (element == null) return null;\n\n return React.cloneElement(element, {\n className,\n });\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = forwardRef<any, HvListItemProps>((props, ref) => {\n const {\n classes: classesProp,\n className,\n role,\n value,\n selected,\n disabled,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n } = useDefaultProps(\"HvListItem\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n } = useContext(HvListContext);\n\n const condensed = condensedProp ?? condensedContext;\n const disableGutters = disableGuttersProp ?? disableGuttersContext;\n const interactive = interactiveProp ?? interactiveContext;\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLLIElement>>(\n (evt) => {\n if (disabled) return;\n onClick?.(evt);\n },\n [disabled, onClick]\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleClick,\n cx(\n classes.startAdornment,\n { [classes.disabled]: disabled },\n React.isValidElement(startAdornment)\n ? startAdornment.props.className\n : undefined\n )\n ),\n [\n cx,\n classes?.startAdornment,\n classes?.disabled,\n disabled,\n handleClick,\n selected,\n startAdornment,\n ]\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n cx(\n classes.endAdornment,\n { [classes.disabled]: disabled },\n React.isValidElement(endAdornment)\n ? endAdornment.props.className\n : undefined\n )\n ),\n [cx, classes?.endAdornment, classes?.disabled, disabled, endAdornment]\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n // For later: this should only have an onClick event if interactive and has the appropriate role.\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events\n <li\n ref={ref}\n role={role}\n value={value}\n className={cx(\n classes.root,\n {\n [classes.gutters]: !disableGutters,\n [classes.condensed]: condensed,\n [classes.interactive]: interactive,\n [classes.selected]: selected || props[\"aria-selected\"],\n [classes.disabled]: disabled || props[\"aria-disabled\"],\n [classes.withStartAdornment]: startAdornment != null,\n [classes.withEndAdornment]: endAdornment != null,\n },\n className\n )}\n tabIndex={interactive ? undefined : tabIndex}\n onClick={handleClick}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </li>\n );\n\n return interactive ? (\n <HvFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: classes.focus }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </HvFocus>\n ) : (\n listItem\n );\n});\n"],"names":["React"],"mappings":"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"}
|
package/dist/esm/Panel/Panel.js
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
2
3
|
import { useDefaultProps } from "../hooks/useDefaultProps.js";
|
|
3
4
|
import { useClasses } from "./Panel.styles.js";
|
|
4
5
|
import { staticClasses } from "./Panel.styles.js";
|
|
5
|
-
const HvPanel = (
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
6
|
+
const HvPanel = forwardRef(
|
|
7
|
+
(props, ref) => {
|
|
8
|
+
const {
|
|
9
|
+
className,
|
|
10
|
+
classes: classesProp,
|
|
11
|
+
children,
|
|
12
|
+
...others
|
|
13
|
+
} = useDefaultProps("HvPanel", props);
|
|
14
|
+
const { classes, cx } = useClasses(classesProp);
|
|
15
|
+
return /* @__PURE__ */ jsx("div", { ref, className: cx(classes.root, className), ...others, children });
|
|
16
|
+
}
|
|
17
|
+
);
|
|
16
18
|
export {
|
|
17
19
|
HvPanel,
|
|
18
20
|
staticClasses as panelClasses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Panel.js","sources":["../../../src/Panel/Panel.tsx"],"sourcesContent":["import { useDefaultProps } from \"../hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"../types/generic\";\n\nimport { ExtractNames } from \"../utils/classes\";\n\nimport { staticClasses, useClasses } from \"./Panel.styles\";\n\nexport { staticClasses as panelClasses };\n\nexport type HvPanelClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPanelProps extends HvBaseProps {\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvPanelClasses;\n}\n\n/**\n * A panel is a container used in a variety of patterns (e.g. dropdown, filter group, details section).\n * It can be horizontal or vertical and its size is defined by its content and how it relates to surrounding patterns.\n * Regardless of its content, a panel look and feel should be consistent.\n */\nexport const HvPanel = (props
|
|
1
|
+
{"version":3,"file":"Panel.js","sources":["../../../src/Panel/Panel.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"../types/generic\";\n\nimport { ExtractNames } from \"../utils/classes\";\n\nimport { staticClasses, useClasses } from \"./Panel.styles\";\n\nexport { staticClasses as panelClasses };\n\nexport type HvPanelClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPanelProps extends HvBaseProps {\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvPanelClasses;\n}\n\n/**\n * A panel is a container used in a variety of patterns (e.g. dropdown, filter group, details section).\n * It can be horizontal or vertical and its size is defined by its content and how it relates to surrounding patterns.\n * Regardless of its content, a panel look and feel should be consistent.\n */\nexport const HvPanel = forwardRef<HTMLDivElement, HvPanelProps>(\n (props, ref) => {\n const {\n className,\n classes: classesProp,\n children,\n ...others\n } = useDefaultProps(\"HvPanel\", props);\n const { classes, cx } = useClasses(classesProp);\n\n return (\n <div ref={ref} className={cx(classes.root, className)} {...others}>\n {children}\n </div>\n );\n }\n);\n"],"names":[],"mappings":";;;;;AAwBO,MAAM,UAAU;AAAA,EACrB,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,IACD,gBAAgB,WAAW,KAAK;AACpC,UAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAG5C,WAAA,oBAAC,OAAI,EAAA,KAAU,WAAW,GAAG,QAAQ,MAAM,SAAS,GAAI,GAAG,QACxD,SACH,CAAA;AAAA,EAEJ;AACF;"}
|
|
@@ -21,6 +21,7 @@ const HvSection = forwardRef(
|
|
|
21
21
|
actions,
|
|
22
22
|
onToggle,
|
|
23
23
|
expandButtonProps,
|
|
24
|
+
raisedHeader,
|
|
24
25
|
children,
|
|
25
26
|
...others
|
|
26
27
|
} = useDefaultProps("HvSection", props);
|
|
@@ -40,31 +41,42 @@ const HvSection = forwardRef(
|
|
|
40
41
|
className: cx(classes.root, className),
|
|
41
42
|
...others,
|
|
42
43
|
children: [
|
|
43
|
-
/* @__PURE__ */ jsxs(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
{
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
44
|
+
(title || actions || expandable) && /* @__PURE__ */ jsxs(
|
|
45
|
+
"div",
|
|
46
|
+
{
|
|
47
|
+
className: cx(classes.header, {
|
|
48
|
+
[classes.raisedHeader]: raisedHeader && isOpen
|
|
49
|
+
}),
|
|
50
|
+
children: [
|
|
51
|
+
expandable && /* @__PURE__ */ jsx(
|
|
52
|
+
HvButton,
|
|
53
|
+
{
|
|
54
|
+
icon: true,
|
|
55
|
+
onClick: (event) => {
|
|
56
|
+
setIsOpen((o) => !o);
|
|
57
|
+
onToggle?.(event, !isOpen);
|
|
58
|
+
},
|
|
59
|
+
"aria-expanded": isOpen,
|
|
60
|
+
"aria-controls": contentId,
|
|
61
|
+
"aria-label": isOpen ? "Collapse" : "Expand",
|
|
62
|
+
...expandButtonProps,
|
|
63
|
+
children: isOpen ? /* @__PURE__ */ jsx(Up, {}) : /* @__PURE__ */ jsx(Down, {})
|
|
64
|
+
}
|
|
65
|
+
),
|
|
66
|
+
title,
|
|
67
|
+
/* @__PURE__ */ jsx("div", { className: classes.actions, children: actions })
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
),
|
|
62
71
|
/* @__PURE__ */ jsx(
|
|
63
72
|
"div",
|
|
64
73
|
{
|
|
65
74
|
id: contentId,
|
|
66
75
|
hidden: !isOpen,
|
|
67
|
-
className: cx(classes.content, {
|
|
76
|
+
className: cx(classes.content, {
|
|
77
|
+
[classes.hidden]: !showContent,
|
|
78
|
+
[classes.spaceTop]: !(title || actions || expandable)
|
|
79
|
+
}),
|
|
68
80
|
children
|
|
69
81
|
}
|
|
70
82
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Section.js","sources":["../../../src/Section/Section.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Down, Up } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { ExtractNames } from \"../utils/classes\";\nimport { HvButton, HvButtonProps } from \"../Button\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { setId } from \"../utils/setId\";\n\nimport { staticClasses, useClasses } from \"./Section.styles\";\n\nexport { staticClasses as sectionClasses };\n\nexport type HvSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvSectionProps\n extends Omit<HvBaseProps<HTMLDivElement>, \"title\"> {\n /** The title of the section */\n title?: React.ReactNode;\n /** Whether or not the section is expandable. */\n expandable?: boolean;\n /** Whether the section is open or not, if this property is defined the accordion must be fully controlled. */\n expanded?: boolean;\n /** When uncontrolled, defines the initial expanded state. */\n defaultExpanded?: boolean;\n /** Section actions */\n actions?: React.ReactNode;\n /** Section onExpand callback */\n onToggle?: (\n event: React.MouseEvent<HTMLButtonElement>,\n open: boolean\n ) => void;\n /** Props to be passed to the expand button */\n expandButtonProps?: HvButtonProps;\n /** A Jss Object used to override or extend the styles applied to the empty state component. */\n classes?: HvSectionClasses;\n}\n\n/**\n * Sections allow grouping information on a page under the same topic.\n */\nexport const HvSection = forwardRef<HTMLDivElement, HvSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n className,\n title,\n expandable,\n expanded,\n defaultExpanded = true,\n actions,\n onToggle,\n expandButtonProps,\n children,\n ...others\n } = useDefaultProps(\"HvSection\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const [isOpen, setIsOpen] = useControlled(\n expanded,\n Boolean(defaultExpanded)\n );\n\n const elementId = useUniqueId(id, \"hvSection\");\n const contentId = setId(elementId, \"content\");\n\n const showContent = expandable ? !!isOpen : true;\n\n return (\n <div\n ref={ref}\n id={elementId}\n className={cx(classes.root, className)}\n {...others}\n >\n <div
|
|
1
|
+
{"version":3,"file":"Section.js","sources":["../../../src/Section/Section.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Down, Up } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { ExtractNames } from \"../utils/classes\";\nimport { HvButton, HvButtonProps } from \"../Button\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { setId } from \"../utils/setId\";\n\nimport { staticClasses, useClasses } from \"./Section.styles\";\n\nexport { staticClasses as sectionClasses };\n\nexport type HvSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvSectionProps\n extends Omit<HvBaseProps<HTMLDivElement>, \"title\"> {\n /** The title of the section */\n title?: React.ReactNode;\n /** Whether or not the section is expandable. */\n expandable?: boolean;\n /** Whether the section is open or not, if this property is defined the accordion must be fully controlled. */\n expanded?: boolean;\n /** When uncontrolled, defines the initial expanded state. */\n defaultExpanded?: boolean;\n /** Section actions */\n actions?: React.ReactNode;\n /** Section onExpand callback */\n onToggle?: (\n event: React.MouseEvent<HTMLButtonElement>,\n open: boolean\n ) => void;\n /** Props to be passed to the expand button */\n expandButtonProps?: HvButtonProps;\n /** Determines whether or not the header has a shadow on the bottom border. */\n raisedHeader?: boolean;\n /** A Jss Object used to override or extend the styles applied to the empty state component. */\n classes?: HvSectionClasses;\n}\n\n/**\n * Sections allow grouping information on a page under the same topic.\n */\nexport const HvSection = forwardRef<HTMLDivElement, HvSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n className,\n title,\n expandable,\n expanded,\n defaultExpanded = true,\n actions,\n onToggle,\n expandButtonProps,\n raisedHeader,\n children,\n ...others\n } = useDefaultProps(\"HvSection\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const [isOpen, setIsOpen] = useControlled(\n expanded,\n Boolean(defaultExpanded)\n );\n\n const elementId = useUniqueId(id, \"hvSection\");\n const contentId = setId(elementId, \"content\");\n\n const showContent = expandable ? !!isOpen : true;\n\n return (\n <div\n ref={ref}\n id={elementId}\n className={cx(classes.root, className)}\n {...others}\n >\n {(title || actions || expandable) && (\n <div\n className={cx(classes.header, {\n [classes.raisedHeader]: raisedHeader && isOpen,\n })}\n >\n {expandable && (\n <HvButton\n icon\n onClick={(event) => {\n setIsOpen((o) => !o);\n onToggle?.(event, !isOpen);\n }}\n aria-expanded={isOpen}\n aria-controls={contentId}\n aria-label={isOpen ? \"Collapse\" : \"Expand\"}\n {...expandButtonProps}\n >\n {isOpen ? <Up /> : <Down />}\n </HvButton>\n )}\n {title}\n <div className={classes.actions}>{actions}</div>\n </div>\n )}\n <div\n id={contentId}\n hidden={!isOpen}\n className={cx(classes.content, {\n [classes.hidden]: !showContent,\n [classes.spaceTop]: !(title || actions || expandable),\n })}\n >\n {children}\n </div>\n </div>\n );\n }\n);\n"],"names":[],"mappings":";;;;;;;;;;AA6CO,MAAM,YAAY;AAAA,EACvB,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,kBAAkB;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IAAA,IACD,gBAAgB,aAAa,KAAK;AAEtC,UAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAExC,UAAA,CAAC,QAAQ,SAAS,IAAI;AAAA,MAC1B;AAAA,MACA,QAAQ,eAAe;AAAA,IAAA;AAGnB,UAAA,YAAY,YAAY,IAAI,WAAW;AACvC,UAAA,YAAY,MAAM,WAAW,SAAS;AAE5C,UAAM,cAAc,aAAa,CAAC,CAAC,SAAS;AAG1C,WAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,IAAI;AAAA,QACJ,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,QACpC,GAAG;AAAA,QAEF,UAAA;AAAA,WAAA,SAAS,WAAW,eACpB;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAW,GAAG,QAAQ,QAAQ;AAAA,gBAC5B,CAAC,QAAQ,YAAY,GAAG,gBAAgB;AAAA,cAAA,CACzC;AAAA,cAEA,UAAA;AAAA,gBACC,cAAA;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,MAAI;AAAA,oBACJ,SAAS,CAAC,UAAU;AACR,gCAAA,CAAC,MAAM,CAAC,CAAC;AACR,iCAAA,OAAO,CAAC,MAAM;AAAA,oBAC3B;AAAA,oBACA,iBAAe;AAAA,oBACf,iBAAe;AAAA,oBACf,cAAY,SAAS,aAAa;AAAA,oBACjC,GAAG;AAAA,oBAEH,UAAS,SAAA,oBAAC,IAAG,CAAA,CAAA,wBAAM,MAAK,EAAA;AAAA,kBAAA;AAAA,gBAC3B;AAAA,gBAED;AAAA,gBACA,oBAAA,OAAA,EAAI,WAAW,QAAQ,SAAU,UAAQ,SAAA;AAAA,cAAA;AAAA,YAAA;AAAA,UAC5C;AAAA,UAEF;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,cACJ,QAAQ,CAAC;AAAA,cACT,WAAW,GAAG,QAAQ,SAAS;AAAA,gBAC7B,CAAC,QAAQ,MAAM,GAAG,CAAC;AAAA,gBACnB,CAAC,QAAQ,QAAQ,GAAG,EAAE,SAAS,WAAW;AAAA,cAAA,CAC3C;AAAA,cAEA;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
|
|
@@ -5,7 +5,6 @@ const { staticClasses, useClasses } = createClasses("HvSection", {
|
|
|
5
5
|
width: "100%",
|
|
6
6
|
display: "flex",
|
|
7
7
|
flexDirection: "column",
|
|
8
|
-
padding: theme.space.sm,
|
|
9
8
|
backgroundColor: theme.colors.atmo1,
|
|
10
9
|
borderRadius: theme.radii.round,
|
|
11
10
|
border: `1px solid ${theme.colors.atmo4}`
|
|
@@ -15,16 +14,27 @@ const { staticClasses, useClasses } = createClasses("HvSection", {
|
|
|
15
14
|
display: "flex",
|
|
16
15
|
alignItems: "center",
|
|
17
16
|
position: "relative",
|
|
18
|
-
minHeight: theme.sizes.sm
|
|
17
|
+
minHeight: theme.sizes.sm,
|
|
18
|
+
padding: theme.space.sm
|
|
19
19
|
},
|
|
20
20
|
content: {
|
|
21
|
-
|
|
21
|
+
padding: theme.spacing(0, "sm", "sm", "sm")
|
|
22
|
+
},
|
|
23
|
+
spaceTop: {
|
|
24
|
+
paddingTop: theme.space.sm
|
|
22
25
|
},
|
|
23
26
|
actions: {
|
|
24
27
|
display: "flex",
|
|
25
28
|
gap: theme.space.xs,
|
|
26
29
|
position: "absolute",
|
|
27
30
|
right: 0
|
|
31
|
+
},
|
|
32
|
+
raisedHeader: {
|
|
33
|
+
zIndex: 1,
|
|
34
|
+
boxShadow: theme.colors.shadow,
|
|
35
|
+
"+ div": {
|
|
36
|
+
paddingTop: theme.space.sm
|
|
37
|
+
}
|
|
28
38
|
}
|
|
29
39
|
});
|
|
30
40
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Section.styles.js","sources":["../../../src/Section/Section.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvSection\", {\n root: {\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n
|
|
1
|
+
{"version":3,"file":"Section.styles.js","sources":["../../../src/Section/Section.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvSection\", {\n root: {\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n backgroundColor: theme.colors.atmo1,\n borderRadius: theme.radii.round,\n border: `1px solid ${theme.colors.atmo4}`,\n },\n hidden: { height: 0, display: \"none\" },\n header: {\n display: \"flex\",\n alignItems: \"center\",\n position: \"relative\",\n minHeight: theme.sizes.sm,\n padding: theme.space.sm,\n },\n content: {\n padding: theme.spacing(0, \"sm\", \"sm\", \"sm\"),\n },\n spaceTop: {\n paddingTop: theme.space.sm,\n },\n actions: {\n display: \"flex\",\n gap: theme.space.xs,\n position: \"absolute\",\n right: 0,\n },\n raisedHeader: {\n zIndex: 1,\n boxShadow: theme.colors.shadow,\n \"+ div\": {\n paddingTop: theme.space.sm,\n },\n },\n});\n"],"names":[],"mappings":";;AAIO,MAAM,EAAE,eAAe,eAAe,cAAc,aAAa;AAAA,EACtE,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,SAAS;AAAA,IACT,eAAe;AAAA,IACf,iBAAiB,MAAM,OAAO;AAAA,IAC9B,cAAc,MAAM,MAAM;AAAA,IAC1B,QAAQ,aAAa,MAAM,OAAO,KAAK;AAAA,EACzC;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG,SAAS,OAAO;AAAA,EACrC,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,WAAW,MAAM,MAAM;AAAA,IACvB,SAAS,MAAM,MAAM;AAAA,EACvB;AAAA,EACA,SAAS;AAAA,IACP,SAAS,MAAM,QAAQ,GAAG,MAAM,MAAM,IAAI;AAAA,EAC5C;AAAA,EACA,UAAU;AAAA,IACR,YAAY,MAAM,MAAM;AAAA,EAC1B;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,IACT,KAAK,MAAM,MAAM;AAAA,IACjB,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AAAA,EACA,cAAc;AAAA,IACZ,QAAQ;AAAA,IACR,WAAW,MAAM,OAAO;AAAA,IACxB,SAAS;AAAA,MACP,YAAY,MAAM,MAAM;AAAA,IAC1B;AAAA,EACF;AACF,CAAC;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
|
+
import { useDefaultProps } from "../hooks/useDefaultProps.js";
|
|
4
|
+
import { useUniqueId } from "../hooks/useUniqueId.js";
|
|
5
|
+
import { useClasses } from "./TableSection.styles.js";
|
|
6
|
+
import { staticClasses } from "./TableSection.styles.js";
|
|
7
|
+
import { HvSection } from "../Section/Section.js";
|
|
8
|
+
const HvTableSection = forwardRef(
|
|
9
|
+
(props, ref) => {
|
|
10
|
+
const {
|
|
11
|
+
id,
|
|
12
|
+
classes: classesProp,
|
|
13
|
+
children,
|
|
14
|
+
...others
|
|
15
|
+
} = useDefaultProps("HvTableSection", props);
|
|
16
|
+
const { classes } = useClasses(classesProp);
|
|
17
|
+
const elementId = useUniqueId(id, "hvTableSection");
|
|
18
|
+
return /* @__PURE__ */ jsx(HvSection, { id: elementId, ref, classes, ...others, children });
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
export {
|
|
22
|
+
HvTableSection,
|
|
23
|
+
staticClasses as tableSectionClasses
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=TableSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableSection.js","sources":["../../../src/TableSection/TableSection.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { ExtractNames } from \"../utils/classes\";\nimport { useDefaultProps } from \"../hooks/useDefaultProps\";\nimport { useUniqueId } from \"../hooks/useUniqueId\";\nimport { staticClasses, useClasses } from \"./TableSection.styles\";\nimport { HvSection, HvSectionProps } from \"../Section\";\n\nexport { staticClasses as tableSectionClasses };\n\nexport type HvTableSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTableSectionProps extends HvSectionProps {}\n\n/**\n * The `TableSection` component is a wrapper for the `Section` component that applies\n * specific stylings for tables that follow the latest DS specifications.\n */\nexport const HvTableSection = forwardRef<HTMLDivElement, HvTableSectionProps>(\n (props, ref) => {\n const {\n id,\n classes: classesProp,\n children,\n ...others\n } = useDefaultProps(\"HvTableSection\", props);\n\n const { classes } = useClasses(classesProp);\n const elementId = useUniqueId(id, \"hvTableSection\");\n\n return (\n <HvSection id={elementId} ref={ref} classes={classes} {...others}>\n {children}\n </HvSection>\n );\n }\n);\n"],"names":[],"mappings":";;;;;;;AAkBO,MAAM,iBAAiB;AAAA,EAC5B,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,IACD,gBAAgB,kBAAkB,KAAK;AAE3C,UAAM,EAAE,QAAA,IAAY,WAAW,WAAW;AACpC,UAAA,YAAY,YAAY,IAAI,gBAAgB;AAGhD,WAAA,oBAAC,aAAU,IAAI,WAAW,KAAU,SAAmB,GAAG,QACvD,SACH,CAAA;AAAA,EAEJ;AACF;"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { theme } from "@hitachivantara/uikit-styles";
|
|
2
|
+
import { createClasses } from "../utils/classes.js";
|
|
3
|
+
import { staticClasses as staticClasses$1 } from "../Section/Section.styles.js";
|
|
4
|
+
import "../Section/Section.js";
|
|
5
|
+
import { staticClasses as staticClasses$2 } from "../Table/TableContainer/TableContainer.styles.js";
|
|
6
|
+
import "../Table/TableContainer/TableContainer.js";
|
|
7
|
+
import { staticClasses as staticClasses$3 } from "../Table/TableHeader/TableHeader.styles.js";
|
|
8
|
+
import "../Table/TableHeader/TableHeader.js";
|
|
9
|
+
import { staticClasses as staticClasses$4 } from "../Table/TableCell/TableCell.styles.js";
|
|
10
|
+
import "../Table/TableCell/TableCell.js";
|
|
11
|
+
import { staticClasses as staticClasses$5 } from "../BulkActions/BulkActions.styles.js";
|
|
12
|
+
import "@emotion/react/jsx-runtime";
|
|
13
|
+
import { staticClasses as staticClasses$6 } from "../Pagination/Pagination.styles.js";
|
|
14
|
+
import "react";
|
|
15
|
+
import "@mui/material/Hidden";
|
|
16
|
+
import "@hitachivantara/uikit-react-icons";
|
|
17
|
+
const { staticClasses, useClasses } = createClasses("HvTableSection", {
|
|
18
|
+
root: {
|
|
19
|
+
padding: 0
|
|
20
|
+
},
|
|
21
|
+
header: {
|
|
22
|
+
padding: theme.spacing("xs", "xs", "xs", "sm"),
|
|
23
|
+
borderBottom: `1px solid ${theme.colors.atmo3}`,
|
|
24
|
+
[`&.${staticClasses$1.raisedHeader}`]: {
|
|
25
|
+
"+ div": {
|
|
26
|
+
paddingTop: `0`
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
actions: {
|
|
31
|
+
right: theme.space.sm
|
|
32
|
+
},
|
|
33
|
+
content: {
|
|
34
|
+
marginTop: 0,
|
|
35
|
+
padding: 0,
|
|
36
|
+
[`&&`]: {
|
|
37
|
+
paddingTop: 0
|
|
38
|
+
},
|
|
39
|
+
[`& .${staticClasses$2.root}`]: {
|
|
40
|
+
paddingBottom: 0,
|
|
41
|
+
borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`
|
|
42
|
+
},
|
|
43
|
+
[`& .${staticClasses$3.head}`]: {
|
|
44
|
+
backgroundColor: theme.colors.atmo2,
|
|
45
|
+
borderBottomColor: theme.colors.atmo3,
|
|
46
|
+
[`&.${staticClasses$3.variantCheckbox}`]: {
|
|
47
|
+
borderRight: "none"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
[`& .${staticClasses$4.root}`]: {
|
|
51
|
+
borderBottomColor: theme.colors.atmo3
|
|
52
|
+
},
|
|
53
|
+
[`& .${staticClasses$4.variantCheckbox}`]: {
|
|
54
|
+
borderRight: "none"
|
|
55
|
+
},
|
|
56
|
+
[`& .${staticClasses$5.root}`]: {
|
|
57
|
+
marginBottom: 0,
|
|
58
|
+
border: "none",
|
|
59
|
+
borderBottom: `1px solid ${theme.colors.atmo3}`,
|
|
60
|
+
padding: theme.spacing("xs", "sm"),
|
|
61
|
+
borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`
|
|
62
|
+
},
|
|
63
|
+
[`& .${staticClasses$6.root}`]: {
|
|
64
|
+
margin: 0,
|
|
65
|
+
backgroundColor: theme.colors.atmo2,
|
|
66
|
+
padding: theme.space.xs,
|
|
67
|
+
borderRadius: `0 0 ${theme.radii.round} ${theme.radii.round}`
|
|
68
|
+
},
|
|
69
|
+
[`& .${staticClasses$6.pageSizeOptions}`]: {
|
|
70
|
+
left: theme.space.sm
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
hidden: {},
|
|
74
|
+
raisedHeader: {},
|
|
75
|
+
spaceTop: {}
|
|
76
|
+
});
|
|
77
|
+
export {
|
|
78
|
+
staticClasses,
|
|
79
|
+
useClasses
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=TableSection.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableSection.styles.js","sources":["../../../src/TableSection/TableSection.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { bulkActionsClasses } from \"../BulkActions\";\nimport { paginationClasses } from \"../Pagination\";\nimport { sectionClasses } from \"../Section\";\n\nimport { tableCellClasses } from \"../Table/TableCell\";\nimport { tableContainerClasses } from \"../Table/TableContainer\";\nimport { tableHeaderClasses } from \"../Table/TableHeader\";\n\nimport { createClasses } from \"../utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTableSection\", {\n root: {\n padding: 0,\n },\n header: {\n padding: theme.spacing(\"xs\", \"xs\", \"xs\", \"sm\"),\n borderBottom: `1px solid ${theme.colors.atmo3}`,\n [`&.${sectionClasses.raisedHeader}`]: {\n \"+ div\": {\n paddingTop: `0`,\n },\n },\n },\n actions: {\n right: theme.space.sm,\n },\n content: {\n marginTop: 0,\n padding: 0,\n [`&&`]: {\n paddingTop: 0,\n },\n [`& .${tableContainerClasses.root}`]: {\n paddingBottom: 0,\n borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`,\n },\n [`& .${tableHeaderClasses.head}`]: {\n backgroundColor: theme.colors.atmo2,\n borderBottomColor: theme.colors.atmo3,\n [`&.${tableHeaderClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n },\n [`& .${tableCellClasses.root}`]: {\n borderBottomColor: theme.colors.atmo3,\n },\n [`& .${tableCellClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n [`& .${bulkActionsClasses.root}`]: {\n marginBottom: 0,\n border: \"none\",\n borderBottom: `1px solid ${theme.colors.atmo3}`,\n padding: theme.spacing(\"xs\", \"sm\"),\n borderRadius: `${theme.radii.round} ${theme.radii.round} 0 0`,\n },\n [`& .${paginationClasses.root}`]: {\n margin: 0,\n backgroundColor: theme.colors.atmo2,\n padding: theme.space.xs,\n borderRadius: `0 0 ${theme.radii.round} ${theme.radii.round}`,\n },\n [`& .${paginationClasses.pageSizeOptions}`]: {\n left: theme.space.sm,\n },\n },\n hidden: {},\n raisedHeader: {},\n spaceTop: {},\n});\n"],"names":["sectionClasses","tableContainerClasses","tableHeaderClasses","tableCellClasses","bulkActionsClasses","paginationClasses"],"mappings":";;;;;;;;;;;;;;;;AAYO,MAAM,EAAE,eAAe,eAAe,cAAc,kBAAkB;AAAA,EAC3E,MAAM;AAAA,IACJ,SAAS;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACN,SAAS,MAAM,QAAQ,MAAM,MAAM,MAAM,IAAI;AAAA,IAC7C,cAAc,aAAa,MAAM,OAAO,KAAK;AAAA,IAC7C,CAAC,KAAKA,gBAAe,YAAY,EAAE,GAAG;AAAA,MACpC,SAAS;AAAA,QACP,YAAY;AAAA,MACd;AAAA,IACF;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,OAAO,MAAM,MAAM;AAAA,EACrB;AAAA,EACA,SAAS;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA,IACT,CAAC,IAAI,GAAG;AAAA,MACN,YAAY;AAAA,IACd;AAAA,IACA,CAAC,MAAMC,gBAAsB,IAAI,EAAE,GAAG;AAAA,MACpC,eAAe;AAAA,MACf,cAAc,GAAG,MAAM,MAAM,KAAK,IAAI,MAAM,MAAM,KAAK;AAAA,IACzD;AAAA,IACA,CAAC,MAAMC,gBAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,iBAAiB,MAAM,OAAO;AAAA,MAC9B,mBAAmB,MAAM,OAAO;AAAA,MAChC,CAAC,KAAKA,gBAAmB,eAAe,EAAE,GAAG;AAAA,QAC3C,aAAa;AAAA,MACf;AAAA,IACF;AAAA,IACA,CAAC,MAAMC,gBAAiB,IAAI,EAAE,GAAG;AAAA,MAC/B,mBAAmB,MAAM,OAAO;AAAA,IAClC;AAAA,IACA,CAAC,MAAMA,gBAAiB,eAAe,EAAE,GAAG;AAAA,MAC1C,aAAa;AAAA,IACf;AAAA,IACA,CAAC,MAAMC,gBAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,cAAc;AAAA,MACd,QAAQ;AAAA,MACR,cAAc,aAAa,MAAM,OAAO,KAAK;AAAA,MAC7C,SAAS,MAAM,QAAQ,MAAM,IAAI;AAAA,MACjC,cAAc,GAAG,MAAM,MAAM,KAAK,IAAI,MAAM,MAAM,KAAK;AAAA,IACzD;AAAA,IACA,CAAC,MAAMC,gBAAkB,IAAI,EAAE,GAAG;AAAA,MAChC,QAAQ;AAAA,MACR,iBAAiB,MAAM,OAAO;AAAA,MAC9B,SAAS,MAAM,MAAM;AAAA,MACrB,cAAc,OAAO,MAAM,MAAM,KAAK,IAAI,MAAM,MAAM,KAAK;AAAA,IAC7D;AAAA,IACA,CAAC,MAAMA,gBAAkB,eAAe,EAAE,GAAG;AAAA,MAC3C,MAAM,MAAM,MAAM;AAAA,IACpB;AAAA,EACF;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,cAAc,CAAC;AAAA,EACf,UAAU,CAAC;AACb,CAAC;"}
|
package/dist/esm/index.js
CHANGED
|
@@ -300,6 +300,8 @@ import { HvVerticalNavigationTreeView } from "./VerticalNavigation/TreeView/Tree
|
|
|
300
300
|
import { staticClasses as staticClasses116 } from "./VerticalNavigation/TreeView/TreeViewItem.styles.js";
|
|
301
301
|
import { HvVerticalNavigationTreeViewItem } from "./VerticalNavigation/TreeView/TreeViewItem.js";
|
|
302
302
|
import { VerticalNavigationContext } from "./VerticalNavigation/VerticalNavigationContext.js";
|
|
303
|
+
import { staticClasses as staticClasses117 } from "./TableSection/TableSection.styles.js";
|
|
304
|
+
import { HvTableSection } from "./TableSection/TableSection.js";
|
|
303
305
|
import { EmotionContext, HvThemeContext, defaultCacheKey, defaultEmotionCache } from "@hitachivantara/uikit-react-shared";
|
|
304
306
|
export {
|
|
305
307
|
CellWithCheckBox,
|
|
@@ -421,6 +423,7 @@ export {
|
|
|
421
423
|
HvTableHead,
|
|
422
424
|
HvTableHeader,
|
|
423
425
|
HvTableRow,
|
|
426
|
+
HvTableSection,
|
|
424
427
|
HvTabs,
|
|
425
428
|
HvTag,
|
|
426
429
|
HvTagsInput,
|
|
@@ -608,6 +611,7 @@ export {
|
|
|
608
611
|
staticClasses96 as tableHeadClasses,
|
|
609
612
|
staticClasses97 as tableHeaderClasses,
|
|
610
613
|
staticClasses98 as tableRowClasses,
|
|
614
|
+
staticClasses117 as tableSectionClasses,
|
|
611
615
|
staticClasses100 as tabsClasses,
|
|
612
616
|
staticClasses101 as tagClasses,
|
|
613
617
|
staticClasses102 as tagsInputClasses,
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -4662,7 +4662,7 @@ export declare interface HvPaginationProps extends HvBaseProps {
|
|
|
4662
4662
|
* It can be horizontal or vertical and its size is defined by its content and how it relates to surrounding patterns.
|
|
4663
4663
|
* Regardless of its content, a panel look and feel should be consistent.
|
|
4664
4664
|
*/
|
|
4665
|
-
export declare const HvPanel:
|
|
4665
|
+
export declare const HvPanel: ForwardRefExoticComponent<HvPanelProps & RefAttributes<HTMLDivElement>>;
|
|
4666
4666
|
|
|
4667
4667
|
export declare type HvPanelClasses = ExtractNames<typeof useClasses_87>;
|
|
4668
4668
|
|
|
@@ -5503,6 +5503,8 @@ export declare interface HvSectionProps extends Omit<HvBaseProps<HTMLDivElement>
|
|
|
5503
5503
|
onToggle?: (event: React.MouseEvent<HTMLButtonElement>, open: boolean) => void;
|
|
5504
5504
|
/** Props to be passed to the expand button */
|
|
5505
5505
|
expandButtonProps?: HvButtonProps;
|
|
5506
|
+
/** Determines whether or not the header has a shadow on the bottom border. */
|
|
5507
|
+
raisedHeader?: boolean;
|
|
5506
5508
|
/** A Jss Object used to override or extend the styles applied to the empty state component. */
|
|
5507
5509
|
classes?: HvSectionClasses;
|
|
5508
5510
|
}
|
|
@@ -6322,6 +6324,17 @@ export declare interface HvTableRowProps extends HvBaseProps<HTMLTableRowElement
|
|
|
6322
6324
|
classes?: HvTableRowClasses;
|
|
6323
6325
|
}
|
|
6324
6326
|
|
|
6327
|
+
/**
|
|
6328
|
+
* The `TableSection` component is a wrapper for the `Section` component that applies
|
|
6329
|
+
* specific stylings for tables that follow the latest DS specifications.
|
|
6330
|
+
*/
|
|
6331
|
+
export declare const HvTableSection: ForwardRefExoticComponent<HvTableSectionProps & RefAttributes<HTMLDivElement>>;
|
|
6332
|
+
|
|
6333
|
+
export declare type HvTableSectionClasses = ExtractNames<typeof useClasses_124>;
|
|
6334
|
+
|
|
6335
|
+
export declare interface HvTableSectionProps extends HvSectionProps {
|
|
6336
|
+
}
|
|
6337
|
+
|
|
6325
6338
|
export declare interface HvTableState<D extends object = Record<string, unknown>> extends TableState<D>, Partial<UseColumnOrderState<D>>, Partial<UseExpandedState<D>>, Partial<UseFiltersState<D>>, Partial<UseGlobalFiltersState<D>>, Partial<UseGroupByState<D>>, Partial<UsePaginationState<D>>, Partial<UseResizeColumnsState<D>>, Partial<UseSortByState<D>>, Partial<UseRowStateState<D>>, Partial<UseHvRowSelectionState<D>> {
|
|
6326
6339
|
rowCount: number;
|
|
6327
6340
|
}
|
|
@@ -7804,6 +7817,8 @@ export declare const sectionClasses: {
|
|
|
7804
7817
|
root: "HvSection-root";
|
|
7805
7818
|
hidden: "HvSection-hidden";
|
|
7806
7819
|
actions: "HvSection-actions";
|
|
7820
|
+
spaceTop: "HvSection-spaceTop";
|
|
7821
|
+
raisedHeader: "HvSection-raisedHeader";
|
|
7807
7822
|
};
|
|
7808
7823
|
|
|
7809
7824
|
export declare const selectionListClasses: {
|
|
@@ -8012,6 +8027,16 @@ export declare const tableRowClasses: {
|
|
|
8012
8027
|
variantListHead: "HvTableRow-variantListHead";
|
|
8013
8028
|
};
|
|
8014
8029
|
|
|
8030
|
+
export declare const tableSectionClasses: {
|
|
8031
|
+
content: "HvTableSection-content";
|
|
8032
|
+
header: "HvTableSection-header";
|
|
8033
|
+
root: "HvTableSection-root";
|
|
8034
|
+
hidden: "HvTableSection-hidden";
|
|
8035
|
+
actions: "HvTableSection-actions";
|
|
8036
|
+
spaceTop: "HvTableSection-spaceTop";
|
|
8037
|
+
raisedHeader: "HvTableSection-raisedHeader";
|
|
8038
|
+
};
|
|
8039
|
+
|
|
8015
8040
|
export declare const tabsClasses: {
|
|
8016
8041
|
root: "HvTabs-root";
|
|
8017
8042
|
indicator: "HvTabs-indicator";
|
|
@@ -8697,6 +8722,23 @@ declare const useClasses_123: (classesProp?: Partial<Record<"content" | "label"
|
|
|
8697
8722
|
cx: (...args: any) => string;
|
|
8698
8723
|
};
|
|
8699
8724
|
|
|
8725
|
+
declare const useClasses_124: (classesProp?: Partial<Record<"content" | "header" | "root" | "hidden" | "actions" | "spaceTop" | "raisedHeader", string>>, addStatic?: boolean) => {
|
|
8726
|
+
classes: {
|
|
8727
|
+
content: string;
|
|
8728
|
+
header: string;
|
|
8729
|
+
root: string;
|
|
8730
|
+
hidden: string;
|
|
8731
|
+
actions: string;
|
|
8732
|
+
spaceTop: string;
|
|
8733
|
+
raisedHeader: string;
|
|
8734
|
+
};
|
|
8735
|
+
css: {
|
|
8736
|
+
(template: TemplateStringsArray, ...args: CSSInterpolation[]): string;
|
|
8737
|
+
(...args: CSSInterpolation[]): string;
|
|
8738
|
+
};
|
|
8739
|
+
cx: (...args: any) => string;
|
|
8740
|
+
};
|
|
8741
|
+
|
|
8700
8742
|
declare const useClasses_13: (classesProp?: Partial<Record<"root" | "disabled" | "readOnly" | "inputBorderContainer" | "inputRootReadOnly" | "inputRoot" | "inputRootFocused" | "inputRootMultiline" | "input" | "inputReadOnly" | "invalid" | "resizable" | "inputRootInvalid" | "inputRootDisabled" | "inputDisabled" | "inputResizable", string>>, addStatic?: boolean) => {
|
|
8701
8743
|
classes: {
|
|
8702
8744
|
root: string;
|
|
@@ -10301,13 +10343,15 @@ declare const useClasses_94: (classesProp?: Partial<Record<"root" | "selected" |
|
|
|
10301
10343
|
cx: (...args: any) => string;
|
|
10302
10344
|
};
|
|
10303
10345
|
|
|
10304
|
-
declare const useClasses_95: (classesProp?: Partial<Record<"content" | "header" | "root" | "hidden" | "actions", string>>, addStatic?: boolean) => {
|
|
10346
|
+
declare const useClasses_95: (classesProp?: Partial<Record<"content" | "header" | "root" | "hidden" | "actions" | "spaceTop" | "raisedHeader", string>>, addStatic?: boolean) => {
|
|
10305
10347
|
classes: {
|
|
10306
10348
|
content: string;
|
|
10307
10349
|
header: string;
|
|
10308
10350
|
root: string;
|
|
10309
10351
|
hidden: string;
|
|
10310
10352
|
actions: string;
|
|
10353
|
+
spaceTop: string;
|
|
10354
|
+
raisedHeader: string;
|
|
10311
10355
|
};
|
|
10312
10356
|
css: {
|
|
10313
10357
|
(template: TemplateStringsArray, ...args: CSSInterpolation[]): string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hitachivantara/uikit-react-core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.47.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "Hitachi Vantara UI Kit Team",
|
|
6
6
|
"description": "Core React components for the NEXT Design System.",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"access": "public",
|
|
64
64
|
"directory": "package"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "429cf3af573487ff551fd5c38ed0ea7d604bcc29",
|
|
67
67
|
"main": "dist/cjs/index.cjs",
|
|
68
68
|
"exports": {
|
|
69
69
|
".": {
|