@carbon/ibm-products 2.48.0 → 2.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 (183) hide show
  1. package/css/index-full-carbon.css +29 -14
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +1 -1
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +11 -2
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +1 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +29 -14
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +1 -1
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +29 -14
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +1 -1
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/APIKeyModal/APIKeyModal.types.d.ts +1 -1
  18. package/es/components/Card/Card.js +4 -2
  19. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +100 -24
  20. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +30 -27
  21. package/es/components/ConditionBuilder/ConditionBuilder.d.ts +9 -2
  22. package/es/components/ConditionBuilder/ConditionBuilder.js +13 -9
  23. package/es/components/ConditionBuilder/ConditionBuilder.types.d.ts +151 -0
  24. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +26 -12
  25. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +7 -7
  26. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +62 -27
  27. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +2 -3
  28. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +86 -37
  29. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +2 -2
  30. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.d.ts +29 -14
  31. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +10 -9
  32. package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +4 -1
  33. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +40 -20
  34. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +40 -37
  35. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +10 -49
  36. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +22 -31
  37. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +6 -0
  38. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +7 -1
  39. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +81 -31
  40. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +14 -8
  41. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +27 -12
  42. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +2 -3
  43. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.d.ts +30 -12
  44. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +12 -7
  45. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +35 -12
  46. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +16 -9
  47. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.d.ts +32 -12
  48. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +4 -4
  49. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +35 -14
  50. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +5 -6
  51. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.d.ts +25 -10
  52. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  53. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +44 -17
  54. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +50 -40
  55. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +30 -13
  56. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +2 -3
  57. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +9 -10
  58. package/es/components/ConditionBuilder/utils/useDataConfigs.d.ts +18 -0
  59. package/es/components/ConditionBuilder/utils/useDataConfigs.js +120 -0
  60. package/es/components/ConditionBuilder/utils/useTranslations.d.ts +1 -1
  61. package/es/components/ConditionBuilder/utils/useTranslations.js +4 -1
  62. package/es/components/ConditionBuilder/utils/util.d.ts +12 -0
  63. package/es/components/ConditionBuilder/utils/util.js +48 -2
  64. package/es/components/CreateFullPage/CreateFullPageStep.d.ts +2 -2
  65. package/es/components/CreateFullPage/index.d.ts +1 -0
  66. package/es/components/CreateTearsheet/CreateTearsheet.js +3 -4
  67. package/es/components/DataSpreadsheet/DataSpreadsheet.js +8 -1
  68. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +8 -3
  69. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +20 -11
  70. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +7 -2
  71. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +12 -7
  72. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +18 -16
  73. package/es/components/Datagrid/types/index.d.ts +1 -0
  74. package/es/components/Datagrid/useActionsColumn.js +1 -4
  75. package/es/components/Datagrid/useFiltering.d.ts +1 -0
  76. package/es/components/Datagrid/useFiltering.js +14 -3
  77. package/es/components/EditInPlace/EditInPlace.js +7 -5
  78. package/es/components/NotificationsPanel/NotificationsPanel.d.ts +2 -0
  79. package/es/components/NotificationsPanel/NotificationsPanel.js +75 -5
  80. package/es/components/TagOverflow/TagOverflow.d.ts +1 -0
  81. package/es/components/TagOverflow/TagOverflow.js +8 -2
  82. package/es/components/TagOverflow/TagOverflowPopover.d.ts +1 -0
  83. package/es/components/TagOverflow/TagOverflowPopover.js +7 -1
  84. package/es/components/TagSet/TagSetOverflow.js +1 -1
  85. package/es/components/Tearsheet/Tearsheet.d.ts +2 -2
  86. package/es/components/Tearsheet/TearsheetShell.js +7 -3
  87. package/es/components/Toolbar/ToolbarButton.d.ts +12 -1
  88. package/es/components/Toolbar/ToolbarButton.js +16 -8
  89. package/es/global/js/hooks/useFocus.d.ts +1 -1
  90. package/es/global/js/hooks/useFocus.js +40 -24
  91. package/es/global/js/utils/keyboardNavigation.d.ts +27 -0
  92. package/es/global/js/utils/keyboardNavigation.js +37 -0
  93. package/es/global/js/utils/wrapFocus.d.ts +25 -0
  94. package/es/global/js/utils/wrapFocus.js +68 -0
  95. package/lib/components/APIKeyModal/APIKeyModal.types.d.ts +1 -1
  96. package/lib/components/Card/Card.js +3 -1
  97. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +100 -24
  98. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +36 -33
  99. package/lib/components/ConditionBuilder/ConditionBuilder.d.ts +9 -2
  100. package/lib/components/ConditionBuilder/ConditionBuilder.js +15 -11
  101. package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts +151 -0
  102. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +26 -12
  103. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +15 -15
  104. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +62 -27
  105. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +7 -8
  106. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +86 -37
  107. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +4 -4
  108. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.d.ts +29 -14
  109. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +11 -10
  110. package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +8 -5
  111. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +40 -20
  112. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +47 -44
  113. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +10 -49
  114. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +22 -31
  115. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +6 -0
  116. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +7 -1
  117. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +81 -31
  118. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +18 -12
  119. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +27 -12
  120. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +3 -4
  121. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.d.ts +30 -12
  122. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +13 -8
  123. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +35 -12
  124. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +22 -15
  125. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.d.ts +32 -12
  126. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +15 -15
  127. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +35 -14
  128. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +5 -6
  129. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.d.ts +25 -10
  130. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +2 -2
  131. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +44 -17
  132. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +60 -50
  133. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +30 -13
  134. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +18 -19
  135. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +12 -13
  136. package/lib/components/ConditionBuilder/utils/useDataConfigs.d.ts +18 -0
  137. package/lib/components/ConditionBuilder/utils/useDataConfigs.js +124 -0
  138. package/lib/components/ConditionBuilder/utils/useTranslations.d.ts +1 -1
  139. package/lib/components/ConditionBuilder/utils/useTranslations.js +4 -1
  140. package/lib/components/ConditionBuilder/utils/util.d.ts +12 -0
  141. package/lib/components/ConditionBuilder/utils/util.js +53 -3
  142. package/lib/components/CreateFullPage/CreateFullPageStep.d.ts +2 -2
  143. package/lib/components/CreateFullPage/index.d.ts +1 -0
  144. package/lib/components/CreateTearsheet/CreateTearsheet.js +3 -4
  145. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +8 -1
  146. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +8 -3
  147. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +19 -10
  148. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +6 -1
  149. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +11 -6
  150. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +18 -16
  151. package/lib/components/Datagrid/types/index.d.ts +1 -0
  152. package/lib/components/Datagrid/useActionsColumn.js +1 -4
  153. package/lib/components/Datagrid/useFiltering.d.ts +1 -0
  154. package/lib/components/Datagrid/useFiltering.js +13 -1
  155. package/lib/components/EditInPlace/EditInPlace.js +7 -5
  156. package/lib/components/NotificationsPanel/NotificationsPanel.d.ts +2 -0
  157. package/lib/components/NotificationsPanel/NotificationsPanel.js +74 -4
  158. package/lib/components/TagOverflow/TagOverflow.d.ts +1 -0
  159. package/lib/components/TagOverflow/TagOverflow.js +8 -2
  160. package/lib/components/TagOverflow/TagOverflowPopover.d.ts +1 -0
  161. package/lib/components/TagOverflow/TagOverflowPopover.js +7 -1
  162. package/lib/components/TagSet/TagSetOverflow.js +1 -1
  163. package/lib/components/Tearsheet/Tearsheet.d.ts +2 -2
  164. package/lib/components/Tearsheet/TearsheetShell.js +6 -2
  165. package/lib/components/Toolbar/ToolbarButton.d.ts +12 -1
  166. package/lib/components/Toolbar/ToolbarButton.js +15 -6
  167. package/lib/global/js/hooks/useFocus.d.ts +1 -1
  168. package/lib/global/js/hooks/useFocus.js +40 -24
  169. package/lib/global/js/utils/keyboardNavigation.d.ts +27 -0
  170. package/lib/global/js/utils/keyboardNavigation.js +43 -0
  171. package/lib/global/js/utils/wrapFocus.d.ts +25 -0
  172. package/lib/global/js/utils/wrapFocus.js +73 -0
  173. package/package.json +4 -4
  174. package/scss/components/ConditionBuilder/_condition-builder.scss +1 -1
  175. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +33 -22
  176. package/scss/components/Datagrid/styles/_datagrid.scss +7 -0
  177. package/scss/components/Datagrid/styles/_useActionsColumn.scss +4 -0
  178. package/scss/components/EditInPlace/_edit-in-place.scss +2 -2
  179. package/telemetry.yml +15 -6
  180. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +0 -28
  181. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +0 -123
  182. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +0 -28
  183. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +0 -131
