@hitachivantara/uikit-react-core 3.71.0 → 3.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/dist/AssetInventory/ListView/ListViewCell/ListViewCell.d.ts +2 -27
  2. package/dist/AssetInventory/ListView/ListViewRow/ListViewRow.d.ts +2 -27
  3. package/dist/Banner/Banner.d.ts +3 -2
  4. package/dist/Banner/Banner.js +2 -2
  5. package/dist/Banner/Banner.js.map +1 -1
  6. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
  7. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
  8. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
  9. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
  10. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
  11. package/dist/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
  12. package/dist/Banner/BannerContent/BannerContent.d.ts +41 -0
  13. package/dist/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
  14. package/dist/Banner/BannerContent/BannerContent.js.map +1 -0
  15. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
  16. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
  17. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
  18. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
  19. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
  20. package/dist/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
  21. package/dist/Banner/BannerContent/index.d.ts +2 -0
  22. package/dist/Banner/{BannerWrapper → BannerContent}/index.js +2 -2
  23. package/dist/Banner/BannerContent/index.js.map +1 -0
  24. package/dist/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
  25. package/dist/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
  26. package/dist/Banner/index.d.ts +3 -0
  27. package/dist/Banner/index.js +2 -2
  28. package/dist/Banner/index.js.map +1 -1
  29. package/dist/FilterGroup/FilterContent/FilterContent.d.ts +49 -0
  30. package/dist/FilterGroup/FilterContent/FilterContent.js +9 -3
  31. package/dist/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  32. package/dist/FilterGroup/FilterContent/index.d.ts +2 -0
  33. package/dist/FilterGroup/FilterContent/styles.js +5 -4
  34. package/dist/FilterGroup/FilterContent/styles.js.map +1 -1
  35. package/dist/FilterGroup/FilterGroup.d.ts +3 -2
  36. package/dist/FilterGroup/LeftPanel/LeftPanel.js +6 -4
  37. package/dist/FilterGroup/LeftPanel/LeftPanel.js.map +1 -1
  38. package/dist/FilterGroup/RightPanel/RightPanel.js +6 -4
  39. package/dist/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  40. package/dist/legacy/AssetInventory/ListView/ListViewCell/ListViewCell.d.ts +2 -27
  41. package/dist/legacy/AssetInventory/ListView/ListViewRow/ListViewRow.d.ts +2 -27
  42. package/dist/legacy/Banner/Banner.d.ts +3 -2
  43. package/dist/legacy/Banner/Banner.js +2 -2
  44. package/dist/legacy/Banner/Banner.js.map +1 -1
  45. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
  46. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
  47. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
  48. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
  49. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
  50. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
  51. package/dist/legacy/Banner/BannerContent/BannerContent.d.ts +41 -0
  52. package/dist/legacy/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
  53. package/dist/legacy/Banner/BannerContent/BannerContent.js.map +1 -0
  54. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
  55. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
  56. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
  57. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
  58. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
  59. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
  60. package/dist/legacy/Banner/BannerContent/index.d.ts +2 -0
  61. package/dist/legacy/Banner/BannerContent/index.js +2 -0
  62. package/dist/legacy/Banner/BannerContent/index.js.map +1 -0
  63. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
  64. package/dist/legacy/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
  65. package/dist/legacy/Banner/index.d.ts +3 -0
  66. package/dist/legacy/Banner/index.js +1 -1
  67. package/dist/legacy/Banner/index.js.map +1 -1
  68. package/dist/legacy/FilterGroup/FilterContent/FilterContent.d.ts +49 -0
  69. package/dist/legacy/FilterGroup/FilterContent/FilterContent.js +9 -3
  70. package/dist/legacy/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  71. package/dist/legacy/FilterGroup/FilterContent/index.d.ts +2 -0
  72. package/dist/legacy/FilterGroup/FilterContent/styles.js +5 -4
  73. package/dist/legacy/FilterGroup/FilterContent/styles.js.map +1 -1
  74. package/dist/legacy/FilterGroup/FilterGroup.d.ts +3 -2
  75. package/dist/legacy/FilterGroup/LeftPanel/LeftPanel.js +6 -4
  76. package/dist/legacy/FilterGroup/LeftPanel/LeftPanel.js.map +1 -1
  77. package/dist/legacy/FilterGroup/RightPanel/RightPanel.js +6 -4
  78. package/dist/legacy/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  79. package/dist/modern/AssetInventory/ListView/ListViewCell/ListViewCell.d.ts +2 -27
  80. package/dist/modern/AssetInventory/ListView/ListViewRow/ListViewRow.d.ts +2 -27
  81. package/dist/modern/Banner/Banner.d.ts +3 -2
  82. package/dist/modern/Banner/Banner.js +2 -2
  83. package/dist/modern/Banner/Banner.js.map +1 -1
  84. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js +0 -0
  85. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/ActionContainer.js.map +1 -1
  86. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js +0 -0
  87. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/index.js.map +1 -1
  88. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js +0 -0
  89. package/dist/modern/Banner/{BannerWrapper → BannerContent}/ActionContainer/styles.js.map +1 -1
  90. package/dist/modern/Banner/BannerContent/BannerContent.d.ts +41 -0
  91. package/dist/modern/Banner/{BannerWrapper/BannerContentWrapper.js → BannerContent/BannerContent.js} +5 -5
  92. package/dist/modern/Banner/BannerContent/BannerContent.js.map +1 -0
  93. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js +0 -0
  94. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/MessageContainer.js.map +1 -1
  95. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js +0 -0
  96. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/index.js.map +1 -1
  97. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js +0 -0
  98. package/dist/modern/Banner/{BannerWrapper → BannerContent}/MessageContainer/styles.js.map +1 -1
  99. package/dist/modern/Banner/BannerContent/index.d.ts +2 -0
  100. package/dist/modern/Banner/BannerContent/index.js +2 -0
  101. package/dist/modern/Banner/BannerContent/index.js.map +1 -0
  102. package/dist/modern/Banner/{BannerWrapper → BannerContent}/styles.js +0 -0
  103. package/dist/modern/Banner/{BannerWrapper → BannerContent}/styles.js.map +1 -1
  104. package/dist/modern/Banner/index.d.ts +3 -0
  105. package/dist/modern/Banner/index.js +1 -1
  106. package/dist/modern/Banner/index.js.map +1 -1
  107. package/dist/modern/FilterGroup/FilterContent/FilterContent.d.ts +49 -0
  108. package/dist/modern/FilterGroup/FilterContent/FilterContent.js +10 -4
  109. package/dist/modern/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  110. package/dist/modern/FilterGroup/FilterContent/index.d.ts +2 -0
  111. package/dist/modern/FilterGroup/FilterContent/styles.js +5 -4
  112. package/dist/modern/FilterGroup/FilterContent/styles.js.map +1 -1
  113. package/dist/modern/FilterGroup/FilterGroup.d.ts +3 -2
  114. package/dist/modern/FilterGroup/LeftPanel/LeftPanel.js +6 -4
  115. package/dist/modern/FilterGroup/LeftPanel/LeftPanel.js.map +1 -1
  116. package/dist/modern/FilterGroup/RightPanel/RightPanel.js +6 -4
  117. package/dist/modern/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  118. package/package.json +2 -2
  119. package/dist/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
  120. package/dist/Banner/BannerWrapper/index.js.map +0 -1
  121. package/dist/legacy/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
  122. package/dist/legacy/Banner/BannerWrapper/index.js +0 -2
  123. package/dist/legacy/Banner/BannerWrapper/index.js.map +0 -1
  124. package/dist/modern/Banner/BannerWrapper/BannerContentWrapper.js.map +0 -1
  125. package/dist/modern/Banner/BannerWrapper/index.js +0 -2
  126. package/dist/modern/Banner/BannerWrapper/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","HvBannerContent"],"sources":["../../../src/Banner/index.js"],"sourcesContent":["export { default } from \"./Banner\";\nexport { default as HvBannerContent } from \"./BannerWrapper\";\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,UAAxB;AACA,SAASA,OAAO,IAAIC,eAApB,QAA2C,iBAA3C"}
