@hipay/hipay-material-ui 1.0.0-beta.8 → 2.0.0-beta.35

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 (1047) hide show
  1. package/CHANGELOG.md +1922 -21
  2. package/HiAlertModal/HiAlertModal.js +185 -210
  3. package/HiAlertModal/index.js +6 -7
  4. package/HiAppBar/HiAppBar.js +199 -0
  5. package/HiAppBar/index.js +15 -0
  6. package/HiBadge/HiBadge.js +119 -95
  7. package/HiBadge/index.js +6 -7
  8. package/HiBreadcrumb/HiBreadcrumb.js +90 -115
  9. package/HiBreadcrumb/HiStep.js +155 -98
  10. package/HiBreadcrumb/HiStepConnector.js +170 -109
  11. package/HiBreadcrumb/HiStepContent.js +108 -0
  12. package/HiBreadcrumb/HiStepIcon.js +166 -123
  13. package/HiBreadcrumb/HiStepLabel.js +209 -172
  14. package/HiBreadcrumb/HiStepper.js +76 -104
  15. package/HiBreadcrumb/index.js +6 -7
  16. package/HiButton/HiButton.js +192 -136
  17. package/HiButton/index.js +6 -7
  18. package/HiCheckbox/HiCheckbox.js +190 -147
  19. package/HiCheckbox/index.js +6 -7
  20. package/HiChip/HiChip.js +254 -174
  21. package/HiChip/HiChipSwitch.js +279 -289
  22. package/HiChip/index.js +10 -12
  23. package/HiColoredLabel/HiColoredLabel.js +179 -100
  24. package/HiColoredLabel/index.js +6 -7
  25. package/HiDatePicker/Caption.js +77 -82
  26. package/HiDatePicker/Caption.spec.js +88 -0
  27. package/HiDatePicker/HiDatePicker.js +369 -373
  28. package/HiDatePicker/ListPicker.js +137 -148
  29. package/HiDatePicker/ListPicker.spec.js +68 -0
  30. package/HiDatePicker/NavBar.js +146 -0
  31. package/HiDatePicker/NavBar.spec.js +56 -0
  32. package/HiDatePicker/Overlays/CustomOverlayLayout.js +113 -132
  33. package/HiDatePicker/Overlays/MonthPickerOverlay.js +95 -115
  34. package/HiDatePicker/Overlays/MonthPickerOverlay.spec.js +74 -0
  35. package/HiDatePicker/Overlays/Overlay.js +102 -94
  36. package/HiDatePicker/Overlays/Overlay.spec.js +38 -0
  37. package/HiDatePicker/Overlays/TimePickerOverlay.js +242 -281
  38. package/HiDatePicker/Overlays/TimePickerOverlay.spec.js +71 -0
  39. package/HiDatePicker/Overlays/YearPickerOverlay.js +124 -144
  40. package/HiDatePicker/Overlays/YearPickerOverlay.spec.js +127 -0
  41. package/HiDatePicker/Overlays/index.js +22 -27
  42. package/HiDatePicker/Weekday.js +20 -23
  43. package/HiDatePicker/stylesheet.js +198 -181
  44. package/HiExpansionPanel/HiExpansionPanel.js +153 -204
  45. package/HiExpansionPanel/index.js +6 -7
  46. package/HiForm/HiEmailField.js +90 -102
  47. package/HiForm/HiFormControl.js +319 -341
  48. package/HiForm/HiFormLabel.js +129 -152
  49. package/HiForm/HiInput.js +519 -481
  50. package/HiForm/HiPasswordField.js +93 -103
  51. package/HiForm/HiSearchField.js +158 -163
  52. package/HiForm/HiTextField.js +143 -134
  53. package/HiForm/index.js +30 -37
  54. package/HiIcon/HiIcon.js +194 -0
  55. package/HiIcon/index.js +15 -0
  56. package/HiIconButton/HiIconButton.js +120 -0
  57. package/HiIconButton/index.js +15 -0
  58. package/HiLoader/HiLoader.js +53 -39
  59. package/HiLoader/index.js +6 -7
  60. package/HiPin/HiPin.js +117 -0
  61. package/HiPin/index.js +15 -0
  62. package/HiSelect/HiSelect.js +901 -744
  63. package/HiSelect/HiSelectField.js +88 -104
  64. package/HiSelect/HiSuggestSelect.js +288 -240
  65. package/HiSelect/HiSuggestSelectField.js +76 -92
  66. package/HiSelect/SelectInput.js +293 -298
  67. package/HiSelect/index.js +34 -28
  68. package/HiSelectNew/HiDynamicSelect.js +238 -0
  69. package/HiSelectNew/HiNestedSelect.js +453 -0
  70. package/HiSelectNew/HiSelect.js +698 -0
  71. package/HiSelectNew/HiSelectField.js +146 -0
  72. package/HiSelectNew/HiSelectInput.js +349 -0
  73. package/HiSelectNew/index.js +39 -0
  74. package/HiSelectableList/HiSelectableList.js +188 -228
  75. package/HiSelectableList/HiSelectableListHierarchic.js +233 -0
  76. package/HiSelectableList/HiSelectableListItem.js +430 -521
  77. package/HiSelectableList/index.js +18 -12
  78. package/HiSwitch/HiSwitch.js +228 -200
  79. package/HiSwitch/HiSwitchState.js +206 -216
  80. package/HiSwitch/index.js +9 -17
  81. package/README.md +100 -185
  82. package/es/HiAlertModal/HiAlertModal.js +158 -173
  83. package/es/HiAppBar/HiAppBar.js +151 -0
  84. package/es/HiAppBar/index.js +1 -0
  85. package/es/HiBadge/HiBadge.js +106 -64
  86. package/es/HiBreadcrumb/HiBreadcrumb.js +58 -59
  87. package/es/HiBreadcrumb/HiStep.js +112 -80
  88. package/es/HiBreadcrumb/HiStepConnector.js +141 -67
  89. package/es/HiBreadcrumb/HiStepContent.js +66 -0
  90. package/es/HiBreadcrumb/HiStepIcon.js +134 -64
  91. package/es/HiBreadcrumb/HiStepLabel.js +173 -138
  92. package/es/HiBreadcrumb/HiStepper.js +41 -49
  93. package/es/HiButton/HiButton.js +187 -114
  94. package/es/HiCheckbox/HiCheckbox.js +157 -84
  95. package/es/HiChip/HiChip.js +231 -132
  96. package/es/HiChip/HiChipSwitch.js +239 -226
  97. package/es/HiColoredLabel/HiColoredLabel.js +158 -67
  98. package/es/HiDatePicker/Caption.js +59 -57
  99. package/es/HiDatePicker/Caption.spec.js +68 -0
  100. package/es/HiDatePicker/HiDatePicker.js +307 -276
  101. package/es/HiDatePicker/ListPicker.js +93 -92
  102. package/es/HiDatePicker/ListPicker.spec.js +51 -0
  103. package/es/HiDatePicker/NavBar.js +117 -0
  104. package/es/HiDatePicker/NavBar.spec.js +40 -0
  105. package/es/HiDatePicker/Overlays/CustomOverlayLayout.js +90 -100
  106. package/es/HiDatePicker/Overlays/MonthPickerOverlay.js +66 -65
  107. package/es/HiDatePicker/Overlays/MonthPickerOverlay.spec.js +53 -0
  108. package/es/HiDatePicker/Overlays/Overlay.js +84 -64
  109. package/es/HiDatePicker/Overlays/Overlay.spec.js +27 -0
  110. package/es/HiDatePicker/Overlays/TimePickerOverlay.js +178 -192
  111. package/es/HiDatePicker/Overlays/TimePickerOverlay.spec.js +53 -0
  112. package/es/HiDatePicker/Overlays/YearPickerOverlay.js +92 -89
  113. package/es/HiDatePicker/Overlays/YearPickerOverlay.spec.js +92 -0
  114. package/es/HiDatePicker/Overlays/index.js +1 -0
  115. package/es/HiDatePicker/Weekday.js +14 -9
  116. package/es/HiDatePicker/stylesheet.js +188 -172
  117. package/es/HiExpansionPanel/HiExpansionPanel.js +121 -154
  118. package/es/HiForm/HiEmailField.js +58 -51
  119. package/es/HiForm/HiFormControl.js +283 -285
  120. package/es/HiForm/HiFormLabel.js +96 -103
  121. package/es/HiForm/HiInput.js +471 -415
  122. package/es/HiForm/HiPasswordField.js +59 -51
  123. package/es/HiForm/HiSearchField.js +120 -107
  124. package/es/HiForm/HiTextField.js +70 -47
  125. package/es/HiForm/index.js +2 -2
  126. package/es/HiIcon/HiIcon.js +173 -0
  127. package/es/HiIcon/index.js +1 -0
  128. package/es/HiIconButton/HiIconButton.js +100 -0
  129. package/es/HiIconButton/index.js +1 -0
  130. package/es/HiLoader/HiLoader.js +45 -22
  131. package/es/HiPin/HiPin.js +101 -0
  132. package/es/HiPin/index.js +1 -0
  133. package/es/HiSelect/HiSelect.js +857 -659
  134. package/es/HiSelect/HiSelectField.js +39 -36
  135. package/es/HiSelect/HiSuggestSelect.js +247 -179
  136. package/es/HiSelect/HiSuggestSelectField.js +36 -33
  137. package/es/HiSelect/SelectInput.js +260 -254
  138. package/es/HiSelect/index.js +4 -10
  139. package/es/HiSelectNew/HiDynamicSelect.js +203 -0
  140. package/es/HiSelectNew/HiNestedSelect.js +401 -0
  141. package/es/HiSelectNew/HiSelect.js +619 -0
  142. package/es/HiSelectNew/HiSelectField.js +111 -0
  143. package/es/HiSelectNew/HiSelectInput.js +307 -0
  144. package/es/HiSelectNew/index.js +4 -0
  145. package/es/HiSelectableList/HiSelectableList.js +144 -184
  146. package/es/HiSelectableList/HiSelectableListHierarchic.js +175 -0
  147. package/es/HiSelectableList/HiSelectableListItem.js +392 -445
  148. package/es/HiSelectableList/index.js +2 -1
  149. package/es/HiSwitch/HiSwitch.js +199 -124
  150. package/es/HiSwitch/HiSwitchState.js +182 -151
  151. package/es/HiSwitch/index.js +0 -1
  152. package/es/hi-svg-icons/HiAccount.js +38 -0
  153. package/es/hi-svg-icons/HiAll.js +43 -0
  154. package/es/hi-svg-icons/HiBilling.js +38 -0
  155. package/es/hi-svg-icons/HiBriefcaseRescue.js +14 -0
  156. package/es/hi-svg-icons/HiCatalog.js +38 -0
  157. package/es/hi-svg-icons/HiCustomer.js +38 -0
  158. package/es/hi-svg-icons/HiFinance.js +38 -0
  159. package/es/hi-svg-icons/HiRoute.js +38 -0
  160. package/es/hi-svg-icons/HiSettlement.js +38 -0
  161. package/es/hi-svg-icons/HiSizeLarge.js +25 -0
  162. package/es/hi-svg-icons/HiSizeMedium.js +25 -0
  163. package/es/hi-svg-icons/HiSizeSmall.js +25 -0
  164. package/es/hi-svg-icons/HiTransaction.js +38 -0
  165. package/es/hi-svg-icons/HiUser.js +38 -0
  166. package/es/hi-svg-icons/HiWidget.js +43 -0
  167. package/es/{svg-icons → hi-svg-icons}/index.js +4 -0
  168. package/es/hi-svg-icons/index.text.js +41 -0
  169. package/es/index.js +16 -63
  170. package/es/styles/MuiThemeProvider.js +36 -26
  171. package/es/styles/colorManipulator.js +71 -43
  172. package/es/styles/createBreakpoints.js +5 -6
  173. package/es/styles/createGenerateClassName.js +29 -27
  174. package/es/styles/createMixins.js +4 -4
  175. package/es/styles/createMuiTheme.js +26 -17
  176. package/es/styles/createPalette.js +111 -30
  177. package/es/styles/createStyles.js +3 -0
  178. package/es/styles/createTypography.js +91 -33
  179. package/es/styles/getStylesCreator.js +14 -7
  180. package/es/styles/getThemeProps.js +14 -0
  181. package/es/styles/index.js +2 -2
  182. package/es/styles/jssPreset.js +2 -3
  183. package/es/styles/mergeClasses.js +29 -0
  184. package/es/styles/shadows.js +0 -1
  185. package/es/styles/shape.js +4 -0
  186. package/es/styles/spacing.js +4 -3
  187. package/es/styles/themeListener.js +2 -5
  188. package/es/styles/transitions.js +15 -19
  189. package/es/styles/withStyles.js +115 -98
  190. package/es/styles/withTheme.js +29 -10
  191. package/es/styles/zIndex.js +0 -1
  192. package/es/test-utils/createMount.js +9 -10
  193. package/es/test-utils/createRender.js +8 -8
  194. package/es/test-utils/createShallow.js +23 -23
  195. package/es/test-utils/getClasses.js +4 -8
  196. package/es/test-utils/until.js +14 -10
  197. package/es/test-utils/unwrap.js +0 -2
  198. package/es/transitions/utils.js +4 -3
  199. package/es/utils/exactProp.js +17 -10
  200. package/es/utils/helpers.js +102 -40
  201. package/es/utils/ownerDocument.js +5 -0
  202. package/es/utils/ownerWindow.js +8 -0
  203. package/es/utils/reactHelpers.js +10 -12
  204. package/es/utils/requirePropFactory.js +7 -3
  205. package/es/utils/unsupportedProp.js +16 -0
  206. package/es/withMobileDialog/index.js +1 -0
  207. package/es/{Dialog → withMobileDialog}/withMobileDialog.js +9 -6
  208. package/es/withWidth/index.js +2 -0
  209. package/es/withWidth/withWidth.js +176 -0
  210. package/hi-svg-icons/HiAccount.js +52 -0
  211. package/hi-svg-icons/HiAll.js +57 -0
  212. package/hi-svg-icons/HiBilling.js +52 -0
  213. package/hi-svg-icons/HiBriefcaseRescue.js +27 -0
  214. package/hi-svg-icons/HiCatalog.js +52 -0
  215. package/hi-svg-icons/HiCustomer.js +52 -0
  216. package/hi-svg-icons/HiFinance.js +52 -0
  217. package/hi-svg-icons/HiRoute.js +52 -0
  218. package/hi-svg-icons/HiSettlement.js +52 -0
  219. package/hi-svg-icons/HiSizeLarge.js +36 -0
  220. package/hi-svg-icons/HiSizeMedium.js +36 -0
  221. package/hi-svg-icons/HiSizeSmall.js +36 -0
  222. package/hi-svg-icons/HiTransaction.js +52 -0
  223. package/hi-svg-icons/HiUser.js +52 -0
  224. package/hi-svg-icons/HiWidget.js +57 -0
  225. package/hi-svg-icons/index.js +127 -0
  226. package/hi-svg-icons/index.text.js +51 -0
  227. package/index.es.js +17 -64
  228. package/index.js +64 -733
  229. package/package.json +36 -41
  230. package/styles/MuiThemeProvider.js +78 -93
  231. package/styles/colorManipulator.js +88 -57
  232. package/styles/createBreakpoints.js +18 -23
  233. package/styles/createGenerateClassName.js +36 -38
  234. package/styles/createMixins.js +11 -17
  235. package/styles/createMuiTheme.js +51 -65
  236. package/styles/createPalette.js +146 -76
  237. package/styles/createStyles.js +10 -0
  238. package/styles/createTypography.js +103 -56
  239. package/styles/getStylesCreator.js +22 -23
  240. package/styles/getThemeProps.js +20 -0
  241. package/styles/index.js +30 -37
  242. package/styles/jssPreset.js +13 -23
  243. package/styles/mergeClasses.js +41 -0
  244. package/styles/shadows.js +5 -4
  245. package/styles/shape.js +11 -0
  246. package/styles/spacing.js +6 -3
  247. package/styles/themeListener.js +11 -15
  248. package/styles/transitions.js +41 -47
  249. package/styles/withStyles.js +162 -200
  250. package/styles/withTheme.js +58 -59
  251. package/styles/zIndex.js +3 -2
  252. package/test-utils/createMount.js +12 -21
  253. package/test-utils/createRender.js +10 -17
  254. package/test-utils/createShallow.js +36 -48
  255. package/test-utils/getClasses.js +15 -26
  256. package/test-utils/index.js +22 -27
  257. package/test-utils/until.js +14 -19
  258. package/test-utils/unwrap.js +0 -1
  259. package/transitions/utils.js +7 -5
  260. package/umd/hipay-material-ui.development.js +75471 -100230
  261. package/umd/hipay-material-ui.production.min.js +5 -20
  262. package/utils/exactProp.js +28 -25
  263. package/utils/helpers.js +125 -55
  264. package/utils/ownerDocument.js +13 -0
  265. package/utils/ownerWindow.js +19 -0
  266. package/utils/reactHelpers.js +17 -8
  267. package/utils/requirePropFactory.js +15 -6
  268. package/utils/unsupportedProp.js +24 -0
  269. package/withMobileDialog/index.js +15 -0
  270. package/withMobileDialog/withMobileDialog.js +45 -0
  271. package/withWidth/index.js +27 -0
  272. package/withWidth/withWidth.js +229 -0
  273. package/AppBar/AppBar.js +0 -144
  274. package/AppBar/index.js +0 -16
  275. package/Avatar/Avatar.js +0 -165
  276. package/Avatar/index.js +0 -16
  277. package/Badge/Badge.js +0 -142
  278. package/Badge/index.js +0 -16
  279. package/BottomNavigation/BottomNavigation.js +0 -113
  280. package/BottomNavigation/BottomNavigationAction.js +0 -219
  281. package/BottomNavigation/index.js +0 -25
  282. package/Button/Button.js +0 -298
  283. package/Button/index.js +0 -16
  284. package/ButtonBase/ButtonBase.js +0 -446
  285. package/ButtonBase/Ripple.js +0 -162
  286. package/ButtonBase/TouchRipple.js +0 -359
  287. package/ButtonBase/createRippleHandler.js +0 -28
  288. package/ButtonBase/index.js +0 -16
  289. package/Card/Card.js +0 -48
  290. package/Card/CardActions.js +0 -94
  291. package/Card/CardContent.js +0 -76
  292. package/Card/CardHeader.js +0 -150
  293. package/Card/CardMedia.js +0 -113
  294. package/Card/index.js +0 -52
  295. package/Checkbox/Checkbox.js +0 -160
  296. package/Checkbox/index.js +0 -16
  297. package/Chip/Chip.js +0 -322
  298. package/Chip/index.js +0 -16
  299. package/Dialog/Dialog.js +0 -271
  300. package/Dialog/DialogActions.js +0 -94
  301. package/Dialog/DialogContent.js +0 -77
  302. package/Dialog/DialogContentText.js +0 -72
  303. package/Dialog/DialogTitle.js +0 -91
  304. package/Dialog/index.js +0 -61
  305. package/Dialog/withMobileDialog.js +0 -49
  306. package/Divider/Divider.js +0 -113
  307. package/Divider/index.js +0 -16
  308. package/Drawer/Drawer.js +0 -325
  309. package/Drawer/index.js +0 -16
  310. package/ExpansionPanel/ExpansionPanel.js +0 -257
  311. package/ExpansionPanel/ExpansionPanelActions.js +0 -79
  312. package/ExpansionPanel/ExpansionPanelDetails.js +0 -73
  313. package/ExpansionPanel/ExpansionPanelSummary.js +0 -250
  314. package/ExpansionPanel/index.js +0 -43
  315. package/Form/FormControl.js +0 -291
  316. package/Form/FormControlLabel.js +0 -168
  317. package/Form/FormGroup.js +0 -94
  318. package/Form/FormHelperText.js +0 -139
  319. package/Form/FormLabel.js +0 -158
  320. package/Form/index.js +0 -52
  321. package/Grid/Grid.js +0 -372
  322. package/Grid/index.js +0 -16
  323. package/GridList/GridList.js +0 -122
  324. package/GridList/GridListTile.js +0 -239
  325. package/GridList/GridListTileBar.js +0 -176
  326. package/GridList/index.js +0 -34
  327. package/HI-CHANGELOG.md +0 -42
  328. package/HiDatePicker/HiDateRangePicker.js +0 -715
  329. package/HiDatePicker/HiDateRangeSelector.js +0 -422
  330. package/HiDatePicker/HiWeekPicker.js +0 -389
  331. package/HiDatePicker/Navbar.js +0 -169
  332. package/HiDatePicker/index.js +0 -33
  333. package/HiPins/HiPins.js +0 -98
  334. package/HiPins/index.js +0 -16
  335. package/HiRadio/HiRadio.js +0 -99
  336. package/HiRadio/index.js +0 -16
  337. package/HiTable/BodyCellBuilder.js +0 -398
  338. package/HiTable/BodyCells/CellAccount.js +0 -100
  339. package/HiTable/BodyCells/CellAccountNumber.js +0 -220
  340. package/HiTable/BodyCells/CellAddress.js +0 -199
  341. package/HiTable/BodyCells/CellCountry.js +0 -172
  342. package/HiTable/BodyCells/CellDate.js +0 -177
  343. package/HiTable/BodyCells/CellIcon.js +0 -148
  344. package/HiTable/BodyCells/CellImage.js +0 -177
  345. package/HiTable/BodyCells/CellLayout.js +0 -285
  346. package/HiTable/BodyCells/CellNumeric.js +0 -135
  347. package/HiTable/BodyCells/CellRate.js +0 -197
  348. package/HiTable/BodyCells/CellSentinel.js +0 -213
  349. package/HiTable/BodyCells/CellStatus.js +0 -140
  350. package/HiTable/BodyCells/CellText.js +0 -268
  351. package/HiTable/BodyCells/CellThirdPartySecurity.js +0 -144
  352. package/HiTable/BodyCells/index.js +0 -133
  353. package/HiTable/BodyRow.js +0 -388
  354. package/HiTable/ChildRow.js +0 -432
  355. package/HiTable/ColumnFilter.js +0 -494
  356. package/HiTable/HeaderCell.js +0 -463
  357. package/HiTable/HiStickyRow.js +0 -300
  358. package/HiTable/HiTable.js +0 -1019
  359. package/HiTable/HiTableBody.js +0 -557
  360. package/HiTable/HiTableContextMenu.js +0 -214
  361. package/HiTable/HiTableFooterScroll.js +0 -202
  362. package/HiTable/HiTableHead.js +0 -489
  363. package/HiTable/OrderColumns.js +0 -561
  364. package/HiTable/constants.js +0 -105
  365. package/HiTable/index.js +0 -25
  366. package/HiTopBar/HiTopBar.js +0 -553
  367. package/HiTopBar/index.js +0 -16
  368. package/Hidden/Hidden.js +0 -130
  369. package/Hidden/HiddenCss.js +0 -175
  370. package/Hidden/HiddenJs.js +0 -149
  371. package/Hidden/index.js +0 -16
  372. package/Icon/Icon.js +0 -109
  373. package/Icon/index.js +0 -16
  374. package/IconButton/IconButton.js +0 -146
  375. package/IconButton/index.js +0 -16
  376. package/Input/Input.js +0 -682
  377. package/Input/InputAdornment.js +0 -116
  378. package/Input/InputLabel.js +0 -163
  379. package/Input/Textarea.js +0 -301
  380. package/Input/index.js +0 -34
  381. package/List/List.js +0 -167
  382. package/List/ListItem.js +0 -279
  383. package/List/ListItemAvatar.js +0 -100
  384. package/List/ListItemIcon.js +0 -77
  385. package/List/ListItemSecondaryAction.js +0 -76
  386. package/List/ListItemText.js +0 -145
  387. package/List/ListSubheader.js +0 -127
  388. package/List/index.js +0 -70
  389. package/Menu/Menu.js +0 -274
  390. package/Menu/MenuItem.js +0 -113
  391. package/Menu/MenuList.js +0 -253
  392. package/Menu/index.js +0 -34
  393. package/MobileStepper/MobileStepper.js +0 -173
  394. package/MobileStepper/index.js +0 -16
  395. package/Modal/Backdrop.js +0 -102
  396. package/Modal/Modal.js +0 -502
  397. package/Modal/ModalManager.js +0 -210
  398. package/Modal/index.js +0 -34
  399. package/Modal/isOverflowing.js +0 -43
  400. package/Modal/manageAriaHidden.js +0 -45
  401. package/Paper/Paper.js +0 -111
  402. package/Paper/index.js +0 -16
  403. package/Popover/Popover.js +0 -564
  404. package/Popover/index.js +0 -16
  405. package/Portal/LegacyPortal.js +0 -158
  406. package/Portal/Portal.js +0 -144
  407. package/Portal/index.js +0 -21
  408. package/Progress/CircularProgress.js +0 -228
  409. package/Progress/LinearProgress.js +0 -258
  410. package/Progress/index.js +0 -25
  411. package/Radio/Radio.js +0 -155
  412. package/Radio/RadioGroup.js +0 -168
  413. package/Radio/index.js +0 -25
  414. package/Reboot/Reboot.js +0 -106
  415. package/Reboot/index.js +0 -16
  416. package/Select/Select.js +0 -229
  417. package/Select/SelectInput.js +0 -502
  418. package/Select/index.js +0 -16
  419. package/Snackbar/Snackbar.js +0 -451
  420. package/Snackbar/SnackbarContent.js +0 -135
  421. package/Snackbar/index.js +0 -25
  422. package/Stepper/Step.js +0 -151
  423. package/Stepper/StepButton.js +0 -143
  424. package/Stepper/StepConnector.js +0 -118
  425. package/Stepper/StepContent.js +0 -153
  426. package/Stepper/StepIcon.js +0 -86
  427. package/Stepper/StepLabel.js +0 -200
  428. package/Stepper/StepPositionIcon.js +0 -95
  429. package/Stepper/Stepper.js +0 -161
  430. package/Stepper/index.js +0 -61
  431. package/SvgIcon/SvgIcon.js +0 -147
  432. package/SvgIcon/index.js +0 -16
  433. package/Switch/Switch.js +0 -215
  434. package/Switch/index.js +0 -16
  435. package/Table/Table.js +0 -127
  436. package/Table/TableBody.js +0 -121
  437. package/Table/TableCell.js +0 -181
  438. package/Table/TableFooter.js +0 -93
  439. package/Table/TableHead.js +0 -121
  440. package/Table/TablePagination.js +0 -310
  441. package/Table/TablePaginationActions.js +0 -183
  442. package/Table/TableRow.js +0 -127
  443. package/Table/TableSortLabel.js +0 -145
  444. package/Table/index.js +0 -79
  445. package/Tabs/Tab.js +0 -340
  446. package/Tabs/TabIndicator.js +0 -95
  447. package/Tabs/TabScrollButton.js +0 -112
  448. package/Tabs/Tabs.js +0 -530
  449. package/Tabs/index.js +0 -25
  450. package/TextField/TextField.js +0 -290
  451. package/TextField/index.js +0 -16
  452. package/Toolbar/Toolbar.js +0 -89
  453. package/Toolbar/index.js +0 -16
  454. package/Tooltip/Tooltip.js +0 -514
  455. package/Tooltip/index.js +0 -16
  456. package/Typography/Typography.js +0 -192
  457. package/Typography/index.js +0 -16
  458. package/colors/amber.js +0 -23
  459. package/colors/blue.js +0 -23
  460. package/colors/blueGrey.js +0 -23
  461. package/colors/brown.js +0 -23
  462. package/colors/common.js +0 -11
  463. package/colors/cyan.js +0 -23
  464. package/colors/deepOrange.js +0 -23
  465. package/colors/deepPurple.js +0 -23
  466. package/colors/green.js +0 -23
  467. package/colors/grey.js +0 -23
  468. package/colors/index.js +0 -187
  469. package/colors/indigo.js +0 -23
  470. package/colors/lightBlue.js +0 -23
  471. package/colors/lightGreen.js +0 -23
  472. package/colors/lime.js +0 -23
  473. package/colors/orange.js +0 -23
  474. package/colors/pink.js +0 -23
  475. package/colors/purple.js +0 -23
  476. package/colors/red.js +0 -23
  477. package/colors/teal.js +0 -23
  478. package/colors/yellow.js +0 -23
  479. package/es/AppBar/AppBar.js +0 -106
  480. package/es/AppBar/index.js +0 -1
  481. package/es/Avatar/Avatar.js +0 -136
  482. package/es/Avatar/index.js +0 -1
  483. package/es/Badge/Badge.js +0 -112
  484. package/es/Badge/index.js +0 -1
  485. package/es/BottomNavigation/BottomNavigation.js +0 -86
  486. package/es/BottomNavigation/BottomNavigationAction.js +0 -153
  487. package/es/BottomNavigation/index.js +0 -2
  488. package/es/Button/Button.js +0 -274
  489. package/es/Button/index.js +0 -1
  490. package/es/ButtonBase/ButtonBase.js +0 -358
  491. package/es/ButtonBase/Ripple.js +0 -102
  492. package/es/ButtonBase/TouchRipple.js +0 -268
  493. package/es/ButtonBase/createRippleHandler.js +0 -23
  494. package/es/ButtonBase/index.js +0 -1
  495. package/es/Card/Card.js +0 -27
  496. package/es/Card/CardActions.js +0 -58
  497. package/es/Card/CardContent.js +0 -45
  498. package/es/Card/CardHeader.js +0 -120
  499. package/es/Card/CardMedia.js +0 -76
  500. package/es/Card/index.js +0 -5
  501. package/es/Checkbox/Checkbox.js +0 -117
  502. package/es/Checkbox/index.js +0 -1
  503. package/es/Chip/Chip.js +0 -241
  504. package/es/Chip/index.js +0 -1
  505. package/es/Dialog/Dialog.js +0 -231
  506. package/es/Dialog/DialogActions.js +0 -58
  507. package/es/Dialog/DialogContent.js +0 -48
  508. package/es/Dialog/DialogContentText.js +0 -41
  509. package/es/Dialog/DialogTitle.js +0 -57
  510. package/es/Dialog/index.js +0 -6
  511. package/es/Divider/Divider.js +0 -83
  512. package/es/Divider/index.js +0 -1
  513. package/es/Drawer/Drawer.js +0 -252
  514. package/es/Drawer/index.js +0 -1
  515. package/es/ExpansionPanel/ExpansionPanel.js +0 -194
  516. package/es/ExpansionPanel/ExpansionPanelActions.js +0 -47
  517. package/es/ExpansionPanel/ExpansionPanelDetails.js +0 -42
  518. package/es/ExpansionPanel/ExpansionPanelSummary.js +0 -182
  519. package/es/ExpansionPanel/index.js +0 -4
  520. package/es/Form/FormControl.js +0 -214
  521. package/es/Form/FormControlLabel.js +0 -137
  522. package/es/Form/FormGroup.js +0 -62
  523. package/es/Form/FormHelperText.js +0 -110
  524. package/es/Form/FormLabel.js +0 -132
  525. package/es/Form/index.js +0 -5
  526. package/es/Grid/Grid.js +0 -353
  527. package/es/Grid/index.js +0 -1
  528. package/es/GridList/GridList.js +0 -97
  529. package/es/GridList/GridListTile.js +0 -153
  530. package/es/GridList/GridListTileBar.js +0 -152
  531. package/es/GridList/index.js +0 -3
  532. package/es/HiDatePicker/HiDateRangePicker.js +0 -567
  533. package/es/HiDatePicker/HiDateRangeSelector.js +0 -345
  534. package/es/HiDatePicker/HiWeekPicker.js +0 -296
  535. package/es/HiDatePicker/Navbar.js +0 -130
  536. package/es/HiDatePicker/index.js +0 -7
  537. package/es/HiPins/HiPins.js +0 -65
  538. package/es/HiPins/index.js +0 -1
  539. package/es/HiRadio/HiRadio.js +0 -41
  540. package/es/HiRadio/index.js +0 -1
  541. package/es/HiTable/BodyCellBuilder.js +0 -345
  542. package/es/HiTable/BodyCells/CellAccount.js +0 -40
  543. package/es/HiTable/BodyCells/CellAccountNumber.js +0 -166
  544. package/es/HiTable/BodyCells/CellAddress.js +0 -129
  545. package/es/HiTable/BodyCells/CellCountry.js +0 -107
  546. package/es/HiTable/BodyCells/CellDate.js +0 -111
  547. package/es/HiTable/BodyCells/CellIcon.js +0 -83
  548. package/es/HiTable/BodyCells/CellImage.js +0 -115
  549. package/es/HiTable/BodyCells/CellLayout.js +0 -202
  550. package/es/HiTable/BodyCells/CellNumeric.js +0 -71
  551. package/es/HiTable/BodyCells/CellRate.js +0 -131
  552. package/es/HiTable/BodyCells/CellSentinel.js +0 -153
  553. package/es/HiTable/BodyCells/CellStatus.js +0 -77
  554. package/es/HiTable/BodyCells/CellText.js +0 -189
  555. package/es/HiTable/BodyCells/CellThirdPartySecurity.js +0 -89
  556. package/es/HiTable/BodyCells/index.js +0 -16
  557. package/es/HiTable/BodyRow.js +0 -314
  558. package/es/HiTable/ChildRow.js +0 -345
  559. package/es/HiTable/ColumnFilter.js +0 -398
  560. package/es/HiTable/HeaderCell.js +0 -376
  561. package/es/HiTable/HiStickyRow.js +0 -217
  562. package/es/HiTable/HiTable.js +0 -883
  563. package/es/HiTable/HiTableBody.js +0 -464
  564. package/es/HiTable/HiTableContextMenu.js +0 -150
  565. package/es/HiTable/HiTableFooterScroll.js +0 -144
  566. package/es/HiTable/HiTableHead.js +0 -403
  567. package/es/HiTable/OrderColumns.js +0 -441
  568. package/es/HiTable/constants.js +0 -180
  569. package/es/HiTable/index.js +0 -2
  570. package/es/HiTopBar/HiTopBar.js +0 -458
  571. package/es/HiTopBar/index.js +0 -1
  572. package/es/Hidden/Hidden.js +0 -107
  573. package/es/Hidden/HiddenCss.js +0 -151
  574. package/es/Hidden/HiddenJs.js +0 -129
  575. package/es/Hidden/index.js +0 -1
  576. package/es/Icon/Icon.js +0 -74
  577. package/es/Icon/index.js +0 -1
  578. package/es/IconButton/IconButton.js +0 -106
  579. package/es/IconButton/index.js +0 -1
  580. package/es/Input/Input.js +0 -616
  581. package/es/Input/InputAdornment.js +0 -83
  582. package/es/Input/InputLabel.js +0 -138
  583. package/es/Input/Textarea.js +0 -234
  584. package/es/Input/index.js +0 -3
  585. package/es/List/List.js +0 -106
  586. package/es/List/ListItem.js +0 -212
  587. package/es/List/ListItemAvatar.js +0 -63
  588. package/es/List/ListItemIcon.js +0 -46
  589. package/es/List/ListItemSecondaryAction.js +0 -45
  590. package/es/List/ListItemText.js +0 -114
  591. package/es/List/ListSubheader.js +0 -90
  592. package/es/List/index.js +0 -7
  593. package/es/Menu/Menu.js +0 -205
  594. package/es/Menu/MenuItem.js +0 -75
  595. package/es/Menu/MenuList.js +0 -168
  596. package/es/Menu/index.js +0 -3
  597. package/es/MobileStepper/MobileStepper.js +0 -137
  598. package/es/MobileStepper/index.js +0 -1
  599. package/es/Modal/Backdrop.js +0 -67
  600. package/es/Modal/Modal.js +0 -398
  601. package/es/Modal/ModalManager.js +0 -162
  602. package/es/Modal/index.js +0 -3
  603. package/es/Modal/isOverflowing.js +0 -25
  604. package/es/Modal/manageAriaHidden.js +0 -33
  605. package/es/Paper/Paper.js +0 -81
  606. package/es/Paper/index.js +0 -1
  607. package/es/Popover/Popover.js +0 -455
  608. package/es/Popover/index.js +0 -1
  609. package/es/Portal/LegacyPortal.js +0 -97
  610. package/es/Portal/Portal.js +0 -82
  611. package/es/Portal/index.js +0 -5
  612. package/es/Progress/CircularProgress.js +0 -201
  613. package/es/Progress/LinearProgress.js +0 -235
  614. package/es/Progress/index.js +0 -2
  615. package/es/Radio/Radio.js +0 -113
  616. package/es/Radio/RadioGroup.js +0 -101
  617. package/es/Radio/index.js +0 -2
  618. package/es/Reboot/Reboot.js +0 -55
  619. package/es/Reboot/index.js +0 -1
  620. package/es/Select/Select.js +0 -199
  621. package/es/Select/SelectInput.js +0 -414
  622. package/es/Select/index.js +0 -1
  623. package/es/Snackbar/Snackbar.js +0 -370
  624. package/es/Snackbar/SnackbarContent.js +0 -96
  625. package/es/Snackbar/index.js +0 -2
  626. package/es/Stepper/Step.js +0 -120
  627. package/es/Stepper/StepButton.js +0 -111
  628. package/es/Stepper/StepConnector.js +0 -85
  629. package/es/Stepper/StepContent.js +0 -116
  630. package/es/Stepper/StepIcon.js +0 -54
  631. package/es/Stepper/StepLabel.js +0 -170
  632. package/es/Stepper/StepPositionIcon.js +0 -64
  633. package/es/Stepper/Stepper.js +0 -126
  634. package/es/Stepper/index.js +0 -6
  635. package/es/SvgIcon/SvgIcon.js +0 -117
  636. package/es/SvgIcon/index.js +0 -1
  637. package/es/Switch/Switch.js +0 -178
  638. package/es/Switch/index.js +0 -1
  639. package/es/Table/Table.js +0 -64
  640. package/es/Table/TableBody.js +0 -61
  641. package/es/Table/TableCell.js +0 -153
  642. package/es/Table/TableFooter.js +0 -44
  643. package/es/Table/TableHead.js +0 -61
  644. package/es/Table/TablePagination.js +0 -224
  645. package/es/Table/TablePaginationActions.js +0 -116
  646. package/es/Table/TableRow.js +0 -99
  647. package/es/Table/TableSortLabel.js +0 -101
  648. package/es/Table/index.js +0 -8
  649. package/es/Tabs/Tab.js +0 -271
  650. package/es/Tabs/TabIndicator.js +0 -63
  651. package/es/Tabs/TabScrollButton.js +0 -70
  652. package/es/Tabs/Tabs.js +0 -425
  653. package/es/Tabs/index.js +0 -2
  654. package/es/TextField/TextField.js +0 -259
  655. package/es/TextField/index.js +0 -1
  656. package/es/Toolbar/Toolbar.js +0 -55
  657. package/es/Toolbar/index.js +0 -1
  658. package/es/Tooltip/Tooltip.js +0 -425
  659. package/es/Tooltip/index.js +0 -1
  660. package/es/Typography/Typography.js +0 -164
  661. package/es/Typography/index.js +0 -1
  662. package/es/colors/amber.js +0 -18
  663. package/es/colors/blue.js +0 -18
  664. package/es/colors/blueGrey.js +0 -18
  665. package/es/colors/brown.js +0 -18
  666. package/es/colors/common.js +0 -6
  667. package/es/colors/cyan.js +0 -18
  668. package/es/colors/deepOrange.js +0 -18
  669. package/es/colors/deepPurple.js +0 -18
  670. package/es/colors/green.js +0 -18
  671. package/es/colors/grey.js +0 -18
  672. package/es/colors/index.js +0 -20
  673. package/es/colors/indigo.js +0 -18
  674. package/es/colors/lightBlue.js +0 -18
  675. package/es/colors/lightGreen.js +0 -18
  676. package/es/colors/lime.js +0 -18
  677. package/es/colors/orange.js +0 -18
  678. package/es/colors/pink.js +0 -18
  679. package/es/colors/purple.js +0 -18
  680. package/es/colors/red.js +0 -18
  681. package/es/colors/teal.js +0 -18
  682. package/es/colors/yellow.js +0 -18
  683. package/es/internal/RefHolder.js +0 -20
  684. package/es/internal/SwitchBase.js +0 -219
  685. package/es/internal/svg-icons/ArrowDownward.js +0 -20
  686. package/es/internal/svg-icons/ArrowDropDown.js +0 -20
  687. package/es/internal/svg-icons/Cancel.js +0 -19
  688. package/es/internal/svg-icons/CheckBox.js +0 -19
  689. package/es/internal/svg-icons/CheckBoxOutlineBlank.js +0 -19
  690. package/es/internal/svg-icons/CheckCircle.js +0 -19
  691. package/es/internal/svg-icons/IndeterminateCheckBox.js +0 -19
  692. package/es/internal/svg-icons/KeyboardArrowLeft.js +0 -19
  693. package/es/internal/svg-icons/KeyboardArrowRight.js +0 -19
  694. package/es/internal/svg-icons/RadioButtonChecked.js +0 -19
  695. package/es/internal/svg-icons/RadioButtonUnchecked.js +0 -19
  696. package/es/styles/createHiMuiTheme.js +0 -300
  697. package/es/svg-icons/ArrowDownward.js +0 -20
  698. package/es/svg-icons/ArrowDropDown.js +0 -20
  699. package/es/svg-icons/Cancel.js +0 -19
  700. package/es/svg-icons/CheckBox.js +0 -19
  701. package/es/svg-icons/CheckBoxOutlineBlank.js +0 -19
  702. package/es/svg-icons/CheckCircle.js +0 -19
  703. package/es/svg-icons/HiAccount.js +0 -33
  704. package/es/svg-icons/HiAll.js +0 -43
  705. package/es/svg-icons/HiBilling.js +0 -33
  706. package/es/svg-icons/HiCatalog.js +0 -33
  707. package/es/svg-icons/HiCustomer.js +0 -39
  708. package/es/svg-icons/HiFinance.js +0 -33
  709. package/es/svg-icons/HiRoute.js +0 -33
  710. package/es/svg-icons/HiSettlement.js +0 -36
  711. package/es/svg-icons/HiSizeLarge.js +0 -19
  712. package/es/svg-icons/HiSizeMedium.js +0 -19
  713. package/es/svg-icons/HiSizeSmall.js +0 -19
  714. package/es/svg-icons/HiTransaction.js +0 -33
  715. package/es/svg-icons/HiUser.js +0 -39
  716. package/es/svg-icons/HiWidget.js +0 -43
  717. package/es/svg-icons/IndeterminateCheckBox.js +0 -19
  718. package/es/svg-icons/KeyboardArrowLeft.js +0 -19
  719. package/es/svg-icons/KeyboardArrowRight.js +0 -19
  720. package/es/svg-icons/RadioButtonChecked.js +0 -19
  721. package/es/svg-icons/RadioButtonUnchecked.js +0 -19
  722. package/es/transitions/Collapse.js +0 -245
  723. package/es/transitions/Fade.js +0 -132
  724. package/es/transitions/Grow.js +0 -173
  725. package/es/transitions/Slide.js +0 -291
  726. package/es/transitions/Zoom.js +0 -129
  727. package/es/transitions/index.js +0 -5
  728. package/es/utils/ClickAwayListener.js +0 -65
  729. package/es/utils/HiIconBuilder.js +0 -107
  730. package/es/utils/addEventListener.js +0 -11
  731. package/es/utils/hiGetMdiIcon.js +0 -12
  732. package/es/utils/hiHelpers.js +0 -173
  733. package/es/utils/keyboardFocus.js +0 -51
  734. package/es/utils/manageAriaHidden.js +0 -33
  735. package/es/utils/withWidth.js +0 -141
  736. package/hmu/images/countries/ad.svg +0 -151
  737. package/hmu/images/countries/ae.svg +0 -6
  738. package/hmu/images/countries/af.svg +0 -83
  739. package/hmu/images/countries/ag.svg +0 -15
  740. package/hmu/images/countries/ai.svg +0 -767
  741. package/hmu/images/countries/al.svg +0 -5
  742. package/hmu/images/countries/am.svg +0 -5
  743. package/hmu/images/countries/ao.svg +0 -13
  744. package/hmu/images/countries/aq.svg +0 -6
  745. package/hmu/images/countries/ar.svg +0 -32
  746. package/hmu/images/countries/as.svg +0 -33
  747. package/hmu/images/countries/at.svg +0 -6
  748. package/hmu/images/countries/au.svg +0 -9
  749. package/hmu/images/countries/aw.svg +0 -186
  750. package/hmu/images/countries/ax.svg +0 -18
  751. package/hmu/images/countries/az.svg +0 -8
  752. package/hmu/images/countries/ba.svg +0 -12
  753. package/hmu/images/countries/bb.svg +0 -6
  754. package/hmu/images/countries/bd.svg +0 -4
  755. package/hmu/images/countries/be.svg +0 -7
  756. package/hmu/images/countries/bf.svg +0 -7
  757. package/hmu/images/countries/bg.svg +0 -7
  758. package/hmu/images/countries/bh.svg +0 -11
  759. package/hmu/images/countries/bi.svg +0 -15
  760. package/hmu/images/countries/bj.svg +0 -14
  761. package/hmu/images/countries/bl.svg +0 -7
  762. package/hmu/images/countries/bm.svg +0 -99
  763. package/hmu/images/countries/bn.svg +0 -36
  764. package/hmu/images/countries/bo.svg +0 -686
  765. package/hmu/images/countries/bq.svg +0 -5
  766. package/hmu/images/countries/br.svg +0 -45
  767. package/hmu/images/countries/bs.svg +0 -13
  768. package/hmu/images/countries/bt.svg +0 -89
  769. package/hmu/images/countries/bv.svg +0 -13
  770. package/hmu/images/countries/bw.svg +0 -7
  771. package/hmu/images/countries/by.svg +0 -61
  772. package/hmu/images/countries/bz.svg +0 -146
  773. package/hmu/images/countries/ca.svg +0 -4
  774. package/hmu/images/countries/cc.svg +0 -19
  775. package/hmu/images/countries/cd.svg +0 -5
  776. package/hmu/images/countries/cf.svg +0 -15
  777. package/hmu/images/countries/cg.svg +0 -12
  778. package/hmu/images/countries/ch.svg +0 -9
  779. package/hmu/images/countries/ci.svg +0 -7
  780. package/hmu/images/countries/ck.svg +0 -9
  781. package/hmu/images/countries/cl.svg +0 -13
  782. package/hmu/images/countries/cm.svg +0 -15
  783. package/hmu/images/countries/cn.svg +0 -11
  784. package/hmu/images/countries/co.svg +0 -7
  785. package/hmu/images/countries/cr.svg +0 -7
  786. package/hmu/images/countries/cu.svg +0 -13
  787. package/hmu/images/countries/cv.svg +0 -13
  788. package/hmu/images/countries/cw.svg +0 -14
  789. package/hmu/images/countries/cx.svg +0 -15
  790. package/hmu/images/countries/cy.svg +0 -6
  791. package/hmu/images/countries/cz.svg +0 -12
  792. package/hmu/images/countries/de.svg +0 -5
  793. package/hmu/images/countries/dj.svg +0 -13
  794. package/hmu/images/countries/dk.svg +0 -5
  795. package/hmu/images/countries/dm.svg +0 -152
  796. package/hmu/images/countries/do.svg +0 -6745
  797. package/hmu/images/countries/dz.svg +0 -5
  798. package/hmu/images/countries/ec.svg +0 -141
  799. package/hmu/images/countries/ee.svg +0 -7
  800. package/hmu/images/countries/eg.svg +0 -38
  801. package/hmu/images/countries/eh.svg +0 -15
  802. package/hmu/images/countries/er.svg +0 -8
  803. package/hmu/images/countries/es-ct.svg +0 -4
  804. package/hmu/images/countries/es.svg +0 -581
  805. package/hmu/images/countries/et.svg +0 -14
  806. package/hmu/images/countries/eu.svg +0 -28
  807. package/hmu/images/countries/fi.svg +0 -5
  808. package/hmu/images/countries/fj.svg +0 -124
  809. package/hmu/images/countries/fk.svg +0 -90
  810. package/hmu/images/countries/fm.svg +0 -11
  811. package/hmu/images/countries/fo.svg +0 -12
  812. package/hmu/images/countries/fr.svg +0 -7
  813. package/hmu/images/countries/ga.svg +0 -7
  814. package/hmu/images/countries/gb-eng.svg +0 -5
  815. package/hmu/images/countries/gb-nir.svg +0 -137
  816. package/hmu/images/countries/gb-sct.svg +0 -4
  817. package/hmu/images/countries/gb-wls.svg +0 -9
  818. package/hmu/images/countries/gb.svg +0 -15
  819. package/hmu/images/countries/gd.svg +0 -27
  820. package/hmu/images/countries/ge.svg +0 -6
  821. package/hmu/images/countries/gf.svg +0 -5
  822. package/hmu/images/countries/gg.svg +0 -9
  823. package/hmu/images/countries/gh.svg +0 -6
  824. package/hmu/images/countries/gi.svg +0 -33
  825. package/hmu/images/countries/gl.svg +0 -4
  826. package/hmu/images/countries/gm.svg +0 -14
  827. package/hmu/images/countries/gn.svg +0 -7
  828. package/hmu/images/countries/gp.svg +0 -7
  829. package/hmu/images/countries/gq.svg +0 -23
  830. package/hmu/images/countries/gr.svg +0 -22
  831. package/hmu/images/countries/gs.svg +0 -205
  832. package/hmu/images/countries/gt.svg +0 -204
  833. package/hmu/images/countries/gu.svg +0 -39
  834. package/hmu/images/countries/gw.svg +0 -13
  835. package/hmu/images/countries/gy.svg +0 -9
  836. package/hmu/images/countries/hk.svg +0 -32
  837. package/hmu/images/countries/hm.svg +0 -9
  838. package/hmu/images/countries/hn.svg +0 -18
  839. package/hmu/images/countries/hr.svg +0 -59
  840. package/hmu/images/countries/ht.svg +0 -122
  841. package/hmu/images/countries/hu.svg +0 -7
  842. package/hmu/images/countries/id.svg +0 -6
  843. package/hmu/images/countries/ie.svg +0 -7
  844. package/hmu/images/countries/il.svg +0 -14
  845. package/hmu/images/countries/im.svg +0 -36
  846. package/hmu/images/countries/in.svg +0 -25
  847. package/hmu/images/countries/io.svg +0 -148
  848. package/hmu/images/countries/iq.svg +0 -10
  849. package/hmu/images/countries/ir.svg +0 -219
  850. package/hmu/images/countries/is.svg +0 -12
  851. package/hmu/images/countries/it.svg +0 -7
  852. package/hmu/images/countries/je.svg +0 -32
  853. package/hmu/images/countries/jm.svg +0 -8
  854. package/hmu/images/countries/jo.svg +0 -16
  855. package/hmu/images/countries/jp.svg +0 -11
  856. package/hmu/images/countries/ke.svg +0 -23
  857. package/hmu/images/countries/kg.svg +0 -15
  858. package/hmu/images/countries/kh.svg +0 -69
  859. package/hmu/images/countries/ki.svg +0 -36
  860. package/hmu/images/countries/km.svg +0 -16
  861. package/hmu/images/countries/kn.svg +0 -14
  862. package/hmu/images/countries/kp.svg +0 -15
  863. package/hmu/images/countries/kr.svg +0 -24
  864. package/hmu/images/countries/kw.svg +0 -13
  865. package/hmu/images/countries/ky.svg +0 -63
  866. package/hmu/images/countries/kz.svg +0 -23
  867. package/hmu/images/countries/la.svg +0 -12
  868. package/hmu/images/countries/lb.svg +0 -15
  869. package/hmu/images/countries/lc.svg +0 -8
  870. package/hmu/images/countries/li.svg +0 -43
  871. package/hmu/images/countries/lk.svg +0 -22
  872. package/hmu/images/countries/lr.svg +0 -14
  873. package/hmu/images/countries/ls.svg +0 -8
  874. package/hmu/images/countries/lt.svg +0 -7
  875. package/hmu/images/countries/lu.svg +0 -5
  876. package/hmu/images/countries/lv.svg +0 -6
  877. package/hmu/images/countries/ly.svg +0 -13
  878. package/hmu/images/countries/ma.svg +0 -4
  879. package/hmu/images/countries/mc.svg +0 -6
  880. package/hmu/images/countries/md.svg +0 -72
  881. package/hmu/images/countries/me.svg +0 -118
  882. package/hmu/images/countries/mf.svg +0 -7
  883. package/hmu/images/countries/mg.svg +0 -7
  884. package/hmu/images/countries/mh.svg +0 -7
  885. package/hmu/images/countries/mk.svg +0 -5
  886. package/hmu/images/countries/ml.svg +0 -7
  887. package/hmu/images/countries/mm.svg +0 -16
  888. package/hmu/images/countries/mn.svg +0 -13
  889. package/hmu/images/countries/mo.svg +0 -9
  890. package/hmu/images/countries/mp.svg +0 -86
  891. package/hmu/images/countries/mq.svg +0 -7
  892. package/hmu/images/countries/mr.svg +0 -6
  893. package/hmu/images/countries/ms.svg +0 -39
  894. package/hmu/images/countries/mt.svg +0 -49
  895. package/hmu/images/countries/mu.svg +0 -8
  896. package/hmu/images/countries/mv.svg +0 -6
  897. package/hmu/images/countries/mw.svg +0 -10
  898. package/hmu/images/countries/mx.svg +0 -385
  899. package/hmu/images/countries/my.svg +0 -15
  900. package/hmu/images/countries/mz.svg +0 -21
  901. package/hmu/images/countries/na.svg +0 -16
  902. package/hmu/images/countries/nc.svg +0 -7
  903. package/hmu/images/countries/ne.svg +0 -6
  904. package/hmu/images/countries/nf.svg +0 -9
  905. package/hmu/images/countries/ng.svg +0 -6
  906. package/hmu/images/countries/ni.svg +0 -131
  907. package/hmu/images/countries/nl.svg +0 -7
  908. package/hmu/images/countries/no.svg +0 -7
  909. package/hmu/images/countries/np.svg +0 -14
  910. package/hmu/images/countries/nr.svg +0 -12
  911. package/hmu/images/countries/nu.svg +0 -26
  912. package/hmu/images/countries/nz.svg +0 -41
  913. package/hmu/images/countries/om.svg +0 -116
  914. package/hmu/images/countries/pa.svg +0 -14
  915. package/hmu/images/countries/pe.svg +0 -279
  916. package/hmu/images/countries/pf.svg +0 -19
  917. package/hmu/images/countries/pg.svg +0 -9
  918. package/hmu/images/countries/ph.svg +0 -28
  919. package/hmu/images/countries/pk.svg +0 -15
  920. package/hmu/images/countries/pl.svg +0 -6
  921. package/hmu/images/countries/pm.svg +0 -7
  922. package/hmu/images/countries/pn.svg +0 -62
  923. package/hmu/images/countries/pr.svg +0 -13
  924. package/hmu/images/countries/ps.svg +0 -15
  925. package/hmu/images/countries/pt.svg +0 -57
  926. package/hmu/images/countries/pw.svg +0 -11
  927. package/hmu/images/countries/py.svg +0 -157
  928. package/hmu/images/countries/qa.svg +0 -4
  929. package/hmu/images/countries/re.svg +0 -7
  930. package/hmu/images/countries/ro.svg +0 -7
  931. package/hmu/images/countries/rs.svg +0 -292
  932. package/hmu/images/countries/ru.svg +0 -7
  933. package/hmu/images/countries/rw.svg +0 -13
  934. package/hmu/images/countries/sa.svg +0 -26
  935. package/hmu/images/countries/sb.svg +0 -13
  936. package/hmu/images/countries/sc.svg +0 -14
  937. package/hmu/images/countries/sd.svg +0 -13
  938. package/hmu/images/countries/se.svg +0 -16
  939. package/hmu/images/countries/sg.svg +0 -13
  940. package/hmu/images/countries/sh.svg +0 -74
  941. package/hmu/images/countries/si.svg +0 -18
  942. package/hmu/images/countries/sj.svg +0 -7
  943. package/hmu/images/countries/sk.svg +0 -9
  944. package/hmu/images/countries/sl.svg +0 -7
  945. package/hmu/images/countries/sm.svg +0 -91
  946. package/hmu/images/countries/sn.svg +0 -8
  947. package/hmu/images/countries/so.svg +0 -11
  948. package/hmu/images/countries/sr.svg +0 -6
  949. package/hmu/images/countries/ss.svg +0 -8
  950. package/hmu/images/countries/st.svg +0 -16
  951. package/hmu/images/countries/sv.svg +0 -618
  952. package/hmu/images/countries/sx.svg +0 -56
  953. package/hmu/images/countries/sy.svg +0 -6
  954. package/hmu/images/countries/sz.svg +0 -45
  955. package/hmu/images/countries/tc.svg +0 -67
  956. package/hmu/images/countries/td.svg +0 -7
  957. package/hmu/images/countries/tf.svg +0 -15
  958. package/hmu/images/countries/tg.svg +0 -14
  959. package/hmu/images/countries/th.svg +0 -7
  960. package/hmu/images/countries/tj.svg +0 -22
  961. package/hmu/images/countries/tk.svg +0 -5
  962. package/hmu/images/countries/tl.svg +0 -13
  963. package/hmu/images/countries/tm.svg +0 -213
  964. package/hmu/images/countries/tn.svg +0 -13
  965. package/hmu/images/countries/to.svg +0 -10
  966. package/hmu/images/countries/tr.svg +0 -8
  967. package/hmu/images/countries/tt.svg +0 -5
  968. package/hmu/images/countries/tv.svg +0 -27
  969. package/hmu/images/countries/tw.svg +0 -14
  970. package/hmu/images/countries/tz.svg +0 -13
  971. package/hmu/images/countries/ua.svg +0 -6
  972. package/hmu/images/countries/ug.svg +0 -30
  973. package/hmu/images/countries/um.svg +0 -23
  974. package/hmu/images/countries/un.svg +0 -16
  975. package/hmu/images/countries/us.svg +0 -12
  976. package/hmu/images/countries/uy.svg +0 -28
  977. package/hmu/images/countries/uz.svg +0 -30
  978. package/hmu/images/countries/va.svg +0 -483
  979. package/hmu/images/countries/vc.svg +0 -8
  980. package/hmu/images/countries/ve.svg +0 -26
  981. package/hmu/images/countries/vg.svg +0 -133
  982. package/hmu/images/countries/vi.svg +0 -31
  983. package/hmu/images/countries/vn.svg +0 -11
  984. package/hmu/images/countries/vu.svg +0 -18
  985. package/hmu/images/countries/wf.svg +0 -7
  986. package/hmu/images/countries/ws.svg +0 -7
  987. package/hmu/images/countries/ye.svg +0 -7
  988. package/hmu/images/countries/yt.svg +0 -7
  989. package/hmu/images/countries/za.svg +0 -17
  990. package/hmu/images/countries/zm.svg +0 -27
  991. package/hmu/images/countries/zw.svg +0 -21
  992. package/hmu/images/hipay-white-logo.svg +0 -42
  993. package/hmu/images/logo_visa_75wx45h.gif +0 -0
  994. package/internal/RefHolder.js +0 -64
  995. package/internal/SwitchBase.js +0 -287
  996. package/internal/svg-icons/ArrowDownward.js +0 -37
  997. package/internal/svg-icons/ArrowDropDown.js +0 -37
  998. package/internal/svg-icons/Cancel.js +0 -36
  999. package/internal/svg-icons/CheckBox.js +0 -36
  1000. package/internal/svg-icons/CheckBoxOutlineBlank.js +0 -36
  1001. package/internal/svg-icons/CheckCircle.js +0 -36
  1002. package/internal/svg-icons/IndeterminateCheckBox.js +0 -36
  1003. package/internal/svg-icons/KeyboardArrowLeft.js +0 -36
  1004. package/internal/svg-icons/KeyboardArrowRight.js +0 -36
  1005. package/internal/svg-icons/RadioButtonChecked.js +0 -36
  1006. package/internal/svg-icons/RadioButtonUnchecked.js +0 -36
  1007. package/styles/createHiMuiTheme.js +0 -332
  1008. package/svg-icons/ArrowDownward.js +0 -37
  1009. package/svg-icons/ArrowDropDown.js +0 -37
  1010. package/svg-icons/Cancel.js +0 -36
  1011. package/svg-icons/CheckBox.js +0 -36
  1012. package/svg-icons/CheckBoxOutlineBlank.js +0 -36
  1013. package/svg-icons/CheckCircle.js +0 -36
  1014. package/svg-icons/HiAccount.js +0 -52
  1015. package/svg-icons/HiAll.js +0 -62
  1016. package/svg-icons/HiBilling.js +0 -52
  1017. package/svg-icons/HiCatalog.js +0 -52
  1018. package/svg-icons/HiCustomer.js +0 -58
  1019. package/svg-icons/HiFinance.js +0 -52
  1020. package/svg-icons/HiRoute.js +0 -52
  1021. package/svg-icons/HiSettlement.js +0 -52
  1022. package/svg-icons/HiSizeLarge.js +0 -36
  1023. package/svg-icons/HiSizeMedium.js +0 -36
  1024. package/svg-icons/HiSizeSmall.js +0 -36
  1025. package/svg-icons/HiTransaction.js +0 -52
  1026. package/svg-icons/HiUser.js +0 -58
  1027. package/svg-icons/HiWidget.js +0 -62
  1028. package/svg-icons/IndeterminateCheckBox.js +0 -36
  1029. package/svg-icons/KeyboardArrowLeft.js +0 -36
  1030. package/svg-icons/KeyboardArrowRight.js +0 -36
  1031. package/svg-icons/RadioButtonChecked.js +0 -36
  1032. package/svg-icons/RadioButtonUnchecked.js +0 -36
  1033. package/svg-icons/index.js +0 -106
  1034. package/transitions/Collapse.js +0 -324
  1035. package/transitions/Fade.js +0 -207
  1036. package/transitions/Grow.js +0 -251
  1037. package/transitions/Slide.js +0 -381
  1038. package/transitions/Zoom.js +0 -204
  1039. package/transitions/index.js +0 -52
  1040. package/utils/ClickAwayListener.js +0 -122
  1041. package/utils/HiIconBuilder.js +0 -178
  1042. package/utils/addEventListener.js +0 -26
  1043. package/utils/hiGetMdiIcon.js +0 -20
  1044. package/utils/hiHelpers.js +0 -195
  1045. package/utils/keyboardFocus.js +0 -75
  1046. package/utils/manageAriaHidden.js +0 -49
  1047. package/utils/withWidth.js +0 -214
