@carbon/ibm-products 2.43.2-canary.161 → 2.43.2-canary.165

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. package/css/index-full-carbon.css +5 -5
  2. package/css/index-full-carbon.min.css +1 -1
  3. package/css/index-full-carbon.min.css.map +1 -1
  4. package/css/index-without-carbon.css +5 -5
  5. package/css/index-without-carbon.min.css +1 -1
  6. package/css/index-without-carbon.min.css.map +1 -1
  7. package/css/index.css +5 -5
  8. package/css/index.min.css +1 -1
  9. package/css/index.min.css.map +1 -1
  10. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +5 -5
  11. package/es/components/ConditionBuilder/ConditionBuilder.js +4 -4
  12. package/es/components/ConditionBuilder/ConditionBuilder.types.d.ts +1 -1
  13. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +2 -2
  14. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +7 -6
  15. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +1 -1
  16. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +2 -0
  17. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +3 -1
  18. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +1 -0
  19. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +2 -1
  20. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +6 -6
  21. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +8 -8
  22. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +4 -4
  23. package/lib/components/ConditionBuilder/ConditionBuilder.js +3 -3
  24. package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts +1 -1
  25. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +1 -1
  26. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +6 -5
  27. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +1 -1
  28. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +2 -0
  29. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +4 -0
  30. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +1 -0
  31. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +2 -1
  32. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +5 -5
  33. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +7 -7
  34. package/package.json +2 -2
  35. package/scss/components/ConditionBuilder/_condition-builder.scss +1 -1
  36. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +1 -1
@@ -14,7 +14,7 @@ import { getDevtoolsProps } from '../../global/js/utils/devtools.js';
14
14
  import ConditionBuilderContent from './ConditionBuilderContent/ConditionBuilderContent.js';
15
15
  import { ConditionBuilderProvider } from './ConditionBuilderContext/ConditionBuilderProvider.js';
16
16
  import { pkg } from '../../settings.js';
17
- import { blockClass } from './ConditionBuilderContext/DataConfigs.js';
17
+ import { blockClass, NON_HIERARCHICAL_VARIANT } from './ConditionBuilderContext/DataConfigs.js';
18
18
  import { handleKeyDown } from './utils/handleKeyboardEvents.js';
19
19
 
20
20
  var _excluded = ["className", "inputConfig", "startConditionLabel", "popOverSearchThreshold", "getOptions", "initialState", "getConditionState", "getActionsState", "variant", "actions", "translateWithId"];