1
+ {"version":3,"file":"index.js","names":["default","HvBannerContent"],"sources":["../../../src/Banner/index.js"],"sourcesContent":["export { default } from \"./Banner\";\nexport { default as HvBannerContent } from \"./BannerContent\";\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,UAAxB;AACA,SAASA,OAAO,IAAIC,eAApB,QAA2C,iBAA3C"}
@@ -0,0 +1,49 @@
1
+ import React from "react";
2
+ import { StandardProps } from "@material-ui/core";
3
+ import { FilterValue, HvBaseDropdownProps } from "../..";
4
+
5
+ export type HvFilterContentClassKey =
6
+ | "root"
7
+ | "panel"
8
+ | "actionBar"
9
+ | "space"
10
+ | "header"
11
+ | "baseDropdownSelection"
12
+ | "leftSidePanel"
13
+ | "rightSidePanel";
14
+
15
+ export interface HvFilterContentProps
16
+ extends StandardProps<HvBaseDropdownProps, HvFilterContentClassKey, "onChange"> {
17
+ description?: React.ReactNode;
18
+ status?: "standBy" | "valid" | "invalid";
19
+
20
+ onChange?: (evt: React.MouseEventHandler<HTMLButtonElement>, filterValues: FilterValue[]) => void;
21
+ onCancel?: (evt: any[]) => void;
22
+ onClear?: (evt: React.MouseEventHandler<HTMLButtonElement>) => void;
23
+
24
+ labels?: {
25
+ applyLabel?: string;
26
+ cancelLabel?: string;
27
+ clearLabel?: string;
28
+ placeholder?: string;
29
+ searchBoxPlaceholder?: string;
30
+ selectAll?: string;
31
+ multiSelectionConjunction?: string;
32
+ };
33
+
34
+ horizontalPlacement?: "left" | "right";
35
+ disablePortal?: boolean;
36
+ escapeWithReference?: boolean;
37
+ height?: any;
38
+
39
+ /**
40
+ * Element to render when there are no filters
41
+ */
42
+ leftEmptyElement?: React.ReactNode;
43
+ /**
44
+ * Element to render when the selected filter has no values
45
+ */
46
+ rightEmptyElement?: React.ReactNode;
47
+ }
48
+
49
+ export default function HvFilterContent(props: HvFilterContentProps): JSX.Element | null;
@@ -4,7 +4,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
4
4
 
5
5
  var _Filters, _Counter;
6
6
 
7
- var _excluded = ["id", "status", "disabled", "aria-label", "aria-labelledby", "description", "aria-describedby", "onChange", "onCancel", "onClear", "labels", "horizontalPlacement", "disablePortal", "escapeWithReference", "height"];
7
+ var _excluded = ["id", "status", "disabled", "aria-label", "aria-labelledby", "description", "aria-describedby", "onChange", "onCancel", "onClear", "labels", "horizontalPlacement", "disablePortal", "escapeWithReference", "height", "leftEmptyElement", "rightEmptyElement"];
8
8
  import "core-js/modules/es.symbol.js";
9
9
  import "core-js/modules/es.symbol.description.js";
10
10
  import "core-js/modules/es.string.trim.js";
@@ -41,6 +41,8 @@ var FilterContent = function FilterContent(_ref) {
41
41
  _ref$escapeWithRefere = _ref.escapeWithReference,
42
42
  escapeWithReference = _ref$escapeWithRefere === void 0 ? true : _ref$escapeWithRefere,
43
43
  height = _ref.height,
44
+ leftEmptyElement = _ref.leftEmptyElement,
45
+ rightEmptyElement = _ref.rightEmptyElement,
44
46
  others = _objectWithoutProperties(_ref, _excluded);
45
47
 
46
48
  var classes = useStyles();
@@ -140,10 +142,12 @@ var FilterContent = function FilterContent(_ref) {
140
142
  }
141
143
  }, /*#__PURE__*/React.createElement(LeftPanel, {
142
144
  id: id,
143
- className: classes.leftSidePanel
145
+ className: classes.leftSidePanel,
146
+ emptyElement: leftEmptyElement
144
147
  }), /*#__PURE__*/React.createElement(RightPanel, {
145
148
  id: id,
146
149
  className: classes.rightSidePanel,
150
+ emptyElement: rightEmptyElement,
147
151
  labels: labels
148
152
  })), /*#__PURE__*/React.createElement(HvActionBar, {
149
153
  className: classes.actionBar
@@ -190,7 +194,9 @@ process.env.NODE_ENV !== "production" ? FilterContent.propTypes = {
190
194
  horizontalPlacement: PropTypes.oneOf(["left", "right"]),
191
195
  disablePortal: PropTypes.bool,
192
196
  escapeWithReference: PropTypes.bool,
193
- height: PropTypes.any
197
+ height: PropTypes.any,
198
+ leftEmptyElement: PropTypes.node,
199
+ rightEmptyElement: PropTypes.node
194
200
  } : void 0;
195
201
  export default FilterContent;
196
202
  //# sourceMappingURL=FilterContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilterContent.js","names":["React","useMemo","useState","useRef","useContext","PropTypes","Filters","FilterGroupContext","LeftPanel","RightPanel","Counter","useStyles","setId","HvBaseDropdown","HvTypography","HvButton","HvActionBar","FilterContent","id","status","disabled","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","labels","horizontalPlacement","disablePortal","escapeWithReference","height","others","classes","filterGroupOpen","setFilterGroupOpen","defaultValue","filterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","focusTarget","focusOnContainer","current","focus","onApplyHandler","evt","onCancelHandler","onClearHandler","handleToggle","open","Header","placeholder","root","dropdown","panel","selection","baseDropdownSelection","header","modifiers","name","enabled","undefined","join","trim","leftSidePanel","rightSidePanel","actionBar","flat","length","clearLabel","space","applyLabel","cancelLabel","propTypes","string","node","bool","oneOf","func","shape","searchBoxPlaceholder","selectAll","multiSelectionConjunction","any"],"sources":["../../../../src/FilterGroup/FilterContent/FilterContent.js"],"sourcesContent":["import React, { useMemo, useState, useRef, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Filters } from \"@hitachivantara/uikit-react-icons\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport LeftPanel from \"../LeftPanel\";\nimport RightPanel from \"../RightPanel\";\nimport Counter from \"../Counter\";\n\nimport useStyles from \"./styles\";\n\nimport { setId, HvBaseDropdown, HvTypography, HvButton, HvActionBar } from \"../..\";\n\nconst FilterContent = ({\n id,\n status,\n disabled = false,\n\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n labels,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height,\n\n ...others\n}) => {\n const classes = useStyles();\n const [filterGroupOpen, setFilterGroupOpen] = useState(false);\n\n const { defaultValue, filterValues, rollbackFilters, clearFilters, applyFilters, applyDisabled } =\n useContext(FilterGroupContext);\n\n const focusTarget = useRef();\n\n const focusOnContainer = () => {\n focusTarget.current?.focus();\n };\n\n const onApplyHandler = (evt) => {\n applyFilters();\n onChange?.(evt, filterValues);\n setFilterGroupOpen(false);\n };\n\n const onCancelHandler = (evt) => {\n rollbackFilters();\n onCancel?.(evt);\n setFilterGroupOpen(false);\n };\n\n const onClearHandler = (evt) => {\n clearFilters();\n onClear?.(evt);\n };\n\n const handleToggle = (evt, open) => {\n /* \n If evt is null this toggle wasn't triggered by the user.\n instead it was triggered by the baseDropdown useEffect after\n the datepicker changed the expanded value this baseDropdown behavior needs a review\n */\n if (evt === null) return;\n setFilterGroupOpen(open);\n if (!open) onCancelHandler?.(evt);\n };\n\n const Header = useMemo(\n () => (\n <>\n <Filters />\n <HvTypography variant=\"highlightText\">{labels.placeholder}</HvTypography>\n </>\n ),\n [labels.placeholder]\n );\n\n return (\n <HvBaseDropdown\n id={setId(id, \"dropdown\")}\n role=\"combobox\"\n classes={{\n root: classes.dropdown,\n panel: classes.panel,\n selection: classes.baseDropdownSelection,\n header: classes.header,\n }}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n expanded={filterGroupOpen}\n onToggle={handleToggle}\n onClickOutside={onCancelHandler}\n onContainerCreation={focusOnContainer}\n placeholder={Header}\n adornment={<Counter />}\n popperProps={{ modifiers: [{ name: \"preventOverflow\", enabled: escapeWithReference }] }}\n aria-haspopup=\"dialog\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={status === \"invalid\" ? true : undefined}\n aria-errormessage={status === \"invalid\" ? setId(id, \"error\") : undefined}\n aria-describedby={\n [description && setId(id, \"description\"), ariaDescribedBy].join(\" \").trim() || undefined\n }\n {...others}\n >\n <div ref={focusTarget} tabIndex={-1} />\n <div className={classes.root} style={{ height }}>\n <LeftPanel id={id} className={classes.leftSidePanel} />\n <RightPanel id={id} className={classes.rightSidePanel} labels={labels} />\n </div>\n <HvActionBar className={classes.actionBar}>\n <HvButton\n id={setId(id, \"clearFilters-button\")}\n disabled={\n defaultValue\n ? defaultValue?.flat().length === filterValues?.flat().length\n : filterValues?.flat().length === 0\n }\n category=\"ghost\"\n onClick={onClearHandler}\n >\n {labels.clearLabel}\n </HvButton>\n <div aria-hidden=\"true\" className={classes.space}>\n &nbsp;\n </div>\n <HvButton\n id={setId(id, \"apply-button\")}\n disabled={applyDisabled}\n category=\"ghost\"\n onClick={onApplyHandler}\n >\n {labels.applyLabel}\n </HvButton>\n <HvButton id={setId(id, \"cancel-button\")} category=\"ghost\" onClick={onCancelHandler}>\n {labels.cancelLabel}\n </HvButton>\n </HvActionBar>\n </HvBaseDropdown>\n );\n};\n\nFilterContent.propTypes = {\n id: PropTypes.string,\n\n \"aria-label\": PropTypes.string,\n \"aria-labelledby\": PropTypes.string,\n description: PropTypes.node,\n \"aria-describedby\": PropTypes.string,\n disabled: PropTypes.bool,\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n\n onChange: PropTypes.func,\n onCancel: PropTypes.func,\n onClear: PropTypes.func,\n\n labels: PropTypes.shape({\n applyLabel: PropTypes.string,\n cancelLabel: PropTypes.string,\n clearLabel: PropTypes.string,\n placeholder: PropTypes.string,\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n disablePortal: PropTypes.bool,\n escapeWithReference: PropTypes.bool,\n height: PropTypes.any,\n};\n\nexport default FilterContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterContent.js","names":["React","useMemo","useState","useRef","useContext","PropTypes","Filters","FilterGroupContext","LeftPanel","RightPanel","Counter","useStyles","setId","HvBaseDropdown","HvTypography","HvButton","HvActionBar","FilterContent","id","status","disabled","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","labels","horizontalPlacement","disablePortal","escapeWithReference","height","leftEmptyElement","rightEmptyElement","others","classes","filterGroupOpen","setFilterGroupOpen","defaultValue","filterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","focusTarget","focusOnContainer","current","focus","onApplyHandler","evt","onCancelHandler","onClearHandler","handleToggle","open","Header","placeholder","root","dropdown","panel","selection","baseDropdownSelection","header","modifiers","name","enabled","undefined","join","trim","leftSidePanel","rightSidePanel","actionBar","flat","length","clearLabel","space","applyLabel","cancelLabel","propTypes","string","node","bool","oneOf","func","shape","searchBoxPlaceholder","selectAll","multiSelectionConjunction","any"],"sources":["../../../../src/FilterGroup/FilterContent/FilterContent.js"],"sourcesContent":["import React, { useMemo, useState, useRef, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Filters } from \"@hitachivantara/uikit-react-icons\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport LeftPanel from \"../LeftPanel\";\nimport RightPanel from \"../RightPanel\";\nimport Counter from \"../Counter\";\n\nimport useStyles from \"./styles\";\n\nimport { setId, HvBaseDropdown, HvTypography, HvButton, HvActionBar } from \"../..\";\n\nconst FilterContent = ({\n id,\n status,\n disabled = false,\n\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n labels,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height,\n leftEmptyElement,\n rightEmptyElement,\n\n ...others\n}) => {\n const classes = useStyles();\n const [filterGroupOpen, setFilterGroupOpen] = useState(false);\n\n const { defaultValue, filterValues, rollbackFilters, clearFilters, applyFilters, applyDisabled } =\n useContext(FilterGroupContext);\n\n const focusTarget = useRef();\n\n const focusOnContainer = () => {\n focusTarget.current?.focus();\n };\n\n const onApplyHandler = (evt) => {\n applyFilters();\n onChange?.(evt, filterValues);\n setFilterGroupOpen(false);\n };\n\n const onCancelHandler = (evt) => {\n rollbackFilters();\n onCancel?.(evt);\n setFilterGroupOpen(false);\n };\n\n const onClearHandler = (evt) => {\n clearFilters();\n onClear?.(evt);\n };\n\n const handleToggle = (evt, open) => {\n /* \n If evt is null this toggle wasn't triggered by the user.\n instead it was triggered by the baseDropdown useEffect after\n the datepicker changed the expanded value this baseDropdown behavior needs a review\n */\n if (evt === null) return;\n setFilterGroupOpen(open);\n if (!open) onCancelHandler?.(evt);\n };\n\n const Header = useMemo(\n () => (\n <>\n <Filters />\n <HvTypography variant=\"highlightText\">{labels.placeholder}</HvTypography>\n </>\n ),\n [labels.placeholder]\n );\n\n return (\n <HvBaseDropdown\n id={setId(id, \"dropdown\")}\n role=\"combobox\"\n classes={{\n root: classes.dropdown,\n panel: classes.panel,\n selection: classes.baseDropdownSelection,\n header: classes.header,\n }}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n expanded={filterGroupOpen}\n onToggle={handleToggle}\n onClickOutside={onCancelHandler}\n onContainerCreation={focusOnContainer}\n placeholder={Header}\n adornment={<Counter />}\n popperProps={{ modifiers: [{ name: \"preventOverflow\", enabled: escapeWithReference }] }}\n aria-haspopup=\"dialog\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={status === \"invalid\" ? true : undefined}\n aria-errormessage={status === \"invalid\" ? setId(id, \"error\") : undefined}\n aria-describedby={\n [description && setId(id, \"description\"), ariaDescribedBy].join(\" \").trim() || undefined\n }\n {...others}\n >\n <div ref={focusTarget} tabIndex={-1} />\n <div className={classes.root} style={{ height }}>\n <LeftPanel id={id} className={classes.leftSidePanel} emptyElement={leftEmptyElement} />\n <RightPanel\n id={id}\n className={classes.rightSidePanel}\n emptyElement={rightEmptyElement}\n labels={labels}\n />\n </div>\n <HvActionBar className={classes.actionBar}>\n <HvButton\n id={setId(id, \"clearFilters-button\")}\n disabled={\n defaultValue\n ? defaultValue?.flat().length === filterValues?.flat().length\n : filterValues?.flat().length === 0\n }\n category=\"ghost\"\n onClick={onClearHandler}\n >\n {labels.clearLabel}\n </HvButton>\n <div aria-hidden=\"true\" className={classes.space}>\n &nbsp;\n </div>\n <HvButton\n id={setId(id, \"apply-button\")}\n disabled={applyDisabled}\n category=\"ghost\"\n onClick={onApplyHandler}\n >\n {labels.applyLabel}\n </HvButton>\n <HvButton id={setId(id, \"cancel-button\")} category=\"ghost\" onClick={onCancelHandler}>\n {labels.cancelLabel}\n </HvButton>\n </HvActionBar>\n </HvBaseDropdown>\n );\n};\n\nFilterContent.propTypes = {\n id: PropTypes.string,\n\n \"aria-label\": PropTypes.string,\n \"aria-labelledby\": PropTypes.string,\n description: PropTypes.node,\n \"aria-describedby\": PropTypes.string,\n disabled: PropTypes.bool,\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n\n onChange: PropTypes.func,\n onCancel: PropTypes.func,\n onClear: PropTypes.func,\n\n labels: PropTypes.shape({\n applyLabel: PropTypes.string,\n cancelLabel: PropTypes.string,\n clearLabel: PropTypes.string,\n placeholder: PropTypes.string,\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n disablePortal: PropTypes.bool,\n escapeWithReference: PropTypes.bool,\n height: PropTypes.any,\n leftEmptyElement: PropTypes.node,\n rightEmptyElement: PropTypes.node,\n};\n\nexport default FilterContent;\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default } from "./FilterContent";
2
+ export * from "./FilterContent";
@@ -38,13 +38,14 @@ var styles = makeStyles(function (theme) {
38
38
  space: {
39
39
  flex: 1
40
40
  },
41
- baseDropdownSelection: {
42
- padding: "0 30px 0 0"
43
- },
41
+ baseDropdownSelection: {},
44
42
  header: {
45
43
  display: "flex",
46
44
  justifyContent: "space-between",
47
- height: 32
45
+ height: 32,
46
+ "& $baseDropdownSelection": {
47
+ padding: "0 30px 0 0"
48
+ }
48
49
  },
49
50
  leftSidePanel: {},
50
51
  rightSidePanel: {}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["makeStyles","styles","theme","root","width","backgroundColor","hv","palette","atmosphere","atmo1","maxHeight","minHeight","display","spacing","height","verticalAlign","padding","margin","overflow","boxShadow","shadow","shad1","panel","actionBar","space","flex","baseDropdownSelection","header","justifyContent","leftSidePanel","rightSidePanel"],"sources":["../../../../src/FilterGroup/FilterContent/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n width: 640,\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n \"& div$leftSidePanel\": {\n display: \"inline-block\",\n width: `calc(50% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n height: `calc(100% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n verticalAlign: \"top\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n padding: 4,\n margin: theme.spacing(\"sm\") - 4,\n },\n \"& div$rightSidePanel\": {\n display: \"inline-block\",\n width: \"50%\",\n height: \"100%\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n verticalAlign: \"top\",\n overflow: \"visible\",\n boxShadow: `inset 8px 0 8px -6px ${theme.hv.palette.shadow.shad1}`,\n },\n },\n panel: {\n maxHeight: 500,\n minHeight: 370,\n },\n actionBar: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n space: {\n flex: 1,\n },\n baseDropdownSelection: {\n padding: \"0 30px 0 0\",\n },\n header: {\n display: \"flex\",\n justifyContent: \"space-between\",\n height: 32,\n },\n leftSidePanel: {},\n rightSidePanel: {},\n}));\n\nexport default styles;\n"],"mappings":";AAAA,SAASA,UAAT,QAA2B,mBAA3B;AAEA,IAAMC,MAAM,GAAGD,UAAU,CAAC,UAACE,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJC,KAAK,EAAE,GADH;MAEJC,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAFzC;MAGJC,SAAS,EAAE,oBAHP;MAIJC,SAAS,EAAE,oBAJP;MAKJ,uBAAuB;QACrBC,OAAO,EAAE,cADY;QAErBR,KAAK,uBAAgBF,KAAK,CAACW,OAAN,CAAc,IAAd,CAAhB,kBAA2CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA3C,cAFgB;QAGrBC,MAAM,wBAAiBZ,KAAK,CAACW,OAAN,CAAc,IAAd,CAAjB,kBAA4CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA5C,cAHe;QAIrBE,aAAa,EAAE,KAJM;QAKrBL,SAAS,EAAE,oBALU;QAMrBC,SAAS,EAAE,oBANU;QAOrBK,OAAO,EAAE,CAPY;QAQrBC,MAAM,EAAEf,KAAK,CAACW,OAAN,CAAc,IAAd,IAAsB;MART,CALnB;MAeJ,wBAAwB;QACtBD,OAAO,EAAE,cADa;QAEtBR,KAAK,EAAE,KAFe;QAGtBU,MAAM,EAAE,MAHc;QAItBJ,SAAS,EAAE,oBAJW;QAKtBC,SAAS,EAAE,oBALW;QAMtBI,aAAa,EAAE,KANO;QAOtBG,QAAQ,EAAE,SAPY;QAQtBC,SAAS,iCAA0BjB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBa,MAAjB,CAAwBC,KAAlD;MARa;IAfpB,CAD8B;IA2BpCC,KAAK,EAAE;MACLZ,SAAS,EAAE,GADN;MAELC,SAAS,EAAE;IAFN,CA3B6B;IA+BpCY,SAAS,EAAE;MACTlB,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADpC,CA/ByB;IAkCpCe,KAAK,EAAE;MACLC,IAAI,EAAE;IADD,CAlC6B;IAqCpCC,qBAAqB,EAAE;MACrBV,OAAO,EAAE;IADY,CArCa;IAwCpCW,MAAM,EAAE;MACNf,OAAO,EAAE,MADH;MAENgB,cAAc,EAAE,eAFV;MAGNd,MAAM,EAAE;IAHF,CAxC4B;IA6CpCe,aAAa,EAAE,EA7CqB;IA8CpCC,cAAc,EAAE;EA9CoB,CAAZ;AAAA,CAAD,CAAzB;AAiDA,eAAe7B,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["makeStyles","styles","theme","root","width","backgroundColor","hv","palette","atmosphere","atmo1","maxHeight","minHeight","display","spacing","height","verticalAlign","padding","margin","overflow","boxShadow","shadow","shad1","panel","actionBar","space","flex","baseDropdownSelection","header","justifyContent","leftSidePanel","rightSidePanel"],"sources":["../../../../src/FilterGroup/FilterContent/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n width: 640,\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n \"& div$leftSidePanel\": {\n display: \"inline-block\",\n width: `calc(50% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n height: `calc(100% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n verticalAlign: \"top\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n padding: 4,\n margin: theme.spacing(\"sm\") - 4,\n },\n \"& div$rightSidePanel\": {\n display: \"inline-block\",\n width: \"50%\",\n height: \"100%\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n verticalAlign: \"top\",\n overflow: \"visible\",\n boxShadow: `inset 8px 0 8px -6px ${theme.hv.palette.shadow.shad1}`,\n },\n },\n panel: {\n maxHeight: 500,\n minHeight: 370,\n },\n actionBar: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n space: {\n flex: 1,\n },\n baseDropdownSelection: {},\n header: {\n display: \"flex\",\n justifyContent: \"space-between\",\n height: 32,\n \"& $baseDropdownSelection\": {\n padding: \"0 30px 0 0\",\n },\n },\n leftSidePanel: {},\n rightSidePanel: {},\n}));\n\nexport default styles;\n"],"mappings":";AAAA,SAASA,UAAT,QAA2B,mBAA3B;AAEA,IAAMC,MAAM,GAAGD,UAAU,CAAC,UAACE,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJC,KAAK,EAAE,GADH;MAEJC,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAFzC;MAGJC,SAAS,EAAE,oBAHP;MAIJC,SAAS,EAAE,oBAJP;MAKJ,uBAAuB;QACrBC,OAAO,EAAE,cADY;QAErBR,KAAK,uBAAgBF,KAAK,CAACW,OAAN,CAAc,IAAd,CAAhB,kBAA2CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA3C,cAFgB;QAGrBC,MAAM,wBAAiBZ,KAAK,CAACW,OAAN,CAAc,IAAd,CAAjB,kBAA4CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA5C,cAHe;QAIrBE,aAAa,EAAE,KAJM;QAKrBL,SAAS,EAAE,oBALU;QAMrBC,SAAS,EAAE,oBANU;QAOrBK,OAAO,EAAE,CAPY;QAQrBC,MAAM,EAAEf,KAAK,CAACW,OAAN,CAAc,IAAd,IAAsB;MART,CALnB;MAeJ,wBAAwB;QACtBD,OAAO,EAAE,cADa;QAEtBR,KAAK,EAAE,KAFe;QAGtBU,MAAM,EAAE,MAHc;QAItBJ,SAAS,EAAE,oBAJW;QAKtBC,SAAS,EAAE,oBALW;QAMtBI,aAAa,EAAE,KANO;QAOtBG,QAAQ,EAAE,SAPY;QAQtBC,SAAS,iCAA0BjB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBa,MAAjB,CAAwBC,KAAlD;MARa;IAfpB,CAD8B;IA2BpCC,KAAK,EAAE;MACLZ,SAAS,EAAE,GADN;MAELC,SAAS,EAAE;IAFN,CA3B6B;IA+BpCY,SAAS,EAAE;MACTlB,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADpC,CA/ByB;IAkCpCe,KAAK,EAAE;MACLC,IAAI,EAAE;IADD,CAlC6B;IAqCpCC,qBAAqB,EAAE,EArCa;IAsCpCC,MAAM,EAAE;MACNf,OAAO,EAAE,MADH;MAENgB,cAAc,EAAE,eAFV;MAGNd,MAAM,EAAE,EAHF;MAIN,4BAA4B;QAC1BE,OAAO,EAAE;MADiB;IAJtB,CAtC4B;IA8CpCa,aAAa,EAAE,EA9CqB;IA+CpCC,cAAc,EAAE;EA/CoB,CAAZ;AAAA,CAAD,CAAzB;AAkDA,eAAe7B,MAAf"}
@@ -1,5 +1,6 @@
1
1
  import { StandardProps } from "@material-ui/core";
2
- import { HvBaseDropdownProps, HvFormElementProps } from "..";
2
+ import { HvFormElementProps } from "..";
3
+ import { HvFilterContentProps } from "./FilterContent";
3
4
 
4
5
  export type HvFilterGroupClassKey = "root" | "labelContainer" | "label" | "description" | "error";
5
6
 
@@ -105,7 +106,7 @@ export interface HvFilterGroupProps
105
106
  /**
106
107
  * Other props, passed to `FilterContent` and `HvBaseDropdown` components
107
108
  */
108
- filterContentProps?: Record<string, unknown> & Partial<HvBaseDropdownProps>;
109
+ filterContentProps?: Partial<HvFilterContentProps>;
109
110
  }
110
111
 
111
112
  export default function HvFilterGroup(props: HvFilterGroupProps): JSX.Element | null;
@@ -11,7 +11,8 @@ import { wrapperTooltip } from "../../List/utils";
11
11
 
12
12
  var LeftPanel = function LeftPanel(_ref) {
13
13
  var id = _ref.id,
14
- className = _ref.className;
14
+ className = _ref.className,
15
+ emptyElement = _ref.emptyElement;
15
16
  var classes = useStyles();
16
17
 
17
18
  var _useContext = useContext(FilterGroupContext),
@@ -22,7 +23,7 @@ var LeftPanel = function LeftPanel(_ref) {
22
23
  return /*#__PURE__*/React.createElement(HvPanel, {
23
24
  id: setId(id, "leftPanel"),
24
25
  className: clsx(className, classes.root)
25
- }, /*#__PURE__*/React.createElement(HvListContainer, {
26
+ }, filterOptions.length > 0 ? /*#__PURE__*/React.createElement(HvListContainer, {
26
27
  id: setId(id, "leftPanel-list"),
27
28
  condensed: true,
28
29
  interactive: true
@@ -40,12 +41,13 @@ var LeftPanel = function LeftPanel(_ref) {
40
41
  id: group.id
41
42
  })
42
43
  }, /*#__PURE__*/React.createElement(ItemText, null));
43
- })));
44
+ })) : emptyElement);
44
45
  };
