loon-bulma-react 2022.1.0 → 2022.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.
Files changed (2) hide show
  1. package/README.md +28 -10
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -461,12 +461,25 @@ import { ButtonGroup, Bttn, Button, LightButton, InvertedButton, OutlinedButton
461
461
 
462
462
  Een DataTable is een tabel met een maximaal aantal rijen waarin je kan zoeken en sorteren. Voor een gewone, saaie, normale tabel kan je de [Table](#component-table) gebruiken. Voor re-renderen van de tabel moet de `data`-prop wel state zijn, anders werkt het rerenderen niet. Hetzelfde geld voor de `columns`-prop.
463
463
 
464
+ > #### LET OP!
465
+ >
466
+ > Het sorteren is aangepast. Om een column sorteerbaar te maken, moet je een van de onderstaande 4 waarden opgeven:
467
+ >
468
+ > - `'string'`: sorteer deze kolom alfabetisch
469
+ > - `'boolean'`: sorteer deze kolom als een boolean (true/false)
470
+ > - `'number'`: sorteer deze kolom numeriek
471
+ > - `'function'`: sorteer deze kolom met deze `function`<sup>\*</sup>.
472
+ >
473
+ > <i> <sup>\*</sup>: Als deze kolom JSX-Elementen bevat, werkt het sorteren _NIET_. Dan _MOET_ er een sort-function worden opgegeven om wel te kunnen sorteren.</i>
474
+
464
475
  Om eigen classes toe te voegen aan rows en aan columns zijn er methodes:
465
476
 
466
477
  - op de DataTable props zit de `rowClasses` function voor classes op de `<tr>`.
467
478
  - op de DataTableColum props zit de `columnClasses` function voor classes op de `<td>`.
468
479
  De gebruikte classes kunnen in een globale css file of in een lokaal geïmporteerde file staan (zoals hieronder).
469
- > LET OP: in combinatie met `isStriped: {true}` werkt het zetten van `background-color` ALLEEN in combinatie met `!important`. Anders wordt de achtergrondkleur weer overschreven door Bulma.
480
+ > #### LET OP!
481
+ >
482
+ > in combinatie met `isStriped: {true}` werkt het zetten van `background-color` ALLEEN in combinatie met `!important`. Anders wordt de achtergrondkleur weer overschreven door Bulma.
470
483
 
471
484
  ```css
472
485
  /** datatable.styles.css */
@@ -486,28 +499,28 @@ const nameSortFn = (a: any, b: any) => {
486
499
  const aNaam = a.first_name + ' ' + a.last_name;
487
500
  const bNaam = b.first_name + ' ' + b.last_name;
488
501
  if (aNaam < bNaam) return -1;
489
- if (aNaam > bNaam) return 1;
490
- return 0;
502
+ else if (aNaam > bNaam) return 1;
503
+ else return 0;
491
504
  };
492
505
 
493
- const dataTableHeaders = [
494
- { sort: true, value: 'id' },
506
+ const columns = [
507
+ { sort: 'number', value: 'id' },
495
508
  {
496
509
  header: 'Naam',
497
510
  sort: nameSortFn,
498
511
  value: (v: any) => `${v.first_name} ${v.last_name}`,
499
512
  },
500
- { header: 'Voornaam', sort: true, value: 'first_name' },
501
- { header: 'Achternaam', sort: true, value: 'last_name' },
513
+ { header: 'Voornaam', sort: 'string', value: 'first_name' },
514
+ { header: 'Achternaam', sort: 'string', value: 'last_name' },
502
515
  {
503
516
  value: 'email',
504
517
  columnClasses: (usr) => (usr.email.includes('.com') ? 'is-marked' : ''),
505
518
  },
506
- { header: 'Geslacht', sort: true, value: 'gender' },
507
- { header: 'Taal', sort: true, value: 'language' },
519
+ { header: 'Active', sort: 'boolean', value: 'is_active'}
520
+ { header: 'Geslacht', sort: 'string', value: 'gender' },
521
+ { header: 'Taal', sort: 'string', value: 'language' },
508
522
  {
509
523
  header: '',
510
- sort: false,
511
524
  value: () => <InvertedButton.Danger>DEL</InvertedButton.Danger>,
512
525
  },
513
526
  ];
@@ -525,6 +538,11 @@ export function DataTableTab() {
525
538
  return (
526
539
  <DataTable
527
540
  data={data}
541
+ headerContent={
542
+ <Button.Primary>Add</Button.Primary>
543
+ <Button.Warning>Change</Button.Warning>
544
+ <Button.Success>Refresh</Button.Success>
545
+ }
528
546
  columns={columns}
529
547
  onRowSelected={(i, r) => handleRowClick(i, r)}
530
548
  rowClasses={(item: IUser) => (item.first_name.startsWith('C') ? 'is-dangerous' : '')}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "loon-bulma-react",
3
- "version": "2022.1.0",
3
+ "version": "2022.1.1",
4
4
  "description": "Bulma &amp; ReactJS componenten voor Loon Salarissoftware",
5
5
  "author": "timroos1990",
6
6
  "license": "MIT",