@linzjs/step-ag-grid 8.3.0 → 8.3.2

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.
@@ -4,6 +4,7 @@ export interface GridPopoverHookProps<RowType> {
4
4
  className: string | undefined;
5
5
  invalid?: () => Promise<JSX.Element | boolean | string | null | undefined> | JSX.Element | boolean | string | null | undefined;
6
6
  save?: (selectedRows: RowType[]) => Promise<boolean>;
7
+ dontSaveOnExternalClick?: boolean;
7
8
  }
8
9
  export declare const useGridPopoverHook: <RowType extends GridBaseRow>(props: GridPopoverHookProps<RowType>) => {
9
10
  popoverWrapper: (children: JSX.Element) => JSX.Element;
@@ -2864,7 +2864,7 @@ var Grid = function (params) {
2864
2864
  var adjustColDefs = params.columnDefs.map(function (colDef) {
2865
2865
  var _a;
2866
2866
  var colDefEditable = colDef.editable;
2867
- var editable = combineEditables(params.readOnly !== false, (_a = params.defaultColDef) === null || _a === void 0 ? void 0 : _a.editable, colDefEditable);
2867
+ var editable = combineEditables(params.readOnly !== true, (_a = params.defaultColDef) === null || _a === void 0 ? void 0 : _a.editable, colDefEditable);
2868
2868
  return __assign(__assign({}, colDef), { editable: editable, cellClassRules: __assign(__assign({}, colDef.cellClassRules), { "GridCell-readonly": function (ccp) { return !editable(ccp); } }) });
2869
2869
  });
2870
2870
  return params.selectable
@@ -3143,9 +3143,13 @@ var useGridPopoverHook = function (props) {
3143
3143
  zIndex: 1000
3144
3144
  } })), children, jsx("button", { ref: saveButtonRef, "data-reason": "", onClick: function (e) {
3145
3145
  var _a;
3146
- triggerSave((_a = e.currentTarget.getAttribute("data-reason")) !== null && _a !== void 0 ? _a : undefined).then();
3146
+ var reason = (_a = e.currentTarget.getAttribute("data-reason")) !== null && _a !== void 0 ? _a : undefined;
3147
+ if (props.dontSaveOnExternalClick && reason === CloseReason.BLUR) {
3148
+ reason = CloseReason.CANCEL;
3149
+ }
3150
+ triggerSave(reason).then();
3147
3151
  }, style: { display: "none" } })] }))) }));
3148
- }, [anchorRef, isOpen, props.className, saving, triggerSave]);
3152
+ }, [anchorRef, isOpen, props.className, props.dontSaveOnExternalClick, saving, triggerSave]);
3149
3153
  return {
3150
3154
  popoverWrapper: popoverWrapper,
3151
3155
  triggerSave: triggerSave
@@ -3436,26 +3440,11 @@ var GridFormDropDown = function (props) {
3436
3440
  }
3437
3441
  });
3438
3442
  }); }, [filter, filteredValues, options, props, selectItemHandler, selectedItem, selectedRows, subSelectedValue]);
3439
- var onMouseEnterFocus = useCallback(function (item) {
3440
- setSelectedItem(item);
3441
- if (item.subComponent) {
3442
- subComponentIsValid.current = true;
3443
- subComponentInitialValue.current = null;
3444
- }
3445
- else {
3446
- setSubSelectedValue(null);
3447
- subComponentIsValid.current = true;
3448
- }
3449
- }, []);
3450
- var onMouseLeaveFocus = useCallback(function () {
3451
- setSelectedItem(null);
3452
- setSubSelectedValue(null);
3453
- subComponentIsValid.current = true;
3454
- }, []);
3455
3443
  var popoverWrapper = useGridPopoverHook({
3456
3444
  className: props.className,
3457
3445
  invalid: function () { return !!(selectedItem && !subComponentIsValid.current); },
3458
- save: save
3446
+ save: save,
3447
+ dontSaveOnExternalClick: true
3459
3448
  }).popoverWrapper;
3460
3449
  var lastHeader = null;
3461
3450
  var showHeader = null;
@@ -3484,7 +3473,17 @@ var GridFormDropDown = function (props) {
3484
3473
  lastHeader = null;
3485
3474
  }
3486
3475
  }
3487
- return ((!filteredValues || filteredValues.includes(item)) && (jsxs(Fragment$1, { children: [showHeader, jsxs("div", { children: [jsxs(MenuItem, __assign({ disabled: !!item.disabled, title: item.disabled && typeof item.disabled !== "boolean" ? item.disabled : "", value: item.value, onFocus: function () { return onMouseEnterFocus(item); }, onMouseEnter: function () { return onMouseEnterFocus(item); }, onMouseLeave: onMouseLeaveFocus, onClick: function (e) {
3476
+ return ((!filteredValues || filteredValues.includes(item)) && (jsxs(Fragment, { children: [showHeader, jsxs("div", { children: [jsxs(MenuItem, __assign({ disabled: !!item.disabled, title: item.disabled && typeof item.disabled !== "boolean" ? item.disabled : "", value: item.value, onFocus: function () {
3477
+ setSelectedItem(item);
3478
+ if (item.subComponent) {
3479
+ subComponentIsValid.current = true;
3480
+ subComponentInitialValue.current = null;
3481
+ }
3482
+ else {
3483
+ setSubSelectedValue(null);
3484
+ subComponentIsValid.current = true;
3485
+ }
3486
+ }, onClick: function (e) {
3488
3487
  if (item.subComponent) {
3489
3488
  e.keepOpen = true;
3490
3489
  }
@@ -3508,7 +3507,7 @@ var GridFormDropDown = function (props) {
3508
3507
  return [2 /*return*/];
3509
3508
  });
3510
3509
  }); }
3511
- } }, { children: item.subComponent && (jsx("div", __assign({ className: "subComponent" }, { children: jsx(item.subComponent, {}, "".concat(fieldToString(field), "-").concat(index, "_subcomponent_inner")) }))) }))); } }), "".concat(item.label, "_subcomponent")))] }, "menu-wrapper-".concat(index))] })));
3510
+ } }, { children: item.subComponent && (jsx("div", __assign({ className: "subComponent" }, { children: jsx(item.subComponent, {}, "".concat(fieldToString(field), "-").concat(index, "_subcomponent_inner")) }))) }))); } }), "".concat(item.label, "_subcomponent")))] }, "menu-wrapper-".concat(index))] }, "".concat(index))));
3512
3511
  })] }) }))] }));
3513
3512
  };
3514
3513