@carbon/ibm-products 2.43.2-canary.173 → 2.43.2-canary.176

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. package/css/index-full-carbon.css +9 -1
  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.css +9 -1
  6. package/css/index-without-carbon.css.map +1 -1
  7. package/css/index-without-carbon.min.css +1 -1
  8. package/css/index-without-carbon.min.css.map +1 -1
  9. package/css/index.css +9 -1
  10. package/css/index.css.map +1 -1
  11. package/css/index.min.css +1 -1
  12. package/css/index.min.css.map +1 -1
  13. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +7 -3
  14. package/es/components/ConditionBuilder/ConditionBuilder.js +2 -1
  15. package/es/components/ConditionBuilder/ConditionBuilder.types.d.ts +2 -1
  16. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +1 -1
  17. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +1 -1
  18. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +3 -1
  19. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +1 -1
  20. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +4 -2
  21. package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +4 -1
  22. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +2 -2
  23. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +1 -1
  24. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +5 -0
  25. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +5 -0
  26. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +9 -3
  27. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +1 -2
  28. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +1 -1
  29. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +3 -1
  30. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +11 -5
  31. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +1 -1
  32. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +1 -2
  33. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  34. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +7 -4
  35. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +1 -1
  36. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +1 -2
  37. package/es/components/ConditionBuilder/utils/useDataConfigs.d.ts +18 -0
  38. package/es/components/ConditionBuilder/utils/useDataConfigs.js +120 -0
  39. package/es/components/ConditionBuilder/utils/useTranslations.d.ts +1 -1
  40. package/es/components/ConditionBuilder/utils/useTranslations.js +4 -1
  41. package/es/components/ConditionBuilder/utils/util.d.ts +12 -0
  42. package/es/components/ConditionBuilder/utils/util.js +48 -2
  43. package/es/global/js/hooks/useFocus.d.ts +1 -1
  44. package/es/global/js/hooks/useFocus.js +40 -24
  45. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +17 -13
  46. package/lib/components/ConditionBuilder/ConditionBuilder.js +5 -4
  47. package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts +2 -1
  48. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +9 -9
  49. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +6 -6
  50. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +3 -1
  51. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +3 -3
  52. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +7 -5
  53. package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +8 -5
  54. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +11 -11
  55. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +1 -1
  56. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +5 -0
  57. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +5 -0
  58. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +13 -7
  59. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +2 -3
  60. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +2 -2
  61. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +3 -1
  62. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +17 -11
  63. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +12 -12
  64. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +1 -2
  65. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +2 -2
  66. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +20 -17
  67. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +17 -17
  68. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +8 -9
  69. package/lib/components/ConditionBuilder/utils/useDataConfigs.d.ts +18 -0
  70. package/lib/components/ConditionBuilder/utils/useDataConfigs.js +124 -0
  71. package/lib/components/ConditionBuilder/utils/useTranslations.d.ts +1 -1
  72. package/lib/components/ConditionBuilder/utils/useTranslations.js +4 -1
  73. package/lib/components/ConditionBuilder/utils/util.d.ts +12 -0
  74. package/lib/components/ConditionBuilder/utils/util.js +53 -3
  75. package/lib/global/js/hooks/useFocus.d.ts +1 -1
  76. package/lib/global/js/hooks/useFocus.js +40 -24
  77. package/package.json +3 -3
  78. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +10 -1
  79. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +0 -30
  80. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +0 -125
  81. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +0 -30
  82. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +0 -135
@@ -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
 
@@ -105,7 +105,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
105
105
  };