45
46
 
46
47
  process.env.NODE_ENV !== "production" ? LeftPanel.propTypes = {
47
48
  id: PropTypes.string,
48
- className: PropTypes.string
49
+ className: PropTypes.string,
50
+ emptyElement: PropTypes.node
49
51
  } : void 0;
50
52
  export default LeftPanel;
51
53
  //# sourceMappingURL=LeftPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LeftPanel.js","names":["React","useContext","clsx","PropTypes","HvPanel","HvListContainer","HvListItem","setId","FilterGroupContext","Counter","useStyles","wrapperTooltip","LeftPanel","id","className","classes","filterOptions","activeGroup","setActiveGroup","root","map","group","index","ItemText","name","filterItem","propTypes","string"],"sources":["../../../../src/FilterGroup/LeftPanel/LeftPanel.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { HvPanel, HvListContainer, HvListItem, setId } from \"../..\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport Counter from \"../Counter\";\nimport useStyles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst LeftPanel = ({ id, className }) => {\n const classes = useStyles();\n const { filterOptions, activeGroup, setActiveGroup } = useContext(FilterGroupContext);\n\n return (\n <HvPanel id={setId(id, \"leftPanel\")} className={clsx(className, classes.root)}>\n <HvListContainer id={setId(id, \"leftPanel-list\")} condensed interactive>\n {filterOptions.map((group, index) => {\n const ItemText = wrapperTooltip(true, group.name, group.name);\n return (\n <HvListItem\n id={group.id}\n className={classes.filterItem}\n key={group.name}\n onClick={() => setActiveGroup(index)}\n selected={filterOptions[activeGroup].id === group.id}\n endAdornment={<Counter id={group.id} />}\n >\n <ItemText />\n </HvListItem>\n );\n })}\n </HvListContainer>\n </HvPanel>\n );\n};\n\nLeftPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n};\n\nexport default LeftPanel;\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,OAAT,EAAkBC,eAAlB,EAAmCC,UAAnC,EAA+CC,KAA/C,QAA4D,OAA5D;AACA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,SAAP,MAAsB,UAAtB;AACA,SAASC,cAAT,QAA+B,kBAA/B;;AAEA,IAAMC,SAAS,GAAG,SAAZA,SAAY,OAAuB;EAAA,IAApBC,EAAoB,QAApBA,EAAoB;EAAA,IAAhBC,SAAgB,QAAhBA,SAAgB;EACvC,IAAMC,OAAO,GAAGL,SAAS,EAAzB;;EACA,kBAAuDT,UAAU,CAACO,kBAAD,CAAjE;EAAA,IAAQQ,aAAR,eAAQA,aAAR;EAAA,IAAuBC,WAAvB,eAAuBA,WAAvB;EAAA,IAAoCC,cAApC,eAAoCA,cAApC;;EAEA,oBACE,oBAAC,OAAD;IAAS,EAAE,EAAEX,KAAK,CAACM,EAAD,EAAK,WAAL,CAAlB;IAAqC,SAAS,EAAEX,IAAI,CAACY,SAAD,EAAYC,OAAO,CAACI,IAApB;EAApD,gBACE,oBAAC,eAAD;IAAiB,EAAE,EAAEZ,KAAK,CAACM,EAAD,EAAK,gBAAL,CAA1B;IAAkD,SAAS,MAA3D;IAA4D,WAAW;EAAvE,GACGG,aAAa,CAACI,GAAd,CAAkB,UAACC,KAAD,EAAQC,KAAR,EAAkB;IACnC,IAAMC,QAAQ,GAAGZ,cAAc,CAAC,IAAD,EAAOU,KAAK,CAACG,IAAb,EAAmBH,KAAK,CAACG,IAAzB,CAA/B;IACA,oBACE,oBAAC,UAAD;MACE,EAAE,EAAEH,KAAK,CAACR,EADZ;MAEE,SAAS,EAAEE,OAAO,CAACU,UAFrB;MAGE,GAAG,EAAEJ,KAAK,CAACG,IAHb;MAIE,OAAO,EAAE;QAAA,OAAMN,cAAc,CAACI,KAAD,CAApB;MAAA,CAJX;MAKE,QAAQ,EAAEN,aAAa,CAACC,WAAD,CAAb,CAA2BJ,EAA3B,KAAkCQ,KAAK,CAACR,EALpD;MAME,YAAY,eAAE,oBAAC,OAAD;QAAS,EAAE,EAAEQ,KAAK,CAACR;MAAnB;IANhB,gBAQE,oBAAC,QAAD,OARF,CADF;EAYD,CAdA,CADH,CADF,CADF;AAqBD,CAzBD;;AA2BA,wCAAAD,SAAS,CAACc,SAAV,GAAsB;EACpBb,EAAE,EAAEV,SAAS,CAACwB,MADM;EAEpBb,SAAS,EAAEX,SAAS,CAACwB;AAFD,CAAtB;AAKA,eAAef,SAAf"}
