@hitachivantara/uikit-react-core 5.18.3 → 5.18.5
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/components/BreadCrumb/BreadCrumb.cjs +1 -3
- package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/Page/Page.cjs +1 -4
- package/dist/cjs/components/BreadCrumb/Page/Page.cjs.map +1 -1
- package/dist/cjs/components/Drawer/Drawer.cjs +81 -0
- package/dist/cjs/components/Drawer/Drawer.cjs.map +1 -0
- package/dist/cjs/components/Drawer/Drawer.styles.cjs +27 -0
- package/dist/cjs/components/Drawer/Drawer.styles.cjs.map +1 -0
- package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs +12 -8
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs +10 -1
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs.map +1 -1
- package/dist/cjs/components/Table/TableRow/TableRow.cjs +1 -1
- package/dist/cjs/index.cjs +4 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/components/BreadCrumb/BreadCrumb.js +1 -2
- package/dist/esm/components/BreadCrumb/BreadCrumb.js.map +1 -1
- package/dist/esm/components/BreadCrumb/Page/Page.js +1 -2
- package/dist/esm/components/BreadCrumb/Page/Page.js.map +1 -1
- package/dist/esm/components/Drawer/Drawer.js +82 -0
- package/dist/esm/components/Drawer/Drawer.js.map +1 -0
- package/dist/esm/components/Drawer/Drawer.styles.js +27 -0
- package/dist/esm/components/Drawer/Drawer.styles.js.map +1 -0
- package/dist/esm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js +12 -8
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js.map +1 -1
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.js +10 -1
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.js.map +1 -1
- package/dist/esm/components/Table/TableRow/TableRow.js +1 -1
- package/dist/esm/index.js +50 -46
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +161 -93
- package/package.json +5 -5
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const clsx = require("clsx");
|
|
4
4
|
const isNil = require("lodash/isNil");
|
|
5
|
-
const startCase = require("lodash/startCase");
|
|
6
5
|
const React = require("react");
|
|
7
6
|
const breadCrumbClasses = require("./breadCrumbClasses.cjs");
|
|
8
7
|
const BreadCrumb_styles = require("./BreadCrumb.styles.cjs");
|
|
@@ -12,7 +11,6 @@ const PathElement = require("./PathElement/PathElement.cjs");
|
|
|
12
11
|
const Page = require("./Page/Page.cjs");
|
|
13
12
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
14
13
|
const isNil__default = /* @__PURE__ */ _interopDefault(isNil);
|
|
15
|
-
const startCase__default = /* @__PURE__ */ _interopDefault(startCase);
|
|
16
14
|
const HvBreadCrumb = ({
|
|
17
15
|
classes,
|
|
18
16
|
className,
|
|
@@ -56,7 +54,7 @@ const HvBreadCrumb = ({
|
|
|
56
54
|
children: React.isValidElement(elem) && elem || isLast && /* @__PURE__ */ jsxRuntime.jsx(BreadCrumb_styles.StyledTypography, {
|
|
57
55
|
className: clsx.clsx(breadCrumbClasses.default.currentPage, classes == null ? void 0 : classes.currentPage),
|
|
58
56
|
variant: "body",
|
|
59
|
-
children:
|
|
57
|
+
children: utils.removeExtension(elem.label)
|
|
60
58
|
}) || /* @__PURE__ */ jsxRuntime.jsx(Page.HvPage, {
|
|
61
59
|
elem,
|
|
62
60
|
classes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreadCrumb.cjs","sources":["../../../../src/components/BreadCrumb/BreadCrumb.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport
|
|
1
|
+
{"version":3,"file":"BreadCrumb.cjs","sources":["../../../../src/components/BreadCrumb/BreadCrumb.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport { isValidElement, MouseEvent } from \"react\";\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { HvDropDownMenuProps } from \"@core/components\";\nimport breadCrumbClasses, { HvBreadCrumbClasses } from \"./breadCrumbClasses\";\nimport { HvPathElement } from \"./PathElement\";\nimport { HvPage } from \"./Page\";\nimport {\n StyledOrderedList,\n StyledRoot,\n StyledTypography,\n} from \"./BreadCrumb.styles\";\nimport { pathWithSubMenu, removeExtension } from \"./utils\";\n\nexport interface HvBreadCrumbPathElement extends Record<string, any> {\n label: string;\n path: string;\n}\n\nexport interface HvBreadCrumbProps\n extends HvBaseProps<HTMLDivElement, \"onClick\"> {\n /** List of breadcrumb. */\n listRoute?: HvBreadCrumbPathElement[];\n /** URL to build the breadcrumb. */\n url?: string;\n /** Number of pages visible. */\n maxVisible?: number;\n /** The component used for the link node. Either a string to use a DOM element or a component. */\n component?: React.ElementType;\n /** Function passed to the component. If defined the component prop is used as the link node. */\n onClick?: (event: MouseEvent<HTMLElement>, data: any) => void;\n /** Props passed down to the DropDownMenu sub-menu component. */\n dropDownMenuProps?: Partial<HvDropDownMenuProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvBreadCrumbClasses;\n}\n\n/**\n * A breadcrumb is a graphical control element frequently used as a navigational aid.\n */\nexport const HvBreadCrumb = ({\n classes,\n className,\n id,\n listRoute = [],\n maxVisible,\n url,\n onClick,\n component,\n dropDownMenuProps,\n ...others\n}: HvBreadCrumbProps) => {\n const maxVisibleElem = maxVisible && maxVisible < 2 ? 2 : maxVisible;\n let listPath = listRoute.slice();\n\n // build the listPath object list\n if (!isNil(url)) {\n listPath = [];\n\n // get the domain\n const baseUrl = url.match(/^.*\\/\\/[^/]+/);\n\n // get url without domain\n const urlWithoutDomain = url.replace(/^.*\\/\\/[^/]+/, \"\");\n\n const pathNames = urlWithoutDomain.split(\"/\").filter((x) => x);\n\n pathNames.map((elem, index) =>\n listPath.push({\n label: decodeURI(elem),\n path: `${baseUrl}/${pathNames.slice(0, index + 1).join(\"/\")}`,\n })\n );\n }\n\n const breadcrumbPath =\n maxVisibleElem && listPath.length > maxVisibleElem\n ? pathWithSubMenu(\n id,\n onClick,\n listPath,\n maxVisibleElem,\n dropDownMenuProps\n )\n : listPath;\n\n return (\n <StyledRoot\n id={id}\n className={clsx(breadCrumbClasses.root, classes?.root, className)}\n {...others}\n >\n <StyledOrderedList\n className={clsx(breadCrumbClasses.orderedList, classes?.orderedList)}\n >\n {listPath.map((elem, index) => {\n const key = `key_${index}`;\n const isLast = index === breadcrumbPath.length - 1;\n\n return (\n <HvPathElement\n classes={{\n centerContainer: clsx(\n breadCrumbClasses.centerContainer,\n classes?.centerContainer\n ),\n separatorContainer: clsx(\n breadCrumbClasses.separatorContainer,\n classes?.separatorContainer\n ),\n }}\n key={key}\n last={isLast}\n >\n {(isValidElement(elem) && elem) ||\n (isLast && (\n <StyledTypography\n className={clsx(\n breadCrumbClasses.currentPage,\n classes?.currentPage\n )}\n variant=\"body\"\n >\n {removeExtension(elem.label)}\n </StyledTypography>\n )) || (\n <HvPage\n elem={elem}\n classes={{\n a: clsx(breadCrumbClasses.a, classes?.a),\n link: clsx(breadCrumbClasses.link, classes?.link),\n }}\n component={component}\n onClick={onClick}\n />\n )}\n </HvPathElement>\n );\n })}\n </StyledOrderedList>\n </StyledRoot>\n );\n};\n"],"names":["HvBreadCrumb","classes","className","id","listRoute","maxVisible","url","onClick","component","dropDownMenuProps","others","maxVisibleElem","listPath","slice","isNil","baseUrl","match","urlWithoutDomain","replace","pathNames","split","filter","x","map","elem","index","push","label","decodeURI","path","join","breadcrumbPath","length","pathWithSubMenu","StyledRoot","clsx","breadCrumbClasses","root","children","StyledOrderedList","orderedList","key","isLast","HvPathElement","centerContainer","separatorContainer","last","isValidElement","StyledTypography","currentPage","variant","removeExtension","_jsx","HvPage","a","link"],"mappings":";;;;;;;;;;;;;AAyCO,MAAMA,eAAeA,CAAC;AAAA,EAC3BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,YAAY,CAAE;AAAA,EACdC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACc,MAAM;AACvB,QAAMC,iBAAiBN,cAAcA,aAAa,IAAI,IAAIA;AACtDO,MAAAA,WAAWR,UAAUS;AAGrB,MAAA,CAACC,eAAAA,QAAMR,GAAG,GAAG;AACfM,eAAW,CAAA;AAGLG,UAAAA,UAAUT,IAAIU,MAAM,cAAc;AAGxC,UAAMC,mBAAmBX,IAAIY,QAAQ,gBAAgB,EAAE;AAEvD,UAAMC,YAAYF,iBAAiBG,MAAM,GAAG,EAAEC,OAAQC,OAAMA,CAAC;AAE7DH,cAAUI,IAAI,CAACC,MAAMC,UACnBb,SAASc,KAAK;AAAA,MACZC,OAAOC,UAAUJ,IAAI;AAAA,MACrBK,MAAO,GAAEd,WAAWI,UAAUN,MAAM,GAAGY,QAAQ,CAAC,EAAEK,KAAK,GAAG;AAAA,IAC3D,CAAA,CACH;AAAA,EACF;AAEMC,QAAAA,iBACJpB,kBAAkBC,SAASoB,SAASrB,iBAChCsB,MAAAA,gBACE9B,IACAI,SACAK,UACAD,gBACAF,iBACF,IACAG;AAEN,wCACGsB,kBAAAA,YAAU;AAAA,IACT/B;AAAAA,IACAD,WAAWiC,KAAKC,KAAAA,kBAAAA,QAAkBC,MAAMpC,mCAASoC,MAAMnC,SAAS;AAAA,IAAE,GAC9DQ;AAAAA,IAAM4B,yCAETC,qCAAiB;AAAA,MAChBrC,WAAWiC,KAAAA,KAAKC,kBAAAA,QAAkBI,aAAavC,mCAASuC,WAAW;AAAA,MAAEF,UAEpE1B,SAASW,IAAI,CAACC,MAAMC,UAAU;AAC7B,cAAMgB,MAAO,OAAMhB;AACbiB,cAAAA,SAASjB,UAAUM,eAAeC,SAAS;AAEjD,8CACGW,YAAAA,eAAa;AAAA,UACZ1C,SAAS;AAAA,YACP2C,iBAAiBT,KAAAA,KACfC,kBAAAA,QAAkBQ,iBAClB3C,mCAAS2C,eACX;AAAA,YACAC,oBAAoBV,KAAAA,KAClBC,kBAAAA,QAAkBS,oBAClB5C,mCAAS4C,kBACX;AAAA,UACF;AAAA,UAEAC,MAAMJ;AAAAA,UAAOJ,UAEXS,MAAevB,eAAAA,IAAI,KAAKA,QACvBkB,yCACEM,oCAAgB;AAAA,YACf9C,WAAWiC,KAAAA,KACTC,kBAAAA,QAAkBa,aAClBhD,mCAASgD,WACX;AAAA,YACAC,SAAQ;AAAA,YAAMZ,UAEba,MAAAA,gBAAgB3B,KAAKG,KAAK;AAAA,UAAA,CACX,KAElByB,2BAAAA,IAACC,aAAM;AAAA,YACL7B;AAAAA,YACAvB,SAAS;AAAA,cACPqD,GAAGnB,KAAAA,KAAKC,kBAAAA,QAAkBkB,GAAGrD,mCAASqD,CAAC;AAAA,cACvCC,MAAMpB,KAAAA,KAAKC,kBAAAA,QAAkBmB,MAAMtD,mCAASsD,IAAI;AAAA,YAClD;AAAA,YACA/C;AAAAA,YACAD;AAAAA,UAAAA,CACD;AAAA,WAvBAkC,GAyBQ;AAAA,MAAA,CAElB;AAAA,IAAA,CACgB;AAAA,EAAA,CACT;AAEhB;;"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const startCase = require("lodash/startCase");
|
|
4
3
|
const Page_styles = require("./Page.styles.cjs");
|
|
5
4
|
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
6
5
|
const OverflowTooltip = require("../../OverflowTooltip/OverflowTooltip.cjs");
|
|
7
6
|
const Typography = require("../../Typography/Typography.cjs");
|
|
8
|
-
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
9
|
-
const startCase__default = /* @__PURE__ */ _interopDefault(startCase);
|
|
10
7
|
const HvPage = ({
|
|
11
8
|
component,
|
|
12
9
|
onClick,
|
|
@@ -35,7 +32,7 @@ const HvPage = ({
|
|
|
35
32
|
className: cx(classes.link, classes.label, classes.a),
|
|
36
33
|
...others,
|
|
37
34
|
children: /* @__PURE__ */ jsxRuntime.jsx(OverflowTooltip.HvOverflowTooltip, {
|
|
38
|
-
data:
|
|
35
|
+
data: elem.label
|
|
39
36
|
})
|
|
40
37
|
});
|
|
41
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.cjs","sources":["../../../../../src/components/BreadCrumb/Page/Page.tsx"],"sourcesContent":["import {\n HvBreadCrumbPathElement,\n HvOverflowTooltip,\n HvTypography,\n} from \"@core/components\";\nimport { ExtractNames } from \"@core/utils\";\nimport
|
|
1
|
+
{"version":3,"file":"Page.cjs","sources":["../../../../../src/components/BreadCrumb/Page/Page.tsx"],"sourcesContent":["import {\n HvBreadCrumbPathElement,\n HvOverflowTooltip,\n HvTypography,\n} from \"@core/components\";\nimport { ExtractNames } from \"@core/utils\";\nimport { MouseEvent } from \"react\";\nimport { staticClasses, useClasses } from \"./Page.styles\";\n\nexport { staticClasses as pageClasses };\n\nexport type HvPageClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPageProps {\n component?: React.ElementType;\n onClick?: (event: MouseEvent<HTMLElement>, data: any) => void;\n elem: HvBreadCrumbPathElement;\n classes?: HvPageClasses;\n}\n\nexport const HvPage = ({\n component,\n onClick,\n elem,\n classes: classesProp,\n}: HvPageProps) => {\n const { classes, cx } = useClasses(classesProp);\n const { label, path, ...others } = elem;\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.preventDefault();\n onClick?.(event, elem);\n };\n\n return (\n <HvTypography\n noWrap\n variant=\"label\"\n component={component || \"a\"}\n href={elem.path}\n onClick={onClick && handleClick}\n className={cx(classes.link, classes.label, classes.a)}\n {...others}\n >\n <HvOverflowTooltip data={elem.label} />\n </HvTypography>\n );\n};\n"],"names":["HvPage","component","onClick","elem","classes","classesProp","cx","useClasses","label","path","others","handleClick","event","preventDefault","HvTypography","noWrap","variant","href","className","link","a","children","HvOverflowTooltip","data"],"mappings":";;;;;;AAoBO,MAAMA,SAASA,CAAC;AAAA,EACrBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,SAASC;AACE,MAAM;AACX,QAAA;AAAA,IAAED;AAAAA,IAASE;AAAAA,EAAAA,IAAOC,YAAAA,WAAWF,WAAW;AACxC,QAAA;AAAA,IAAEG;AAAAA,IAAOC;AAAAA,IAAM,GAAGC;AAAAA,EAAWP,IAAAA;AAC7BQ,QAAAA,cAAcA,CAACC,UAAmC;AACtDA,UAAMC,eAAe;AACrBX,uCAAUU,OAAOT;AAAAA,EAAI;AAGvB,wCACGW,WAAAA,cAAY;AAAA,IACXC,QAAM;AAAA,IACNC,SAAQ;AAAA,IACRf,WAAWA,aAAa;AAAA,IACxBgB,MAAMd,KAAKM;AAAAA,IACXP,SAASA,WAAWS;AAAAA,IACpBO,WAAWZ,GAAGF,QAAQe,MAAMf,QAAQI,OAAOJ,QAAQgB,CAAC;AAAA,IAAE,GAClDV;AAAAA,IAAMW,yCAETC,mCAAiB;AAAA,MAACC,MAAMpB,KAAKK;AAAAA,IAAAA,CAAQ;AAAA,EAAA,CAC1B;AAElB;;;"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const material = require("@mui/material");
|
|
4
|
+
const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
|
|
5
|
+
const uikitStyles = require("@hitachivantara/uikit-styles");
|
|
6
|
+
const React = require("react");
|
|
7
|
+
const Drawer_styles = require("./Drawer.styles.cjs");
|
|
8
|
+
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
9
|
+
const theme = require("../../utils/theme.cjs");
|
|
10
|
+
const withTooltip = require("../../hocs/withTooltip.cjs");
|
|
11
|
+
const checkValidHexColorValue = require("../../utils/checkValidHexColorValue.cjs");
|
|
12
|
+
const hexToRgbA = require("../../utils/hexToRgbA.cjs");
|
|
13
|
+
const useTheme = require("../../hooks/useTheme.cjs");
|
|
14
|
+
const Button = require("../Button/Button.cjs");
|
|
15
|
+
const setId = require("../../utils/setId.cjs");
|
|
16
|
+
const getBackgroundColor = (color) => {
|
|
17
|
+
return checkValidHexColorValue.default(color) ? hexToRgbA.default(color, 0.8) : color;
|
|
18
|
+
};
|
|
19
|
+
const HvDrawer = ({
|
|
20
|
+
className,
|
|
21
|
+
classes: classesProp,
|
|
22
|
+
id,
|
|
23
|
+
children,
|
|
24
|
+
open,
|
|
25
|
+
onClose,
|
|
26
|
+
anchor = "right",
|
|
27
|
+
buttonTitle = "Close",
|
|
28
|
+
...others
|
|
29
|
+
}) => {
|
|
30
|
+
var _a;
|
|
31
|
+
const {
|
|
32
|
+
classes,
|
|
33
|
+
css,
|
|
34
|
+
cx
|
|
35
|
+
} = Drawer_styles.useClasses(classesProp);
|
|
36
|
+
const {
|
|
37
|
+
activeTheme,
|
|
38
|
+
selectedMode
|
|
39
|
+
} = useTheme.useTheme();
|
|
40
|
+
const [backgroundColorValue, setBackgroundColorValue] = React.useState(theme.getVarValue(uikitStyles.theme.drawer.backDropBackgroundColor));
|
|
41
|
+
const closeButtonDisplay = () => /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.Close, {
|
|
42
|
+
role: "presentation"
|
|
43
|
+
});
|
|
44
|
+
const CloseButtonTooltipWrapper = buttonTitle ? withTooltip.default(closeButtonDisplay, buttonTitle, "top") : closeButtonDisplay;
|
|
45
|
+
const [backgroundColor, setBackgroundColor] = React.useState(getBackgroundColor(backgroundColorValue));
|
|
46
|
+
React.useEffect(() => {
|
|
47
|
+
setBackgroundColorValue(theme.getVarValue(uikitStyles.theme.drawer.backDropBackgroundColor));
|
|
48
|
+
setBackgroundColor(getBackgroundColor(backgroundColorValue));
|
|
49
|
+
}, [(_a = activeTheme == null ? void 0 : activeTheme.colors) == null ? void 0 : _a.modes[selectedMode], backgroundColorValue, setBackgroundColor]);
|
|
50
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(material.Drawer, {
|
|
51
|
+
className: cx(classes.root, className),
|
|
52
|
+
id,
|
|
53
|
+
anchor,
|
|
54
|
+
open,
|
|
55
|
+
PaperProps: {
|
|
56
|
+
classes: {
|
|
57
|
+
root: classes.paper
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
BackdropProps: {
|
|
61
|
+
classes: {
|
|
62
|
+
root: cx(css({
|
|
63
|
+
backgroundColor
|
|
64
|
+
}), classes.background)
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
onClose,
|
|
68
|
+
...others,
|
|
69
|
+
children: [/* @__PURE__ */ jsxRuntime.jsx(Button.HvButton, {
|
|
70
|
+
id: setId.setId(id, "close"),
|
|
71
|
+
className: classes.closeButton,
|
|
72
|
+
variant: "primaryGhost",
|
|
73
|
+
onClick: onClose,
|
|
74
|
+
"aria-label": buttonTitle,
|
|
75
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(CloseButtonTooltipWrapper, {})
|
|
76
|
+
}), children]
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
exports.drawerClasses = Drawer_styles.staticClasses;
|
|
80
|
+
exports.HvDrawer = HvDrawer;
|
|
81
|
+
//# sourceMappingURL=Drawer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.cjs","sources":["../../../../src/components/Drawer/Drawer.tsx"],"sourcesContent":["import {\n Drawer as MuiDrawer,\n DrawerProps as MuiDrawerProps,\n} from \"@mui/material\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { withTooltip } from \"@core/hocs\";\nimport {\n getVarValue,\n hexToRgbA,\n setId,\n checkValidHexColorValue,\n ExtractNames,\n} from \"@core/utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { HvButton } from \"@core/components\";\nimport { useEffect, useState } from \"react\";\nimport { useTheme } from \"@core/hooks\";\nimport { staticClasses, useClasses } from \"./Drawer.styles\";\n\nexport { staticClasses as drawerClasses };\n\nexport type HvDrawerClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvDrawerProps\n extends MuiDrawerProps,\n Omit<MuiDrawerProps, \"classes\">,\n HvBaseProps<HTMLDivElement> {\n /**\n * Class names to be applied.\n */\n className?: string;\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes?: HvDrawerClasses;\n /**\n * Components of the Drawer.\n */\n children?: React.ReactNode;\n /**\n * Current state of the Drawer.\n */\n open?: boolean;\n /**\n * Function executed on close.\n * Extended from Modal from material-ui\n *\n */\n onClose?: (\n event: React.SyntheticEvent,\n reason?: \"escapeKeyDown\" | \"backdropClick\"\n ) => void;\n /**\n * The side the drawer opens from.\n */\n anchor?: \"left\" | \"top\" | \"right\" | \"bottom\";\n /**\n * Title for the button close.\n */\n buttonTitle?: string;\n}\n\nconst getBackgroundColor = (color: string) => {\n return checkValidHexColorValue(color) ? hexToRgbA(color, 0.8) : color;\n};\n\n/**\n * The Drawer component provides a foundation to create a sliding pane.\n * It only provides the pane with a close button, the rest of the\n * content can be customized.\n */\nexport const HvDrawer = ({\n className,\n classes: classesProp,\n id,\n children,\n open,\n onClose,\n anchor = \"right\",\n buttonTitle = \"Close\",\n ...others\n}: HvDrawerProps) => {\n const { classes, css, cx } = useClasses(classesProp);\n const { activeTheme, selectedMode } = useTheme();\n\n const [backgroundColorValue, setBackgroundColorValue] = useState<string>(\n getVarValue(theme.drawer.backDropBackgroundColor)\n );\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n const [backgroundColor, setBackgroundColor] = useState(\n getBackgroundColor(backgroundColorValue)\n );\n\n useEffect(() => {\n setBackgroundColorValue(getVarValue(theme.drawer.backDropBackgroundColor));\n\n setBackgroundColor(getBackgroundColor(backgroundColorValue));\n }, [\n activeTheme?.colors?.modes[selectedMode],\n backgroundColorValue,\n setBackgroundColor,\n ]);\n\n return (\n <MuiDrawer\n className={cx(classes.root, className)}\n id={id}\n anchor={anchor}\n open={open}\n PaperProps={{\n classes: {\n root: classes.paper,\n },\n }}\n BackdropProps={{\n classes: {\n root: cx(css({ backgroundColor }), classes.background),\n },\n }}\n onClose={onClose}\n {...others}\n >\n <HvButton\n id={setId(id, \"close\")}\n className={classes.closeButton}\n variant=\"primaryGhost\"\n onClick={onClose}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </HvButton>\n {children}\n </MuiDrawer>\n );\n};\n"],"names":["getBackgroundColor","color","checkValidHexColorValue","hexToRgbA","HvDrawer","className","classes","classesProp","id","children","open","onClose","anchor","buttonTitle","others","css","cx","useClasses","activeTheme","selectedMode","useTheme","backgroundColorValue","setBackgroundColorValue","useState","getVarValue","theme","drawer","backDropBackgroundColor","closeButtonDisplay","_jsx","Close","role","CloseButtonTooltipWrapper","withTooltip","backgroundColor","setBackgroundColor","useEffect","colors","modes","MuiDrawer","root","PaperProps","paper","BackdropProps","background","HvButton","setId","closeButton","variant","onClick"],"mappings":";;;;;;;;;;;;;;;AAmEA,MAAMA,qBAAqBA,CAACC,UAAkB;AAC5C,SAAOC,wBAAAA,QAAwBD,KAAK,IAAIE,UAAAA,QAAUF,OAAO,GAAG,IAAIA;AAClE;AAOO,MAAMG,WAAWA,CAAC;AAAA,EACvBC;AAAAA,EACAC,SAASC;AAAAA,EACTC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,SAAS;AAAA,EACTC,cAAc;AAAA,EACd,GAAGC;AACU,MAAM;;AACb,QAAA;AAAA,IAAER;AAAAA,IAASS;AAAAA,IAAKC;AAAAA,EAAAA,IAAOC,cAAAA,WAAWV,WAAW;AAC7C,QAAA;AAAA,IAAEW;AAAAA,IAAaC;AAAAA,MAAiBC,SAAS,SAAA;AAEzC,QAAA,CAACC,sBAAsBC,uBAAuB,IAAIC,eACtDC,MAAYC,YAAAA,kBAAMC,OAAOC,uBAAuB,CAClD;AAEMC,QAAAA,qBAAqBA,MAAMC,2BAAAA,IAACC,uBAAK;AAAA,IAACC,MAAK;AAAA,EAAA,CAAgB;AAE7D,QAAMC,4BAA4BnB,cAC9BoB,YAAAA,QAAYL,oBAAoBf,aAAa,KAAK,IAClDe;AAEJ,QAAM,CAACM,iBAAiBC,kBAAkB,IAAIZ,MAC5CvB,SAAAA,mBAAmBqB,oBAAoB,CACzC;AAEAe,QAAAA,UAAU,MAAM;AACdd,4BAAwBE,MAAAA,YAAYC,YAAAA,MAAMC,OAAOC,uBAAuB,CAAC;AAEtD3B,uBAAAA,mBAAmBqB,oBAAoB,CAAC;AAAA,EAAA,GAC1D,EACDH,gDAAamB,WAAbnB,mBAAqBoB,MAAMnB,eAC3BE,sBACAc,kBAAkB,CACnB;AAED,yCACGI,SAAAA,QAAS;AAAA,IACRlC,WAAWW,GAAGV,QAAQkC,MAAMnC,SAAS;AAAA,IACrCG;AAAAA,IACAI;AAAAA,IACAF;AAAAA,IACA+B,YAAY;AAAA,MACVnC,SAAS;AAAA,QACPkC,MAAMlC,QAAQoC;AAAAA,MAChB;AAAA,IACF;AAAA,IACAC,eAAe;AAAA,MACbrC,SAAS;AAAA,QACPkC,MAAMxB,GAAGD,IAAI;AAAA,UAAEmB;AAAAA,QAAAA,CAAiB,GAAG5B,QAAQsC,UAAU;AAAA,MACvD;AAAA,IACF;AAAA,IACAjC;AAAAA,IAAiB,GACbG;AAAAA,IAAML,UAAA,CAEVoB,2BAAAA,IAACgB,iBAAQ;AAAA,MACPrC,IAAIsC,MAAAA,MAAMtC,IAAI,OAAO;AAAA,MACrBH,WAAWC,QAAQyC;AAAAA,MACnBC,SAAQ;AAAA,MACRC,SAAStC;AAAAA,MACT,cAAYE;AAAAA,MAAYJ,UAExBoB,2BAAAA,IAACG,2BAA2B,EAAA;AAAA,IACpB,CAAA,GACTvB,QAAQ;AAAA,EAAA,CACA;AAEf;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
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 {
|
|
6
|
+
staticClasses,
|
|
7
|
+
useClasses
|
|
8
|
+
} = classes.createClasses("HvDrawer", {
|
|
9
|
+
root: {},
|
|
10
|
+
paper: {
|
|
11
|
+
backgroundColor: uikitStyles.theme.colors.atmo1,
|
|
12
|
+
padding: 0,
|
|
13
|
+
overflow: "auto",
|
|
14
|
+
boxShadow: uikitStyles.theme.colors.shadow
|
|
15
|
+
},
|
|
16
|
+
background: {},
|
|
17
|
+
closeButton: {
|
|
18
|
+
padding: 0,
|
|
19
|
+
minWidth: "inherit",
|
|
20
|
+
position: "absolute",
|
|
21
|
+
top: uikitStyles.theme.spacing("sm"),
|
|
22
|
+
right: uikitStyles.theme.spacing("sm")
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
exports.staticClasses = staticClasses;
|
|
26
|
+
exports.useClasses = useClasses;
|
|
27
|
+
//# sourceMappingURL=Drawer.styles.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.styles.cjs","sources":["../../../../src/components/Drawer/Drawer.styles.tsx"],"sourcesContent":["import { createClasses } from \"@core/utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvDrawer\", {\n root: {},\n paper: {\n backgroundColor: theme.colors.atmo1,\n padding: 0,\n overflow: \"auto\",\n boxShadow: theme.colors.shadow,\n },\n background: {},\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.spacing(\"sm\"),\n right: theme.spacing(\"sm\"),\n },\n});\n"],"names":["staticClasses","useClasses","createClasses","root","paper","backgroundColor","theme","colors","atmo1","padding","overflow","boxShadow","shadow","background","closeButton","minWidth","position","top","spacing","right"],"mappings":";;;;AAGa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,QAAAA,cAAc,YAAY;AAAA,EACrEC,MAAM,CAAC;AAAA,EACPC,OAAO;AAAA,IACLC,iBAAiBC,YAAAA,MAAMC,OAAOC;AAAAA,IAC9BC,SAAS;AAAA,IACTC,UAAU;AAAA,IACVC,WAAWL,YAAAA,MAAMC,OAAOK;AAAAA,EAC1B;AAAA,EACAC,YAAY,CAAC;AAAA,EACbC,aAAa;AAAA,IACXL,SAAS;AAAA,IACTM,UAAU;AAAA,IACVC,UAAU;AAAA,IACVC,KAAKX,YAAAA,MAAMY,QAAQ,IAAI;AAAA,IACvBC,OAAOb,YAAAA,MAAMY,QAAQ,IAAI;AAAA,EAC3B;AACF,CAAC;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snackbar.cjs","sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"sourcesContent":["import Slide from \"@mui/material/Slide\";\nimport {\n SnackbarCloseReason,\n SnackbarOrigin,\n SnackbarProps as MuiSnackbarProps,\n} from \"@mui/material/Snackbar\";\nimport { Snackbar as MuiSnackbar } from \"@mui/material\";\nimport { HvBaseProps } from \"@core/types\";\nimport capitalize from \"lodash/capitalize\";\nimport { SyntheticEvent } from \"react\";\nimport { ExtractNames, setId } from \"@core/utils\";\nimport { HvActionGeneric } from \"@core/components\";\nimport {\n HvSnackbarContentProps,\n HvSnackbarContent,\n} from \"./SnackbarContentWrapper\";\nimport { staticClasses, useClasses } from \"./Snackbar.styles\";\n\nexport { staticClasses as snackbarClasses };\n\nexport type HvSnackbarClasses = ExtractNames<typeof useClasses>;\n\nexport type HvSnackbarVariant = \"default\" | \"success\" | \"warning\" | \"error\";\n\nexport interface HvSnackbarProps\n extends Omit<MuiSnackbarProps, \"action\" | \"classes\">,\n Omit<HvBaseProps, \"children\"> {\n /** If true, Snackbar is open. */\n open?: boolean;\n /** Callback fired when the component requests to be closed. Typically onClose is used to set state in the parent component, which is used to control the Snackbar open prop. The reason parameter can optionally be used to control the response to onClose, for example ignoring clickaway. */\n onClose?:\n | ((\n event: Event | SyntheticEvent<any, Event>,\n reason: SnackbarCloseReason\n ) => void)\n | undefined;\n /** The message to display. */\n label?: React.ReactNode;\n /** The anchor of the Snackbar. vertical: \"top\", \"bottom\" | horizontal: \"left\",\"center\",\"right. It defines where the snackbar will end his animation */\n anchorOrigin?: SnackbarOrigin;\n /** The number of milliseconds to wait before automatically calling the onClose function. onClose should then set the state of the open prop to hide the Snackbar */\n autoHideDuration?: number;\n /** Variant of the snackbar. */\n variant?: HvSnackbarVariant;\n /** Custom icon to replace the variant default. */\n customIcon?: React.ReactNode;\n /** Controls if the associated icon to the variant should be shown. */\n showIcon?: boolean;\n /** Action to display. */\n action?: React.ReactNode | HvActionGeneric;\n /** The callback function ran when an action is triggered, receiving `action` as param */\n actionCallback?: (\n event: React.SyntheticEvent,\n id: string,\n action: HvActionGeneric\n ) => void;\n /** Duration of transition in milliseconds. */\n transitionDuration?: number;\n /** Direction of slide transition. */\n transitionDirection?: \"up\" | \"down\" | \"left\" | \"right\";\n /** Custom offset from top/bottom of the page, in px. */\n offset?: number;\n /** Others applied to the content of the snackbar. */\n snackbarContentProps?: HvSnackbarContentProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?:
|
|
1
|
+
{"version":3,"file":"Snackbar.cjs","sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"sourcesContent":["import Slide from \"@mui/material/Slide\";\nimport {\n SnackbarCloseReason,\n SnackbarOrigin,\n SnackbarProps as MuiSnackbarProps,\n} from \"@mui/material/Snackbar\";\nimport { Snackbar as MuiSnackbar } from \"@mui/material\";\nimport { HvBaseProps } from \"@core/types\";\nimport capitalize from \"lodash/capitalize\";\nimport { SyntheticEvent } from \"react\";\nimport { ExtractNames, setId } from \"@core/utils\";\nimport { HvActionGeneric } from \"@core/components\";\nimport {\n HvSnackbarContentProps,\n HvSnackbarContent,\n} from \"./SnackbarContentWrapper\";\nimport { staticClasses, useClasses } from \"./Snackbar.styles\";\n\nexport { staticClasses as snackbarClasses };\n\nexport type HvSnackbarClasses = ExtractNames<typeof useClasses>;\n\nexport type HvSnackbarVariant = \"default\" | \"success\" | \"warning\" | \"error\";\n\nexport interface HvSnackbarProps\n extends Omit<MuiSnackbarProps, \"action\" | \"classes\">,\n Omit<HvBaseProps, \"children\"> {\n /** If true, Snackbar is open. */\n open?: boolean;\n /** Callback fired when the component requests to be closed. Typically onClose is used to set state in the parent component, which is used to control the Snackbar open prop. The reason parameter can optionally be used to control the response to onClose, for example ignoring clickaway. */\n onClose?:\n | ((\n event: Event | SyntheticEvent<any, Event>,\n reason: SnackbarCloseReason\n ) => void)\n | undefined;\n /** The message to display. */\n label?: React.ReactNode;\n /** The anchor of the Snackbar. vertical: \"top\", \"bottom\" | horizontal: \"left\",\"center\",\"right. It defines where the snackbar will end his animation */\n anchorOrigin?: SnackbarOrigin;\n /** The number of milliseconds to wait before automatically calling the onClose function. onClose should then set the state of the open prop to hide the Snackbar */\n autoHideDuration?: number;\n /** Variant of the snackbar. */\n variant?: HvSnackbarVariant;\n /** Custom icon to replace the variant default. */\n customIcon?: React.ReactNode;\n /** Controls if the associated icon to the variant should be shown. */\n showIcon?: boolean;\n /** Action to display. */\n action?: React.ReactNode | HvActionGeneric;\n /** The callback function ran when an action is triggered, receiving `action` as param */\n actionCallback?: (\n event: React.SyntheticEvent,\n id: string,\n action: HvActionGeneric\n ) => void;\n /** Duration of transition in milliseconds. */\n transitionDuration?: number;\n /** Direction of slide transition. */\n transitionDirection?: \"up\" | \"down\" | \"left\" | \"right\";\n /** Custom offset from top/bottom of the page, in px. */\n offset?: number;\n /** Others applied to the content of the snackbar. */\n snackbarContentProps?: HvSnackbarContentProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvSnackbarClasses;\n}\n\nconst transLeft = (props) => <Slide {...props} direction=\"left\" />;\nconst transRight = (props) => <Slide {...props} direction=\"right\" />;\nconst transUp = (props) => <Slide {...props} direction=\"up\" />;\nconst transDown = (props) => <Slide {...props} direction=\"down\" />;\n\nconst snackBarDirComponent = (direction) => {\n switch (direction) {\n case \"right\":\n return transRight;\n case \"up\":\n return transUp;\n case \"down\":\n return transDown;\n case \"left\":\n default:\n return transLeft;\n }\n};\n\n/**\n * A Snackbar provides brief messages about app processes.\n * It is dismissed automatically after a given interval.\n *\n * Snackbar can be built with two different components.\n * One is the HvSnackbar, which wraps all the positioning, transition, auto hide, etc.\n * The other is the HvSnackbarContent, which allows a finer control and customization of the content of the Snackbar.\n */\nexport const HvSnackbar = ({\n classes: classesProp = {},\n className,\n id,\n open = false,\n onClose,\n label = \"\",\n anchorOrigin = { vertical: \"top\", horizontal: \"right\" },\n autoHideDuration = 5000,\n variant = \"default\",\n showIcon = false,\n customIcon = null,\n action = null,\n actionCallback,\n transitionDuration = 300,\n transitionDirection = \"left\",\n offset = 60,\n snackbarContentProps,\n ...others\n}: HvSnackbarProps) => {\n const { classes } = useClasses(classesProp);\n\n const anchorOriginOffset = {\n anchorOriginTop: {\n top: `${offset}px`,\n },\n anchorOriginBottom: {\n bottom: `${offset}px`,\n },\n };\n\n return (\n <MuiSnackbar\n style={\n anchorOriginOffset[`anchorOrigin${capitalize(anchorOrigin.vertical)}`]\n }\n classes={classes}\n className={className}\n id={id}\n anchorOrigin={anchorOrigin}\n open={open}\n onClose={onClose}\n autoHideDuration={autoHideDuration}\n transitionDuration={transitionDuration}\n TransitionComponent={snackBarDirComponent(transitionDirection)}\n {...others}\n >\n <HvSnackbarContent\n id={setId(id, \"content\")}\n label={label}\n variant={variant}\n customIcon={customIcon}\n showIcon={showIcon}\n action={action}\n actionCallback={actionCallback}\n {...snackbarContentProps}\n />\n </MuiSnackbar>\n );\n};\n"],"names":["transLeft","props","_jsx","Slide","direction","transRight","transUp","transDown","snackBarDirComponent","HvSnackbar","classes","classesProp","className","id","open","onClose","label","anchorOrigin","vertical","horizontal","autoHideDuration","variant","showIcon","customIcon","action","actionCallback","transitionDuration","transitionDirection","offset","snackbarContentProps","others","useClasses","anchorOriginOffset","anchorOriginTop","top","anchorOriginBottom","bottom","MuiSnackbar","style","capitalize","TransitionComponent","children","HvSnackbarContent","setId"],"mappings":";;;;;;;;;;;;AAoEA,MAAMA,YAAaC,CAAUC,UAAAA,2BAAAA,IAACC,wBAAK;AAAA,EAAA,GAAKF;AAAAA,EAAOG,WAAU;AAAM,CAAE;AACjE,MAAMC,aAAcJ,CAAUC,UAAAA,2BAAAA,IAACC,wBAAK;AAAA,EAAA,GAAKF;AAAAA,EAAOG,WAAU;AAAO,CAAE;AACnE,MAAME,UAAWL,CAAUC,UAAAA,2BAAAA,IAACC,wBAAK;AAAA,EAAA,GAAKF;AAAAA,EAAOG,WAAU;AAAI,CAAE;AAC7D,MAAMG,YAAaN,CAAUC,UAAAA,2BAAAA,IAACC,wBAAK;AAAA,EAAA,GAAKF;AAAAA,EAAOG,WAAU;AAAM,CAAE;AAEjE,MAAMI,uBAAwBJ,CAAc,cAAA;AAC1C,UAAQA,WAAS;AAAA,IACf,KAAK;AACIC,aAAAA;AAAAA,IACT,KAAK;AACIC,aAAAA;AAAAA,IACT,KAAK;AACIC,aAAAA;AAAAA,IACT,KAAK;AAAA,IACL;AACSP,aAAAA;AAAAA,EACX;AACF;AAUO,MAAMS,aAAaA,CAAC;AAAA,EACzBC,SAASC,cAAc,CAAC;AAAA,EACxBC;AAAAA,EACAC;AAAAA,EACAC,OAAO;AAAA,EACPC;AAAAA,EACAC,QAAQ;AAAA,EACRC,eAAe;AAAA,IAAEC,UAAU;AAAA,IAAOC,YAAY;AAAA,EAAQ;AAAA,EACtDC,mBAAmB;AAAA,EACnBC,UAAU;AAAA,EACVC,WAAW;AAAA,EACXC,aAAa;AAAA,EACbC,SAAS;AAAA,EACTC;AAAAA,EACAC,qBAAqB;AAAA,EACrBC,sBAAsB;AAAA,EACtBC,SAAS;AAAA,EACTC;AAAAA,EACA,GAAGC;AACY,MAAM;AACf,QAAA;AAAA,IAAEpB;AAAAA,EAAAA,IAAYqB,gBAAAA,WAAWpB,WAAW;AAE1C,QAAMqB,qBAAqB;AAAA,IACzBC,iBAAiB;AAAA,MACfC,KAAM,GAAEN;AAAAA,IACV;AAAA,IACAO,oBAAoB;AAAA,MAClBC,QAAS,GAAER;AAAAA,IACb;AAAA,EAAA;AAGF,wCACGS,SAAAA,UAAW;AAAA,IACVC,OACEN,mBAAoB,eAAcO,oBAAWtB,QAAAA,aAAaC,QAAQ,GAAG;AAAA,IAEvER;AAAAA,IACAE;AAAAA,IACAC;AAAAA,IACAI;AAAAA,IACAH;AAAAA,IACAC;AAAAA,IACAK;AAAAA,IACAM;AAAAA,IACAc,qBAAqBhC,qBAAqBmB,mBAAmB;AAAA,IAAE,GAC3DG;AAAAA,IAAMW,yCAETC,0CAAiB;AAAA,MAChB7B,IAAI8B,MAAAA,MAAM9B,IAAI,SAAS;AAAA,MACvBG;AAAAA,MACAK;AAAAA,MACAE;AAAAA,MACAD;AAAAA,MACAE;AAAAA,MACAC;AAAAA,MAA+B,GAC3BI;AAAAA,IAAAA,CACL;AAAA,EAAA,CACU;AAEjB;;;"}
|
|
@@ -5,6 +5,7 @@ const SnackbarContent = require("@mui/material/SnackbarContent");
|
|
|
5
5
|
const SnackbarContentWrapper_styles = require("./SnackbarContentWrapper.styles.cjs");
|
|
6
6
|
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
7
7
|
const iconVariant = require("../../../utils/iconVariant.cjs");
|
|
8
|
+
const useTheme = require("../../../hooks/useTheme.cjs");
|
|
8
9
|
const setId = require("../../../utils/setId.cjs");
|
|
9
10
|
const ActionsGeneric = require("../../ActionsGeneric/ActionsGeneric.cjs");
|
|
10
11
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
@@ -14,7 +15,7 @@ const HvSnackbarContent = React.forwardRef(({
|
|
|
14
15
|
id,
|
|
15
16
|
classes: classesProp = {},
|
|
16
17
|
label,
|
|
17
|
-
variant,
|
|
18
|
+
variant = "default",
|
|
18
19
|
showIcon,
|
|
19
20
|
customIcon,
|
|
20
21
|
action,
|
|
@@ -27,29 +28,32 @@ const HvSnackbarContent = React.forwardRef(({
|
|
|
27
28
|
classes,
|
|
28
29
|
cx
|
|
29
30
|
} = SnackbarContentWrapper_styles.useClasses(classesProp);
|
|
31
|
+
const {
|
|
32
|
+
activeTheme
|
|
33
|
+
} = useTheme.useTheme();
|
|
30
34
|
return /* @__PURE__ */ jsxRuntime.jsx(SnackbarContent__default.default, {
|
|
31
35
|
ref,
|
|
32
36
|
id,
|
|
33
37
|
classes: {
|
|
34
|
-
root: classes
|
|
35
|
-
message: classes
|
|
38
|
+
root: classes.root,
|
|
39
|
+
message: classes.message
|
|
36
40
|
},
|
|
37
41
|
className: cx(className, classes == null ? void 0 : classes[variant]),
|
|
38
42
|
message: /* @__PURE__ */ jsxRuntime.jsxs("div", {
|
|
39
43
|
id: setId.setId(id, "message"),
|
|
40
|
-
className: classes
|
|
44
|
+
className: classes.messageSpan,
|
|
41
45
|
children: [icon && /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
42
|
-
className: classes
|
|
46
|
+
className: classes.iconVariant,
|
|
43
47
|
children: icon
|
|
44
48
|
}), /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
45
|
-
className: classes
|
|
49
|
+
className: classes.messageText,
|
|
46
50
|
children: label
|
|
47
51
|
}), action && /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
48
52
|
id: setId.setId(id, "action"),
|
|
49
|
-
className: classes
|
|
53
|
+
className: classes.action,
|
|
50
54
|
children: /* @__PURE__ */ jsxRuntime.jsx(ActionsGeneric.HvActionsGeneric, {
|
|
51
55
|
id,
|
|
52
|
-
category:
|
|
56
|
+
category: activeTheme == null ? void 0 : activeTheme.snackbar.actionButtonVariant,
|
|
53
57
|
actions: innerAction,
|
|
54
58
|
actionsCallback: actionCallback
|
|
55
59
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SnackbarContentWrapper.cjs","sources":["../../../../../src/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.tsx"],"sourcesContent":["import { forwardRef, isValidElement } from \"react\";\nimport SnackbarContent, {\n SnackbarContentProps as MuiSnackbarContentProps,\n} from \"@mui/material/SnackbarContent\";\nimport { ExtractNames, iconVariant, setId } from \"@core/utils\";\nimport { HvBaseProps } from \"@core/types\";\nimport {
|
|
1
|
+
{"version":3,"file":"SnackbarContentWrapper.cjs","sources":["../../../../../src/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.tsx"],"sourcesContent":["import { forwardRef, isValidElement } from \"react\";\nimport SnackbarContent, {\n SnackbarContentProps as MuiSnackbarContentProps,\n} from \"@mui/material/SnackbarContent\";\nimport { ExtractNames, iconVariant, setId } from \"@core/utils\";\nimport { HvBaseProps } from \"@core/types\";\nimport {\n HvActionsGeneric,\n HvActionGeneric,\n HvButtonVariant,\n} from \"@core/components\";\nimport { useTheme } from \"@core/hooks\";\nimport { HvSnackbarVariant } from \"../Snackbar\";\nimport { staticClasses, useClasses } from \"./SnackbarContentWrapper.styles\";\n\nexport { staticClasses as snackbarContentClasses };\n\nexport type HvSnackbarContentClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvSnackbarContentProps\n extends Omit<MuiSnackbarContentProps, \"variant\" | \"action\" | \"classes\">,\n HvBaseProps {\n /** The message to display. */\n label?: React.ReactNode;\n /** Variant of the snackbar. */\n variant?: HvSnackbarVariant;\n /** Controls if the associated icon to the variant should be shown. */\n showIcon?: boolean;\n /** Custom icon to replace the variant default. */\n customIcon?: React.ReactNode;\n /** Action to display. */\n action?: React.ReactNode | HvActionGeneric;\n /** The callback function ran when an action is triggered, receiving `action` as param */\n actionCallback?: (\n event: React.SyntheticEvent,\n id: string,\n action: HvActionGeneric\n ) => void;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: Partial<HvSnackbarContentClasses>;\n}\n\nexport const HvSnackbarContent = forwardRef<\n HTMLDivElement,\n HvSnackbarContentProps\n>(\n (\n {\n className,\n id,\n classes: classesProp = {},\n label,\n variant = \"default\",\n showIcon,\n customIcon,\n action,\n actionCallback,\n ...others\n },\n ref\n ) => {\n const icon = customIcon || (showIcon && iconVariant(variant, \"base_dark\"));\n const innerAction: any = isValidElement(action) ? action : [action];\n\n const { classes, cx } = useClasses(classesProp);\n const { activeTheme } = useTheme();\n\n return (\n <SnackbarContent\n ref={ref}\n id={id}\n classes={{\n root: classes.root,\n message: classes.message,\n }}\n className={cx(className, classes?.[variant])}\n message={\n <div id={setId(id, \"message\")} className={classes.messageSpan}>\n {icon && <div className={classes.iconVariant}>{icon}</div>}\n <div className={classes.messageText}>{label}</div>\n {action && (\n <div id={setId(id, \"action\")} className={classes.action}>\n <HvActionsGeneric\n id={id}\n category={\n activeTheme?.snackbar.actionButtonVariant as HvButtonVariant\n }\n actions={innerAction}\n actionsCallback={actionCallback}\n />\n </div>\n )}\n </div>\n }\n {...others}\n />\n );\n }\n);\n"],"names":["HvSnackbarContent","forwardRef","className","id","classes","classesProp","label","variant","showIcon","customIcon","action","actionCallback","others","ref","icon","iconVariant","innerAction","isValidElement","cx","useClasses","activeTheme","useTheme","SnackbarContent","root","message","setId","messageSpan","children","_jsx","messageText","HvActionsGeneric","category","snackbar","actionButtonVariant","actions","actionsCallback"],"mappings":";;;;;;;;;;;;AA0CaA,MAAAA,oBAAoBC,iBAI/B,CACE;AAAA,EACEC;AAAAA,EACAC;AAAAA,EACAC,SAASC,cAAc,CAAC;AAAA,EACxBC;AAAAA,EACAC,UAAU;AAAA,EACVC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACL,GACAC,QACG;AACH,QAAMC,OAAOL,cAAeD,YAAYO,YAAAA,QAAYR,SAAS,WAAW;AACxE,QAAMS,cAAmBC,MAAAA,eAAeP,MAAM,IAAIA,SAAS,CAACA,MAAM;AAE5D,QAAA;AAAA,IAAEN;AAAAA,IAASc;AAAAA,EAAAA,IAAOC,8BAAAA,WAAWd,WAAW;AACxC,QAAA;AAAA,IAAEe;AAAAA,MAAgBC,SAAS,SAAA;AAEjC,wCACGC,yBAAAA,SAAe;AAAA,IACdT;AAAAA,IACAV;AAAAA,IACAC,SAAS;AAAA,MACPmB,MAAMnB,QAAQmB;AAAAA,MACdC,SAASpB,QAAQoB;AAAAA,IACnB;AAAA,IACAtB,WAAWgB,GAAGhB,WAAWE,mCAAUG,QAAQ;AAAA,IAC3CiB,yCACE,OAAA;AAAA,MAAKrB,IAAIsB,MAAAA,MAAMtB,IAAI,SAAS;AAAA,MAAGD,WAAWE,QAAQsB;AAAAA,MAAYC,UAAA,CAC3Db,QAAQc,2BAAAA,IAAA,OAAA;AAAA,QAAK1B,WAAWE,QAAQW;AAAAA,QAAYY,UAAEb;AAAAA,MAAAA,CAAU,GACzDc,2BAAAA,IAAA,OAAA;AAAA,QAAK1B,WAAWE,QAAQyB;AAAAA,QAAYF,UAAErB;AAAAA,MAAAA,CAAW,GAChDI,UACCkB,2BAAAA,IAAA,OAAA;AAAA,QAAKzB,IAAIsB,MAAAA,MAAMtB,IAAI,QAAQ;AAAA,QAAGD,WAAWE,QAAQM;AAAAA,QAAOiB,yCACrDG,iCAAgB;AAAA,UACf3B;AAAAA,UACA4B,UACEX,2CAAaY,SAASC;AAAAA,UAExBC,SAASlB;AAAAA,UACTmB,iBAAiBxB;AAAAA,QAAAA,CAClB;AAAA,MAAA,CACE,CACN;AAAA,IAAA,CACE;AAAA,IACN,GACGC;AAAAA,EAAAA,CACL;AAEL,CACF;;;"}
|
package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const uikitStyles = require("@hitachivantara/uikit-styles");
|
|
4
|
+
const actionsGenericClasses = require("../../ActionsGeneric/actionsGenericClasses.cjs");
|
|
4
5
|
const classes = require("../../../utils/classes.cjs");
|
|
5
6
|
const {
|
|
6
7
|
useClasses,
|
|
@@ -43,7 +44,15 @@ const {
|
|
|
43
44
|
wordBreak: "break-word"
|
|
44
45
|
},
|
|
45
46
|
action: {
|
|
46
|
-
textAlign: "right"
|
|
47
|
+
textAlign: "right",
|
|
48
|
+
marginLeft: uikitStyles.theme.snackbar.actionMarginLeft,
|
|
49
|
+
[`& .${actionsGenericClasses.default.button}`]: {
|
|
50
|
+
borderColor: uikitStyles.theme.colors.base_dark,
|
|
51
|
+
color: uikitStyles.theme.colors.base_dark,
|
|
52
|
+
"&:hover": {
|
|
53
|
+
borderColor: uikitStyles.theme.colors.base_dark
|
|
54
|
+
}
|
|
55
|
+
}
|
|
47
56
|
},
|
|
48
57
|
iconVariant: {}
|
|
49
58
|
});
|
package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SnackbarContentWrapper.styles.cjs","sources":["../../../../../src/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\nimport { CSSProperties } from \"react\";\nimport { createClasses } from \"@core/utils\";\n\nexport const { useClasses, staticClasses } = createClasses(\n \"HvSnackbar-Content\",\n {\n root: {\n width: \"310px\",\n minHeight: \"52px\",\n maxHeight: \"92px\",\n padding: theme.space.xs,\n boxShadow: \"none\",\n },\n success: {\n backgroundColor: theme.colors.positive_20,\n },\n error: {\n backgroundColor: theme.colors.negative_20,\n },\n default: {\n backgroundColor: theme.colors.neutral_20,\n },\n warning: {\n backgroundColor: theme.colors.warning_20,\n },\n message: {\n padding: 0,\n width: \"100%\",\n },\n messageSpan: {\n display: \"flex\",\n alignItems: \"center\",\n minHeight: \"32px\",\n },\n messageText: {\n ...(theme.typography.body as CSSProperties),\n padding: `0 ${theme.space.xs}`,\n color: theme.colors.base_dark,\n fontFamily: theme.fontFamily.body,\n maxHeight: \"72px\",\n wordBreak: \"break-word\",\n },\n action: {\n textAlign: \"right\",\n },\n iconVariant: {},\n }\n);\n"],"names":["useClasses","staticClasses","createClasses","root","width","minHeight","maxHeight","padding","theme","space","xs","boxShadow","success","backgroundColor","colors","positive_20","error","negative_20","default","neutral_20","warning","warning_20","message","messageSpan","display","alignItems","messageText","typography","body","color","base_dark","fontFamily","wordBreak","action","textAlign","iconVariant"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SnackbarContentWrapper.styles.cjs","sources":["../../../../../src/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\nimport { CSSProperties } from \"react\";\nimport { createClasses } from \"@core/utils\";\nimport { actionsGenericClasses } from \"@core/components\";\n\nexport const { useClasses, staticClasses } = createClasses(\n \"HvSnackbar-Content\",\n {\n root: {\n width: \"310px\",\n minHeight: \"52px\",\n maxHeight: \"92px\",\n padding: theme.space.xs,\n boxShadow: \"none\",\n },\n success: {\n backgroundColor: theme.colors.positive_20,\n },\n error: {\n backgroundColor: theme.colors.negative_20,\n },\n default: {\n backgroundColor: theme.colors.neutral_20,\n },\n warning: {\n backgroundColor: theme.colors.warning_20,\n },\n message: {\n padding: 0,\n width: \"100%\",\n },\n messageSpan: {\n display: \"flex\",\n alignItems: \"center\",\n minHeight: \"32px\",\n },\n messageText: {\n ...(theme.typography.body as CSSProperties),\n padding: `0 ${theme.space.xs}`,\n color: theme.colors.base_dark,\n fontFamily: theme.fontFamily.body,\n maxHeight: \"72px\",\n wordBreak: \"break-word\",\n },\n action: {\n textAlign: \"right\",\n marginLeft: theme.snackbar.actionMarginLeft,\n [`& .${actionsGenericClasses.button}`]: {\n borderColor: theme.colors.base_dark,\n color: theme.colors.base_dark,\n \"&:hover\": {\n borderColor: theme.colors.base_dark,\n },\n },\n },\n iconVariant: {},\n }\n);\n"],"names":["useClasses","staticClasses","createClasses","root","width","minHeight","maxHeight","padding","theme","space","xs","boxShadow","success","backgroundColor","colors","positive_20","error","negative_20","default","neutral_20","warning","warning_20","message","messageSpan","display","alignItems","messageText","typography","body","color","base_dark","fontFamily","wordBreak","action","textAlign","marginLeft","snackbar","actionMarginLeft","actionsGenericClasses","button","borderColor","iconVariant"],"mappings":";;;;;AAKa,MAAA;AAAA,EAAEA;AAAAA,EAAYC;AAAc,IAAIC,QAAAA,cAC3C,sBACA;AAAA,EACEC,MAAM;AAAA,IACJC,OAAO;AAAA,IACPC,WAAW;AAAA,IACXC,WAAW;AAAA,IACXC,SAASC,YAAAA,MAAMC,MAAMC;AAAAA,IACrBC,WAAW;AAAA,EACb;AAAA,EACAC,SAAS;AAAA,IACPC,iBAAiBL,YAAAA,MAAMM,OAAOC;AAAAA,EAChC;AAAA,EACAC,OAAO;AAAA,IACLH,iBAAiBL,YAAAA,MAAMM,OAAOG;AAAAA,EAChC;AAAA,EACAC,SAAS;AAAA,IACPL,iBAAiBL,YAAAA,MAAMM,OAAOK;AAAAA,EAChC;AAAA,EACAC,SAAS;AAAA,IACPP,iBAAiBL,YAAAA,MAAMM,OAAOO;AAAAA,EAChC;AAAA,EACAC,SAAS;AAAA,IACPf,SAAS;AAAA,IACTH,OAAO;AAAA,EACT;AAAA,EACAmB,aAAa;AAAA,IACXC,SAAS;AAAA,IACTC,YAAY;AAAA,IACZpB,WAAW;AAAA,EACb;AAAA,EACAqB,aAAa;AAAA,IACX,GAAIlB,YAAAA,MAAMmB,WAAWC;AAAAA,IACrBrB,SAAU,KAAIC,YAAAA,MAAMC,MAAMC;AAAAA,IAC1BmB,OAAOrB,YAAAA,MAAMM,OAAOgB;AAAAA,IACpBC,YAAYvB,YAAAA,MAAMuB,WAAWH;AAAAA,IAC7BtB,WAAW;AAAA,IACX0B,WAAW;AAAA,EACb;AAAA,EACAC,QAAQ;AAAA,IACNC,WAAW;AAAA,IACXC,YAAY3B,YAAAA,MAAM4B,SAASC;AAAAA,IAC3B,CAAE,MAAKC,8BAAsBC,QAAQ,GAAG;AAAA,MACtCC,aAAahC,YAAAA,MAAMM,OAAOgB;AAAAA,MAC1BD,OAAOrB,YAAAA,MAAMM,OAAOgB;AAAAA,MACpB,WAAW;AAAA,QACTU,aAAahC,YAAAA,MAAMM,OAAOgB;AAAAA,MAC5B;AAAA,IACF;AAAA,EACF;AAAA,EACAW,aAAa,CAAC;AAChB,CACF;;;"}
|
|
@@ -8,10 +8,10 @@ const TableContext = require("../TableContext.cjs");
|
|
|
8
8
|
const TableSectionContext = require("../TableSectionContext.cjs");
|
|
9
9
|
const TableRow_styles = require("./TableRow.styles.cjs");
|
|
10
10
|
const jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
11
|
-
const theme = require("../../../utils/theme.cjs");
|
|
12
11
|
const checkValidHexColorValue = require("../../../utils/checkValidHexColorValue.cjs");
|
|
13
12
|
const hexToRgbA = require("../../../utils/hexToRgbA.cjs");
|
|
14
13
|
const useTheme = require("../../../hooks/useTheme.cjs");
|
|
14
|
+
const theme = require("../../../utils/theme.cjs");
|
|
15
15
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
16
16
|
const _styled__default = /* @__PURE__ */ _interopDefault(_styled);
|
|
17
17
|
function _extends() {
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -69,6 +69,8 @@ const actionsClasses = require("./components/Dialog/Actions/actionsClasses.cjs")
|
|
|
69
69
|
const Actions = require("./components/Dialog/Actions/Actions.cjs");
|
|
70
70
|
const Dialog_styles = require("./components/Dialog/Dialog.styles.cjs");
|
|
71
71
|
const Dialog = require("./components/Dialog/Dialog.cjs");
|
|
72
|
+
const Drawer_styles = require("./components/Drawer/Drawer.styles.cjs");
|
|
73
|
+
const Drawer = require("./components/Drawer/Drawer.cjs");
|
|
72
74
|
const emptyStateClasses = require("./components/EmptyState/emptyStateClasses.cjs");
|
|
73
75
|
const EmptyState = require("./components/EmptyState/EmptyState.cjs");
|
|
74
76
|
const footerClasses = require("./components/Footer/footerClasses.cjs");
|
|
@@ -381,6 +383,8 @@ exports.dialogActionClasses = actionsClasses.default;
|
|
|
381
383
|
exports.HvDialogActions = Actions.HvDialogActions;
|
|
382
384
|
exports.dialogClasses = Dialog_styles.staticClasses;
|
|
383
385
|
exports.HvDialog = Dialog.HvDialog;
|
|
386
|
+
exports.drawerClasses = Drawer_styles.staticClasses;
|
|
387
|
+
exports.HvDrawer = Drawer.HvDrawer;
|
|
384
388
|
exports.emptyStateClasses = emptyStateClasses.default;
|
|
385
389
|
exports.HvEmptyState = EmptyState.HvEmptyState;
|
|
386
390
|
exports.footerClasses = footerClasses.default;
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { clsx } from "clsx";
|
|
2
2
|
import isNil from "lodash/isNil";
|
|
3
|
-
import startCase from "lodash/startCase";
|
|
4
3
|
import { isValidElement } from "react";
|
|
5
4
|
import breadCrumbClasses from "./breadCrumbClasses.js";
|
|
6
5
|
import { StyledRoot, StyledOrderedList, StyledTypography } from "./BreadCrumb.styles.js";
|
|
@@ -51,7 +50,7 @@ const HvBreadCrumb = ({
|
|
|
51
50
|
children: isValidElement(elem) && elem || isLast && /* @__PURE__ */ jsx(StyledTypography, {
|
|
52
51
|
className: clsx(breadCrumbClasses.currentPage, classes == null ? void 0 : classes.currentPage),
|
|
53
52
|
variant: "body",
|
|
54
|
-
children:
|
|
53
|
+
children: removeExtension(elem.label)
|
|
55
54
|
}) || /* @__PURE__ */ jsx(HvPage, {
|
|
56
55
|
elem,
|
|
57
56
|
classes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreadCrumb.js","sources":["../../../../src/components/BreadCrumb/BreadCrumb.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport
|
|
1
|
+
{"version":3,"file":"BreadCrumb.js","sources":["../../../../src/components/BreadCrumb/BreadCrumb.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport { isValidElement, MouseEvent } from \"react\";\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { HvDropDownMenuProps } from \"@core/components\";\nimport breadCrumbClasses, { HvBreadCrumbClasses } from \"./breadCrumbClasses\";\nimport { HvPathElement } from \"./PathElement\";\nimport { HvPage } from \"./Page\";\nimport {\n StyledOrderedList,\n StyledRoot,\n StyledTypography,\n} from \"./BreadCrumb.styles\";\nimport { pathWithSubMenu, removeExtension } from \"./utils\";\n\nexport interface HvBreadCrumbPathElement extends Record<string, any> {\n label: string;\n path: string;\n}\n\nexport interface HvBreadCrumbProps\n extends HvBaseProps<HTMLDivElement, \"onClick\"> {\n /** List of breadcrumb. */\n listRoute?: HvBreadCrumbPathElement[];\n /** URL to build the breadcrumb. */\n url?: string;\n /** Number of pages visible. */\n maxVisible?: number;\n /** The component used for the link node. Either a string to use a DOM element or a component. */\n component?: React.ElementType;\n /** Function passed to the component. If defined the component prop is used as the link node. */\n onClick?: (event: MouseEvent<HTMLElement>, data: any) => void;\n /** Props passed down to the DropDownMenu sub-menu component. */\n dropDownMenuProps?: Partial<HvDropDownMenuProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvBreadCrumbClasses;\n}\n\n/**\n * A breadcrumb is a graphical control element frequently used as a navigational aid.\n */\nexport const HvBreadCrumb = ({\n classes,\n className,\n id,\n listRoute = [],\n maxVisible,\n url,\n onClick,\n component,\n dropDownMenuProps,\n ...others\n}: HvBreadCrumbProps) => {\n const maxVisibleElem = maxVisible && maxVisible < 2 ? 2 : maxVisible;\n let listPath = listRoute.slice();\n\n // build the listPath object list\n if (!isNil(url)) {\n listPath = [];\n\n // get the domain\n const baseUrl = url.match(/^.*\\/\\/[^/]+/);\n\n // get url without domain\n const urlWithoutDomain = url.replace(/^.*\\/\\/[^/]+/, \"\");\n\n const pathNames = urlWithoutDomain.split(\"/\").filter((x) => x);\n\n pathNames.map((elem, index) =>\n listPath.push({\n label: decodeURI(elem),\n path: `${baseUrl}/${pathNames.slice(0, index + 1).join(\"/\")}`,\n })\n );\n }\n\n const breadcrumbPath =\n maxVisibleElem && listPath.length > maxVisibleElem\n ? pathWithSubMenu(\n id,\n onClick,\n listPath,\n maxVisibleElem,\n dropDownMenuProps\n )\n : listPath;\n\n return (\n <StyledRoot\n id={id}\n className={clsx(breadCrumbClasses.root, classes?.root, className)}\n {...others}\n >\n <StyledOrderedList\n className={clsx(breadCrumbClasses.orderedList, classes?.orderedList)}\n >\n {listPath.map((elem, index) => {\n const key = `key_${index}`;\n const isLast = index === breadcrumbPath.length - 1;\n\n return (\n <HvPathElement\n classes={{\n centerContainer: clsx(\n breadCrumbClasses.centerContainer,\n classes?.centerContainer\n ),\n separatorContainer: clsx(\n breadCrumbClasses.separatorContainer,\n classes?.separatorContainer\n ),\n }}\n key={key}\n last={isLast}\n >\n {(isValidElement(elem) && elem) ||\n (isLast && (\n <StyledTypography\n className={clsx(\n breadCrumbClasses.currentPage,\n classes?.currentPage\n )}\n variant=\"body\"\n >\n {removeExtension(elem.label)}\n </StyledTypography>\n )) || (\n <HvPage\n elem={elem}\n classes={{\n a: clsx(breadCrumbClasses.a, classes?.a),\n link: clsx(breadCrumbClasses.link, classes?.link),\n }}\n component={component}\n onClick={onClick}\n />\n )}\n </HvPathElement>\n );\n })}\n </StyledOrderedList>\n </StyledRoot>\n );\n};\n"],"names":["HvBreadCrumb","classes","className","id","listRoute","maxVisible","url","onClick","component","dropDownMenuProps","others","maxVisibleElem","listPath","slice","isNil","baseUrl","match","urlWithoutDomain","replace","pathNames","split","filter","x","map","elem","index","push","label","decodeURI","path","join","breadcrumbPath","length","pathWithSubMenu","StyledRoot","clsx","breadCrumbClasses","root","children","StyledOrderedList","orderedList","key","isLast","HvPathElement","centerContainer","separatorContainer","last","isValidElement","StyledTypography","currentPage","variant","removeExtension","_jsx","HvPage","a","link"],"mappings":";;;;;;;;;AAyCO,MAAMA,eAAeA,CAAC;AAAA,EAC3BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,YAAY,CAAE;AAAA,EACdC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACc,MAAM;AACvB,QAAMC,iBAAiBN,cAAcA,aAAa,IAAI,IAAIA;AACtDO,MAAAA,WAAWR,UAAUS;AAGrB,MAAA,CAACC,MAAMR,GAAG,GAAG;AACfM,eAAW,CAAA;AAGLG,UAAAA,UAAUT,IAAIU,MAAM,cAAc;AAGxC,UAAMC,mBAAmBX,IAAIY,QAAQ,gBAAgB,EAAE;AAEvD,UAAMC,YAAYF,iBAAiBG,MAAM,GAAG,EAAEC,OAAQC,OAAMA,CAAC;AAE7DH,cAAUI,IAAI,CAACC,MAAMC,UACnBb,SAASc,KAAK;AAAA,MACZC,OAAOC,UAAUJ,IAAI;AAAA,MACrBK,MAAO,GAAEd,WAAWI,UAAUN,MAAM,GAAGY,QAAQ,CAAC,EAAEK,KAAK,GAAG;AAAA,IAC3D,CAAA,CACH;AAAA,EACF;AAEMC,QAAAA,iBACJpB,kBAAkBC,SAASoB,SAASrB,iBAChCsB,gBACE9B,IACAI,SACAK,UACAD,gBACAF,iBACF,IACAG;AAEN,6BACGsB,YAAU;AAAA,IACT/B;AAAAA,IACAD,WAAWiC,KAAKC,kBAAkBC,MAAMpC,mCAASoC,MAAMnC,SAAS;AAAA,IAAE,GAC9DQ;AAAAA,IAAM4B,8BAETC,mBAAiB;AAAA,MAChBrC,WAAWiC,KAAKC,kBAAkBI,aAAavC,mCAASuC,WAAW;AAAA,MAAEF,UAEpE1B,SAASW,IAAI,CAACC,MAAMC,UAAU;AAC7B,cAAMgB,MAAO,OAAMhB;AACbiB,cAAAA,SAASjB,UAAUM,eAAeC,SAAS;AAEjD,mCACGW,eAAa;AAAA,UACZ1C,SAAS;AAAA,YACP2C,iBAAiBT,KACfC,kBAAkBQ,iBAClB3C,mCAAS2C,eACX;AAAA,YACAC,oBAAoBV,KAClBC,kBAAkBS,oBAClB5C,mCAAS4C,kBACX;AAAA,UACF;AAAA,UAEAC,MAAMJ;AAAAA,UAAOJ,UAEXS,eAAevB,IAAI,KAAKA,QACvBkB,8BACEM,kBAAgB;AAAA,YACf9C,WAAWiC,KACTC,kBAAkBa,aAClBhD,mCAASgD,WACX;AAAA,YACAC,SAAQ;AAAA,YAAMZ,UAEba,gBAAgB3B,KAAKG,KAAK;AAAA,UAAA,CACX,KAElByB,oBAACC,QAAM;AAAA,YACL7B;AAAAA,YACAvB,SAAS;AAAA,cACPqD,GAAGnB,KAAKC,kBAAkBkB,GAAGrD,mCAASqD,CAAC;AAAA,cACvCC,MAAMpB,KAAKC,kBAAkBmB,MAAMtD,mCAASsD,IAAI;AAAA,YAClD;AAAA,YACA/C;AAAAA,YACAD;AAAAA,UAAAA,CACD;AAAA,WAvBAkC,GAyBQ;AAAA,MAAA,CAElB;AAAA,IAAA,CACgB;AAAA,EAAA,CACT;AAEhB;"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import startCase from "lodash/startCase";
|
|
2
1
|
import { useClasses } from "./Page.styles.js";
|
|
3
2
|
import { staticClasses } from "./Page.styles.js";
|
|
4
3
|
import { jsx } from "@emotion/react/jsx-runtime";
|
|
@@ -32,7 +31,7 @@ const HvPage = ({
|
|
|
32
31
|
className: cx(classes.link, classes.label, classes.a),
|
|
33
32
|
...others,
|
|
34
33
|
children: /* @__PURE__ */ jsx(HvOverflowTooltip, {
|
|
35
|
-
data:
|
|
34
|
+
data: elem.label
|
|
36
35
|
})
|
|
37
36
|
});
|
|
38
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.js","sources":["../../../../../src/components/BreadCrumb/Page/Page.tsx"],"sourcesContent":["import {\n HvBreadCrumbPathElement,\n HvOverflowTooltip,\n HvTypography,\n} from \"@core/components\";\nimport { ExtractNames } from \"@core/utils\";\nimport
|
|
1
|
+
{"version":3,"file":"Page.js","sources":["../../../../../src/components/BreadCrumb/Page/Page.tsx"],"sourcesContent":["import {\n HvBreadCrumbPathElement,\n HvOverflowTooltip,\n HvTypography,\n} from \"@core/components\";\nimport { ExtractNames } from \"@core/utils\";\nimport { MouseEvent } from \"react\";\nimport { staticClasses, useClasses } from \"./Page.styles\";\n\nexport { staticClasses as pageClasses };\n\nexport type HvPageClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPageProps {\n component?: React.ElementType;\n onClick?: (event: MouseEvent<HTMLElement>, data: any) => void;\n elem: HvBreadCrumbPathElement;\n classes?: HvPageClasses;\n}\n\nexport const HvPage = ({\n component,\n onClick,\n elem,\n classes: classesProp,\n}: HvPageProps) => {\n const { classes, cx } = useClasses(classesProp);\n const { label, path, ...others } = elem;\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.preventDefault();\n onClick?.(event, elem);\n };\n\n return (\n <HvTypography\n noWrap\n variant=\"label\"\n component={component || \"a\"}\n href={elem.path}\n onClick={onClick && handleClick}\n className={cx(classes.link, classes.label, classes.a)}\n {...others}\n >\n <HvOverflowTooltip data={elem.label} />\n </HvTypography>\n );\n};\n"],"names":["HvPage","component","onClick","elem","classes","classesProp","cx","useClasses","label","path","others","handleClick","event","preventDefault","HvTypography","noWrap","variant","href","className","link","a","children","HvOverflowTooltip","data"],"mappings":";;;;;AAoBO,MAAMA,SAASA,CAAC;AAAA,EACrBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,SAASC;AACE,MAAM;AACX,QAAA;AAAA,IAAED;AAAAA,IAASE;AAAAA,EAAAA,IAAOC,WAAWF,WAAW;AACxC,QAAA;AAAA,IAAEG;AAAAA,IAAOC;AAAAA,IAAM,GAAGC;AAAAA,EAAWP,IAAAA;AAC7BQ,QAAAA,cAAcA,CAACC,UAAmC;AACtDA,UAAMC,eAAe;AACrBX,uCAAUU,OAAOT;AAAAA,EAAI;AAGvB,6BACGW,cAAY;AAAA,IACXC,QAAM;AAAA,IACNC,SAAQ;AAAA,IACRf,WAAWA,aAAa;AAAA,IACxBgB,MAAMd,KAAKM;AAAAA,IACXP,SAASA,WAAWS;AAAAA,IACpBO,WAAWZ,GAAGF,QAAQe,MAAMf,QAAQI,OAAOJ,QAAQgB,CAAC;AAAA,IAAE,GAClDV;AAAAA,IAAMW,8BAETC,mBAAiB;AAAA,MAACC,MAAMpB,KAAKK;AAAAA,IAAAA,CAAQ;AAAA,EAAA,CAC1B;AAElB;"}
|