@hipay/hipay-material-ui 2.0.0-beta.50 → 2.0.0-beta.52
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/HiCell/CellAddress.js +0 -1
- package/HiCheckbox/HiCheckbox.js +3 -3
- package/HiColoredLabel/HiColoredLabel.js +3 -2
- package/HiForm/HiInput.js +1 -5
- package/HiSelectNew/HiNestedSelectContent.js +410 -0
- package/HiSelectNew/HiSelectContent.js +525 -0
- package/HiSelectNew/index.js +31 -1
- package/HiSelectableList/HiSelectableListItem.js +10 -6
- package/HiTable/HiTableRow.js +11 -4
- package/es/HiCell/CellAddress.js +0 -1
- package/es/HiCheckbox/HiCheckbox.js +1 -1
- package/es/HiColoredLabel/HiColoredLabel.js +3 -2
- package/es/HiForm/HiInput.js +1 -5
- package/es/HiSelectNew/HiNestedSelectContent.js +347 -0
- package/es/HiSelectNew/HiSelectContent.js +457 -0
- package/es/HiSelectNew/index.js +3 -1
- package/es/HiSelectableList/HiSelectableListItem.js +6 -4
- package/es/HiTable/HiTableRow.js +10 -4
- package/es/styles/createPalette.js +9 -1
- package/index.es.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/styles/createPalette.js +10 -1
- package/umd/hipay-material-ui.development.js +32 -22
- package/umd/hipay-material-ui.production.min.js +2 -2
@@ -0,0 +1,525 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.default = exports.styles = void 0;
|
9
|
+
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
11
|
+
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
13
|
+
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
15
|
+
|
16
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
17
|
+
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
19
|
+
|
20
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
21
|
+
|
22
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
23
|
+
|
24
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
25
|
+
|
26
|
+
var _react = _interopRequireDefault(require("react"));
|
27
|
+
|
28
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
29
|
+
|
30
|
+
var _reactCustomScrollbars = _interopRequireDefault(require("react-custom-scrollbars"));
|
31
|
+
|
32
|
+
var _HiSelectableList = _interopRequireDefault(require("../HiSelectableList"));
|
33
|
+
|
34
|
+
var _HiInput = _interopRequireDefault(require("../HiForm/HiInput"));
|
35
|
+
|
36
|
+
var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
|
37
|
+
|
38
|
+
var _helpers = require("../utils/helpers");
|
39
|
+
|
40
|
+
var _HiIcon = _interopRequireDefault(require("../HiIcon"));
|
41
|
+
|
42
|
+
var _keycode = _interopRequireDefault(require("keycode"));
|
43
|
+
|
44
|
+
var styles = function styles(theme) {
|
45
|
+
return {
|
46
|
+
labelIcon: {
|
47
|
+
marginRight: 10
|
48
|
+
},
|
49
|
+
labelImg: {
|
50
|
+
height: 18,
|
51
|
+
width: 'auto',
|
52
|
+
margin: '0 4px',
|
53
|
+
verticalAlign: 'middle'
|
54
|
+
},
|
55
|
+
selectIconLabel: (0, _extends2.default)({
|
56
|
+
whiteSpace: 'nowrap',
|
57
|
+
overflow: 'hidden',
|
58
|
+
textOverflow: 'ellipsis',
|
59
|
+
paddingRight: 16
|
60
|
+
}, theme.typography.b1, {
|
61
|
+
display: 'inline-flex',
|
62
|
+
width: '100%'
|
63
|
+
}),
|
64
|
+
selectImgLabel: (0, _extends2.default)({
|
65
|
+
whiteSpace: 'nowrap',
|
66
|
+
overflow: 'hidden',
|
67
|
+
textOverflow: 'ellipsis',
|
68
|
+
paddingRight: 16
|
69
|
+
}, theme.typography.b1, {
|
70
|
+
display: 'inline-flex',
|
71
|
+
width: '100%'
|
72
|
+
})
|
73
|
+
};
|
74
|
+
};
|
75
|
+
/**
|
76
|
+
*
|
77
|
+
* Utilisé pour tous types de selects dans les formulaires.
|
78
|
+
* - single / multiple ( multi-select )
|
79
|
+
* - avec / sans checkboxes
|
80
|
+
* - avec / sans barre de recherche
|
81
|
+
* - avec / sans option "All"
|
82
|
+
* - prise en compte du type des éléments (text, image, icon, ...)
|
83
|
+
*
|
84
|
+
* Ce composant réuni les sous-composants
|
85
|
+
* - HiSelectInput : affiche l'élément dans le formulaire
|
86
|
+
* - HiSearchField : intègre une barre de recherche dans le Popper, il filtre la liste des suggestions
|
87
|
+
* - HiSelectableList : affiche la liste des suggestions selon le type des éléments
|
88
|
+
*/
|
89
|
+
|
90
|
+
|
91
|
+
exports.styles = styles;
|
92
|
+
|
93
|
+
var HiSelectContent =
|
94
|
+
/*#__PURE__*/
|
95
|
+
function (_React$PureComponent) {
|
96
|
+
(0, _inherits2.default)(HiSelectContent, _React$PureComponent);
|
97
|
+
|
98
|
+
function HiSelectContent(props) {
|
99
|
+
var _this;
|
100
|
+
|
101
|
+
(0, _classCallCheck2.default)(this, HiSelectContent);
|
102
|
+
_this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(HiSelectContent).call(this, props));
|
103
|
+
|
104
|
+
_this.handleKeyDown = function (event) {
|
105
|
+
var nextItem;
|
106
|
+
var key = (0, _keycode.default)(event);
|
107
|
+
|
108
|
+
if (key === 'down') {
|
109
|
+
event.preventDefault();
|
110
|
+
nextItem = (0, _helpers.getNextItemSelectable)(document.activeElement, 'down');
|
111
|
+
} else if (key === 'up') {
|
112
|
+
event.preventDefault();
|
113
|
+
nextItem = (0, _helpers.getNextItemSelectable)(document.activeElement, 'up');
|
114
|
+
} else if (key === 'tab' || key === 'esc') {
|
115
|
+
_this.setState({
|
116
|
+
open: false
|
117
|
+
});
|
118
|
+
} else if (key === 'space' || key === 'enter' && !_this.props.multiple) {
|
119
|
+
event.preventDefault();
|
120
|
+
|
121
|
+
var item = _this.props.options.find(function (elem) {
|
122
|
+
return String(elem.id) === event.target.id;
|
123
|
+
});
|
124
|
+
|
125
|
+
_this.handleSelect(null, item);
|
126
|
+
} else if (key === 'enter' && _this.props.multiple) {
|
127
|
+
event.preventDefault();
|
128
|
+
|
129
|
+
_this.handleClose();
|
130
|
+
}
|
131
|
+
|
132
|
+
if (nextItem) {
|
133
|
+
nextItem.focus();
|
134
|
+
}
|
135
|
+
};
|
136
|
+
|
137
|
+
_this.handleKeyDownSearch = function (event) {
|
138
|
+
var key = (0, _keycode.default)(event);
|
139
|
+
|
140
|
+
if (_this.overlay && (key === 'down' || key === 'up')) {
|
141
|
+
_this.focusOnFirstItem();
|
142
|
+
} else if (_this.overlay && key === 'esc' || key === 'enter') {
|
143
|
+
event.preventDefault();
|
144
|
+
|
145
|
+
_this.handleClose();
|
146
|
+
}
|
147
|
+
};
|
148
|
+
|
149
|
+
_this.handleSelect = function (event, item) {
|
150
|
+
var _this$props = _this.props,
|
151
|
+
hasAll = _this$props.hasAll,
|
152
|
+
multiple = _this$props.multiple,
|
153
|
+
onChange = _this$props.onChange,
|
154
|
+
options = _this$props.options,
|
155
|
+
value = _this$props.value;
|
156
|
+
|
157
|
+
if (!multiple) {
|
158
|
+
// single value
|
159
|
+
_this.handleClose();
|
160
|
+
|
161
|
+
onChange(event, item.id, item);
|
162
|
+
} else if (hasAll && item.id === '_all') {
|
163
|
+
if (value.length === options.length) {
|
164
|
+
// unselect _all options
|
165
|
+
onChange(event, [], item);
|
166
|
+
} else {
|
167
|
+
// select _all options
|
168
|
+
onChange(event, options.map(function (option) {
|
169
|
+
return option.id;
|
170
|
+
}), item);
|
171
|
+
}
|
172
|
+
} else if (value.includes(item.id)) {
|
173
|
+
// unselect item
|
174
|
+
onChange(event, value.filter(function (id) {
|
175
|
+
return id !== item.id;
|
176
|
+
}), item);
|
177
|
+
} else {
|
178
|
+
onChange(event, (0, _toConsumableArray2.default)(value).concat([item.id]), item);
|
179
|
+
}
|
180
|
+
};
|
181
|
+
|
182
|
+
_this.handleClose = function () {
|
183
|
+
if (_this.props.onClose) _this.props.onClose();
|
184
|
+
};
|
185
|
+
|
186
|
+
_this.handleSuggestions = function (suggestions) {
|
187
|
+
var _this$props2 = _this.props,
|
188
|
+
hasAll = _this$props2.hasAll,
|
189
|
+
iconAll = _this$props2.iconAll,
|
190
|
+
translations = _this$props2.translations;
|
191
|
+
|
192
|
+
if (suggestions.length === 0) {
|
193
|
+
// Add '_no_result' suggestion
|
194
|
+
_this.setState(function (prevState) {
|
195
|
+
return (0, _extends2.default)({}, prevState, {
|
196
|
+
suggestions: [{
|
197
|
+
id: '_no_result',
|
198
|
+
type: 'text',
|
199
|
+
disabled: true,
|
200
|
+
centered: true,
|
201
|
+
hideCheckbox: true,
|
202
|
+
label: translations.no_result_match
|
203
|
+
}]
|
204
|
+
});
|
205
|
+
});
|
206
|
+
} else {
|
207
|
+
_this.setState({
|
208
|
+
suggestions: (0, _toConsumableArray2.default)(hasAll ? [(0, _extends2.default)({
|
209
|
+
id: '_all',
|
210
|
+
label: translations.all
|
211
|
+
}, iconAll && {
|
212
|
+
type: 'icon',
|
213
|
+
icon: iconAll
|
214
|
+
})] : []).concat((0, _toConsumableArray2.default)(suggestions))
|
215
|
+
});
|
216
|
+
}
|
217
|
+
};
|
218
|
+
|
219
|
+
_this.handleScroll = function (e) {
|
220
|
+
if (e.target.scrollHeight - e.target.clientHeight - e.target.scrollTop < 15) {
|
221
|
+
_this.props.onScrollReachBottom();
|
222
|
+
}
|
223
|
+
};
|
224
|
+
|
225
|
+
_this.handleSearch = function (e, inputValue) {
|
226
|
+
var searchValue = inputValue && e.target.value ? inputValue : e.target.value;
|
227
|
+
|
228
|
+
if (_this.props.onSearch) {
|
229
|
+
_this.props.onSearch(e, searchValue);
|
230
|
+
} else {
|
231
|
+
_this.setState({
|
232
|
+
searchValue: searchValue
|
233
|
+
});
|
234
|
+
}
|
235
|
+
};
|
236
|
+
|
237
|
+
_this.handleSearchReset = function () {
|
238
|
+
_this.handleSearch({
|
239
|
+
target: {
|
240
|
+
value: ''
|
241
|
+
}
|
242
|
+
}, '');
|
243
|
+
};
|
244
|
+
|
245
|
+
_this.buildSelectProps = function (options) {
|
246
|
+
var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
247
|
+
var search = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
248
|
+
var loading = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
249
|
+
// build item list
|
250
|
+
var itemList = (0, _toConsumableArray2.default)(loading ? [{
|
251
|
+
id: '_loading',
|
252
|
+
type: 'loader',
|
253
|
+
disabled: true,
|
254
|
+
centered: true,
|
255
|
+
hideCheckbox: true,
|
256
|
+
label: 'loading'
|
257
|
+
}] : []).concat((0, _toConsumableArray2.default)(search !== '' ? (0, _toConsumableArray2.default)(options.filter(function (item) {
|
258
|
+
return item.label && (0, _helpers.foldAccents)(item.label.toString().toLowerCase()).search((0, _helpers.foldAccents)(search.toLowerCase())) !== -1;
|
259
|
+
})) : (0, _toConsumableArray2.default)(_this.props.hasAll ? [(0, _extends2.default)({
|
260
|
+
id: '_all',
|
261
|
+
label: _this.props.translations.all
|
262
|
+
}, _this.props.iconAll && {
|
263
|
+
type: 'icon',
|
264
|
+
icon: _this.props.iconAll
|
265
|
+
})] : []).concat((0, _toConsumableArray2.default)(options))));
|
266
|
+
return {
|
267
|
+
itemList: itemList
|
268
|
+
};
|
269
|
+
};
|
270
|
+
|
271
|
+
_this.getInputElement = function (el) {
|
272
|
+
_this.searchField = el;
|
273
|
+
|
274
|
+
if (_this.props.inputRef) {
|
275
|
+
_this.props.inputRef(_this.searchField);
|
276
|
+
}
|
277
|
+
};
|
278
|
+
|
279
|
+
_this.state = {
|
280
|
+
open: false,
|
281
|
+
focused: false,
|
282
|
+
searchValue: props.searchValue ? undefined : '',
|
283
|
+
suggestions: props.options
|
284
|
+
};
|
285
|
+
_this.handleSearch = _this.handleSearch.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
286
|
+
_this.handleSearchReset = _this.handleSearchReset.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
287
|
+
_this.handleSelect = _this.handleSelect.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
288
|
+
_this.handleSuggestions = _this.handleSuggestions.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
289
|
+
return _this;
|
290
|
+
}
|
291
|
+
|
292
|
+
(0, _createClass2.default)(HiSelectContent, [{
|
293
|
+
key: "render",
|
294
|
+
value: function render() {
|
295
|
+
var _this2 = this;
|
296
|
+
|
297
|
+
var _this$props3 = this.props,
|
298
|
+
classes = _this$props3.classes,
|
299
|
+
disabled = _this$props3.disabled,
|
300
|
+
error = _this$props3.error,
|
301
|
+
loading = _this$props3.loading,
|
302
|
+
options = _this$props3.options,
|
303
|
+
searchable = _this$props3.searchable,
|
304
|
+
type = _this$props3.type,
|
305
|
+
value = _this$props3.value,
|
306
|
+
multiple = _this$props3.multiple,
|
307
|
+
translations = _this$props3.translations,
|
308
|
+
hiSelectableListProps = _this$props3.hiSelectableListProps,
|
309
|
+
hiSelectInputProps = _this$props3.hiSelectInputProps,
|
310
|
+
id = _this$props3.id,
|
311
|
+
onScrollReachBottom = _this$props3.onScrollReachBottom,
|
312
|
+
onSubmit = _this$props3.onSubmit,
|
313
|
+
startAdornment = _this$props3.startAdornment,
|
314
|
+
_this$props3$searchVa = _this$props3.searchValue,
|
315
|
+
searchValue = _this$props3$searchVa === void 0 ? this.state.searchValue : _this$props3$searchVa,
|
316
|
+
_this$props3$buildSel = _this$props3.buildSelectProps,
|
317
|
+
buildSelectProps = _this$props3$buildSel === void 0 ? this.buildSelectProps : _this$props3$buildSel,
|
318
|
+
autoHeight = _this$props3.autoHeight,
|
319
|
+
height = _this$props3.height;
|
320
|
+
|
321
|
+
if (multiple) {
|
322
|
+
if (!Array.isArray(value)) {
|
323
|
+
throw new Error('HiPay Material-UI: the `value` property must be an array ' + 'when using the `HiSelect` component with `multiple`.');
|
324
|
+
}
|
325
|
+
}
|
326
|
+
|
327
|
+
var selectedItemIdList = [];
|
328
|
+
|
329
|
+
if (value) {
|
330
|
+
selectedItemIdList = multiple ? (0, _toConsumableArray2.default)(value) : [value];
|
331
|
+
}
|
332
|
+
|
333
|
+
var _buildSelectProps = buildSelectProps(options, selectedItemIdList, searchValue, loading),
|
334
|
+
itemList = _buildSelectProps.itemList;
|
335
|
+
|
336
|
+
return _react.default.createElement(_react.default.Fragment, null, !!searchable && _react.default.createElement(_HiInput.default, {
|
337
|
+
value: searchValue,
|
338
|
+
autoFocus: true,
|
339
|
+
inputRef: this.getInputElement,
|
340
|
+
onKeyDown: this.handleKeyDownSearch,
|
341
|
+
onChange: this.handleSearch,
|
342
|
+
onReset: this.handleSearchReset,
|
343
|
+
placeholder: translations.search,
|
344
|
+
startAdornment: 'search',
|
345
|
+
tabIndex: 0
|
346
|
+
}), startAdornment, _react.default.createElement(_reactCustomScrollbars.default, (0, _extends2.default)({
|
347
|
+
ref: function ref(contentEl) {
|
348
|
+
_this2.optionsContent = contentEl;
|
349
|
+
}
|
350
|
+
}, autoHeight ? {
|
351
|
+
autoHeight: true,
|
352
|
+
autoHeightMax: height
|
353
|
+
} : {
|
354
|
+
autoHeightMax: height,
|
355
|
+
autoHeightMin: height
|
356
|
+
}, {
|
357
|
+
autoHeight: true,
|
358
|
+
autoHeightMax: height // TODO ?
|
359
|
+
|
360
|
+
}, onScrollReachBottom && {
|
361
|
+
onScroll: this.handleScroll
|
362
|
+
}), _react.default.createElement(_HiSelectableList.default, (0, _extends2.default)({
|
363
|
+
type: type,
|
364
|
+
itemList: itemList,
|
365
|
+
onKeyDown: this.handleKeyDown,
|
366
|
+
onSelect: this.handleSelect,
|
367
|
+
selectedItemIdList: selectedItemIdList,
|
368
|
+
fallbackImage: this.props.fallbackImage
|
369
|
+
}, hiSelectableListProps))));
|
370
|
+
}
|
371
|
+
}], [{
|
372
|
+
key: "getDerivedStateFromProps",
|
373
|
+
value: function getDerivedStateFromProps(nextProps, prevState) {
|
374
|
+
if (nextProps.options !== prevState.suggestions) {
|
375
|
+
return (0, _extends2.default)({}, prevState, {
|
376
|
+
suggestions: nextProps.options
|
377
|
+
});
|
378
|
+
}
|
379
|
+
|
380
|
+
return null;
|
381
|
+
} // Key down on list items
|
382
|
+
|
383
|
+
}]);
|
384
|
+
return HiSelectContent;
|
385
|
+
}(_react.default.PureComponent);
|
386
|
+
|
387
|
+
HiSelectContent.defaultProps = {
|
388
|
+
autoHeight: true,
|
389
|
+
height: 400,
|
390
|
+
disabled: false,
|
391
|
+
error: false,
|
392
|
+
hasAll: false,
|
393
|
+
hiSelectableListProps: {},
|
394
|
+
hiSelectInputProps: {},
|
395
|
+
multiple: false,
|
396
|
+
searchable: false,
|
397
|
+
translations: {
|
398
|
+
all: 'All',
|
399
|
+
no_result_match: 'No result match',
|
400
|
+
search: 'Search',
|
401
|
+
n_items_selected: '%s items selected',
|
402
|
+
one_item_selected: '%s item selected',
|
403
|
+
n_children: '%s items',
|
404
|
+
one_child: '%s item'
|
405
|
+
},
|
406
|
+
type: 'text'
|
407
|
+
};
|
408
|
+
HiSelectContent.propTypes = process.env.NODE_ENV !== "production" ? {
|
409
|
+
autoHeight: _propTypes.default.bool,
|
410
|
+
|
411
|
+
/**
|
412
|
+
* Useful to extend the style applied to components.
|
413
|
+
*/
|
414
|
+
classes: _propTypes.default.object,
|
415
|
+
|
416
|
+
/**
|
417
|
+
* Inactif
|
418
|
+
*/
|
419
|
+
disabled: _propTypes.default.bool,
|
420
|
+
|
421
|
+
/**
|
422
|
+
* Applique le style error
|
423
|
+
*/
|
424
|
+
error: _propTypes.default.bool,
|
425
|
+
|
426
|
+
/**
|
427
|
+
* Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
|
428
|
+
*/
|
429
|
+
fallbackImage: _propTypes.default.string,
|
430
|
+
|
431
|
+
/**
|
432
|
+
* Affiche l'élément 'All'
|
433
|
+
*/
|
434
|
+
hasAll: _propTypes.default.bool,
|
435
|
+
|
436
|
+
/**
|
437
|
+
* Hauteur du container scrollable
|
438
|
+
*/
|
439
|
+
height: _propTypes.default.number,
|
440
|
+
|
441
|
+
/**
|
442
|
+
* Override HiSelectableList props (
|
443
|
+
*/
|
444
|
+
hiSelectableListProps: _propTypes.default.object,
|
445
|
+
|
446
|
+
/**
|
447
|
+
* Override HiSelectInput props
|
448
|
+
*/
|
449
|
+
hiSelectInputProps: _propTypes.default.object,
|
450
|
+
|
451
|
+
/**
|
452
|
+
* Nom de l'icône
|
453
|
+
*/
|
454
|
+
iconAll: _propTypes.default.string,
|
455
|
+
|
456
|
+
/**
|
457
|
+
* id du select
|
458
|
+
*/
|
459
|
+
id: _propTypes.default.string,
|
460
|
+
|
461
|
+
/**
|
462
|
+
* Ajoute un loader
|
463
|
+
*/
|
464
|
+
loading: _propTypes.default.bool,
|
465
|
+
|
466
|
+
/**
|
467
|
+
* Autorise la sélection de plusieurs valeurs
|
468
|
+
*/
|
469
|
+
multiple: _propTypes.default.bool,
|
470
|
+
|
471
|
+
/**
|
472
|
+
* Fonction de callback qui renvoit la/les valeurs sélectionnées
|
473
|
+
*
|
474
|
+
* @param {object} event
|
475
|
+
* @param {string || array} value
|
476
|
+
*/
|
477
|
+
onChange: _propTypes.default.func.isRequired,
|
478
|
+
|
479
|
+
/**
|
480
|
+
* Fonction de callback appelée lorsque le scroll atteint le bas de la liste
|
481
|
+
*/
|
482
|
+
onScrollReachBottom: _propTypes.default.func,
|
483
|
+
|
484
|
+
/**
|
485
|
+
* Fonction de callback appelée lorsque le champs de recherche est utilisé
|
486
|
+
*/
|
487
|
+
onSearch: _propTypes.default.func,
|
488
|
+
|
489
|
+
/**
|
490
|
+
* Listes des options du select
|
491
|
+
*/
|
492
|
+
options: _propTypes.default.array.isRequired,
|
493
|
+
|
494
|
+
/**
|
495
|
+
* Affiche un input de recherche permettant de filtrer les options
|
496
|
+
*/
|
497
|
+
searchable: _propTypes.default.bool,
|
498
|
+
|
499
|
+
/**
|
500
|
+
* Node qui s'ajoute entre la barre de recherche et la liste de résultats
|
501
|
+
*/
|
502
|
+
startAdornment: _propTypes.default.object,
|
503
|
+
|
504
|
+
/**
|
505
|
+
* Traductions (par défaut en anglais)
|
506
|
+
*/
|
507
|
+
translations: _propTypes.default.object,
|
508
|
+
|
509
|
+
/**
|
510
|
+
* Type des éléments du select, définit le rendu d'un élément
|
511
|
+
*/
|
512
|
+
type: _propTypes.default.oneOf(['icon', 'text', 'image', 'primary-highlight']),
|
513
|
+
|
514
|
+
/**
|
515
|
+
* Value(s) du select
|
516
|
+
*/
|
517
|
+
value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string, _propTypes.default.array])
|
518
|
+
} : {};
|
519
|
+
|
520
|
+
var _default = (0, _withStyles.default)(styles, {
|
521
|
+
hiComponent: true,
|
522
|
+
name: 'HmuiHiSelectContent'
|
523
|
+
})(HiSelectContent);
|
524
|
+
|
525
|
+
exports.default = _default;
|
package/HiSelectNew/index.js
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
4
|
+
|
3
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
6
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
@@ -29,6 +31,30 @@ Object.defineProperty(exports, "HiSelectInput", {
|
|
29
31
|
return _HiSelectInput.default;
|
30
32
|
}
|
31
33
|
});
|
34
|
+
Object.defineProperty(exports, "HiSelectContent", {
|
35
|
+
enumerable: true,
|
36
|
+
get: function get() {
|
37
|
+
return _HiSelectContent.default;
|
38
|
+
}
|
39
|
+
});
|
40
|
+
Object.defineProperty(exports, "HiNestedSelectContent", {
|
41
|
+
enumerable: true,
|
42
|
+
get: function get() {
|
43
|
+
return _HiNestedSelectContent.default;
|
44
|
+
}
|
45
|
+
});
|
46
|
+
Object.defineProperty(exports, "findFinalItemRecursively", {
|
47
|
+
enumerable: true,
|
48
|
+
get: function get() {
|
49
|
+
return _HiNestedSelectContent.findFinalItemRecursively;
|
50
|
+
}
|
51
|
+
});
|
52
|
+
Object.defineProperty(exports, "getRecursiveFinalItemIdList", {
|
53
|
+
enumerable: true,
|
54
|
+
get: function get() {
|
55
|
+
return _HiNestedSelectContent.getRecursiveFinalItemIdList;
|
56
|
+
}
|
57
|
+
});
|
32
58
|
|
33
59
|
var _HiSelect = _interopRequireDefault(require("./HiSelect"));
|
34
60
|
|
@@ -36,4 +62,8 @@ var _HiNestedSelect = _interopRequireDefault(require("./HiNestedSelect"));
|
|
36
62
|
|
37
63
|
var _HiSelectField = _interopRequireDefault(require("./HiSelectField"));
|
38
64
|
|
39
|
-
var _HiSelectInput = _interopRequireDefault(require("./HiSelectInput"));
|
65
|
+
var _HiSelectInput = _interopRequireDefault(require("./HiSelectInput"));
|
66
|
+
|
67
|
+
var _HiSelectContent = _interopRequireDefault(require("./HiSelectContent"));
|
68
|
+
|
69
|
+
var _HiNestedSelectContent = _interopRequireWildcard(require("./HiNestedSelectContent"));
|
@@ -45,6 +45,11 @@ var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
|
|
45
45
|
|
46
46
|
var _helpers = require("../utils/helpers");
|
47
47
|
|
48
|
+
var _pure = _interopRequireDefault(require("recompose/pure"));
|
49
|
+
|
50
|
+
var PureListSubheader = (0, _pure.default)(_ListSubheader.default);
|
51
|
+
var PureListItem = (0, _pure.default)(_ListItem.default);
|
52
|
+
|
48
53
|
var styles = function styles(theme) {
|
49
54
|
return {
|
50
55
|
root: {
|
@@ -141,8 +146,7 @@ var styles = function styles(theme) {
|
|
141
146
|
textOverflow: 'ellipsis',
|
142
147
|
textAlign: 'right',
|
143
148
|
margin: '4px 12px 4px 8px',
|
144
|
-
alignSelf: 'center'
|
145
|
-
width: '100%'
|
149
|
+
alignSelf: 'center'
|
146
150
|
}),
|
147
151
|
checkbox: {
|
148
152
|
marginTop: 3
|
@@ -171,8 +175,8 @@ exports.styles = styles;
|
|
171
175
|
|
172
176
|
var HiSelectableListItem =
|
173
177
|
/*#__PURE__*/
|
174
|
-
function (_React$
|
175
|
-
(0, _inherits2.default)(HiSelectableListItem, _React$
|
178
|
+
function (_React$PureComponent) {
|
179
|
+
(0, _inherits2.default)(HiSelectableListItem, _React$PureComponent);
|
176
180
|
|
177
181
|
function HiSelectableListItem(props) {
|
178
182
|
var _this;
|
@@ -289,7 +293,7 @@ function (_React$Component) {
|
|
289
293
|
displayedIcon = icon;
|
290
294
|
}
|
291
295
|
|
292
|
-
var ListItemComponentName = pinned ?
|
296
|
+
var ListItemComponentName = pinned ? PureListSubheader : PureListItem;
|
293
297
|
return _react.default.createElement(ListItemComponentName, (0, _extends2.default)({
|
294
298
|
id: id,
|
295
299
|
tabIndex: disabled ? '-1' : 0,
|
@@ -343,7 +347,7 @@ function (_React$Component) {
|
|
343
347
|
}
|
344
348
|
}]);
|
345
349
|
return HiSelectableListItem;
|
346
|
-
}(_react.default.
|
350
|
+
}(_react.default.PureComponent);
|
347
351
|
|
348
352
|
HiSelectableListItem.defaultProps = {
|
349
353
|
centered: false,
|
package/HiTable/HiTableRow.js
CHANGED
@@ -9,6 +9,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
9
9
|
});
|
10
10
|
exports.default = exports.styles = void 0;
|
11
11
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
13
|
+
|
12
14
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
13
15
|
|
14
16
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
@@ -27,6 +29,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
29
|
|
28
30
|
var _keycode = _interopRequireDefault(require("keycode"));
|
29
31
|
|
32
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
33
|
+
|
30
34
|
var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
|
31
35
|
|
32
36
|
var _TableRow = _interopRequireDefault(require("@material-ui/core/TableRow"));
|
@@ -48,6 +52,9 @@ var styles = function styles(theme) {
|
|
48
52
|
'&:hover, &:focus': {
|
49
53
|
backgroundColor: "".concat(theme.palette.action.hover, " !important")
|
50
54
|
}
|
55
|
+
},
|
56
|
+
clicableRow: {
|
57
|
+
cursor: 'pointer'
|
51
58
|
}
|
52
59
|
};
|
53
60
|
};
|
@@ -88,7 +95,7 @@ function (_React$PureComponent) {
|
|
88
95
|
locale = _this$props.locale,
|
89
96
|
rowdata = _this$props.rowdata;
|
90
97
|
return _react.default.createElement(_TableRow.default, {
|
91
|
-
className: classes.row,
|
98
|
+
className: (0, _classnames.default)(classes.row, (0, _defineProperty2.default)({}, classes.clicableRow, this.props.onClick)),
|
92
99
|
hover: true,
|
93
100
|
onClick: function onClick(event) {
|
94
101
|
return _this2.handleClick(event, rowdata);
|
@@ -105,10 +112,10 @@ function (_React$PureComponent) {
|
|
105
112
|
height: dense ? cst.CELL_HEIGHT_DENSE : cst.CELL_HEIGHT
|
106
113
|
},
|
107
114
|
tabIndex: 0
|
108
|
-
}, Object.keys(columns).map(function (
|
115
|
+
}, Object.keys(columns).map(function (column) {
|
109
116
|
return _react.default.createElement(_HiCellBuilder.default, {
|
110
|
-
key: columns[
|
111
|
-
column: columns[
|
117
|
+
key: columns[column].colId,
|
118
|
+
column: columns[column],
|
112
119
|
data: rowdata,
|
113
120
|
locale: locale
|
114
121
|
});
|
package/es/HiCell/CellAddress.js
CHANGED