@hitachivantara/uikit-react-core 4.0.1-next.1 → 4.0.1-next.4
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/Banner/Banner.d.ts +3 -2
- package/dist/Banner/Banner.js +2 -2
- package/dist/Banner/Banner.js.map +1 -1
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
- package/dist/Banner/BannerContent/BannerContent.d.ts +41 -0
- package/dist/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
- package/dist/Banner/BannerContent/BannerContent.js.map +1 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
- package/dist/Banner/BannerContent/index.d.ts +2 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/index.js +2 -2
- package/dist/Banner/BannerContent/index.js.map +1 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
- package/dist/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
- package/dist/Banner/index.d.ts +3 -0
- package/dist/Banner/index.js +2 -2
- package/dist/Banner/index.js.map +1 -1
- package/dist/BaseSwitch/BaseSwitch.d.ts +1 -1
- package/dist/BaseSwitch/BaseSwitch.js +6 -1
- package/dist/BaseSwitch/BaseSwitch.js.map +1 -1
- package/dist/BaseSwitch/styles.js +5 -1
- package/dist/BaseSwitch/styles.js.map +1 -1
- package/dist/ScrollTo/useScrollTo.js +2 -1
- package/dist/ScrollTo/useScrollTo.js.map +1 -1
- package/dist/ScrollTo/utils.js +39 -6
- package/dist/ScrollTo/utils.js.map +1 -1
- package/dist/Table/renderers/index.js +50 -0
- package/dist/Table/renderers/index.js.map +1 -1
- package/dist/Table/renderers/renderers.js +9 -15
- package/dist/Table/renderers/renderers.js.map +1 -1
- package/dist/Tag/Tag.js +1 -13
- package/dist/Tag/Tag.js.map +1 -1
- package/dist/Tag/styles.js +5 -3
- package/dist/Tag/styles.js.map +1 -1
- package/dist/UserPreferences/index.d.ts +9 -2
- package/dist/VerticalNavigation/Navigation/Navigation.d.ts +3 -3
- package/dist/VerticalNavigation/Navigation/Navigation.js +1 -1
- package/dist/VerticalNavigation/Navigation/Navigation.js.map +1 -1
- package/dist/VerticalNavigation/index.d.ts +4 -1
- package/dist/legacy/Banner/Banner.d.ts +3 -2
- package/dist/legacy/Banner/Banner.js +2 -2
- package/dist/legacy/Banner/Banner.js.map +1 -1
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
- package/dist/legacy/Banner/BannerContent/BannerContent.d.ts +41 -0
- package/dist/legacy/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
- package/dist/legacy/Banner/BannerContent/BannerContent.js.map +1 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
- package/dist/legacy/Banner/BannerContent/index.d.ts +2 -0
- package/dist/legacy/Banner/BannerContent/index.js +2 -0
- package/dist/legacy/Banner/BannerContent/index.js.map +1 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
- package/dist/legacy/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
- package/dist/legacy/Banner/index.d.ts +3 -0
- package/dist/legacy/Banner/index.js +1 -1
- package/dist/legacy/Banner/index.js.map +1 -1
- package/dist/legacy/BaseSwitch/BaseSwitch.d.ts +1 -1
- package/dist/legacy/BaseSwitch/BaseSwitch.js +6 -1
- package/dist/legacy/BaseSwitch/BaseSwitch.js.map +1 -1
- package/dist/legacy/BaseSwitch/styles.js +5 -1
- package/dist/legacy/BaseSwitch/styles.js.map +1 -1
- package/dist/legacy/ScrollTo/useScrollTo.js +2 -1
- package/dist/legacy/ScrollTo/useScrollTo.js.map +1 -1
- package/dist/legacy/ScrollTo/utils.js +35 -5
- package/dist/legacy/ScrollTo/utils.js.map +1 -1
- package/dist/legacy/Table/renderers/index.js +1 -0
- package/dist/legacy/Table/renderers/index.js.map +1 -1
- package/dist/legacy/Table/renderers/renderers.js +6 -6
- package/dist/legacy/Table/renderers/renderers.js.map +1 -1
- package/dist/legacy/Tag/Tag.js +3 -15
- package/dist/legacy/Tag/Tag.js.map +1 -1
- package/dist/legacy/Tag/styles.js +5 -3
- package/dist/legacy/Tag/styles.js.map +1 -1
- package/dist/legacy/UserPreferences/index.d.ts +9 -2
- package/dist/legacy/VerticalNavigation/Navigation/Navigation.d.ts +3 -3
- package/dist/legacy/VerticalNavigation/Navigation/Navigation.js +1 -1
- package/dist/legacy/VerticalNavigation/Navigation/Navigation.js.map +1 -1
- package/dist/legacy/VerticalNavigation/index.d.ts +4 -1
- package/dist/modern/Banner/Banner.d.ts +3 -2
- package/dist/modern/Banner/Banner.js +2 -2
- package/dist/modern/Banner/Banner.js.map +1 -1
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
- package/dist/modern/Banner/BannerContent/BannerContent.d.ts +41 -0
- package/dist/modern/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
- package/dist/modern/Banner/BannerContent/BannerContent.js.map +1 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
- package/dist/modern/Banner/BannerContent/index.d.ts +2 -0
- package/dist/modern/Banner/BannerContent/index.js +2 -0
- package/dist/modern/Banner/BannerContent/index.js.map +1 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
- package/dist/modern/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
- package/dist/modern/Banner/index.d.ts +3 -0
- package/dist/modern/Banner/index.js +1 -1
- package/dist/modern/Banner/index.js.map +1 -1
- package/dist/modern/BaseSwitch/BaseSwitch.d.ts +1 -1
- package/dist/modern/BaseSwitch/BaseSwitch.js +6 -1
- package/dist/modern/BaseSwitch/BaseSwitch.js.map +1 -1
- package/dist/modern/BaseSwitch/styles.js +5 -1
- package/dist/modern/BaseSwitch/styles.js.map +1 -1
- package/dist/modern/ScrollTo/useScrollTo.js +2 -2
- package/dist/modern/ScrollTo/useScrollTo.js.map +1 -1
- package/dist/modern/ScrollTo/utils.js +32 -6
- package/dist/modern/ScrollTo/utils.js.map +1 -1
- package/dist/modern/Table/renderers/index.js +1 -0
- package/dist/modern/Table/renderers/index.js.map +1 -1
- package/dist/modern/Table/renderers/renderers.js +6 -6
- package/dist/modern/Table/renderers/renderers.js.map +1 -1
- package/dist/modern/Tag/Tag.js +3 -15
- package/dist/modern/Tag/Tag.js.map +1 -1
- package/dist/modern/Tag/styles.js +5 -3
- package/dist/modern/Tag/styles.js.map +1 -1
- package/dist/modern/UserPreferences/index.d.ts +9 -2
- package/dist/modern/VerticalNavigation/Navigation/Navigation.d.ts +3 -3
- package/dist/modern/VerticalNavigation/Navigation/Navigation.js +1 -1
- package/dist/modern/VerticalNavigation/Navigation/Navigation.js.map +1 -1
- package/dist/modern/VerticalNavigation/index.d.ts +4 -1
- package/package.json +3 -3
- package/dist/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
- package/dist/Banner/BannerWrapper/index.js.map +0 -1
- package/dist/legacy/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
- package/dist/legacy/Banner/BannerWrapper/index.js +0 -2
- package/dist/legacy/Banner/BannerWrapper/index.js.map +0 -1
- package/dist/modern/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
- package/dist/modern/Banner/BannerWrapper/index.js +0 -2
- package/dist/modern/Banner/BannerWrapper/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default","HvDateColumnCell","HvDropdownColumnCell","HvProgressColumnCell","normalizeProgressBar","HvSwitchColumnCell"],"sources":["../../../../src/Table/renderers/index.js"],"sourcesContent":["export { default as HvDateColumnCell } from \"./DateColumnCell\";\nexport { default as HvDropdownColumnCell } from \"./DropdownColumnCell\";\nexport { default as HvProgressColumnCell, normalizeProgressBar } from \"./ProgressColumnCell\";\nexport { default as HvSwitchColumnCell } from \"./SwitchColumnCell\";\n"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["hvTextColumn","hvNumberColumn","hvDateColumn","hvExpandColumn","hvTagColumn","hvSwitchColumn","hvDropdownColumn","hvProgressColumn","default","HvDateColumnCell","HvDropdownColumnCell","HvProgressColumnCell","normalizeProgressBar","HvSwitchColumnCell"],"sources":["../../../../src/Table/renderers/index.js"],"sourcesContent":["export {\n hvTextColumn,\n hvNumberColumn,\n hvDateColumn,\n hvExpandColumn,\n hvTagColumn,\n hvSwitchColumn,\n hvDropdownColumn,\n hvProgressColumn,\n} from \"./renderers\";\nexport { default as HvDateColumnCell } from \"./DateColumnCell\";\nexport { default as HvDropdownColumnCell } from \"./DropdownColumnCell\";\nexport { default as HvProgressColumnCell, normalizeProgressBar } from \"./ProgressColumnCell\";\nexport { default as HvSwitchColumnCell } from \"./SwitchColumnCell\";\n"],"mappings":"AAAA,SACEA,YADF,EAEEC,cAFF,EAGEC,YAHF,EAIEC,cAJF,EAKEC,WALF,EAMEC,cANF,EAOEC,gBAPF,EAQEC,gBARF,QASO,aATP;AAUA,SAASC,OAAO,IAAIC,gBAApB,QAA4C,kBAA5C;AACA,SAASD,OAAO,IAAIE,oBAApB,QAAgD,sBAAhD;AACA,SAASF,OAAO,IAAIG,oBAApB,EAA0CC,oBAA1C,QAAsE,sBAAtE;AACA,SAASJ,OAAO,IAAIK,kBAApB,QAA8C,oBAA9C"}
|
|
@@ -28,7 +28,7 @@ import { hvStringFallback, hvNumberFallback } from "../utils";
|
|
|
28
28
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
29
29
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
30
30
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
31
|
-
export
|
|
31
|
+
export function hvTextColumn(col) {
|
|
32
32
|
return _objectSpread({
|
|
33
33
|
Cell: function Cell(cellProps) {
|
|
34
34
|
return /*#__PURE__*/_jsx(HvOverflowTooltip, {
|
|
@@ -37,8 +37,8 @@ export var hvTextColumn = function hvTextColumn(col) {
|
|
|
37
37
|
},
|
|
38
38
|
sortType: "alphanumeric"
|
|
39
39
|
}, col);
|
|
40
|
-
}
|
|
41
|
-
export
|
|
40
|
+
}
|
|
41
|
+
export function hvNumberColumn(col) {
|
|
42
42
|
return _objectSpread({
|
|
43
43
|
Cell: function Cell(_ref) {
|
|
44
44
|
var value = _ref.value;
|
|
@@ -47,8 +47,8 @@ export var hvNumberColumn = function hvNumberColumn(col) {
|
|
|
47
47
|
align: "right",
|
|
48
48
|
sortType: "number"
|
|
49
49
|
}, col);
|
|
50
|
-
}
|
|
51
|
-
export
|
|
50
|
+
}
|
|
51
|
+
export function hvDateColumn(col, dateFormat) {
|
|
52
52
|
return _objectSpread({
|
|
53
53
|
Cell: function Cell(cellProps) {
|
|
54
54
|
return /*#__PURE__*/_jsx(DateColumnCell, {
|
|
@@ -59,7 +59,7 @@ export var hvDateColumn = function hvDateColumn(col, dateFormat) {
|
|
|
59
59
|
sortType: "alphanumeric",
|
|
60
60
|
sortDescFirst: true
|
|
61
61
|
}, col);
|
|
62
|
-
}
|
|
62
|
+
}
|
|
63
63
|
export function hvExpandColumn(col, expandRowButtonAriaLabel, collapseRowButtonAriaLabel, getCanRowExpand) {
|
|
64
64
|
return _objectSpread({
|
|
65
65
|
Cell: function Cell(cellProps) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderers.js","names":["React","DropDownXS","DropRightXS","HvButton","HvTag","HvTypography","HvOverflowTooltip","setId","DateColumnCell","SwitchColumnCell","ProgressColumnCell","DropdownColumnCell","hvStringFallback","hvNumberFallback","hvTextColumn","col","Cell","cellProps","value","sortType","hvNumberColumn","align","hvDateColumn","dateFormat","sortDescFirst","hvExpandColumn","expandRowButtonAriaLabel","collapseRowButtonAriaLabel","getCanRowExpand","row","getToggleRowExpandedProps","onClick","hasContent","isExpanded","position","left","top","cellStyle","hvTagColumn","valueDataKey","colorDataKey","textColorDataKey","fromRowData","tagProps","original","name","color","textColor","paddingTop","paddingBottom","hvSwitchColumn","switchLabel","falseLabel","trueLabel","switchProps","id","hvDropdownColumn","placeholder","disabledPlaceholder","onChange","column","dsbld","length","val","hvProgressColumn","getPartial","getTotal","partial","total"],"sources":["../../../../src/Table/renderers/renderers.js"],"sourcesContent":["import React from \"react\";\nimport { DropDownXS, DropRightXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvButton from \"../../Button\";\nimport HvTag from \"../../Tag\";\nimport HvTypography from \"../../Typography\";\nimport HvOverflowTooltip from \"../../OverflowTooltip\";\nimport { setId } from \"../../utils\";\n\nimport DateColumnCell from \"./DateColumnCell\";\nimport SwitchColumnCell from \"./SwitchColumnCell\";\nimport ProgressColumnCell from \"./ProgressColumnCell\";\nimport DropdownColumnCell from \"./DropdownColumnCell\";\nimport { hvStringFallback, hvNumberFallback } from \"../utils\";\n\nexport const hvTextColumn = (col) => {\n return {\n Cell: (cellProps) => <HvOverflowTooltip data={hvStringFallback(cellProps?.value)} />,\n sortType: \"alphanumeric\",\n ...col,\n };\n};\n\nexport const hvNumberColumn = (col) => {\n return {\n Cell: ({ value }) => hvNumberFallback(value),\n align: \"right\",\n sortType: \"number\",\n ...col,\n };\n};\n\nexport const hvDateColumn = (col, dateFormat) => {\n return {\n Cell: (cellProps) => <DateColumnCell date={cellProps?.value} dateFormat={dateFormat} />,\n sortType: \"alphanumeric\",\n sortDescFirst: true,\n ...col,\n };\n};\n\nexport function hvExpandColumn(\n col,\n expandRowButtonAriaLabel,\n collapseRowButtonAriaLabel,\n getCanRowExpand\n) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n const { onClick } = row.getToggleRowExpandedProps();\n\n const hasContent = getCanRowExpand?.(row) ?? true;\n\n return (\n <>\n {hasContent && (\n <HvButton\n icon\n category=\"ghost\"\n aria-label={row.isExpanded ? collapseRowButtonAriaLabel : expandRowButtonAriaLabel}\n aria-expanded={row.isExpanded}\n onClick={onClick}\n style={{ position: \"absolute\", left: 0, top: 0 }}\n >\n {row.isExpanded ? <DropDownXS /> : <DropRightXS />}\n </HvButton>\n )}\n\n <HvOverflowTooltip data={hvStringFallback(value)} />\n </>\n );\n },\n sortType: \"alphanumeric\",\n cellStyle: {\n position: \"relative\",\n },\n ...col,\n };\n}\n\nexport function hvTagColumn(\n col,\n valueDataKey,\n colorDataKey,\n textColorDataKey,\n fromRowData = false,\n tagProps\n) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n if (!value) {\n return \"—\";\n }\n\n const {\n [valueDataKey]: name,\n [colorDataKey]: color,\n [textColorDataKey]: textColor,\n } = fromRowData ? row.original : value;\n\n return (\n <HvTag\n label={<HvTypography variant=\"normalText\">{name}</HvTypography>}\n type=\"semantic\"\n color={color}\n style={textColor != null ? { color: textColor } : {}}\n tabIndex={-1}\n {...tagProps}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvSwitchColumn(col, switchLabel, falseLabel, trueLabel, switchProps) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n return (\n <SwitchColumnCell\n checked={value}\n value={row.id}\n switchLabel={switchLabel}\n falseLabel={falseLabel}\n trueLabel={trueLabel}\n switchProps={switchProps}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvDropdownColumn(col, id, placeholder, disabledPlaceholder, onChange) {\n return {\n Cell: (cellProps) => {\n const { value, row, column } = cellProps;\n const dsbld = value.length < 1;\n return (\n <DropdownColumnCell\n values={value}\n placeholder={dsbld ? disabledPlaceholder : placeholder}\n onChange={(val) => onChange?.(row.id, val)}\n disabled={dsbld}\n dropdownProps={{\n \"aria-labelledby\": setId(id, column.id),\n }}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvProgressColumn(col, getPartial, getTotal, color) {\n return {\n Cell: (cellProps) => {\n const { row } = cellProps;\n const partial = getPartial?.(row);\n const total = getTotal?.(row);\n\n if (total) {\n return <ProgressColumnCell partial={partial} total={total} color={color} />;\n }\n\n return \"—\";\n },\n\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"renderers.js","names":["React","DropDownXS","DropRightXS","HvButton","HvTag","HvTypography","HvOverflowTooltip","setId","DateColumnCell","SwitchColumnCell","ProgressColumnCell","DropdownColumnCell","hvStringFallback","hvNumberFallback","hvTextColumn","col","Cell","cellProps","value","sortType","hvNumberColumn","align","hvDateColumn","dateFormat","sortDescFirst","hvExpandColumn","expandRowButtonAriaLabel","collapseRowButtonAriaLabel","getCanRowExpand","row","getToggleRowExpandedProps","onClick","hasContent","isExpanded","position","left","top","cellStyle","hvTagColumn","valueDataKey","colorDataKey","textColorDataKey","fromRowData","tagProps","original","name","color","textColor","paddingTop","paddingBottom","hvSwitchColumn","switchLabel","falseLabel","trueLabel","switchProps","id","hvDropdownColumn","placeholder","disabledPlaceholder","onChange","column","dsbld","length","val","hvProgressColumn","getPartial","getTotal","partial","total"],"sources":["../../../../src/Table/renderers/renderers.js"],"sourcesContent":["import React from \"react\";\nimport { DropDownXS, DropRightXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvButton from \"../../Button\";\nimport HvTag from \"../../Tag\";\nimport HvTypography from \"../../Typography\";\nimport HvOverflowTooltip from \"../../OverflowTooltip\";\nimport { setId } from \"../../utils\";\n\nimport DateColumnCell from \"./DateColumnCell\";\nimport SwitchColumnCell from \"./SwitchColumnCell\";\nimport ProgressColumnCell from \"./ProgressColumnCell\";\nimport DropdownColumnCell from \"./DropdownColumnCell\";\nimport { hvStringFallback, hvNumberFallback } from \"../utils\";\n\nexport function hvTextColumn(col) {\n return {\n Cell: (cellProps) => <HvOverflowTooltip data={hvStringFallback(cellProps?.value)} />,\n sortType: \"alphanumeric\",\n ...col,\n };\n}\n\nexport function hvNumberColumn(col) {\n return {\n Cell: ({ value }) => hvNumberFallback(value),\n align: \"right\",\n sortType: \"number\",\n ...col,\n };\n}\n\nexport function hvDateColumn(col, dateFormat) {\n return {\n Cell: (cellProps) => <DateColumnCell date={cellProps?.value} dateFormat={dateFormat} />,\n sortType: \"alphanumeric\",\n sortDescFirst: true,\n ...col,\n };\n}\n\nexport function hvExpandColumn(\n col,\n expandRowButtonAriaLabel,\n collapseRowButtonAriaLabel,\n getCanRowExpand\n) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n const { onClick } = row.getToggleRowExpandedProps();\n\n const hasContent = getCanRowExpand?.(row) ?? true;\n\n return (\n <>\n {hasContent && (\n <HvButton\n icon\n category=\"ghost\"\n aria-label={row.isExpanded ? collapseRowButtonAriaLabel : expandRowButtonAriaLabel}\n aria-expanded={row.isExpanded}\n onClick={onClick}\n style={{ position: \"absolute\", left: 0, top: 0 }}\n >\n {row.isExpanded ? <DropDownXS /> : <DropRightXS />}\n </HvButton>\n )}\n\n <HvOverflowTooltip data={hvStringFallback(value)} />\n </>\n );\n },\n sortType: \"alphanumeric\",\n cellStyle: {\n position: \"relative\",\n },\n ...col,\n };\n}\n\nexport function hvTagColumn(\n col,\n valueDataKey,\n colorDataKey,\n textColorDataKey,\n fromRowData = false,\n tagProps\n) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n if (!value) {\n return \"—\";\n }\n\n const {\n [valueDataKey]: name,\n [colorDataKey]: color,\n [textColorDataKey]: textColor,\n } = fromRowData ? row.original : value;\n\n return (\n <HvTag\n label={<HvTypography variant=\"normalText\">{name}</HvTypography>}\n type=\"semantic\"\n color={color}\n style={textColor != null ? { color: textColor } : {}}\n tabIndex={-1}\n {...tagProps}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvSwitchColumn(col, switchLabel, falseLabel, trueLabel, switchProps) {\n return {\n Cell: (cellProps) => {\n const { value, row } = cellProps;\n return (\n <SwitchColumnCell\n checked={value}\n value={row.id}\n switchLabel={switchLabel}\n falseLabel={falseLabel}\n trueLabel={trueLabel}\n switchProps={switchProps}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvDropdownColumn(col, id, placeholder, disabledPlaceholder, onChange) {\n return {\n Cell: (cellProps) => {\n const { value, row, column } = cellProps;\n const dsbld = value.length < 1;\n return (\n <DropdownColumnCell\n values={value}\n placeholder={dsbld ? disabledPlaceholder : placeholder}\n onChange={(val) => onChange?.(row.id, val)}\n disabled={dsbld}\n dropdownProps={{\n \"aria-labelledby\": setId(id, column.id),\n }}\n />\n );\n },\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n\nexport function hvProgressColumn(col, getPartial, getTotal, color) {\n return {\n Cell: (cellProps) => {\n const { row } = cellProps;\n const partial = getPartial?.(row);\n const total = getTotal?.(row);\n\n if (total) {\n return <ProgressColumnCell partial={partial} total={total} color={color} />;\n }\n\n return \"—\";\n },\n\n cellStyle: {\n paddingTop: 0,\n paddingBottom: 0,\n },\n ...col,\n };\n}\n"],"mappings":"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"}
|
package/dist/legacy/Tag/Tag.js
CHANGED
|
@@ -14,14 +14,14 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
14
14
|
|
|
15
15
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
16
16
|
|
|
17
|
-
import React, {
|
|
17
|
+
import React, { useState } from "react";
|
|
18
18
|
import { Chip } from "@mui/material";
|
|
19
19
|
import { withStyles, useTheme } from "@mui/styles";
|
|
20
20
|
import PropTypes from "prop-types";
|
|
21
21
|
import clsx from "clsx";
|
|
22
22
|
import { CloseXS } from "@hitachivantara/uikit-react-icons";
|
|
23
23
|
import fade from "../utils/hexToRgbA";
|
|
24
|
-
import { HvButton
|
|
24
|
+
import { HvButton } from "..";
|
|
25
25
|
import styles from "./styles";
|
|
26
26
|
import { getOnDeleteCallback, hasDeleteAction, hasClickAction } from "./utils";
|
|
27
27
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -52,8 +52,6 @@ var getColor = function getColor(theme, customColor, type) {
|
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
var HvTag = function HvTag(props) {
|
|
55
|
-
var _HvTypography;
|
|
56
|
-
|
|
57
55
|
var classes = props.classes,
|
|
58
56
|
style = props.style,
|
|
59
57
|
className = props.className,
|
|
@@ -115,18 +113,8 @@ var HvTag = function HvTag(props) {
|
|
|
115
113
|
hover = _useState2[0],
|
|
116
114
|
setHover = _useState2[1];
|
|
117
115
|
|
|
118
|
-
var chipLabel = useMemo(function () {
|
|
119
|
-
if (typeof label === "string") {
|
|
120
|
-
return _HvTypography || (_HvTypography = /*#__PURE__*/_jsx(HvTypography, {
|
|
121
|
-
variant: "normalText",
|
|
122
|
-
children: label
|
|
123
|
-
}));
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
return label;
|
|
127
|
-
}, [label]);
|
|
128
116
|
return /*#__PURE__*/_jsx(Chip, _objectSpread({
|
|
129
|
-
label:
|
|
117
|
+
label: label,
|
|
130
118
|
className: clsx(classes.root, className),
|
|
131
119
|
onMouseEnter: function onMouseEnter() {
|
|
132
120
|
setHover(!!onClick);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tag.js","names":["React","useMemo","useState","Chip","withStyles","useTheme","PropTypes","clsx","CloseXS","fade","HvButton","HvTypography","styles","getOnDeleteCallback","hasDeleteAction","hasClickAction","getColor","theme","customColor","type","defaultSemanticColor","hv","palette","semantic","sema7","defaultCategoricalColor","viz","categorical","cviz1","backgroundColor","HvTag","props","classes","style","className","label","disabled","color","deleteIcon","onDelete","onClick","role","deleteButtonArialLabel","deleteButtonProps","others","getDeleteIcon","disabledSemanticColor","tabIndex","startIcon","tagButton","focusVisible","primary","primaryButton","cursor","undefined","height","inlineStyle","categoricalBackgroundColor","hover","setHover","chipLabel","root","boxShadow","chipRoot","clickable","categoricalDisabled","categoricalFocus","disabledDeleteIcon","propTypes","shape","string","titleOverflow","semanticTextColor","categoricalTextColor","deletable","isRequired","instanceOf","Object","node","bool","oneOf","func","name"],"sources":["../../../src/Tag/Tag.js"],"sourcesContent":["import React, { useMemo, useState } from \"react\";\nimport { Chip } from \"@mui/material\";\nimport { withStyles, useTheme } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { CloseXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport fade from \"../utils/hexToRgbA\";\nimport { HvButton, HvTypography } from \"..\";\nimport styles from \"./styles\";\nimport { getOnDeleteCallback, hasDeleteAction, hasClickAction } from \"./utils\";\n\nconst getColor = (theme, customColor, type) => {\n const defaultSemanticColor = theme.hv.palette.semantic.sema7;\n const defaultCategoricalColor = theme.hv.viz.palette.categorical.cviz1;\n\n let backgroundColor;\n\n if (type === \"semantic\") {\n backgroundColor = theme.palette[customColor] || customColor || defaultSemanticColor;\n }\n if (type === \"categorical\") {\n backgroundColor =\n theme.hv.viz.palette.categorical[customColor] || customColor || defaultCategoricalColor;\n }\n\n return backgroundColor;\n};\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products\n *\n * It leverages the Chip component from Material UI\n */\nconst HvTag = (props) => {\n const {\n classes,\n style,\n className,\n label,\n disabled,\n type = \"semantic\",\n color,\n deleteIcon,\n onDelete,\n onClick,\n role,\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = props;\n\n const getDeleteIcon = () => {\n const disabledSemanticColor = type === \"semantic\" ? \"atmo5\" : \"base2\";\n const { tabIndex = 0 } = deleteButtonProps;\n\n return (\n <HvButton\n classes={{\n startIcon: classes.tagButton,\n focusVisible: classes.focusVisible,\n primary: classes.primaryButton,\n }}\n aria-label={deleteButtonArialLabel}\n tabIndex={tabIndex}\n {...deleteButtonProps}\n >\n <CloseXS\n iconSize=\"XS\"\n style={{\n ...(disabled ? { cursor: \"not-allowed\" } : undefined),\n height: 16,\n }}\n color={disabled ? disabledSemanticColor : \"base2\"}\n />\n </HvButton>\n );\n };\n\n const theme = useTheme();\n\n const inlineStyle = {\n ...style,\n };\n\n let categoricalBackgroundColor;\n\n if (type === \"semantic\") {\n inlineStyle.backgroundColor = getColor(theme, color, type);\n } else if (type === \"categorical\") {\n categoricalBackgroundColor = getColor(theme, color, type);\n\n inlineStyle.backgroundColor = fade(categoricalBackgroundColor, 0.3);\n }\n\n const [hover, setHover] = useState(false);\n\n const chipLabel = useMemo(() => {\n if (typeof label === \"string\") {\n return <HvTypography variant=\"normalText\">{label}</HvTypography>;\n }\n\n return label;\n }, [label]);\n\n return (\n <Chip\n label={chipLabel}\n className={clsx(classes.root, className)}\n onMouseEnter={() => {\n setHover(!!onClick);\n }}\n onMouseLeave={() => {\n setHover(false);\n }}\n style={{\n ...(disabled ? null : inlineStyle),\n ...(hover && !disabled ? { boxShadow: `0 0 0 1pt ${categoricalBackgroundColor}` } : null),\n }}\n classes={{\n root: clsx(classes.chipRoot, {\n [classes.disabled]: disabled,\n [classes.clickable]: !!onClick,\n [classes.categorical]: type === \"categorical\",\n [classes.categoricalFocus]: type === \"categorical\" && !disabled,\n [classes.categoricalDisabled]: type === \"categorical\" && disabled,\n }),\n label: classes.label,\n deleteIcon: clsx(classes.deleteIcon, {\n [classes.disabledDeleteIcon]: disabled,\n }),\n }}\n deleteIcon={(hasDeleteAction(onDelete) && deleteIcon) || getDeleteIcon()}\n onDelete={getOnDeleteCallback(disabled, onDelete)}\n onClick={disabled ? undefined : onClick}\n role={role || (hasClickAction(onClick) ? \"button\" : undefined)}\n tabIndex={hasDeleteAction(onDelete) ? undefined : 0}\n {...others}\n />\n );\n};\n\nHvTag.propTypes = {\n /**\n * A Jss Object used to override or extend the styles applied to the radio button.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n chipRoot: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n label: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n tagButton: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n deleteIcon: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n disabledDeleteIcon: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n titleOverflow: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categorical: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalDisabled: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n disabled: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n semanticTextColor: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalTextColor: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n deletable: PropTypes.string,\n /**\n * Styles applied to the component if has onClick.\n */\n clickable: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n focusVisible: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n primaryButton: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalFocus: PropTypes.string,\n }).isRequired,\n\n /**\n * Inline styles to be applied to the root element.\n */\n style: PropTypes.instanceOf(Object),\n\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n\n /**\n * The label of the tag element.\n *\n */\n label: PropTypes.node,\n\n /**\n * Indicates that the form element is disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * The type of the tag element.\n *\n * A tag can be of semantic or categoric type\n */\n type: PropTypes.oneOf([\"semantic\", \"categorical\"]),\n\n /**\n * Background color to be applied to the tag\n */\n color: PropTypes.string,\n /**\n * Icon used to customize the delete icon in the Chip element\n */\n deleteIcon: PropTypes.node,\n\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component,\n * in order to render the delete icon\n */\n onDelete: PropTypes.func,\n /**\n * Callback triggered when any item is clicked.\n */\n onClick: PropTypes.func,\n\n /**\n * The role of the element with an attributed event.\n */\n role: PropTypes.string,\n /**\n * Aria properties to apply to delete button in tag\n */\n deleteButtonArialLabel: PropTypes.string,\n /**\n * Props to apply to delete button\n */\n deleteButtonProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvTag\" })(HvTag);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tag.js","names":["React","useState","Chip","withStyles","useTheme","PropTypes","clsx","CloseXS","fade","HvButton","styles","getOnDeleteCallback","hasDeleteAction","hasClickAction","getColor","theme","customColor","type","defaultSemanticColor","hv","palette","semantic","sema7","defaultCategoricalColor","viz","categorical","cviz1","backgroundColor","HvTag","props","classes","style","className","label","disabled","color","deleteIcon","onDelete","onClick","role","deleteButtonArialLabel","deleteButtonProps","others","getDeleteIcon","disabledSemanticColor","tabIndex","startIcon","tagButton","focusVisible","primary","primaryButton","cursor","undefined","height","inlineStyle","categoricalBackgroundColor","hover","setHover","root","boxShadow","chipRoot","clickable","categoricalDisabled","categoricalFocus","disabledDeleteIcon","propTypes","shape","string","titleOverflow","semanticTextColor","categoricalTextColor","deletable","isRequired","instanceOf","Object","node","bool","oneOf","func","name"],"sources":["../../../src/Tag/Tag.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport { Chip } from \"@mui/material\";\nimport { withStyles, useTheme } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { CloseXS } from \"@hitachivantara/uikit-react-icons\";\nimport fade from \"../utils/hexToRgbA\";\nimport { HvButton } from \"..\";\nimport styles from \"./styles\";\nimport { getOnDeleteCallback, hasDeleteAction, hasClickAction } from \"./utils\";\n\nconst getColor = (theme, customColor, type) => {\n const defaultSemanticColor = theme.hv.palette.semantic.sema7;\n const defaultCategoricalColor = theme.hv.viz.palette.categorical.cviz1;\n\n let backgroundColor;\n\n if (type === \"semantic\") {\n backgroundColor = theme.palette[customColor] || customColor || defaultSemanticColor;\n }\n if (type === \"categorical\") {\n backgroundColor =\n theme.hv.viz.palette.categorical[customColor] || customColor || defaultCategoricalColor;\n }\n\n return backgroundColor;\n};\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products\n *\n * It leverages the Chip component from Material UI\n */\nconst HvTag = (props) => {\n const {\n classes,\n style,\n className,\n label,\n disabled,\n type = \"semantic\",\n color,\n deleteIcon,\n onDelete,\n onClick,\n role,\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = props;\n\n const getDeleteIcon = () => {\n const disabledSemanticColor = type === \"semantic\" ? \"atmo5\" : \"base2\";\n const { tabIndex = 0 } = deleteButtonProps;\n\n return (\n <HvButton\n classes={{\n startIcon: classes.tagButton,\n focusVisible: classes.focusVisible,\n primary: classes.primaryButton,\n }}\n aria-label={deleteButtonArialLabel}\n tabIndex={tabIndex}\n {...deleteButtonProps}\n >\n <CloseXS\n iconSize=\"XS\"\n style={{\n ...(disabled ? { cursor: \"not-allowed\" } : undefined),\n height: 16,\n }}\n color={disabled ? disabledSemanticColor : \"base2\"}\n />\n </HvButton>\n );\n };\n\n const theme = useTheme();\n\n const inlineStyle = {\n ...style,\n };\n\n let categoricalBackgroundColor;\n\n if (type === \"semantic\") {\n inlineStyle.backgroundColor = getColor(theme, color, type);\n } else if (type === \"categorical\") {\n categoricalBackgroundColor = getColor(theme, color, type);\n\n inlineStyle.backgroundColor = fade(categoricalBackgroundColor, 0.3);\n }\n\n const [hover, setHover] = useState(false);\n\n return (\n <Chip\n label={label}\n className={clsx(classes.root, className)}\n onMouseEnter={() => {\n setHover(!!onClick);\n }}\n onMouseLeave={() => {\n setHover(false);\n }}\n style={{\n ...(disabled ? null : inlineStyle),\n ...(hover && !disabled ? { boxShadow: `0 0 0 1pt ${categoricalBackgroundColor}` } : null),\n }}\n classes={{\n root: clsx(classes.chipRoot, {\n [classes.disabled]: disabled,\n [classes.clickable]: !!onClick,\n [classes.categorical]: type === \"categorical\",\n [classes.categoricalFocus]: type === \"categorical\" && !disabled,\n [classes.categoricalDisabled]: type === \"categorical\" && disabled,\n }),\n label: classes.label,\n deleteIcon: clsx(classes.deleteIcon, {\n [classes.disabledDeleteIcon]: disabled,\n }),\n }}\n deleteIcon={(hasDeleteAction(onDelete) && deleteIcon) || getDeleteIcon()}\n onDelete={getOnDeleteCallback(disabled, onDelete)}\n onClick={disabled ? undefined : onClick}\n role={role || (hasClickAction(onClick) ? \"button\" : undefined)}\n tabIndex={hasDeleteAction(onDelete) ? undefined : 0}\n {...others}\n />\n );\n};\n\nHvTag.propTypes = {\n /**\n * A Jss Object used to override or extend the styles applied to the radio button.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n chipRoot: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n label: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n tagButton: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n deleteIcon: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n disabledDeleteIcon: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n titleOverflow: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categorical: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalDisabled: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n disabled: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n semanticTextColor: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalTextColor: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n deletable: PropTypes.string,\n /**\n * Styles applied to the component if has onClick.\n */\n clickable: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n focusVisible: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n primaryButton: PropTypes.string,\n /**\n * Styles applied to the component.\n */\n categoricalFocus: PropTypes.string,\n }).isRequired,\n\n /**\n * Inline styles to be applied to the root element.\n */\n style: PropTypes.instanceOf(Object),\n\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n\n /**\n * The label of the tag element.\n *\n */\n label: PropTypes.node,\n\n /**\n * Indicates that the form element is disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * The type of the tag element.\n *\n * A tag can be of semantic or categoric type\n */\n type: PropTypes.oneOf([\"semantic\", \"categorical\"]),\n\n /**\n * Background color to be applied to the tag\n */\n color: PropTypes.string,\n /**\n * Icon used to customize the delete icon in the Chip element\n */\n deleteIcon: PropTypes.node,\n\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component,\n * in order to render the delete icon\n */\n onDelete: PropTypes.func,\n /**\n * Callback triggered when any item is clicked.\n */\n onClick: PropTypes.func,\n\n /**\n * The role of the element with an attributed event.\n */\n role: PropTypes.string,\n /**\n * Aria properties to apply to delete button in tag\n */\n deleteButtonArialLabel: PropTypes.string,\n /**\n * Props to apply to delete button\n */\n deleteButtonProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvTag\" })(HvTag);\n"],"mappings":"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"}
|
|
@@ -29,13 +29,15 @@ var styles = function styles(theme) {
|
|
|
29
29
|
primaryButton: {
|
|
30
30
|
background: "transparent"
|
|
31
31
|
},
|
|
32
|
-
label: {
|
|
32
|
+
label: _objectSpread(_objectSpread({
|
|
33
33
|
paddingLeft: theme.hv.spacing.xs,
|
|
34
|
-
paddingRight: theme.hv.spacing.xs
|
|
34
|
+
paddingRight: theme.hv.spacing.xs
|
|
35
|
+
}, theme.hv.typography.normalText), {}, {
|
|
36
|
+
color: theme.palette.base2,
|
|
35
37
|
"& p": {
|
|
36
38
|
color: theme.hv.palette.base.base2
|
|
37
39
|
}
|
|
38
|
-
},
|
|
40
|
+
}),
|
|
39
41
|
tagButton: {
|
|
40
42
|
width: 16,
|
|
41
43
|
height: 16,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","names":["fade","outlineStyles","styles","theme","root","chipRoot","height","borderRadius","maxWidth","backgroundColor","palette","base1","focusVisible","primaryButton","background","label","paddingLeft","hv","spacing","xs","paddingRight","
|
|
1
|
+
{"version":3,"file":"styles.js","names":["fade","outlineStyles","styles","theme","root","chipRoot","height","borderRadius","maxWidth","backgroundColor","palette","base1","focusVisible","primaryButton","background","label","paddingLeft","hv","spacing","xs","paddingRight","typography","normalText","color","base2","base","tagButton","width","minWidth","minHeight","padding","margin","deleteIcon","marginRight","outline","boxShadow","disabledDeleteIcon","atmosphere","atmo3","outlineOffset","titleOverflow","whiteSpace","overflow","textOverflow","categorical","cursor","accent","acce1","clickable","categoricalFocus","disabled","atmo5","categoricalDisabled","semanticTextColor","categoricalTextColor"],"sources":["../../../src/Tag/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\nimport { outlineStyles } from \"../Focus/styles\";\n\nconst styles = (theme) => ({\n root: {},\n\n chipRoot: {\n height: 16,\n borderRadius: 0,\n maxWidth: 180,\n \"& $focusVisible\": {\n backgroundColor: fade(theme.palette.base1, 0.3),\n },\n },\n\n focusVisible: {},\n\n primaryButton: {\n background: \"transparent\",\n },\n\n label: {\n paddingLeft: theme.hv.spacing.xs,\n paddingRight: theme.hv.spacing.xs,\n ...theme.hv.typography.normalText,\n color: theme.palette.base2,\n \"& p\": {\n color: theme.hv.palette.base.base2,\n },\n },\n\n tagButton: {\n width: 16,\n height: 16,\n minWidth: 16,\n minHeight: 16,\n padding: 0,\n margin: 0,\n },\n\n deleteIcon: {\n marginRight: 0,\n width: 16,\n height: 16,\n minWidth: 16,\n minHeight: 16,\n padding: 0,\n \"&:hover\": {\n backgroundColor: fade(theme.palette.base1, 0.3),\n },\n \"&:focus\": {\n ...outlineStyles,\n borderRadius: 0,\n },\n \"&:focus:not(:focus-visible)\": {\n outline: \"0 !important\",\n boxShadow: \"none !important\",\n },\n },\n disabledDeleteIcon: {\n \"&:hover\": {\n backgroundColor: theme.hv.palette.atmosphere.atmo3,\n },\n \"&:focus\": {\n backgroundColor: theme.hv.palette.atmosphere.atmo3,\n outline: \"none\",\n boxShadow: \"none\",\n outlineOffset: 0,\n },\n },\n titleOverflow: {\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n categorical: {\n borderRadius: 8,\n \"&$clickable\": {\n cursor: \"pointer\",\n },\n \"&:hover\": {\n borderRadius: 8,\n },\n \"& $label > p\": {\n color: theme.hv.palette.accent.acce1,\n },\n \"&:focus:not(:focus-visible)\": {\n outline: \"0 !important\",\n boxShadow: \"none !important\",\n },\n },\n clickable: {},\n\n categoricalFocus: {\n \"&:focus\": {\n ...outlineStyles,\n },\n },\n\n disabled: {\n backgroundColor: theme.hv.palette.atmosphere.atmo3,\n cursor: \"not-allowed\",\n \"& $label > p\": {\n color: theme.hv.palette.atmosphere.atmo5,\n },\n },\n\n categoricalDisabled: {\n backgroundColor: theme.hv.palette.atmosphere.atmo3,\n cursor: \"not-allowed\",\n \"& $label > p\": {\n color: theme.hv.palette.atmosphere.atmo5,\n },\n \"&:hover\": {\n backgroundColor: theme.hv.palette.atmosphere.atmo3,\n },\n \"&:focus\": {\n outline: \"none\",\n },\n },\n\n semanticTextColor: {\n color: theme.hv.palette.base.base2,\n },\n categoricalTextColor: {\n color: theme.hv.palette.accent.acce1,\n },\n});\n\nexport default styles;\n"],"mappings":"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"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
export { default } from "./UserPreferences";
|
|
2
2
|
export * from "./UserPreferences";
|
|
3
3
|
|
|
4
|
-
export { default as
|
|
4
|
+
export { default as HvUserPreferencesAction } from "./Action";
|
|
5
5
|
export * from "./Action";
|
|
6
6
|
|
|
7
|
-
export { default as
|
|
7
|
+
export { default as HvUserPreferencesActions } from "./Actions";
|
|
8
8
|
export * from "./Actions";
|
|
9
9
|
|
|
10
|
+
export {
|
|
11
|
+
Options as HvUserPreferencesOptions,
|
|
12
|
+
Option as HvUserPreferencesOption,
|
|
13
|
+
Group as HvUserPreferencesOptionsGroup,
|
|
14
|
+
Label as HvUserPreferencesOptionsGroupLabel,
|
|
15
|
+
} from "./Options";
|
|
16
|
+
|
|
10
17
|
export * from "./Options";
|
|
@@ -42,7 +42,7 @@ export interface NavigationData {
|
|
|
42
42
|
|
|
43
43
|
export type HvNavigationClassKey = "root" | "list" | "listItem";
|
|
44
44
|
|
|
45
|
-
export interface
|
|
45
|
+
export interface HvVerticalNavigationTreeProps
|
|
46
46
|
extends StandardProps<
|
|
47
47
|
React.HTMLAttributes<HTMLElement>,
|
|
48
48
|
HvNavigationClassKey,
|
|
@@ -118,6 +118,6 @@ export interface HvVerticalNavigationNavigationProps
|
|
|
118
118
|
label?: string;
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
export default function
|
|
122
|
-
props:
|
|
121
|
+
export default function HvVerticalNavigationTree(
|
|
122
|
+
props: HvVerticalNavigationTreeProps
|
|
123
123
|
): JSX.Element | null;
|
|
@@ -310,6 +310,6 @@ process.env.NODE_ENV !== "production" ? Navigation.propTypes = {
|
|
|
310
310
|
label: deprecatedPropType(PropTypes.string)
|
|
311
311
|
} : void 0;
|
|
312
312
|
export default withStyles(styles, {
|
|
313
|
-
name: "
|
|
313
|
+
name: "HvVerticalNavigationTree"
|
|
314
314
|
})(Navigation);
|
|
315
315
|
//# sourceMappingURL=Navigation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Navigation.js","names":["React","useCallback","useMemo","PropTypes","deprecatedPropType","withStyles","clsx","TreeView","TreeViewItem","setId","useControlled","styles","wrapperTooltip","createListHierarchy","items","id","classes","map","item","itemId","itemLabel","label","icon","children","data","selectable","disabled","href","target","ItemText","listItem","undefined","getAllParents","parents","filter","length","childParents","flatMap","pathToElement","targetId","path","i","push","subPaths","Navigation","className","mode","collapsible","expandedProp","expanded","defaultExpanded","onToggle","selectedProp","selected","defaultSelected","onChange","onClick","others","setSelected","slice","setExpanded","handleChange","event","selectedId","selectedItem","handleToggle","newExpanded","root","list","propTypes","string","shape","isRequired","oneOf","bool","func","arrayOf","oneOfType","node","array","name"],"sources":["../../../../src/VerticalNavigation/Navigation/Navigation.js"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { deprecatedPropType } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport clsx from \"clsx\";\nimport { TreeView, TreeViewItem } from \"../TreeView\";\nimport { setId, useControlled } from \"../../utils\";\nimport styles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst createListHierarchy = (items, id, classes) =>\n items.map((item) => {\n const {\n id: itemId,\n label: itemLabel,\n icon,\n data: children,\n selectable,\n disabled,\n href,\n target,\n } = item;\n\n const ItemText = wrapperTooltip(true, itemLabel, itemLabel);\n\n return (\n <TreeViewItem\n id={setId(id, itemId)}\n className={classes.listItem}\n href={href}\n target={target}\n key={itemId}\n nodeId={itemId}\n label={<ItemText />}\n icon={icon}\n payload={item}\n selectable={selectable}\n disabled={disabled}\n >\n {children ? createListHierarchy(children, id, classes) : undefined}\n </TreeViewItem>\n );\n });\n\nconst getAllParents = (items) => {\n const parents = items.filter((item) => item.data != null && item.data.length > 0);\n const childParents = parents.flatMap((item) => getAllParents(item.data));\n\n return [...parents, ...childParents];\n};\n\nfunction pathToElement(data, targetId) {\n const path = [];\n\n if (data != null && data.length > 0) {\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i !== data.length; ++i) {\n const item = data[i];\n if (item.id === targetId) {\n path.push(item.id);\n break;\n }\n\n const subPaths = pathToElement(item.data, targetId);\n if (subPaths.length > 0) {\n path.push(item.id);\n path.push(...subPaths);\n break;\n }\n }\n }\n\n return path;\n}\n\nconst Navigation = ({\n id,\n\n className,\n classes,\n\n data,\n\n mode = \"navigation\",\n\n collapsible = false,\n expanded: expandedProp,\n defaultExpanded,\n onToggle,\n\n selected: selectedProp,\n defaultSelected,\n onChange,\n\n label,\n onClick,\n\n ...others\n}) => {\n const [selected, setSelected] = useControlled(selectedProp, defaultSelected);\n const [expanded, setExpanded] = useControlled(expandedProp, () => {\n if (defaultExpanded === true) {\n // all parent nodes will be expanded by default\n return getAllParents(data).map((item) => item.id);\n }\n\n if (defaultExpanded === false) {\n // all parent nodes will be collapsed by default\n return [];\n }\n\n if (defaultExpanded == null) {\n if (selected != null) {\n // the path to the selected node will be expanded (default behaviour)\n const path = pathToElement(data, selected);\n return path.slice(0, -1);\n }\n\n // nothing is expanded\n return [];\n }\n\n return defaultExpanded;\n });\n\n const handleChange = useCallback(\n (event, selectedId, selectedItem) => {\n setSelected(selectedId);\n\n if (onChange) {\n onChange(event, selectedItem);\n }\n\n // deprecated\n if (onClick) {\n onClick(event, selectedItem);\n }\n },\n [onChange, onClick, setSelected]\n );\n\n const handleToggle = useCallback(\n (event, newExpanded) => {\n setExpanded(newExpanded);\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n\n // deprecated\n if (onClick) {\n onClick(event);\n }\n },\n [onClick, onToggle, setExpanded]\n );\n\n const children = useMemo(\n () => data && createListHierarchy(data, id, classes),\n [classes, data, id]\n );\n\n return (\n <nav id={id} className={clsx(className, classes.root)} aria-label={label} {...others}>\n <TreeView\n id={setId(id, \"tree\")}\n className={classes.list}\n selectable\n mode={mode}\n collapsible={collapsible}\n selected={selected}\n onChange={handleChange}\n expanded={expanded}\n onToggle={handleToggle}\n >\n {children}\n </TreeView>\n </nav>\n );\n};\n\nNavigation.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root element.\n */\n root: PropTypes.string,\n /**\n * Style applied to the list.\n */\n list: PropTypes.string,\n /**\n * Style applied to the list items.\n */\n listItem: PropTypes.string,\n }).isRequired,\n\n /**\n * Modus operandi (role) of the widget instance.\n */\n mode: PropTypes.oneOf([\"treeview\", \"navigation\"]),\n /**\n * Can non-leaf nodes be collapsed / expanded.\n */\n collapsible: PropTypes.bool,\n\n /**\n * The ID of the selected page.\n */\n selected: PropTypes.string,\n /**\n * When uncontrolled, defines the initial selected page ID.\n */\n defaultSelected: PropTypes.string,\n /**\n * Callback fired when a navigation item is selected.\n *\n * @param {object} event The event source of the callback.\n * @param {object} page The data of the selected page.\n */\n onChange: PropTypes.func,\n\n /**\n * Expanded nodes' ids.\n */\n expanded: PropTypes.arrayOf(PropTypes.string),\n /**\n * When uncontrolled, defines the initial expanded nodes' ids.\n *\n * It also supports `true` for starting with all nodes expanded.\n * With `false` all nodes will be collapsed.\n *\n * By default it expands the needed nodes to display the current selection, if any.\n */\n defaultExpanded: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.bool]),\n /**\n * Callback fired when tree items are expanded/collapsed.\n *\n * @param {object} event The event source of the callback.\n * @param {array} nodeIds The ids of the expanded nodes (old and new).\n */\n onToggle: PropTypes.func,\n\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.node,\n data: PropTypes.array,\n href: PropTypes.string,\n target: PropTypes.string,\n })\n ).isRequired,\n\n /**\n * Callback triggered when any item is clicked.\n *\n * @deprecated use `onChange` for selection and `onToggle` for node expansion/collapse.\n */\n onClick: deprecatedPropType(PropTypes.func),\n /**\n * The root element (nav) aria label.\n *\n * @deprecated Use directly the `aria-label` property instead.\n */\n label: deprecatedPropType(PropTypes.string),\n};\n\nexport default withStyles(styles, { name: \"HvVerticalNavigationNavigation\" })(Navigation);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,IAAgBC,WAAhB,EAA6BC,OAA7B,QAA4C,OAA5C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,kBAAT,QAAmC,eAAnC;AACA,SAASC,UAAT,QAA2B,aAA3B;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,QAAT,EAAmBC,YAAnB,QAAuC,aAAvC;AACA,SAASC,KAAT,EAAgBC,aAAhB,QAAqC,aAArC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AACA,SAASC,cAAT,QAA+B,kBAA/B;;;AAEA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAQC,EAAR,EAAYC,OAAZ;EAAA,OAC1BF,KAAK,CAACG,GAAN,CAAU,UAACC,IAAD,EAAU;IAClB,IACMC,MADN,GASID,IATJ,CACEH,EADF;IAAA,IAESK,SAFT,GASIF,IATJ,CAEEG,KAFF;IAAA,IAGEC,IAHF,GASIJ,IATJ,CAGEI,IAHF;IAAA,IAIQC,QAJR,GASIL,IATJ,CAIEM,IAJF;IAAA,IAKEC,UALF,GASIP,IATJ,CAKEO,UALF;IAAA,IAMEC,QANF,GASIR,IATJ,CAMEQ,QANF;IAAA,IAOEC,IAPF,GASIT,IATJ,CAOES,IAPF;IAAA,IAQEC,MARF,GASIV,IATJ,CAQEU,MARF;IAWA,IAAMC,QAAQ,GAAGjB,cAAc,CAAC,IAAD,EAAOQ,SAAP,EAAkBA,SAAlB,CAA/B;IAEA,oBACE,KAAC,YAAD;MACE,EAAE,EAAEX,KAAK,CAACM,EAAD,EAAKI,MAAL,CADX;MAEE,SAAS,EAAEH,OAAO,CAACc,QAFrB;MAGE,IAAI,EAAEH,IAHR;MAIE,MAAM,EAAEC,MAJV;MAME,MAAM,EAAET,MANV;MAOE,KAAK,eAAE,KAAC,QAAD,KAPT;MAQE,IAAI,EAAEG,IARR;MASE,OAAO,EAAEJ,IATX;MAUE,UAAU,EAAEO,UAVd;MAWE,QAAQ,EAAEC,QAXZ;MAAA,UAaGH,QAAQ,GAAGV,mBAAmB,CAACU,QAAD,EAAWR,EAAX,EAAeC,OAAf,CAAtB,GAAgDe;IAb3D,GAKOZ,MALP,CADF;EAiBD,CA/BD,CAD0B;AAAA,CAA5B;;AAkCA,IAAMa,aAAa,GAAG,SAAhBA,aAAgB,CAAClB,KAAD,EAAW;EAC/B,IAAMmB,OAAO,GAAGnB,KAAK,CAACoB,MAAN,CAAa,UAAChB,IAAD;IAAA,OAAUA,IAAI,CAACM,IAAL,IAAa,IAAb,IAAqBN,IAAI,CAACM,IAAL,CAAUW,MAAV,GAAmB,CAAlD;EAAA,CAAb,CAAhB;EACA,IAAMC,YAAY,GAAGH,OAAO,CAACI,OAAR,CAAgB,UAACnB,IAAD;IAAA,OAAUc,aAAa,CAACd,IAAI,CAACM,IAAN,CAAvB;EAAA,CAAhB,CAArB;EAEA,oCAAWS,OAAX,sBAAuBG,YAAvB;AACD,CALD;;AAOA,SAASE,aAAT,CAAuBd,IAAvB,EAA6Be,QAA7B,EAAuC;EACrC,IAAMC,IAAI,GAAG,EAAb;;EAEA,IAAIhB,IAAI,IAAI,IAAR,IAAgBA,IAAI,CAACW,MAAL,GAAc,CAAlC,EAAqC;IACnC;IACA,KAAK,IAAIM,CAAC,GAAG,CAAb,EAAgBA,CAAC,KAAKjB,IAAI,CAACW,MAA3B,EAAmC,EAAEM,CAArC,EAAwC;MACtC,IAAMvB,IAAI,GAAGM,IAAI,CAACiB,CAAD,CAAjB;;MACA,IAAIvB,IAAI,CAACH,EAAL,KAAYwB,QAAhB,EAA0B;QACxBC,IAAI,CAACE,IAAL,CAAUxB,IAAI,CAACH,EAAf;QACA;MACD;;MAED,IAAM4B,QAAQ,GAAGL,aAAa,CAACpB,IAAI,CAACM,IAAN,EAAYe,QAAZ,CAA9B;;MACA,IAAII,QAAQ,CAACR,MAAT,GAAkB,CAAtB,EAAyB;QACvBK,IAAI,CAACE,IAAL,CAAUxB,IAAI,CAACH,EAAf;QACAyB,IAAI,CAACE,IAAL,OAAAF,IAAI,qBAASG,QAAT,EAAJ;QACA;MACD;IACF;EACF;;EAED,OAAOH,IAAP;AACD;;AAED,IAAMI,UAAU,GAAG,SAAbA,UAAa,OAuBb;EAAA,IAtBJ7B,EAsBI,QAtBJA,EAsBI;EAAA,IApBJ8B,SAoBI,QApBJA,SAoBI;EAAA,IAnBJ7B,OAmBI,QAnBJA,OAmBI;EAAA,IAjBJQ,IAiBI,QAjBJA,IAiBI;EAAA,qBAfJsB,IAeI;EAAA,IAfJA,IAeI,0BAfG,YAeH;EAAA,4BAbJC,WAaI;EAAA,IAbJA,WAaI,iCAbU,KAaV;EAAA,IAZMC,YAYN,QAZJC,QAYI;EAAA,IAXJC,eAWI,QAXJA,eAWI;EAAA,IAVJC,QAUI,QAVJA,QAUI;EAAA,IARMC,YAQN,QARJC,QAQI;EAAA,IAPJC,eAOI,QAPJA,eAOI;EAAA,IANJC,QAMI,QANJA,QAMI;EAAA,IAJJlC,KAII,QAJJA,KAII;EAAA,IAHJmC,OAGI,QAHJA,OAGI;EAAA,IADDC,MACC;;EACJ,qBAAgC/C,aAAa,CAAC0C,YAAD,EAAeE,eAAf,CAA7C;EAAA;EAAA,IAAOD,QAAP;EAAA,IAAiBK,WAAjB;;EACA,sBAAgChD,aAAa,CAACsC,YAAD,EAAe,YAAM;IAChE,IAAIE,eAAe,KAAK,IAAxB,EAA8B;MAC5B;MACA,OAAOlB,aAAa,CAACR,IAAD,CAAb,CAAoBP,GAApB,CAAwB,UAACC,IAAD;QAAA,OAAUA,IAAI,CAACH,EAAf;MAAA,CAAxB,CAAP;IACD;;IAED,IAAImC,eAAe,KAAK,KAAxB,EAA+B;MAC7B;MACA,OAAO,EAAP;IACD;;IAED,IAAIA,eAAe,IAAI,IAAvB,EAA6B;MAC3B,IAAIG,QAAQ,IAAI,IAAhB,EAAsB;QACpB;QACA,IAAMb,IAAI,GAAGF,aAAa,CAACd,IAAD,EAAO6B,QAAP,CAA1B;QACA,OAAOb,IAAI,CAACmB,KAAL,CAAW,CAAX,EAAc,CAAC,CAAf,CAAP;MACD,CAL0B,CAO3B;;;MACA,OAAO,EAAP;IACD;;IAED,OAAOT,eAAP;EACD,CAvB4C,CAA7C;EAAA;EAAA,IAAOD,QAAP;EAAA,IAAiBW,WAAjB;;EAyBA,IAAMC,YAAY,GAAG5D,WAAW,CAC9B,UAAC6D,KAAD,EAAQC,UAAR,EAAoBC,YAApB,EAAqC;IACnCN,WAAW,CAACK,UAAD,CAAX;;IAEA,IAAIR,QAAJ,EAAc;MACZA,QAAQ,CAACO,KAAD,EAAQE,YAAR,CAAR;IACD,CALkC,CAOnC;;;IACA,IAAIR,OAAJ,EAAa;MACXA,OAAO,CAACM,KAAD,EAAQE,YAAR,CAAP;IACD;EACF,CAZ6B,EAa9B,CAACT,QAAD,EAAWC,OAAX,EAAoBE,WAApB,CAb8B,CAAhC;EAgBA,IAAMO,YAAY,GAAGhE,WAAW,CAC9B,UAAC6D,KAAD,EAAQI,WAAR,EAAwB;IACtBN,WAAW,CAACM,WAAD,CAAX;;IAEA,IAAIf,QAAJ,EAAc;MACZA,QAAQ,CAACW,KAAD,EAAQI,WAAR,CAAR;IACD,CALqB,CAOtB;;;IACA,IAAIV,OAAJ,EAAa;MACXA,OAAO,CAACM,KAAD,CAAP;IACD;EACF,CAZ6B,EAa9B,CAACN,OAAD,EAAUL,QAAV,EAAoBS,WAApB,CAb8B,CAAhC;EAgBA,IAAMrC,QAAQ,GAAGrB,OAAO,CACtB;IAAA,OAAMsB,IAAI,IAAIX,mBAAmB,CAACW,IAAD,EAAOT,EAAP,EAAWC,OAAX,CAAjC;EAAA,CADsB,EAEtB,CAACA,OAAD,EAAUQ,IAAV,EAAgBT,EAAhB,CAFsB,CAAxB;EAKA,oBACE;IAAK,EAAE,EAAEA,EAAT;IAAa,SAAS,EAAET,IAAI,CAACuC,SAAD,EAAY7B,OAAO,CAACmD,IAApB,CAA5B;IAAuD,cAAY9C;EAAnE,GAA8EoC,MAA9E;IAAA,uBACE,KAAC,QAAD;MACE,EAAE,EAAEhD,KAAK,CAACM,EAAD,EAAK,MAAL,CADX;MAEE,SAAS,EAAEC,OAAO,CAACoD,IAFrB;MAGE,UAAU,MAHZ;MAIE,IAAI,EAAEtB,IAJR;MAKE,WAAW,EAAEC,WALf;MAME,QAAQ,EAAEM,QANZ;MAOE,QAAQ,EAAEQ,YAPZ;MAQE,QAAQ,EAAEZ,QARZ;MASE,QAAQ,EAAEgB,YATZ;MAAA,UAWG1C;IAXH;EADF,GADF;AAiBD,CAxGD;;AA0GA,wCAAAqB,UAAU,CAACyB,SAAX,GAAuB;EACrB;AACF;AACA;EACEtD,EAAE,EAAEZ,SAAS,CAACmE,MAJO;;EAMrB;AACF;AACA;EACEzB,SAAS,EAAE1C,SAAS,CAACmE,MATA;;EAUrB;AACF;AACA;EACEtD,OAAO,EAAEb,SAAS,CAACoE,KAAV,CAAgB;IACvB;AACJ;AACA;IACIJ,IAAI,EAAEhE,SAAS,CAACmE,MAJO;;IAKvB;AACJ;AACA;IACIF,IAAI,EAAEjE,SAAS,CAACmE,MARO;;IASvB;AACJ;AACA;IACIxC,QAAQ,EAAE3B,SAAS,CAACmE;EAZG,CAAhB,EAaNE,UA1BkB;;EA4BrB;AACF;AACA;EACE1B,IAAI,EAAE3C,SAAS,CAACsE,KAAV,CAAgB,CAAC,UAAD,EAAa,YAAb,CAAhB,CA/Be;;EAgCrB;AACF;AACA;EACE1B,WAAW,EAAE5C,SAAS,CAACuE,IAnCF;;EAqCrB;AACF;AACA;EACErB,QAAQ,EAAElD,SAAS,CAACmE,MAxCC;;EAyCrB;AACF;AACA;EACEhB,eAAe,EAAEnD,SAAS,CAACmE,MA5CN;;EA6CrB;AACF;AACA;AACA;AACA;AACA;EACEf,QAAQ,EAAEpD,SAAS,CAACwE,IAnDC;;EAqDrB;AACF;AACA;EACE1B,QAAQ,EAAE9C,SAAS,CAACyE,OAAV,CAAkBzE,SAAS,CAACmE,MAA5B,CAxDW;;EAyDrB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACEpB,eAAe,EAAE/C,SAAS,CAAC0E,SAAV,CAAoB,CAAC1E,SAAS,CAACyE,OAAV,CAAkBzE,SAAS,CAACmE,MAA5B,CAAD,EAAsCnE,SAAS,CAACuE,IAAhD,CAApB,CAjEI;;EAkErB;AACF;AACA;AACA;AACA;AACA;EACEvB,QAAQ,EAAEhD,SAAS,CAACwE,IAxEC;;EA0ErB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEnD,IAAI,EAAErB,SAAS,CAACyE,OAAV,CACJzE,SAAS,CAACoE,KAAV,CAAgB;IACdxD,EAAE,EAAEZ,SAAS,CAACmE,MAAV,CAAiBE,UADP;IAEdnD,KAAK,EAAElB,SAAS,CAACmE,MAAV,CAAiBE,UAFV;IAGdlD,IAAI,EAAEnB,SAAS,CAAC2E,IAHF;IAIdtD,IAAI,EAAErB,SAAS,CAAC4E,KAJF;IAKdpD,IAAI,EAAExB,SAAS,CAACmE,MALF;IAMd1C,MAAM,EAAEzB,SAAS,CAACmE;EANJ,CAAhB,CADI,EASJE,UA5FmB;;EA8FrB;AACF;AACA;AACA;AACA;EACEhB,OAAO,EAAEpD,kBAAkB,CAACD,SAAS,CAACwE,IAAX,CAnGN;;EAoGrB;AACF;AACA;AACA;AACA;EACEtD,KAAK,EAAEjB,kBAAkB,CAACD,SAAS,CAACmE,MAAX;AAzGJ,CAAvB;AA4GA,eAAejE,UAAU,CAACM,MAAD,EAAS;EAAEqE,IAAI,EAAE;AAAR,CAAT,CAAV,CAA+DpC,UAA/D,CAAf"}
|
|
1
|
+
{"version":3,"file":"Navigation.js","names":["React","useCallback","useMemo","PropTypes","deprecatedPropType","withStyles","clsx","TreeView","TreeViewItem","setId","useControlled","styles","wrapperTooltip","createListHierarchy","items","id","classes","map","item","itemId","itemLabel","label","icon","children","data","selectable","disabled","href","target","ItemText","listItem","undefined","getAllParents","parents","filter","length","childParents","flatMap","pathToElement","targetId","path","i","push","subPaths","Navigation","className","mode","collapsible","expandedProp","expanded","defaultExpanded","onToggle","selectedProp","selected","defaultSelected","onChange","onClick","others","setSelected","slice","setExpanded","handleChange","event","selectedId","selectedItem","handleToggle","newExpanded","root","list","propTypes","string","shape","isRequired","oneOf","bool","func","arrayOf","oneOfType","node","array","name"],"sources":["../../../../src/VerticalNavigation/Navigation/Navigation.js"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { deprecatedPropType } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport clsx from \"clsx\";\nimport { TreeView, TreeViewItem } from \"../TreeView\";\nimport { setId, useControlled } from \"../../utils\";\nimport styles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst createListHierarchy = (items, id, classes) =>\n items.map((item) => {\n const {\n id: itemId,\n label: itemLabel,\n icon,\n data: children,\n selectable,\n disabled,\n href,\n target,\n } = item;\n\n const ItemText = wrapperTooltip(true, itemLabel, itemLabel);\n\n return (\n <TreeViewItem\n id={setId(id, itemId)}\n className={classes.listItem}\n href={href}\n target={target}\n key={itemId}\n nodeId={itemId}\n label={<ItemText />}\n icon={icon}\n payload={item}\n selectable={selectable}\n disabled={disabled}\n >\n {children ? createListHierarchy(children, id, classes) : undefined}\n </TreeViewItem>\n );\n });\n\nconst getAllParents = (items) => {\n const parents = items.filter((item) => item.data != null && item.data.length > 0);\n const childParents = parents.flatMap((item) => getAllParents(item.data));\n\n return [...parents, ...childParents];\n};\n\nfunction pathToElement(data, targetId) {\n const path = [];\n\n if (data != null && data.length > 0) {\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i !== data.length; ++i) {\n const item = data[i];\n if (item.id === targetId) {\n path.push(item.id);\n break;\n }\n\n const subPaths = pathToElement(item.data, targetId);\n if (subPaths.length > 0) {\n path.push(item.id);\n path.push(...subPaths);\n break;\n }\n }\n }\n\n return path;\n}\n\nconst Navigation = ({\n id,\n\n className,\n classes,\n\n data,\n\n mode = \"navigation\",\n\n collapsible = false,\n expanded: expandedProp,\n defaultExpanded,\n onToggle,\n\n selected: selectedProp,\n defaultSelected,\n onChange,\n\n label,\n onClick,\n\n ...others\n}) => {\n const [selected, setSelected] = useControlled(selectedProp, defaultSelected);\n const [expanded, setExpanded] = useControlled(expandedProp, () => {\n if (defaultExpanded === true) {\n // all parent nodes will be expanded by default\n return getAllParents(data).map((item) => item.id);\n }\n\n if (defaultExpanded === false) {\n // all parent nodes will be collapsed by default\n return [];\n }\n\n if (defaultExpanded == null) {\n if (selected != null) {\n // the path to the selected node will be expanded (default behaviour)\n const path = pathToElement(data, selected);\n return path.slice(0, -1);\n }\n\n // nothing is expanded\n return [];\n }\n\n return defaultExpanded;\n });\n\n const handleChange = useCallback(\n (event, selectedId, selectedItem) => {\n setSelected(selectedId);\n\n if (onChange) {\n onChange(event, selectedItem);\n }\n\n // deprecated\n if (onClick) {\n onClick(event, selectedItem);\n }\n },\n [onChange, onClick, setSelected]\n );\n\n const handleToggle = useCallback(\n (event, newExpanded) => {\n setExpanded(newExpanded);\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n\n // deprecated\n if (onClick) {\n onClick(event);\n }\n },\n [onClick, onToggle, setExpanded]\n );\n\n const children = useMemo(\n () => data && createListHierarchy(data, id, classes),\n [classes, data, id]\n );\n\n return (\n <nav id={id} className={clsx(className, classes.root)} aria-label={label} {...others}>\n <TreeView\n id={setId(id, \"tree\")}\n className={classes.list}\n selectable\n mode={mode}\n collapsible={collapsible}\n selected={selected}\n onChange={handleChange}\n expanded={expanded}\n onToggle={handleToggle}\n >\n {children}\n </TreeView>\n </nav>\n );\n};\n\nNavigation.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root element.\n */\n root: PropTypes.string,\n /**\n * Style applied to the list.\n */\n list: PropTypes.string,\n /**\n * Style applied to the list items.\n */\n listItem: PropTypes.string,\n }).isRequired,\n\n /**\n * Modus operandi (role) of the widget instance.\n */\n mode: PropTypes.oneOf([\"treeview\", \"navigation\"]),\n /**\n * Can non-leaf nodes be collapsed / expanded.\n */\n collapsible: PropTypes.bool,\n\n /**\n * The ID of the selected page.\n */\n selected: PropTypes.string,\n /**\n * When uncontrolled, defines the initial selected page ID.\n */\n defaultSelected: PropTypes.string,\n /**\n * Callback fired when a navigation item is selected.\n *\n * @param {object} event The event source of the callback.\n * @param {object} page The data of the selected page.\n */\n onChange: PropTypes.func,\n\n /**\n * Expanded nodes' ids.\n */\n expanded: PropTypes.arrayOf(PropTypes.string),\n /**\n * When uncontrolled, defines the initial expanded nodes' ids.\n *\n * It also supports `true` for starting with all nodes expanded.\n * With `false` all nodes will be collapsed.\n *\n * By default it expands the needed nodes to display the current selection, if any.\n */\n defaultExpanded: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.bool]),\n /**\n * Callback fired when tree items are expanded/collapsed.\n *\n * @param {object} event The event source of the callback.\n * @param {array} nodeIds The ids of the expanded nodes (old and new).\n */\n onToggle: PropTypes.func,\n\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.node,\n data: PropTypes.array,\n href: PropTypes.string,\n target: PropTypes.string,\n })\n ).isRequired,\n\n /**\n * Callback triggered when any item is clicked.\n *\n * @deprecated use `onChange` for selection and `onToggle` for node expansion/collapse.\n */\n onClick: deprecatedPropType(PropTypes.func),\n /**\n * The root element (nav) aria label.\n *\n * @deprecated Use directly the `aria-label` property instead.\n */\n label: deprecatedPropType(PropTypes.string),\n};\n\nexport default withStyles(styles, { name: \"HvVerticalNavigationTree\" })(Navigation);\n"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { StandardProps, SnackbarProps
|
|
2
|
+
import { StandardProps, SnackbarProps } from "@mui/material";
|
|
3
3
|
import { HvActionsGenericCommonProps } from "../ActionsGeneric";
|
|
4
|
+
import { HvBannerContentProps } from "./BannerContent";
|
|
4
5
|
|
|
5
6
|
export type TransitionDirectionProp = "up" | "down" | "left" | "right";
|
|
6
7
|
|
|
@@ -55,7 +56,7 @@ export interface HvBannerProps
|
|
|
55
56
|
/**
|
|
56
57
|
* Props to pass down to the Banner Wrapper.
|
|
57
58
|
*/
|
|
58
|
-
bannerContentProps?:
|
|
59
|
+
bannerContentProps?: Partial<HvBannerContentProps>;
|
|
59
60
|
}
|
|
60
61
|
|
|
61
62
|
export default function HvBanner(props: HvBannerProps): JSX.Element | null;
|
|
@@ -12,7 +12,7 @@ import { Slide, Snackbar } from "@mui/material";
|
|
|
12
12
|
import { withStyles } from "@mui/styles";
|
|
13
13
|
import capitalize from "lodash/capitalize";
|
|
14
14
|
import { setId } from "../utils";
|
|
15
|
-
import
|
|
15
|
+
import HvBannerContent from "./BannerContent";
|
|
16
16
|
import styles from "./styles";
|
|
17
17
|
/**
|
|
18
18
|
* A Banner displays an important and succinct message. It can also provide actions for the user to address, or dismiss.
|
|
@@ -72,7 +72,7 @@ const HvBanner = props => {
|
|
|
72
72
|
open: open,
|
|
73
73
|
transitionDuration: transitionDuration
|
|
74
74
|
}, others), {}, {
|
|
75
|
-
children: /*#__PURE__*/_jsx(
|
|
75
|
+
children: /*#__PURE__*/_jsx(HvBannerContent, _objectSpread({
|
|
76
76
|
id: setId(id, "content"),
|
|
77
77
|
content: label,
|
|
78
78
|
variant: variant,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.js","names":["React","useCallback","PropTypes","oneOfType","Slide","Snackbar","withStyles","capitalize","setId","
|
|
1
|
+
{"version":3,"file":"Banner.js","names":["React","useCallback","PropTypes","oneOfType","Slide","Snackbar","withStyles","capitalize","setId","HvBannerContent","styles","HvBanner","props","id","classes","className","open","onClose","anchorOrigin","variant","transitionDuration","transitionDirection","showIcon","customIcon","actions","actionsCallback","actionsPosition","label","offset","bannerContentProps","others","anchorOriginOffset","anchorOriginTop","top","anchorOriginBottom","bottom","anchorOriginBanner","horizontal","vertical","SlideTransition","properties","root","rootClosed","anchorOriginTopCenter","anchorOriginBottomCenter","propTypes","string","shape","isRequired","bool","func","node","oneOf","arrayOf","icon","disabled","number","instanceOf","Object","name"],"sources":["../../../src/Banner/Banner.js"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport PropTypes, { oneOfType } from \"prop-types\";\nimport { Slide, Snackbar } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport capitalize from \"lodash/capitalize\";\nimport { setId } from \"../utils\";\nimport HvBannerContent from \"./BannerContent\";\nimport styles from \"./styles\";\n\n/**\n * A Banner displays an important and succinct message. It can also provide actions for the user to address, or dismiss.\n * It requires a user action, for it to be dismissed. Banners should appear at the top of the screen, below a top app bar.\n */\nconst HvBanner = (props) => {\n const {\n id,\n classes,\n className,\n open,\n onClose,\n anchorOrigin = \"top\",\n variant = \"default\",\n transitionDuration = 300,\n transitionDirection = \"down\",\n showIcon = false,\n customIcon,\n actions,\n actionsCallback,\n actionsPosition = \"auto\",\n label,\n offset = 60,\n bannerContentProps,\n ...others\n } = props;\n\n const anchorOriginOffset = {\n anchorOriginTop: {\n top: `${offset || 0}px`,\n },\n anchorOriginBottom: {\n bottom: `${offset || 0}px`,\n },\n };\n\n const anchorOriginBanner = { horizontal: \"center\", vertical: anchorOrigin };\n\n const SlideTransition = useCallback(\n (properties) => <Slide {...properties} direction={transitionDirection} />,\n [transitionDirection]\n );\n\n return (\n <Snackbar\n style={anchorOriginOffset[`anchorOrigin${capitalize(anchorOrigin)}`]}\n className={className}\n id={id}\n classes={{\n root: open ? classes.root : classes.rootClosed,\n anchorOriginTopCenter: classes.anchorOriginTopCenter,\n anchorOriginBottomCenter: classes.anchorOriginBottomCenter,\n }}\n anchorOrigin={anchorOriginBanner}\n TransitionComponent={SlideTransition}\n open={open}\n transitionDuration={transitionDuration}\n {...others}\n >\n <HvBannerContent\n id={setId(id, \"content\")}\n content={label}\n variant={variant}\n customIcon={customIcon}\n showIcon={showIcon}\n actions={actions}\n actionsCallback={actionsCallback}\n actionsPosition={actionsPosition}\n onClose={onClose}\n {...bannerContentProps}\n />\n </Snackbar>\n );\n};\n\nHvBanner.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the component root class when the component is closed.\n */\n rootClosed: PropTypes.string,\n /**\n * Styles applied to the component when define as top.\n */\n anchorOriginTopCenter: PropTypes.string,\n /**\n * Styles applied to the component when define as bottom.\n */\n anchorOriginBottomCenter: PropTypes.string,\n }).isRequired,\n /**\n * If true, Snackbar is open.\n */\n open: PropTypes.bool.isRequired,\n /**\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 */\n onClose: PropTypes.func,\n /**\n * The message to display.\n */\n label: PropTypes.node,\n /**\n * The anchor of the Snackbar.\n */\n anchorOrigin: PropTypes.oneOf([\"top\", \"bottom\"]),\n /**\n * Variant of the snackbar.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Actions to display on the right side.\n */\n actions: oneOfType([\n PropTypes.node,\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.func,\n disabled: PropTypes.bool,\n })\n ),\n ]),\n /**\n * The callback function ran when an action is triggered, receiving `action` as param\n */\n actionsCallback: PropTypes.func,\n /**\n * The position property of the header.\n */\n actionsPosition: PropTypes.PropTypes.oneOf([\"auto\", \"inline\", \"bottom-right\"]),\n /**\n * How much the transition animation last in milliseconds, if 0 no animation is played.\n */\n transitionDuration: PropTypes.number,\n /**\n * Direction of slide transition.\n */\n transitionDirection: PropTypes.oneOf([\"up\", \"down\", \"left\", \"right\"]),\n /**\n * Offset from top/bottom of the page, in px. Defaults to 60px.\n */\n offset: PropTypes.number,\n /**\n * Props to pass down to the Banner Wrapper. An object `actionProps` can be included to be passed as others to actions.\n */\n bannerContentProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvBanner\" })(HvBanner);\n"],"mappings":"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"}
|
package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js
RENAMED
|
File without changes
|
package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionContainer.js","names":["React","PropTypes","oneOfType","withStyles","Close","ActionsGeneric","HvButton","styles","ActionContainer","id","classes","onClose","action","actionCallback","others","actionContainer","closeAction","iconContainer","actionsInnerContainer","propTypes","string","instanceOf","Object","func","node","arrayOf","shape","isRequired","label","icon","disabled","bool","name"],"sources":["../../../../../src/Banner/
|
|
1
|
+
{"version":3,"file":"ActionContainer.js","names":["React","PropTypes","oneOfType","withStyles","Close","ActionsGeneric","HvButton","styles","ActionContainer","id","classes","onClose","action","actionCallback","others","actionContainer","closeAction","iconContainer","actionsInnerContainer","propTypes","string","instanceOf","Object","func","node","arrayOf","shape","isRequired","label","icon","disabled","bool","name"],"sources":["../../../../../src/Banner/BannerContent/ActionContainer/ActionContainer.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes, { oneOfType } from \"prop-types\";\nimport { withStyles } from \"@mui/styles\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport ActionsGeneric from \"../../../ActionsGeneric\";\nimport HvButton from \"../../../Button\";\nimport styles from \"./styles\";\n\nconst ActionContainer = ({ id, classes, onClose, action, actionCallback, ...others }) => {\n return (\n <div className={classes.actionContainer}>\n <HvButton\n icon\n className={classes.closeAction}\n category=\"semantic\"\n aria-label=\"Close\"\n onClick={onClose}\n tabIndex={0}\n {...others}\n >\n <Close iconSize=\"XS\" className={classes.iconContainer} color=\"base2\" />\n </HvButton>\n {action && (\n <div className={classes.actionsInnerContainer}>\n <ActionsGeneric\n id={id}\n category=\"semantic\"\n actions={action}\n actionsCallback={actionCallback}\n />\n </div>\n )}\n </div>\n );\n};\n\nActionContainer.propTypes = {\n /**\n * Identifier.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the button.\n */\n classes: PropTypes.instanceOf(Object),\n /**\n * onClose function.\n */\n onClose: PropTypes.func,\n /**\n * Actions to display.\n */\n action: oneOfType([\n PropTypes.node,\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.func,\n disabled: PropTypes.bool,\n })\n ),\n ]),\n /**\n * The callback function ran when an action is triggered, receiving `action` as param\n */\n actionCallback: PropTypes.func,\n};\n\nexport default withStyles(styles, { name: \"HvActionContainer\" })(ActionContainer);\n"],"mappings":";;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,IAAoBC,SAApB,QAAqC,YAArC;AACA,SAASC,UAAT,QAA2B,aAA3B;AACA,SAASC,KAAT,QAAsB,mCAAtB;AACA,OAAOC,cAAP,MAA2B,yBAA3B;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;;;AAEA,MAAMC,eAAe,GAAG,QAAiE;EAAA,IAAhE;IAAEC,EAAF;IAAMC,OAAN;IAAeC,OAAf;IAAwBC,MAAxB;IAAgCC;EAAhC,CAAgE;EAAA,IAAbC,MAAa;;EACvF,oBACE;IAAK,SAAS,EAAEJ,OAAO,CAACK,eAAxB;IAAA,wBACE,KAAC,QAAD;MACE,IAAI,MADN;MAEE,SAAS,EAAEL,OAAO,CAACM,WAFrB;MAGE,QAAQ,EAAC,UAHX;MAIE,cAAW,OAJb;MAKE,OAAO,EAAEL,OALX;MAME,QAAQ,EAAE;IANZ,GAOMG,MAPN;MAAA,uBASE,KAAC,KAAD;QAAO,QAAQ,EAAC,IAAhB;QAAqB,SAAS,EAAEJ,OAAO,CAACO,aAAxC;QAAuD,KAAK,EAAC;MAA7D;IATF,GADF,EAYGL,MAAM,iBACL;MAAK,SAAS,EAAEF,OAAO,CAACQ,qBAAxB;MAAA,uBACE,KAAC,cAAD;QACE,EAAE,EAAET,EADN;QAEE,QAAQ,EAAC,UAFX;QAGE,OAAO,EAAEG,MAHX;QAIE,eAAe,EAAEC;MAJnB;IADF,EAbJ;EAAA,EADF;AAyBD,CA1BD;;AA4BA,wCAAAL,eAAe,CAACW,SAAhB,GAA4B;EAC1B;AACF;AACA;EACEV,EAAE,EAAER,SAAS,CAACmB,MAJY;;EAK1B;AACF;AACA;EACEV,OAAO,EAAET,SAAS,CAACoB,UAAV,CAAqBC,MAArB,CARiB;;EAS1B;AACF;AACA;EACEX,OAAO,EAAEV,SAAS,CAACsB,IAZO;;EAa1B;AACF;AACA;EACEX,MAAM,EAAEV,SAAS,CAAC,CAChBD,SAAS,CAACuB,IADM,EAEhBvB,SAAS,CAACwB,OAAV,CACExB,SAAS,CAACyB,KAAV,CAAgB;IACdjB,EAAE,EAAER,SAAS,CAACmB,MAAV,CAAiBO,UADP;IAEdC,KAAK,EAAE3B,SAAS,CAACmB,MAAV,CAAiBO,UAFV;IAGdE,IAAI,EAAE5B,SAAS,CAACsB,IAHF;IAIdO,QAAQ,EAAE7B,SAAS,CAAC8B;EAJN,CAAhB,CADF,CAFgB,CAAD,CAhBS;;EA2B1B;AACF;AACA;EACElB,cAAc,EAAEZ,SAAS,CAACsB;AA9BA,CAA5B;AAiCA,eAAepB,UAAU,CAACI,MAAD,EAAS;EAAEyB,IAAI,EAAE;AAAR,CAAT,CAAV,CAAkDxB,eAAlD,CAAf"}
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/Banner/
|
|
1
|
+
{"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/Banner/BannerContent/ActionContainer/index.js"],"sourcesContent":["export { default } from \"./ActionContainer\";\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,mBAAxB"}
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","names":["fade","outlineStyles","styles","theme","actionContainer","display","flexDirection","height","justifyContent","actionsInnerContainer","marginTop","closeAction","alignSelf","cursor","backgroundColor","hv","palette","base","base1","iconContainer","width"],"sources":["../../../../../src/Banner/
|
|
1
|
+
{"version":3,"file":"styles.js","names":["fade","outlineStyles","styles","theme","actionContainer","display","flexDirection","height","justifyContent","actionsInnerContainer","marginTop","closeAction","alignSelf","cursor","backgroundColor","hv","palette","base","base1","iconContainer","width"],"sources":["../../../../../src/Banner/BannerContent/ActionContainer/styles.js"],"sourcesContent":["import fade from \"../../../utils/hexToRgbA\";\nimport { outlineStyles } from \"../../../Focus/styles\";\n\nconst styles = (theme) => ({\n actionContainer: {\n display: \"flex\",\n flexDirection: \"column\",\n height: \"100%\",\n justifyContent: \"space-between\",\n },\n actionsInnerContainer: {\n flexDirection: \"row\",\n marginTop: \"8px\", // avoid overlap with close button outline focus ring\n },\n closeAction: {\n alignSelf: \"flex-end\",\n cursor: \"pointer\",\n \"&:hover\": {\n backgroundColor: fade(theme.hv.palette.base.base1, 0.3),\n },\n \"&:focus\": {\n ...outlineStyles,\n },\n },\n iconContainer: {\n width: \"32px\",\n height: \"32px\",\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;AAAA,OAAOA,IAAP,MAAiB,0BAAjB;AACA,SAASC,aAAT,QAA8B,uBAA9B;;AAEA,MAAMC,MAAM,GAAIC,KAAD,KAAY;EACzBC,eAAe,EAAE;IACfC,OAAO,EAAE,MADM;IAEfC,aAAa,EAAE,QAFA;IAGfC,MAAM,EAAE,MAHO;IAIfC,cAAc,EAAE;EAJD,CADQ;EAOzBC,qBAAqB,EAAE;IACrBH,aAAa,EAAE,KADM;IAErBI,SAAS,EAAE,KAFU,CAEH;;EAFG,CAPE;EAWzBC,WAAW,EAAE;IACXC,SAAS,EAAE,UADA;IAEXC,MAAM,EAAE,SAFG;IAGX,WAAW;MACTC,eAAe,EAAEd,IAAI,CAACG,KAAK,CAACY,EAAN,CAASC,OAAT,CAAiBC,IAAjB,CAAsBC,KAAvB,EAA8B,GAA9B;IADZ,CAHA;IAMX,6BACKjB,aADL;EANW,CAXY;EAqBzBkB,aAAa,EAAE;IACbC,KAAK,EAAE,MADM;IAEbb,MAAM,EAAE;EAFK;AArBU,CAAZ,CAAf;;AA2BA,eAAeL,MAAf"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StandardProps, SnackbarContentProps } from "@mui/material";
|
|
3
|
+
import {
|
|
4
|
+
ActionsPositionProp,
|
|
5
|
+
HvActionsGenericCommonProps,
|
|
6
|
+
HvButtonProps,
|
|
7
|
+
NotificationsCommonProps,
|
|
8
|
+
SemanticVariantTypes,
|
|
9
|
+
} from "../..";
|
|
10
|
+
|
|
11
|
+
export type HvBannerContentClassKey =
|
|
12
|
+
| "root"
|
|
13
|
+
| "message"
|
|
14
|
+
| "action"
|
|
15
|
+
| "baseVariant"
|
|
16
|
+
| "outContainer"
|
|
17
|
+
| SemanticVariantTypes;
|
|
18
|
+
|
|
19
|
+
export interface HvBannerContentProps
|
|
20
|
+
extends StandardProps<SnackbarContentProps, HvBannerContentClassKey, "variant">,
|
|
21
|
+
HvActionsGenericCommonProps,
|
|
22
|
+
Pick<NotificationsCommonProps, "showIcon" | "customIcon" | "variant"> {
|
|
23
|
+
/**
|
|
24
|
+
* The position property of the header.
|
|
25
|
+
*/
|
|
26
|
+
actionsPosition?: ActionsPositionProp;
|
|
27
|
+
/**
|
|
28
|
+
* The message to display.
|
|
29
|
+
*/
|
|
30
|
+
content?: React.ReactNode;
|
|
31
|
+
/**
|
|
32
|
+
* onClose function.
|
|
33
|
+
*/
|
|
34
|
+
onClose?: HvButtonProps["onClick"];
|
|
35
|
+
/**
|
|
36
|
+
* The props to pass down to the Action Container.
|
|
37
|
+
*/
|
|
38
|
+
actionProps?: Record<string, unknown>;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export default function HvBannerContent(props: HvBannerContentProps): JSX.Element | null;
|