@hipay/hipay-material-ui 1.0.0-beta.25 → 1.0.0-beta.27
Sign up to get free protection for your applications and to get access to all the features.
- package/HI-CHANGELOG.md +73 -0
- package/HiChip/HiChip.js +11 -5
- package/HiForm/HiFormControl.js +4 -4
- package/HiSelect/HiSelect.js +29 -21
- package/HiSelectableList/HiSelectableList.js +1 -1
- package/HiSelectableList/HiSelectableListItem.js +3 -3
- package/HiTable/BodyCellBuilder.js +3 -2
- package/HiTable/BodyCells/CellAccount.js +1 -12
- package/HiTable/BodyCells/CellDate.js +15 -12
- package/HiTable/BodyCells/CellRate.js +3 -3
- package/HiTable/BodyCells/CellText.js +76 -48
- package/HiTable/HiStickyRow.js +3 -3
- package/HiTable/HiTableFooter.js +5 -6
- package/README.md +2 -1
- package/es/HiChip/HiChip.js +11 -5
- package/es/HiForm/HiFormControl.js +4 -4
- package/es/HiSelect/HiSelect.js +27 -17
- package/es/HiSelectableList/HiSelectableList.js +1 -1
- package/es/HiSelectableList/HiSelectableListItem.js +3 -3
- package/es/HiTable/BodyCellBuilder.js +3 -2
- package/es/HiTable/BodyCells/CellAccount.js +1 -4
- package/es/HiTable/BodyCells/CellDate.js +11 -7
- package/es/HiTable/BodyCells/CellRate.js +3 -3
- package/es/HiTable/BodyCells/CellText.js +48 -23
- package/es/HiTable/HiStickyRow.js +1 -1
- package/es/HiTable/HiTableFooter.js +6 -6
- package/es/svg-icons/Cancel.js +2 -0
- package/es/svg-icons/HiBriefcaseRescue.js +15 -0
- package/es/svg-icons/index.js +2 -1
- package/index.es.js +1 -1
- package/index.js +1 -1
- package/package.json +2 -1
- package/svg-icons/Cancel.js +2 -0
- package/svg-icons/HiBriefcaseRescue.js +30 -0
- package/svg-icons/index.js +9 -0
- package/umd/hipay-material-ui.development.js +10062 -52486
- package/umd/hipay-material-ui.production.min.js +4 -4
@@ -9,26 +9,26 @@ var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
|
|
9
9
|
|
10
10
|
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
|
11
11
|
|
12
|
-
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
13
|
-
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
15
|
-
|
16
12
|
var _stringify = require('babel-runtime/core-js/json/stringify');
|
17
13
|
|
18
14
|
var _stringify2 = _interopRequireDefault(_stringify);
|
19
15
|
|
20
|
-
var
|
16
|
+
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
21
17
|
|
22
|
-
var
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
23
19
|
|
24
|
-
var
|
20
|
+
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
25
21
|
|
26
|
-
var
|
22
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
27
23
|
|
28
24
|
var _createClass2 = require('babel-runtime/helpers/createClass');
|
29
25
|
|
30
26
|
var _createClass3 = _interopRequireDefault(_createClass2);
|
31
27
|
|
28
|
+
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
29
|
+
|
30
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
31
|
+
|
32
32
|
var _inherits2 = require('babel-runtime/helpers/inherits');
|
33
33
|
|
34
34
|
var _inherits3 = _interopRequireDefault(_inherits2);
|
@@ -53,42 +53,39 @@ var _constants = require('../constants');
|
|
53
53
|
|
54
54
|
var cst = _interopRequireWildcard(_constants);
|
55
55
|
|
56
|
+
var _HiColoredLabel = require('../../HiColoredLabel');
|
57
|
+
|
58
|
+
var _HiColoredLabel2 = _interopRequireDefault(_HiColoredLabel);
|
59
|
+
|
60
|
+
var _colorManipulator = require('../../styles/colorManipulator');
|
61
|
+
|
56
62
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
57
63
|
|
58
64
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
59
65
|
|
60
|
-
var styles = exports.styles =
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
whiteSpace: 'pre'
|
80
|
-
}
|
81
|
-
};
|
66
|
+
var styles = exports.styles = {
|
67
|
+
leftEllipsisSpan: {
|
68
|
+
display: 'inline-block',
|
69
|
+
overflow: 'hidden',
|
70
|
+
textOverflow: 'ellipsis',
|
71
|
+
whiteSpace: 'pre',
|
72
|
+
direction: 'rtl'
|
73
|
+
},
|
74
|
+
rightEllipsisSpan: {
|
75
|
+
display: 'inline-block',
|
76
|
+
overflow: 'hidden',
|
77
|
+
textOverflow: 'ellipsis',
|
78
|
+
whiteSpace: 'pre'
|
79
|
+
},
|
80
|
+
noEllipsisSpan: {
|
81
|
+
display: 'inline-block',
|
82
|
+
overflow: 'hidden',
|
83
|
+
whiteSpace: 'pre'
|
84
|
+
}
|
82
85
|
};
|
83
86
|
|
84
87
|
var CellText = function (_React$Component) {
|
85
88
|
(0, _inherits3.default)(CellText, _React$Component);
|
86
|
-
(0, _createClass3.default)(CellText, [{
|
87
|
-
key: 'shouldComponentUpdate',
|
88
|
-
value: function shouldComponentUpdate(nextProps, nextState) {
|
89
|
-
return (0, _stringify2.default)(this.props) !== (0, _stringify2.default)(nextProps) || (0, _stringify2.default)(this.state) !== (0, _stringify2.default)(nextState);
|
90
|
-
}
|
91
|
-
}]);
|
92
89
|
|
93
90
|
function CellText(props) {
|
94
91
|
(0, _classCallCheck3.default)(this, CellText);
|
@@ -112,6 +109,11 @@ var CellText = function (_React$Component) {
|
|
112
109
|
value: function componentDidMount() {
|
113
110
|
this.buildEllipsis();
|
114
111
|
}
|
112
|
+
}, {
|
113
|
+
key: 'shouldComponentUpdate',
|
114
|
+
value: function shouldComponentUpdate(nextProps, nextState) {
|
115
|
+
return (0, _stringify2.default)(this.props) !== (0, _stringify2.default)(nextProps) || (0, _stringify2.default)(this.state) !== (0, _stringify2.default)(nextState);
|
116
|
+
}
|
115
117
|
}, {
|
116
118
|
key: 'componentDidUpdate',
|
117
119
|
value: function componentDidUpdate() {
|
@@ -144,8 +146,9 @@ var CellText = function (_React$Component) {
|
|
144
146
|
|
145
147
|
/**
|
146
148
|
* Calcul l'espace pris par les 2 spans (les 2 moitiés du texte),
|
147
|
-
* si ils dépassent la largeur de la cellule
|
148
|
-
*
|
149
|
+
* si ils dépassent la largeur de la cellule :
|
150
|
+
* - diminue d'autant et proportionnellement chaque span
|
151
|
+
* - ajoute l'ellipse à gauche de la deuxième moitié du texte.
|
149
152
|
*/
|
150
153
|
if (this.props.ellipsis === cst.ELLIPSIS_MIDDLE) {
|
151
154
|
if (this.cellText !== null) {
|
@@ -175,7 +178,8 @@ var CellText = function (_React$Component) {
|
|
175
178
|
var _props = this.props,
|
176
179
|
classes = _props.classes,
|
177
180
|
value = _props.value,
|
178
|
-
ellipsis = _props.ellipsis
|
181
|
+
ellipsis = _props.ellipsis,
|
182
|
+
color = _props.color;
|
179
183
|
|
180
184
|
|
181
185
|
var start = void 0,
|
@@ -195,9 +199,15 @@ var CellText = function (_React$Component) {
|
|
195
199
|
}
|
196
200
|
valueElement = _react2.default.createElement(
|
197
201
|
'div',
|
198
|
-
{
|
202
|
+
{
|
203
|
+
ref: function ref(div) {
|
199
204
|
_this2.cellText = div;
|
200
|
-
}
|
205
|
+
},
|
206
|
+
style: {
|
207
|
+
backgroundColor: color || 'inherit',
|
208
|
+
color: color ? (0, _colorManipulator.getContrastedTextColor)(color, '#4C4C4C', '#FFF') : 'inherit'
|
209
|
+
}
|
210
|
+
},
|
201
211
|
_react2.default.createElement(
|
202
212
|
'span',
|
203
213
|
{ className: classes.rightEllipsisSpan },
|
@@ -217,9 +227,15 @@ var CellText = function (_React$Component) {
|
|
217
227
|
end = valueString.substr(Math.round(valueString.length / 2));
|
218
228
|
valueElement = _react2.default.createElement(
|
219
229
|
'div',
|
220
|
-
{
|
230
|
+
{
|
231
|
+
ref: function ref(div) {
|
221
232
|
_this2.cellText = div;
|
222
|
-
}
|
233
|
+
},
|
234
|
+
style: {
|
235
|
+
backgroundColor: color || 'inherit',
|
236
|
+
color: color ? (0, _colorManipulator.getContrastedTextColor)(color, '#4C4C4C', '#FFF') : 'inherit'
|
237
|
+
}
|
238
|
+
},
|
223
239
|
_react2.default.createElement(
|
224
240
|
'span',
|
225
241
|
{ className: classes.noEllipsisSpan },
|
@@ -234,7 +250,11 @@ var CellText = function (_React$Component) {
|
|
234
250
|
break;
|
235
251
|
|
236
252
|
case cst.ELLIPSIS_LEFT:
|
237
|
-
valueElement = _react2.default.createElement(
|
253
|
+
valueElement = color ? _react2.default.createElement(_HiColoredLabel2.default, {
|
254
|
+
className: classes.leftEllipsisSpan,
|
255
|
+
label: valueString,
|
256
|
+
color: color
|
257
|
+
}) : _react2.default.createElement(
|
238
258
|
'div',
|
239
259
|
{ className: classes.leftEllipsisSpan, style: { width: '100%' } },
|
240
260
|
valueString
|
@@ -243,7 +263,11 @@ var CellText = function (_React$Component) {
|
|
243
263
|
|
244
264
|
case cst.ELLIPSIS_RIGHT:
|
245
265
|
default:
|
246
|
-
valueElement = _react2.default.createElement(
|
266
|
+
valueElement = color ? _react2.default.createElement(_HiColoredLabel2.default, {
|
267
|
+
className: classes.rightEllipsisSpan,
|
268
|
+
label: valueString,
|
269
|
+
color: color
|
270
|
+
}) : _react2.default.createElement(
|
247
271
|
'div',
|
248
272
|
{ className: classes.rightEllipsisSpan, style: { width: '100%' } },
|
249
273
|
valueString
|
@@ -267,12 +291,16 @@ CellText.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
267
291
|
*/
|
268
292
|
classes: _propTypes2.default.object,
|
269
293
|
/**
|
270
|
-
*
|
294
|
+
* Couleur du text & du background
|
271
295
|
*/
|
272
|
-
|
296
|
+
color: _propTypes2.default.string,
|
273
297
|
/**
|
274
298
|
* Ellipsis
|
275
299
|
*/
|
276
|
-
ellipsis: _propTypes2.default.oneOf(['left', 'right', 'middle', 'name', 'after-first-word'])
|
300
|
+
ellipsis: _propTypes2.default.oneOf(['left', 'right', 'middle', 'name', 'after-first-word']),
|
301
|
+
/**
|
302
|
+
* Valeur à afficher
|
303
|
+
*/
|
304
|
+
value: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.number]).isRequired
|
277
305
|
} : {};
|
278
306
|
exports.default = (0, _withStyles2.default)(styles, { name: 'HmuiCellText' })(CellText);
|
package/HiTable/HiStickyRow.js
CHANGED
@@ -133,8 +133,8 @@ var styles = exports.styles = function styles(theme) {
|
|
133
133
|
|
134
134
|
var ONCHANGE_ERROR_MESSAGE = exports.ONCHANGE_ERROR_MESSAGE = 'Vous devez saisir la propriété "onChange" pour les lignes "selectable"';
|
135
135
|
|
136
|
-
var HiStickyRow = function (_React$
|
137
|
-
(0, _inherits3.default)(HiStickyRow, _React$
|
136
|
+
var HiStickyRow = function (_React$Component) {
|
137
|
+
(0, _inherits3.default)(HiStickyRow, _React$Component);
|
138
138
|
|
139
139
|
function HiStickyRow() {
|
140
140
|
(0, _classCallCheck3.default)(this, HiStickyRow);
|
@@ -241,7 +241,7 @@ var HiStickyRow = function (_React$PureComponent) {
|
|
241
241
|
}
|
242
242
|
}]);
|
243
243
|
return HiStickyRow;
|
244
|
-
}(_react2.default.
|
244
|
+
}(_react2.default.Component);
|
245
245
|
|
246
246
|
HiStickyRow.defaultProps = {
|
247
247
|
dense: false,
|
package/HiTable/HiTableFooter.js
CHANGED
@@ -5,10 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.styles = undefined;
|
7
7
|
|
8
|
-
var _stringify = require('babel-runtime/core-js/json/stringify');
|
9
|
-
|
10
|
-
var _stringify2 = _interopRequireDefault(_stringify);
|
11
|
-
|
12
8
|
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
13
9
|
|
14
10
|
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
@@ -83,8 +79,11 @@ var HiTableFooter = function (_React$Component) {
|
|
83
79
|
|
84
80
|
(0, _createClass3.default)(HiTableFooter, [{
|
85
81
|
key: 'shouldComponentUpdate',
|
86
|
-
|
87
|
-
|
82
|
+
|
83
|
+
|
84
|
+
// Table footer never need to be updated
|
85
|
+
value: function shouldComponentUpdate() {
|
86
|
+
return false;
|
88
87
|
}
|
89
88
|
}, {
|
90
89
|
key: 'render',
|
package/README.md
CHANGED
@@ -224,13 +224,14 @@ Le projet est publié sur un repo privé npm : https://www.npmjs.com/package/@hi
|
|
224
224
|
Avoir installé [conventional-changelog-cli](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-cli) pour générer le CHANGELOG à partir des commits git.
|
225
225
|
```sh
|
226
226
|
npm install -g conventional-changelog-cli
|
227
|
+
npm install -g cz-conventional-changelog
|
227
228
|
```
|
228
229
|
|
229
230
|
1. Changer la version dans package.json
|
230
231
|
2. Générer le fichier HI-CHANGELOG.md : ```npm run changelog```
|
231
232
|
3. Commiter la release : ```git ci -am "chore(release): VERSION DATE```
|
232
233
|
4. Build : ```npm run build```
|
233
|
-
5. Publish :
|
234
|
+
5. Publish :
|
234
235
|
|
235
236
|
```sh
|
236
237
|
cd build
|
package/es/HiChip/HiChip.js
CHANGED
@@ -99,6 +99,7 @@ function HiChip(props) {
|
|
99
99
|
onDelete,
|
100
100
|
prefix,
|
101
101
|
onIconClick,
|
102
|
+
title,
|
102
103
|
titleDelete,
|
103
104
|
titleIcon,
|
104
105
|
titleImg,
|
@@ -115,7 +116,8 @@ function HiChip(props) {
|
|
115
116
|
[classes.rightNavigation]: onNext,
|
116
117
|
[classes.deletable]: onDelete,
|
117
118
|
[classes.leftIccon]: icon
|
118
|
-
})
|
119
|
+
}),
|
120
|
+
title: title
|
119
121
|
},
|
120
122
|
prefix && React.createElement(
|
121
123
|
'span',
|
@@ -131,14 +133,14 @@ function HiChip(props) {
|
|
131
133
|
icon: icon,
|
132
134
|
size: 16,
|
133
135
|
onClick: onIconClick,
|
134
|
-
|
136
|
+
title: titleIcon
|
135
137
|
}),
|
136
138
|
onPrevious && React.createElement(HiIconBuilder, {
|
137
139
|
className: classNames(classes.navigate),
|
138
140
|
icon: 'menuLeft',
|
139
141
|
onClick: onPrevious,
|
140
142
|
size: 16,
|
141
|
-
|
143
|
+
title: titlePrevious
|
142
144
|
}),
|
143
145
|
React.createElement(
|
144
146
|
'span',
|
@@ -150,14 +152,14 @@ function HiChip(props) {
|
|
150
152
|
icon: 'menuRight',
|
151
153
|
onClick: onNext,
|
152
154
|
size: 16,
|
153
|
-
|
155
|
+
title: titleNext
|
154
156
|
}),
|
155
157
|
onDelete && React.createElement(HiIconBuilder, {
|
156
158
|
classes: { root: classes.eraseIcon },
|
157
159
|
icon: 'closeCircle',
|
158
160
|
onClick: onDelete,
|
159
161
|
size: 16,
|
160
|
-
|
162
|
+
title: titleDelete
|
161
163
|
})
|
162
164
|
);
|
163
165
|
}
|
@@ -203,6 +205,10 @@ HiChip.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
203
205
|
* Préfixe dans le HiChip
|
204
206
|
*/
|
205
207
|
prefix: PropTypes.string,
|
208
|
+
/**
|
209
|
+
* Titre du chip
|
210
|
+
*/
|
211
|
+
title: PropTypes.string,
|
206
212
|
/**
|
207
213
|
* Titre de l'icône supprimer
|
208
214
|
*/
|
@@ -150,7 +150,7 @@ class HiFormControl extends React.PureComponent {
|
|
150
150
|
error: error,
|
151
151
|
ref: rootRef
|
152
152
|
}, others),
|
153
|
-
|
153
|
+
error && errorText && helperOpen && React.createElement(
|
154
154
|
'div',
|
155
155
|
{ className: classes.errorDiv },
|
156
156
|
React.createElement('div', {
|
@@ -158,7 +158,7 @@ class HiFormControl extends React.PureComponent {
|
|
158
158
|
}),
|
159
159
|
errorText
|
160
160
|
),
|
161
|
-
|
161
|
+
helperIcon && helperText && !error && helperOpen && React.createElement(
|
162
162
|
'div',
|
163
163
|
{
|
164
164
|
className: classes.helperDiv
|
@@ -181,11 +181,11 @@ class HiFormControl extends React.PureComponent {
|
|
181
181
|
disabled: disabled,
|
182
182
|
focused: !disabled && (focused || hovered)
|
183
183
|
}, InputLabelProps),
|
184
|
-
|
184
|
+
error && React.createElement(Alert, {
|
185
185
|
className: classes.errorIcon,
|
186
186
|
onClick: this.handleHelperClick
|
187
187
|
}),
|
188
|
-
|
188
|
+
helperIcon && helperText && !error && React.createElement(Information, {
|
189
189
|
className: classNames(classes.helperIcon, {
|
190
190
|
[classes.helperIconActive]: helperOpen
|
191
191
|
}),
|
package/es/HiSelect/HiSelect.js
CHANGED
@@ -78,7 +78,7 @@ class HiSelect extends React.PureComponent {
|
|
78
78
|
hierarchySelected: {},
|
79
79
|
hierarchy: {},
|
80
80
|
nbOptions: 0,
|
81
|
-
dynamic: false
|
81
|
+
dynamic: props.dynamic || false
|
82
82
|
};
|
83
83
|
|
84
84
|
// Check if value is in options
|
@@ -121,7 +121,7 @@ class HiSelect extends React.PureComponent {
|
|
121
121
|
}
|
122
122
|
});
|
123
123
|
this.state.nbOptions = optionsLength;
|
124
|
-
} else {
|
124
|
+
} else if (!props.dynamic) {
|
125
125
|
this.state.dynamic = true;
|
126
126
|
}
|
127
127
|
|
@@ -251,25 +251,26 @@ class HiSelect extends React.PureComponent {
|
|
251
251
|
}
|
252
252
|
|
253
253
|
if ((dynamic || loading) && selectedIdList.length === 1) {
|
254
|
-
display = translations.one_item_selected
|
254
|
+
display = translations.one_item_selected;
|
255
255
|
} else if ((this.state.nbOptions !== selectedIdList.length || !hasAll) && selectedIdList.length > 1) {
|
256
256
|
display = translations.n_items_selected.replace('%s', selectedIdList.length);
|
257
257
|
} else if (this.state.nbOptions === selectedIdList.length && this.state.nbOptions > 1) {
|
258
258
|
display = translations.all;
|
259
259
|
} else if (selectedIdList.length === 1) {
|
260
|
-
|
261
|
-
|
262
|
-
|
260
|
+
let item = options.find(o => o.id === selectedIdList[0]);
|
261
|
+
if (item === undefined) {
|
262
|
+
display = translations.one_item_selected;
|
263
|
+
} else if (type !== 'icon') {
|
264
|
+
if (pinnedItem) {
|
263
265
|
item = pinnedItem;
|
264
266
|
}
|
265
267
|
display = item.label;
|
266
268
|
} else {
|
267
|
-
const optionSelected = options.find(o => o.id === selectedIdList[0]);
|
268
269
|
display = React.createElement(
|
269
270
|
'span',
|
270
271
|
{ className: classes.selectIconLabel },
|
271
|
-
React.createElement(HiIconBuilder, { icon:
|
272
|
-
|
272
|
+
React.createElement(HiIconBuilder, { icon: item.icon, className: classes.labelIcon }),
|
273
|
+
item.label
|
273
274
|
);
|
274
275
|
}
|
275
276
|
}
|
@@ -403,6 +404,7 @@ HiSelect.defaultProps = {
|
|
403
404
|
hierarchic: false,
|
404
405
|
parentItemSelectable: false,
|
405
406
|
displayAsChip: false,
|
407
|
+
dynamic: false,
|
406
408
|
icon: React.createElement(CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
|
407
409
|
parentIcon: React.createElement(CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
|
408
410
|
hoverIcon: React.createElement(CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
|
@@ -424,9 +426,9 @@ var _initialiseProps = function () {
|
|
424
426
|
if (this.state.open) {
|
425
427
|
this.handleClose();
|
426
428
|
} else {
|
427
|
-
if (!this.props.staticPosition) {
|
428
|
-
//document.body.style.overflow = 'hidden';
|
429
|
-
}
|
429
|
+
/*if (!this.props.staticPosition) {
|
430
|
+
// document.body.style.overflow = 'hidden';
|
431
|
+
}*/
|
430
432
|
this.setState({ open: true });
|
431
433
|
const options = this.props.options.slice();
|
432
434
|
this.handleSuggestions(options);
|
@@ -488,9 +490,11 @@ var _initialiseProps = function () {
|
|
488
490
|
} else if (event.key === 'ArrowUp') {
|
489
491
|
nextItem = getNextItemSelectable(document.activeElement, 'up');
|
490
492
|
} else if (event.key === 'Tab') {
|
491
|
-
if (!this.props.staticPosition) {
|
492
|
-
|
493
|
-
}
|
493
|
+
/* if (!this.props.staticPosition) {
|
494
|
+
document.body.style.overflow = 'auto';
|
495
|
+
} */
|
496
|
+
this.setState({ open: false });
|
497
|
+
} else if (event.key === 'Escape') {
|
494
498
|
this.setState({ open: false });
|
495
499
|
}
|
496
500
|
if (nextItem) {
|
@@ -633,9 +637,9 @@ var _initialiseProps = function () {
|
|
633
637
|
}
|
634
638
|
}
|
635
639
|
this.setState({ hierarchySelected: hiSelected });
|
636
|
-
onChange(event, valueList);
|
640
|
+
onChange(event, valueList, item);
|
637
641
|
} else {
|
638
|
-
onChange(event, item.id);
|
642
|
+
onChange(event, item.id, item);
|
639
643
|
this.handleClose();
|
640
644
|
}
|
641
645
|
};
|
@@ -702,6 +706,12 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
702
706
|
* Option permettant d'afficher les sélection sous forme de Chip.
|
703
707
|
*/
|
704
708
|
displayAsChip: PropTypes.bool,
|
709
|
+
/**
|
710
|
+
* Option permettant de définir si les options du select sont dynamiques.
|
711
|
+
* Si les options du select sont initialisées à vide, alors ce sera mis à true
|
712
|
+
* automatiquement.
|
713
|
+
*/
|
714
|
+
dynamic: PropTypes.bool.isRequired,
|
705
715
|
/**
|
706
716
|
* Applique le style error
|
707
717
|
*/
|
@@ -102,7 +102,7 @@ class HiSelectableList extends React.PureComponent {
|
|
102
102
|
hoverIcon: hoverIcon,
|
103
103
|
checkedIcon: checkedIcon,
|
104
104
|
checkbox: checkbox,
|
105
|
-
level: parents.length,
|
105
|
+
level: item.level ? item.level : parents.length,
|
106
106
|
disabled: disabledIds ? disabledIds.includes(item.id) : false
|
107
107
|
}, others));
|
108
108
|
}
|
@@ -313,7 +313,7 @@ class HiSelectableListItem extends React.Component {
|
|
313
313
|
|
314
314
|
if (leftPadding) {
|
315
315
|
paddingLeft = leftPadding;
|
316
|
-
} else if (!hierarchic) {
|
316
|
+
} else if (!hierarchic && level === 0) {
|
317
317
|
// Si pas de hiérarchie et sans checkbox, padding de 8px
|
318
318
|
if (!effectiveCheckbox) {
|
319
319
|
paddingLeft = 8;
|
@@ -330,9 +330,9 @@ class HiSelectableListItem extends React.Component {
|
|
330
330
|
}
|
331
331
|
} else if (level > 0) {
|
332
332
|
if (effectiveCheckbox) {
|
333
|
-
paddingLeft = 16 * (level - 1);
|
334
|
-
} else {
|
335
333
|
paddingLeft = 16 * level;
|
334
|
+
} else {
|
335
|
+
paddingLeft = 16 * (level + 1);
|
336
336
|
}
|
337
337
|
} else if (!effectiveCheckbox) {
|
338
338
|
if (item.id === '_all') {
|
@@ -241,10 +241,11 @@ export default class BodyCellBuilder extends React.Component {
|
|
241
241
|
default:
|
242
242
|
cellElement = React.createElement(CellText, {
|
243
243
|
ukey: ukey,
|
244
|
-
value: data.value,
|
244
|
+
value: data.label ? data.label : data.value,
|
245
245
|
ellipsis: ellipsis,
|
246
246
|
view: view,
|
247
|
-
sticky: sticky
|
247
|
+
sticky: sticky,
|
248
|
+
color: data.color
|
248
249
|
});
|
249
250
|
break;
|
250
251
|
}
|
@@ -3,9 +3,6 @@ import React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
4
4
|
import Tooltip from '../../Tooltip';
|
5
5
|
import HiColoredLabel from '../../HiColoredLabel';
|
6
|
-
import withStyles from '../../styles/withStyles';
|
7
|
-
|
8
|
-
export const styles = theme => ({});
|
9
6
|
|
10
7
|
/**
|
11
8
|
* Cette cellule permet d'afficher le nom d'un compte sous la forme d'un label coloré.
|
@@ -42,4 +39,4 @@ CellAccount.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
42
39
|
*/
|
43
40
|
value: PropTypes.string.isRequired
|
44
41
|
} : {};
|
45
|
-
export default
|
42
|
+
export default CellAccount;
|
@@ -3,12 +3,11 @@ import React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
4
4
|
import moment from 'moment';
|
5
5
|
import 'moment/locale/fr';
|
6
|
-
|
7
6
|
import withStyles from '../../styles/withStyles';
|
8
7
|
import Tooltip from '../../Tooltip';
|
9
8
|
import * as cst from '../constants';
|
10
9
|
|
11
|
-
export const styles =
|
10
|
+
export const styles = {
|
12
11
|
rightEllipsisSpan: {
|
13
12
|
display: 'inline-block',
|
14
13
|
overflow: 'hidden',
|
@@ -16,7 +15,7 @@ export const styles = theme => ({
|
|
16
15
|
whiteSpace: 'pre',
|
17
16
|
width: '100%'
|
18
17
|
}
|
19
|
-
}
|
18
|
+
};
|
20
19
|
|
21
20
|
/**
|
22
21
|
* Cette cellule permet d'afficher une date en fonction de la locale de l'utilisateur
|
@@ -36,14 +35,14 @@ class CellDate extends React.Component {
|
|
36
35
|
const { classes, displayTime, value, locale, view, formatShort } = this.props;
|
37
36
|
|
38
37
|
const date = moment(value);
|
39
|
-
|
38
|
+
date.locale(locale);
|
40
39
|
|
41
|
-
const titleValue = displayTime ? date.format(this.formatLong) : date.format(this.formatLong.replace('HH:mm:ss', ''));
|
40
|
+
const titleValue = displayTime ? date.format(this.formatLong) : date.format(this.formatLong.replace(' HH:mm:ss', ''));
|
42
41
|
let displayedValue = titleValue;
|
43
42
|
if (view === cst.VIEWS.SMALL) {
|
44
|
-
displayedValue = displayTime ? date.format(formatShort.replace('YYYY', 'YY')
|
43
|
+
displayedValue = displayTime ? date.format(`${formatShort.replace('YYYY', 'YY')} HH:mm:ss`) : date.format(formatShort.replace('YYYY', 'YY'));
|
45
44
|
} else if (view === cst.VIEWS.MEDIUM) {
|
46
|
-
displayedValue = displayTime ? date.format(formatShort
|
45
|
+
displayedValue = displayTime ? date.format(`${formatShort} HH:mm:ss`) : date.format(formatShort);
|
47
46
|
}
|
48
47
|
|
49
48
|
if (view === cst.VIEWS.LARGE) {
|
@@ -90,6 +89,11 @@ CellDate.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
90
89
|
* Locale moment
|
91
90
|
*/
|
92
91
|
locale: PropTypes.string,
|
92
|
+
/**
|
93
|
+
* True si la colonne est la première colonne et
|
94
|
+
* doit avoir un comportement "sticky" lors du scroll horizontal
|
95
|
+
*/
|
96
|
+
sticky: PropTypes.bool,
|
93
97
|
/**
|
94
98
|
* Date as string
|
95
99
|
*/
|
@@ -27,8 +27,8 @@ export const styles = theme => ({
|
|
27
27
|
negative: {
|
28
28
|
color: theme.palette.negative.normal
|
29
29
|
},
|
30
|
-
|
31
|
-
color: theme.palette.
|
30
|
+
neutral: {
|
31
|
+
color: theme.palette.neutral.normal
|
32
32
|
},
|
33
33
|
spanIndicator: {
|
34
34
|
fontSize: 11,
|
@@ -61,7 +61,7 @@ class CellRate extends React.Component {
|
|
61
61
|
|
62
62
|
switch (trendchip) {
|
63
63
|
case cst.NO_EVOLUTION:
|
64
|
-
trendIcon = React.createElement(Equal, { className: classes.trendChipIcon + ' ' + classes.
|
64
|
+
trendIcon = React.createElement(Equal, { className: classes.trendChipIcon + ' ' + classes.neutral });
|
65
65
|
break;
|
66
66
|
case cst.EVOLUTION_UP:
|
67
67
|
trendIcon = React.createElement(ArrowTopRight, {
|