1
+ {"version":3,"file":"LeftPanel.js","names":["React","useContext","clsx","PropTypes","HvPanel","HvListContainer","HvListItem","setId","FilterGroupContext","Counter","useStyles","wrapperTooltip","LeftPanel","id","className","emptyElement","classes","filterOptions","activeGroup","setActiveGroup","root","length","map","group","index","ItemText","name","filterItem","propTypes","string","node"],"sources":["../../../../src/FilterGroup/LeftPanel/LeftPanel.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { HvPanel, HvListContainer, HvListItem, setId } from \"../..\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport Counter from \"../Counter\";\nimport useStyles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst LeftPanel = ({ id, className, emptyElement }) => {\n const classes = useStyles();\n const { filterOptions, activeGroup, setActiveGroup } = useContext(FilterGroupContext);\n\n return (\n <HvPanel id={setId(id, \"leftPanel\")} className={clsx(className, classes.root)}>\n {filterOptions.length > 0 ? (\n <HvListContainer id={setId(id, \"leftPanel-list\")} condensed interactive>\n {filterOptions.map((group, index) => {\n const ItemText = wrapperTooltip(true, group.name, group.name);\n return (\n <HvListItem\n id={group.id}\n className={classes.filterItem}\n key={group.name}\n onClick={() => setActiveGroup(index)}\n selected={filterOptions[activeGroup].id === group.id}\n endAdornment={<Counter id={group.id} />}\n >\n <ItemText />\n </HvListItem>\n );\n })}\n </HvListContainer>\n ) : (\n emptyElement\n )}\n </HvPanel>\n );\n};\n\nLeftPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n emptyElement: PropTypes.node,\n};\n\nexport default LeftPanel;\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,OAAT,EAAkBC,eAAlB,EAAmCC,UAAnC,EAA+CC,KAA/C,QAA4D,OAA5D;AACA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,SAAP,MAAsB,UAAtB;AACA,SAASC,cAAT,QAA+B,kBAA/B;;AAEA,IAAMC,SAAS,GAAG,SAAZA,SAAY,OAAqC;EAAA,IAAlCC,EAAkC,QAAlCA,EAAkC;EAAA,IAA9BC,SAA8B,QAA9BA,SAA8B;EAAA,IAAnBC,YAAmB,QAAnBA,YAAmB;EACrD,IAAMC,OAAO,GAAGN,SAAS,EAAzB;;EACA,kBAAuDT,UAAU,CAACO,kBAAD,CAAjE;EAAA,IAAQS,aAAR,eAAQA,aAAR;EAAA,IAAuBC,WAAvB,eAAuBA,WAAvB;EAAA,IAAoCC,cAApC,eAAoCA,cAApC;;EAEA,oBACE,oBAAC,OAAD;IAAS,EAAE,EAAEZ,KAAK,CAACM,EAAD,EAAK,WAAL,CAAlB;IAAqC,SAAS,EAAEX,IAAI,CAACY,SAAD,EAAYE,OAAO,CAACI,IAApB;EAApD,GACGH,aAAa,CAACI,MAAd,GAAuB,CAAvB,gBACC,oBAAC,eAAD;IAAiB,EAAE,EAAEd,KAAK,CAACM,EAAD,EAAK,gBAAL,CAA1B;IAAkD,SAAS,MAA3D;IAA4D,WAAW;EAAvE,GACGI,aAAa,CAACK,GAAd,CAAkB,UAACC,KAAD,EAAQC,KAAR,EAAkB;IACnC,IAAMC,QAAQ,GAAGd,cAAc,CAAC,IAAD,EAAOY,KAAK,CAACG,IAAb,EAAmBH,KAAK,CAACG,IAAzB,CAA/B;IACA,oBACE,oBAAC,UAAD;MACE,EAAE,EAAEH,KAAK,CAACV,EADZ;MAEE,SAAS,EAAEG,OAAO,CAACW,UAFrB;MAGE,GAAG,EAAEJ,KAAK,CAACG,IAHb;MAIE,OAAO,EAAE;QAAA,OAAMP,cAAc,CAACK,KAAD,CAApB;MAAA,CAJX;MAKE,QAAQ,EAAEP,aAAa,CAACC,WAAD,CAAb,CAA2BL,EAA3B,KAAkCU,KAAK,CAACV,EALpD;MAME,YAAY,eAAE,oBAAC,OAAD;QAAS,EAAE,EAAEU,KAAK,CAACV;MAAnB;IANhB,gBAQE,oBAAC,QAAD,OARF,CADF;EAYD,CAdA,CADH,CADD,GAmBCE,YApBJ,CADF;AAyBD,CA7BD;;AA+BA,wCAAAH,SAAS,CAACgB,SAAV,GAAsB;EACpBf,EAAE,EAAEV,SAAS,CAAC0B,MADM;EAEpBf,SAAS,EAAEX,SAAS,CAAC0B,MAFD;EAGpBd,YAAY,EAAEZ,SAAS,CAAC2B;AAHJ,CAAtB;AAMA,eAAelB,SAAf"}
@@ -31,7 +31,8 @@ import { setId, HvTypography, HvList, HvInput, HvPanel, HvCheckBox } from "../..
31
31
  var RightPanel = function RightPanel(_ref) {
32
32
  var id = _ref.id,
33
33
  className = _ref.className,
34
- labels = _ref.labels;
34
+ labels = _ref.labels,
35
+ emptyElement = _ref.emptyElement;
35
36
  var classes = useStyles();
36
37
 
37
38
  var _useState = useState(""),
@@ -145,7 +146,7 @@ var RightPanel = function RightPanel(_ref) {
145
146
  return /*#__PURE__*/React.createElement(HvPanel, {
146
147
  id: setId(id, "rightPanel"),
147
148
  className: clsx(className, classes.root)
148
- }, /*#__PURE__*/React.createElement(HvInput, {
149
+ }, listValues.length > 0 ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(HvInput, {
149
150
  id: setId(id, "search"),
150
151
  classes: {
151
152
  root: classes.search
@@ -168,7 +169,7 @@ var RightPanel = function RightPanel(_ref) {
168
169
  selectable: true,
169
170
  condensed: true,
170
171
  hasTooltips: true
171
- }));
172
+ })) : emptyElement);
172
173
  };
173
174
 
174
175
  process.env.NODE_ENV !== "production" ? RightPanel.propTypes = {
@@ -178,7 +179,8 @@ process.env.NODE_ENV !== "production" ? RightPanel.propTypes = {
178
179
  searchBoxPlaceholder: PropTypes.string,
179
180
  selectAll: PropTypes.string,
180
181
  multiSelectionConjunction: PropTypes.string
181
- })
182
+ }),
183
+ emptyElement: PropTypes.node
182
184
  } : void 0;