@@ -14,8 +14,8 @@ var React = require('react');
14
14
  var cx = require('classnames');
15
15
  var index = require('../../../node_modules/prop-types/index.js');
16
16
  var react = require('@carbon/react');
17
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
18
17
  var icons = require('@carbon/react/icons');
18
+ var util = require('../utils/util.js');
19
19
 
20
20
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
21
 
@@ -47,8 +47,8 @@ var ConditionBuilderButton = function ConditionBuilderButton(_ref) {
47
47
  var _rest$dataName;
48
48
  var dataName = (_rest$dataName = rest['data-name']) !== null && _rest$dataName !== void 0 ? _rest$dataName : '';
49
49
  return /*#__PURE__*/React__default["default"].createElement("button", _rollupPluginBabelHelpers["extends"]({
50
- tabIndex: tabIndex != undefined ? tabIndex : -1,
51
- className: cx__default["default"]([className, "".concat(DataConfigs.blockClass, "__button"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__text-ellipsis"), showToolTip && !hideLabel && !isInvalid), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__invalid-input"), isInvalid)]),
50
+ tabIndex: tabIndex !== undefined ? tabIndex : -1,
51
+ className: cx__default["default"]([className, "".concat(util.blockClass, "__button"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(util.blockClass, "__text-ellipsis"), showToolTip && !hideLabel && !isInvalid), _rollupPluginBabelHelpers.defineProperty({}, "".concat(util.blockClass, "__invalid-input"), isInvalid)]),
52
52
  type: "button",
53
53
  onClick: onClick,
54
54
  onBlur: onBlur,
@@ -61,7 +61,7 @@ var ConditionBuilderButton = function ConditionBuilderButton(_ref) {
61
61
  return hideLabel || showToolTip ? /*#__PURE__*/React__default["default"].createElement(react.Tooltip, _rollupPluginBabelHelpers["extends"]({
62
62
  label: label,
63
63
  align: tooltipAlign,
64
- className: "".concat(wrapperClassName, " ").concat(DataConfigs.blockClass, "__tooltip ").concat(carbonPrefix, "--icon-tooltip")
64
+ className: "".concat(wrapperClassName, " ").concat(util.blockClass, "__tooltip ").concat(carbonPrefix, "--icon-tooltip")
65
65
  }, wrapperProps, {
66
66
  leaveDelayMs: 0
67
67
  }), Button()) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, Button());
@@ -1,15 +1,30 @@
1
- export default ConditionConnector;
2
- declare function ConditionConnector({ operator, className, onChange, ...rest }: {
3
- [x: string]: any;
4
- operator: any;
5
- className: any;
6
- onChange: any;
7
- }): import("react/jsx-runtime").JSX.Element;
8
- declare namespace ConditionConnector {
9
- namespace propTypes {
10
- let className: PropTypes.Requireable<string>;
11
- let onChange: PropTypes.Requireable<(...args: any[]) => any>;
12
- let operator: PropTypes.Requireable<string>;
13
- }
14
- }
1
+ /**
2
+ * Copyright IBM Corp. 2024
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
15
7
  import PropTypes from 'prop-types';
8
+ interface ConditionConnectorProps {
9
+ operator: string;
10
+ className: string;
11
+ onChange?: (op: string) => void;
12
+ }
13
+ declare const ConditionConnector: {
14
+ ({ operator, className, onChange, ...rest }: ConditionConnectorProps): import("react/jsx-runtime").JSX.Element;
15
+ propTypes: {
16
+ /**
17
+ * Provide an optional class to be applied to the containing node.
18
+ */
19
+ className: PropTypes.Requireable<string>;
20
+ /**
21
+ * callback to update the current condition of the state tree
22
+ */
23
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
24
+ /**
25
+ * string that defines the connector operator (and/or)
26
+ */
27
+ operator: PropTypes.Requireable<string>;
28
+ };
29
+ };
30
+ export default ConditionConnector;
@@ -13,11 +13,11 @@ var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHel
13
13
  var React = require('react');
14
14
  var ConditionBuilderItem = require('../ConditionBuilderItem/ConditionBuilderItem.js');
15
15
  var ItemOption = require('../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js');
16
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
17
16
  var index = require('../../../node_modules/prop-types/index.js');
18
17
  var util = require('../utils/util.js');
19
18
  var ConditionBuilderProvider = require('../ConditionBuilderContext/ConditionBuilderProvider.js');
20
19
  var useTranslations = require('../utils/useTranslations.js');
20
+ var useDataConfigs = require('../utils/useDataConfigs.js');
21
21
  var ConditionBuilderButton = require('../ConditionBuilderButton/ConditionBuilderButton.js');
22
22
 
23
23
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -36,6 +36,8 @@ var ConditionConnector = function ConditionConnector(_ref) {
36
36
  var _useTranslations = useTranslations.useTranslations(['connectorText']),
37
37
  _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 1),
38
38
  connectorText = _useTranslations2[0];
39
+ var _useDataConfigs = useDataConfigs.useDataConfigs(),
40
+ connectorConfig = _useDataConfigs.connectorConfig;
39
41
  var handleConnectorHover = React.useCallback(function (parentGroup, isHover) {
40
42
  if (isHover) {
41
43
  parentGroup.classList.add('hoveredConnector');
@@ -44,19 +46,19 @@ var ConditionConnector = function ConditionConnector(_ref) {
44
46
  }
45
47
  }, []);
46
48
  var activeConnectorHandler = function activeConnectorHandler(evt) {
47
- var parentGroup = evt.currentTarget.closest('.eachGroup');
49
+ var parentGroup = evt === null || evt === void 0 ? void 0 : evt.currentTarget.closest('.eachGroup');
48
50
  handleConnectorHover(parentGroup, true);
49
51
  };
50
52
  var inActiveConnectorHandler = function inActiveConnectorHandler(evt) {
51
- var parentGroup = evt.currentTarget.closest('.eachGroup');
53
+ var parentGroup = evt === null || evt === void 0 ? void 0 : evt.currentTarget.closest('.eachGroup');
52
54
  handleConnectorHover(parentGroup, false);
53
55
  };
54
56
  var onChangeHandler = function onChangeHandler(op, evt) {
55
- onChange(op);
57
+ onChange === null || onChange === void 0 || onChange(op);
56
58
  util.focusThisField(evt, conditionBuilderRef);
57
59
  };
58
- return variant == 'tree' ? /*#__PURE__*/React__default["default"].createElement("span", {
59
- className: "".concat(className, " ").concat(DataConfigs.blockClass, "__connector--disabled")
60
+ return variant == util.HIERARCHICAL_VARIANT ? /*#__PURE__*/React__default["default"].createElement("span", {
61
+ className: "".concat(className, " ").concat(util.blockClass, "__connector--disabled")
60
62
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, {
61
63
  label: operator
62
64
  })) :
@@ -72,10 +74,10 @@ var ConditionConnector = function ConditionConnector(_ref) {
72
74
  onBlur: inActiveConnectorHandler
73
75
  }, rest, {
74
76
  popOverClassName: className,
75
- className: "".concat(DataConfigs.blockClass, "__connector-button ")
77
+ className: "".concat(util.blockClass, "__connector-button")
76
78
  }), /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
77
79
  config: {
78
- options: DataConfigs.connectorConfig
80
+ options: connectorConfig
79
81
  },
80
82
  conditionState: {
81
83
  value: operator,
@@ -87,7 +89,6 @@ var ConditionConnector = function ConditionConnector(_ref) {
87
89
  // </div>
88
90
  ;
89
91
  };
90
- var ConditionConnector$1 = ConditionConnector;
91
92
  ConditionConnector.propTypes = {
92
93
  /**
93
94
  * Provide an optional class to be applied to the containing node.
@@ -103,4 +104,4 @@ ConditionConnector.propTypes = {
103
104
  operator: index["default"].string
104
105
  };
105
106
 
106
- exports["default"] = ConditionConnector$1;
107
+ exports["default"] = ConditionConnector;
@@ -12,10 +12,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
12
12
  var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
13
13
  var React = require('react');
14
14
  var ConditionBuilderItem = require('../ConditionBuilderItem/ConditionBuilderItem.js');
15
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
16
15
  var ItemOption = require('../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js');
17
16
  var ConditionBuilderProvider = require('../ConditionBuilderContext/ConditionBuilderProvider.js');
18
17
  var useTranslations = require('../utils/useTranslations.js');
18
+ var util = require('../utils/util.js');
19
+ var useDataConfigs = require('../utils/useDataConfigs.js');
19
20
 
20
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
22
 
@@ -28,13 +29,15 @@ var GroupConnector = function GroupConnector() {
28
29
  var _useTranslations = useTranslations.useTranslations(['conditionText']),
29
30
  _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 1),
30
31
  conditionText = _useTranslations2[0];
32
+ var _useDataConfigs = useDataConfigs.useDataConfigs(),
33
+ connectorConfig = _useDataConfigs.connectorConfig;
31
34
  var onStatementChangeHandler = function onStatementChangeHandler(updatedStatement) {
32
35
  setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
33
36
  operator: updatedStatement
34
37
  }));
35
38
  };
36
39
  return /*#__PURE__*/React__default["default"].createElement("div", {
37
- className: "".concat(DataConfigs.blockClass, "__group-separator ").concat(DataConfigs.blockClass, "__group-separator-row"),
40
+ className: "".concat(util.blockClass, "__group-separator ").concat(util.blockClass, "__group-separator-row"),
38
41
  role: "row",
39
42
  tabIndex: -1,
40
43
  "aria-level": 1
@@ -42,8 +45,8 @@ var GroupConnector = function GroupConnector() {
42
45
  label: rootState.operator,
43
46
  title: conditionText,
44
47
  "data-name": "connectorField",
45
- popOverClassName: "".concat(DataConfigs.blockClass, "__gap"),
46
- className: "".concat(DataConfigs.blockClass, "__statement-button")
48
+ popOverClassName: "".concat(util.blockClass, "__gap"),
49
+ className: "".concat(util.blockClass, "__statement-button")
47
50
  }, /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
48
51
  conditionState: {
49
52
  value: rootState.operator,
@@ -51,7 +54,7 @@ var GroupConnector = function GroupConnector() {
51
54
  },
52
55
  onChange: onStatementChangeHandler,
53
56
  config: {
54
- options: DataConfigs.connectorConfig
57
+ options: connectorConfig
55
58
  }
56
59
  })));
57
60
  };
@@ -1,28 +1,48 @@
1
- export default ConditionBuilderContent;
2
- declare function ConditionBuilderContent({ startConditionLabel, getConditionState, getActionsState, initialState, actions, }: {
3
- startConditionLabel: any;
4
- getConditionState: any;
5
- getActionsState: any;
6
- initialState: any;
7
- actions: any;
8
- }): import("react/jsx-runtime").JSX.Element;
9
- declare namespace ConditionBuilderContent {
10
- namespace propTypes {
11
- let actions: PropTypes.Requireable<(PropTypes.InferProps<{
1
+ /**
2
+ * Copyright IBM Corp. 2024
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import PropTypes from 'prop-types';
8
+ import { Action, ConditionBuilderState } from '../ConditionBuilder.types';
9
+ interface ConditionBuilderContentProps {
10
+ startConditionLabel: string;
11
+ getConditionState: (state: ConditionBuilderState) => void;
12
+ getActionsState?: (state: Action[]) => void;
13
+ initialState?: ConditionBuilderState;
14
+ actions?: Action[];
15
+ }
16
+ declare const ConditionBuilderContent: {
17
+ ({ startConditionLabel, getConditionState, getActionsState, initialState, actions, }: ConditionBuilderContentProps): import("react/jsx-runtime").JSX.Element;
18
+ propTypes: {
19
+ /**
20
+ * optional array of object that give the list of actions.
21
+ */
22
+ actions: PropTypes.Requireable<(PropTypes.InferProps<{
12
23
  id: PropTypes.Validator<NonNullable<NonNullable<string | number | null | undefined>>>;
13
24
  label: PropTypes.Validator<string>;
14
25
  }> | null | undefined)[]>;
15
- let getActionsState: PropTypes.Requireable<(...args: any[]) => any>;
16
- let getConditionState: PropTypes.Validator<(...args: any[]) => any>;
17
- let initialState: PropTypes.Requireable<PropTypes.InferProps<{
26
+ /**
27
+ * callback functions that will provide the updated action state back.
28
+ */
29
+ getActionsState: PropTypes.Requireable<(...args: any[]) => any>;
30
+ /**
31
+ * This is a callback function that returns the updated state
32
+ */
33
+ getConditionState: PropTypes.Validator<(...args: any[]) => any>;
34
+ /**
35
+ * Optional prop if the condition building need to start from a predefined initial state
36
+ */
37
+ initialState: PropTypes.Requireable<PropTypes.InferProps<{
18
38
  groups: PropTypes.Requireable<(PropTypes.InferProps<{
19
- groupOperator: PropTypes.Validator<string>;
20
- statement: PropTypes.Validator<string>;
39
+ groupOperator: PropTypes.Requireable<string>;
40
+ statement: PropTypes.Requireable<string>;
21
41
  conditions: PropTypes.Requireable<(object | null | undefined)[]>;
22
42
  }> | null | undefined)[]>;
23
43
  operator: PropTypes.Requireable<string>;
24
44
  }>>;
25
- let startConditionLabel: PropTypes.Validator<string>;
26
- }
27
- }
28
- import PropTypes from 'prop-types';
45
+ startConditionLabel: PropTypes.Validator<string>;
46
+ };
47
+ };
48
+ export default ConditionBuilderContent;
@@ -16,13 +16,13 @@ var react = require('@carbon/react');
16
16
  var icons = require('@carbon/react/icons');
17
17
  var ConditionGroupBuilder = require('../ConditionGroupBuilder/ConditionGroupBuilder.js');
18
18
  var ConditionBuilderProvider = require('../ConditionBuilderContext/ConditionBuilderProvider.js');
19
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
20
19
  var ConditionBuilderButton = require('../ConditionBuilderButton/ConditionBuilderButton.js');
21
20
  var uuidv4 = require('../../../global/js/utils/uuidv4.js');
22
21
  var ConditionPreview = require('../ConditionPreview/ConditionPreview.js');
23
22
  var GroupConnector = require('../ConditionBuilderConnector/GroupConnector.js');
24
23
  var ConditionBuilderActions = require('../ConditionBuilderActions/ConditionBuilderActions.js');
25
24
  var useTranslations = require('../utils/useTranslations.js');
25
+ var util = require('../utils/util.js');
26
26
 
27
27
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
28
28
 
@@ -30,7 +30,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
30
30
 
31
31
  var _GroupConnector;
32
32
  var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
33
- var _rootState$groups3;
33
+ var _rootState$groups4;
34
34
  var startConditionLabel = _ref.startConditionLabel,
35
35
  getConditionState = _ref.getConditionState,
36
36
  getActionsState = _ref.getActionsState,
@@ -49,10 +49,11 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
49
49
  _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
50
50
  showConditionGroupPreview = _useState4[0],
51
51
  setShowConditionGroupPreview = _useState4[1];
52
- var _useTranslations = useTranslations.useTranslations(['addConditionGroupText', 'conditionHeadingText']),
53
- _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 2),
52
+ var _useTranslations = useTranslations.useTranslations(['addConditionGroupText', 'conditionHeadingText', 'conditionBuilderHierarchicalText']),
53
+ _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 3),
54
54
  addConditionGroupText = _useTranslations2[0],
55
- conditionHeadingText = _useTranslations2[1];
55
+ conditionHeadingText = _useTranslations2[1],
56
+ conditionBuilderHierarchicalText = _useTranslations2[2];
56
57
  var showConditionGroupPreviewHandler = function showConditionGroupPreviewHandler() {
57
58
  setShowConditionGroupPreview(true);
58
59
  };
@@ -67,26 +68,27 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
67
68
  setIsConditionBuilderActive(false);
68
69
  }
69
70
  if (getConditionState) {
70
- getConditionState(rootState);
71
+ getConditionState(rootState !== null && rootState !== void 0 ? rootState : {});
71
72
  }
72
73
 
73
74
  // eslint-disable-next-line react-hooks/exhaustive-deps
74
75
  }, [rootState]);