106
106
  var addConditionGroupHandler = function addConditionGroupHandler() {
107
107
  var newGroup = {
108
- statement: 'if',
108
+ statement: 'ifAll',
109
109
  // 'if|exclude if',
110
110
  groupOperator: 'and',
111
111
  id: uuidv4["default"](),
@@ -128,7 +128,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
128
128
  };
129
129
  if (!isConditionBuilderActive) {
130
130
  return /*#__PURE__*/React__default["default"].createElement(react.Button, {
131
- className: "".concat(DataConfigs.blockClass, "__addConditionText-button"),
131
+ className: "".concat(util.blockClass, "__addConditionText-button"),
132
132
  renderIcon: function renderIcon(props) {
133
133
  return /*#__PURE__*/React__default["default"].createElement(icons.Add, props);
134
134
  },
@@ -139,19 +139,19 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
139
139
  }, startConditionLabel);
140
140
  }
141
141
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(react.Section, {
142
- className: "".concat(DataConfigs.blockClass, "__heading"),
142
+ className: "".concat(util.blockClass, "__heading"),
143
143
  level: 4
144
144
  }, /*#__PURE__*/React__default["default"].createElement(react.Heading, null, conditionHeadingText)), /*#__PURE__*/React__default["default"].createElement("div", {
145
- className: "".concat(DataConfigs.blockClass, "__content-container"),
145
+ className: "".concat(util.blockClass, "__content-container"),
146
146
  role: "treegrid",
147
147
  "aria-label": conditionBuilderHierarchicalText
148
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
149
  var _ref2;
150
150
  return /*#__PURE__*/React__default["default"].createElement("div", {
151
151
  key: eachGroup.id,
152
- className: "".concat(DataConfigs.blockClass, "__group-wrapper")
152
+ className: "".concat(util.blockClass, "__group-wrapper")
153
153
  }, /*#__PURE__*/React__default["default"].createElement(ConditionGroupBuilder["default"], {
154
- className: "".concat(DataConfigs.blockClass, "__group"),
154
+ className: "".concat(util.blockClass, "__group"),
155
155
  aria: {
156
156
  level: 1,
157
157
  posinset: groupIndex * 2 + 1,
@@ -165,11 +165,11 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
165
165
  onChangeHandler(updatedGroup, groupIndex);
166
166
  }
167
167
  }), rootState.groups && groupIndex < rootState.groups.length - 1 && (_GroupConnector || (_GroupConnector = /*#__PURE__*/React__default["default"].createElement(GroupConnector["default"], null))));
168
- })), variant == DataConfigs.HIERARCHICAL_VARIANT && /*#__PURE__*/React__default["default"].createElement("div", {
168
+ })), variant == util.HIERARCHICAL_VARIANT && /*#__PURE__*/React__default["default"].createElement("div", {
169
169
  role: "row",
170
170
  tabIndex: -1,
171
171
  "aria-level": 1,
172
- className: "".concat(DataConfigs.blockClass, "__add-group")
172
+ className: "".concat(util.blockClass, "__add-group")
173
173
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, {
174
174
  renderIcon: icons.TextNewLine,
175
175
  onClick: addConditionGroupHandler,
@@ -177,7 +177,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
177
177
  onMouseLeave: hideConditionGroupPreviewHandler,
178
178
  onFocus: showConditionGroupPreviewHandler,
179
179
  onBlur: hideConditionGroupPreviewHandler,
180
- className: "".concat(DataConfigs.blockClass, "__add-condition-group "),
180
+ className: "".concat(util.blockClass, "__add-condition-group "),
181
181
  hideLabel: true,
182
182
  label: addConditionGroupText,
183
183
  wrapperProps: {
@@ -193,7 +193,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
193
193
  }
194
194
  })), actions && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderActions["default"], {
195
195
  actions: actions,
196
- className: "".concat(DataConfigs.blockClass, "__actions-container")
196
+ className: "".concat(util.blockClass, "__actions-container")
197
197
  }));
198
198
  };
