arengibook 3.1.291-main → 3.1.312-main
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 +52 -16
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -55485,29 +55485,30 @@ var SelfEditableCell = function SelfEditableCell(_ref11) {
|
|
|
55485
55485
|
var parsed = parseDateAuto(localValue);
|
|
55486
55486
|
var dateObj = (_parsed$date = parsed === null || parsed === void 0 ? void 0 : parsed.date) !== null && _parsed$date !== void 0 ? _parsed$date : new Date();
|
|
55487
55487
|
var primeFormat = col.dbDateFormat ? dbDateFormatToPrime(col.dbDateFormat) : (_parsed$primeFormat = parsed === null || parsed === void 0 ? void 0 : parsed.primeFormat) !== null && _parsed$primeFormat !== void 0 ? _parsed$primeFormat : 'dd/mm/yy';
|
|
55488
|
-
var commitDate = function commitDate(v) {
|
|
55489
|
-
// commit synchrone, sans setTimeout
|
|
55490
|
-
committedRef.current = true;
|
|
55491
|
-
onSave(v);
|
|
55492
|
-
setLocalValue(v);
|
|
55493
|
-
if (!isRowEditing) setEditing(false);else committedRef.current = false;
|
|
55494
|
-
};
|
|
55495
55488
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
55496
55489
|
ref: containerRef
|
|
55497
55490
|
}, /*#__PURE__*/React__default.createElement(DatePicker, {
|
|
55498
55491
|
value: dateObj,
|
|
55499
55492
|
dateFormat: primeFormat,
|
|
55493
|
+
onChange: function onChange(e) {
|
|
55494
|
+
if (e.value) {
|
|
55495
|
+
daySelectedRef.current = true;
|
|
55496
|
+
commit(fmtDateISO(e.value, primeFormat));
|
|
55497
|
+
}
|
|
55498
|
+
},
|
|
55500
55499
|
onSelect: function onSelect(date, meta) {
|
|
55501
55500
|
if ((meta === null || meta === void 0 ? void 0 : meta.type) === 'clear') {
|
|
55502
55501
|
daySelectedRef.current = true;
|
|
55503
|
-
|
|
55502
|
+
commit(null);
|
|
55504
55503
|
} else if (date) {
|
|
55505
55504
|
daySelectedRef.current = true;
|
|
55506
|
-
|
|
55505
|
+
commit(fmtDateISO(date, primeFormat));
|
|
55507
55506
|
}
|
|
55508
55507
|
},
|
|
55509
55508
|
onPanelHide: function onPanelHide() {
|
|
55510
|
-
if (!daySelectedRef.current && !isRowEditing)
|
|
55509
|
+
if (!daySelectedRef.current && !isRowEditing) {
|
|
55510
|
+
setEditing(false);
|
|
55511
|
+
}
|
|
55511
55512
|
daySelectedRef.current = false;
|
|
55512
55513
|
}
|
|
55513
55514
|
}));
|
|
@@ -55743,12 +55744,41 @@ var Table$1 = function Table(_ref13) {
|
|
|
55743
55744
|
locked = _useState32[0],
|
|
55744
55745
|
setLocked = _useState32[1];
|
|
55745
55746
|
var effectiveEditable = lockable ? editable && !locked : editable;
|
|
55746
|
-
|
|
55747
|
+
|
|
55748
|
+
// Construit l'attributeData complet d'une ligne : une entrée par colonne
|
|
55749
|
+
// qui déclare attributeData, disponible dès le chargement (avant toute édition).
|
|
55750
|
+
var buildAttributeData = useCallback(function () {
|
|
55751
|
+
var result = {};
|
|
55752
|
+
columns.forEach(function (col) {
|
|
55753
|
+
if (col.attributeData !== undefined) result[col.field] = col.attributeData;
|
|
55754
|
+
});
|
|
55755
|
+
return result;
|
|
55756
|
+
}, [columns]);
|
|
55757
|
+
|
|
55758
|
+
// Enrichit chaque ligne avec l'attributeData de toutes les colonnes.
|
|
55759
|
+
// Comme les mises à jour font toujours { ...row, [field]: newVal },
|
|
55760
|
+
// l'attributeData posé ici est préservé à travers toutes les éditions.
|
|
55761
|
+
var enrichRows = useCallback(function (rows) {
|
|
55762
|
+
var attributeData = buildAttributeData();
|
|
55763
|
+
if (!Object.keys(attributeData).length) return rows;
|
|
55764
|
+
return rows.map(function (row) {
|
|
55765
|
+
return _objectSpread2(_objectSpread2({}, row), {}, {
|
|
55766
|
+
attributeData: attributeData
|
|
55767
|
+
});
|
|
55768
|
+
});
|
|
55769
|
+
}, [buildAttributeData]);
|
|
55770
|
+
var _useState33 = useState(function () {
|
|
55771
|
+
return enrichRows(value);
|
|
55772
|
+
}),
|
|
55747
55773
|
_useState34 = _slicedToArray$d(_useState33, 2),
|
|
55748
55774
|
data = _useState34[0],
|
|
55749
55775
|
setData = _useState34[1];
|
|
55776
|
+
// Dépendre uniquement de `value` : enrichRows change de référence si `columns`
|
|
55777
|
+
// est recréé par le parent à chaque rendu, ce qui re-synchroniserait la data
|
|
55778
|
+
// et écraserait les éditions en cours.
|
|
55779
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
55750
55780
|
useEffect(function () {
|
|
55751
|
-
setData(value);
|
|
55781
|
+
setData(enrichRows(value));
|
|
55752
55782
|
}, [value]);
|
|
55753
55783
|
var onCellChangeRef = useRef(onCellChange);
|
|
55754
55784
|
useEffect(function () {
|
|
@@ -55792,7 +55822,8 @@ var Table$1 = function Table(_ref13) {
|
|
|
55792
55822
|
var handleAddRow = useCallback(function () {
|
|
55793
55823
|
// id temporaire négatif pour éviter les collisions avec les id BDD positifs
|
|
55794
55824
|
var newRow = {
|
|
55795
|
-
id: -Date.now()
|
|
55825
|
+
id: -Date.now(),
|
|
55826
|
+
attributeData: buildAttributeData()
|
|
55796
55827
|
};
|
|
55797
55828
|
columns.forEach(function (col) {
|
|
55798
55829
|
switch (col.type) {
|
|
@@ -55811,7 +55842,7 @@ var Table$1 = function Table(_ref13) {
|
|
|
55811
55842
|
onAdd === null || onAdd === void 0 || onAdd(newRow, updated);
|
|
55812
55843
|
return updated;
|
|
55813
55844
|
});
|
|
55814
|
-
}, [columns, onChange, onAdd]);
|
|
55845
|
+
}, [columns, onChange, onAdd, buildAttributeData]);
|
|
55815
55846
|
var _useState37 = useState({}),
|
|
55816
55847
|
_useState38 = _slicedToArray$d(_useState37, 2),
|
|
55817
55848
|
editingRows = _useState38[0],
|
|
@@ -56935,7 +56966,6 @@ var Table$1 = function Table(_ref13) {
|
|
|
56935
56966
|
rowData: rowData,
|
|
56936
56967
|
col: col,
|
|
56937
56968
|
editable: colEditable,
|
|
56938
|
-
isRowEditing: !!editingRows[rowData.id],
|
|
56939
56969
|
onSave: function onSave(v) {
|
|
56940
56970
|
var _onCellChangeRef$curr2;
|
|
56941
56971
|
var enrichedFields = _defineProperty$g({}, col.field, v);
|
|
@@ -56966,6 +56996,7 @@ var Table$1 = function Table(_ref13) {
|
|
|
56966
56996
|
newValue: v
|
|
56967
56997
|
});
|
|
56968
56998
|
},
|
|
56999
|
+
isRowEditing: !!editingRows[rowData.id],
|
|
56969
57000
|
renderDisplay: displayFn !== null && displayFn !== void 0 ? displayFn : function (rd) {
|
|
56970
57001
|
var _rd$col$field;
|
|
56971
57002
|
return (_rd$col$field = rd[col.field]) !== null && _rd$col$field !== void 0 ? _rd$col$field : '';
|
|
@@ -58129,7 +58160,12 @@ var columnsTyped = [
|
|
|
58129
58160
|
header: 'Inscription',
|
|
58130
58161
|
type: 'date',
|
|
58131
58162
|
editable: true,
|
|
58132
|
-
dbDateFormat: 'MMMM/y'
|
|
58163
|
+
dbDateFormat: 'MMMM/y',
|
|
58164
|
+
attributeData: {
|
|
58165
|
+
'data-value': 'bonjour',
|
|
58166
|
+
'data-tata': 'hello',
|
|
58167
|
+
'data-tab': []
|
|
58168
|
+
}
|
|
58133
58169
|
}, {
|
|
58134
58170
|
field: 'dateNaissance',
|
|
58135
58171
|
header: 'Naissance',
|