@linzjs/step-ag-grid 7.19.5 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/src/components/Grid.d.ts +2 -1
  2. package/dist/src/components/gridForm/GridFormEditBearing.d.ts +5 -1
  3. package/dist/src/components/gridForm/GridFormMultiSelect.d.ts +8 -2
  4. package/dist/src/components/gridForm/GridFormPopoverMenu.d.ts +8 -2
  5. package/dist/src/components/gridForm/GridFormTextArea.d.ts +4 -1
  6. package/dist/src/components/gridForm/GridFormTextInput.d.ts +4 -1
  7. package/dist/src/components/gridPopoverEdit/GridPopoverEditBearing.d.ts +10 -1
  8. package/dist/src/utils/bearing.d.ts +2 -3
  9. package/dist/step-ag-grid.esm.js +67 -47
  10. package/dist/step-ag-grid.esm.js.map +1 -1
  11. package/package.json +1 -1
  12. package/src/components/Grid.tsx +3 -3
  13. package/src/components/gridForm/GridFormEditBearing.tsx +9 -4
  14. package/src/components/gridForm/GridFormMultiSelect.tsx +7 -7
  15. package/src/components/gridForm/GridFormPopoverMenu.tsx +9 -7
  16. package/src/components/gridForm/GridFormTextArea.tsx +2 -2
  17. package/src/components/gridForm/GridFormTextInput.tsx +4 -7
  18. package/src/components/gridPopoverEdit/GridPopoverEditBearing.ts +40 -32
  19. package/src/react-menu3/components/ControlledMenu.tsx +5 -1
  20. package/src/stories/grid/GridNonEditableRow.stories.tsx +6 -6
  21. package/src/stories/grid/GridPopoutBearing.stories.tsx +1 -1
  22. package/src/stories/grid/GridPopoutEditGenericTextArea.stories.tsx +5 -5
  23. package/src/stories/grid/GridPopoutEditMultiSelect.stories.tsx +3 -3
  24. package/src/stories/grid/GridReadOnly.stories.tsx +6 -6
  25. package/src/stories/grid/gridForm/GridFormDropDown.stories.tsx +60 -0
  26. package/src/stories/grid/gridForm/GridFormEditBearing.stories.tsx +56 -0
  27. package/src/stories/grid/gridForm/GridFormEditBearingCorrection.stories.tsx +56 -0
  28. package/src/stories/grid/gridForm/reactMenuTest.scss +3 -0
  29. package/src/utils/bearing.ts +10 -12
@@ -1,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import { ColDef } from "ag-grid-community";
2
3
  import { GridOptions } from "ag-grid-community/dist/lib/entities/gridOptions";