75
76
  React.useEffect(function () {
76
- getActionsState === null || getActionsState === void 0 || getActionsState(actionState);
77
+ getActionsState === null || getActionsState === void 0 || getActionsState(actionState !== null && actionState !== void 0 ? actionState : []);
77
78
  // eslint-disable-next-line react-hooks/exhaustive-deps
78
79
  }, [actionState]);
79
80
  var onStartConditionBuilder = function onStartConditionBuilder() {
80
81
  //when add condition button is clicked.
81
82
  setIsConditionBuilderActive(true);
82
- setRootState(initialState !== null && initialState !== void 0 ? initialState : ConditionBuilderProvider.emptyState); //here we can set an empty skeleton object for an empty condition builder,
83
+ setRootState === null || setRootState === void 0 || setRootState(initialState !== null && initialState !== void 0 ? initialState : ConditionBuilderProvider.emptyState); //here we can set an empty skeleton object for an empty condition builder,
83
84
  //or we can even pre-populate some existing builder and continue editing
84
85
  };
85
86
  var _onRemove = React.useCallback(function (groupId) {
86
- setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
87
- groups: rootState.groups.filter(function (group) {
88
- return groupId !== group.id;
89
- })
87
+ var _rootState$groups2;
88
+ setRootState === null || setRootState === void 0 || setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
89
+ groups: rootState ? rootState === null || rootState === void 0 || (_rootState$groups2 = rootState.groups) === null || _rootState$groups2 === void 0 ? void 0 : _rootState$groups2.filter(function (group) {
90
+ return groupId !== (group === null || group === void 0 ? void 0 : group.id);
91
+ }) : []
90
92
  }));
