@hipay/hipay-material-ui 1.0.0-beta.12 → 1.0.0-beta.14
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/HiDatePicker/HiDateRangePicker.js +69 -28
- package/HiDatePicker/HiDateRangeSelector.js +14 -6
- package/HiDatePicker/Overlays/Overlay.js +9 -3
- package/HiDatePicker/stylesheet.js +7 -0
- package/HiSelect/HiSelect.js +1 -1
- package/HiTable/BodyCellBuilder.js +10 -8
- package/HiTable/BodyCells/CellImage.js +5 -1
- package/HiTable/HiTable.js +38 -4
- package/HiTable/HiTableBody.js +12 -4
- package/HiTable/HiTableFooter.js +131 -0
- package/es/HiDatePicker/HiDateRangePicker.js +65 -27
- package/es/HiDatePicker/HiDateRangeSelector.js +15 -7
- package/es/HiDatePicker/Overlays/Overlay.js +10 -3
- package/es/HiDatePicker/stylesheet.js +7 -0
- package/es/HiSelect/HiSelect.js +1 -1
- package/es/HiTable/BodyCellBuilder.js +11 -9
- package/es/HiTable/BodyCells/CellImage.js +5 -1
- package/es/HiTable/HiTable.js +36 -5
- package/es/HiTable/HiTableBody.js +12 -4
- package/es/HiTable/HiTableFooter.js +74 -0
- package/index.es.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/umd/hipay-material-ui.development.js +7087 -6960
- package/umd/hipay-material-ui.production.min.js +5 -5
@@ -50,6 +50,10 @@ var _DayPickerInput = require('react-day-picker/DayPickerInput');
|
|
50
50
|
|
51
51
|
var _DayPickerInput2 = _interopRequireDefault(_DayPickerInput);
|
52
52
|
|
53
|
+
var _classnames = require('classnames');
|
54
|
+
|
55
|
+
var _classnames2 = _interopRequireDefault(_classnames);
|
56
|
+
|
53
57
|
var _withStyles = require('../styles/withStyles');
|
54
58
|
|
55
59
|
var _withStyles2 = _interopRequireDefault(_withStyles);
|
@@ -92,6 +96,8 @@ var _stylesheet2 = _interopRequireDefault(_stylesheet);
|
|
92
96
|
|
93
97
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
94
98
|
|
99
|
+
// weak
|
100
|
+
|
95
101
|
var HiDateRangePicker = function (_React$Component) {
|
96
102
|
(0, _inherits3.default)(HiDateRangePicker, _React$Component);
|
97
103
|
|
@@ -100,11 +106,16 @@ var HiDateRangePicker = function (_React$Component) {
|
|
100
106
|
|
101
107
|
var _this = (0, _possibleConstructorReturn3.default)(this, (HiDateRangePicker.__proto__ || (0, _getPrototypeOf2.default)(HiDateRangePicker)).call(this));
|
102
108
|
|
109
|
+
_this.handleDayPickerFocus = function (name) {
|
110
|
+
return function () {
|
111
|
+
_this.setState({ focusedInput: name });
|
112
|
+
};
|
113
|
+
};
|
114
|
+
|
103
115
|
_this.state = {
|
104
|
-
fromOpenedPanel: 'calendar',
|
105
116
|
fromCurrentMonth: props.from ? props.from : new Date(),
|
106
|
-
|
107
|
-
|
117
|
+
toCurrentMonth: props.to ? props.to : new Date(),
|
118
|
+
focusedInput: ''
|
108
119
|
};
|
109
120
|
|
110
121
|
_this.handleReset = _this.handleReset.bind(_this);
|
@@ -128,6 +139,8 @@ var HiDateRangePicker = function (_React$Component) {
|
|
128
139
|
_this.handleYearClick = _this.handleYearClick.bind(_this);
|
129
140
|
_this.handleYearClickFrom = _this.handleYearClickFrom.bind(_this);
|
130
141
|
_this.handleYearClickTo = _this.handleYearClickTo.bind(_this);
|
142
|
+
_this.handleDayPickerFocus = _this.handleDayPickerFocus.bind(_this);
|
143
|
+
_this.handleDayPickerBlur = _this.handleDayPickerBlur.bind(_this);
|
131
144
|
|
132
145
|
_this.openPanel = _this.openPanel.bind(_this);
|
133
146
|
|
@@ -324,6 +337,11 @@ var HiDateRangePicker = function (_React$Component) {
|
|
324
337
|
document.activeElement.blur();
|
325
338
|
}
|
326
339
|
}
|
340
|
+
}, {
|
341
|
+
key: 'handleDayPickerBlur',
|
342
|
+
value: function handleDayPickerBlur() {
|
343
|
+
this.setState({ focusedInput: '' });
|
344
|
+
}
|
327
345
|
}, {
|
328
346
|
key: 'openPanel',
|
329
347
|
value: function openPanel(name, panel) {
|
@@ -367,9 +385,10 @@ var HiDateRangePicker = function (_React$Component) {
|
|
367
385
|
}
|
368
386
|
}, {
|
369
387
|
key: 'renderOverlay',
|
370
|
-
value: function renderOverlay(name, propsOverlay) {
|
388
|
+
value: function renderOverlay(name, propsOverlay, staticPosition) {
|
371
389
|
var rangeOverlayProps = (0, _extends3.default)({}, propsOverlay, {
|
372
|
-
side: name
|
390
|
+
side: name,
|
391
|
+
staticPosition: staticPosition
|
373
392
|
});
|
374
393
|
|
375
394
|
switch (this.state[name + 'OpenedPanel']) {
|
@@ -387,12 +406,12 @@ var HiDateRangePicker = function (_React$Component) {
|
|
387
406
|
}, {
|
388
407
|
key: 'renderOverlayFrom',
|
389
408
|
value: function renderOverlayFrom(propsOverlay) {
|
390
|
-
return this.renderOverlay('from', propsOverlay);
|
409
|
+
return this.renderOverlay('from', propsOverlay, this.props.staticPosition);
|
391
410
|
}
|
392
411
|
}, {
|
393
412
|
key: 'renderOverlayTo',
|
394
413
|
value: function renderOverlayTo(propsOverlay) {
|
395
|
-
return this.renderOverlay('to', propsOverlay);
|
414
|
+
return this.renderOverlay('to', propsOverlay, this.props.staticPosition);
|
396
415
|
}
|
397
416
|
}, {
|
398
417
|
key: 'renderMonthPickerOverlay',
|
@@ -439,7 +458,8 @@ var HiDateRangePicker = function (_React$Component) {
|
|
439
458
|
}, {
|
440
459
|
key: 'render',
|
441
460
|
value: function render() {
|
442
|
-
var _this6 = this
|
461
|
+
var _this6 = this,
|
462
|
+
_classNames;
|
443
463
|
|
444
464
|
var _props = this.props,
|
445
465
|
classes = _props.classes,
|
@@ -457,7 +477,8 @@ var HiDateRangePicker = function (_React$Component) {
|
|
457
477
|
to = _props.to,
|
458
478
|
translations = _props.translations,
|
459
479
|
id = _props.id,
|
460
|
-
|
480
|
+
staticPosition = _props.staticPosition,
|
481
|
+
props = (0, _objectWithoutProperties3.default)(_props, ['classes', 'disabledDays', 'disablePastDays', 'disableFutureDays', 'enableTime', 'labelFrom', 'labelTo', 'locale', 'format', 'from', 'minimumDate', 'onReset', 'to', 'translations', 'id', 'staticPosition']);
|
461
482
|
var _state = this.state,
|
462
483
|
fromCurrentMonth = _state.fromCurrentMonth,
|
463
484
|
toCurrentMonth = _state.toCurrentMonth;
|
@@ -575,32 +596,47 @@ var HiDateRangePicker = function (_React$Component) {
|
|
575
596
|
id: id + '-to'
|
576
597
|
});
|
577
598
|
|
599
|
+
var fromClass = (0, _classnames2.default)((_classNames = {}, (0, _defineProperty3.default)(_classNames, classes.absolute, staticPosition === true && this.state.focusedInput === 'to'), (0, _defineProperty3.default)(_classNames, classes.dayPickerMargin, staticPosition === true && this.state.focusedInput === 'to'), _classNames));
|
600
|
+
var toClass = (0, _classnames2.default)(classes.toInput, (0, _defineProperty3.default)({}, classes.absolute, staticPosition === true && this.state.focusedInput === 'from'));
|
601
|
+
|
578
602
|
return _react2.default.createElement(
|
579
603
|
'div',
|
580
604
|
{ className: classes.root },
|
581
605
|
_react2.default.createElement(
|
582
606
|
'div',
|
583
|
-
{
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
607
|
+
{
|
608
|
+
className: classes.fromInput,
|
609
|
+
onFocus: this.handleDayPickerFocus('from'),
|
610
|
+
onBlur: this.handleDayPickerBlur
|
611
|
+
},
|
612
|
+
_react2.default.createElement(
|
613
|
+
'div',
|
614
|
+
{ className: fromClass },
|
615
|
+
_react2.default.createElement(_DayPickerInput2.default, {
|
616
|
+
ref: function ref(el) {
|
617
|
+
_this6.fromInput = el;
|
618
|
+
},
|
619
|
+
value: from,
|
620
|
+
hideOnDayClick: false,
|
621
|
+
overlayComponent: this.renderOverlayFrom,
|
622
|
+
dayPickerProps: fromDayPickerProps,
|
623
|
+
component: _HiForm.HiTextField,
|
624
|
+
inputProps: fromInputProps,
|
625
|
+
format: enableTime ? format + ' HH:mm' : format,
|
626
|
+
formatDate: _moment.formatDate,
|
627
|
+
parseDate: _moment.parseDate,
|
628
|
+
onDayChange: this.handleDayChangeFrom,
|
629
|
+
placeholder: ''
|
630
|
+
})
|
631
|
+
)
|
600
632
|
),
|
601
633
|
_react2.default.createElement(
|
602
634
|
'div',
|
603
|
-
{
|
635
|
+
{
|
636
|
+
className: toClass,
|
637
|
+
onFocus: this.handleDayPickerFocus('to'),
|
638
|
+
onBlur: this.handleDayPickerBlur
|
639
|
+
},
|
604
640
|
_react2.default.createElement(_DayPickerInput2.default, {
|
605
641
|
ref: function ref(el) {
|
606
642
|
_this6.toInput = el;
|
@@ -622,12 +658,13 @@ var HiDateRangePicker = function (_React$Component) {
|
|
622
658
|
}
|
623
659
|
}]);
|
624
660
|
return HiDateRangePicker;
|
625
|
-
}(_react2.default.Component);
|
661
|
+
}(_react2.default.Component);
|
626
662
|
|
627
663
|
HiDateRangePicker.defaultProps = {
|
628
664
|
disabledDays: [],
|
629
665
|
disablePastDays: false,
|
630
666
|
disableFutureDays: false,
|
667
|
+
staticPosition: false,
|
631
668
|
enableTime: false,
|
632
669
|
format: 'YYYY-DD-MM',
|
633
670
|
labelFrom: 'Start',
|
@@ -703,6 +740,10 @@ HiDateRangePicker.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
703
740
|
* Callback au reset de l'input
|
704
741
|
*/
|
705
742
|
onReset: _propTypes2.default.func,
|
743
|
+
/**
|
744
|
+
* Si true, le calendrier sera dans une div static plutot que dans une popper absolute
|
745
|
+
*/
|
746
|
+
staticPosition: _propTypes2.default.bool,
|
706
747
|
/**
|
707
748
|
* Date de fin sélectionnée
|
708
749
|
*/
|
@@ -191,11 +191,11 @@ var HiDateRangeSelector = function (_React$Component) {
|
|
191
191
|
if (selectedOption) {
|
192
192
|
_this.props.onChange('from', selectedOption.from.toDate());
|
193
193
|
_this.props.onChange('to', selectedOption.to.toDate());
|
194
|
-
if (_this.props.returnSelectValue === true) {
|
195
|
-
_this.props.onChange('period', value);
|
196
|
-
}
|
197
194
|
}
|
198
195
|
}
|
196
|
+
if (_this.props.returnSelectValue === true) {
|
197
|
+
_this.props.onChange('period', value);
|
198
|
+
}
|
199
199
|
};
|
200
200
|
};
|
201
201
|
|
@@ -252,7 +252,8 @@ var HiDateRangeSelector = function (_React$Component) {
|
|
252
252
|
translations = _props.translations,
|
253
253
|
classes = _props.classes,
|
254
254
|
selectProps = _props.selectProps,
|
255
|
-
|
255
|
+
staticPosition = _props.staticPosition,
|
256
|
+
props = (0, _objectWithoutProperties3.default)(_props, ['disabled', 'enableTime', 'error', 'errorText', 'helperIcon', 'helperText', 'idRange', 'idSelect', 'label', 'from', 'onChange', 'required', 'to', 'translations', 'classes', 'selectProps', 'staticPosition']);
|
256
257
|
var selectedPreset = this.state.selectedPreset;
|
257
258
|
|
258
259
|
|
@@ -284,7 +285,8 @@ var HiDateRangeSelector = function (_React$Component) {
|
|
284
285
|
translations: translations,
|
285
286
|
value: selectedPreset,
|
286
287
|
containerWidth: this.state.containerWidth,
|
287
|
-
classes: { root: classes.dateSelect }
|
288
|
+
classes: { root: classes.dateSelect },
|
289
|
+
staticPosition: staticPosition
|
288
290
|
}, selectProps))
|
289
291
|
),
|
290
292
|
_react2.default.createElement(
|
@@ -299,7 +301,8 @@ var HiDateRangeSelector = function (_React$Component) {
|
|
299
301
|
onChange: onChange,
|
300
302
|
onReset: this.handleReset,
|
301
303
|
disabled: disabled || selectedPreset !== 'custom',
|
302
|
-
translations: translations
|
304
|
+
translations: translations,
|
305
|
+
staticPosition: staticPosition
|
303
306
|
}, props))
|
304
307
|
)
|
305
308
|
);
|
@@ -313,6 +316,7 @@ HiDateRangeSelector.defaultProps = {
|
|
313
316
|
defaultPreset: 'cd',
|
314
317
|
enableTime: false,
|
315
318
|
returnSelectValue: false,
|
319
|
+
staticPosition: false,
|
316
320
|
locale: 'fr-FR',
|
317
321
|
format: 'YYYY-DD-MM',
|
318
322
|
translations: {
|
@@ -414,6 +418,10 @@ HiDateRangeSelector.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
414
418
|
* Props passées au HiSelectField
|
415
419
|
*/
|
416
420
|
selectProps: _propTypes2.default.object,
|
421
|
+
/**
|
422
|
+
* Si true, le calendrier sera dans une div static plutot que dans une popper absolute
|
423
|
+
*/
|
424
|
+
staticPosition: _propTypes2.default.bool,
|
417
425
|
/**
|
418
426
|
* Date de fin sélectionnée
|
419
427
|
*/
|
@@ -34,10 +34,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
34
34
|
var styles = exports.styles = function styles() {
|
35
35
|
return {
|
36
36
|
paper: {
|
37
|
-
position: 'absolute',
|
38
37
|
width: '100%',
|
39
38
|
zIndex: 10
|
40
39
|
},
|
40
|
+
absolute: {
|
41
|
+
position: 'absolute'
|
42
|
+
},
|
43
|
+
relative: {
|
44
|
+
position: 'relative'
|
45
|
+
},
|
41
46
|
left: {
|
42
47
|
width: '200%',
|
43
48
|
left: 0
|
@@ -57,9 +62,10 @@ var Overlay = function Overlay(_ref) {
|
|
57
62
|
|
58
63
|
var classes = _ref.classes,
|
59
64
|
children = _ref.children,
|
60
|
-
side = _ref.side
|
65
|
+
side = _ref.side,
|
66
|
+
staticPosition = _ref.staticPosition;
|
61
67
|
|
62
|
-
var paperClass = (0, _classnames2.default)(classes.paper, (_classNames = {}, (0, _defineProperty3.default)(_classNames, classes.left, side === 'from'), (0, _defineProperty3.default)(_classNames, classes.right, side === 'to'), _classNames));
|
68
|
+
var paperClass = (0, _classnames2.default)(classes.paper, (_classNames = {}, (0, _defineProperty3.default)(_classNames, classes.left, side === 'from'), (0, _defineProperty3.default)(_classNames, classes.right, side === 'to'), (0, _defineProperty3.default)(_classNames, classes.absolute, staticPosition !== true), (0, _defineProperty3.default)(_classNames, classes.relative, staticPosition === true), _classNames));
|
63
69
|
|
64
70
|
return _react2.default.createElement(
|
65
71
|
_Paper2.default,
|
@@ -31,6 +31,13 @@ exports.default = function (theme) {
|
|
31
31
|
width: 'calc(50% - 4px)',
|
32
32
|
marginLeft: 4
|
33
33
|
},
|
34
|
+
absolute: {
|
35
|
+
position: 'absolute'
|
36
|
+
},
|
37
|
+
dayPickerMargin: {
|
38
|
+
top: -337,
|
39
|
+
width: 'calc(100% - 4px)'
|
40
|
+
},
|
34
41
|
// The container element
|
35
42
|
container: {
|
36
43
|
width: '100%',
|
package/HiSelect/HiSelect.js
CHANGED
@@ -485,7 +485,7 @@ HiSelect.defaultProps = {
|
|
485
485
|
var _initialiseProps = function _initialiseProps() {
|
486
486
|
var _this3 = this;
|
487
487
|
|
488
|
-
this.handleClick = function (
|
488
|
+
this.handleClick = function () {
|
489
489
|
if (_this3.state.open) {
|
490
490
|
_this3.handleClose();
|
491
491
|
} else {
|
@@ -127,7 +127,8 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
127
127
|
onOpenDetails = _props.onOpenDetails,
|
128
128
|
lookedUp = _props.lookedUp,
|
129
129
|
fixedColumnWidth = _props.fixedColumnWidth,
|
130
|
-
|
130
|
+
disableContextMenu = _props.disableContextMenu,
|
131
|
+
props = (0, _objectWithoutProperties3.default)(_props, ['ukey', 'type', 'data', 'view', 'width', 'padding', 'align', 'dense', 'ellipsis', 'onSelect', 'selectable', 'selected', 'sticky', 'dateLocale', 'numberLocale', 'childrenCount', 'onOpenDetails', 'lookedUp', 'fixedColumnWidth', 'disableContextMenu']);
|
131
132
|
|
132
133
|
|
133
134
|
var layoutProps = {
|
@@ -150,7 +151,6 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
150
151
|
if (typeof data !== 'undefined') {
|
151
152
|
|
152
153
|
var cellElement = void 0;
|
153
|
-
var hasContextMenu = true;
|
154
154
|
|
155
155
|
switch (type) {
|
156
156
|
case cst.TYPE_ACCOUNT:
|
@@ -200,7 +200,6 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
200
200
|
displayTime: props.displayTime,
|
201
201
|
sticky: sticky
|
202
202
|
});
|
203
|
-
hasContextMenu = false;
|
204
203
|
break;
|
205
204
|
|
206
205
|
case cst.TYPE_ICON:
|
@@ -229,7 +228,6 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
229
228
|
view: view,
|
230
229
|
sticky: sticky
|
231
230
|
});
|
232
|
-
hasContextMenu = false;
|
233
231
|
break;
|
234
232
|
|
235
233
|
case cst.TYPE_RATE:
|
@@ -242,7 +240,6 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
242
240
|
view: view,
|
243
241
|
sticky: sticky
|
244
242
|
});
|
245
|
-
hasContextMenu = false;
|
246
243
|
break;
|
247
244
|
|
248
245
|
case cst.TYPE_SENTINEL:
|
@@ -287,14 +284,14 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
287
284
|
break;
|
288
285
|
}
|
289
286
|
|
290
|
-
cellContent =
|
287
|
+
cellContent = disableContextMenu ? cellElement : _react2.default.createElement(
|
291
288
|
_reactContextmenu.ContextMenuTrigger,
|
292
289
|
{
|
293
290
|
id: 'hitable_context_menu_' + this.props.tabId,
|
294
291
|
collect: this.collectContextMenuDatas
|
295
292
|
},
|
296
293
|
cellElement
|
297
|
-
)
|
294
|
+
);
|
298
295
|
}
|
299
296
|
|
300
297
|
return _react2.default.createElement(
|
@@ -308,7 +305,8 @@ var BodyCellBuilder = function (_React$PureComponent) {
|
|
308
305
|
}(_react2.default.PureComponent);
|
309
306
|
|
310
307
|
BodyCellBuilder.defaultProps = {
|
311
|
-
ellipsis: 'right'
|
308
|
+
ellipsis: 'right',
|
309
|
+
disableContextMenu: true
|
312
310
|
};
|
313
311
|
exports.default = BodyCellBuilder;
|
314
312
|
BodyCellBuilder.propTypes = process.env.NODE_ENV !== "production" ? {
|
@@ -340,6 +338,10 @@ BodyCellBuilder.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
340
338
|
* Densité, défini la hauteur de la ligne
|
341
339
|
*/
|
342
340
|
dense: _propTypes2.default.bool,
|
341
|
+
/**
|
342
|
+
* Active/désactive le menu contextuel au clic droit sur les cellules du tableau
|
343
|
+
*/
|
344
|
+
disableContextMenu: _propTypes2.default.bool.isRequired,
|
343
345
|
/**
|
344
346
|
* Ellipsis
|
345
347
|
*/
|
@@ -83,6 +83,10 @@ var styles = exports.styles = function styles(theme) {
|
|
83
83
|
},
|
84
84
|
center: {
|
85
85
|
textAlign: 'center'
|
86
|
+
},
|
87
|
+
tooltipContainer: {
|
88
|
+
display: 'flex',
|
89
|
+
alignItems: 'center'
|
86
90
|
}
|
87
91
|
};
|
88
92
|
};
|
@@ -113,7 +117,7 @@ var CellImage = function (_React$PureComponent) {
|
|
113
117
|
|
114
118
|
var tooltipContent = _react2.default.createElement(
|
115
119
|
'div',
|
116
|
-
|
120
|
+
{ className: classes.tooltipContainer },
|
117
121
|
_react2.default.createElement('img', { src: path, alt: value, className: classes.tooltipImg }),
|
118
122
|
_react2.default.createElement(
|
119
123
|
'span',
|
package/HiTable/HiTable.js
CHANGED
@@ -67,6 +67,10 @@ var _HiTableFooterScroll = require('./HiTableFooterScroll');
|
|
67
67
|
|
68
68
|
var _HiTableFooterScroll2 = _interopRequireDefault(_HiTableFooterScroll);
|
69
69
|
|
70
|
+
var _HiTableFooter = require('./HiTableFooter');
|
71
|
+
|
72
|
+
var _HiTableFooter2 = _interopRequireDefault(_HiTableFooter);
|
73
|
+
|
70
74
|
var _constants = require('./constants');
|
71
75
|
|
72
76
|
var cst = _interopRequireWildcard(_constants);
|
@@ -707,7 +711,9 @@ var HiTable = function (_React$Component) {
|
|
707
711
|
groupBy = _props.groupBy,
|
708
712
|
lookupColumns = _props.lookupColumns,
|
709
713
|
loading = _props.loading,
|
710
|
-
fixedColumnWidth = _props.fixedColumnWidth
|
714
|
+
fixedColumnWidth = _props.fixedColumnWidth,
|
715
|
+
disableContextMenu = _props.disableContextMenu,
|
716
|
+
footerContent = _props.footerContent;
|
711
717
|
var _state = this.state,
|
712
718
|
dateUpdate = _state.dateUpdate,
|
713
719
|
isScrollToBottom = _state.isScrollToBottom,
|
@@ -716,6 +722,13 @@ var HiTable = function (_React$Component) {
|
|
716
722
|
|
717
723
|
var headerHeight = dense ? cst.CELL_HEADER_HEIGHT_DENSE : cst.CELL_HEADER_HEIGHT;
|
718
724
|
|
725
|
+
var nbColumnsDisplayed = 0;
|
726
|
+
orderedColumns.forEach(function (column) {
|
727
|
+
if (column.displayed !== false) {
|
728
|
+
nbColumnsDisplayed += 1;
|
729
|
+
}
|
730
|
+
});
|
731
|
+
|
719
732
|
return _react2.default.createElement(
|
720
733
|
'div',
|
721
734
|
{ className: classes.root },
|
@@ -785,7 +798,8 @@ var HiTable = function (_React$Component) {
|
|
785
798
|
groupByIds: groupByIds,
|
786
799
|
lookupColumns: lookupColumns,
|
787
800
|
loading: loading,
|
788
|
-
fixedColumnWidth: fixedColumnWidth
|
801
|
+
fixedColumnWidth: fixedColumnWidth,
|
802
|
+
disableContextMenu: disableContextMenu
|
789
803
|
}),
|
790
804
|
infiniteScroll && _react2.default.createElement(_HiTableFooterScroll2.default, {
|
791
805
|
tabId: tabId,
|
@@ -794,7 +808,15 @@ var HiTable = function (_React$Component) {
|
|
794
808
|
maxAutoRequest: 3,
|
795
809
|
isScrollToBottom: isScrollToBottom,
|
796
810
|
translations: translations
|
797
|
-
})
|
811
|
+
}),
|
812
|
+
!infiniteScroll && footerContent && _react2.default.createElement(
|
813
|
+
_HiTableFooter2.default,
|
814
|
+
{
|
815
|
+
nbColumnsDisplayed: nbColumnsDisplayed,
|
816
|
+
view: view
|
817
|
+
},
|
818
|
+
footerContent
|
819
|
+
)
|
798
820
|
),
|
799
821
|
_react2.default.createElement(_HiTableContextMenu2.default, {
|
800
822
|
tabId: tabId,
|
@@ -856,7 +878,8 @@ HiTable.defaultProps = {
|
|
856
878
|
view: 'l',
|
857
879
|
lookupColumns: [],
|
858
880
|
loading: false,
|
859
|
-
fixedColumnWidth: true
|
881
|
+
fixedColumnWidth: true,
|
882
|
+
disableContextMenu: true
|
860
883
|
};
|
861
884
|
HiTable.propTypes = process.env.NODE_ENV !== "production" ? {
|
862
885
|
/**
|
@@ -883,6 +906,10 @@ HiTable.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
883
906
|
* Densité d'affichage (joue sur la hauteur des lignes)
|
884
907
|
*/
|
885
908
|
dense: _propTypes2.default.bool,
|
909
|
+
/**
|
910
|
+
* Active/désactive le menu contextuel au clic droit sur les cellules du tableau
|
911
|
+
*/
|
912
|
+
disableContextMenu: _propTypes2.default.bool.isRequired,
|
886
913
|
/**
|
887
914
|
* Active le filtre sur les colonnes filtrables
|
888
915
|
*/
|
@@ -892,6 +919,10 @@ HiTable.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
892
919
|
* Sinon les colonnes s'adaptent à l'espace disponible
|
893
920
|
*/
|
894
921
|
fixedColumnWidth: _propTypes2.default.bool,
|
922
|
+
/**
|
923
|
+
* Ajoute un footer avec le contenu footerContent à l'intérieur
|
924
|
+
*/
|
925
|
+
footerContent: _propTypes2.default.node,
|
895
926
|
/**
|
896
927
|
* Id de la colonne par laquelle sont regroupé les éléments
|
897
928
|
*/
|
@@ -966,6 +997,9 @@ HiTable.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
966
997
|
/**
|
967
998
|
* Fonction de callback sur le tri d'une colonne
|
968
999
|
* Passe l'id de la colonne et la direction du tri (ou false si tri par défaut)
|
1000
|
+
*
|
1001
|
+
* @param {string} column id
|
1002
|
+
* @param {string} direction
|
969
1003
|
*/
|
970
1004
|
onSort: _propTypes2.default.func,
|
971
1005
|
/**
|
package/HiTable/HiTableBody.js
CHANGED
@@ -287,7 +287,8 @@ var HiTableBody = function (_React$Component) {
|
|
287
287
|
sortedColumnId = _props.sortedColumnId,
|
288
288
|
lookupColumns = _props.lookupColumns,
|
289
289
|
loading = _props.loading,
|
290
|
-
fixedColumnWidth = _props.fixedColumnWidth
|
290
|
+
fixedColumnWidth = _props.fixedColumnWidth,
|
291
|
+
disableContextMenu = _props.disableContextMenu;
|
291
292
|
var _state = this.state,
|
292
293
|
openedParentRowId = _state.openedParentRowId,
|
293
294
|
openedDetailsRowIdList = _state.openedDetailsRowIdList;
|
@@ -386,7 +387,8 @@ var HiTableBody = function (_React$Component) {
|
|
386
387
|
sticky: sticky,
|
387
388
|
tabId: tabId,
|
388
389
|
view: view,
|
389
|
-
fixedColumnWidth: fixedColumnWidth
|
390
|
+
fixedColumnWidth: fixedColumnWidth,
|
391
|
+
disableContextMenu: disableContextMenu
|
390
392
|
});
|
391
393
|
|
392
394
|
if (hasChildren && openedParentRowId === row.rowId) {
|
@@ -416,7 +418,8 @@ var HiTableBody = function (_React$Component) {
|
|
416
418
|
dense: dense,
|
417
419
|
sticky: sticky,
|
418
420
|
isDetail: true,
|
419
|
-
fixedColumnWidth: fixedColumnWidth
|
421
|
+
fixedColumnWidth: fixedColumnWidth,
|
422
|
+
disableContextMenu: disableContextMenu
|
420
423
|
};
|
421
424
|
|
422
425
|
tableRows.push(_react2.default.createElement(_BodyRow2.default, (0, _extends3.default)({ key: row.rowId + '-' + detailRow.rowId }, detailRowProps)));
|
@@ -457,7 +460,8 @@ HiTableBody.defaultProps = {
|
|
457
460
|
height: 450,
|
458
461
|
sticky: true,
|
459
462
|
view: 'l',
|
460
|
-
loading: false
|
463
|
+
loading: false,
|
464
|
+
disableContextMenu: true
|
461
465
|
};
|
462
466
|
HiTableBody.propTypes = process.env.NODE_ENV !== "production" ? {
|
463
467
|
/**
|
@@ -485,6 +489,10 @@ HiTableBody.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
485
489
|
* Densité d'affichage (joue sur la hauteur des lignes)
|
486
490
|
*/
|
487
491
|
dense: _propTypes2.default.bool,
|
492
|
+
/**
|
493
|
+
* Active/désactive le menu contextuel au clic droit sur les cellules du tableau
|
494
|
+
*/
|
495
|
+
disableContextMenu: _propTypes2.default.bool.isRequired,
|
488
496
|
/**
|
489
497
|
* Fixe la taille des colonnes selon le type de vue
|
490
498
|
* Sinon les colonnes s'adaptent à l'espace disponible
|