@@ -1,130 +1,99 @@
1
- 'use strict';
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
4
 
3
5
  Object.defineProperty(exports, "__esModule", {
4
- value: true
6
+ value: true
5
7
  });
6
- exports.styles = undefined;
7
-
8
- var _keys = require('babel-runtime/core-js/object/keys');
9
-
10
- var _keys2 = _interopRequireDefault(_keys);
11
-
12
- var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
13
-
14
- var _defineProperty3 = _interopRequireDefault(_defineProperty2);
15
-
16
- var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
19
-
20
- var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
21
-
22
- var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
23
-
24
- var _createClass2 = require('babel-runtime/helpers/createClass');
25
-
26
- var _createClass3 = _interopRequireDefault(_createClass2);
27
-
28
- var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
29
-
30
- var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
31
-
32
- var _inherits2 = require('babel-runtime/helpers/inherits');
33
-
34
- var _inherits3 = _interopRequireDefault(_inherits2);
35
-
36
- var _extends2 = require('babel-runtime/helpers/extends');
37
-
38
- var _extends3 = _interopRequireDefault(_extends2);
8
+ exports.default = exports.styles = exports.INFINITESCROLL_ERROR_MESSAGE = void 0;
39
9
 
40
- var _react = require('react');
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
41
11
 
42
- var _react2 = _interopRequireDefault(_react);
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
43
13
 