@@ -53,7 +53,7 @@ var ConditionBuilder = /*#__PURE__*/React__default.forwardRef(function (_ref, re
53
53
  getConditionState = _ref.getConditionState,
54
54
  getActionsState = _ref.getActionsState,
55
55
  _ref$variant = _ref.variant,
56
- variant = _ref$variant === void 0 ? 'sentence' : _ref$variant,
56
+ variant = _ref$variant === void 0 ? NON_HIERARCHICAL_VARIANT : _ref$variant,
57
57
  actions = _ref.actions,
58
58
  translateWithId = _ref.translateWithId,
59
59
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -211,9 +211,9 @@ ConditionBuilder.propTypes = {
211
211
  translateWithId: PropTypes.func,
212
212
  /* TODO: add types and DocGen for all props. */
213
213
  /**
214
- * Provide the condition builder variant: sentence/ tree
214
+ * Provide the condition builder variant: Non-Hierarchical/ Hierarchical
215
215
  */
216
- variant: PropTypes.oneOf(['tree', 'sentence'])
216
+ variant: PropTypes.oneOf(['Non-Hierarchical', 'Hierarchical'])
217
217
  };
218
218
 
219
219
  export { ConditionBuilder };
@@ -129,7 +129,7 @@ export type ConditionBuilderProps = {
129
129
  className?: string;
130
130
  popOverSearchThreshold: number;
131
131
  startConditionLabel: string;
132
- variant?: 'sentence' | 'tree';
132
+ variant?: 'Non-Hierarchical' | 'Hierarchical';
133
133
  translateWithId: (id: string) => string;
134
134
  };
135
135
  export interface ConditionBuilderContextInputProps extends PropsWithChildren {
@@ -9,7 +9,7 @@ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _
9
9
  import React__default, { useContext, useCallback } from 'react';
10
10
  import { ConditionBuilderItem } from '../ConditionBuilderItem/ConditionBuilderItem.js';
11
11
  import { ItemOption } from '../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js';
12
- import { blockClass, connectorConfig } from '../ConditionBuilderContext/DataConfigs.js';
12
+ import { HIERARCHICAL_VARIANT, blockClass, connectorConfig } from '../ConditionBuilderContext/DataConfigs.js';
13
13
  import PropTypes from '../../../node_modules/prop-types/index.js';
14
14
  import { focusThisField } from '../utils/util.js';
15
15
  import { ConditionBuilderContext } from '../ConditionBuilderContext/ConditionBuilderProvider.js';
@@ -47,7 +47,7 @@ var ConditionConnector = function ConditionConnector(_ref) {
47
47
  onChange === null || onChange === void 0 || onChange(op);
48
48
  focusThisField(evt, conditionBuilderRef);
49
49
  };
50
- return variant == 'tree' ? /*#__PURE__*/React__default.createElement("span", {
50
+ return variant == HIERARCHICAL_VARIANT ? /*#__PURE__*/React__default.createElement("span", {
51
51
  className: "".concat(className, " ").concat(blockClass, "__connector--disabled")
52
52
  }, /*#__PURE__*/React__default.createElement(ConditionBuilderButton, {
53
53
  label: operator
@@ -12,7 +12,7 @@ import { Button, Section, Heading } from '@carbon/react';
12
12
  import { Add, TextNewLine } from '@carbon/react/icons';
13
13
  import ConditionGroupBuilder from '../ConditionGroupBuilder/ConditionGroupBuilder.js';
14
14
  import { ConditionBuilderContext, emptyState } from '../ConditionBuilderContext/ConditionBuilderProvider.js';
15
- import { blockClass } from '../ConditionBuilderContext/DataConfigs.js';
15
+ import { blockClass, HIERARCHICAL_VARIANT } from '../ConditionBuilderContext/DataConfigs.js';
16
16
  import { ConditionBuilderButton } from '../ConditionBuilderButton/ConditionBuilderButton.js';
17
17
  import uuidv4 from '../../../global/js/utils/uuidv4.js';
18
18
  import ConditionPreview from '../ConditionPreview/ConditionPreview.js';
@@ -41,10 +41,11 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
41
41
  _useState4 = _slicedToArray(_useState3, 2),
42
42
  showConditionGroupPreview = _useState4[0],
43
43
  setShowConditionGroupPreview = _useState4[1];
44
- var _useTranslations = useTranslations(['addConditionGroupText', 'conditionHeadingText']),
45
- _useTranslations2 = _slicedToArray(_useTranslations, 2),
44
+ var _useTranslations = useTranslations(['addConditionGroupText', 'conditionHeadingText', 'conditionBuilderHierarchicalText']),
45
+ _useTranslations2 = _slicedToArray(_useTranslations, 3),
46
46
  addConditionGroupText = _useTranslations2[0],
47
- conditionHeadingText = _useTranslations2[1];
47
+ conditionHeadingText = _useTranslations2[1],
48
+ conditionBuilderHierarchicalText = _useTranslations2[2];
48
49
  var showConditionGroupPreviewHandler = function showConditionGroupPreviewHandler() {
49
50
  setShowConditionGroupPreview(true);
50
51
  };
@@ -135,7 +136,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
135
136
  }, /*#__PURE__*/React__default.createElement(Heading, null, conditionHeadingText)), /*#__PURE__*/React__default.createElement("div", {
136
137
  className: "".concat(blockClass, "__content-container"),
137
138
  role: "treegrid",
138
- "aria-label": "condition builder tree"
139
+ "aria-label": conditionBuilderHierarchicalText
139
140
  }, rootState && (rootState === null || rootState === void 0 || (_rootState$groups4 = rootState.groups) === null || _rootState$groups4 === void 0 ? void 0 : _rootState$groups4.map(function (eachGroup, groupIndex) {
140
141
  var _ref2;
141
142
  return /*#__PURE__*/React__default.createElement("div", {
@@ -156,7 +157,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
156
157
  onChangeHandler(updatedGroup, groupIndex);
157
158
  }
158
159
  }), rootState.groups && groupIndex < rootState.groups.length - 1 && (_GroupConnector || (_GroupConnector = /*#__PURE__*/React__default.createElement(GroupConnector, null))));
159
- })), variant == 'tree' && /*#__PURE__*/React__default.createElement("div", {
160
+ })), variant == HIERARCHICAL_VARIANT && /*#__PURE__*/React__default.createElement("div", {
160
161
  role: "row",
161
162
  tabIndex: -1,
162
163
  "aria-level": 1,
@@ -117,7 +117,7 @@ ConditionBuilderProvider.propTypes = {
117
117
  */
118
118
  translateWithId: PropTypes.func,
119
119
  /**
120
- * Provide the condition builder variant: sentence/ tree
120
+ * Provide the condition builder variant: Non-Hierarchical/ Hierarchical
121
121
  */
122
122
  variant: PropTypes.string.isRequired
123
123
  };
@@ -16,6 +16,8 @@ export const operatorConfig: {
16
16
  id: string;
17
17
  type: string;
18
18
  }[];
19
+ export const NON_HIERARCHICAL_VARIANT: "Non-Hierarchical";
20
+ export const HIERARCHICAL_VARIANT: "Hierarchical";
19
21
  export const blockClass: string;
20
22
  export namespace valueRenderers {
21
23
  function text(val: any): any;
@@ -72,6 +72,8 @@ var operatorConfig = [{
72
72
  id: 'between',
73
73
  type: 'date'
74
74
  }];
75
+ var NON_HIERARCHICAL_VARIANT = 'Non-Hierarchical';
76
+ var HIERARCHICAL_VARIANT = 'Hierarchical';
75
77
  // The block part of our conventional BEM class names (blockClass__E--M).
76
78
  var blockClass = "".concat(pkg.prefix, "--condition-builder");
77
79
  var formatDate = function formatDate(date) {
@@ -120,4 +122,4 @@ var valueRenderers = {
120
122
  }
121
123
  };
122
124
 
123
- export { blockClass, connectorConfig, operatorConfig, statementConfig, valueRenderers };
125
+ export { HIERARCHICAL_VARIANT, NON_HIERARCHICAL_VARIANT, blockClass, connectorConfig, operatorConfig, statementConfig, valueRenderers };
@@ -42,4 +42,5 @@ export namespace translationsObject {
42
42
  let addPropertyText: string;
43
43
  let addOperatorText: string;
44
44
  let addValueText: string;
45
+ let conditionBuilderHierarchicalText: string;
45
46
  }
@@ -48,7 +48,8 @@ var translationsObject = {
48
48
  conditionHeadingText: 'Condition',
49
49
  addPropertyText: 'Add property',
50
50
  addOperatorText: 'Add operator',
51
- addValueText: 'Add value'
51
+ addValueText: 'Add value',
52
+ conditionBuilderHierarchicalText: 'Condition Builder Hierarchical'
52
53
  };
53
54
 
54
55
  export { translationsObject };
@@ -10,7 +10,7 @@ import React__default, { useContext, useState, useRef, Fragment } from 'react';
10
10
  import ConditionBlock from '../ConditionBlock/ConditionBlock.js';
11
11
  import PropTypes from '../../../node_modules/prop-types/index.js';
12
12
  import cx from 'classnames';
13
- import { blockClass, statementConfig } from '../ConditionBuilderContext/DataConfigs.js';
13
+ import { HIERARCHICAL_VARIANT, NON_HIERARCHICAL_VARIANT, blockClass, statementConfig } from '../ConditionBuilderContext/DataConfigs.js';
14
14
  import { ConditionBuilderItem } from '../ConditionBuilderItem/ConditionBuilderItem.js';
15
15
  import { focusThisField, manageTabIndexAndFocus } from '../utils/util.js';
16
16
  import ConditionConnector from '../ConditionBuilderConnector/ConditionConnector.js';
@@ -54,7 +54,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
54
54
  var conditionBuilderContentRef = useRef(null);
55
55
  var onRemoveHandler = function onRemoveHandler(conditionId, evt, conditionIndex) {
56
56
  if (group && group.conditions && group.conditions.length > 1) {
57
- variant == 'tree' ? handleFocusOnCloseTree(evt) : handleFocusOnClose(evt, conditionIndex);
57
+ variant == HIERARCHICAL_VARIANT ? handleFocusOnCloseHierarchical(evt) : handleFocusOnClose(evt, conditionIndex);
58
58
  if (!checkGroupHaveCondition(group.conditions, conditionId)) {
59
59
  var _group$conditions;
60
60
  //when we delete the last condition of a group without deleting the subgroup, we need to restructure the group.
@@ -129,7 +129,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
129
129
  manageTabIndexAndFocus(currentGroupCloseButtons[conditionIndex + 1], conditionBuilderRef);
130
130
  }
131
131
  };
132
- var handleFocusOnCloseTree = function handleFocusOnCloseTree(evt) {
132
+ var handleFocusOnCloseHierarchical = function handleFocusOnCloseHierarchical(evt) {
133
133
  var _evt$currentTarget, _evt$currentTarget2, _conditionBuilderCont, _conditionBuilderCont2;
134
134
  //getting the current aria-level and aria-posinset.
135
135
  var currentLevel = (_evt$currentTarget = evt.currentTarget) === null || _evt$currentTarget === void 0 || (_evt$currentTarget = _evt$currentTarget.closest('[role="row"]')) === null || _evt$currentTarget === void 0 ? void 0 : _evt$currentTarget.getAttribute('aria-level');
@@ -215,7 +215,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
215
215
  groupOperator: op
216
216
  }));
217
217
  };
218
- var getSentenceVariant = function getSentenceVariant() {
218
+ var getNonHierarchicalVariant = function getNonHierarchicalVariant() {
219
219
  var _group$conditions2;
220
220
  return /*#__PURE__*/React__default.createElement("div", {
221
221
  className: "".concat(className, " eachGroup")
@@ -252,7 +252,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
252
252
  }));
253
253
  })));
254
254
  };
255
- var getTreeVariant = function getTreeVariant() {
255
+ var getHierarchicalVariant = function getHierarchicalVariant() {
256
256
  var _group$conditions4;
257
257
  return /*#__PURE__*/React__default.createElement("div", {
258
258
  className: "".concat(className, " ").concat(blockClass, "__condition-wrapper"),
@@ -346,7 +346,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
346
346
  }))));
347
347
  }));
