@hitachivantara/uikit-react-lab 3.47.3 → 3.49.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 (109) hide show
  1. package/dist/Controls/Controls.d.ts +57 -0
  2. package/dist/Controls/Controls.js +197 -0
  3. package/dist/Controls/Controls.js.map +1 -0
  4. package/dist/Controls/LeftControl/LeftControl.d.ts +32 -0
  5. package/dist/Controls/LeftControl/LeftControl.js +130 -0
  6. package/dist/Controls/LeftControl/LeftControl.js.map +1 -0
  7. package/dist/Controls/LeftControl/index.d.ts +2 -0
  8. package/dist/Controls/LeftControl/index.js +16 -0
  9. package/dist/Controls/LeftControl/index.js.map +1 -0
  10. package/dist/Controls/LeftControl/styles.js +19 -0
  11. package/dist/Controls/LeftControl/styles.js.map +1 -0
  12. package/dist/Controls/RightControl/RightControl.d.ts +43 -0
  13. package/dist/Controls/RightControl/RightControl.js +167 -0
  14. package/dist/Controls/RightControl/RightControl.js.map +1 -0
  15. package/dist/Controls/RightControl/index.d.ts +2 -0
  16. package/dist/Controls/RightControl/index.js +16 -0
  17. package/dist/Controls/RightControl/index.js.map +1 -0
  18. package/dist/Controls/RightControl/styles.js +22 -0
  19. package/dist/Controls/RightControl/styles.js.map +1 -0
  20. package/dist/Controls/context/ControlsContext.js +21 -0
  21. package/dist/Controls/context/ControlsContext.js.map +1 -0
  22. package/dist/Controls/index.d.ts +3 -0
  23. package/dist/Controls/index.js +32 -0
  24. package/dist/Controls/index.js.map +1 -0
  25. package/dist/Controls/styles.js +30 -0
  26. package/dist/Controls/styles.js.map +1 -0
  27. package/dist/QueryBuilder/Rule/Rule.js +0 -2
  28. package/dist/QueryBuilder/Rule/Rule.js.map +1 -1
  29. package/dist/QueryBuilder/RuleGroup/RuleGroup.js +6 -2
  30. package/dist/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  31. package/dist/QueryBuilder/{types.ts → types.d.ts} +1 -1
  32. package/dist/Table/TableBody/TableBody.js +1 -3
  33. package/dist/Table/TableBody/TableBody.js.map +1 -1
  34. package/dist/index.d.ts +3 -0
  35. package/dist/index.js +21 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/legacy/Controls/Controls.d.ts +57 -0
  38. package/dist/legacy/Controls/Controls.js +174 -0
  39. package/dist/legacy/Controls/Controls.js.map +1 -0
  40. package/dist/legacy/Controls/LeftControl/LeftControl.d.ts +32 -0
  41. package/dist/legacy/Controls/LeftControl/LeftControl.js +91 -0
  42. package/dist/legacy/Controls/LeftControl/LeftControl.js.map +1 -0
  43. package/dist/legacy/Controls/LeftControl/index.d.ts +2 -0
  44. package/dist/legacy/Controls/LeftControl/index.js +2 -0
  45. package/dist/legacy/Controls/LeftControl/index.js.map +1 -0
  46. package/dist/legacy/Controls/LeftControl/styles.js +11 -0
  47. package/dist/legacy/Controls/LeftControl/styles.js.map +1 -0
  48. package/dist/legacy/Controls/RightControl/RightControl.d.ts +43 -0
  49. package/dist/legacy/Controls/RightControl/RightControl.js +125 -0
  50. package/dist/legacy/Controls/RightControl/RightControl.js.map +1 -0
  51. package/dist/legacy/Controls/RightControl/index.d.ts +2 -0
  52. package/dist/legacy/Controls/RightControl/index.js +2 -0
  53. package/dist/legacy/Controls/RightControl/index.js.map +1 -0
  54. package/dist/legacy/Controls/RightControl/styles.js +14 -0
  55. package/dist/legacy/Controls/RightControl/styles.js.map +1 -0
  56. package/dist/legacy/Controls/context/ControlsContext.js +6 -0
  57. package/dist/legacy/Controls/context/ControlsContext.js.map +1 -0
  58. package/dist/legacy/Controls/index.d.ts +3 -0
  59. package/dist/legacy/Controls/index.js +4 -0
  60. package/dist/legacy/Controls/index.js.map +1 -0
  61. package/dist/legacy/Controls/styles.js +22 -0
  62. package/dist/legacy/Controls/styles.js.map +1 -0
  63. package/dist/legacy/QueryBuilder/Rule/Rule.js +0 -2
  64. package/dist/legacy/QueryBuilder/Rule/Rule.js.map +1 -1
  65. package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js +6 -2
  66. package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  67. package/dist/legacy/QueryBuilder/{types.ts → types.d.ts} +1 -1
  68. package/dist/legacy/Table/TableBody/TableBody.js +2 -3
  69. package/dist/legacy/Table/TableBody/TableBody.js.map +1 -1
  70. package/dist/legacy/index.d.ts +3 -0
  71. package/dist/legacy/index.js +2 -0
  72. package/dist/legacy/index.js.map +1 -1
  73. package/dist/modern/Controls/Controls.d.ts +57 -0
  74. package/dist/modern/Controls/Controls.js +164 -0
  75. package/dist/modern/Controls/Controls.js.map +1 -0
  76. package/dist/modern/Controls/LeftControl/LeftControl.d.ts +32 -0
  77. package/dist/modern/Controls/LeftControl/LeftControl.js +90 -0
  78. package/dist/modern/Controls/LeftControl/LeftControl.js.map +1 -0
  79. package/dist/modern/Controls/LeftControl/index.d.ts +2 -0
  80. package/dist/modern/Controls/LeftControl/index.js +2 -0
  81. package/dist/modern/Controls/LeftControl/index.js.map +1 -0
  82. package/dist/modern/Controls/LeftControl/styles.js +9 -0
  83. package/dist/modern/Controls/LeftControl/styles.js.map +1 -0
  84. package/dist/modern/Controls/RightControl/RightControl.d.ts +43 -0
  85. package/dist/modern/Controls/RightControl/RightControl.js +109 -0
  86. package/dist/modern/Controls/RightControl/RightControl.js.map +1 -0
  87. package/dist/modern/Controls/RightControl/index.d.ts +2 -0
  88. package/dist/modern/Controls/RightControl/index.js +2 -0
  89. package/dist/modern/Controls/RightControl/index.js.map +1 -0
  90. package/dist/modern/Controls/RightControl/styles.js +12 -0
  91. package/dist/modern/Controls/RightControl/styles.js.map +1 -0
  92. package/dist/modern/Controls/context/ControlsContext.js +6 -0
  93. package/dist/modern/Controls/context/ControlsContext.js.map +1 -0
  94. package/dist/modern/Controls/index.d.ts +3 -0
  95. package/dist/modern/Controls/index.js +4 -0
  96. package/dist/modern/Controls/index.js.map +1 -0
  97. package/dist/modern/Controls/styles.js +20 -0
  98. package/dist/modern/Controls/styles.js.map +1 -0
  99. package/dist/modern/QueryBuilder/Rule/Rule.js +0 -2
  100. package/dist/modern/QueryBuilder/Rule/Rule.js.map +1 -1
  101. package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js +6 -2
  102. package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  103. package/dist/modern/QueryBuilder/{types.ts → types.d.ts} +1 -1
  104. package/dist/modern/Table/TableBody/TableBody.js +2 -3
  105. package/dist/modern/Table/TableBody/TableBody.js.map +1 -1
  106. package/dist/modern/index.d.ts +3 -0
  107. package/dist/modern/index.js +2 -0
  108. package/dist/modern/index.js.map +1 -1
  109. package/package.json +22 -28
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","HvLeftControl","HvRightControl"],"sources":["../../../src/Controls/index.js"],"sourcesContent":["export { default } from \"./Controls\";\nexport { default as HvLeftControl } from \"./LeftControl\";\nexport { default as HvRightControl } from \"./RightControl\";\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,YAAxB;AACA,SAASA,OAAO,IAAIC,aAApB,QAAyC,eAAzC;AACA,SAASD,OAAO,IAAIE,cAApB,QAA0C,gBAA1C"}
@@ -0,0 +1,22 @@
1
+ var styles = function styles() {
2
+ return {
3
+ root: {
4
+ display: "inline-flex",
5
+ width: "100%",
6
+ justifyContent: "space-between"
7
+ },
8
+ section: {
9
+ display: "inline-flex",
10
+ alignItems: "flex-end",
11
+ gap: 10
12
+ },
13
+ leftSection: {},
14
+ rightSection: {},
15
+ sortInput: {
16
+ minWidth: 200
17
+ }
18
+ };
19
+ };
20
+
21
+ export default styles;
22
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","names":["styles","root","display","width","justifyContent","section","alignItems","gap","leftSection","rightSection","sortInput","minWidth"],"sources":["../../../src/Controls/styles.js"],"sourcesContent":["const styles = () => ({\n root: {\n display: \"inline-flex\",\n width: \"100%\",\n justifyContent: \"space-between\",\n },\n section: {\n display: \"inline-flex\",\n alignItems: \"flex-end\",\n gap: 10,\n },\n leftSection: {},\n rightSection: {},\n sortInput: {\n minWidth: 200,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS;EAAA,OAAO;IACpBC,IAAI,EAAE;MACJC,OAAO,EAAE,aADL;MAEJC,KAAK,EAAE,MAFH;MAGJC,cAAc,EAAE;IAHZ,CADc;IAMpBC,OAAO,EAAE;MACPH,OAAO,EAAE,aADF;MAEPI,UAAU,EAAE,UAFL;MAGPC,GAAG,EAAE;IAHE,CANW;IAWpBC,WAAW,EAAE,EAXO;IAYpBC,YAAY,EAAE,EAZM;IAapBC,SAAS,EAAE;MACTC,QAAQ,EAAE;IADD;EAbS,CAAP;AAAA,CAAf;;AAkBA,eAAeX,MAAf"}
@@ -65,7 +65,6 @@ var Rule = function Rule(_ref) {
65
65
  xs: 2,
66
66
  lg: 3
67
67
  }, /*#__PURE__*/React.createElement(Operator, {
68
- key: id + combinator + attribute + operator,
69
68
  id: id,
70
69
  combinator: combinator,
71
70
  attribute: attribute,
@@ -74,7 +73,6 @@ var Rule = function Rule(_ref) {
74
73
  item: true,
75
74
  xs: true
76
75
  }, shouldShowValueInput && /*#__PURE__*/React.createElement(Value, {
77
- key: id + combinator + attribute + operator,
78
76
  attribute: attribute,
79
77
  id: id,
80
78
  operator: operator,
@@ -1 +1 @@
1
- {"version":3,"file":"Rule.js","names":["React","useMemo","useContext","PropTypes","HvGrid","HvButton","withTooltip","Delete","Context","Attribute","Operator","Value","useStyles","Rule","id","combinator","attribute","operator","value","disabled","isInvalid","classes","context","askAction","attributes","operators","labels","availableOperators","attributeSpec","typeOperators","type","reduce","count","item","combinators","includes","shouldShowValueInput","DeleteIcon","rule","delete","tooltip","root","actionsContainer","ariaLabel","actions","dialog","propTypes","number","string","any","bool"],"sources":["../../../../src/QueryBuilder/Rule/Rule.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { HvGrid, HvButton, withTooltip } from \"@hitachivantara/uikit-react-core\";\nimport { Delete } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Attribute from \"./Attribute\";\nimport Operator from \"./Operator\";\nimport Value from \"./Value\";\nimport useStyles from \"./styles\";\n\nconst Rule = ({ id, combinator, attribute, operator, value, disabled, isInvalid }) => {\n const classes = useStyles();\n const context = useContext(Context);\n\n const { askAction, attributes, operators, labels } = context;\n\n const availableOperators = useMemo(() => {\n const attributeSpec = attribute != null ? attributes[attribute] : null;\n if (attributeSpec != null) {\n const typeOperators = operators[attributeSpec.type];\n if (typeOperators != null) {\n return typeOperators.reduce(\n (count, item) => count + (item.combinators.includes(combinator) ? 1 : 0),\n 0\n );\n }\n }\n\n return -1;\n }, [attribute, attributes, combinator, operators]);\n\n const shouldShowValueInput = operator !== \"Empty\" && operator !== \"IsNotEmpty\";\n\n const DeleteIcon = withTooltip(() => <Delete />, labels.rule.delete.tooltip, \"bottom\");\n\n return (\n <HvGrid container className={classes.root} spacing={0} wrap=\"nowrap\">\n <HvGrid item xs={2} lg={3}>\n <Attribute attribute={attribute} id={id} disabled={disabled} isInvalid={isInvalid} />\n </HvGrid>\n {attribute != null && availableOperators > 0 && (\n <HvGrid item xs={2} lg={3}>\n <Operator\n key={id + combinator + attribute + operator}\n id={id}\n combinator={combinator}\n attribute={attribute}\n operator={operator}\n />\n </HvGrid>\n )}\n {attribute != null && (operator != null || availableOperators === 0) && (\n <HvGrid item xs>\n {shouldShowValueInput && (\n <Value\n key={id + combinator + attribute + operator}\n attribute={attribute}\n id={id}\n operator={operator}\n value={value}\n />\n )}\n </HvGrid>\n )}\n <HvGrid item className={classes.actionsContainer}>\n <HvButton\n icon\n aria-label={labels.rule.delete.ariaLabel}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog: labels.rule.delete,\n });\n }}\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n );\n};\n\nRule.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default Rule;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rule.js","names":["React","useMemo","useContext","PropTypes","HvGrid","HvButton","withTooltip","Delete","Context","Attribute","Operator","Value","useStyles","Rule","id","combinator","attribute","operator","value","disabled","isInvalid","classes","context","askAction","attributes","operators","labels","availableOperators","attributeSpec","typeOperators","type","reduce","count","item","combinators","includes","shouldShowValueInput","DeleteIcon","rule","delete","tooltip","root","actionsContainer","ariaLabel","actions","dialog","propTypes","number","string","any","bool"],"sources":["../../../../src/QueryBuilder/Rule/Rule.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { HvGrid, HvButton, withTooltip } from \"@hitachivantara/uikit-react-core\";\nimport { Delete } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Attribute from \"./Attribute\";\nimport Operator from \"./Operator\";\nimport Value from \"./Value\";\nimport useStyles from \"./styles\";\n\nconst Rule = ({ id, combinator, attribute, operator, value, disabled, isInvalid }) => {\n const classes = useStyles();\n const context = useContext(Context);\n\n const { askAction, attributes, operators, labels } = context;\n\n const availableOperators = useMemo(() => {\n const attributeSpec = attribute != null ? attributes[attribute] : null;\n if (attributeSpec != null) {\n const typeOperators = operators[attributeSpec.type];\n if (typeOperators != null) {\n return typeOperators.reduce(\n (count, item) => count + (item.combinators.includes(combinator) ? 1 : 0),\n 0\n );\n }\n }\n\n return -1;\n }, [attribute, attributes, combinator, operators]);\n\n const shouldShowValueInput = operator !== \"Empty\" && operator !== \"IsNotEmpty\";\n\n const DeleteIcon = withTooltip(() => <Delete />, labels.rule.delete.tooltip, \"bottom\");\n\n return (\n <HvGrid container className={classes.root} spacing={0} wrap=\"nowrap\">\n <HvGrid item xs={2} lg={3}>\n <Attribute attribute={attribute} id={id} disabled={disabled} isInvalid={isInvalid} />\n </HvGrid>\n {attribute != null && availableOperators > 0 && (\n <HvGrid item xs={2} lg={3}>\n <Operator id={id} combinator={combinator} attribute={attribute} operator={operator} />\n </HvGrid>\n )}\n {attribute != null && (operator != null || availableOperators === 0) && (\n <HvGrid item xs>\n {shouldShowValueInput && (\n <Value attribute={attribute} id={id} operator={operator} value={value} />\n )}\n </HvGrid>\n )}\n <HvGrid item className={classes.actionsContainer}>\n <HvButton\n icon\n aria-label={labels.rule.delete.ariaLabel}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog: labels.rule.delete,\n });\n }}\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n );\n};\n\nRule.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default Rule;\n"],"mappings":"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"}
@@ -96,9 +96,13 @@ var RuleGroup = function RuleGroup(_ref) {
96
96
  }, /*#__PURE__*/React.createElement(DeleteIcon, null)))), (rules === null || rules === void 0 ? void 0 : rules.length) > 0 && /*#__PURE__*/React.createElement("div", {
97
97
  className: clsx(classes.rulesContainer, level > 0 && classes.subRulesContainer, level === 0 && "topRulesContainer")
98
98
  }, rules.map(function (rule, index) {
99
+ var _rule$id2;
100
+
99
101
  if ("combinator" in rule) {
102
+ var _rule$id;
103
+
100
104
  return /*#__PURE__*/React.createElement(RuleGroup, _extends({
101
- key: rule.id || Math.random(),
105
+ key: (_rule$id = rule.id) !== null && _rule$id !== void 0 ? _rule$id : index,
102
106
  level: level + 1
103
107
  }, rule, {
104
108
  id: rule.id,
@@ -116,7 +120,7 @@ var RuleGroup = function RuleGroup(_ref) {
116
120
  return false;
117
121
  });
118
122
  return /*#__PURE__*/React.createElement(Rule, _extends({
119
- key: rule.id || Math.random()
123
+ key: (_rule$id2 = rule.id) !== null && _rule$id2 !== void 0 ? _rule$id2 : index
120
124
  }, rule, {
121
125
  isInvalid: isInvalid,
122
126
  id: rule.id,
@@ -1 +1 @@
1
- {"version":3,"file":"RuleGroup.js","names":["React","useCallback","useContext","clsx","withStyles","PropTypes","HvGrid","HvMultiButton","HvButton","HvEmptyState","HvTypography","withTooltip","Add","Delete","Info","Context","Rule","styles","RuleGroup","level","id","combinator","rules","classes","context","dispatchAction","askAction","maxDepth","combinators","labels","normalizedMaxDepth","actionButtons","type","query","addRule","label","group","addGroup","DeleteIcon","delete","tooltip","onClickCombinator","item","operand","root","topGroup","subGroup","topCombinator","map","combinatorButton","removeButton","topRemoveButton","actions","dialog","ariaLabel","length","rulesContainer","subRulesContainer","rule","index","Math","random","isInvalid","some","r","i","attribute","empty","title","cursor","textDecoration","createCondition","spacer","createGroup","actionButtonContainer","topActionButtonContainer","propTypes","shape","string","number","array","name"],"sources":["../../../../src/QueryBuilder/RuleGroup/RuleGroup.js"],"sourcesContent":["import React, { useCallback, useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport PropTypes from \"prop-types\";\nimport {\n HvGrid,\n HvMultiButton,\n HvButton,\n HvEmptyState,\n HvTypography,\n withTooltip,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Add, Delete, Info } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Rule from \"../Rule\";\nimport styles from \"./styles\";\n\nconst RuleGroup = ({ level = 0, id, combinator = \"and\", rules = [], classes }) => {\n const context = useContext(Context);\n\n const { dispatchAction, askAction, maxDepth, combinators, labels } = context;\n const normalizedMaxDepth = maxDepth - 1;\n\n const actionButtons = (\n <>\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addRule?.label != null\n ? labels.query?.addRule?.label\n : labels.group.addRule.label}\n </HvButton>\n {level <= normalizedMaxDepth && (\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addGroup?.label != null\n ? labels.query?.addGroup?.label\n : labels.group.addGroup.label}\n </HvButton>\n )}\n </>\n );\n\n const DeleteIcon = withTooltip(\n () => <Delete />,\n level === 0 && labels.query?.delete?.tooltip\n ? labels.query?.delete?.tooltip\n : labels.group.delete.tooltip,\n \"top\"\n );\n\n const onClickCombinator = useCallback(\n (item) => {\n dispatchAction({\n type: \"set-combinator\",\n id,\n combinator: item.operand,\n });\n },\n [dispatchAction, id]\n );\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.topGroup]: level === 0,\n [classes.subGroup]: level !== 0,\n })}\n >\n <HvGrid container>\n <HvGrid item>\n <HvMultiButton className={clsx(classes.combinator, classes.topCombinator)}>\n {combinators.map((item) => (\n <HvButton\n key={item.operand}\n className={classes.combinatorButton}\n selected={item.operand === combinator}\n onClick={() => item.operand && onClickCombinator(item)}\n >\n {item.label}\n </HvButton>\n ))}\n </HvMultiButton>\n </HvGrid>\n <HvGrid item>\n <HvButton\n icon\n className={clsx(classes.removeButton, classes.topRemoveButton)}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog:\n level === 0 && labels.query?.delete != null\n ? labels.query.delete\n : labels.group.delete,\n });\n }}\n aria-label={\n level === 0 && labels.query?.delete?.ariaLabel\n ? labels.query?.delete?.ariaLabel\n : labels.group.delete.ariaLabel\n }\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n {rules?.length > 0 && (\n <div\n className={clsx(classes.rulesContainer, {\n [classes.subRulesContainer]: level > 0,\n topRulesContainer: level === 0,\n })}\n >\n {rules.map((rule, index) => {\n if (\"combinator\" in rule) {\n return (\n <RuleGroup\n key={rule.id || Math.random()}\n level={level + 1}\n {...rule}\n id={rule.id}\n classes={classes}\n />\n );\n }\n\n const isInvalid =\n combinator === \"and\" &&\n rules.some((r, i) => {\n if (\"attribute\" in r) {\n if (r.attribute === rule.attribute && r.id !== rule.id && i < index) {\n return true;\n }\n }\n return false;\n });\n\n return (\n <Rule\n key={rule.id || Math.random()}\n {...rule}\n isInvalid={isInvalid}\n id={rule.id}\n combinator={combinator}\n />\n );\n })}\n </div>\n )}\n {rules?.length === 0 && (\n <HvEmptyState\n title={labels.empty?.title}\n message={\n <>\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createCondition}`}\n </HvTypography>\n {level <= normalizedMaxDepth && (\n <>\n {`${labels.empty?.spacer}`}\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createGroup}`}\n </HvTypography>\n </>\n )}\n </>\n }\n icon={<Info />}\n />\n )}\n <HvGrid container>\n <HvGrid\n item\n className={clsx(classes.actionButtonContainer, classes.topActionButtonContainer)}\n >\n {actionButtons}\n </HvGrid>\n </HvGrid>\n </div>\n );\n};\n\nRuleGroup.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\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 top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n id: PropTypes.number,\n level: PropTypes.number,\n combinator: PropTypes.string,\n rules: PropTypes.array,\n};\n\nexport default withStyles(styles, { name: \"RuleGroup\" })(RuleGroup);\n"],"mappings":"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"}
1
+ {"version":3,"file":"RuleGroup.js","names":["React","useCallback","useContext","clsx","withStyles","PropTypes","HvGrid","HvMultiButton","HvButton","HvEmptyState","HvTypography","withTooltip","Add","Delete","Info","Context","Rule","styles","RuleGroup","level","id","combinator","rules","classes","context","dispatchAction","askAction","maxDepth","combinators","labels","normalizedMaxDepth","actionButtons","type","query","addRule","label","group","addGroup","DeleteIcon","delete","tooltip","onClickCombinator","item","operand","root","topGroup","subGroup","topCombinator","map","combinatorButton","removeButton","topRemoveButton","actions","dialog","ariaLabel","length","rulesContainer","subRulesContainer","rule","index","isInvalid","some","r","i","attribute","empty","title","cursor","textDecoration","createCondition","spacer","createGroup","actionButtonContainer","topActionButtonContainer","propTypes","shape","string","number","array","name"],"sources":["../../../../src/QueryBuilder/RuleGroup/RuleGroup.js"],"sourcesContent":["import React, { useCallback, useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport PropTypes from \"prop-types\";\nimport {\n HvGrid,\n HvMultiButton,\n HvButton,\n HvEmptyState,\n HvTypography,\n withTooltip,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Add, Delete, Info } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Rule from \"../Rule\";\nimport styles from \"./styles\";\n\nconst RuleGroup = ({ level = 0, id, combinator = \"and\", rules = [], classes }) => {\n const context = useContext(Context);\n\n const { dispatchAction, askAction, maxDepth, combinators, labels } = context;\n const normalizedMaxDepth = maxDepth - 1;\n\n const actionButtons = (\n <>\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addRule?.label != null\n ? labels.query?.addRule?.label\n : labels.group.addRule.label}\n </HvButton>\n {level <= normalizedMaxDepth && (\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addGroup?.label != null\n ? labels.query?.addGroup?.label\n : labels.group.addGroup.label}\n </HvButton>\n )}\n </>\n );\n\n const DeleteIcon = withTooltip(\n () => <Delete />,\n level === 0 && labels.query?.delete?.tooltip\n ? labels.query?.delete?.tooltip\n : labels.group.delete.tooltip,\n \"top\"\n );\n\n const onClickCombinator = useCallback(\n (item) => {\n dispatchAction({\n type: \"set-combinator\",\n id,\n combinator: item.operand,\n });\n },\n [dispatchAction, id]\n );\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.topGroup]: level === 0,\n [classes.subGroup]: level !== 0,\n })}\n >\n <HvGrid container>\n <HvGrid item>\n <HvMultiButton className={clsx(classes.combinator, classes.topCombinator)}>\n {combinators.map((item) => (\n <HvButton\n key={item.operand}\n className={classes.combinatorButton}\n selected={item.operand === combinator}\n onClick={() => item.operand && onClickCombinator(item)}\n >\n {item.label}\n </HvButton>\n ))}\n </HvMultiButton>\n </HvGrid>\n <HvGrid item>\n <HvButton\n icon\n className={clsx(classes.removeButton, classes.topRemoveButton)}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog:\n level === 0 && labels.query?.delete != null\n ? labels.query.delete\n : labels.group.delete,\n });\n }}\n aria-label={\n level === 0 && labels.query?.delete?.ariaLabel\n ? labels.query?.delete?.ariaLabel\n : labels.group.delete.ariaLabel\n }\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n {rules?.length > 0 && (\n <div\n className={clsx(classes.rulesContainer, {\n [classes.subRulesContainer]: level > 0,\n topRulesContainer: level === 0,\n })}\n >\n {rules.map((rule, index) => {\n if (\"combinator\" in rule) {\n return (\n <RuleGroup\n key={rule.id ?? index}\n level={level + 1}\n {...rule}\n id={rule.id}\n classes={classes}\n />\n );\n }\n\n const isInvalid =\n combinator === \"and\" &&\n rules.some((r, i) => {\n if (\"attribute\" in r) {\n if (r.attribute === rule.attribute && r.id !== rule.id && i < index) {\n return true;\n }\n }\n return false;\n });\n\n return (\n <Rule\n key={rule.id ?? index}\n {...rule}\n isInvalid={isInvalid}\n id={rule.id}\n combinator={combinator}\n />\n );\n })}\n </div>\n )}\n {rules?.length === 0 && (\n <HvEmptyState\n title={labels.empty?.title}\n message={\n <>\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createCondition}`}\n </HvTypography>\n {level <= normalizedMaxDepth && (\n <>\n {`${labels.empty?.spacer}`}\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createGroup}`}\n </HvTypography>\n </>\n )}\n </>\n }\n icon={<Info />}\n />\n )}\n <HvGrid container>\n <HvGrid\n item\n className={clsx(classes.actionButtonContainer, classes.topActionButtonContainer)}\n >\n {actionButtons}\n </HvGrid>\n </HvGrid>\n </div>\n );\n};\n\nRuleGroup.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\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 top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n id: PropTypes.number,\n level: PropTypes.number,\n combinator: PropTypes.string,\n rules: PropTypes.array,\n};\n\nexport default withStyles(styles, { name: \"RuleGroup\" })(RuleGroup);\n"],"mappings":";;;;;;AAAA,OAAOA,KAAP,IAAgBC,WAAhB,EAA6BC,UAA7B,QAA+C,OAA/C;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,UAAT,QAA2B,mBAA3B;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SACEC,MADF,EAEEC,aAFF,EAGEC,QAHF,EAIEC,YAJF,EAKEC,YALF,EAMEC,WANF,QAOO,kCAPP;AAQA,SAASC,GAAT,EAAcC,MAAd,EAAsBC,IAAtB,QAAkC,mCAAlC;AAEA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,IAAP,MAAiB,SAAjB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,IAAMC,SAAS,GAAG,SAAZA,SAAY,OAAgE;EAAA;;EAAA,sBAA7DC,KAA6D;EAAA,IAA7DA,KAA6D,2BAArD,CAAqD;EAAA,IAAlDC,EAAkD,QAAlDA,EAAkD;EAAA,2BAA9CC,UAA8C;EAAA,IAA9CA,UAA8C,gCAAjC,KAAiC;EAAA,sBAA1BC,KAA0B;EAAA,IAA1BA,KAA0B,2BAAlB,EAAkB;EAAA,IAAdC,OAAc,QAAdA,OAAc;EAChF,IAAMC,OAAO,GAAGtB,UAAU,CAACa,OAAD,CAA1B;EAEA,IAAQU,cAAR,GAAqED,OAArE,CAAQC,cAAR;EAAA,IAAwBC,SAAxB,GAAqEF,OAArE,CAAwBE,SAAxB;EAAA,IAAmCC,QAAnC,GAAqEH,OAArE,CAAmCG,QAAnC;EAAA,IAA6CC,WAA7C,GAAqEJ,OAArE,CAA6CI,WAA7C;EAAA,IAA0DC,MAA1D,GAAqEL,OAArE,CAA0DK,MAA1D;EACA,IAAMC,kBAAkB,GAAGH,QAAQ,GAAG,CAAtC;EAEA,IAAMI,aAAa,gBACjB,uDACE,oBAAC,QAAD;IACE,QAAQ,EAAC,WADX;IAEE,OAAO,EAAE,mBAAM;MACbN,cAAc,CAAC;QAAEO,IAAI,EAAE,UAAR;QAAoBZ,EAAE,EAAFA;MAApB,CAAD,CAAd;IACD;EAJH,gCAME,oBAAC,GAAD,OANF,GAOGD,KAAK,KAAK,CAAV,IAAe,kBAAAU,MAAM,CAACI,KAAP,yFAAcC,OAAd,gFAAuBC,KAAvB,KAAgC,IAA/C,qBACGN,MAAM,CAACI,KADV,4EACG,eAAcC,OADjB,0DACG,sBAAuBC,KAD1B,GAEGN,MAAM,CAACO,KAAP,CAAaF,OAAb,CAAqBC,KAT3B,CADF,EAYGhB,KAAK,IAAIW,kBAAT,iBACC,oBAAC,QAAD;IACE,QAAQ,EAAC,WADX;IAEE,OAAO,EAAE,mBAAM;MACbL,cAAc,CAAC;QAAEO,IAAI,EAAE,WAAR;QAAqBZ,EAAE,EAAFA;MAArB,CAAD,CAAd;IACD;EAJH,kCAME,oBAAC,GAAD,OANF,GAOGD,KAAK,KAAK,CAAV,IAAe,mBAAAU,MAAM,CAACI,KAAP,2FAAcI,QAAd,gFAAwBF,KAAxB,KAAiC,IAAhD,qBACGN,MAAM,CAACI,KADV,4EACG,eAAcI,QADjB,0DACG,sBAAwBF,KAD3B,GAEGN,MAAM,CAACO,KAAP,CAAaC,QAAb,CAAsBF,KAT5B,CAbJ,CADF;EA6BA,IAAMG,UAAU,GAAG3B,WAAW,CAC5B;IAAA,0CAAM,oBAAC,MAAD,OAAN;EAAA,CAD4B,EAE5BQ,KAAK,KAAK,CAAV,sBAAeU,MAAM,CAACI,KAAtB,oEAAe,eAAcM,MAA7B,kDAAe,sBAAsBC,OAArC,qBACIX,MAAM,CAACI,KADX,4EACI,eAAcM,MADlB,0DACI,sBAAsBC,OAD1B,GAEIX,MAAM,CAACO,KAAP,CAAaG,MAAb,CAAoBC,OAJI,EAK5B,KAL4B,CAA9B;EAQA,IAAMC,iBAAiB,GAAGxC,WAAW,CACnC,UAACyC,IAAD,EAAU;IACRjB,cAAc,CAAC;MACbO,IAAI,EAAE,gBADO;MAEbZ,EAAE,EAAFA,EAFa;MAGbC,UAAU,EAAEqB,IAAI,CAACC;IAHJ,CAAD,CAAd;EAKD,CAPkC,EAQnC,CAAClB,cAAD,EAAiBL,EAAjB,CARmC,CAArC;EAWA,oBACE;IACE,SAAS,EAAEjB,IAAI,CAACoB,OAAO,CAACqB,IAAT,EACOzB,KAAK,KAAK,CADjB,GACZI,OAAO,CAACsB,QADI,GAEZtB,OAAO,CAACuB,QAFI;EADjB,gBAME,oBAAC,MAAD;IAAQ,SAAS;EAAjB,gBACE,oBAAC,MAAD;IAAQ,IAAI;EAAZ,gBACE,oBAAC,aAAD;IAAe,SAAS,EAAE3C,IAAI,CAACoB,OAAO,CAACF,UAAT,EAAqBE,OAAO,CAACwB,aAA7B;EAA9B,GACGnB,WAAW,CAACoB,GAAZ,CAAgB,UAACN,IAAD;IAAA,oBACf,oBAAC,QAAD;MACE,GAAG,EAAEA,IAAI,CAACC,OADZ;MAEE,SAAS,EAAEpB,OAAO,CAAC0B,gBAFrB;MAGE,QAAQ,EAAEP,IAAI,CAACC,OAAL,KAAiBtB,UAH7B;MAIE,OAAO,EAAE;QAAA,OAAMqB,IAAI,CAACC,OAAL,IAAgBF,iBAAiB,CAACC,IAAD,CAAvC;MAAA;IAJX,GAMGA,IAAI,CAACP,KANR,CADe;EAAA,CAAhB,CADH,CADF,CADF,eAeE,oBAAC,MAAD;IAAQ,IAAI;EAAZ,gBACE,oBAAC,QAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAEhC,IAAI,CAACoB,OAAO,CAAC2B,YAAT,EAAuB3B,OAAO,CAAC4B,eAA/B,CAFjB;IAGE,OAAO,EAAE,mBAAM;MAAA;;MACbzB,SAAS,CAAC;QACR0B,OAAO,EAAE,CAAC;UAAEpB,IAAI,EAAE,aAAR;UAAuBZ,EAAE,EAAFA;QAAvB,CAAD,CADD;QAERiC,MAAM,EACJlC,KAAK,KAAK,CAAV,IAAe,mBAAAU,MAAM,CAACI,KAAP,kEAAcM,MAAd,KAAwB,IAAvC,GACIV,MAAM,CAACI,KAAP,CAAaM,MADjB,GAEIV,MAAM,CAACO,KAAP,CAAaG;MALX,CAAD,CAAT;IAOD,CAXH;IAYE,cACEpB,KAAK,KAAK,CAAV,sBAAeU,MAAM,CAACI,KAAtB,oEAAe,eAAcM,MAA7B,kDAAe,sBAAsBe,SAArC,qBACIzB,MAAM,CAACI,KADX,4EACI,eAAcM,MADlB,0DACI,sBAAsBe,SAD1B,GAEIzB,MAAM,CAACO,KAAP,CAAaG,MAAb,CAAoBe;EAf5B,gBAkBE,oBAAC,UAAD,OAlBF,CADF,CAfF,CANF,EA4CG,CAAAhC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEiC,MAAP,IAAgB,CAAhB,iBACC;IACE,SAAS,EAAEpD,IAAI,CAACoB,OAAO,CAACiC,cAAT,EACgBrC,KAAK,GAAG,CADxB,IACZI,OAAO,CAACkC,iBADI,EAEMtC,KAAK,KAAK,CAFhB;EADjB,GAMGG,KAAK,CAAC0B,GAAN,CAAU,UAACU,IAAD,EAAOC,KAAP,EAAiB;IAAA;;IAC1B,IAAI,gBAAgBD,IAApB,EAA0B;MAAA;;MACxB,oBACE,oBAAC,SAAD;QACE,GAAG,cAAEA,IAAI,CAACtC,EAAP,+CAAauC,KADlB;QAEE,KAAK,EAAExC,KAAK,GAAG;MAFjB,GAGMuC,IAHN;QAIE,EAAE,EAAEA,IAAI,CAACtC,EAJX;QAKE,OAAO,EAAEG;MALX,GADF;IASD;;IAED,IAAMqC,SAAS,GACbvC,UAAU,KAAK,KAAf,IACAC,KAAK,CAACuC,IAAN,CAAW,UAACC,CAAD,EAAIC,CAAJ,EAAU;MACnB,IAAI,eAAeD,CAAnB,EAAsB;QACpB,IAAIA,CAAC,CAACE,SAAF,KAAgBN,IAAI,CAACM,SAArB,IAAkCF,CAAC,CAAC1C,EAAF,KAASsC,IAAI,CAACtC,EAAhD,IAAsD2C,CAAC,GAAGJ,KAA9D,EAAqE;UACnE,OAAO,IAAP;QACD;MACF;;MACD,OAAO,KAAP;IACD,CAPD,CAFF;IAWA,oBACE,oBAAC,IAAD;MACE,GAAG,eAAED,IAAI,CAACtC,EAAP,iDAAauC;IADlB,GAEMD,IAFN;MAGE,SAAS,EAAEE,SAHb;MAIE,EAAE,EAAEF,IAAI,CAACtC,EAJX;MAKE,UAAU,EAAEC;IALd,GADF;EASD,CAjCA,CANH,CA7CJ,EAuFG,CAAAC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEiC,MAAP,MAAkB,CAAlB,iBACC,oBAAC,YAAD;IACE,KAAK,mBAAE1B,MAAM,CAACoC,KAAT,kDAAE,cAAcC,KADvB;IAEE,OAAO,eACL,uDACE,oBAAC,YAAD;MACE,OAAO,EAAC,MADV;MAEE,SAAS,EAAC,GAFZ;MAGE,OAAO,EAAE,mBAAM;QACbzC,cAAc,CAAC;UAAEO,IAAI,EAAE,UAAR;UAAoBZ,EAAE,EAAFA;QAApB,CAAD,CAAd;MACD,CALH;MAME,KAAK,EAAE;QAAE+C,MAAM,EAAE,SAAV;QAAqBC,cAAc,EAAE;MAArC;IANT,+BAQMvC,MAAM,CAACoC,KARb,mDAQM,eAAcI,eARpB,EADF,EAWGlD,KAAK,IAAIW,kBAAT,iBACC,sEACMD,MAAM,CAACoC,KADb,mDACM,eAAcK,MADpB,gBAEE,oBAAC,YAAD;MACE,OAAO,EAAC,MADV;MAEE,SAAS,EAAC,GAFZ;MAGE,OAAO,EAAE,mBAAM;QACb7C,cAAc,CAAC;UAAEO,IAAI,EAAE,WAAR;UAAqBZ,EAAE,EAAFA;QAArB,CAAD,CAAd;MACD,CALH;MAME,KAAK,EAAE;QAAE+C,MAAM,EAAE,SAAV;QAAqBC,cAAc,EAAE;MAArC;IANT,+BAQMvC,MAAM,CAACoC,KARb,mDAQM,eAAcM,WARpB,EAFF,CAZJ,CAHJ;IA+BE,IAAI,iCAAE,oBAAC,IAAD,OAAF;EA/BN,EAxFJ,eA0HE,oBAAC,MAAD;IAAQ,SAAS;EAAjB,gBACE,oBAAC,MAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAEpE,IAAI,CAACoB,OAAO,CAACiD,qBAAT,EAAgCjD,OAAO,CAACkD,wBAAxC;EAFjB,GAIG1C,aAJH,CADF,CA1HF,CADF;AAqID,CA3LD;;AA6LA,wCAAAb,SAAS,CAACwD,SAAV,GAAsB;EACpB;AACF;AACA;AACA;EACEnD,OAAO,EAAElB,SAAS,CAACsE,KAAV,CAAgB;IACvB;AACJ;AACA;IACI/B,IAAI,EAAEvC,SAAS,CAACuE,MAJO;;IAKvB;AACJ;AACA;IACI/B,QAAQ,EAAExC,SAAS,CAACuE,MARG;;IASvB;AACJ;AACA;IACI9B,QAAQ,EAAEzC,SAAS,CAACuE,MAZG;;IAavB;AACJ;AACA;IACIvD,UAAU,EAAEhB,SAAS,CAACuE,MAhBC;;IAiBvB;AACJ;AACA;IACI7B,aAAa,EAAE1C,SAAS,CAACuE,MApBF;;IAqBvB;AACJ;AACA;IACI3B,gBAAgB,EAAE5C,SAAS,CAACuE,MAxBL;;IAyBvB;AACJ;AACA;IACI1B,YAAY,EAAE7C,SAAS,CAACuE,MA5BD;;IA6BvB;AACJ;AACA;IACIzB,eAAe,EAAE9C,SAAS,CAACuE,MAhCJ;;IAiCvB;AACJ;AACA;IACIpB,cAAc,EAAEnD,SAAS,CAACuE,MApCH;;IAqCvB;AACJ;AACA;IACInB,iBAAiB,EAAEpD,SAAS,CAACuE,MAxCN;;IAyCvB;AACJ;AACA;IACIJ,qBAAqB,EAAEnE,SAAS,CAACuE,MA5CV;;IA6CvB;AACJ;AACA;IACIH,wBAAwB,EAAEpE,SAAS,CAACuE;EAhDb,CAAhB,CALW;EAuDpBxD,EAAE,EAAEf,SAAS,CAACwE,MAvDM;EAwDpB1D,KAAK,EAAEd,SAAS,CAACwE,MAxDG;EAyDpBxD,UAAU,EAAEhB,SAAS,CAACuE,MAzDF;EA0DpBtD,KAAK,EAAEjB,SAAS,CAACyE;AA1DG,CAAtB;AA6DA,eAAe1E,UAAU,CAACa,MAAD,EAAS;EAAE8D,IAAI,EAAE;AAAR,CAAT,CAAV,CAA0C7D,SAA1C,CAAf"}
@@ -30,7 +30,7 @@ export type QueryRuleValue =
30
30
  | DateTimeRange;
31
31
 
32
32
  export interface QueryRule {
33
- id?: number;
33
+ id?: number | string;
34
34
  attribute?: string;
35
35
  operator?: string;
36
36
  value?: QueryRuleValue;
@@ -6,8 +6,7 @@ import React, { forwardRef, useContext, useRef } from "react";
6
6
  import PropTypes from "prop-types";
7
7
  import clsx from "clsx";
8
8
  import { withStyles } from "@material-ui/core";
9
- import { useForkRef } from "@hitachivantara/uikit-react-core";
10
- import Focus from "@hitachivantara/uikit-react-core/dist/Focus";
9
+ import { HvFocus, useForkRef } from "@hitachivantara/uikit-react-core";
11
10
  import TableContext from "../TableContext";
12
11
  import TableSectionContext from "../TableSectionContext";
13
12
  import styles from "./styles";
@@ -43,7 +42,7 @@ var HvTableBody = /*#__PURE__*/forwardRef(function HvTableBody(props, externalRe
43
42
  ref: handleRef,
44
43
  role: Component === defaultComponent ? null : "rowgroup"
45
44
  }, others), withNavigation ? children.map(function (element) {
46
- return /*#__PURE__*/React.createElement(Focus, {
45
+ return /*#__PURE__*/React.createElement(HvFocus, {
47
46
  rootRef: bodyRef,
48
47
  key: "row-".concat(element.key),
49
48
  strategy: "grid",
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.js","names":["React","forwardRef","useContext","useRef","PropTypes","clsx","withStyles","useForkRef","Focus","TableContext","TableSectionContext","styles","tableSectionContext","type","filterClassName","defaultComponent","HvTableBody","props","externalRef","classes","className","component","children","withNavigation","others","tableContext","bodyRef","handleRef","Component","components","TBody","root","map","element","key","selected","propTypes","string","node","elementType","bool","shape","isRequired","name"],"sources":["../../../../src/Table/TableBody/TableBody.js"],"sourcesContent":["import React, { forwardRef, useContext, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport { withStyles } from \"@material-ui/core\";\nimport { useForkRef } from \"@hitachivantara/uikit-react-core\";\n\nimport Focus from \"@hitachivantara/uikit-react-core/dist/Focus\";\nimport TableContext from \"../TableContext\";\nimport TableSectionContext from \"../TableSectionContext\";\nimport styles from \"./styles\";\n\nconst tableSectionContext = {\n type: \"body\",\n filterClassName: \"grid\",\n};\n\nconst defaultComponent = \"tbody\";\n\n/**\n * HvTableBody acts as a `tbody` element.\n * `HvTableCell` and `HvTableRow` elements in it inherit body-specific styles\n */\nconst HvTableBody = forwardRef(function HvTableBody(props, externalRef) {\n const { classes, className, component, children, withNavigation = false, ...others } = props;\n\n const tableContext = useContext(TableContext);\n\n const bodyRef = useRef(null);\n\n const handleRef = useForkRef(externalRef, bodyRef);\n\n const Component = component || tableContext?.components?.TBody || defaultComponent;\n\n return (\n <TableSectionContext.Provider value={tableSectionContext}>\n <Component\n className={clsx(classes.root, className)}\n ref={handleRef}\n role={Component === defaultComponent ? null : \"rowgroup\"}\n {...others}\n >\n {withNavigation\n ? children.map((element) => {\n return (\n <Focus\n rootRef={bodyRef}\n key={`row-${element.key}`}\n strategy=\"grid\"\n useArrows=\"true\"\n filterClass={tableSectionContext.filterClassName}\n navigationJump={1}\n focusDisabled={false}\n selected={element.props.selected}\n >\n {element}\n </Focus>\n );\n })\n : children}\n </Component>\n </TableSectionContext.Provider>\n );\n});\n\nHvTableBody.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Content to be rendered\n */\n children: PropTypes.node,\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to tbody.\n */\n component: PropTypes.elementType,\n /**\n * Sets whether or not there should be arrow navigation between the table rows\n */\n withNavigation: PropTypes.bool,\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 }).isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvTableBody\" })(HvTableBody);\n"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,EAA4BC,UAA5B,EAAwCC,MAAxC,QAAsD,OAAtD;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AAEA,SAASC,UAAT,QAA2B,mBAA3B;AACA,SAASC,UAAT,QAA2B,kCAA3B;AAEA,OAAOC,KAAP,MAAkB,6CAAlB;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,OAAOC,mBAAP,MAAgC,wBAAhC;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,IAAMC,mBAAmB,GAAG;EAC1BC,IAAI,EAAE,MADoB;EAE1BC,eAAe,EAAE;AAFS,CAA5B;AAKA,IAAMC,gBAAgB,GAAG,OAAzB;AAEA;AACA;AACA;AACA;;AACA,IAAMC,WAAW,gBAAGf,UAAU,CAAC,SAASe,WAAT,CAAqBC,KAArB,EAA4BC,WAA5B,EAAyC;EAAA;;EACtE,IAAQC,OAAR,GAAuFF,KAAvF,CAAQE,OAAR;EAAA,IAAiBC,SAAjB,GAAuFH,KAAvF,CAAiBG,SAAjB;EAAA,IAA4BC,SAA5B,GAAuFJ,KAAvF,CAA4BI,SAA5B;EAAA,IAAuCC,QAAvC,GAAuFL,KAAvF,CAAuCK,QAAvC;EAAA,4BAAuFL,KAAvF,CAAiDM,cAAjD;EAAA,IAAiDA,cAAjD,sCAAkE,KAAlE;EAAA,IAA4EC,MAA5E,4BAAuFP,KAAvF;;EAEA,IAAMQ,YAAY,GAAGvB,UAAU,CAACO,YAAD,CAA/B;EAEA,IAAMiB,OAAO,GAAGvB,MAAM,CAAC,IAAD,CAAtB;EAEA,IAAMwB,SAAS,GAAGpB,UAAU,CAACW,WAAD,EAAcQ,OAAd,CAA5B;EAEA,IAAME,SAAS,GAAGP,SAAS,KAAII,YAAJ,aAAIA,YAAJ,gDAAIA,YAAY,CAAEI,UAAlB,0DAAI,sBAA0BC,KAA9B,CAAT,IAAgDf,gBAAlE;EAEA,oBACE,oBAAC,mBAAD,CAAqB,QAArB;IAA8B,KAAK,EAAEH;EAArC,gBACE,oBAAC,SAAD;IACE,SAAS,EAAEP,IAAI,CAACc,OAAO,CAACY,IAAT,EAAeX,SAAf,CADjB;IAEE,GAAG,EAAEO,SAFP;IAGE,IAAI,EAAEC,SAAS,KAAKb,gBAAd,GAAiC,IAAjC,GAAwC;EAHhD,GAIMS,MAJN,GAMGD,cAAc,GACXD,QAAQ,CAACU,GAAT,CAAa,UAACC,OAAD,EAAa;IACxB,oBACE,oBAAC,KAAD;MACE,OAAO,EAAEP,OADX;MAEE,GAAG,gBAASO,OAAO,CAACC,GAAjB,CAFL;MAGE,QAAQ,EAAC,MAHX;MAIE,SAAS,EAAC,MAJZ;MAKE,WAAW,EAAEtB,mBAAmB,CAACE,eALnC;MAME,cAAc,EAAE,CANlB;MAOE,aAAa,EAAE,KAPjB;MAQE,QAAQ,EAAEmB,OAAO,CAAChB,KAAR,CAAckB;IAR1B,GAUGF,OAVH,CADF;EAcD,CAfD,CADW,GAiBXX,QAvBN,CADF,CADF;AA6BD,CAxC6B,CAA9B;AA0CA,wCAAAN,WAAW,CAACoB,SAAZ,GAAwB;EACtB;AACF;AACA;EACEhB,SAAS,EAAEhB,SAAS,CAACiC,MAJC;;EAKtB;AACF;AACA;EACEf,QAAQ,EAAElB,SAAS,CAACkC,IARE;;EAStB;AACF;AACA;AACA;EACEjB,SAAS,EAAEjB,SAAS,CAACmC,WAbC;;EActB;AACF;AACA;EACEhB,cAAc,EAAEnB,SAAS,CAACoC,IAjBJ;;EAkBtB;AACF;AACA;EACErB,OAAO,EAAEf,SAAS,CAACqC,KAAV,CAAgB;IACvB;AACJ;AACA;IACIV,IAAI,EAAE3B,SAAS,CAACiC;EAJO,CAAhB,EAKNK;AA1BmB,CAAxB;AA6BA,eAAepC,UAAU,CAACK,MAAD,EAAS;EAAEgC,IAAI,EAAE;AAAR,CAAT,CAAV,CAA4C3B,WAA5C,CAAf"}
1
+ {"version":3,"file":"TableBody.js","names":["React","forwardRef","useContext","useRef","PropTypes","clsx","withStyles","HvFocus","useForkRef","TableContext","TableSectionContext","styles","tableSectionContext","type","filterClassName","defaultComponent","HvTableBody","props","externalRef","classes","className","component","children","withNavigation","others","tableContext","bodyRef","handleRef","Component","components","TBody","root","map","element","key","selected","propTypes","string","node","elementType","bool","shape","isRequired","name"],"sources":["../../../../src/Table/TableBody/TableBody.js"],"sourcesContent":["import React, { forwardRef, useContext, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport { withStyles } from \"@material-ui/core\";\nimport { HvFocus, useForkRef } from \"@hitachivantara/uikit-react-core\";\n\nimport TableContext from \"../TableContext\";\nimport TableSectionContext from \"../TableSectionContext\";\nimport styles from \"./styles\";\n\nconst tableSectionContext = {\n type: \"body\",\n filterClassName: \"grid\",\n};\n\nconst defaultComponent = \"tbody\";\n\n/**\n * HvTableBody acts as a `tbody` element.\n * `HvTableCell` and `HvTableRow` elements in it inherit body-specific styles\n */\nconst HvTableBody = forwardRef(function HvTableBody(props, externalRef) {\n const { classes, className, component, children, withNavigation = false, ...others } = props;\n\n const tableContext = useContext(TableContext);\n\n const bodyRef = useRef(null);\n\n const handleRef = useForkRef(externalRef, bodyRef);\n\n const Component = component || tableContext?.components?.TBody || defaultComponent;\n\n return (\n <TableSectionContext.Provider value={tableSectionContext}>\n <Component\n className={clsx(classes.root, className)}\n ref={handleRef}\n role={Component === defaultComponent ? null : \"rowgroup\"}\n {...others}\n >\n {withNavigation\n ? children.map((element) => {\n return (\n <HvFocus\n rootRef={bodyRef}\n key={`row-${element.key}`}\n strategy=\"grid\"\n useArrows=\"true\"\n filterClass={tableSectionContext.filterClassName}\n navigationJump={1}\n focusDisabled={false}\n selected={element.props.selected}\n >\n {element}\n </HvFocus>\n );\n })\n : children}\n </Component>\n </TableSectionContext.Provider>\n );\n});\n\nHvTableBody.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Content to be rendered\n */\n children: PropTypes.node,\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to tbody.\n */\n component: PropTypes.elementType,\n /**\n * Sets whether or not there should be arrow navigation between the table rows\n */\n withNavigation: PropTypes.bool,\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 }).isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvTableBody\" })(HvTableBody);\n"],"mappings":"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"}
@@ -42,3 +42,6 @@ export * from "./ProgressBar";
42
42
 
43
43
  export { default as HvDotPagination } from "./DotPagination";
44
44
  export * from "./DotPagination";
45
+
46
+ export { default as HvControls } from "./Controls";
47
+ export * from "./Controls";
@@ -14,6 +14,8 @@ export { default as HvTag } from "./Tag";
14
14
  export { default as HvDrawer } from "./Drawer";
15
15
  export { default as HvColorPicker } from "./ColorPicker";
16
16
  export { default as HvQueryBuilder } from "./QueryBuilder";
17
+ export { default as HvControls } from "./Controls";
18
+ export * from "./Controls";
17
19
  export * from "./QueryBuilder";
18
20
  export { default as HvInlineEditor } from "./InlineEditor";
19
21
  export { default as HvProgressBar } from "./ProgressBar";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","HvAppSwitcherPanel","HvFormComposer","HvNavigationAnchors","HvNotificationPanel","HvSlider","HvTable","HvTimeAgo","HvTimePicker","HvTag","HvDrawer","HvColorPicker","HvQueryBuilder","HvInlineEditor","HvProgressBar","HvDotPagination"],"sources":["../../src/index.js"],"sourcesContent":["// components\nexport { default as HvAppSwitcherPanel } from \"./AppSwitcherPanel\";\nexport * from \"./AppSwitcherPanel\";\nexport { default as HvFormComposer } from \"./FormComposer\";\nexport { default as HvNavigationAnchors } from \"./NavigationAnchors\";\nexport { default as HvNotificationPanel } from \"./NotificationPanel\";\nexport { default as HvSlider } from \"./Slider\";\nexport { default as HvTable } from \"./Table\";\nexport * from \"./Table\";\nexport { default as HvTimeAgo } from \"./TimeAgo\";\nexport * from \"./TimeAgo\";\nexport { default as HvTimePicker } from \"./TimePicker\";\nexport { default as HvTag } from \"./Tag\";\nexport { default as HvDrawer } from \"./Drawer\";\nexport { default as HvColorPicker } from \"./ColorPicker\";\nexport { default as HvQueryBuilder } from \"./QueryBuilder\";\nexport * from \"./QueryBuilder\";\nexport { default as HvInlineEditor } from \"./InlineEditor\";\nexport { default as HvProgressBar } from \"./ProgressBar\";\nexport { default as HvDotPagination } from \"./DotPagination\";\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,kBAApB,QAA8C,oBAA9C;AACA,cAAc,oBAAd;AACA,SAASD,OAAO,IAAIE,cAApB,QAA0C,gBAA1C;AACA,SAASF,OAAO,IAAIG,mBAApB,QAA+C,qBAA/C;AACA,SAASH,OAAO,IAAII,mBAApB,QAA+C,qBAA/C;AACA,SAASJ,OAAO,IAAIK,QAApB,QAAoC,UAApC;AACA,SAASL,OAAO,IAAIM,OAApB,QAAmC,SAAnC;AACA,cAAc,SAAd;AACA,SAASN,OAAO,IAAIO,SAApB,QAAqC,WAArC;AACA,cAAc,WAAd;AACA,SAASP,OAAO,IAAIQ,YAApB,QAAwC,cAAxC;AACA,SAASR,OAAO,IAAIS,KAApB,QAAiC,OAAjC;AACA,SAAST,OAAO,IAAIU,QAApB,QAAoC,UAApC;AACA,SAASV,OAAO,IAAIW,aAApB,QAAyC,eAAzC;AACA,SAASX,OAAO,IAAIY,cAApB,QAA0C,gBAA1C;AACA,cAAc,gBAAd;AACA,SAASZ,OAAO,IAAIa,cAApB,QAA0C,gBAA1C;AACA,SAASb,OAAO,IAAIc,aAApB,QAAyC,eAAzC;AACA,SAASd,OAAO,IAAIe,eAApB,QAA2C,iBAA3C"}
1
+ {"version":3,"file":"index.js","names":["default","HvAppSwitcherPanel","HvFormComposer","HvNavigationAnchors","HvNotificationPanel","HvSlider","HvTable","HvTimeAgo","HvTimePicker","HvTag","HvDrawer","HvColorPicker","HvQueryBuilder","HvControls","HvInlineEditor","HvProgressBar","HvDotPagination"],"sources":["../../src/index.js"],"sourcesContent":["// components\nexport { default as HvAppSwitcherPanel } from \"./AppSwitcherPanel\";\nexport * from \"./AppSwitcherPanel\";\nexport { default as HvFormComposer } from \"./FormComposer\";\nexport { default as HvNavigationAnchors } from \"./NavigationAnchors\";\nexport { default as HvNotificationPanel } from \"./NotificationPanel\";\nexport { default as HvSlider } from \"./Slider\";\nexport { default as HvTable } from \"./Table\";\nexport * from \"./Table\";\nexport { default as HvTimeAgo } from \"./TimeAgo\";\nexport * from \"./TimeAgo\";\nexport { default as HvTimePicker } from \"./TimePicker\";\nexport { default as HvTag } from \"./Tag\";\nexport { default as HvDrawer } from \"./Drawer\";\nexport { default as HvColorPicker } from \"./ColorPicker\";\nexport { default as HvQueryBuilder } from \"./QueryBuilder\";\nexport { default as HvControls } from \"./Controls\";\nexport * from \"./Controls\";\nexport * from \"./QueryBuilder\";\nexport { default as HvInlineEditor } from \"./InlineEditor\";\nexport { default as HvProgressBar } from \"./ProgressBar\";\nexport { default as HvDotPagination } from \"./DotPagination\";\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,kBAApB,QAA8C,oBAA9C;AACA,cAAc,oBAAd;AACA,SAASD,OAAO,IAAIE,cAApB,QAA0C,gBAA1C;AACA,SAASF,OAAO,IAAIG,mBAApB,QAA+C,qBAA/C;AACA,SAASH,OAAO,IAAII,mBAApB,QAA+C,qBAA/C;AACA,SAASJ,OAAO,IAAIK,QAApB,QAAoC,UAApC;AACA,SAASL,OAAO,IAAIM,OAApB,QAAmC,SAAnC;AACA,cAAc,SAAd;AACA,SAASN,OAAO,IAAIO,SAApB,QAAqC,WAArC;AACA,cAAc,WAAd;AACA,SAASP,OAAO,IAAIQ,YAApB,QAAwC,cAAxC;AACA,SAASR,OAAO,IAAIS,KAApB,QAAiC,OAAjC;AACA,SAAST,OAAO,IAAIU,QAApB,QAAoC,UAApC;AACA,SAASV,OAAO,IAAIW,aAApB,QAAyC,eAAzC;AACA,SAASX,OAAO,IAAIY,cAApB,QAA0C,gBAA1C;AACA,SAASZ,OAAO,IAAIa,UAApB,QAAsC,YAAtC;AACA,cAAc,YAAd;AACA,cAAc,gBAAd;AACA,SAASb,OAAO,IAAIc,cAApB,QAA0C,gBAA1C;AACA,SAASd,OAAO,IAAIe,aAApB,QAAyC,eAAzC;AACA,SAASf,OAAO,IAAIgB,eAApB,QAA2C,iBAA3C"}
@@ -0,0 +1,57 @@
1
+ import { StandardProps } from "@material-ui/core";
2
+
3
+ export type HvControlsClassKey = "root" | "rightSection" | "leftSection";
4
+
5
+ export interface HvControlsSortValue {
6
+ id: string;
7
+ desc: string;
8
+ }
9
+ export interface HvControlsViewConfiguration extends Record<string, unknown> {
10
+ setSortBy?: (v: HvControlsSortValue[]) => void;
11
+ setGlobalFilter?: (v: string) => void;
12
+ }
13
+
14
+ export interface HvControlsCallbacks extends Record<string, unknown> {
15
+ id: string;
16
+ label: string;
17
+ icon: React.ReactNode;
18
+ }
19
+
20
+ export interface HvControlsProps
21
+ extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvControlsClassKey> {
22
+ /** Children to be rendered. */
23
+ id?: string;
24
+ /**
25
+ * Class names to be applied.
26
+ */
27
+ className?: string;
28
+ /**
29
+ * An instance of useHvTable or useTable used to manage the data
30
+ * if this is not provided data sorting and search must be handled externally
31
+ */
32
+ callbacks?: HvControlsCallbacks;
33
+ /**
34
+ * Views configuration required for the view buttons
35
+ */
36
+ views?: HvControlsViewConfiguration[];
37
+ /**
38
+ * What view is selected by default
39
+ */
40
+ defaultView?: string;
41
+ /**
42
+ * Sets the selected view to be the one specified
43
+ * if specified the component is in a controlled state and it won't change it state
44
+ * unless specified externally
45
+ */
46
+ selectedView?: string;
47
+ /**
48
+ * Callback called when the view switcher button is pressed
49
+ */
50
+ onViewChange?: (event: Event, id: string) => void;
51
+ /**
52
+ * if `true` the button to switch views is not rendered
53
+ */
54
+ hideViewSwitcher?: boolean;
55
+ }
56
+
57
+ export default function HvControls(props: HvControlsProps): JSX.Element | null;
@@ -0,0 +1,164 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ const _excluded = ["id", "icon"];
4
+ import "core-js/modules/web.dom-collections.iterator.js";
5
+ import React from "react";
6
+ import PropTypes from "prop-types";
7
+ import clsx from "clsx";
8
+ import { withStyles } from "@material-ui/core";
9
+ import { useControlled, HvMultiButton, HvButton, setId } from "@hitachivantara/uikit-react-core";
10
+ import { HvControlsContextProvider } from "./context/ControlsContext";
11
+ import styleCreator from "./styles";
12
+ /** Controls it's a group of features used to control data that can be rendered using different views (table, cards, list). */
13
+
14
+ const HvControls = ({
15
+ id,
16
+ views,
17
+ classes,
18
+ className,
19
+ callbacks,
20
+ selectedView,
21
+ defaultView,
22
+ children,
23
+ hideViewSwitcher = false,
24
+ onViewChange
25
+ }) => {
26
+ const [currentView, setCurrentView] = useControlled(selectedView, defaultView);
27
+
28
+ const onViewChangeHandler = (evt, btnId) => {
29
+ setCurrentView(btnId);
30
+ onViewChange === null || onViewChange === void 0 ? void 0 : onViewChange(evt, btnId);
31
+ };
32
+
33
+ const onSearchHandler = value => callbacks === null || callbacks === void 0 ? void 0 : callbacks.setGlobalFilter(value);
34
+
35
+ const onSortHandler = value => callbacks === null || callbacks === void 0 ? void 0 : callbacks.setSortBy([{
36
+ id: value === null || value === void 0 ? void 0 : value.accessor,
37
+ desc: value === null || value === void 0 ? void 0 : value.desc
38
+ }]);
39
+
40
+ const childrenIndexCut = (children === null || children === void 0 ? void 0 : children.length) > 0 ? Math.round(children.length * 0.5) : 0;
41
+ const leftChildren = children.slice(0, childrenIndexCut);
42
+ const rightChildren = children.slice(childrenIndexCut, (children === null || children === void 0 ? void 0 : children.length) || 0);
43
+ return /*#__PURE__*/React.createElement("div", {
44
+ id: id,
45
+ className: clsx(className, classes.root)
46
+ }, /*#__PURE__*/React.createElement(HvControlsContextProvider, {
47
+ value: {
48
+ onSearch: onSearchHandler,
49
+ onSort: onSortHandler
50
+ }
51
+ }, /*#__PURE__*/React.createElement("div", {
52
+ className: clsx(classes.section, classes.leftSection)
53
+ }, leftChildren), /*#__PURE__*/React.createElement("div", {
54
+ className: clsx(classes.section, classes.rightSection)
55
+ }, rightChildren, !hideViewSwitcher && (views === null || views === void 0 ? void 0 : views.length) > 0 && /*#__PURE__*/React.createElement(HvMultiButton, {
56
+ id: setId(id, "view-multi-button")
57
+ }, views === null || views === void 0 ? void 0 : views.map(_ref => {
58
+ let {
59
+ id: btnId,
60
+ icon
61
+ } = _ref,
62
+ others = _objectWithoutProperties(_ref, _excluded);
63
+
64
+ return /*#__PURE__*/React.createElement(HvButton, _extends({
65
+ id: btnId,
66
+ key: btnId,
67
+ icon: true,
68
+ selected: currentView === btnId,
69
+ onClick: evt => onViewChangeHandler(evt, btnId)
70
+ }, others), icon);
71
+ })))));
72
+ };
73
+
74
+ process.env.NODE_ENV !== "production" ? HvControls.propTypes = {
75
+ /** Children to be rendered. */
76
+ id: PropTypes.string,
77
+
78
+ /**
79
+ * Class names to be applied.
80
+ */
81
+ className: PropTypes.string,
82
+
83
+ /**
84
+ * Children elements to be rendered
85
+ */
86
+ children: PropTypes.node,
87
+
88
+ /**
89
+ * An instance of useHvTable or useTable used to manage the data
90
+ * if this is not provided data sorting and search must be handled externally
91
+ */
92
+ callbacks: PropTypes.shape({
93
+ /**
94
+ * Callback used by the .
95
+ */
96
+ setSortBy: PropTypes.func,
97
+
98
+ /**
99
+ * Callback used by the search input to filter data across all fields
100
+ */
101
+ setGlobalFilter: PropTypes.func
102
+ }),
103
+
104
+ /**
105
+ * Views configuration required for the view buttons
106
+ */
107
+ views: PropTypes.arrayOf(PropTypes.shape({
108
+ label: PropTypes.string,
109
+ icon: PropTypes.node,
110
+ id: PropTypes.string
111
+ })),
112
+
113
+ /**
114
+ * the classes object to be applied into the root object.
115
+ */
116
+ classes: PropTypes.shape({
117
+ /**
118
+ * Style applied to the root of the component.
119
+ */
120
+ root: PropTypes.string,
121
+
122
+ /**
123
+ * Right box of the controls
124
+ */
125
+ rightSection: PropTypes.string,
126
+
127
+ /**
128
+ * Left box of the controls
129
+ */
130
+ leftSection: PropTypes.string,
131
+
132
+ /**
133
+ * common styles for left and right controls
134
+ */
135
+ section: PropTypes.string
136
+ }).isRequired,
137
+
138
+ /**
139
+ * What view is selected by default
140
+ */
141
+ defaultView: PropTypes.string,
142
+
143
+ /**
144
+ * Sets the selected view to be the one specified
145
+ * if specified the component is in a controlled state and it won't change it state
146
+ * unless specified externally
147
+ */
148
+ selectedView: PropTypes.string,
149
+
150
+ /**
151
+ * Callback called when the view switcher button is pressed
152
+ */
153
+ onViewChange: PropTypes.func,
154
+
155
+ /**
156
+ * if `true` the button to switch views is not rendered
157
+ */
158
+ hideViewSwitcher: PropTypes.bool
159
+ } : void 0;
160
+ export default withStyles(styleCreator, {
161
+ name: "HvControls",
162
+ withTheme: true
163
+ })(HvControls);
164
+ //# sourceMappingURL=Controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Controls.js","names":["React","PropTypes","clsx","withStyles","useControlled","HvMultiButton","HvButton","setId","HvControlsContextProvider","styleCreator","HvControls","id","views","classes","className","callbacks","selectedView","defaultView","children","hideViewSwitcher","onViewChange","currentView","setCurrentView","onViewChangeHandler","evt","btnId","onSearchHandler","value","setGlobalFilter","onSortHandler","setSortBy","accessor","desc","childrenIndexCut","length","Math","round","leftChildren","slice","rightChildren","root","onSearch","onSort","section","leftSection","rightSection","map","icon","others","propTypes","string","node","shape","func","arrayOf","label","isRequired","bool","name","withTheme"],"sources":["../../../src/Controls/Controls.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport { useControlled, HvMultiButton, HvButton, setId } from \"@hitachivantara/uikit-react-core\";\nimport { HvControlsContextProvider } from \"./context/ControlsContext\";\nimport styleCreator from \"./styles\";\n\n/** Controls it's a group of features used to control data that can be rendered using different views (table, cards, list). */\nconst HvControls = ({\n id,\n views,\n classes,\n className,\n callbacks,\n selectedView,\n defaultView,\n children,\n hideViewSwitcher = false,\n onViewChange,\n}) => {\n const [currentView, setCurrentView] = useControlled(selectedView, defaultView);\n\n const onViewChangeHandler = (evt, btnId) => {\n setCurrentView(btnId);\n onViewChange?.(evt, btnId);\n };\n\n const onSearchHandler = (value) => callbacks?.setGlobalFilter(value);\n const onSortHandler = (value) =>\n callbacks?.setSortBy([\n {\n id: value?.accessor,\n desc: value?.desc,\n },\n ]);\n const childrenIndexCut = children?.length > 0 ? Math.round(children.length * 0.5) : 0;\n const leftChildren = children.slice(0, childrenIndexCut);\n const rightChildren = children.slice(childrenIndexCut, children?.length || 0);\n return (\n <div id={id} className={clsx(className, classes.root)}>\n <HvControlsContextProvider\n value={{\n onSearch: onSearchHandler,\n onSort: onSortHandler,\n }}\n >\n <div className={clsx(classes.section, classes.leftSection)}>{leftChildren}</div>\n <div className={clsx(classes.section, classes.rightSection)}>\n {rightChildren}\n {!hideViewSwitcher && views?.length > 0 && (\n <HvMultiButton id={setId(id, \"view-multi-button\")}>\n {views?.map(({ id: btnId, icon, ...others }) => (\n <HvButton\n id={btnId}\n key={btnId}\n icon\n selected={currentView === btnId}\n onClick={(evt) => onViewChangeHandler(evt, btnId)}\n {...others}\n >\n {icon}\n </HvButton>\n ))}\n </HvMultiButton>\n )}\n </div>\n </HvControlsContextProvider>\n </div>\n );\n};\n\nHvControls.propTypes = {\n /** Children to be rendered. */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Children elements to be rendered\n */\n children: PropTypes.node,\n /**\n * An instance of useHvTable or useTable used to manage the data\n * if this is not provided data sorting and search must be handled externally\n */\n callbacks: PropTypes.shape({\n /**\n * Callback used by the .\n */\n setSortBy: PropTypes.func,\n /**\n * Callback used by the search input to filter data across all fields\n */\n setGlobalFilter: PropTypes.func,\n }),\n /**\n * Views configuration required for the view buttons\n */\n views: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n icon: PropTypes.node,\n id: PropTypes.string,\n })\n ),\n /**\n * the classes object to be applied into the root object.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Right box of the controls\n */\n rightSection: PropTypes.string,\n /**\n * Left box of the controls\n */\n leftSection: PropTypes.string,\n /**\n * common styles for left and right controls\n */\n section: PropTypes.string,\n }).isRequired,\n /**\n * What view is selected by default\n */\n defaultView: PropTypes.string,\n /**\n * Sets the selected view to be the one specified\n * if specified the component is in a controlled state and it won't change it state\n * unless specified externally\n */\n selectedView: PropTypes.string,\n /**\n * Callback called when the view switcher button is pressed\n */\n onViewChange: PropTypes.func,\n /**\n * if `true` the button to switch views is not rendered\n */\n hideViewSwitcher: PropTypes.bool,\n};\n\nexport default withStyles(styleCreator, { name: \"HvControls\", withTheme: true })(HvControls);\n"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { StandardProps } from "@material-ui/core";
2
+ import { HvInputProps } from "@hitachivantara/uikit-react-core";
3
+
4
+ export type HvLeftControlClassKey = "root";
5
+
6
+ export interface HvLeftControlProps
7
+ extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvLeftControlClassKey> {
8
+ /** Children to be rendered. */
9
+ id?: string;
10
+ /**
11
+ * Class names to be applied.
12
+ */
13
+ className?: string;
14
+ /**
15
+ * if `true` the hide sort by dropdown is not rendered
16
+ */
17
+ hideSearch?: boolean;
18
+ /**
19
+ * placeholder of the input
20
+ */
21
+ placeholder?: string;
22
+ /**
23
+ * Callback called when a search action occurs
24
+ */
25
+ onSearch?: (event: React.ChangeEvent<HTMLInputElement>, value: string) => void;
26
+ /**
27
+ * Extra props passed to input
28
+ */
29
+ searchProps?: HvInputProps;
30
+ }
31
+
32
+ export default function HvLeftControl(props: HvLeftControlProps): JSX.Element | null;