183
185
  export default RightPanel;
184
186
  //# sourceMappingURL=RightPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RightPanel.js","names":["React","useMemo","useContext","useState","useEffect","useCallback","PropTypes","cloneDeep","clsx","FilterGroupContext","useStyles","setId","HvTypography","HvList","HvInput","HvPanel","HvCheckBox","RightPanel","id","className","labels","classes","searchStr","setSearchStr","allSelected","setAllSelected","anySelected","setAnySelected","filterOptions","filterValues","setFilterValues","activeGroup","activeGroupOptions","data","map","option","activeFilterValues","filter","value","includes","listValues","label","name","selected","isHidden","toLowerCase","indexOf","updateSelectAll","nbrSelected","length","hasSelection","allSelect","onChangeHandler","values","newFilterValues","i","v","handleSelectAll","SelectAll","selectAll","multiSelectionConjunction","defaultLabel","selectAllContainer","container","selection","root","search","searchBoxPlaceholder","event","str","list","propTypes","string","shape"],"sources":["../../../../src/FilterGroup/RightPanel/RightPanel.js"],"sourcesContent":["import React, { useMemo, useContext, useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport clsx from \"clsx\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport useStyles from \"./styles\";\nimport { setId, HvTypography, HvList, HvInput, HvPanel, HvCheckBox } from \"../..\";\n\nconst RightPanel = ({ id, className, labels }) => {\n const classes = useStyles();\n const [searchStr, setSearchStr] = useState(\"\");\n const [allSelected, setAllSelected] = useState(false);\n const [anySelected, setAnySelected] = useState(false);\n\n const {\n filterOptions,\n filterValues = [],\n setFilterValues,\n activeGroup,\n } = useContext(FilterGroupContext);\n\n const activeGroupOptions = useMemo(\n () => (filterOptions[activeGroup]?.data || []).map((option) => option.id),\n [filterOptions, activeGroup]\n );\n\n const activeFilterValues = useMemo(\n () => filterValues[activeGroup]?.filter((value) => activeGroupOptions.includes(value)),\n [filterValues, activeGroupOptions, activeGroup]\n );\n\n const listValues = useMemo(\n () =>\n (filterOptions[activeGroup]?.data || []).map((option) => ({\n ...option,\n label: option.name,\n selected: filterValues[activeGroup]?.includes(option.id),\n isHidden: option.name.toLowerCase().indexOf(searchStr.toLowerCase()) < 0,\n })),\n [filterOptions, filterValues, activeGroup, searchStr]\n );\n\n const updateSelectAll = useCallback(() => {\n const nbrSelected = activeFilterValues?.length;\n const hasSelection = nbrSelected > 0;\n const allSelect = nbrSelected === activeGroupOptions.length;\n\n setAnySelected(hasSelection);\n setAllSelected(hasSelection && allSelect);\n }, [activeFilterValues, activeGroupOptions]);\n\n useEffect(() => {\n updateSelectAll();\n }, [activeFilterValues, updateSelectAll]);\n\n useEffect(() => setSearchStr(\"\"), [activeGroup]);\n\n const onChangeHandler = (values) => {\n const newFilterValues = filterOptions.map((option, i) =>\n activeGroup === i\n ? values.filter((v) => v.selected).map((v) => v.id)\n : [...(filterValues[i] || [])]\n );\n setFilterValues(newFilterValues);\n };\n\n const handleSelectAll = useCallback(() => {\n const newFilterValues = cloneDeep(filterValues);\n newFilterValues[activeGroup] = anySelected ? [] : activeGroupOptions;\n\n setFilterValues(newFilterValues);\n }, [activeGroup, activeGroupOptions, anySelected, filterValues, setFilterValues]);\n\n /**\n * Create selecteAll component.\n *\n * @returns {*}\n */\n const SelectAll = useCallback(() => {\n const { selectAll, multiSelectionConjunction } = labels;\n const nbrSelected = activeFilterValues?.length;\n\n const defaultLabel = (\n <HvTypography component=\"span\">\n {nbrSelected > 0 ? (\n <>\n <b>{nbrSelected}</b>\n {` ${multiSelectionConjunction} ${activeGroupOptions.length}`}\n </>\n ) : (\n <>\n <b>{selectAll}</b>\n {` (${activeGroupOptions.length})`}\n </>\n )}\n </HvTypography>\n );\n\n return (\n <div className={classes.selectAllContainer}>\n <HvCheckBox\n id={setId(id, \"select-all\")}\n label={defaultLabel}\n onChange={() => handleSelectAll()}\n classes={{ container: classes.selection }}\n className={classes.selectAll}\n indeterminate={anySelected && !allSelected}\n checked={allSelected}\n />\n </div>\n );\n }, [\n activeFilterValues?.length,\n activeGroupOptions.length,\n allSelected,\n anySelected,\n classes.selectAll,\n classes.selectAllContainer,\n classes.selection,\n handleSelectAll,\n id,\n labels,\n ]);\n\n return (\n <HvPanel id={setId(id, \"rightPanel\")} className={clsx(className, classes.root)}>\n <HvInput\n id={setId(id, \"search\")}\n classes={{\n root: classes.search,\n }}\n type=\"search\"\n placeholder={labels.searchBoxPlaceholder}\n value={searchStr}\n onChange={(event, str) => setSearchStr(str)}\n />\n <SelectAll />\n <HvList\n key={activeGroup}\n id={setId(id, \"list\")}\n className={classes.list}\n values={listValues}\n multiSelect\n useSelector\n showSelectAll={false}\n onChange={onChangeHandler}\n selectable\n condensed\n hasTooltips\n />\n </HvPanel>\n );\n};\n\nRightPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n labels: PropTypes.shape({\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n};\n\nexport default RightPanel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"RightPanel.js","names":["React","useMemo","useContext","useState","useEffect","useCallback","PropTypes","cloneDeep","clsx","FilterGroupContext","useStyles","setId","HvTypography","HvList","HvInput","HvPanel","HvCheckBox","RightPanel","id","className","labels","emptyElement","classes","searchStr","setSearchStr","allSelected","setAllSelected","anySelected","setAnySelected","filterOptions","filterValues","setFilterValues","activeGroup","activeGroupOptions","data","map","option","activeFilterValues","filter","value","includes","listValues","label","name","selected","isHidden","toLowerCase","indexOf","updateSelectAll","nbrSelected","length","hasSelection","allSelect","onChangeHandler","values","newFilterValues","i","v","handleSelectAll","SelectAll","selectAll","multiSelectionConjunction","defaultLabel","selectAllContainer","container","selection","root","search","searchBoxPlaceholder","event","str","list","propTypes","string","shape","node"],"sources":["../../../../src/FilterGroup/RightPanel/RightPanel.js"],"sourcesContent":["import React, { useMemo, useContext, useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport clsx from \"clsx\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport useStyles from \"./styles\";\nimport { setId, HvTypography, HvList, HvInput, HvPanel, HvCheckBox } from \"../..\";\n\nconst RightPanel = ({ id, className, labels, emptyElement }) => {\n const classes = useStyles();\n const [searchStr, setSearchStr] = useState(\"\");\n const [allSelected, setAllSelected] = useState(false);\n const [anySelected, setAnySelected] = useState(false);\n\n const {\n filterOptions,\n filterValues = [],\n setFilterValues,\n activeGroup,\n } = useContext(FilterGroupContext);\n\n const activeGroupOptions = useMemo(\n () => (filterOptions[activeGroup]?.data || []).map((option) => option.id),\n [filterOptions, activeGroup]\n );\n\n const activeFilterValues = useMemo(\n () => filterValues[activeGroup]?.filter((value) => activeGroupOptions.includes(value)),\n [filterValues, activeGroupOptions, activeGroup]\n );\n\n const listValues = useMemo(\n () =>\n (filterOptions[activeGroup]?.data || []).map((option) => ({\n ...option,\n label: option.name,\n selected: filterValues[activeGroup]?.includes(option.id),\n isHidden: option.name.toLowerCase().indexOf(searchStr.toLowerCase()) < 0,\n })),\n [filterOptions, filterValues, activeGroup, searchStr]\n );\n\n const updateSelectAll = useCallback(() => {\n const nbrSelected = activeFilterValues?.length;\n const hasSelection = nbrSelected > 0;\n const allSelect = nbrSelected === activeGroupOptions.length;\n\n setAnySelected(hasSelection);\n setAllSelected(hasSelection && allSelect);\n }, [activeFilterValues, activeGroupOptions]);\n\n useEffect(() => {\n updateSelectAll();\n }, [activeFilterValues, updateSelectAll]);\n\n useEffect(() => setSearchStr(\"\"), [activeGroup]);\n\n const onChangeHandler = (values) => {\n const newFilterValues = filterOptions.map((option, i) =>\n activeGroup === i\n ? values.filter((v) => v.selected).map((v) => v.id)\n : [...(filterValues[i] || [])]\n );\n setFilterValues(newFilterValues);\n };\n\n const handleSelectAll = useCallback(() => {\n const newFilterValues = cloneDeep(filterValues);\n newFilterValues[activeGroup] = anySelected ? [] : activeGroupOptions;\n\n setFilterValues(newFilterValues);\n }, [activeGroup, activeGroupOptions, anySelected, filterValues, setFilterValues]);\n\n /**\n * Create selecteAll component.\n *\n * @returns {*}\n */\n const SelectAll = useCallback(() => {\n const { selectAll, multiSelectionConjunction } = labels;\n const nbrSelected = activeFilterValues?.length;\n\n const defaultLabel = (\n <HvTypography component=\"span\">\n {nbrSelected > 0 ? (\n <>\n <b>{nbrSelected}</b>\n {` ${multiSelectionConjunction} ${activeGroupOptions.length}`}\n </>\n ) : (\n <>\n <b>{selectAll}</b>\n {` (${activeGroupOptions.length})`}\n </>\n )}\n </HvTypography>\n );\n\n return (\n <div className={classes.selectAllContainer}>\n <HvCheckBox\n id={setId(id, \"select-all\")}\n label={defaultLabel}\n onChange={() => handleSelectAll()}\n classes={{ container: classes.selection }}\n className={classes.selectAll}\n indeterminate={anySelected && !allSelected}\n checked={allSelected}\n />\n </div>\n );\n }, [\n activeFilterValues?.length,\n activeGroupOptions.length,\n allSelected,\n anySelected,\n classes.selectAll,\n classes.selectAllContainer,\n classes.selection,\n handleSelectAll,\n id,\n labels,\n ]);\n\n return (\n <HvPanel id={setId(id, \"rightPanel\")} className={clsx(className, classes.root)}>\n {listValues.length > 0 ? (\n <>\n <HvInput\n id={setId(id, \"search\")}\n classes={{\n root: classes.search,\n }}\n type=\"search\"\n placeholder={labels.searchBoxPlaceholder}\n value={searchStr}\n onChange={(event, str) => setSearchStr(str)}\n />\n <SelectAll />\n <HvList\n key={activeGroup}\n id={setId(id, \"list\")}\n className={classes.list}\n values={listValues}\n multiSelect\n useSelector\n showSelectAll={false}\n onChange={onChangeHandler}\n selectable\n condensed\n hasTooltips\n />\n </>\n ) : (\n emptyElement\n )}\n </HvPanel>\n );\n};\n\nRightPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n labels: PropTypes.shape({\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n emptyElement: PropTypes.node,\n};\n\nexport default RightPanel;\n"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { StandardProps } from "@material-ui/core";
