@linzjs/step-ag-grid 6.1.0 → 6.1.1
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.
- package/dist/index.js +12 -11
- package/dist/index.js.map +1 -1
- package/dist/step-ag-grid.esm.js +12 -11
- package/dist/step-ag-grid.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/gridForm/GridFormDropDown.tsx +14 -10
package/dist/step-ag-grid.esm.js
CHANGED
|
@@ -3094,14 +3094,16 @@ var GridFormDropDown = function (props) {
|
|
|
3094
3094
|
var optionsInitialising = useRef(false);
|
|
3095
3095
|
var _d = useState(null), options = _d[0], setOptions = _d[1];
|
|
3096
3096
|
var subComponentIsValid = useRef(false);
|
|
3097
|
-
var
|
|
3097
|
+
var subComponentInitialValue = useRef(null);
|
|
3098
|
+
var _e = useState(null), subSelectedValue = _e[0], setSubSelectedValue = _e[1];
|
|
3098
3099
|
var _f = useState(null), selectedSubComponent = _f[0], setSelectedSubComponent = _f[1];
|
|
3099
3100
|
var selectItemHandler = useCallback(function (value, subComponentValue) { return __awaiter(void 0, void 0, void 0, function () {
|
|
3100
3101
|
var hasChanged;
|
|
3101
3102
|
return __generator(this, function (_a) {
|
|
3102
3103
|
switch (_a.label) {
|
|
3103
3104
|
case 0:
|
|
3104
|
-
hasChanged = selectedRows.some(function (row) { return row[field] !== value; })
|
|
3105
|
+
hasChanged = selectedRows.some(function (row) { return row[field] !== value; }) ||
|
|
3106
|
+
(subComponentValue !== undefined && subComponentInitialValue.current !== JSON.stringify(subComponentValue));
|
|
3105
3107
|
if (!hasChanged) return [3 /*break*/, 3];
|
|
3106
3108
|
if (!props.onSelectedItem) return [3 /*break*/, 2];
|
|
3107
3109
|
return [4 /*yield*/, props.onSelectedItem({ selectedRows: selectedRows, value: value, subComponentValue: subComponentValue })];
|
|
@@ -3277,15 +3279,10 @@ var GridFormDropDown = function (props) {
|
|
|
3277
3279
|
var _a;
|
|
3278
3280
|
return item.value === MenuSeparatorString ? (jsx(MenuDivider, {}, "$$divider_".concat(index))) : item.value === MenuHeaderString ? (jsx(MenuHeader, { children: item.label }, "$$header_".concat(index))) : filteredValues.includes(item.value) ? null : (jsxs("div", { children: [jsxs(MenuItem, __assign({ disabled: !!item.disabled, title: item.disabled && typeof item.disabled !== "boolean" ? item.disabled : "", value: item.value, onClick: function (e) {
|
|
3279
3281
|
if (item.subComponent) {
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
}
|
|
3285
|
-
else {
|
|
3286
|
-
// toggle selection on
|
|
3287
|
-
setSelectedSubComponent(item);
|
|
3288
|
-
}
|
|
3282
|
+
// toggle selection
|
|
3283
|
+
setSelectedSubComponent(selectedSubComponent === item ? null : item);
|
|
3284
|
+
subComponentIsValid.current = true;
|
|
3285
|
+
subComponentInitialValue.current = null;
|
|
3289
3286
|
e.keepOpen = true;
|
|
3290
3287
|
}
|
|
3291
3288
|
else {
|
|
@@ -3300,6 +3297,10 @@ var GridFormDropDown = function (props) {
|
|
|
3300
3297
|
value: subSelectedValue,
|
|
3301
3298
|
setValue: function (value) {
|
|
3302
3299
|
setSubSelectedValue(value);
|
|
3300
|
+
if (subComponentInitialValue.current === null) {
|
|
3301
|
+
// copy the default value of the sub-component so we can change detect on save
|
|
3302
|
+
subComponentInitialValue.current = JSON.stringify(value);
|
|
3303
|
+
}
|
|
3303
3304
|
},
|
|
3304
3305
|
setValid: function (valid) {
|
|
3305
3306
|
subComponentIsValid.current = valid;
|