44
- var _propTypes = require('prop-types');
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
45
15
 
46
- var _propTypes2 = _interopRequireDefault(_propTypes);
16
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
47
17
 
48
- var _classnames = require('classnames');
18
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
49
19
 
50
- var _classnames2 = _interopRequireDefault(_classnames);
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
51
21
 
52
- var _Grow = require('material-ui/transitions/Grow');
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
53
23
 
54
- var _Grow2 = _interopRequireDefault(_Grow);
24
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
55
25
 
56
- var _reactDom = require('react-dom');
26
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
57
27
 
58
- var _Paper = require('material-ui/Paper');
28
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
59
29
 
60
- var _Paper2 = _interopRequireDefault(_Paper);
30
+ var _react = _interopRequireDefault(require("react"));
61
31
 
62
- var _ClickAwayListener = require('material-ui/utils/ClickAwayListener');
32
+ var _propTypes = _interopRequireDefault(require("prop-types"));
63
33
 
64
- var _ClickAwayListener2 = _interopRequireDefault(_ClickAwayListener);
34
+ var _classnames = _interopRequireDefault(require("classnames"));
65
35
 
66
- var _reactPopper = require('react-popper');
36
+ var _Grow = _interopRequireDefault(require("@material-ui/core/Grow"));
67
37
 