91
93
  }, [setRootState, rootState]);
92
94
  var onChangeHandler = function onChangeHandler(updatedGroup, groupIndex) {
@@ -94,17 +96,18 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
94
96
  * This method is triggered from inner components. This will be called every time when any change is to be updated in the rootState.
95
97
  * This gets the updated group as argument.
96
98
  */
97
- var groups = [].concat(_rollupPluginBabelHelpers.toConsumableArray(rootState.groups.slice(0, groupIndex)), [updatedGroup], _rollupPluginBabelHelpers.toConsumableArray(rootState.groups.slice(groupIndex + 1)));
98
- setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
99
- groups: groups
100
- }));
99
+ if (rootState && rootState.groups) {
100
+ var groups = [].concat(_rollupPluginBabelHelpers.toConsumableArray(rootState.groups ? rootState.groups.slice(0, groupIndex) : []), [updatedGroup], _rollupPluginBabelHelpers.toConsumableArray(rootState.groups ? rootState.groups.slice(groupIndex + 1) : []));
101
+ setRootState === null || setRootState === void 0 || setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
102
+ groups: groups
103
+ }));
104
+ }
101
105
  };
102
106
  var addConditionGroupHandler = function addConditionGroupHandler() {
103
107
  var newGroup = {
104
- groupOperator: 'and',
105
- //'and|or',
106
- statement: 'if',
108
+ statement: 'ifAll',
107
109
  // 'if|exclude if',
110
+ groupOperator: 'and',
108
111
  id: uuidv4["default"](),
109
112
  conditions: [{
110
113
  property: undefined,
@@ -114,18 +117,18 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
114
117
  id: uuidv4["default"]()
115
118
  }]
116
119
  };
117
- setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
118
- groups: [].concat(_rollupPluginBabelHelpers.toConsumableArray(rootState.groups), [newGroup])
120
+ setRootState === null || setRootState === void 0 || setRootState(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rootState), {}, {
121
+ groups: rootState && rootState.groups ? [].concat(_rollupPluginBabelHelpers.toConsumableArray(rootState.groups), [newGroup]) : [newGroup]
119
122
  }));