3
4
  export interface GridBaseRow {
4
5
  id: string | number;
@@ -14,7 +15,7 @@ export interface GridProps {
14
15
  externalSelectedItems?: any[];
15
16
  setExternalSelectedItems?: (items: any[]) => void;
16
17
  defaultColDef?: GridOptions["defaultColDef"];
17
- columnDefs: GridOptions["columnDefs"];
18
+ columnDefs: ColDef[];
18
19
  rowData: GridOptions["rowData"];
19
20
  noRowsOverlayText?: string;
20
21
  postSortRows?: GridOptions["postSortRows"];
@@ -2,8 +2,12 @@
2
2
  import { GridBaseRow } from "../Grid";
3
3
  import { CellEditorCommon } from "../GridCell";
4
4
  export interface GridFormEditBearingProps<RowType extends GridBaseRow> extends CellEditorCommon {
5
+ formatValue?: (value: any) => string;
5
6
  placeHolder?: string;
6
7
  range?: (value: number | null) => string | null;
7
- onSave?: (selectedRows: RowType[], value: number | null) => Promise<boolean>;
8
+ onSave?: (props: {
9
+ selectedRows: RowType[];
10
+ value: number | null;
11
+ }) => Promise<boolean>;
8
12
  }
9
13
  export declare const GridFormEditBearing: <RowType extends GridBaseRow>(props: GridFormEditBearingProps<RowType>) => JSX.Element;
@@ -19,8 +19,14 @@ export interface GridFormMultiSelectProps<RowType extends GridBaseRow> extends C
19
19
  filtered?: boolean;
20
20
  filterPlaceholder?: string;
21
21
  filterHelpText?: string | ((filter: string, options: MultiSelectOption[]) => string | undefined);
22
- onSelectFilter?: (filter: string, options: MultiSelectOption[]) => void;
23
- onSave?: (selectedRows: RowType[], selectedOptions: MultiSelectOption[]) => Promise<boolean>;
22
+ onSelectFilter?: (props: {
23
+ filter: string;
24
+ options: MultiSelectOption[];
25
+ }) => void;
26
+ onSave?: (props: {
27
+ selectedRows: RowType[];
28
+ selectedOptions: MultiSelectOption[];
29
+ }) => Promise<boolean>;
24
30
  headers?: GridFormMultiSelectGroup[];
25
31
  options: MultiSelectOption[] | ((selectedRows: RowType[]) => Promise<MultiSelectOption[]> | MultiSelectOption[]);
26
32
  invalid?: (selectedRows: RowType[], selectedOptions: MultiSelectOption[]) => boolean;
@@ -3,7 +3,10 @@ import { GridBaseRow } from "../Grid";
3
3
  import { CellEditorCommon } from "../GridCell";
4
4
  export interface GridFormPopoutMenuProps<RowType extends GridBaseRow> extends CellEditorCommon {
5
5
  options: (selectedRows: RowType[]) => Promise<MenuOption<RowType>[]>;
6
- defaultAction?: (selectedRows: RowType[], menuOption: SelectedMenuOptionResult<RowType>) => Promise<void>;
6
+ defaultAction?: (props: {
7
+ selectedRows: RowType[];
8
+ menuOption: SelectedMenuOptionResult<RowType>;
9
+ }) => Promise<void>;
7
10
  }
8
11
  /** Menu configuration types **/
9
12
  export declare const PopoutMenuSeparator: Readonly<{
@@ -17,7 +20,10 @@ export interface SelectedMenuOptionResult<RowType extends GridBaseRow> extends M
17
20
  }
18
21
  export interface MenuOption<RowType extends GridBaseRow> {
19
22
  label: JSX.Element | string | MenuSeparatorType;
20
- action?: (selectedRows: RowType[], menuOption: SelectedMenuOptionResult<RowType>) => Promise<void>;
23
+ action?: (props: {
24
+ selectedRows: RowType[];
25
+ menuOption: SelectedMenuOptionResult<RowType>;
26
+ }) => Promise<void>;
21
27
  disabled?: string | boolean;
22
28
  hidden?: boolean;
23
29
  subComponent?: (props: any) => JSX.Element;
@@ -5,7 +5,10 @@ import { TextInputValidatorProps } from "../../utils/textValidator";
5
5
  export interface GridFormTextAreaProps<RowType extends GridBaseRow> extends TextInputValidatorProps<RowType>, CellEditorCommon {
6
6
  placeholder?: string;
7
7
  width?: string | number;
8
- onSave?: (selectedRows: RowType[], value: string) => Promise<boolean>;
8
+ onSave?: (props: {
9
+ selectedRows: RowType[];
10
+ value: string;
11
+ }) => Promise<boolean>;
9
12
  helpText?: string;
10
13
  }
11
14
  export declare const GridFormTextArea: <RowType extends GridBaseRow>(props: GridFormTextAreaProps<RowType>) => JSX.Element;
@@ -6,7 +6,10 @@ export interface GridFormTextInputProps<RowType extends GridBaseRow> extends Tex
6
6
  placeholder?: string;
7
7
  units?: string;
8
8
  width?: string | number;
9
- onSave?: (selectedRows: RowType[], value: string) => Promise<boolean>;
9
+ onSave?: (props: {
10
+ selectedRows: RowType[];
11
+ value: string;
12
+ }) => Promise<boolean>;
10
13
  helpText?: string;
11
14
  }
12
15
  export declare const GridFormTextInput: <RowType extends GridBaseRow>(props: GridFormTextInputProps<RowType>) => JSX.Element;
@@ -2,6 +2,15 @@ import { ColDefT, GenericCellEditorProps } from "../GridCell";
2
2
  import { GridFormEditBearingProps } from "../gridForm/GridFormEditBearing";
3
3
  import { GridBaseRow } from "../Grid";
4
4
  import { GenericCellColDef } from "../gridRender/GridRenderGenericCell";
5
- export declare const GridPopoverEditBearingLike: <RowType extends GridBaseRow>(colDef: GenericCellColDef<RowType>, props: GenericCellEditorProps<GridFormEditBearingProps<RowType>>) => ColDefT<RowType>;
5
+ export declare const GridPopoverEditBearingEditorParams: {
6
+ placeHolder: string;
7
+ formatValue: (value: any) => string;
8
+ range: (value: number | null) => "Bearing is required" | "Bearing must be less than 360 degrees" | "Bearing must not be negative" | null;
9
+ };
6
10
  export declare const GridPopoverEditBearing: <RowType extends GridBaseRow>(colDef: GenericCellColDef<RowType>, props: GenericCellEditorProps<GridFormEditBearingProps<RowType>>) => ColDefT<RowType>;
11
+ export declare const GridPopoverEditBearingCorrectionEditorParams: {
12
+ placeHolder: string;
13
+ formatValue: (value: any) => string;
14
+ range: (value: number | null) => "Bearing correction is required" | "Bearing correction must be less than 360 degrees" | "Bearing correction must be greater then -180 degrees" | null;
15
+ };
7
16
  export declare const GridPopoverEditBearingCorrection: <RowType extends GridBaseRow>(colDef: GenericCellColDef<RowType>, props: GenericCellEditorProps<GridFormEditBearingProps<RowType>>) => ColDefT<RowType>;
@@ -1,6 +1,5 @@
1
- import { ValueFormatterParams } from "ag-grid-community/dist/lib/entities/colDef";
2
- export declare const bearingValueFormatter: (params: ValueFormatterParams) => string;
3
- export declare const bearingCorrectionValueFormatter: (params: ValueFormatterParams) => string;
1
+ export declare const bearingValueFormatter: (value: any) => string;
2
+ export declare const bearingCorrectionValueFormatter: (value: any) => string;
4
3
  export declare const bearingNumberParser: (value: string) => number | null;
5
4
  export declare const bearingStringValidator: (value: string, customInvalid?: ((value: number | null) => string | null) | undefined) => string | null;
6
5
  export declare const convertDDToDMS: (dd: number | null, showPositiveSymbol?: boolean, addTrailingZeros?: boolean) => string;
@@ -1597,7 +1597,12 @@ var ControlledMenuFr = function (_a, externalRef) {
1597
1597
  className: className
1598
1598
  }), style: __assign(__assign({}, containerProps === null || containerProps === void 0 ? void 0 : containerProps.style), { position: "relative" }), ref: containerRef }, { children: state && (jsx(SettingsContext.Provider, __assign({ value: settings }, { children: jsx(ItemSettingsContext.Provider, __assign({ value: itemSettings }, { children: jsx(EventHandlersContext.Provider, __assign({ value: eventHandlers }, { children: jsx(MenuList, __assign({}, restProps, { ariaLabel: ariaLabel || "Menu", externalRef: externalRef, containerRef: containerRef, onClose: onClose })) })) })) }))) })));