68
- var _mdiMaterialUi = require('mdi-material-ui');
38
+ var _reactDom = require("react-dom");
69
39
 
70
- var _HiSelectableList = require('../HiSelectableList');
40
+ var _reactCustomScrollbars = _interopRequireDefault(require("react-custom-scrollbars"));
71
41
 
72
- var _HiSelectableList2 = _interopRequireDefault(_HiSelectableList);
42
+ var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
73
43
 
74
- var _HiForm = require('../HiForm');
44
+ var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/ClickAwayListener"));
75
45
 
76
- var _SelectInput = require('./SelectInput');
46
+ var _Popper = _interopRequireDefault(require("@material-ui/core/Popper"));
77
47
 
78
- var _SelectInput2 = _interopRequireDefault(_SelectInput);
48
+ var _HiSelectableList = _interopRequireDefault(require("../HiSelectableList"));
79
49
 
80
- var _HiChip = require('../HiChip/HiChip');
50
+ var _HiSearchField = _interopRequireDefault(require("../HiForm/HiSearchField"));
81
51
 
82
- var _HiChip2 = _interopRequireDefault(_HiChip);
52
+ var _SelectInput = _interopRequireDefault(require("./SelectInput"));
83
53
 
84
- var _styles = require('../styles');
54
+ var _HiChip = _interopRequireDefault(require("../HiChip/HiChip"));
85
55
 
