@jasperoosthoek/react-toolbox 0.6.6 → 0.6.8

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jasperoosthoek/react-toolbox",
3
- "version": "0.6.6",
3
+ "version": "0.6.8",
4
4
  "author": "jasperoosthoek",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -161,7 +161,6 @@ export const FormSwitch = ({ className = '', ...restProps }: FormCheckboxProps)
161
161
  );
162
162
 
163
163
  export type DisabledProps = {
164
-
165
164
  list: any[];
166
165
  value: string | number;
167
166
  state: any;
@@ -432,12 +431,12 @@ export const FormDropdown = <T,>({
432
431
  key={key}
433
432
  disabled={
434
433
  typeof disabled === 'function'
435
- ? disabled({ initialValue, list, value: item[idKey] as string, state, initialState })
434
+ ? disabled({ initialValue, list, value: item[idKey] as number | string, state, initialState })
436
435
  : disabled
437
436
  }
438
437
  selected={value === item[idKey]}
439
438
  cursor='pointer'
440
- onClick={() => onChange(item[idKey] as any)}
439
+ onClick={() => onChange(item[idKey] as number | string)}
441
440
  {...restProps}
442
441
  >
443
442
  {item[nameKey] as string}
@@ -67,9 +67,10 @@ export type OnMove<R> = ({ item, target, reset }: OnMoveProps<R>) => void;
67
67
  export type OnClickRow<R> = (row: R) => void;
68
68
 
69
69
  export type DataTableHeader = {
70
- search?: boolean,
71
- numberOfRows?: boolean,
72
- pagination?: boolean,
70
+ search?: boolean;
71
+ numberOfRows?: boolean;
72
+ pagination?: boolean;
73
+ customHeader?: ReactElement | string;
73
74
  };
74
75
 
75
76
  export type DataTableProps<D extends any[]> = {
@@ -182,7 +183,7 @@ export const DataTable = <D extends any[]>({
182
183
  {...{ ...(typeof onClickRow === 'function' || showEditModal)
183
184
  ? { onClick: () => {
184
185
  if (onClickRow) onClickRow(row);
185
- if (hasProvider) showEditModal(row);
186
+ if (hasProvider && showEditModalOnClickRow) showEditModal(row);
186
187
  } }
187
188
  : {}
188
189
  }}
@@ -211,14 +212,19 @@ export const DataTable = <D extends any[]>({
211
212
  )), [columns])
212
213
 
213
214
  if (!Component) return null;
215
+
216
+ const customHeader = showHeader && (showHeader as DataTableHeader).customHeader;
217
+ const sm = customHeader ? 4 : 6;
218
+ const lg = customHeader ? 3 : 4;
219
+
214
220
  return (
215
221
  <div style={style} className={className}>
216
- {showHeader &&
222
+ {(showHeader) &&
217
223
  <Row className="mb-4">
218
224
  {(showHeader === true || showHeader.search) && (
219
225
  <Col
220
226
  xs={12}
221
- lg={4}
227
+ lg={lg}
222
228
  className="d-flex flex-col justify-content-end align-items-end"
223
229
  >
224
230
  <InputGroup>
@@ -240,8 +246,8 @@ export const DataTable = <D extends any[]>({
240
246
  {(showHeader === true || showHeader.numberOfRows) && (
241
247
  <Col
242
248
  xs={12}
243
- sm={6}
244
- lg={4}
249
+ sm={sm}
250
+ lg={lg}
245
251
  className="d-flex flex-col justify-content-lg-center align-items-center justify-content-sm-start mb-2 mb-sm-0"
246
252
  >
247
253
  <Form.Group>
@@ -275,8 +281,8 @@ export const DataTable = <D extends any[]>({
275
281
  {(showHeader === true || showHeader.pagination) && (
276
282
  <Col
277
283
  xs={12}
278
- sm={6}
279
- lg={4}
284
+ sm={sm}
285
+ lg={lg}
280
286
  className="d-flex flex-col justify-content-end align-items-end"
281
287
  >
282
288
  <ButtonGroup>
@@ -308,6 +314,17 @@ export const DataTable = <D extends any[]>({
308
314
  </ButtonGroup>
309
315
  </Col>
310
316
  )}
317
+
318
+ {customHeader && (
319
+ <Col
320
+ xs={12}
321
+ sm={sm}
322
+ lg={lg}
323
+ className="d-flex flex-col justify-content-end align-items-end"
324
+ >
325
+ {customHeader}
326
+ </Col>
327
+ )}
311
328
  </Row>
312
329
  }
313
330