120
123
  };
121
124
  var getColorIndex = function getColorIndex() {
122
- var _rootState$groups$len, _rootState$groups2;
123
- var groupLength = (_rootState$groups$len = rootState === null || rootState === void 0 || (_rootState$groups2 = rootState.groups) === null || _rootState$groups2 === void 0 ? void 0 : _rootState$groups2.length) !== null && _rootState$groups$len !== void 0 ? _rootState$groups$len : 0;
125
+ var _rootState$groups$len, _rootState$groups3;
126
+ var groupLength = (_rootState$groups$len = rootState === null || rootState === void 0 || (_rootState$groups3 = rootState.groups) === null || _rootState$groups3 === void 0 ? void 0 : _rootState$groups3.length) !== null && _rootState$groups$len !== void 0 ? _rootState$groups$len : 0;
124
127
  return groupLength % 5;
125
128
  };
126
129
  if (!isConditionBuilderActive) {
127
130
  return /*#__PURE__*/React__default["default"].createElement(react.Button, {
128
- className: "".concat(DataConfigs.blockClass, "__addConditionText-button"),
131
+ className: "".concat(util.blockClass, "__addConditionText-button"),
129
132
  renderIcon: function renderIcon(props) {
130
133
  return /*#__PURE__*/React__default["default"].createElement(icons.Add, props);
131
134
  },
@@ -136,22 +139,23 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
136
139
  }, startConditionLabel);
137
140
  }