348
348
  };
349
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, variant == 'tree' && getTreeVariant(), variant == 'sentence' && getSentenceVariant());
349
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, variant == HIERARCHICAL_VARIANT && getHierarchicalVariant(), variant == NON_HIERARCHICAL_VARIANT && getNonHierarchicalVariant());
350
350
  };
351
351
  ConditionGroupBuilder.propTypes = {
352
352
  /**
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import { toConsumableArray as _toConsumableArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
- import { blockClass } from '../ConditionBuilderContext/DataConfigs.js';
9
+ import { blockClass, HIERARCHICAL_VARIANT } from '../ConditionBuilderContext/DataConfigs.js';
10
10
  import { focusThisItem, manageTabIndexAndFocus, traverseClockVise, traverseReverse, checkForHoldingKey, focusThisField } from './util.js';
11
11
 
12
12
  var handleKeyDown = function handleKeyDown(evt, conditionBuilderRef, variant) {
@@ -101,12 +101,12 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
101
101
  switch (evt.key) {
102
102
  case 'ArrowRight':
103
103
  evt.preventDefault();
104
- if (variant == 'tree') {
104
+ if (variant == HIERARCHICAL_VARIANT) {
105
105
  var _evt$target$closest;
106
106
  var allCellsInRow = Array.from((_evt$target$closest = evt.target.closest('[role="row"]')) === null || _evt$target$closest === void 0 ? void 0 : _evt$target$closest.querySelectorAll('[role="gridcell"] button'));
107
107
  if (allCellsInRow.length === 1) {
108
108
  evt.target = evt.target.closest('[role="row"]');
109
- handleRowNavigationTree(evt, conditionBuilderRef, variant);
109
+ handleRowNavigationHierarchical(evt, conditionBuilderRef, variant);
110
110
  //focus next row
111
111
  } else if (evt.target.getAttribute('role') == 'row') {
112
112
  //when current focus is on a row, then we need to enter inside and focus the first cell of that row
@@ -128,7 +128,7 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
128
128
  break;
129
129
  case 'ArrowLeft':
130
130
  evt.preventDefault();
131
- if (variant == 'tree') {
131
+ if (variant == HIERARCHICAL_VARIANT) {
132
132
  if (evt.target.getAttribute('role') !== 'row') {
133
133
  var _evt$target$closest2;
134
134
  //when any cell is focussed, arrow left will select the previous cell or current row
@@ -150,8 +150,8 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
150
150
  case 'ArrowUp':
151
151
  case 'ArrowDown':
152
152
  evt.preventDefault();
153
- if (variant == 'tree') {
154
- handleRowNavigationTree(evt, conditionBuilderRef, variant);
153
+ if (variant == HIERARCHICAL_VARIANT) {
154
+ handleRowNavigationHierarchical(evt, conditionBuilderRef, variant);
155
155
  } else {
156
156
  handleRowNavigation(evt, conditionBuilderRef, variant);
157
157
  }
@@ -179,7 +179,7 @@ var handleRowNavigation = function handleRowNavigation(evt, conditionBuilderRef,
179
179
  var currentRowIndex = getRowIndex(evt.target, conditionBuilderRef);
180
180
  navigateToNextRowCell(evt, currentRowIndex, rows, variant, conditionBuilderRef);
181
181
  };
182
- var handleRowNavigationTree = function handleRowNavigationTree(evt, conditionBuilderRef, variant) {
182
+ var handleRowNavigationHierarchical = function handleRowNavigationHierarchical(evt, conditionBuilderRef, variant) {
183
183
  var rows = getRows(conditionBuilderRef);
184
184
  var currentRowIndex = getRowIndex(evt.target, conditionBuilderRef);
185
185
  var nextRowIndex = currentRowIndex;
@@ -217,7 +217,7 @@ var navigateToNextRowCell = function navigateToNextRowCell(evt, currentRowIndex,
217
217
  var itemName = evt.target.dataset.name;
218
218
  if (nextRow !== null && nextRow !== void 0 && nextRow.querySelector("[data-name=\"".concat(itemName, "\"]"))) {
219
219
  manageTabIndexAndFocus(nextRow === null || nextRow === void 0 ? void 0 : nextRow.querySelector("[data-name=\"".concat(itemName, "\"]")), conditionBuilderRef);
220
- } else if (variant === 'tree') {
220
+ } else if (variant === HIERARCHICAL_VARIANT) {
221
221
  //when the next row is a if statement , then that row is focused. From any cell of last row of an group , arrow down select the next row (if)
222
222
  manageTabIndexAndFocus(nextRow, conditionBuilderRef);
223
223
  }
@@ -145,7 +145,7 @@ var ConditionBlock = function ConditionBlock(props) {
145
145
  setShowDeletionPreview(false);
146
146
  };
147
147
  var manageActionButtons = function manageActionButtons(conditionIndex, conditions) {
148
- if (variant === 'tree') {
148
+ if (variant === DataConfigs.HIERARCHICAL_VARIANT) {
149
149
  return true;
150
150
  }
151
151
  return isLastCondition(conditionIndex, conditions);
@@ -159,7 +159,7 @@ var ConditionBlock = function ConditionBlock(props) {
159
159
  });
160
160
  };
161
161
  var getAriaAttributes = function getAriaAttributes() {
162
- return variant == 'tree' ? {
162
+ return variant == DataConfigs.HIERARCHICAL_VARIANT ? {
163
163
  'aria-level': aria.level,
164
164
  'aria-posinset': aria.posinset,
165
165
  'aria-setsize': aria.setsize
@@ -180,7 +180,7 @@ var ConditionBlock = function ConditionBlock(props) {
180
180
  });
181
181
  };
182
182
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
183
- className: cx__default["default"]("".concat(DataConfigs.blockClass, "__condition-block"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition__deletion-preview"), showDeletionPreview), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'tree'), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'sentence'), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition--interacting"), showAllActions)),
183
+ className: cx__default["default"]("".concat(DataConfigs.blockClass, "__condition-block"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition__deletion-preview"), showDeletionPreview), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap-bottom"), variant == DataConfigs.HIERARCHICAL_VARIANT), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-bottom"), variant == DataConfigs.NON_HIERARCHICAL_VARIANT), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition--interacting"), showAllActions)),
184
184
  role: "row",
185
185
  "aria-label": conditionRowText
186
186
  }, getAriaAttributes(), {
@@ -279,7 +279,7 @@ var ConditionBlock = function ConditionBlock(props) {
279
279
  },
280
280
  showConditionSubGroupPreviewHandler: showConditionSubGroupPreviewHandler,
281
281
  hideConditionSubGroupPreviewHandler: hideConditionSubGroupPreviewHandler,
282
- enableSubGroup: variant == 'tree',
282
+ enableSubGroup: variant == DataConfigs.HIERARCHICAL_VARIANT,
283
283
  showConditionPreviewHandler: showConditionPreviewHandler,
284
284
  hideConditionPreviewHandler: hideConditionPreviewHandler,
285
285
  className: "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-left")
@@ -62,7 +62,7 @@ exports.ConditionBuilder = /*#__PURE__*/React__default["default"].forwardRef(fun
62
62
  getConditionState = _ref.getConditionState,
63
63
  getActionsState = _ref.getActionsState,
64
64
  _ref$variant = _ref.variant,
65
- variant = _ref$variant === void 0 ? 'sentence' : _ref$variant,
65
+ variant = _ref$variant === void 0 ? DataConfigs.NON_HIERARCHICAL_VARIANT : _ref$variant,
66
66
  actions = _ref.actions,
67
67
  translateWithId = _ref.translateWithId,
68
68
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
@@ -220,7 +220,7 @@ exports.ConditionBuilder.propTypes = {
220
220
  translateWithId: index["default"].func,
221
221
  /* TODO: add types and DocGen for all props. */
222
222
  /**
223
- * Provide the condition builder variant: sentence/ tree
223
+ * Provide the condition builder variant: Non-Hierarchical/ Hierarchical
224
224
  */
225
- variant: index["default"].oneOf(['tree', 'sentence'])
225
+ variant: index["default"].oneOf(['Non-Hierarchical', 'Hierarchical'])
226
226
  };
@@ -129,7 +129,7 @@ export type ConditionBuilderProps = {
129
129
  className?: string;
130
130
  popOverSearchThreshold: number;
131
131
  startConditionLabel: string;
132
- variant?: 'sentence' | 'tree';
132
+ variant?: 'Non-Hierarchical' | 'Hierarchical';
133
133
  translateWithId: (id: string) => string;
134
134
  };
135
135
  export interface ConditionBuilderContextInputProps extends PropsWithChildren {
@@ -55,7 +55,7 @@ var ConditionConnector = function ConditionConnector(_ref) {
55
55
  onChange === null || onChange === void 0 || onChange(op);
56
56
  util.focusThisField(evt, conditionBuilderRef);
57
57
  };
58
- return variant == 'tree' ? /*#__PURE__*/React__default["default"].createElement("span", {
58
+ return variant == DataConfigs.HIERARCHICAL_VARIANT ? /*#__PURE__*/React__default["default"].createElement("span", {
59
59
  className: "".concat(className, " ").concat(DataConfigs.blockClass, "__connector--disabled")
60
60
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, {
61
61
  label: operator
@@ -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
  };
@@ -143,7 +144,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
143
144
  }, /*#__PURE__*/React__default["default"].createElement(react.Heading, null, conditionHeadingText)), /*#__PURE__*/React__default["default"].createElement("div", {
144
145
  className: "".concat(DataConfigs.blockClass, "__content-container"),
145
146
  role: "treegrid",
146
- "aria-label": "condition builder tree"
147
+ "aria-label": conditionBuilderHierarchicalText
147
148
  }, rootState && (rootState === null || rootState === void 0 || (_rootState$groups4 = rootState.groups) === null || _rootState$groups4 === void 0 ? void 0 : _rootState$groups4.map(function (eachGroup, groupIndex) {
148
149
  var _ref2;
149
150
  return /*#__PURE__*/React__default["default"].createElement("div", {
@@ -164,7 +165,7 @@ var ConditionBuilderContent = function ConditionBuilderContent(_ref) {
164
165
  onChangeHandler(updatedGroup, groupIndex);
165
166
  }
166
167
  }), rootState.groups && groupIndex < rootState.groups.length - 1 && (_GroupConnector || (_GroupConnector = /*#__PURE__*/React__default["default"].createElement(GroupConnector["default"], null))));
167
- })), variant == 'tree' && /*#__PURE__*/React__default["default"].createElement("div", {
168
+ })), variant == DataConfigs.HIERARCHICAL_VARIANT && /*#__PURE__*/React__default["default"].createElement("div", {
168
169
  role: "row",
169
170
  tabIndex: -1,
170
171
  "aria-level": 1,
@@ -125,7 +125,7 @@ ConditionBuilderProvider.propTypes = {
125
125
  */
126
126
  translateWithId: index["default"].func,
127
127
  /**
128
- * Provide the condition builder variant: sentence/ tree
128
+ * Provide the condition builder variant: Non-Hierarchical/ Hierarchical
129
129
  */
130
130
  variant: index["default"].string.isRequired
131
131
  };
@@ -16,6 +16,8 @@ export const operatorConfig: {
16
16
  id: string;
17
17
  type: string;
18
18
  }[];
19
+ export const NON_HIERARCHICAL_VARIANT: "Non-Hierarchical";
20
+ export const HIERARCHICAL_VARIANT: "Hierarchical";
19
21
  export const blockClass: string;
20
22
  export namespace valueRenderers {
21
23
  function text(val: any): any;
@@ -76,6 +76,8 @@ var operatorConfig = [{
76
76
  id: 'between',
77
77
  type: 'date'
78
78
  }];
79
+ var NON_HIERARCHICAL_VARIANT = 'Non-Hierarchical';
80
+ var HIERARCHICAL_VARIANT = 'Hierarchical';
79
81
  // The block part of our conventional BEM class names (blockClass__E--M).
80
82
  var blockClass = "".concat(settings.pkg.prefix, "--condition-builder");
81
83
  var formatDate = function formatDate(date) {
@@ -124,6 +126,8 @@ var valueRenderers = {
124
126
  }
125
127
  };
126
128
 
129
+ exports.HIERARCHICAL_VARIANT = HIERARCHICAL_VARIANT;
130
+ exports.NON_HIERARCHICAL_VARIANT = NON_HIERARCHICAL_VARIANT;
127
131
  exports.blockClass = blockClass;
128
132
  exports.connectorConfig = connectorConfig;
129
133
  exports.operatorConfig = operatorConfig;
@@ -42,4 +42,5 @@ export namespace translationsObject {
42
42
  let addPropertyText: string;
43
43
  let addOperatorText: string;
44
44
  let addValueText: string;
45
+ let conditionBuilderHierarchicalText: string;
45
46
  }
@@ -52,7 +52,8 @@ var translationsObject = {
52
52
  conditionHeadingText: 'Condition',
53
53
  addPropertyText: 'Add property',
54
54
  addOperatorText: 'Add operator',
55
- addValueText: 'Add value'
55
+ addValueText: 'Add value',
56
+ conditionBuilderHierarchicalText: 'Condition Builder Hierarchical'
56
57
  };
57
58
 
58
59
  exports.translationsObject = translationsObject;
@@ -63,7 +63,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
63
63
  var conditionBuilderContentRef = React.useRef(null);
64
64
  var onRemoveHandler = function onRemoveHandler(conditionId, evt, conditionIndex) {
65
65
  if (group && group.conditions && group.conditions.length > 1) {
66
- variant == 'tree' ? handleFocusOnCloseTree(evt) : handleFocusOnClose(evt, conditionIndex);
66
+ variant == DataConfigs.HIERARCHICAL_VARIANT ? handleFocusOnCloseHierarchical(evt) : handleFocusOnClose(evt, conditionIndex);
67
67
  if (!checkGroupHaveCondition(group.conditions, conditionId)) {
68
68
  var _group$conditions;
69
69
  //when we delete the last condition of a group without deleting the subgroup, we need to restructure the group.
@@ -138,7 +138,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
138
138
  util.manageTabIndexAndFocus(currentGroupCloseButtons[conditionIndex + 1], conditionBuilderRef);
139
139
  }
140
140
  };
141
- var handleFocusOnCloseTree = function handleFocusOnCloseTree(evt) {
141
+ var handleFocusOnCloseHierarchical = function handleFocusOnCloseHierarchical(evt) {
142
142
  var _evt$currentTarget, _evt$currentTarget2, _conditionBuilderCont, _conditionBuilderCont2;
143
143
  //getting the current aria-level and aria-posinset.
144
144
  var currentLevel = (_evt$currentTarget = evt.currentTarget) === null || _evt$currentTarget === void 0 || (_evt$currentTarget = _evt$currentTarget.closest('[role="row"]')) === null || _evt$currentTarget === void 0 ? void 0 : _evt$currentTarget.getAttribute('aria-level');
@@ -224,7 +224,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
224
224
  groupOperator: op
225
225
  }));
226
226
  };
227
- var getSentenceVariant = function getSentenceVariant() {
227
+ var getNonHierarchicalVariant = function getNonHierarchicalVariant() {
228
228
  var _group$conditions2;
229
229
  return /*#__PURE__*/React__default["default"].createElement("div", {
230
230
  className: "".concat(className, " eachGroup")
@@ -261,7 +261,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
261
261
  }));
262
262
  })));
263
263
  };
264
- var getTreeVariant = function getTreeVariant() {
264
+ var getHierarchicalVariant = function getHierarchicalVariant() {
265
265
  var _group$conditions4;
266
266
  return /*#__PURE__*/React__default["default"].createElement("div", {
267
267
  className: "".concat(className, " ").concat(DataConfigs.blockClass, "__condition-wrapper"),
@@ -355,7 +355,7 @@ var ConditionGroupBuilder = function ConditionGroupBuilder(_ref) {
355
355
  }))));
356
356
  }));