1599
1599
  if (portal === true && (anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) != null) {
1600
- portal = { target: anchorRef.current.ownerDocument.body };
1600
+ if (hasParentClass("react-menu-inline-test", anchorRef.current)) {
1601
+ portal = false;
1602
+ }
1603
+ else {
1604
+ portal = { target: anchorRef.current.ownerDocument.body };
1605
+ }
1601
1606
  }
1602
1607
  if (portal) {
1603
1608
  if (typeof portal === "boolean") {
@@ -3639,7 +3644,10 @@ var GridFormMultiSelect = function (props) {
3639
3644
  // Any changes to save?
3640
3645
  if (initialValues === JSON.stringify(options))
3641
3646
  return [2 /*return*/, true];
3642
- return [2 /*return*/, props.onSave(selectedRows, options.filter(function (o) { return o.checked; }))];
3647
+ return [2 /*return*/, props.onSave({
3648
+ selectedRows: selectedRows,
3649
+ selectedOptions: options.filter(function (o) { return o.checked; })
3650
+ })];
3643
3651
  });
3644
3652
  }); }, [initialValues, options, props]);
3645
3653
  // Load up options list if it's async function
@@ -3752,7 +3760,7 @@ var FilterInput = function (props) {
3752
3760
  return;
3753
3761
  }
3754
3762
  var preFilterOptions = JSON.stringify(options);
