@7shifts/sous-chef 3.24.0 → 3.26.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.
@@ -4587,10 +4587,13 @@ var calculatePercentageOfProportion = function calculatePercentageOfProportion(p
4587
4587
  var ColumnSizes = function ColumnSizes(_ref) {
4588
4588
  var columns = _ref.columns,
4589
4589
  showActionMenu = _ref.showActionMenu;
4590
- var columnPercentageSizes = calculatePercentageOfProportion(columns.map(function (column) {
4590
+ var visibleColumns = columns.filter(function (column) {
4591
+ return !column.hidden;
4592
+ });
4593
+ var columnPercentageSizes = calculatePercentageOfProportion(visibleColumns.map(function (column) {
4591
4594
  return column.size || 1;
4592
4595
  }));
4593
- return React__default.createElement("colgroup", null, columns.map(function (column, index) {
4596
+ return React__default.createElement("colgroup", null, visibleColumns.map(function (column, index) {
4594
4597
  return React__default.createElement("col", {
4595
4598
  key: column.name,
4596
4599
  style: {
@@ -4657,7 +4660,9 @@ var DataTableHeader = function DataTableHeader(_ref) {
4657
4660
  showActionMenu: showActionMenu
4658
4661
  }), React__default.createElement("thead", null, React__default.createElement("tr", {
4659
4662
  className: styles$a['data-table-header']
4660
- }, columns.map(function (column) {
4663
+ }, columns.filter(function (column) {
4664
+ return !column.hidden;
4665
+ }).map(function (column) {
4661
4666
  var _classnames, _classnames2;
4662
4667
 
4663
4668
  var isSortable = column.isSortable;
@@ -7074,6 +7079,11 @@ var DataTableCellElement = function DataTableCellElement(_ref, ref) {
7074
7079
 
7075
7080
  var column = (_columns$columnIndex = columns === null || columns === void 0 ? void 0 : columns[columnIndex]) != null ? _columns$columnIndex : null;
7076
7081
  var isRightAligned = column ? column.isRightAligned : false;
7082
+
7083
+ if (column && column.hidden) {
7084
+ return null;
7085
+ }
7086
+
7077
7087
  var hasError = !!error;
7078
7088
  var errorMessage = error;
7079
7089
  var icon = hasError && React__default.createElement("div", {
@@ -7851,7 +7861,7 @@ function CustomMenu(_ref) {
7851
7861
  }, getLocalizedString('default.CREATE'))))));
7852
7862
  }
7853
7863
 
7854
- var useSelectField = function useSelectField(_ref, isMultiSelect) {
7864
+ var useSelectField = function useSelectField(_ref) {
7855
7865
  var _ref$asToolbarFilter = _ref.asToolbarFilter,
7856
7866
  asToolbarFilter = _ref$asToolbarFilter === void 0 ? false : _ref$asToolbarFilter,
7857
7867
  caption = _ref.caption,
@@ -7879,10 +7889,6 @@ var useSelectField = function useSelectField(_ref, isMultiSelect) {
7879
7889
  _ref$isSearchable = _ref.isSearchable,
7880
7890
  isSearchable = _ref$isSearchable === void 0 ? true : _ref$isSearchable;
7881
7891
 
7882
- if (isMultiSelect === void 0) {
7883
- isMultiSelect = false;
7884
- }
7885
-
7886
7892
  var _useState = useState(false),
7887
7893
  isMenuInputFocus = _useState[0],
7888
7894
  setIsMenuInputFocus = _useState[1];
@@ -7940,14 +7946,12 @@ var useSelectField = function useSelectField(_ref, isMultiSelect) {
7940
7946
  placeholder: placeholder,
7941
7947
  styles: getSelectStyles({
7942
7948
  isInvalid: hasError,
7943
- asToolbarFilter: asToolbarFilter,
7944
- wrapToNextLine: isMultiSelect ? true : undefined
7949
+ asToolbarFilter: asToolbarFilter
7945
7950
  }),
7946
7951
  value: controllers.value,
7947
7952
  defaultValue: defaultValue,
7948
7953
  menuIsOpen: isMenuInputFocus || undefined,
7949
- isSearchable: isSearchable,
7950
- isMulti: isMultiSelect
7954
+ isSearchable: isSearchable
7951
7955
  };
7952
7956
  var fieldProps = {
7953
7957
  caption: caption,
@@ -9042,20 +9046,82 @@ var PasswordField = function PasswordField(_ref) {
9042
9046
  }))));
9043
9047
  };
9044
9048
 
9045
- var MultiSelectField = function MultiSelectField(props) {
9046
- var _props$closeOnSelect;
9047
-
9048
- var closeOnSelect = (_props$closeOnSelect = props.closeOnSelect) != null ? _props$closeOnSelect : false;
9049
-
9050
- var _useSelectField = useSelectField(_extends({}, props, {
9051
- isClearable: true
9052
- }), true),
9053
- fieldProps = _useSelectField.fieldProps,
9054
- selectProps = _useSelectField.selectProps;
9049
+ var MultiSelectField = function MultiSelectField(_ref) {
9050
+ var name = _ref.name,
9051
+ inputId = _ref.id,
9052
+ value = _ref.value,
9053
+ options = _ref.options,
9054
+ onChange = _ref.onChange,
9055
+ onBlur = _ref.onBlur,
9056
+ UserCustomOption = _ref.CustomOption,
9057
+ label = _ref.label,
9058
+ caption = _ref.caption,
9059
+ error = _ref.error,
9060
+ placeholder = _ref.placeholder,
9061
+ noOptionsMessage = _ref.noOptionsMessage,
9062
+ disabled = _ref.disabled,
9063
+ _ref$closeOnSelect = _ref.closeOnSelect,
9064
+ closeOnSelect = _ref$closeOnSelect === void 0 ? false : _ref$closeOnSelect,
9065
+ _ref$menuShouldScroll = _ref.menuShouldScrollIntoView,
9066
+ menuShouldScrollIntoView = _ref$menuShouldScroll === void 0 ? true : _ref$menuShouldScroll,
9067
+ testId = _ref.testId,
9068
+ _ref$isSearchable = _ref.isSearchable,
9069
+ isSearchable = _ref$isSearchable === void 0 ? true : _ref$isSearchable;
9070
+ var controllers = useMultiSelectFieldControllers({
9071
+ name: name,
9072
+ id: inputId,
9073
+ value: value,
9074
+ onChange: onChange,
9075
+ onBlur: onBlur,
9076
+ error: error
9077
+ });
9078
+ var hasError = !!controllers.error;
9079
+ var fieldProps = {
9080
+ name: name,
9081
+ id: controllers.id,
9082
+ label: label,
9083
+ caption: caption,
9084
+ error: controllers.error
9085
+ };
9086
+ var defaultNoOptionsMessage = noOptionsMessage && typeof noOptionsMessage === 'string' ? function () {
9087
+ return noOptionsMessage;
9088
+ } : undefined;
9089
+ return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement(Select, {
9090
+ inputId: controllers.id,
9091
+ options: options,
9092
+ isDisabled: disabled,
9093
+ value: controllers.value,
9094
+ placeholder: placeholder,
9095
+ noOptionsMessage: typeof noOptionsMessage === 'function' ? noOptionsMessage : defaultNoOptionsMessage,
9096
+ styles: getSelectStyles({
9097
+ isInvalid: hasError,
9098
+ wrapToNextLine: true
9099
+ }),
9100
+ menuPortalTarget: document.body,
9101
+ onChange: controllers.onChange,
9102
+ onBlur: controllers.onBlur,
9103
+ isMulti: true,
9104
+ closeMenuOnSelect: closeOnSelect,
9105
+ componentsProps: {
9106
+ testId: testId,
9107
+ UserCustomOption: UserCustomOption
9108
+ },
9109
+ components: {
9110
+ SelectContainer: CustomContainer,
9111
+ Option: UserCustomOption ? CustomOption : components.Option
9112
+ },
9113
+ menuShouldScrollIntoView: menuShouldScrollIntoView,
9114
+ menuPlacement: menuShouldScrollIntoView ? 'bottom' : 'auto',
9115
+ menuPosition: menuShouldScrollIntoView ? 'absolute' : 'fixed',
9116
+ closeMenuOnScroll: function closeMenuOnScroll(e) {
9117
+ if (menuShouldScrollIntoView || !e.target) {
9118
+ return false;
9119
+ }
9055
9120
 
9056
- return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement(Select, Object.assign({
9057
- closeMenuOnSelect: closeOnSelect
9058
- }, selectProps)));
9121
+ return !isScrollingTheSelectMenu(e.target);
9122
+ },
9123
+ isSearchable: isSearchable
9124
+ }));
9059
9125
  };
9060
9126
 
9061
9127
  var styles$_ = {"custom-list":"_uC4zU"};