3
+ import { HvAtmosphereColorKeys, HvSemanticColorKeys } from "../../..";
3
4
 
4
5
  export type HvListViewCellClassKey = "root" | "semanticBar";
5
6
 
@@ -17,33 +18,7 @@ export interface HvListViewCellProps
17
18
  /**
18
19
  * The border color of the cell. Must be one of palette semantic colors.
19
20
  */
20
- semantic?:
21
- | "sema0"
22
- | "sema1"
23
- | "sema2"
24
- | "sema3"
25
- | "sema4"
26
- | "sema5"
27
- | "sema6"
28
- | "sema7"
29
- | "sema8"
30
- | "sema9"
31
- | "sema10"
32
- | "sema11"
33
- | "sema12"
34
- | "sema13"
35
- | "sema14"
36
- | "sema15"
37
- | "sema16"
38
- | "sema17"
39
- | "sema18"
40
- | "sema19"
41
- | "atmo1"
42
- | "atmo2"
43
- | "atmo3"
44
- | "atmo4"
45
- | "atmo5"
46
- | "atmo6";
21
+ semantic?: "sema0" | HvSemanticColorKeys | HvAtmosphereColorKeys;
47
22
  }
48
23
 
49
24
  export default function HvListViewCell(props: HvListViewCellProps): JSX.Element | null;
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { StandardProps } from "@material-ui/core";
3
3
  import { ListViewConfiguration } from "..";