138
141
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(react.Section, {
139
- className: "".concat(DataConfigs.blockClass, "__heading"),
142
+ className: "".concat(util.blockClass, "__heading"),
140
143
  level: 4
141
144
  }, /*#__PURE__*/React__default["default"].createElement(react.Heading, null, conditionHeadingText)), /*#__PURE__*/React__default["default"].createElement("div", {
142
- className: "".concat(DataConfigs.blockClass, "__content-container"),
145
+ className: "".concat(util.blockClass, "__content-container"),
143
146
  role: "treegrid",
144
- "aria-label": "condition builder tree"
145
- }, rootState && (rootState === null || rootState === void 0 || (_rootState$groups3 = rootState.groups) === null || _rootState$groups3 === void 0 ? void 0 : _rootState$groups3.map(function (eachGroup, groupIndex) {
147
+ "aria-label": conditionBuilderHierarchicalText
148
+ }, rootState && (rootState === null || rootState === void 0 || (_rootState$groups4 = rootState.groups) === null || _rootState$groups4 === void 0 ? void 0 : _rootState$groups4.map(function (eachGroup, groupIndex) {
149
+ var _ref2;
146
150
  return /*#__PURE__*/React__default["default"].createElement("div", {
147
151
  key: eachGroup.id,
148
- className: "".concat(DataConfigs.blockClass, "__group-wrapper")
152
+ className: "".concat(util.blockClass, "__group-wrapper")
149
153
  }, /*#__PURE__*/React__default["default"].createElement(ConditionGroupBuilder["default"], {
150
- className: "".concat(DataConfigs.blockClass, "__group"),
154
+ className: "".concat(util.blockClass, "__group"),
151
155
  aria: {
152
156
  level: 1,
153
157
  posinset: groupIndex * 2 + 1,
154
- setsize: rootState.groups.length * 2
158
+ setsize: (_ref2 = rootState.groups && rootState.groups.length * 2) !== null && _ref2 !== void 0 ? _ref2 : 0
155
159
  },
156
160
  group: eachGroup,
157
161
  onRemove: function onRemove() {
@@ -160,12 +164,12 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
160
164
  onChange: function onChange(updatedGroup) {
161
165
  onChangeHandler(updatedGroup, groupIndex);
162
166
  }
163
- }), groupIndex < rootState.groups.length - 1 && (_GroupConnector || (_GroupConnector = /*#__PURE__*/React__default["default"].createElement(GroupConnector["default"], null))));
164
- })), variant == 'tree' && /*#__PURE__*/React__default["default"].createElement("div", {
167
+ }), rootState.groups && groupIndex < rootState.groups.length - 1 && (_GroupConnector || (_GroupConnector = /*#__PURE__*/React__default["default"].createElement(GroupConnector["default"], null))));
168
+ })), variant == util.HIERARCHICAL_VARIANT && /*#__PURE__*/React__default["default"].createElement("div", {
165
169
  role: "row",
166
170
  tabIndex: -1,
167
171
  "aria-level": 1,
168
- className: "".concat(DataConfigs.blockClass, "__add-group")
172
+ className: "".concat(util.blockClass, "__add-group")
169
173
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, {
170
174
  renderIcon: icons.TextNewLine,
171
175
  onClick: addConditionGroupHandler,
@@ -173,7 +177,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
173
177
  onMouseLeave: hideConditionGroupPreviewHandler,
174
178
  onFocus: showConditionGroupPreviewHandler,
175
179
  onBlur: hideConditionGroupPreviewHandler,
176
- className: "".concat(DataConfigs.blockClass, "__add-condition-group "),
180
+ className: "".concat(util.blockClass, "__add-condition-group "),
177
181
  hideLabel: true,
178
182
  label: addConditionGroupText,
179
183
  wrapperProps: {
@@ -184,15 +188,14 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
184
188
  previewType: "newGroup",
185
189
  colorIndex: getColorIndex(),
186
190
  group: {
187
- groupOperator: rootState.operator
191
+ groupOperator: rootState === null || rootState === void 0 ? void 0 : rootState.operator,
192
+ id: uuidv4["default"]()
188
193
  }
189
194
  })), actions && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderActions["default"], {
190
195
  actions: actions,
191
- className: "".concat(DataConfigs.blockClass, "__actions-container"),
192
- variant: variant
196
+ className: "".concat(util.blockClass, "__actions-container")
193
197
  }));