3755
- onSelectFilter(filterTrimmed, options);
3763
+ onSelectFilter({ filter: filterTrimmed, options: options });
3756
3764
  // Detect if options list changed and update
3757
3765
  if (preFilterOptions === JSON.stringify(options))
3758
3766
  return;
@@ -3852,17 +3860,17 @@ var GridFormPopoverMenu = function (props) {
3852
3860
  var _c = useState(null), subComponentSelected = _c[0], setSubComponentSelected = _c[1];
3853
3861
  var subComponentIsValid = useRef(false);
3854
3862
  var _d = useState(), subSelectedValue = _d[0], setSubSelectedValue = _d[1];
3855
- var defaultAction = useCallback(function (selectedRows, menuOption) { return __awaiter(void 0, void 0, void 0, function () {
3863
+ var defaultAction = useCallback(function (params) { return __awaiter(void 0, void 0, void 0, function () {
3856
3864
  return __generator(this, function (_a) {
3857
3865
  switch (_a.label) {
3858
3866
  case 0:
3859
3867
  if (!props.defaultAction) return [3 /*break*/, 2];
3860
- return [4 /*yield*/, props.defaultAction(selectedRows, menuOption)];
3868
+ return [4 /*yield*/, props.defaultAction(params)];
3861
3869
  case 1:
3862
3870
  _a.sent();
3863
3871
  return [3 /*break*/, 3];
3864
3872
  case 2:
3865
- console.error("No action specified for ".concat(menuOption.label, " menu options"));
3873
+ console.error("No action specified for ".concat(params.menuOption.label, " menu options"));
3866
3874
  _a.label = 3;
3867
3875
  case 3: return [2 /*return*/];
3868
3876
  }
@@ -3906,13 +3914,13 @@ var GridFormPopoverMenu = function (props) {
3906
3914
  }); })();
3907
3915
  }, [options, props.defaultAction, props.options, selectedRows]);
3908
3916
  var actionClick = useCallback(function (menuOption) { return __awaiter(void 0, void 0, void 0, function () {
3909
- var result;
3910
3917
  var _a;
3911
3918
  return __generator(this, function (_b) {
3912
3919
  switch (_b.label) {
3913
- case 0:
3914
- result = __assign(__assign({}, menuOption), { subValue: subSelectedValue });
3915
- return [4 /*yield*/, ((_a = menuOption.action) !== null && _a !== void 0 ? _a : defaultAction)(selectedRows, result)];
3920
+ case 0: return [4 /*yield*/, ((_a = menuOption.action) !== null && _a !== void 0 ? _a : defaultAction)({
3921
+ selectedRows: selectedRows,
3922
+ menuOption: __assign(__assign({}, menuOption), { subValue: subSelectedValue })
3923
+ })];
3916
3924
  case 1:
3917
3925
  _b.sent();
3918
3926
  return [2 /*return*/, true];
@@ -3989,22 +3997,22 @@ var GridPopoverMenu = function (colDef, custom) {
3989
3997
  } }), __assign({ editor: GridFormPopoverMenu }, custom));
3990
3998
  };
3991
3999
 
3992
- var bearingValueFormatter = function (params) {
3993
- var value = typeof params.value == "string" ? parseFloat(params.value) : params.value;
3994
- if (value == null) {
4000
+ var bearingValueFormatter = function (value) {
4001
+ var safeValue = typeof value == "string" ? parseFloat(value) : value;
4002
+ if (safeValue == null) {
3995
4003
  return "–";
3996
4004
  }
3997
- return convertDDToDMS(value, false, false);
4005
+ return convertDDToDMS(safeValue, false, false);
3998
4006
  };
3999
- var bearingCorrectionValueFormatter = function (params) {
4000
- var value = params.value;
4001
- if (value == null) {
4007
+ var bearingCorrectionValueFormatter = function (value) {
4008
+ var safeValue = value;
4009
+ if (safeValue == null) {
4002
4010
  return "–";
4003
4011
  }
4004
- if (typeof value === "string") {
4005
- return convertDDToDMS(bearingNumberParser(value), true, true);
4012
+ if (typeof safeValue === "string") {
4013
+ return convertDDToDMS(bearingNumberParser(safeValue), true, true);
4006
4014
  }
4007
- return convertDDToDMS(value, true, true);
4015
+ return convertDDToDMS(safeValue, true, true);
4008
4016
  };
4009
4017
  var bearingNumberParser = function (value) {
4010
4018
  if (value === "")
@@ -4078,7 +4086,7 @@ var TextInputFormatted = function (props) {
4078
4086
  };
4079
4087
 
4080
4088
  var GridFormEditBearing = function (props) {
4081
- var _a = useGridPopoverContext(), field = _a.field, initialValue = _a.value, formatValue = _a.formatValue;
4089
+ var _a = useGridPopoverContext(), field = _a.field, initialValue = _a.value;
4082
4090
  // This clears out any scientific precision
4083
4091
  var defaultValue = useMemo(function () { return (initialValue == null ? "" : parseFloat(parseFloat(initialValue).toFixed(10)).toString()); }, [initialValue]);
4084
4092
  var _b = useState(defaultValue), value = _b[0], setValue = _b[1];
@@ -4094,7 +4102,7 @@ var GridFormEditBearing = function (props) {
4094
4102
  return [2 /*return*/, true];
4095
4103
  }
4096
4104
  if (!props.onSave) return [3 /*break*/, 2];
4097
- return [4 /*yield*/, props.onSave(selectedRows, parsedValue)];
4105
+ return [4 /*yield*/, props.onSave({ selectedRows: selectedRows, value: parsedValue })];
4098
4106
  case 1: return [2 /*return*/, _a.sent()];
4099
4107
  case 2:
4100
4108
  if (field == null) {
@@ -4117,38 +4125,50 @@ var GridFormEditBearing = function (props) {
4117
4125
  }).popoverWrapper;
4118
4126
  return popoverWrapper(jsx("div", __assign({ className: "GridFormEditBearing-input Grid-popoverContainer" }, { children: jsx(TextInputFormatted, { value: defaultValue, onChange: function (e) {
4119
4127
  setValue(e.target.value.trim());
4120
- }, autoFocus: true, placeholder: props.placeHolder, formatted: bearingStringValidator(value, props.range) ? "?" : formatValue(bearingNumberParser(value)), error: bearingStringValidator(value, props.range), helpText: "Press enter or tab to save" }) })));
4128
+ }, autoFocus: true, placeholder: props.placeHolder, formatted: bearingStringValidator(value, props.range) || !props.formatValue
4129
+ ? "?"
4130
+ : props.formatValue(bearingNumberParser(value)), error: bearingStringValidator(value, props.range), helpText: "Press enter or tab to save" }) })));
4121
4131
  };
4122
4132
 
4123
4133
  var GridPopoverEditBearingLike = function (colDef, props) {
4124
- return GridCell(__assign({ initialWidth: 65, maxWidth: 150 }, colDef), __assign({ editor: GridFormEditBearing }, props));
4134
+ return GridCell(__assign({ initialWidth: 65, maxWidth: 150, valueFormatter: function (params) { var _a, _b; return (_b = (_a = props.editorParams) === null || _a === void 0 ? void 0 : _a.formatValue(params.value)) !== null && _b !== void 0 ? _b : ""; } }, colDef), __assign({ editor: GridFormEditBearing }, props));
4135
+ };
4136
+ var GridPopoverEditBearingEditorParams = {
4137
+ placeHolder: "Enter bearing",
4138
+ formatValue: bearingValueFormatter,
4139
+ range: function (value) {
4140
+ if (value === null)
4141
+ return "Bearing is required";
4142
+ if (value >= 360)
4143
+ return "Bearing must be less than 360 degrees";
4144
+ if (value < 0)
4145
+ return "Bearing must not be negative";
4146
+ return null;
4147
+ }
4125
4148
  };
4126
4149
  var GridPopoverEditBearing = function (colDef, props) {
4127
- return GridPopoverEditBearingLike(__assign({ valueFormatter: bearingValueFormatter }, colDef), {
4150
+ return GridPopoverEditBearingLike(colDef, {
4128
4151
  multiEdit: !!props.multiEdit,
4129
- editorParams: __assign({ placeHolder: "Enter bearing correction", range: function (value) {
4130
- if (value === null)
4131
- return "Bearing correction is required";
4132
- if (value >= 360)
4133
- return "Bearing correction must be less than 360 degrees";
4134
- if (value < 0)
4135
- return "Bearing correction must not be negative";
4136
- return null;
4137
- } }, props.editorParams)
4152
+ editorParams: __assign(__assign({}, GridPopoverEditBearingEditorParams), props.editorParams)
4138
4153
  });
4139
4154
  };
4155
+ var GridPopoverEditBearingCorrectionEditorParams = {
4156
+ placeHolder: "Enter bearing correction",
4157
+ formatValue: bearingCorrectionValueFormatter,
4158
+ range: function (value) {
4159
+ if (value === null)
4160
+ return "Bearing correction is required";
4161
+ if (value >= 360)
4162
+ return "Bearing correction must be less than 360 degrees";
4163
+ if (value <= -180)
4164
+ return "Bearing correction must be greater then -180 degrees";
4165
+ return null;
4166
+ }
4167
+ };
4140
4168
  var GridPopoverEditBearingCorrection = function (colDef, props) {
4141
- return GridPopoverEditBearingLike(__assign({ valueFormatter: bearingCorrectionValueFormatter }, colDef), {
4169
+ return GridPopoverEditBearingLike(colDef, {
4142
4170
  multiEdit: !!props.multiEdit,
4143
- editorParams: __assign({ placeHolder: "Enter bearing correction", range: function (value) {
4144
- if (value === null)
4145
- return "Bearing is required";
4146
- if (value >= 360)
4147
- return "Bearing must be less than 360 degrees";
4148
- if (value <= -180)
4149
- return "Bearing must be greater then -180 degrees";
4150
- return null;
4151
- } }, props.editorParams)
4171
+ editorParams: __assign(__assign({}, GridPopoverEditBearingCorrectionEditorParams), props.editorParams)
4152
4172
  });
4153
4173
  };
4154
4174
 
@@ -4337,7 +4357,7 @@ var GridFormTextArea = function (props) {
4337
4357
  if (initValue === trimmedValue)
4338
4358
  return [2 /*return*/, true];
4339
4359
  if (!props.onSave) return [3 /*break*/, 2];
4340
- return [4 /*yield*/, props.onSave(selectedRows, trimmedValue)];
4360
+ return [4 /*yield*/, props.onSave({ selectedRows: selectedRows, value: trimmedValue })];
4341
4361
  case 1: return [2 /*return*/, _a.sent()];
4342
4362
  case 2:
4343
4363
  selectedRows.forEach(function (row) { return (row[field] = trimmedValue); });
@@ -4374,7 +4394,7 @@ var GridFormTextInput = function (props) {
4374
4394
  if (initValue === trimmedValue)
4375
4395
  return [2 /*return*/, true];
4376
4396
  if (!props.onSave) return [3 /*break*/, 2];
4377
- return [4 /*yield*/, props.onSave(selectedRows, trimmedValue)];
4397
+ return [4 /*yield*/, props.onSave({ selectedRows: selectedRows, value: trimmedValue })];
4378
4398
  case 1: return [2 /*return*/, _a.sent()];
4379
4399
  case 2:
4380
4400
  selectedRows.forEach(function (row) { return (row[field] = trimmedValue); });
@@ -4387,7 +4407,7 @@ var GridFormTextInput = function (props) {
4387
4407
  invalid: invalid,
4388
4408
  save: save
4389
4409
  }).popoverWrapper;
4390
- return popoverWrapper(jsx("div", __assign({ style: { display: "flex", flexDirection: "row", width: (_b = props.width) !== null && _b !== void 0 ? _b : 240 }, className: "FormTest subComponent" }, { children: jsx(TextInputFormatted, { value: value, onChange: function (e) { return setValue(e.target.value); }, error: invalid(), formatted: props.units, style: { width: "100%" }, placeholder: props.placeholder, helpText: helpText }) })));
4410
+ return popoverWrapper(jsx("div", __assign({ style: { display: "flex", flexDirection: "row" }, className: "FormTest subComponent" }, { children: jsx(TextInputFormatted, { value: value, onChange: function (e) { return setValue(e.target.value); }, error: invalid(), formatted: props.units, style: { width: (_b = props.width) !== null && _b !== void 0 ? _b : 240 }, placeholder: props.placeholder, helpText: helpText }) })));
4391
4411
  };
4392
4412
 
4393
4413
  var GridPopoverTextInput = function (colDef, params) {