4
- import { HvCheckBoxProps } from "../../..";
4
+ import { HvAtmosphereColorKeys, HvCheckBoxProps, HvSemanticColorKeys } from "../../..";
5
5
 
6
6
  export type HvListViewRowClassKey = "root";
7
7
 
@@ -29,32 +29,7 @@ export interface HvListViewRowProps
29
29
  /**
30
30
  * The border to the right of the checkbox
31
31
  */
32
- semantic?:
33
- | "sema1"
34
- | "sema2"
35
- | "sema3"
36
- | "sema4"
37
- | "sema5"
38
- | "sema6"
39
- | "sema7"
40
- | "sema8"
41
- | "sema9"
42
- | "sema10"
43
- | "sema11"
44
- | "sema12"
45
- | "sema13"
46
- | "sema14"
47
- | "sema15"
48
- | "sema16"
49
- | "sema17"
50
- | "sema18"
51
- | "sema19"
52
- | "atmo1"
53
- | "atmo2"
54
- | "atmo3"
55
- | "atmo4"
56
- | "atmo5"
57
- | "atmo6";
32
+ semantic?: HvSemanticColorKeys | HvAtmosphereColorKeys;
58
33
  }
59
34
 
60
35
  export default function HvListViewRow(props: HvListViewRowProps): JSX.Element | null;