194
198
  };
195
- var ConditionBuilderContent$1 = ConditionBuilderContent;
196
199
  ConditionBuilderContent.propTypes = {
197
200
  /**
198
201
  * optional array of object that give the list of actions.
@@ -214,11 +217,11 @@ ConditionBuilderContent.propTypes = {
214
217
  */
215
218
  initialState: index["default"].shape({
216
219
  groups: index["default"].arrayOf(index["default"].shape({
217
- groupOperator: index["default"].string.isRequired,
218
- statement: index["default"].string.isRequired,
220
+ groupOperator: index["default"].string,
221
+ statement: index["default"].string,
219
222
  conditions: index["default"].arrayOf(index["default"].oneOfType([index["default"].shape({
220
- property: index["default"].string.isRequired,
221
- operator: index["default"].string.isRequired,
223
+ property: index["default"].string,
224
+ operator: index["default"].string,
222
225
  value: index["default"].oneOfType([index["default"].string, index["default"].arrayOf(index["default"].shape({
223
226
  id: index["default"].string,
224
227
  label: index["default"].string
@@ -235,4 +238,4 @@ ConditionBuilderContent.propTypes = {
235
238
  startConditionLabel: index["default"].string.isRequired
236
239
  };
237
240
 
238
- exports["default"] = ConditionBuilderContent$1;
241
+ exports["default"] = ConditionBuilderContent;
@@ -1,50 +1,11 @@
1
- export namespace emptyState {
2
- let operator: string;
3
- let groups: {
4
- groupOperator: string;
5
- statement: string;
6
- id: any;
7
- conditions: {
8
- property: undefined;
9
- operator: string;
10
- value: string;
11
- popoverToOpen: string;
12
- id: any;
13
- }[];
14
- }[];
15
- }
16
- export const ConditionBuilderContext: React.Context<any>;
17
- export function ConditionBuilderProvider(props: any): import("react/jsx-runtime").JSX.Element;
18
- export namespace ConditionBuilderProvider {
19
- namespace propTypes {
20
- let children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
21
- let conditionBuilderRef: PropTypes.Requireable<object>;
22
- let getOptions: PropTypes.Requireable<(...args: any[]) => any>;
23
- let inputConfig: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
24
- properties: PropTypes.Requireable<(PropTypes.InferProps<{
25
- id: PropTypes.Validator<string>;
26
- label: PropTypes.Validator<string>;
27
- icon: PropTypes.Requireable<object>;
28
- type: PropTypes.Validator<string>;
29
- config: PropTypes.Requireable<PropTypes.InferProps<{
30
- options: PropTypes.Requireable<(PropTypes.InferProps<{
31
- id: PropTypes.Validator<string>;
32
- label: PropTypes.Validator<string>;
33
- icon: PropTypes.Requireable<object>;
34
- }> | null | undefined)[]>;
35
- component: PropTypes.Requireable<(...args: any[]) => any>;
36
- operators: PropTypes.Requireable<(PropTypes.InferProps<{
37
- id: PropTypes.Validator<string>;
38
- label: PropTypes.Validator<string>;
39
- }> | null | undefined)[]>;
40
- long: PropTypes.Requireable<boolean>;
41
- }>>;
42
- }> | null | undefined)[]>;
43
- }>>>;
44
- let popOverSearchThreshold: PropTypes.Validator<number>;
45
- let translateWithId: PropTypes.Requireable<(...args: any[]) => any>;
46
- let variant: PropTypes.Validator<string>;
47
- }
48
- }
1
+ /**
2
+ * Copyright IBM Corp. 2024
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
49
7
  import React from 'react';
50
- import PropTypes from 'prop-types';
8
+ import { ConditionBuilderContextProps, ConditionBuilderState } from '../ConditionBuilder.types';
9
+ export declare const emptyState: ConditionBuilderState;
10
+ export declare const ConditionBuilderContext: React.Context<ConditionBuilderContextProps>;
11
+ export declare const ConditionBuilderProvider: React.FC<ConditionBuilderContextProps>;
@@ -22,7 +22,7 @@ var emptyState = {
22
22
  operator: 'or',
23
23
  groups: [{
24
24
  groupOperator: 'and',
25
- statement: 'if',
25
+ statement: 'ifAll',
26
26
  id: uuidv4["default"](),
27
27
  conditions: [{
28
28
  property: undefined,
@@ -33,23 +33,11 @@ var emptyState = {
33
33
  }]
34
34
  }]
35
35
  };
36
- var ConditionBuilderContext = /*#__PURE__*/React.createContext();
37
-
38
- // const rootReducer=(state,action)=>{
39
- // switch(action.type){
40
- // case 'update':
41
- // ;
42
- // return {
43
- // ...state,
44
- // ...action.payload
45
- // }
46
- // break;
47
- // default:
48
- // return state;
49
- // }
50
-
51
- // }
52
-
36
+ var ConditionBuilderContext = /*#__PURE__*/React.createContext({
37
+ rootState: {
38
+ groups: []
39
+ }
40
+ });
53
41
  var ConditionBuilderProvider = function ConditionBuilderProvider(props) {
54
42
  var _useState = React.useState({
55
43
  groups: []
@@ -61,19 +49,20 @@ var ConditionBuilderProvider = function ConditionBuilderProvider(props) {
61
49
  _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
62
50
  actionState = _useState4[0],
63
51
  setActionState = _useState4[1];
52
+ var contextValue = {
53
+ rootState: rootState,
54
+ setRootState: setRootState,
55
+ actionState: actionState,
56
+ setActionState: setActionState,
57
+ inputConfig: props.inputConfig,
58
+ popOverSearchThreshold: props.popOverSearchThreshold,
59
+ getOptions: props.getOptions,
60
+ variant: props.variant,
61
+ translateWithId: props.translateWithId,
62
+ conditionBuilderRef: props.conditionBuilderRef
63
+ };
64
64
  return /*#__PURE__*/React__default["default"].createElement(ConditionBuilderContext.Provider, {
65
- value: {
66
- rootState: rootState,
67
- setRootState: setRootState,
68
- actionState: actionState,
69
- setActionState: setActionState,
70
- inputConfig: props.inputConfig,
71
- popOverSearchThreshold: props.popOverSearchThreshold,
72
- getOptions: props.getOptions,
73
- variant: props.variant,
74
- translateWithId: props.translateWithId,
75
- conditionBuilderRef: props.conditionBuilderRef
76
- }
65
+ value: contextValue
77
66
  },
78
67
  // eslint-disable-next-line react/prop-types
79
68
  props.children);
@@ -86,6 +75,7 @@ ConditionBuilderProvider.propTypes = {
86
75
  /**
87
76
  * ref of condition builder
88
77
  */
78
+ /**@ts-ignore */
89
79
  conditionBuilderRef: index["default"].object,
90
80
  /**
91
81
  * This is an optional callback function that will be triggered when options array is not passed in the inputConfig against a property.
@@ -101,6 +91,7 @@ ConditionBuilderProvider.propTypes = {
101
91
  * This is a mandatory prop that defines the input to the condition builder.
102
92
 
103
93
  */
94
+ /**@ts-ignore */
104
95
  inputConfig: index["default"].shape({
105
96
  properties: index["default"].arrayOf(index["default"].shape({
106
97
  id: index["default"].string.isRequired,
@@ -134,7 +125,7 @@ ConditionBuilderProvider.propTypes = {
134
125
  */
135
126
  translateWithId: index["default"].func,
136
127
  /**
137
- * Provide the condition builder variant: sentence/ tree
128
+ * Provide the condition builder variant: Non-Hierarchical/ Hierarchical
138
129
  */
139
130
  variant: index["default"].string.isRequired
140
131
  };