arengibook 2.0.12-table → 2.0.13-table

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/dist/index.js +36 -16
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -47682,9 +47682,6 @@ var Table = function Table(_ref7) {
47682
47682
  });
47683
47683
  setVisibleColumns(orderedSelectedColumns);
47684
47684
  };
47685
- var resetColumns = function resetColumns() {
47686
- setVisibleColumns(columns);
47687
- };
47688
47685
 
47689
47686
  // --- Body templates by type ---
47690
47687
 
@@ -47703,7 +47700,7 @@ var Table = function Table(_ref7) {
47703
47700
  }, []);
47704
47701
  var dateTemplate = useCallback(function (rowData, options) {
47705
47702
  var val = rowData[options.field];
47706
- if (!val) return '';
47703
+ if (!val || val === 'N/A') return 'N/A';
47707
47704
  // Forcer le parsing en heure locale pour éviter le décalage UTC
47708
47705
  // Supporte YYYY-MM-DD (ISO) et dd/mm/YYYY (format français du backend)
47709
47706
  var str = String(val);
@@ -47721,7 +47718,9 @@ var Table = function Table(_ref7) {
47721
47718
  m = _str$split4[1];
47722
47719
  d = _str$split4[2];
47723
47720
  }
47724
- return new Date(y, m - 1, d).toLocaleDateString('fr-FR', {
47721
+ var date = new Date(y, m - 1, d);
47722
+ if (isNaN(date.getTime())) return 'N/A';
47723
+ return date.toLocaleDateString('fr-FR', {
47725
47724
  day: '2-digit',
47726
47725
  month: '2-digit',
47727
47726
  year: 'numeric'
@@ -47903,9 +47902,10 @@ var Table = function Table(_ref7) {
47903
47902
  }, []);
47904
47903
  var dateEditor = useCallback(function (options) {
47905
47904
  // Convertit la valeur (string dd/mm/YYYY ou YYYY-MM-DD) en objet Date pour le DatePicker
47905
+ // Fallback sur aujourd'hui si la valeur est absente ou invalide (N/A, Invalid Date…)
47906
47906
  var dateObj = null;
47907
47907
  var str = options.value ? String(options.value) : null;
47908
- if (str) {
47908
+ if (str && str !== 'N/A') {
47909
47909
  if (str.includes('/')) {
47910
47910
  var _str$split5 = str.split('/'),
47911
47911
  _str$split6 = _slicedToArray$c(_str$split5, 3),
@@ -47922,6 +47922,7 @@ var Table = function Table(_ref7) {
47922
47922
  dateObj = new Date(_y, _m - 1, _d);
47923
47923
  }
47924
47924
  }
47925
+ if (!dateObj || isNaN(dateObj.getTime())) dateObj = new Date();
47925
47926
  return /*#__PURE__*/React__default.createElement(DatePicker, {
47926
47927
  value: dateObj,
47927
47928
  onChange: function onChange(e) {
@@ -48142,16 +48143,35 @@ var Table = function Table(_ref7) {
48142
48143
  className: "w-full sm:w-20rem",
48143
48144
  display: "chip",
48144
48145
  placeholder: "Choisir les colonnes",
48145
- appendTo: "self"
48146
- }), /*#__PURE__*/React__default.createElement("button", {
48147
- type: "button",
48148
- className: "p-button p-component p-button-text p-button-sm",
48149
- onClick: resetColumns,
48150
- title: "Tout afficher"
48151
- }, /*#__PURE__*/React__default.createElement("span", {
48152
- className: "p-button-icon p-c pi pi-refresh"
48153
- }))));
48154
- return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(DataTable, {
48146
+ appendTo: document.body,
48147
+ panelHeaderTemplate: /*#__PURE__*/React__default.createElement("div", {
48148
+ style: {
48149
+ display: 'flex',
48150
+ alignItems: 'center',
48151
+ gap: '0.5rem',
48152
+ padding: '0.5rem 1rem',
48153
+ borderBottom: '1px solid #e4e4e7'
48154
+ }
48155
+ }, /*#__PURE__*/React__default.createElement("input", {
48156
+ type: "checkbox",
48157
+ checked: visibleColumns.length === columns.length,
48158
+ ref: function ref(el) {
48159
+ if (el) el.indeterminate = visibleColumns.length > 0 && visibleColumns.length < columns.length;
48160
+ },
48161
+ onChange: function onChange(e) {
48162
+ return setVisibleColumns(e.target.checked ? columns : []);
48163
+ }
48164
+ }), /*#__PURE__*/React__default.createElement("span", {
48165
+ style: {
48166
+ fontSize: '0.875rem'
48167
+ }
48168
+ }, "Tout s\xE9lectionner"))
48169
+ })));
48170
+ return /*#__PURE__*/React__default.createElement("div", {
48171
+ style: {
48172
+ overflow: 'hidden'
48173
+ }
48174
+ }, /*#__PURE__*/React__default.createElement(DataTable, {
48155
48175
  value: data,
48156
48176
  header: header,
48157
48177
  paginator: paginator,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "arengibook",
3
3
  "private": false,
4
- "version": "2.0.12-table",
4
+ "version": "2.0.13-table",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
7
7
  "exports": {