@@ -1,6 +1,7 @@
1
1
  import * as React from "react";
2
- import { StandardProps, SnackbarProps, SnackbarContentProps } from "@material-ui/core";
2
+ import { StandardProps, SnackbarProps } from "@material-ui/core";
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?: SnackbarContentProps;
59
+ bannerContentProps?: Partial<HvBannerContentProps>;
59
60
  }
60
61
 
61
62
  export default function HvBanner(props: HvBannerProps): JSX.Element | null;
@@ -6,7 +6,7 @@ import PropTypes, { oneOfType } from "prop-types";
6
6
  import { Slide, Snackbar, withStyles } from "@material-ui/core";
7
7
  import capitalize from "lodash/capitalize";
8
8
  import { setId } from "../utils";
9
- import HvBannerContentWrapper from "./BannerWrapper";
9
+ import HvBannerContent from "./BannerContent";
10
10
  import styles from "./styles";
11
11
  /**
12
12
  * A Banner displays an important and succinct message. It can also provide actions for the user to address, or dismiss.
@@ -63,7 +63,7 @@ const HvBanner = props => {
63
63
  TransitionComponent: SlideTransition,
64
64
  open: open,
65
65
  transitionDuration: transitionDuration
66
- }, others), /*#__PURE__*/React.createElement(HvBannerContentWrapper, _extends({
66
+ }, others), /*#__PURE__*/React.createElement(HvBannerContent, _extends({
67
67
  id: setId(id, "content"),
68
68
  content: label,
69
69
  variant: variant,
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.js","names":["React","useCallback","PropTypes","oneOfType","Slide","Snackbar","withStyles","capitalize","setId","HvBannerContentWrapper","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, withStyles } from \"@material-ui/core\";\nimport capitalize from \"lodash/capitalize\";\nimport { setId } from \"../utils\";\nimport HvBannerContentWrapper from \"./BannerWrapper\";\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 <HvBannerContentWrapper\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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"}
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, withStyles } from \"@material-ui/core\";\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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"}
@@ -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/BannerWrapper/ActionContainer/ActionContainer.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes, { oneOfType } from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\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,mBAA3B;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,gBACE,oBAAC,QAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAEL,OAAO,CAACM,WAFrB;IAGE,QAAQ,EAAC,UAHX;IAIE,cAAW,OAJb;IAKE,OAAO,EAAEL,OALX;IAME,QAAQ,EAAE;EANZ,GAOMG,MAPN,gBASE,oBAAC,KAAD;IAAO,QAAQ,EAAC,IAAhB;IAAqB,SAAS,EAAEJ,OAAO,CAACO,aAAxC;IAAuD,KAAK,EAAC;EAA7D,EATF,CADF,EAYGL,MAAM,iBACL;IAAK,SAAS,EAAEF,OAAO,CAACQ;EAAxB,gBACE,oBAAC,cAAD;IACE,EAAE,EAAET,EADN;IAEE,QAAQ,EAAC,UAFX;IAGE,OAAO,EAAEG,MAHX;IAIE,eAAe,EAAEC;EAJnB,EADF,CAbJ,CADF;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"}
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 \"@material-ui/core\";\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,mBAA3B;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,gBACE,oBAAC,QAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAEL,OAAO,CAACM,WAFrB;IAGE,QAAQ,EAAC,UAHX;IAIE,cAAW,OAJb;IAKE,OAAO,EAAEL,OALX;IAME,QAAQ,EAAE;EANZ,GAOMG,MAPN,gBASE,oBAAC,KAAD;IAAO,QAAQ,EAAC,IAAhB;IAAqB,SAAS,EAAEJ,OAAO,CAACO,aAAxC;IAAuD,KAAK,EAAC;EAA7D,EATF,CADF,EAYGL,MAAM,iBACL;IAAK,SAAS,EAAEF,OAAO,CAACQ;EAAxB,gBACE,oBAAC,cAAD;IACE,EAAE,EAAET,EADN;IAEE,QAAQ,EAAC,UAFX;IAGE,OAAO,EAAEG,MAHX;IAIE,eAAe,EAAEC;EAJnB,EADF,CAbJ,CADF;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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/Banner/BannerWrapper/ActionContainer/index.js"],"sourcesContent":["export { default } from \"./ActionContainer\";\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,mBAAxB"}
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"}
@@ -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/BannerWrapper/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"}
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"}