Skip to content

Commit 05b14fb

Browse files
Improved checkbox behavior
1 parent 92f6e49 commit 05b14fb

File tree

2 files changed

+25
-3
lines changed

2 files changed

+25
-3
lines changed

inventory-manager/eslint.config.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,19 @@ export default defineConfig([
1919
ecmaVersion: 2020,
2020
globals: globals.browser,
2121
},
22+
rules: {
23+
'react-refresh/only-export-components': [
24+
'warn',
25+
{
26+
allowExportNames: [
27+
'SearchContext',
28+
'useSearchContext',
29+
'useDataContext',
30+
'DataContext'],
31+
},
32+
],
33+
'@typescript-eslint/no-explicit-any': 'warn',
34+
'@typescript-eslint/no-unused-vars': 'warn',
35+
},
2236
},
2337
])

inventory-manager/src/components/page-content/segment3-table/segment/InventoryTable.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ import ProductForm from "../../segment2-new_product/ProductForm";
1010
import currencyTransformator from "../../../../utils/CurrencyFormatter.ts";
1111

1212
type DataIndex = keyof Product;
13+
const delay = (ms: number) => new Promise(resolve => setTimeout(resolve, ms));
14+
1315
const InventoryTable: React.FC = () => {
1416
const [isModalVisible, setIsModalVisible] = useState(false);
1517
const [editingProduct, setEditingProduct] = useState<Product | null>(null);
18+
const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([]);
19+
1620

1721
const handleClose = () => {
1822
setIsModalVisible(false);
@@ -197,7 +201,7 @@ const InventoryTable: React.FC = () => {
197201
{text: 'No stock', value: '2'}
198202
],
199203
filterMultiple: false,
200-
filteredValue: stockQuantity ? ['1', '2'].includes(String(stockQuantity)) ? [String(stockQuantity)] : null: null,
204+
filteredValue: stockQuantity ? ['1', '2'].includes(String(stockQuantity)) ? [String(stockQuantity)] : null : null,
201205
onFilter: (_value, _record) => {
202206
return true;
203207
},
@@ -226,8 +230,12 @@ const InventoryTable: React.FC = () => {
226230
];
227231

228232
const rowSelection = {
229-
onChange: async (_: any, selectedRowsData: Product[]) => {
230-
await changeAvailabilityOfSelected(selectedRowsData);
233+
selectedRowKeys,
234+
onChange: async (keys: React.Key[], rows: Product[]) => {
235+
setSelectedRowKeys(keys);
236+
await changeAvailabilityOfSelected(rows);
237+
await delay(400).then(() => setSelectedRowKeys([]));
238+
231239
},
232240
};
233241

0 commit comments

Comments
 (0)