357
357
  };
358
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, variant == 'tree' && getTreeVariant(), variant == 'sentence' && getSentenceVariant());
358
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, variant == DataConfigs.HIERARCHICAL_VARIANT && getHierarchicalVariant(), variant == DataConfigs.NON_HIERARCHICAL_VARIANT && getNonHierarchicalVariant());
359
359
  };
360
360
  ConditionGroupBuilder.propTypes = {
361
361
  /**
@@ -105,12 +105,12 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
105
105
  switch (evt.key) {
106
106
  case 'ArrowRight':
107
107
  evt.preventDefault();
108
- if (variant == 'tree') {
108
+ if (variant == DataConfigs.HIERARCHICAL_VARIANT) {
109
109
  var _evt$target$closest;
110
110
  var allCellsInRow = Array.from((_evt$target$closest = evt.target.closest('[role="row"]')) === null || _evt$target$closest === void 0 ? void 0 : _evt$target$closest.querySelectorAll('[role="gridcell"] button'));
111
111
  if (allCellsInRow.length === 1) {
112
112
  evt.target = evt.target.closest('[role="row"]');
113
- handleRowNavigationTree(evt, conditionBuilderRef, variant);
113
+ handleRowNavigationHierarchical(evt, conditionBuilderRef, variant);
114
114
  //focus next row
115
115
  } else if (evt.target.getAttribute('role') == 'row') {
116
116
  //when current focus is on a row, then we need to enter inside and focus the first cell of that row
@@ -132,7 +132,7 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
132
132
  break;
133
133
  case 'ArrowLeft':
134
134
  evt.preventDefault();
135
- if (variant == 'tree') {
135
+ if (variant == DataConfigs.HIERARCHICAL_VARIANT) {
136
136
  if (evt.target.getAttribute('role') !== 'row') {
137
137
  var _evt$target$closest2;
138
138
  //when any cell is focussed, arrow left will select the previous cell or current row
@@ -154,8 +154,8 @@ var handleKeyPressForMainContent = function handleKeyPressForMainContent(evt, co
154
154
  case 'ArrowUp':
155
155
  case 'ArrowDown':
156
156
  evt.preventDefault();
157
- if (variant == 'tree') {
158
- handleRowNavigationTree(evt, conditionBuilderRef, variant);
157
+ if (variant == DataConfigs.HIERARCHICAL_VARIANT) {
158
+ handleRowNavigationHierarchical(evt, conditionBuilderRef, variant);
159
159
  } else {
160
160
  handleRowNavigation(evt, conditionBuilderRef, variant);
161
161
  }
@@ -183,7 +183,7 @@ var handleRowNavigation = function handleRowNavigation(evt, conditionBuilderRef,
183
183
  var currentRowIndex = getRowIndex(evt.target, conditionBuilderRef);
184
184
  navigateToNextRowCell(evt, currentRowIndex, rows, variant, conditionBuilderRef);
185
185
  };
186
- var handleRowNavigationTree = function handleRowNavigationTree(evt, conditionBuilderRef, variant) {
186
+ var handleRowNavigationHierarchical = function handleRowNavigationHierarchical(evt, conditionBuilderRef, variant) {
187
187
  var rows = getRows(conditionBuilderRef);
188
188
  var currentRowIndex = getRowIndex(evt.target, conditionBuilderRef);
189
189
  var nextRowIndex = currentRowIndex;
@@ -221,7 +221,7 @@ var navigateToNextRowCell = function navigateToNextRowCell(evt, currentRowIndex,
221
221
  var itemName = evt.target.dataset.name;
222
222
  if (nextRow !== null && nextRow !== void 0 && nextRow.querySelector("[data-name=\"".concat(itemName, "\"]"))) {
223
223
  util.manageTabIndexAndFocus(nextRow === null || nextRow === void 0 ? void 0 : nextRow.querySelector("[data-name=\"".concat(itemName, "\"]")), conditionBuilderRef);
224
- } else if (variant === 'tree') {
224
+ } else if (variant === DataConfigs.HIERARCHICAL_VARIANT) {
225
225
  //when the next row is a if statement , then that row is focused. From any cell of last row of an group , arrow down select the next row (if)
226
226
  util.manageTabIndexAndFocus(nextRow, conditionBuilderRef);
227
227
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products",
3
3
  "description": "Carbon for IBM Products",
4
- "version": "2.43.2-canary.161+f7010028d",
4
+ "version": "2.43.2-canary.165+13a8d28ba",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -120,5 +120,5 @@
120
120
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
121
121
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
122
122
  },
123
- "gitHead": "f7010028dbedae7178244b4123a3b0bc485efa70"
123
+ "gitHead": "13a8d28ba4cb2631a5ad5be9a94d79d5f36c77c7"
124
124
  }
@@ -61,7 +61,7 @@ $block-class: #{c4p-settings.$pkg-prefix}--condition-builder;
61
61
  margin-top: $spacing-03;
62
62
  margin-bottom: $spacing-03;
63
63
  }
64
- .#{$block-class}__tree
64
+ .#{$block-class}__Hierarchical
65
65
  .#{$block-class}__actions-container
66
66
  .#{$block-class}__condition-wrapper {
67
67
  flex-direction: column;
@@ -231,7 +231,7 @@ $colors: (
231
231
  }
232
232
  }
233
233
 
234
- .#{$block-class}__tree {
234
+ .#{$block-class}__Hierarchical {
235
235
  .#{$block-class}__condition-wrapper > :nth-child(n + 3) {
236
236
  flex-basis: 100%;
237
237
  }