199
199
  ConditionBuilderContent.propTypes = {
@@ -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,
@@ -1,9 +1,14 @@
1
1
  export namespace translationsObject {
2
2
  let ifText: string;
3
+ let unlessText: string;
3
4
  let excl_if: string;
4
5
  let and: string;
5
6
  let or: string;
6
7
  let is: string;
8
+ let ifAll: string;
9
+ let ifAny: string;
10
+ let unlessAll: string;
11
+ let unlessAny: string;
7
12
  let greater: string;
8
13
  let greaterEqual: string;
9
14
  let lower: string;
@@ -11,10 +11,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
11
11
 
12
12
  var translationsObject = {
13
13
  ifText: 'if',
14
+ unlessText: 'unless',
14
15
  excl_if: 'excl.if',
15
16
  and: 'and',
16
17
  or: 'or',
17
18
  is: 'is',
19
+ ifAll: 'if all',
20
+ ifAny: 'if any',
21
+ unlessAll: 'unless all',
22
+ unlessAny: 'unless any',
18
23
  greater: 'is greater than',
19
24
  greaterEqual: 'is greater than or equal to',
20
25
  lower: 'is lower than',
@@ -14,11 +14,11 @@ var React = require('react');
14
14
  var react = require('@carbon/react');
15
15
  var index = require('../../../node_modules/prop-types/index.js');
16
16
  var icons = require('@carbon/react/icons');
17
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
18
17
  var ConditionBuilderButton = require('../ConditionBuilderButton/ConditionBuilderButton.js');
19
18
  var useTranslations = require('../utils/useTranslations.js');
20
19
  var ConditionBuilderProvider = require('../ConditionBuilderContext/ConditionBuilderProvider.js');
21
20
  var handleKeyboardEvents = require('../utils/handleKeyboardEvents.js');
21
+ var util = require('../utils/util.js');
22
22
 
23
23
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
24
24
 
@@ -44,7 +44,13 @@ var ConditionBuilderItem = function ConditionBuilderItem(_ref) {
44
44
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
45
45
  open = _useState2[0],
46
46
  setOpen = _useState2[1];
47
- var _useTranslations = useTranslations.useTranslations(['invalidText', 'addConditionText', 'addPropertyText', 'addOperatorText', 'addValueText', label]),
47
+ var statementIdMap = {
48
+ ifAll: 'if',
49
+ ifAny: 'if',
50
+ unlessAll: 'unless',
51
+ unlessAny: 'unless'
52
+ };
53
+ var _useTranslations = useTranslations.useTranslations(['invalidText', 'addConditionText', 'addPropertyText', 'addOperatorText', 'addValueText', label], statementIdMap),
48
54
  _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 6),
49
55
  invalidText = _useTranslations2[0],
50
56
  addConditionText = _useTranslations2[1],
@@ -64,7 +70,7 @@ var ConditionBuilderItem = function ConditionBuilderItem(_ref) {
64
70
  isInvalid: true
65
71
  };
66
72
  }
67
- var propertyId = rest['data-name'] == 'valueField' && type ? DataConfigs.valueRenderers[type](label, config) : labelText;
73
+ var propertyId = rest['data-name'] == 'valueField' && type ? util.getValue[type](label, config) : labelText;
68
74
  return {
69
75
  isInvalid: false,
70
76
  propertyLabel: propertyId
@@ -154,7 +160,7 @@ var ConditionBuilderItem = function ConditionBuilderItem(_ref) {
154
160
  open: open,
155
161
  isTabTip: true,
156
162
  role: "gridcell",
157
- className: "".concat(popOverClassName, " ").concat(DataConfigs.blockClass, "__popover"),
163
+ className: "".concat(popOverClassName, " ").concat(util.blockClass, "__popover"),
158
164
  ref: popoverRef,
159
165
  onRequestClose: closePopover
160
166
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, _rollupPluginBabelHelpers["extends"]({
@@ -168,14 +174,14 @@ var ConditionBuilderItem = function ConditionBuilderItem(_ref) {
168
174
  showToolTip: showToolTip,
169
175
  isInvalid: isInvalid
170
176
  }, rest)), open && /*#__PURE__*/React__default["default"].createElement(react.PopoverContent, {
171
- className: "".concat(DataConfigs.blockClass, "__popover-content-wrapper"),
177
+ className: "".concat(util.blockClass, "__popover-content-wrapper"),
172
178
  role: "dialog",
173
179
  "aria-label": title,
174
180
  onKeyDown: handleKeyDownHandler
175
181
  }, /*#__PURE__*/React__default["default"].createElement(react.Layer, null, /*#__PURE__*/React__default["default"].createElement("h1", {
176
- className: "".concat(DataConfigs.blockClass, "__item__title")
182
+ className: "".concat(util.blockClass, "__item__title")
177
183
  }, title), /*#__PURE__*/React__default["default"].createElement("div", {
178
- className: "".concat(DataConfigs.blockClass, "__popover-content")
184
+ className: "".concat(util.blockClass, "__popover-content")
179
185
  }, renderChildren ? renderChildren(popoverRef) : children))));
180
186
  };
181
187
  ConditionBuilderItem.propTypes = {
@@ -12,15 +12,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
12
12
  var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
13
13
  var React = require('react');
14
14
  var react = require('@carbon/react');
15
- var settings = require('../../../../settings.js');
16
15
  var index = require('../../../../node_modules/prop-types/index.js');
17
16
  var useTranslations = require('../../utils/useTranslations.js');
17
+ var util = require('../../utils/util.js');
18
18
 
19
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
20
 
21
21
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
22
 
23
- var blockClass = "".concat(settings.pkg.prefix, "--condition-builder");
24
23
  var ConditionBuilderItemDate = function ConditionBuilderItemDate(_ref) {
25
24
  var conditionState = _ref.conditionState,
26
25
  onChange = _ref.onChange,
@@ -35,7 +34,7 @@ var ConditionBuilderItemDate = function ConditionBuilderItemDate(_ref) {
35
34
  onChange(selectedDate && selectedDate.length > 0 ? selectedDate : 'INVALID');
36
35
  };
37
36
  return /*#__PURE__*/React__default["default"].createElement("div", {
38
- className: "".concat(blockClass, "__item-date ")
37
+ className: "".concat(util.blockClass, "__item-date ")
39
38
  }, datePickerType == 'single' && /*#__PURE__*/React__default["default"].createElement(react.DatePicker, {
40
39
  ref: DatePickerInputRef,
41
40
  dateFormat: "d/m/Y",
@@ -13,8 +13,8 @@ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabel
13
13
  var React = require('react');
14
14
  var react = require('@carbon/react');
15
15
  var index = require('../../../../node_modules/prop-types/index.js');
16
- var DataConfigs = require('../../ConditionBuilderContext/DataConfigs.js');
17
16
  var useTranslations = require('../../utils/useTranslations.js');
17
+ var util = require('../../utils/util.js');
18
18
 
19
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
20
 
@@ -54,7 +54,7 @@ var ConditionBuilderItemNumber = function ConditionBuilderItemNumber(_ref) {
54
54
  return (_split$ = (_conditionState$value = conditionState.value) === null || _conditionState$value === void 0 || (_conditionState$value = _conditionState$value.split(' ')) === null || _conditionState$value === void 0 ? void 0 : _conditionState$value[0]) !== null && _split$ !== void 0 ? _split$ : '';
55
55
  };
56
56
  return /*#__PURE__*/React__default["default"].createElement("div", {
57
- className: "".concat(DataConfigs.blockClass, "__item-number")
57
+ className: "".concat(util.blockClass, "__item-number")
58
58
  }, /*#__PURE__*/React__default["default"].createElement(react.NumberInput, _rollupPluginBabelHelpers["extends"]({}, config, {
59
59
  label: conditionState.property,
60
60
  hideLabel: true,
@@ -11,7 +11,9 @@ interface ItemOptionProps {
11
11
  label?: string;
12
12
  value?: string;
13
13
  };
14
- config: PropertyConfigOption['config'];
14
+ config: PropertyConfigOption['config'] & {
15
+ isStatement?: boolean;
16
+ };
15
17
  onChange: (value: string, e: Event) => void;
16
18
  }
17
19
  export declare const ItemOption: {
@@ -15,8 +15,8 @@ var react = require('@carbon/react');
15
15
  var icons = require('@carbon/react/icons');
16
16
  var index = require('../../../../node_modules/prop-types/index.js');
17
17
  var ConditionBuilderProvider = require('../../ConditionBuilderContext/ConditionBuilderProvider.js');
18
- var DataConfigs = require('../../ConditionBuilderContext/DataConfigs.js');
19
18
  var useTranslations = require('../../utils/useTranslations.js');
19
+ var util = require('../../utils/util.js');
20
20
 
21
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
22
 
@@ -41,9 +41,10 @@ var ItemOption = function ItemOption(_ref) {
41
41
  searchValue = _useState2[0],
42
42
  setSearchValue = _useState2[1];
43
43
  var selection = conditionState.value;
44
- var filteredItems = allOptions === null || allOptions === void 0 ? void 0 : allOptions.filter(function (opt) {
45
- return opt.label.toLowerCase().includes(searchValue.toLowerCase());
46
- });
44
+ var filteredItems = searchValue ? allOptions === null || allOptions === void 0 ? void 0 : allOptions.filter(function (opt) {
45
+ var _opt$label;
46
+ return (_opt$label = opt.label) === null || _opt$label === void 0 ? void 0 : _opt$label.toLowerCase().includes(searchValue.toLowerCase());
47
+ }) : allOptions;
47
48
  React.useEffect(function () {
48
49
  //this will focus the first input field in the popover
49
50
 
@@ -65,14 +66,19 @@ var ItemOption = function ItemOption(_ref) {
65
66
  var getAriaLabel = function getAriaLabel() {
66
67
  return conditionState.label ? conditionState.label : propertyText;
67
68
  };
69
+ var getStatementContent = function getStatementContent(option) {
70
+ return /*#__PURE__*/React__default["default"].createElement("div", {
71
+ className: "".concat(util.blockClass, "__statement_wrapper")
72
+ }, /*#__PURE__*/React__default["default"].createElement("div", null, option.text1, " (", option.connector, ")"), /*#__PURE__*/React__default["default"].createElement("div", null, option.text2));
73
+ };
68
74
  if (!allOptions) {
69
75
  return;
70
76
  }
71
77
  return /*#__PURE__*/React__default["default"].createElement("div", {
72
- className: "".concat(DataConfigs.blockClass, "__item-option"),
78
+ className: "".concat(util.blockClass, "__item-option"),
73
79
  ref: contentRef
74
80
  }, popOverSearchThreshold && allOptions.length > popOverSearchThreshold && /*#__PURE__*/React__default["default"].createElement("div", {
75
- className: "".concat(DataConfigs.blockClass, "__item-option__search")
81
+ className: "".concat(util.blockClass, "__item-option__search")
76
82
  }, /*#__PURE__*/React__default["default"].createElement(react.Search, {
77
83
  size: "sm",
78
84
  labelText: clearSearchText,
@@ -89,7 +95,7 @@ var ItemOption = function ItemOption(_ref) {
89
95
  key: option.id,
90
96
  role: "option",
91
97
  "aria-selected": isSelected,
92
- className: "".concat(DataConfigs.blockClass, "__item-option__option"),
98
+ className: "".concat(util.blockClass, "__item-option__option"),
93
99
  onKeyUp: function onKeyUp() {
94
100
  return false;
95
101
  },
@@ -97,11 +103,11 @@ var ItemOption = function ItemOption(_ref) {
97
103
  return onClickHandler(evt, option);
98
104
  }
99
105
  }, /*#__PURE__*/React__default["default"].createElement("div", {
100
- className: "".concat(DataConfigs.blockClass, "__item-option__option-content")
106
+ className: "".concat(util.blockClass, "__item-option__option-content")
101
107
  }, /*#__PURE__*/React__default["default"].createElement("span", {
102
- className: "".concat(DataConfigs.blockClass, "__item-option__option-label")
103
- }, Icon && /*#__PURE__*/React__default["default"].createElement(Icon, null), option.label), isSelected && /*#__PURE__*/React__default["default"].createElement(icons.Checkmark, {
104
- className: "".concat(DataConfigs.blockClass, "__checkmark")
108
+ className: "".concat(util.blockClass, "__item-option__option-label")
109
+ }, Icon && /*#__PURE__*/React__default["default"].createElement(Icon, null), config.isStatement ? getStatementContent(option) : option.label), isSelected && /*#__PURE__*/React__default["default"].createElement(icons.Checkmark, {
110
+ className: "".concat(util.blockClass, "__checkmark")
105
111
  })));
106
112
  })));
107
113
  };
@@ -15,8 +15,8 @@ var react = require('@carbon/react');
15
15
  var icons = require('@carbon/react/icons');
16
16
  var index = require('../../../../node_modules/prop-types/index.js');
17
17
  var ConditionBuilderProvider = require('../../ConditionBuilderContext/ConditionBuilderProvider.js');
18
- var DataConfigs = require('../../ConditionBuilderContext/DataConfigs.js');
19
18
  var useTranslations = require('../../utils/useTranslations.js');
19
+ var util = require('../../utils/util.js');
20
20
 
21
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
22
 
@@ -144,23 +144,23 @@ var ItemOptionForValueField = function ItemOptionForValueField(_ref) {
144
144
  return _SelectSkeleton || (_SelectSkeleton = /*#__PURE__*/React__default["default"].createElement(react.SelectSkeleton, null));
145
145
  }
146
146
  return /*#__PURE__*/React__default["default"].createElement("div", {
147
- className: "".concat(DataConfigs.blockClass, "__item-option"),
147
+ className: "".concat(util.blockClass, "__item-option"),
148
148
  ref: contentRef
149
149
  }, popOverSearchThreshold && allOptions.length > popOverSearchThreshold && /*#__PURE__*/React__default["default"].createElement("div", {
150
- className: "".concat(DataConfigs.blockClass, "__item-option__search")
150
+ className: "".concat(util.blockClass, "__item-option__search")
151
151
  }, /*#__PURE__*/React__default["default"].createElement(react.Search, {
152
152
  size: "sm",
153
153
  labelText: clearSearchText,
154
154
  closeButtonLabelText: clearSearchText,
155
155
  onChange: onSearchChangeHandler
156
156
  })), multiSelectable && /*#__PURE__*/React__default["default"].createElement("div", {
157
- className: "".concat(DataConfigs.blockClass, "__multiselectSelectionStatusContainer")
157
+ className: "".concat(util.blockClass, "__multiselectSelectionStatusContainer")
158
158
  }, /*#__PURE__*/React__default["default"].createElement("h4", null, /*#__PURE__*/React__default["default"].createElement("label", null, selection.length, "/", allOptions.length, " Selected")), /*#__PURE__*/React__default["default"].createElement(react.Button, {
159
159
  kind: 'ghost',
160
160
  size: 'sm',
161
161
  "data-selected-all": "".concat(selection.length == 0 ? true : false),
162
162
  onClick: handleSelectAll,
163
- className: "".concat(DataConfigs.blockClass, "__selectAll-button")
163
+ className: "".concat(util.blockClass, "__selectAll-button")
164
164
  }, selection.length == 0 ? 'Select all' : 'Deselect all')), /*#__PURE__*/React__default["default"].createElement("ul", {
165
165
  "aria-label": getAriaLabel(),
166
166
  role: "listbox",
@@ -175,7 +175,7 @@ var ItemOptionForValueField = function ItemOptionForValueField(_ref) {
175
175
  key: option.id,
176
176
  role: "option",
177
177
  "aria-selected": isSelected,
178
- className: "".concat(DataConfigs.blockClass, "__item-option__option"),
178
+ className: "".concat(util.blockClass, "__item-option__option"),
179
179
  onKeyUp: function onKeyUp() {
180
180
  return false;
181
181
  },
@@ -183,17 +183,17 @@ var ItemOptionForValueField = function ItemOptionForValueField(_ref) {
183
183
  return onClickHandler(evt, option, isSelected);
184
184
  }
185
185
  }, /*#__PURE__*/React__default["default"].createElement("div", {
186
- className: "".concat(DataConfigs.blockClass, "__item-option__option-content")
186
+ className: "".concat(util.blockClass, "__item-option__option-content")
187
187
  }, multiSelectable ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("span", {
188
- className: "".concat(DataConfigs.blockClass, "__option-check-box")
188
+ className: "".concat(util.blockClass, "__option-check-box")
189
189
  }, isSelected ? _CheckboxCheckedFille || (_CheckboxCheckedFille = /*#__PURE__*/React__default["default"].createElement(icons.CheckboxCheckedFilled, null)) : _Checkbox || (_Checkbox = /*#__PURE__*/React__default["default"].createElement(icons.Checkbox, null))), /*#__PURE__*/React__default["default"].createElement("span", {
190
- className: "".concat(DataConfigs.blockClass, "__item-option__option-label")
190
+ className: "".concat(util.blockClass, "__item-option__option-label")
191
191
  }, option.label), Icon && /*#__PURE__*/React__default["default"].createElement("span", {
192
- className: "".concat(DataConfigs.blockClass, "__option-icon")
192
+ className: "".concat(util.blockClass, "__option-icon")
193
193
  }, /*#__PURE__*/React__default["default"].createElement(Icon, null))) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("span", {
194
- className: "".concat(DataConfigs.blockClass, "__item-option__option-label")
194
+ className: "".concat(util.blockClass, "__item-option__option-label")
195
195
  }, Icon && /*#__PURE__*/React__default["default"].createElement(Icon, null), option.label), isSelected && /*#__PURE__*/React__default["default"].createElement(icons.Checkmark, {
196
- className: "".concat(DataConfigs.blockClass, "__checkmark")
196
+ className: "".concat(util.blockClass, "__checkmark")
197
197
  }))));
198
198
  })));
199
199
  };
@@ -13,7 +13,6 @@ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabel
13
13
  var React = require('react');
14
14
  var react = require('@carbon/react');
15
15
  var index = require('../../../../node_modules/prop-types/index.js');
16
- var DataConfigs = require('../../ConditionBuilderContext/DataConfigs.js');
17
16
  var util = require('../../utils/util.js');
18
17
 
19
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -36,7 +35,7 @@ var ConditionBuilderItemText = function ConditionBuilderItemText(_ref) {
36
35
  labelText: conditionState.property
37
36
  });
38
37
  return /*#__PURE__*/React__default["default"].createElement("div", {
39
- className: "".concat(DataConfigs.blockClass, "__item-text")
38
+ className: "".concat(util.blockClass, "__item-text")
40
39
  }, type == 'textarea' ? /*#__PURE__*/React__default["default"].createElement(react.TextArea, inputProps) : /*#__PURE__*/React__default["default"].createElement(react.TextInput, inputProps));
41
40
  };
42
41
  ConditionBuilderItemText.propTypes = {
@@ -13,7 +13,7 @@ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabel
13
13
  var React = require('react');
14
14
  var react = require('@carbon/react');
15
15
  var index = require('../../../../node_modules/prop-types/index.js');
16
- var DataConfigs = require('../../ConditionBuilderContext/DataConfigs.js');
16
+ var util = require('../../utils/util.js');
17
17
 
18
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
19
 
@@ -51,7 +51,7 @@ var ConditionBuilderItemTime = function ConditionBuilderItemTime(_ref) {
51
51
  setTimeValue(evt.target.value);
52
52
  };
53
53
  return /*#__PURE__*/React__default["default"].createElement("div", {
54
- className: "".concat(DataConfigs.blockClass, "__item-time")
54
+ className: "".concat(util.blockClass, "__item-time")
55
55
  }, /*#__PURE__*/React__default["default"].createElement(react.TimePicker, {
56
56
  id: "time-picker",
57
57
  labelText: "Select a time",
@@ -14,7 +14,6 @@ var React = require('react');
14
14
  var ConditionBlock = require('../ConditionBlock/ConditionBlock.js');
15
15
  var index = require('../../../node_modules/prop-types/index.js');
16
16
  var cx = require('classnames');
17
- var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
18
17
  var ConditionBuilderItem = require('../ConditionBuilderItem/ConditionBuilderItem.js');
19
18
  var util = require('../utils/util.js');
20
19
  var ConditionConnector = require('../ConditionBuilderConnector/ConditionConnector.js');
@@ -23,6 +22,7 @@ var uuidv4 = require('../../../global/js/utils/uuidv4.js');
23
22
  var ConditionPreview = require('../ConditionPreview/ConditionPreview.js');
24
23
  var ItemOption = require('../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js');
25
24
  var useTranslations = require('../utils/useTranslations.js');
25
+ var useDataConfigs = require('../utils/useDataConfigs.js');
26
26
 
27
27
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
28
28
 
@@ -48,6 +48,8 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
48
48
  conditionBuilderGroupText = _useTranslations2[0],
49
49
  conditionText = _useTranslations2[1],
50
50
  conditionBuilderText = _useTranslations2[2];
51
+ var _useDataConfigs = useDataConfigs.useDataConfigs(),
52
+ statementConfig = _useDataConfigs.statementConfig;
51
53
  var _useContext = React.useContext(ConditionBuilderProvider.ConditionBuilderContext),
52
54
  variant = _useContext.variant,
53
55
  conditionBuilderRef = _useContext.conditionBuilderRef;
@@ -63,7 +65,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
63
65
  var conditionBuilderContentRef = React.useRef(null);
64
66
  var onRemoveHandler = function onRemoveHandler(conditionId, evt, conditionIndex) {
65
67
  if (group && group.conditions && group.conditions.length > 1) {
66
- variant == DataConfigs.HIERARCHICAL_VARIANT ? handleFocusOnCloseHierarchical(evt) : handleFocusOnClose(evt, conditionIndex);
68
+ variant == util.HIERARCHICAL_VARIANT ? handleFocusOnCloseHierarchical(evt) : handleFocusOnClose(evt, conditionIndex);
67
69
  if (!checkGroupHaveCondition(group.conditions, conditionId)) {
68
70
  var _group$conditions;
69
71
  //when we delete the last condition of a group without deleting the subgroup, we need to restructure the group.
@@ -131,7 +133,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
131
133
  //get all close buttons.
132
134
  //if the last condition is closing, focus the second last one.
133
135
  //or focus the next one.
134
- var currentGroupCloseButtons = (_e$currentTarget$clos = e.currentTarget.closest(".".concat(DataConfigs.blockClass, "__group"))) === null || _e$currentTarget$clos === void 0 ? void 0 : _e$currentTarget$clos.querySelectorAll('[data-name="closeCondition"]');
136
+ var currentGroupCloseButtons = (_e$currentTarget$clos = e.currentTarget.closest(".".concat(util.blockClass, "__group"))) === null || _e$currentTarget$clos === void 0 ? void 0 : _e$currentTarget$clos.querySelectorAll('[data-name="closeCondition"]');
135
137
  if (conditionIndex == currentGroupCloseButtons.length - 1) {
136
138
  util.manageTabIndexAndFocus(currentGroupCloseButtons[conditionIndex - 1], conditionBuilderRef);
137
139
  } else {
@@ -150,9 +152,9 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
150
152
  //checking if next level is a valid condition. If then, focus the close button inside that condition
151
153
  //Otherwise , check the previous item is a valid condition
152
154
 
153
- if (nextElement !== null && nextElement !== void 0 && nextElement.classList.contains("".concat(DataConfigs.blockClass, "__condition-block"))) {
155
+ if (nextElement !== null && nextElement !== void 0 && nextElement.classList.contains("".concat(util.blockClass, "__condition-block"))) {
154
156
  util.manageTabIndexAndFocus(nextElement === null || nextElement === void 0 ? void 0 : nextElement.querySelector('[data-name="closeCondition"]'), conditionBuilderRef);
155
- } else if (prevElement !== null && prevElement !== void 0 && prevElement.classList.contains("".concat(DataConfigs.blockClass, "__condition-block"))) {
157
+ } else if (prevElement !== null && prevElement !== void 0 && prevElement.classList.contains("".concat(util.blockClass, "__condition-block"))) {
156
158
  util.manageTabIndexAndFocus(prevElement === null || prevElement === void 0 ? void 0 : prevElement.querySelector('[data-name="closeCondition"]'), conditionBuilderRef);
157
159
  }
158
160
  //If there are no valid condition in this group, focus next or previous row
@@ -181,7 +183,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
181
183
  var addConditionSubGroupHandler = function addConditionSubGroupHandler(conditionIndex) {
182
184
  onChange(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, group), {}, {
183
185
  conditions: [].concat(_rollupPluginBabelHelpers.toConsumableArray(group.conditions ? group.conditions.slice(0, conditionIndex + 1) : []), [{
184
- statement: 'if',
186
+ statement: 'ifAll',
185
187
  groupOperator: 'and',
186
188
  conditions: [{
187
189
  property: undefined,
@@ -211,7 +213,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
211
213
  };
212
214
  var onStatementChangeHandler = function onStatementChangeHandler(updatedStatement) {
213
215
  var _statementConfig$find;
214
- var groupOperator = (_statementConfig$find = DataConfigs.statementConfig.find(function (statement) {
216
+ var groupOperator = (_statementConfig$find = statementConfig.find(function (statement) {
215
217
  return statement.id == updatedStatement;
216
218
  })) === null || _statementConfig$find === void 0 ? void 0 : _statementConfig$find.connector;
217
219
  onChange(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, group), {}, {
@@ -229,14 +231,14 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
229
231
  return /*#__PURE__*/React__default["default"].createElement("div", {
230
232
  className: "".concat(className, " eachGroup")
231
233
  }, /*#__PURE__*/React__default["default"].createElement("div", {
232
- className: "".concat(DataConfigs.blockClass, "__condition-wrapper"),
234
+ className: "".concat(util.blockClass, "__condition-wrapper"),
233
235
  role: "grid",
234
236
  "aria-label": conditionBuilderText
235
237
  }, group === null || group === void 0 || (_group$conditions2 = group.conditions) === null || _group$conditions2 === void 0 ? void 0 : _group$conditions2.map(function (eachCondition, conditionIndex) {
236
238
  var _group$conditions3;
237
239
  return /*#__PURE__*/React__default["default"].createElement("div", {
238
240
  key: eachCondition.id,
239
- className: "".concat(DataConfigs.blockClass, "__group-wrapper")
241
+ className: "".concat(util.blockClass, "__group-wrapper")
240
242
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBlock["default"], {
241
243
  conjunction: conditionIndex > 0 ? group.groupOperator : undefined,
242
244
  aria: {
@@ -264,7 +266,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
264
266
  var getHierarchicalVariant = function getHierarchicalVariant() {
265
267
  var _group$conditions4;
266
268
  return /*#__PURE__*/React__default["default"].createElement("div", {
267
- className: "".concat(className, " ").concat(DataConfigs.blockClass, "__condition-wrapper"),
269
+ className: "".concat(className, " ").concat(util.blockClass, "__condition-wrapper"),
268
270
  role: aria.level === 1 ? 'rowgroup' : undefined,
269
271
  "aria-label": aria.level == 1 ? conditionBuilderGroupText : undefined,
270
272
  ref: conditionBuilderContentRef
@@ -278,8 +280,8 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
278
280
  label: group.statement,
279
281
  title: conditionText,
280
282
  "data-name": "connectorField",
281
- popOverClassName: "".concat(DataConfigs.blockClass, "__gap"),
282
- className: "".concat(DataConfigs.blockClass, "__statement-button")
283
+ popOverClassName: "".concat(util.blockClass, "__gap"),
284
+ className: "".concat(util.blockClass, "__statement-button")
283
285
  }, /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
284
286
  conditionState: {
285
287
  value: group.statement,
@@ -290,16 +292,17 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
290
292
  onStatementChangeHandler(v);
291
293
  },
292
294
  config: {
293
- options: DataConfigs.statementConfig
295
+ options: statementConfig,
296
+ isStatement: true
294
297
  }
295
298
  }))), group === null || group === void 0 || (_group$conditions4 = group.conditions) === null || _group$conditions4 === void 0 ? void 0 : _group$conditions4.map(function (eachCondition, conditionIndex) {
296
299
  var _group$conditions$len, _group$conditions5, _group$conditions$len2, _group$conditions6;
297
300
  return /*#__PURE__*/React__default["default"].createElement(React.Fragment, {
298
301
  key: eachCondition.id
299
302
  }, eachCondition.conditions ? /*#__PURE__*/React__default["default"].createElement("div", {
300
- className: cx__default["default"]("".concat(DataConfigs.blockClass, "__condition-block subgroup ").concat(DataConfigs.blockClass, "__gap"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap-bottom"), group && group.conditions && group.conditions.length < conditionIndex + 1), {})
303
+ className: cx__default["default"]("".concat(util.blockClass, "__condition-block subgroup ").concat(util.blockClass, "__gap"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(util.blockClass, "__gap-bottom"), group && group.conditions && group.conditions.length < conditionIndex + 1), {})
301
304
  }, /*#__PURE__*/React__default["default"].createElement(ConditionConnector["default"], {
302
- className: "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-bottom ").concat(DataConfigs.blockClass, "__groupConnector"),
305
+ className: "".concat(util.blockClass, "__gap ").concat(util.blockClass, "__gap-bottom ").concat(util.blockClass, "__groupConnector"),
303
306
  operator: group.groupOperator,
304
307
  "aria-hidden": true
305
308
  }), /*#__PURE__*/React__default["default"].createElement(ConditionGroupBuilder, {
@@ -308,7 +311,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
308
311
  posinset: conditionIndex + 1,
309
312
  setsize: (_group$conditions$len = (_group$conditions5 = group.conditions) === null || _group$conditions5 === void 0 ? void 0 : _group$conditions5.length) !== null && _group$conditions$len !== void 0 ? _group$conditions$len : 0
310
313
  },
311
- className: "".concat(DataConfigs.blockClass, "__group"),
314
+ className: "".concat(util.blockClass, "__group"),
312
315
  group: eachCondition,
313
316
  onChange: function onChange(updatedConditions) {
314
317
  onChangeHandler(updatedConditions, conditionIndex);
@@ -355,7 +358,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
355
358
  }))));
356
359
  }));
357
360
  };
358
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, variant == DataConfigs.HIERARCHICAL_VARIANT && getHierarchicalVariant(), variant == DataConfigs.NON_HIERARCHICAL_VARIANT && getNonHierarchicalVariant());
361
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, variant == util.HIERARCHICAL_VARIANT && getHierarchicalVariant(), variant == util.NON_HIERARCHICAL_VARIANT && getNonHierarchicalVariant());
359
362
  };
360
363
  ConditionGroupBuilder.propTypes = {
361
364
  /**