86
- var _hiHelpers = require('../utils/hiHelpers');
56
+ var _styles = require("../styles");
87
57
 
88
- var _HiIconBuilder = require('../utils/HiIconBuilder');
58
+ var _helpers = require("../utils/helpers");
89
59
 
90
- var _HiIconBuilder2 = _interopRequireDefault(_HiIconBuilder);
91
-
92
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
60
+ var _HiIcon = _interopRequireDefault(require("../HiIcon"));
93
61
 
94
62
  // @inheritedComponent Input
95
-
96
- var styles = exports.styles = function styles(theme) {
97
- return {
98
- root: {
99
- backgroundColor: theme.palette.background2,
100
- maxWidth: 500,
101
- width: '100%',
102
- position: 'relative'
103
- },
104
- popper: {
105
- width: '100%',
106
- zIndex: 9
107
- },
108
- paper: {
109
- borderRadius: '0px 2px',
110
- maxHeight: 440,
111
- transition: 'none !important'
112
- },
113
- labelIcon: {
114
- marginRight: 10
115
- },
116
- selectIconLabel: (0, _extends3.default)({
117
- whiteSpace: 'nowrap',
118
- overflow: 'hidden',
119
- textOverflow: 'ellipsis',
120
- paddingRight: 16
121
- }, theme.typography.body1, {
122
- display: 'inline-flex',
123
- width: '100%'
124
- })
125
- };
63
+ var INFINITESCROLL_ERROR_MESSAGE = 'La propriété "loadMoreResults" est obligatoire si la prop "infiniteScroll" est à true';
64
+ exports.INFINITESCROLL_ERROR_MESSAGE = INFINITESCROLL_ERROR_MESSAGE;
65
+
66
+ var styles = function styles(theme) {
67
+ return {
68
+ root: {
69
+ backgroundColor: theme.palette.background2,
70
+ maxWidth: 500,
71
+ width: '100%',
72
+ position: 'relative'
73
+ },
74
+ popper: {
75
+ width: '100%',
76
+ zIndex: 1200
77
+ },
78
+ paper: {
79
+ borderRadius: '0px 2px',
80
+ maxHeight: 440,
81
+ transition: 'none !important'
82
+ },
83
+ labelIcon: {
84
+ marginRight: 10
85
+ },
86
+ selectIconLabel: (0, _extends2.default)({
87
+ whiteSpace: 'nowrap',
88
+ overflow: 'hidden',
89
+ textOverflow: 'ellipsis',
90
+ paddingRight: 16
91
+ }, theme.typography.b1, {
92
+ display: 'inline-flex',
93
+ width: '100%'
94
+ })
95
+ };
126
96
  };
127
-
128
97
  /**
129
98
  *
130
99
  * Utilisé pour tous types de selects dans les formulaires.
@@ -141,707 +110,895 @@ var styles = exports.styles = function styles(theme) {
141
110
  * - HiSelectableList : affiche la liste des suggestions selon le type des éléments
142
111
  */
143
112
 
144
- var HiSelect = function (_React$PureComponent) {
145
- (0, _inherits3.default)(HiSelect, _React$PureComponent);
146
113
 
147
- function HiSelect(props) {
148
- (0, _classCallCheck3.default)(this, HiSelect);
114
+ exports.styles = styles;
149
115
 
150
- var _this = (0, _possibleConstructorReturn3.default)(this, (HiSelect.__proto__ || (0, _getPrototypeOf2.default)(HiSelect)).call(this, props));
116
+ var HiSelect =
117
+ /*#__PURE__*/
118
+ function (_React$PureComponent) {
119
+ (0, _inherits2.default)(HiSelect, _React$PureComponent);
151
120
 
152
- _initialiseProps.call(_this);
121
+ function HiSelect(_props) {
122
+ var _this;
153
123
 
154
- _this.state = {
155
- open: false,
156
- focused: false,
157
- suggestions: [],
158
- hierarchySelected: {},
159
- hierarchy: {},
160
- nbOptions: 0,
161
- dynamic: false
162
- };
124
+ (0, _classCallCheck2.default)(this, HiSelect);
125
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(HiSelect).call(this, _props));
163
126
 
164
- // Check if value is in options
165
- var valueInOptions = false;
166
- var val = props.value;
167
- // No options provided.
168
- if (!props.options.length || !val || !val.length) {
169
- valueInOptions = true;
170
- } else {
171
- // Check if an option match value prop.
172
- props.options.forEach(function (item) {
173
- if (!valueInOptions && val.indexOf(item.id) !== -1) {
174
- valueInOptions = true;
175
- }
176
- });
177
- }
127
+ _this.handleClick = function () {
128
+ if (_this.state.open) {
129
+ _this.handleClose();
130
+ } else {
131
+ _this.setState({
132
+ open: true
133
+ });
178
134
 
179
- if (!valueInOptions) {
180
- throw new Error('prop value provided does not match any option.');
181
- }
135
+ var options = _this.props.options.slice();
136
+
137
+ _this.handleSuggestions(options);
138
+
139
+ if (_this.props.onClick) {
140
+ _this.props.onClick();
141
+ } // Gestion du focus
182
142
 
183
- if (props.hierarchic === true && props.options.length > 1) {
184
- var hierarchyTrees = _this.buildHierarchyTrees(props);
185
143
 
186
- _this.state.hierarchy = hierarchyTrees.hierarchy;
187
- _this.state.hierarchySelected = hierarchyTrees.hierarchySelected;
144
+ if (!_this.props.searchable) {
145
+ // sinon focus sur le dernier élément selectionné
146
+ _this.focusOnSelectedItem();
188
147
  }
148
+ }
149
+ };
189
150
 
190
- if (props.options.length > 0) {
191
- // Get real options number (parent & _all are not real options)
192
- var optionsLength = 0;
193
- props.options.forEach(function (option) {
194
- if (option.hasChildren !== true && option.id !== '_all') {
195
- optionsLength++;
196
- }
197
- });
198
- _this.state.nbOptions = optionsLength;
199
- } else {
200
- _this.state.dynamic = true;
151
+ _this.buildHierarchyTrees = function (props) {
152
+ // Construct two associative arrays
153
+ // hierarchy[parentId] => children
154
+ // hierarchySelected[parentId] => selected children
155
+ var hierarchy = {};
156
+ var hierarchySelected = {};
157
+ var value = props.value || [];
158
+ if (!Array.isArray(value)) value = [props.value];
159
+ props.options.forEach(function (option) {
160
+ if (option.hasChildren === true && !hierarchy.hasOwnProperty(option.id)) {
161
+ hierarchy[option.id] = [];
162
+ hierarchySelected[option.id] = [];
163
+ } else if (option.hasOwnProperty('parentId')) {
164
+ hierarchy[option.parentId].push(option.id);
165
+
166
+ if (value.includes(option.id)) {
167
+ hierarchySelected[option.parentId].push(option.id);
168
+ }
201
169
  }
170
+ });
171
+ return {
172
+ hierarchy: hierarchy,
173
+ hierarchySelected: hierarchySelected
174
+ };
175
+ };
202
176
 
203
- _this.handleSelect = _this.handleSelect.bind(_this);
204
- _this.handleClick = _this.handleClick.bind(_this);
205
- _this.handleClose = _this.handleClose.bind(_this);
206
- _this.handleRequestDelete = _this.handleRequestDelete.bind(_this);
207
- _this.handleSuggestions = _this.handleSuggestions.bind(_this);
208
- _this.handleFocus = _this.handleFocus.bind(_this);
209
- _this.handleBlur = _this.handleBlur.bind(_this);
210
- return _this;
211
- }
177
+ _this.focusOnSelectedItem = function () {
178
+ // On récupère la div parent "overlay"
179
+ var overlay = (0, _reactDom.findDOMNode)(_this.overlay);
180
+ var multiple = _this.props.multiple;
181
+ var value = _this.props.value;
182
+ var selectedIdList = Array.isArray(value) ? value : [value];
183
+ setTimeout(function () {
184
+ var focused = false; // Si un ou plusieurs items sont selectionnés, on focus sur le dernier
185
+
186
+ if (selectedIdList.length > 0) {
187
+ var itemSelected = overlay.querySelector("[data-id=\"".concat(selectedIdList[selectedIdList.length - 1], "\"]"));
188
+
189
+ if (itemSelected && itemSelected.parentElement.tagName === 'LI') {
190
+ itemSelected.parentElement.focus();
191
+ focused = true;
192
+ }
193
+ } // Si pas d'item selectionné, ou pas visible (en cas de recherche), focus sur le premier
194
+
195
+
196
+ if (selectedIdList.length === 0 || !focused) {
197
+ // On recupère tous les items
198
+ var items = overlay.getElementsByTagName('li');
199
+ var itemToFocus = items[0]; // Si select multiple, et qu'au moins un selectionné, focus sur le 2e item
200
+
201
+ if (multiple && selectedIdList.length > 0) {
202
+ itemToFocus = items[1];
203
+ }
204
+
205
+ if (itemToFocus) {
206
+ itemToFocus.focus();
207
+ }
208
+ }
209
+ }, 1);
210
+ };
212
211
 
213
- (0, _createClass3.default)(HiSelect, [{
214
- key: 'componentWillReceiveProps',
215
- value: function componentWillReceiveProps(nextProps) {
216
- if (typeof this.props.onSearch !== 'undefined' && this.props.options && this.props.options.length > 0) {
217
- this.handleSuggestions(nextProps.options);
218
- var optionsLength = 0;
219
- nextProps.options.forEach(function (option) {
220
- if (option.hasChildren !== true && option.id !== '_all') {
221
- optionsLength++;
222
- }
223
- });
224
- this.setState({ nbOptions: optionsLength });
225
- }
212
+ _this.handleKeyDown = function (event) {
213
+ var nextItem;
226
214
 
227
- if (nextProps.hierarchic === true && nextProps.options.length > 1) {
228
- var hierarchyTrees = this.buildHierarchyTrees(nextProps);
229
- this.setState({ hierarchy: hierarchyTrees.hierarchy, hierarchySelected: hierarchyTrees.hierarchySelected });
215
+ if (event.key === 'ArrowDown') {
216
+ nextItem = (0, _helpers.getNextItemSelectable)(document.activeElement, 'down');
217
+ } else if (event.key === 'ArrowUp') {
218
+ nextItem = (0, _helpers.getNextItemSelectable)(document.activeElement, 'up');
219
+ } else if (event.key === 'Tab') {
220
+ /* if (!this.props.staticPosition) {
221
+ document.body.style.overflow = 'auto';
222
+ } */
223
+ _this.setState({
224
+ open: false
225
+ });
226
+ } else if (event.key === 'Escape') {
227
+ _this.setState({
228
+ open: false
229
+ });
230
+ }
231
+
232
+ if (nextItem) {
233
+ nextItem.focus();
234
+ }
235
+ };
236
+
237
+ _this.handleKeyDownSearch = function (event) {
238
+ if (_this.overlay && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {
239
+ _this.focusOnSelectedItem();
240
+ } else if (event.key === 'Enter' && _this.props.onSubmit) {
241
+ _this.props.onSubmit(event);
242
+ }
243
+ };
244
+
245
+ _this.handleFocus = function () {
246
+ _this.setState({
247
+ focused: true
248
+ });
249
+ };
250
+
251
+ _this.handleBlur = function () {
252
+ _this.setState({
253
+ focused: false
254
+ });
255
+ };
256
+
257
+ _this.handleClose = function () {
258
+ if (_this.props.onClose) {
259
+ _this.props.onClose();
260
+ }
261
+
262
+ if (_this.selectInputElement) {
263
+ _this.selectInputElement.focus();
264
+ }
265
+
266
+ _this.setState({
267
+ open: false
268
+ });
269
+ };
270
+
271
+ _this.handleClickAway = function (event) {
272
+ // Au clic sur le bouton, on laisse le handleClick fermer le select
273
+ if (!_this.selectInputElement.contains(event.target)) {
274
+ _this.handleClose(event);
275
+ }
276
+ };
277
+
278
+ _this.handleSelect = function (event, item) {
279
+ var _this$props = _this.props,
280
+ multiple = _this$props.multiple,
281
+ value = _this$props.value,
282
+ onChange = _this$props.onChange,
283
+ options = _this$props.options,
284
+ hierarchic = _this$props.hierarchic,
285
+ pinnedItem = _this$props.pinnedItem;
286
+ var _this$state = _this.state,
287
+ hierarchySelected = _this$state.hierarchySelected,
288
+ hierarchy = _this$state.hierarchy,
289
+ nbOptions = _this$state.nbOptions;
290
+ var hiSelected = (0, _extends2.default)({}, hierarchySelected);
291
+
292
+ if (multiple) {
293
+ var valueList = value;
294
+
295
+ if (item.id === '_all') {
296
+ if (valueList.length === nbOptions) {
297
+ valueList = [];
298
+
299
+ if (hierarchic) {
300
+ // if hierarchic select => empty associative array of selected children
301
+ Object.keys(hiSelected).forEach(function (key) {
302
+ hiSelected[key] = [];
303
+ });
230
304
  }
231
- }
232
- }, {
233
- key: 'buildHierarchyTrees',
234
- value: function buildHierarchyTrees(props) {
235
- // Construct two associative arrays
236
- // hierarchy[parentId] => children
237
- // hierarchySelected[parentId] => selected children
238
- var hierarchy = {};
239
- var hierarchySelected = {};
240
- var value = props.value || [];
241
- if (!Array.isArray(value)) value = [props.value];
242
- props.options.forEach(function (option) {
243
- if (option.hasChildren === true && !hierarchy.hasOwnProperty(option.id)) {
244
- hierarchy[option.id] = [];
245
- hierarchySelected[option.id] = [];
246
- } else if (option.hasOwnProperty('parentId')) {
247
- hierarchy[option.parentId].push(option.id);
248
- if (value.includes(option.id)) {
249
- hierarchySelected[option.parentId].push(option.id);
250
- }
251
- }
305
+ } else {
306
+ options.forEach(function (option) {
307
+ if (option.hasChildren !== true && !valueList.includes(option.id) && option.id !== '_all') {
308
+ valueList.push(option.id);
309
+ } else if (option.hasChildren === true) {
310
+ // if hierarchic select => fill associative array of selected children
311
+ hiSelected[option.id] = hierarchy[option.id];
312
+ }
252
313
  });
253
- return { hierarchy: hierarchy, hierarchySelected: hierarchySelected };
254
- }
314
+ }
315
+ } else if (valueList.includes(item.id) || item.hasChildren === true && hierarchySelected[item.id].length === hierarchy[item.id].length) {
316
+ // item déjà sélectionné => on le déselectionne
317
+ if (item.hasChildren !== true) {
318
+ valueList = valueList.filter(function (val) {
319
+ return val !== item.id;
320
+ });
321
+ }
255
322
 
256
- // Key down on list items
257
-
258
-
259
- // Key down on search input
260
-
261
-
262
- /**
263
- * Call onChange with the updated value
264
- *
265
- * - handle single value
266
- * - handle multiple value
267
- * - handle '_all' id
268
- *
269
- * @param event
270
- * @param item
271
- */
272
-
273
-
274
- /**
275
- * Update suggestions list
276
- * - add '_no_result' item if suggestion list is empty
277
- * - add '_all' item if suggestion list is complete
278
- * @param suggestions
279
- */
280
-
281
- }, {
282
- key: 'render',
283
- value: function render() {
284
- var _this2 = this;
285
-
286
- var _props = this.props,
287
- classes = _props.classes,
288
- disabled = _props.disabled,
289
- error = _props.error,
290
- options = _props.options,
291
- checkbox = _props.checkbox,
292
- searchable = _props.searchable,
293
- displayAsChip = _props.displayAsChip,
294
- type = _props.type,
295
- value = _props.value,
296
- translations = _props.translations,
297
- parentItemSelectable = _props.parentItemSelectable,
298
- icon = _props.icon,
299
- parentIcon = _props.parentIcon,
300
- hoverIcon = _props.hoverIcon,
301
- checkedIcon = _props.checkedIcon,
302
- hierarchic = _props.hierarchic,
303
- id = _props.id,
304
- placeholder = _props.placeholder;
305
- var _state = this.state,
306
- open = _state.open,
307
- suggestions = _state.suggestions,
308
- focused = _state.focused;
309
-
310
-
311
- var display = '';
312
- var selectedIdList = Array.isArray(value) ? value : value ? [value] : [];
313
-
314
- if (this.state.dynamic && selectedIdList.length === 1) {
315
- display = translations.one_item_selected.replace('%s', selectedIdList.length);
316
- } else if (this.state.nbOptions !== selectedIdList.length && selectedIdList.length > 1) {
317
- display = translations.n_items_selected.replace('%s', selectedIdList.length);
318
- } else if (this.state.nbOptions === selectedIdList.length && this.state.nbOptions >= 1) {
319
- display = translations.all;
320
- } else if (selectedIdList.length === 1) {
321
- if (type !== 'icon') {
322
- display = options.find(function (o) {
323
- return o.id === selectedIdList[0];
324
- }).label;
325
- } else {
326
- var optionSelected = options.find(function (o) {
327
- return o.id === selectedIdList[0];
328
- });
329
- display = _react2.default.createElement(
330
- 'span',
331
- { className: classes.selectIconLabel },
332
- _react2.default.createElement(_HiIconBuilder2.default, { icon: optionSelected.icon, className: classes.labelIcon }),
333
- optionSelected.label
334
- );
335
- }
336
- }
323
+ if (item.hasChildren === true) {
324
+ // remove all children
325
+ valueList = valueList.filter(function (val) {
326
+ return !_this.state.hierarchy[item.id].includes(val);
327
+ });
328
+ hiSelected[item.id] = [];
329
+ } else if (item.hasOwnProperty('parentId')) {
330
+ // Si item est un enfant on l'enlève du tableau associatif des
331
+ // elmts sélectionnés
332
+ hiSelected[item.parentId].splice(hiSelected[item.parentId].indexOf(item.id), 1);
333
+ }
334
+ } else {
335
+ if (pinnedItem && item.id === pinnedItem.id) {
336
+ Object.keys(hiSelected).map(function (parentItemId) {
337
+ hiSelected[parentItemId] = [];
338
+ return true;
339
+ });
340
+ valueList = [item.id];
341
+ } else {
342
+ // item non sélectionné => on le sélectionne
343
+ if (item.hasChildren !== true) valueList.push(item.id);
337
344
 
338
- if (displayAsChip) {
339
- var chipFilter = _react2.default.createElement(_HiChip2.default, { label: placeholder || display, onDelete: this.handleRequestDelete });
340
- if (display) {
341
- display = chipFilter;
342
- }
345
+ if (pinnedItem && valueList.includes(pinnedItem.id)) {
346
+ valueList.splice(valueList.indexOf(pinnedItem.id), 1);
343
347
  }
348
+ }
344
349
 
345
- var popperClass = (0, _classnames2.default)(classes.popper, (0, _defineProperty3.default)({}, classes.popperClose, !open));
350
+ if (item.hasChildren === true) {
351
+ // Si item parent => on ajoute tous les enfants
352
+ // Ou on les supprime s'ils sont déjà tous sélectionnés (dans une liste filtrée)
353
+ var idsInSuggestions = [];
354
+
355
+ _this.state.suggestions.forEach(function (suggestion) {
356
+ if (_this.state.hierarchy[item.id].includes(suggestion.id)) {
357
+ idsInSuggestions.push(suggestion.id);
358
+ }
359
+ }); // if(hierarchySelected[item.id].length > 0) {}
346
360
 
347
- var allSelected = false;
348
- if (selectedIdList.length === this.state.nbOptions) {
349
- allSelected = true;
350
- }
351
361
 
352
- var popperStyle = {};
353
- if (this.props.containerWidth > 0) {
354
- popperStyle = { width: this.props.containerWidth };
362
+ var allChildrenSuggestionsSelected = true;
363
+ idsInSuggestions.forEach(function (id) {
364
+ if (!hierarchySelected[item.id].includes(id)) {
365
+ allChildrenSuggestionsSelected = false;
366
+ }
367
+ });
368
+
369
+ if (allChildrenSuggestionsSelected === true) {
370
+ // On supprime les enfants car déjà tous sélectionnés
371
+ idsInSuggestions.forEach(function (id) {
372
+ valueList.splice(valueList.indexOf(id), 1);
373
+ hiSelected[item.id].splice(hiSelected[item.id].indexOf(id), 1);
374
+ });
375
+ } else {
376
+ // On ajoute tous les enfants filtrés au éléments sélectionnés
377
+ valueList = (0, _helpers.arrayUnique)(valueList.concat(idsInSuggestions));
378
+ hiSelected[item.id] = (0, _helpers.arrayUnique)(hiSelected[item.id].concat(idsInSuggestions));
355
379
  }
356
380
 
357
- return _react2.default.createElement(
358
- 'div',
359
- {
360
- className: classes.root,
361
- ref: function ref(el) {
362
- _this2.overlay = el;
363
- }
364
- },
365
- _react2.default.createElement(
366
- _reactPopper.Manager,
367
- null,
368
- _react2.default.createElement(
369
- _reactPopper.Target,
370
- null,
371
- _react2.default.createElement(_SelectInput2.default, {
372
- id: id,
373
- value: placeholder || display,
374
- open: open,
375
- focused: focused,
376
- type: type,
377
- disabled: disabled,
378
- noButton: displayAsChip,
379
- error: error,
380
- onClick: this.handleClick,
381
- onFocus: this.handleFocus,
382
- onBlur: this.handleBlur,
383
- onMouseEnter: this.props.onMouseEnter,
384
- onMouseLeave: this.props.onMouseLeave,
385
- refElement: function refElement(el) {
386
- _this2.selectInputElement = el;
387
- }
388
- })
389
- ),
390
- open && _react2.default.createElement(
391
- _reactPopper.Popper,
392
- {
393
- placement: 'bottom-start',
394
- eventsEnabled: open,
395
- className: popperClass,
396
- style: popperStyle
397
- },
398
- _react2.default.createElement(
399
- _ClickAwayListener2.default,
400
- { onClickAway: this.handleClose },
401
- _react2.default.createElement(
402
- _Grow2.default,
403
- { 'in': open, id: 'menu-list', style: { transformOrigin: '0 0 0' } },
404
- _react2.default.createElement(
405
- _Paper2.default,
406
- { className: classes.paper },
407
- !!searchable && _react2.default.createElement(_HiForm.HiSearchField, {
408
- itemList: options,
409
- callbackFilteredList: this.handleSuggestions,
410
- filterPropertyList: ['label'],
411
- placeholder: translations.search,
412
- autoFocus: true,
413
- onSearch: this.props.onSearch,
414
- inputRef: function inputRef(el) {
415
- _this2.searchField = el;
416
- },
417
- onKeyDown: this.handleKeyDownSearch
418
- }),
419
- _react2.default.createElement(_HiSelectableList2.default, {
420
- type: type,
421
- parentItemSelectable: parentItemSelectable,
422
- itemList: suggestions,
423
- onSelect: this.handleSelect,
424
- selectedIdList: selectedIdList,
425
- checkbox: checkbox,
426
- hierarchy: this.state.hierarchy,
427
- hierarchic: hierarchic,
428
- hierarchySelected: this.state.hierarchySelected,
429
- translations: translations,
430
- icon: icon,
431
- parentIcon: parentIcon,
432
- hoverIcon: hoverIcon,
433
- checkedIcon: checkedIcon,
434
- allSelected: allSelected,
435
- value: value,
436
- onKeyDown: this.handleKeyDown
437
- })
438
- )
439
- )
440
- )
441
- )
442
- )
443
- );
381
+ _this.setState({
382
+ hierarchySelected: hiSelected
383
+ });
384
+ } else if (item.hasOwnProperty('parentId')) {
385
+ // Si item est un enfant on l'ajoute du tableau associatif des
386
+ // elmts sélectionnés
387
+ hiSelected[item.parentId].push(item.id);
388
+ }
444
389
  }
445
- }]);
446
- return HiSelect;
447
- }(_react2.default.PureComponent);
448
390
 
449
- HiSelect.defaultProps = {
450
- disabled: false,
451
- error: false,
452
- multiple: false,
453
- type: 'text',
454
- checkbox: false,
455
- searchable: false,
456
- hasAll: false,
457
- iconAll: false,
458
- hierarchic: false,
459
- parentItemSelectable: false,
460
- displayAsChip: false,
461
- icon: _react2.default.createElement(_mdiMaterialUi.CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
462
- parentIcon: _react2.default.createElement(_mdiMaterialUi.CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
463
- hoverIcon: _react2.default.createElement(_mdiMaterialUi.CheckboxBlankOutline, { style: { width: 20, height: 20 } }),
464
- checkedIcon: _react2.default.createElement(_mdiMaterialUi.CheckboxMarked, { style: { width: 20, height: 20 } }),
465
- translations: {
466
- all: 'All',
467
- no_result_match: 'No result match',
468
- search: 'Search',
469
- n_items_selected: '%s items selected',
470
- one_item_selected: '%s item selected',
471
- n_children: '%s items',
472
- one_child: '%s item'
473
- }
474
- };
391
+ _this.setState({
392
+ hierarchySelected: hiSelected
393
+ });
475
394
 
476
- var _initialiseProps = function _initialiseProps() {
477
- var _this3 = this;
395
+ onChange(event, valueList, item);
396
+ } else {
397
+ onChange(event, item.id, item);
478
398
 
479
- this.handleClick = function () {
480
- document.body.style.overflow = 'hidden';
481
- _this3.setState({ open: true });
482
- var options = _this3.props.options.slice();
483
- _this3.handleSuggestions(options);
399
+ _this.handleClose();
400
+ }
401
+ };
484
402
 
485
- if (_this3.props.onClick) {
486
- _this3.props.onClick();
403
+ _this.handleSuggestions = function (suggestions) {
404
+ var _this$props2 = _this.props,
405
+ options = _this$props2.options,
406
+ hasAll = _this$props2.hasAll,
407
+ iconAll = _this$props2.iconAll,
408
+ translations = _this$props2.translations,
409
+ multiple = _this$props2.multiple;
410
+
411
+ if (suggestions.length === 0) {
412
+ // Handle No Result
413
+ // FIX to remove all item
414
+ suggestions = [];
415
+ suggestions.push({
416
+ id: '_no_result',
417
+ type: 'text',
418
+ disabled: true,
419
+ centered: true,
420
+ checkbox: false,
421
+ label: translations.no_result_match
422
+ });
423
+ } else if (hasAll && suggestions.length > 0 && suggestions.length === options.length && multiple === true) {
424
+ // Handle 'All'
425
+ if (suggestions.filter(function (suggestion) {
426
+ return suggestion.id === '_all';
427
+ }).length === 0) {
428
+ var allItem = {
429
+ id: '_all',
430
+ icon: iconAll,
431
+ label: translations.all
432
+ };
433
+
434
+ if (iconAll !== false) {
435
+ allItem.type = 'icon';
436
+ }
437
+
438
+ suggestions.unshift(allItem);
487
439
  }
440
+ }
488
441
 
489
- // Gestion du focus
490
- if (_this3.searchField) {
491
- // si searchable, focus sur le champs de recherche
492
- var searchField = _this3.searchField;
493
- setTimeout(function () {
494
- searchField.focus();
495
- }, 1);
496
- } else if (_this3.overlay) {
497
- // sinon focus sur le dernier élément selectionné
498
- _this3.focusOnSelectedItem();
499
- }
442
+ _this.setState({
443
+ suggestions: suggestions
444
+ });
500
445
  };
501
446
 
502
- this.focusOnSelectedItem = function () {
503
- // On récupère la div parent "overlay"
504
- var overlay = (0, _reactDom.findDOMNode)(_this3.overlay);
505
- var multiple = _this3.props.multiple;
506
- var value = _this3.props.value;
507
- var selectedIdList = Array.isArray(value) ? value : [value];
508
- setTimeout(function () {
509
- var focused = false;
510
- // Si un ou plusieurs items sont selectionnés, on focus sur le dernier
511
- if (selectedIdList.length > 0) {
512
- var itemSelected = overlay.querySelector('[data-id="' + selectedIdList[selectedIdList.length - 1] + '"]');
513
- if (itemSelected && itemSelected.parentElement.tagName === 'LI') {
514
- itemSelected.parentElement.focus();
515
- focused = true;
516
- }
517
- }
518
- // Si pas d'item selectionné, ou pas visible (en cas de recherche), focus sur le premier
519
- if (selectedIdList.length === 0 || !focused) {
520
- // On recupère tous les items
521
- var items = overlay.getElementsByTagName('li');
522
- var itemToFocus = items[0];
523
- // Si select multiple, et qu'au moins un selectionné, focus sur le 2e item
524
- if (multiple && selectedIdList.length > 0) {
525
- itemToFocus = items[1];
526
- }
527
- if (itemToFocus) {
528
- itemToFocus.focus();
529
- }
530
- }
531
- }, 1);
447
+ _this.handleRequestDelete = function (evt) {
448
+ evt.stopPropagation();
449
+
450
+ _this.props.onChange(_this.props.name, []);
532
451
  };
533
452
 
534
- this.handleKeyDown = function (event) {
535
- var nextItem = void 0;
536
- if (event.key === 'ArrowDown') {
537
- nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'down');
538
- } else if (event.key === 'ArrowUp') {
539
- nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'up');
540
- } else if (event.key === 'Tab') {
541
- document.body.style.overflow = 'auto';
542
- _this3.setState({ open: false });
453
+ _this.handleScroll = function (event) {
454
+ if (!_this.props.loadingMoreResults && _this.props.hasMore && event.target.scrollHeight - event.target.clientHeight - event.target.scrollTop < 15) {
455
+ _this.props.loadMoreResults(_this.state.resultsPageNumber + 1);
456
+
457
+ _this.setState(function (prevState) {
458
+ return {
459
+ resultsPageNumber: prevState.resultsPageNumber + 1
460
+ };
461
+ });
462
+ }
463
+ };
464
+
465
+ _this.state = {
466
+ open: false,
467
+ focused: false,
468
+ suggestions: [],
469
+ hierarchySelected: {},
470
+ hierarchy: {},
471
+ nbOptions: 0,
472
+ dynamic: _props.dynamic || false,
473
+ resultsPageNumber: 1
474
+ }; // Check if value is in options
475
+
476
+ var valueInOptions = false;
477
+ var _val = _props.value; // No options provided.
478
+
479
+ if (!_props.options.length || !_val || !_val.length) {
480
+ valueInOptions = true;
481
+ } else {
482
+ // Check if an option match value prop.
483
+ _props.options.forEach(function (item) {
484
+ if (!valueInOptions && _val.indexOf(item.id) !== -1) {
485
+ valueInOptions = true;
543
486
  }
544
- if (nextItem) {
545
- nextItem.focus();
487
+ });
488
+
489
+ if (!valueInOptions && _props.pinnedItem) {
490
+ if (_props.value.indexOf(_props.pinnedItem.id) >= 0) {
491
+ valueInOptions = true;
546
492
  }
547
- };
493
+ }
494
+ }
495
+
496
+ if (!valueInOptions) {
497
+ throw new Error('prop value provided does not match any option.');
498
+ }
499
+
500
+ if (_props.hierarchic === true && _props.options.length > 1) {
501
+ var hierarchyTrees = _this.buildHierarchyTrees(_props);
502
+
503
+ _this.state.hierarchy = hierarchyTrees.hierarchy;
504
+ _this.state.hierarchySelected = hierarchyTrees.hierarchySelected;
505
+ }
548
506
 
549
- this.handleKeyDownSearch = function (event) {
550
- if (_this3.overlay && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {
551
- _this3.focusOnSelectedItem();
507
+ if (_props.options.length > 0) {
508
+ // Get real options number (parent & _all are not real options)
509
+ var optionsLength = 0;
510
+
511
+ _props.options.forEach(function (option) {
512
+ if (option.hasChildren !== true && option.id !== '_all') {
513
+ optionsLength += 1;
552
514
  }
553
- };
515
+ });
554
516
 
555
- this.handleFocus = function () {
556
- _this3.setState({ focused: true });
557
- };
517
+ _this.state.nbOptions = optionsLength;
518
+ } else if (!_props.dynamic) {
519
+ _this.state.dynamic = true;
520
+ }
558
521
 
559
- this.handleBlur = function () {
560
- _this3.setState({ focused: false });
561
- };
522
+ _this.handleSelect = _this.handleSelect.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
523
+ _this.handleClick = _this.handleClick.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
524
+ _this.handleClose = _this.handleClose.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
525
+ _this.handleClickAway = _this.handleClickAway.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
526
+ _this.handleRequestDelete = _this.handleRequestDelete.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
527
+ _this.handleSuggestions = _this.handleSuggestions.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
528
+ _this.handleFocus = _this.handleFocus.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
529
+ _this.handleBlur = _this.handleBlur.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
530
+ _this.handleScroll = _this.handleScroll.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
531
+ return _this;
532
+ }
533
+
534
+ (0, _createClass2.default)(HiSelect, [{
535
+ key: "componentWillReceiveProps",
536
+ value: function componentWillReceiveProps(nextProps) {
537
+ if (typeof this.props.onSearch !== 'undefined' && this.props.options && this.props.options.length > 0) {
538
+ this.handleSuggestions(nextProps.options);
539
+ var optionsLength = 0;
540
+ nextProps.options.forEach(function (option) {
541
+ if (option.hasChildren !== true && option.id !== '_all') {
542
+ optionsLength += 1;
543
+ }
544
+ });
545
+ this.setState({
546
+ nbOptions: optionsLength
547
+ });
548
+ }
562
549
 
563
- this.handleClose = function () {
564
- document.body.style.overflow = 'auto';
565
- _this3.setState({
566
- open: false
550
+ if (nextProps.hierarchic === true && nextProps.options.length > 1) {
551
+ var hierarchyTrees = this.buildHierarchyTrees(nextProps);
552
+ this.setState({
553
+ hierarchy: hierarchyTrees.hierarchy,
554
+ hierarchySelected: hierarchyTrees.hierarchySelected
555
+ });
556
+ }
557
+ }
558
+ }, {
559
+ key: "render",
560
+ value: function render() {
561
+ var _this2 = this;
562
+
563
+ var _this$props3 = this.props,
564
+ classes = _this$props3.classes,
565
+ disabled = _this$props3.disabled,
566
+ error = _this$props3.error,
567
+ loading = _this$props3.loading,
568
+ options = _this$props3.options,
569
+ searchable = _this$props3.searchable,
570
+ displayAsChip = _this$props3.displayAsChip,
571
+ type = _this$props3.type,
572
+ value = _this$props3.value,
573
+ translations = _this$props3.translations,
574
+ parentItemSelectable = _this$props3.parentItemSelectable,
575
+ icon = _this$props3.icon,
576
+ parentIcon = _this$props3.parentIcon,
577
+ hoverIcon = _this$props3.hoverIcon,
578
+ checkedIcon = _this$props3.checkedIcon,
579
+ id = _this$props3.id,
580
+ placeholder = _this$props3.placeholder,
581
+ staticPosition = _this$props3.staticPosition,
582
+ pinnedItem = _this$props3.pinnedItem,
583
+ hasAll = _this$props3.hasAll,
584
+ infiniteScroll = _this$props3.infiniteScroll,
585
+ loadingMoreResults = _this$props3.loadingMoreResults,
586
+ multiple = _this$props3.multiple,
587
+ other = (0, _objectWithoutProperties2.default)(_this$props3, ["classes", "disabled", "error", "loading", "options", "searchable", "displayAsChip", "type", "value", "translations", "parentItemSelectable", "icon", "parentIcon", "hoverIcon", "checkedIcon", "id", "placeholder", "staticPosition", "pinnedItem", "hasAll", "infiniteScroll", "loadingMoreResults", "multiple"]);
588
+ var _this$state2 = this.state,
589
+ open = _this$state2.open,
590
+ stateSuggestions = _this$state2.suggestions,
591
+ focused = _this$state2.focused,
592
+ dynamic = _this$state2.dynamic;
593
+ var display = '';
594
+ var selectedIdList;
595
+
596
+ if (Array.isArray(value)) {
597
+ selectedIdList = value;
598
+ } else if (value) {
599
+ selectedIdList = [value];
600
+ } else {
601
+ selectedIdList = [];
602
+ }
603
+
604
+ var suggestions = (0, _toConsumableArray2.default)(stateSuggestions);
605
+
606
+ if (pinnedItem) {
607
+ suggestions.unshift(pinnedItem);
608
+ } // If loading
609
+
610
+
611
+ if (loading && !loadingMoreResults) {
612
+ suggestions.unshift({
613
+ id: '_loading',
614
+ type: 'loader',
615
+ disabled: true,
616
+ centered: true,
617
+ checkbox: false,
618
+ label: 'loading'
619
+ });
620
+ }
621
+
622
+ if ((dynamic || loading) && selectedIdList.length === 1) {
623
+ display = translations.one_item_selected;
624
+ } else if ((this.state.nbOptions !== selectedIdList.length || !hasAll) && selectedIdList.length > 1) {
625
+ display = translations.n_items_selected.replace('%s', selectedIdList.length);
626
+ } else if (this.state.nbOptions === selectedIdList.length && this.state.nbOptions > 1) {
627
+ display = translations.all;
628
+ } else if (selectedIdList.length === 1) {
629
+ var item = options.find(function (o) {
630
+ return o.id === selectedIdList[0];
567
631
  });
568
632
 
569
- if (_this3.props.onClose) {
570
- _this3.props.onClose();
571
- }
572
- if (_this3.selectInputElement) {
573
- _this3.selectInputElement.focus();
574
- }
575
- };
633
+ if (item === undefined) {
634
+ display = translations.one_item_selected;
635
+ } else if (type !== 'icon') {
636
+ if (pinnedItem) {
637
+ item = pinnedItem;
638
+ }
576
639
 
577
- this.handleSelect = function (event, item) {
578
- var _props2 = _this3.props,
579
- multiple = _props2.multiple,
580
- value = _props2.value,
581
- name = _props2.name,
582
- onChange = _props2.onChange,
583
- options = _props2.options,
584
- hierarchic = _props2.hierarchic;
585
- var _state2 = _this3.state,
586
- hierarchySelected = _state2.hierarchySelected,
587
- hierarchy = _state2.hierarchy,
588
- nbOptions = _state2.nbOptions;
589
-
590
- var hiSelected = (0, _extends3.default)({}, hierarchySelected);
591
-
592
- if (multiple) {
593
- var valueList = value;
594
- if (item.id === '_all') {
595
- if (valueList.length === nbOptions) {
596
- valueList = [];
597
- if (hierarchic) {
598
- // if hierarchic select => empty associative array of selected children
599
- (0, _keys2.default)(hiSelected).forEach(function (key) {
600
- hiSelected[key] = [];
601
- });
602
- }
603
- } else {
604
- options.forEach(function (option) {
605
- if (option.hasChildren !== true && !valueList.includes(option.id) && option.id !== '_all') {
606
- valueList.push(option.id);
607
- } else if (option.hasChildren === true) {
608
- // if hierarchic select => fill associative array of selected children
609
- hiSelected[option.id] = hierarchy[option.id];
610
- }
611
- });
612
- }
613
- } else if (valueList.includes(item.id) || item.hasChildren === true && hierarchySelected[item.id].length === hierarchy[item.id].length) {
614
- // item déjà sélectionné => on le déselectionne
615
- if (item.hasChildren !== true) {
616
- valueList = valueList.filter(function (val) {
617
- return val !== item.id;
618
- });
619
- }
620
-
621
- if (item.hasChildren === true) {
622
- // remove all children
623
- valueList = valueList.filter(function (val) {
624
- return !_this3.state.hierarchy[item.id].includes(val);
625
- });
626
- hiSelected[item.id] = [];
627
- } else if (item.hasOwnProperty('parentId')) {
628
- // Si item est un enfant on l'enlève du tableau associatif des
629
- // elmts sélectionnés
630
- hiSelected[item.parentId].splice(hiSelected[item.parentId].indexOf(item.id), 1);
631
- }
632
- } else {
633
- // item non sélectionné => on le sélectionne
634
- if (item.hasChildren !== true) valueList.push(item.id);
635
-
636
- if (item.hasChildren === true) {
637
- // Si item parent => on ajoute tous les enfants
638
- // Ou on les supprime s'ils sont déjà tous sélectionnés (dans une liste filtrée)
639
- var idsInSuggestions = [];
640
- _this3.state.suggestions.forEach(function (suggestion) {
641
- if (_this3.state.hierarchy[item.id].includes(suggestion.id)) {
642
- idsInSuggestions.push(suggestion.id);
643
- }
644
- });
645
- // if(hierarchySelected[item.id].length > 0) {}
646
- var allChildrenSuggestionsSelected = true;
647
- idsInSuggestions.forEach(function (id) {
648
- if (!hierarchySelected[item.id].includes(id)) {
649
- allChildrenSuggestionsSelected = false;
650
- }
651
- });
652
-
653
- if (allChildrenSuggestionsSelected === true) {
654
- // On supprime les enfants car déjà tous sélectionnés
655
- idsInSuggestions.forEach(function (id) {
656
- valueList.splice(valueList.indexOf(id), 1);
657
- hiSelected[item.id].splice(hiSelected[item.id].indexOf(id), 1);
658
- });
659
- } else {
660
- // On ajoute tous les enfants filtrés au éléments sélectionnés
661
- valueList = (0, _hiHelpers.arrayUnique)(valueList.concat(idsInSuggestions));
662
- hiSelected[item.id] = (0, _hiHelpers.arrayUnique)(hiSelected[item.id].concat(idsInSuggestions));
663
- }
664
-
665
- _this3.setState({ hierarchySelected: hiSelected });
666
- } else if (item.hasOwnProperty('parentId')) {
667
- // Si item est un enfant on l'ajoute du tableau associatif des
668
- // elmts sélectionnés
669
- hiSelected[item.parentId].push(item.id);
670
- }
671
- }
672
- _this3.setState({ hierarchySelected: hiSelected });
673
- onChange(event, valueList);
640
+ display = item.label;
674
641
  } else {
675
- onChange(event, item.id);
676
- _this3.handleClose();
642
+ display = _react.default.createElement("span", {
643
+ className: classes.selectIconLabel
644
+ }, _react.default.createElement(_HiIcon.default, {
645
+ icon: item.icon,
646
+ className: classes.labelIcon
647
+ }), item.label);
677
648
  }
678
- };
649
+ }
679
650
 
680
- this.handleSuggestions = function (suggestions) {
681
- var _props3 = _this3.props,
682
- options = _props3.options,
683
- hasAll = _props3.hasAll,
684
- iconAll = _props3.iconAll,
685
- translations = _props3.translations,
686
- multiple = _props3.multiple;
687
-
688
-
689
- if (suggestions.length === 0) {
690
- // Handle No Result
691
- // FIX to remove all item
692
- suggestions = [];
693
- suggestions.push({
694
- id: '_no_result',
695
- type: 'text',
696
- disabled: true,
697
- centered: true,
698
- checkbox: false,
699
- label: translations.no_result_match
700
- });
701
- } else if (hasAll && suggestions.length > 0 && suggestions.length === options.length && multiple === true) {
702
- // Handle 'All'
703
- if (suggestions.filter(function (suggestion) {
704
- return suggestion.id === '_all';
705
- }).length === 0) {
706
- var allItem = {
707
- id: '_all',
708
- icon: iconAll,
709
- label: translations.all
710
- };
711
- if (iconAll !== false) {
712
- allItem.type = 'icon';
713
- }
714
- suggestions.unshift(allItem);
715
- }
651
+ if (displayAsChip) {
652
+ var chipFilter = _react.default.createElement(_HiChip.default, {
653
+ label: placeholder || display,
654
+ onDelete: this.handleRequestDelete
655
+ });
656
+
657
+ if (display) {
658
+ display = chipFilter;
716
659
  }
660
+ }
717
661
 
718
- _this3.setState({
719
- suggestions: suggestions
662
+ var popperClass = (0, _classnames.default)(classes.popper, (0, _defineProperty2.default)({}, classes.popperClose, !open));
663
+ var allSelected = false;
664
+
665
+ if (selectedIdList.length === this.state.nbOptions) {
666
+ allSelected = true;
667
+ }
668
+
669
+ var popperStyle = {};
670
+
671
+ if (this.props.containerWidth > 0) {
672
+ popperStyle = {
673
+ width: this.props.containerWidth
674
+ };
675
+ }
676
+
677
+ if (infiniteScroll && loadingMoreResults) {
678
+ suggestions.push({
679
+ id: '_loading',
680
+ type: 'loader',
681
+ disabled: true,
682
+ centered: true,
683
+ checkbox: false,
684
+ label: 'loading'
720
685
  });
721
- };
686
+ }
687
+
688
+ var content = _react.default.createElement(_ClickAwayListener.default, {
689
+ onClickAway: this.handleClickAway
690
+ }, _react.default.createElement(_Grow.default, {
691
+ in: open,
692
+ id: "menu-list",
693
+ style: {
694
+ transformOrigin: '0 0 0'
695
+ }
696
+ }, _react.default.createElement(_Paper.default, {
697
+ className: classes.paper
698
+ }, !!searchable && _react.default.createElement(_HiSearchField.default, {
699
+ itemList: options,
700
+ onFilteredList: this.handleSuggestions,
701
+ filterPropertyList: ['label'],
702
+ placeholder: translations.search,
703
+ autoFocus: true,
704
+ onSearch: this.props.onSearch,
705
+ inputRef: function inputRef(el) {
706
+ _this2.searchField = el;
707
+ },
708
+ onKeyDown: this.handleKeyDownSearch
709
+ }), _react.default.createElement(_reactCustomScrollbars.default, {
710
+ ref: function ref(contentEl) {
711
+ _this2.optionsContent = contentEl;
712
+ },
713
+ autoHeight: true,
714
+ autoHeightMax: 400,
715
+ onScroll: this.handleScroll
716
+ }, _react.default.createElement(_HiSelectableList.default, (0, _extends2.default)({
717
+ type: type,
718
+ parentItemSelectable: parentItemSelectable,
719
+ itemList: suggestions,
720
+ onSelect: this.handleSelect,
721
+ selectedItemIdList: selectedIdList,
722
+ hideCheckbox: !multiple,
723
+ translations: translations,
724
+ icon: icon,
725
+ parentIcon: parentIcon,
726
+ hoverIcon: hoverIcon,
727
+ checkedIcon: checkedIcon,
728
+ allSelected: allSelected,
729
+ value: value,
730
+ onKeyDown: this.handleKeyDown
731
+ }, other))))));
732
+
733
+ return _react.default.createElement("div", {
734
+ className: classes.root,
735
+ ref: function ref(el) {
736
+ _this2.overlay = el;
737
+ }
738
+ }, _react.default.createElement(_SelectInput.default, {
739
+ id: id,
740
+ value: placeholder || display,
741
+ open: open,
742
+ focused: focused,
743
+ type: type,
744
+ disabled: disabled,
745
+ noButton: displayAsChip,
746
+ error: error,
747
+ onClick: this.handleClick,
748
+ onFocus: this.handleFocus,
749
+ onBlur: this.handleBlur,
750
+ onMouseEnter: this.props.onMouseEnter,
751
+ onMouseLeave: this.props.onMouseLeave,
752
+ refElement: function refElement(el) {
753
+ _this2.selectInputElement = el;
754
+ }
755
+ }), open && staticPosition ? _react.default.createElement("div", {
756
+ style: popperStyle
757
+ }, content) : _react.default.createElement(_Popper.default, {
758
+ anchorEl: this.inputEl,
759
+ placement: "bottom-start",
760
+ open: open,
761
+ eventsEnabled: open,
762
+ className: popperClass,
763
+ style: popperStyle,
764
+ disablePortal: true
765
+ }, content));
766
+ }
767
+ }]);
768
+ return HiSelect;
769
+ }(_react.default.PureComponent);
722
770
 
723
- this.handleRequestDelete = function (evt) {
724
- evt.stopPropagation();
725
- _this3.props.onChange(_this3.props.name, []);
726
- };
771
+ HiSelect.defaultProps = {
772
+ containerWidth: 0,
773
+ disabled: false,
774
+ displayAsChip: false,
775
+ dynamic: false,
776
+ error: false,
777
+ hasAll: false,
778
+ hasMore: false,
779
+ hierarchic: false,
780
+ iconAll: false,
781
+ infiniteScroll: false,
782
+ loadingMoreResults: false,
783
+ multiple: false,
784
+ parentItemSelectable: false,
785
+ type: 'text',
786
+ translations: {
787
+ all: 'All',
788
+ no_result_match: 'No result match',
789
+ search: 'Search',
790
+ n_items_selected: '%s items selected',
791
+ one_item_selected: '%s item selected',
792
+ n_children: '%s items',
793
+ one_child: '%s item'
794
+ },
795
+ searchable: false,
796
+ staticPosition: false
727
797
  };
728
-
729
798
  HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
730
- /**
731
- * Affiche une checkbox pour chaque éléments, par défaut si options est nested
732
- */
733
- checkbox: _propTypes2.default.bool,
734
- /**
735
- * Icon affiché lorsque l'item est sélectionné
736
- */
737
- checkedIcon: _propTypes2.default.node,
738
- /**
739
- * Useful to extend the style applied to components.
740
- */
741
- classes: _propTypes2.default.object,
742
- /**
743
- * Inactif
744
- */
745
- disabled: _propTypes2.default.bool,
746
- /**
747
- * Option permettant d'afficher les sélection sous forme de Chip.
748
- */
749
- displayAsChip: _propTypes2.default.bool,
750
- /**
751
- * Applique le style error
752
- */
753
- error: _propTypes2.default.bool,
754
- /**
755
- * Affiche l'élément 'All'
756
- */
757
- hasAll: _propTypes2.default.bool,
758
- /**
759
- * Les items sont hiérarchisés
760
- */
761
- hierarchic: _propTypes2.default.bool,
762
- /**
763
- * Icon affiché lorsque l'item n'est pas sélectionné et qu'on le survole
764
- */
765
- hoverIcon: _propTypes2.default.node,
766
- /**
767
- * Icon affiché lorsque l'item n'est pas sélectionné
768
- */
769
- icon: _propTypes2.default.node,
770
- /**
771
- * Nom de l'icône
772
- */
773
- iconAll: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.bool]),
774
- /**
775
- * id du select
776
- */
777
- id: _propTypes2.default.string,
778
- /**
779
- * Autorise la sélection de plusieurs valeurs
780
- */
781
- multiple: _propTypes2.default.bool,
782
- /**
783
- * Nom du champ de formulaire
784
- */
785
- name: _propTypes2.default.string.isRequired,
786
- /**
787
- * Fonction de callback qui renvoit la/les valeurs sélectionnées
788
- *
789
- * @param {object} event
790
- * @param {string || array} value
791
- */
792
- onChange: _propTypes2.default.func.isRequired,
793
- /**
794
- * Fonction de callback appelée lorsqu'on ferme le select
795
- */
796
- onClose: _propTypes2.default.func,
797
- /**
798
- * Fonction de callback appelée lorsqu'on survole le champs
799
- */
800
- onMouseEnter: _propTypes2.default.func,
801
- /**
802
- * Fonction de callback appelée lorsque le curseur quitte le champs
803
- */
804
- onMouseLeave: _propTypes2.default.func,
805
- /**
806
- * Fonction de callback appelée lorsqu'on écrit dans la barre de recherche
807
- * A utiliser pour les selects avec des données dynamiques
808
- *
809
- * @param {object} event
810
- * @param {string} value
811
- */
812
- onSearch: _propTypes2.default.func,
813
- /**
814
- * Listes des options du select
815
- */
816
- options: _propTypes2.default.array.isRequired,
817
- /**
818
- * Icon affiché lorsqu'un item parent n'est pas sélectionné
819
- */
820
- parentIcon: _propTypes2.default.node,
821
- /**
822
- * Les items parents sont sélectionnables
823
- */
824
- parentItemSelectable: _propTypes2.default.bool,
825
- /**
826
- * Placeholder affiché lorsque le select est fermé
827
- * Surcharge le placeholder par défaut
828
- */
829
- placeholder: _propTypes2.default.string,
830
- /**
831
- * Affiche un input de recherche permettant de filtrer les options
832
- */
833
- searchable: _propTypes2.default.bool,
834
- /**
835
- * Traductions (par défaut en anglais)
836
- */
837
- translations: _propTypes2.default.object,
838
- /**
839
- * Type des éléments du select, définit le rendu d'un élément
840
- */
841
- type: _propTypes2.default.oneOf(['icon', 'text', 'image', 'primary-highlight']),
842
- /**
843
- * Value(s) du select
844
- */
845
- value: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.string, _propTypes2.default.array])
799
+ /**
800
+ * Icon affiché lorsque l'item est sélectionné
801
+ */
802
+ checkedIcon: _propTypes.default.node,
803
+
804
+ /**
805
+ * Useful to extend the style applied to components.
806
+ */
807
+ classes: _propTypes.default.object,
808
+
809
+ /**
810
+ * Popper width
811
+ */
812
+ containerWidth: _propTypes.default.number,
813
+
814
+ /**
815
+ * Inactif
816
+ */
817
+ disabled: _propTypes.default.bool,
818
+
819
+ /**
820
+ * Option permettant d'afficher les sélection sous forme de Chip.
821
+ */
822
+ displayAsChip: _propTypes.default.bool,
823
+
824
+ /**
825
+ * Option permettant de définir si les options du select sont dynamiques.
826
+ * Si les options du select sont initialisées à vide, alors ce sera mis à true
827
+ * automatiquement.
828
+ */
829
+ dynamic: _propTypes.default.bool,
830
+
831
+ /**
832
+ * Applique le style error
833
+ */
834
+ error: _propTypes.default.bool,
835
+
836
+ /**
837
+ * Affiche l'élément 'All'
838
+ */
839
+ hasAll: _propTypes.default.bool,
840
+
841
+ /**
842
+ * Indique si l'infinite scroll doit rechercher de nouveaux résultats
843
+ */
844
+ hasMore: _propTypes.default.bool,
845
+
846
+ /**
847
+ * Les items sont hiérarchisés
848
+ */
849
+ hierarchic: _propTypes.default.bool,
850
+
851
+ /**
852
+ * Icon affiché lorsque l'item n'est pas sélectionné et qu'on le survole
853
+ */
854
+ hoverIcon: _propTypes.default.node,
855
+
856
+ /**
857
+ * Icon affiché lorsque l'item n'est pas sélectionné
858
+ */
859
+ icon: _propTypes.default.node,
860
+
861
+ /**
862
+ * Nom de l'icône
863
+ */
864
+ iconAll: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
865
+
866
+ /**
867
+ * id du select
868
+ */
869
+ id: _propTypes.default.string,
870
+
871
+ /**
872
+ * Infinite scroll dans le select dans le cas où il y a beaucoup de résultats à afficher
873
+ * afin d'éviter un lag du navigateur
874
+ */
875
+ infiniteScroll: _propTypes.default.bool,
876
+
877
+ /**
878
+ * Ajoute un loader
879
+ */
880
+ loading: _propTypes.default.bool,
881
+
882
+ /**
883
+ * Ajoute un loader en bas pour l'infiniteScroll
884
+ */
885
+ loadingMoreResults: _propTypes.default.bool,
886
+
887
+ /**
888
+ * Fonction de callback appelée lorsque l'utilisateur arrive en bas de la liste des options
889
+ * afin de charger les nouvelles options
890
+ *
891
+ * @param {int} pageNumber
892
+ */
893
+ loadMoreResults: _propTypes.default.func,
894
+
895
+ /**
896
+ * Autorise la sélection de plusieurs valeurs
897
+ */
898
+ multiple: _propTypes.default.bool,
899
+
900
+ /**
901
+ * Nom du champ de formulaire
902
+ */
903
+ name: _propTypes.default.string.isRequired,
904
+
905
+ /**
906
+ * Fonction de callback qui renvoit la/les valeurs sélectionnées
907
+ *
908
+ * @param {object} event
909
+ * @param {string || array} value
910
+ */
911
+ onChange: _propTypes.default.func.isRequired,
912
+
913
+ /**
914
+ * Fonction de callback appelée click dans l'input
915
+ */
916
+ onClick: _propTypes.default.func,
917
+
918
+ /**
919
+ * Fonction de callback appelée lorsqu'on ferme le select
920
+ */
921
+ onClose: _propTypes.default.func,
922
+
923
+ /**
924
+ * Fonction de callback appelée lorsqu'on survole le champs
925
+ */
926
+ onMouseEnter: _propTypes.default.func,
927
+
928
+ /**
929
+ * Fonction de callback appelée lorsque le curseur quitte le champs
930
+ */
931
+ onMouseLeave: _propTypes.default.func,
932
+
933
+ /**
934
+ * Fonction de callback appelée lorsqu'on écrit dans la barre de recherche
935
+ * A utiliser pour les selects avec des données dynamiques
936
+ *
937
+ * @param {object} event
938
+ * @param {string} value
939
+ */
940
+ onSearch: _propTypes.default.func,
941
+
942
+ /**
943
+ * Fonction de callback à la pression de la touche "Entrée"
944
+ */
945
+ onSubmit: _propTypes.default.func,
946
+
947
+ /**
948
+ * Listes des options du select
949
+ */
950
+ options: _propTypes.default.array.isRequired,
951
+
952
+ /**
953
+ * Icon affiché lorsqu'un item parent n'est pas sélectionné
954
+ */
955
+ parentIcon: _propTypes.default.node,
956
+
957
+ /**
958
+ * Les items parents sont sélectionnables
959
+ */
960
+ parentItemSelectable: _propTypes.default.bool,
961
+
962
+ /**
963
+ * Item épinglé en début de liste
964
+ */
965
+ pinnedItem: _propTypes.default.object,
966
+
967
+ /**
968
+ * Placeholder affiché lorsque le select est fermé
969
+ * Surcharge le placeholder par défaut
970
+ */
971
+ placeholder: _propTypes.default.string,
972
+
973
+ /**
974
+ * Affiche un input de recherche permettant de filtrer les options
975
+ */
976
+ searchable: _propTypes.default.bool,
977
+
978
+ /**
979
+ * Si true, le contenu du select sera dans une div static plutot que dans une popper absolute
980
+ */
981
+ staticPosition: _propTypes.default.bool,
982
+
983
+ /**
984
+ * Traductions (par défaut en anglais)
985
+ */
986
+ translations: _propTypes.default.object,
987
+
988
+ /**
989
+ * Type des éléments du select, définit le rendu d'un élément
990
+ */
991
+ type: _propTypes.default.oneOf(['icon', 'text', 'image', 'primary-highlight']),
992
+
993
+ /**
994
+ * Value(s) du select
995
+ */
996
+ value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string, _propTypes.default.array])
846
997
  } : {};
847
- exports.default = (0, _styles.withStyles)(styles, { name: 'HmuiHiSelect' })(HiSelect);
998
+
999
+ var _default = (0, _styles.withStyles)(styles, {
1000
+ hiComponent: true,
1001
+ name: 'HmuiHiSelect'
1002
+ })(HiSelect);
1003
+
1004
+ exports.default = _default;