@hipay/hipay-material-ui 1.0.0-beta.18 → 1.0.0-beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (402) hide show
  1. package/HiCheckbox/HiCheckbox.js +1 -4
  2. package/HiChip/HiChip.js +4 -4
  3. package/HiChip/HiChipSwitch.js +4 -11
  4. package/HiColoredLabel/HiColoredLabel.js +3 -9
  5. package/HiDatePicker/HiDatePicker.js +30 -34
  6. package/HiDatePicker/HiDateRangePicker.js +33 -76
  7. package/HiDatePicker/HiDateRangeSelector.js +13 -33
  8. package/HiDatePicker/ListPicker.js +7 -32
  9. package/HiDatePicker/Overlays/CustomOverlayLayout.js +1 -3
  10. package/HiDatePicker/Overlays/MonthPickerOverlay.js +1 -5
  11. package/HiDatePicker/Overlays/Overlay.js +4 -22
  12. package/HiDatePicker/Overlays/YearPickerOverlay.js +1 -2
  13. package/HiDatePicker/stylesheet.js +0 -7
  14. package/HiForm/HiFormControl.js +31 -39
  15. package/HiForm/HiInput.js +18 -39
  16. package/HiForm/HiSearchField.js +2 -2
  17. package/HiForm/index.js +0 -18
  18. package/HiPins/HiPins.js +1 -0
  19. package/HiSelect/HiSelect.js +353 -400
  20. package/HiSelect/HiSelectField.js +6 -8
  21. package/HiSelect/HiSuggestSelect.js +47 -27
  22. package/HiSelect/HiSuggestSelectField.js +80 -88
  23. package/HiSelect/SelectInput.js +23 -34
  24. package/HiSelectableList/HiSelectableList.js +3 -9
  25. package/HiSelectableList/HiSelectableListItem.js +55 -96
  26. package/HiSwitch/HiSwitchState.js +1 -1
  27. package/HiSwitch/index.js +0 -6
  28. package/HiTable/BodyCellBuilder.js +97 -97
  29. package/HiTable/BodyCells/CellCountry.js +36 -11
  30. package/HiTable/BodyCells/CellIcon.js +20 -29
  31. package/HiTable/BodyCells/CellImage.js +22 -43
  32. package/HiTable/BodyCells/CellLayout.js +19 -25
  33. package/HiTable/BodyCells/CellNumeric.js +2 -7
  34. package/HiTable/BodyCells/CellSentinel.js +17 -26
  35. package/HiTable/BodyCells/CellStatus.js +2 -6
  36. package/HiTable/BodyCells/CellText.js +1 -2
  37. package/HiTable/BodyCells/CellThirdPartySecurity.js +22 -45
  38. package/HiTable/BodyRow.js +57 -78
  39. package/HiTable/ColumnFilter.js +15 -28
  40. package/HiTable/HeaderCell.js +16 -20
  41. package/HiTable/HiTable.js +11 -61
  42. package/HiTable/HiTableBody.js +14 -46
  43. package/HiTable/HiTableContextMenu.js +3 -7
  44. package/HiTable/HiTableFooterScroll.js +1 -1
  45. package/HiTable/HiTableHead.js +7 -24
  46. package/HiTable/OrderColumns.js +2 -6
  47. package/HiTopBar/HiTopBar.js +117 -37
  48. package/es/HiCheckbox/HiCheckbox.js +1 -4
  49. package/es/HiChip/HiChip.js +4 -4
  50. package/es/HiChip/HiChipSwitch.js +4 -11
  51. package/es/HiColoredLabel/HiColoredLabel.js +4 -9
  52. package/es/HiDatePicker/HiDatePicker.js +25 -30
  53. package/es/HiDatePicker/HiDateRangePicker.js +32 -72
  54. package/es/HiDatePicker/HiDateRangeSelector.js +14 -34
  55. package/es/HiDatePicker/ListPicker.js +20 -39
  56. package/es/HiDatePicker/Overlays/CustomOverlayLayout.js +1 -3
  57. package/es/HiDatePicker/Overlays/MonthPickerOverlay.js +1 -5
  58. package/es/HiDatePicker/Overlays/Overlay.js +4 -18
  59. package/es/HiDatePicker/Overlays/YearPickerOverlay.js +1 -2
  60. package/es/HiDatePicker/stylesheet.js +0 -7
  61. package/es/HiForm/HiFormControl.js +18 -32
  62. package/es/HiForm/HiInput.js +17 -34
  63. package/es/HiForm/HiSearchField.js +2 -2
  64. package/es/HiForm/index.js +1 -3
  65. package/es/HiPins/HiPins.js +1 -0
  66. package/es/HiSelect/HiSelect.js +324 -375
  67. package/es/HiSelect/HiSelectField.js +7 -9
  68. package/es/HiSelect/HiSuggestSelect.js +39 -26
  69. package/es/HiSelect/HiSuggestSelectField.js +69 -77
  70. package/es/HiSelect/SelectInput.js +23 -44
  71. package/es/HiSelectableList/HiSelectableList.js +4 -10
  72. package/es/HiSelectableList/HiSelectableListItem.js +55 -91
  73. package/es/HiSwitch/HiSwitchState.js +1 -1
  74. package/es/HiSwitch/index.js +0 -1
  75. package/es/HiTable/BodyCellBuilder.js +98 -96
  76. package/es/HiTable/BodyCells/CellCountry.js +35 -10
  77. package/es/HiTable/BodyCells/CellIcon.js +9 -18
  78. package/es/HiTable/BodyCells/CellImage.js +23 -42
  79. package/es/HiTable/BodyCells/CellLayout.js +21 -27
  80. package/es/HiTable/BodyCells/CellNumeric.js +2 -6
  81. package/es/HiTable/BodyCells/CellSentinel.js +9 -20
  82. package/es/HiTable/BodyCells/CellStatus.js +2 -6
  83. package/es/HiTable/BodyCells/CellText.js +1 -2
  84. package/es/HiTable/BodyCells/CellThirdPartySecurity.js +18 -42
  85. package/es/HiTable/BodyRow.js +56 -79
  86. package/es/HiTable/ColumnFilter.js +9 -15
  87. package/es/HiTable/HeaderCell.js +16 -20
  88. package/es/HiTable/HiTable.js +12 -59
  89. package/es/HiTable/HiTableBody.js +11 -42
  90. package/es/HiTable/HiTableContextMenu.js +3 -7
  91. package/es/HiTable/HiTableFooterScroll.js +1 -1
  92. package/es/HiTable/HiTableHead.js +7 -19
  93. package/es/HiTable/OrderColumns.js +2 -6
  94. package/es/HiTopBar/HiTopBar.js +108 -40
  95. package/es/styles/createHiMuiTheme.js +0 -11
  96. package/es/utils/hiHelpers.js +5 -6
  97. package/index.es.js +1 -1
  98. package/index.js +1 -1
  99. package/package.json +44 -45
  100. package/styles/createHiMuiTheme.js +0 -11
  101. package/umd/hipay-material-ui.development.js +43603 -87235
  102. package/umd/hipay-material-ui.production.min.js +5 -5
  103. package/utils/hiHelpers.js +4 -6
  104. package/HI-CHANGELOG.md +0 -58
  105. package/HiAlertModal/HiAlertModal.js +0 -247
  106. package/HiAlertModal/index.js +0 -16
  107. package/HiBreadcrumb/HiBreadcrumb.js +0 -149
  108. package/HiBreadcrumb/HiStep.js +0 -159
  109. package/HiBreadcrumb/HiStepConnector.js +0 -207
  110. package/HiBreadcrumb/HiStepContent.js +0 -122
  111. package/HiBreadcrumb/HiStepIcon.js +0 -191
  112. package/HiBreadcrumb/HiStepLabel.js +0 -248
  113. package/HiBreadcrumb/HiStepper.js +0 -106
  114. package/HiBreadcrumb/index.js +0 -16
  115. package/HiDotsStepper/HiDot.js +0 -151
  116. package/HiDotsStepper/HiDotsStepper.js +0 -146
  117. package/HiDotsStepper/index.js +0 -16
  118. package/HiExpansionPanel/HiExpansionPanel.js +0 -231
  119. package/HiExpansionPanel/index.js +0 -16
  120. package/HiForm/HiAddressField.js +0 -204
  121. package/HiForm/HiSlider.js +0 -399
  122. package/HiPdfReader/HiPdfReader.js +0 -282
  123. package/HiPdfReader/index.js +0 -16
  124. package/HiTable/HiTableFooter.js +0 -131
  125. package/es/HiAlertModal/HiAlertModal.js +0 -189
  126. package/es/HiAlertModal/index.js +0 -1
  127. package/es/HiBreadcrumb/HiBreadcrumb.js +0 -81
  128. package/es/HiBreadcrumb/HiStep.js +0 -94
  129. package/es/HiBreadcrumb/HiStepConnector.js +0 -143
  130. package/es/HiBreadcrumb/HiStepContent.js +0 -63
  131. package/es/HiBreadcrumb/HiStepIcon.js +0 -149
  132. package/es/HiBreadcrumb/HiStepLabel.js +0 -197
  133. package/es/HiBreadcrumb/HiStepper.js +0 -46
  134. package/es/HiBreadcrumb/index.js +0 -1
  135. package/es/HiDotsStepper/HiDot.js +0 -92
  136. package/es/HiDotsStepper/HiDotsStepper.js +0 -83
  137. package/es/HiDotsStepper/index.js +0 -1
  138. package/es/HiExpansionPanel/HiExpansionPanel.js +0 -170
  139. package/es/HiExpansionPanel/index.js +0 -1
  140. package/es/HiForm/HiAddressField.js +0 -142
  141. package/es/HiForm/HiSlider.js +0 -309
  142. package/es/HiPdfReader/HiPdfReader.js +0 -198
  143. package/es/HiPdfReader/index.js +0 -1
  144. package/es/HiTable/HiTableFooter.js +0 -74
  145. package/hmu/images/countries/ad.svg +0 -151
  146. package/hmu/images/countries/ae.svg +0 -6
  147. package/hmu/images/countries/af.svg +0 -83
  148. package/hmu/images/countries/ag.svg +0 -15
  149. package/hmu/images/countries/ai.svg +0 -767
  150. package/hmu/images/countries/al.svg +0 -5
  151. package/hmu/images/countries/am.svg +0 -5
  152. package/hmu/images/countries/ao.svg +0 -13
  153. package/hmu/images/countries/aq.svg +0 -6
  154. package/hmu/images/countries/ar.svg +0 -32
  155. package/hmu/images/countries/as.svg +0 -33
  156. package/hmu/images/countries/at.svg +0 -6
  157. package/hmu/images/countries/au.svg +0 -9
  158. package/hmu/images/countries/aw.svg +0 -186
  159. package/hmu/images/countries/ax.svg +0 -18
  160. package/hmu/images/countries/az.svg +0 -8
  161. package/hmu/images/countries/ba.svg +0 -12
  162. package/hmu/images/countries/bb.svg +0 -6
  163. package/hmu/images/countries/bd.svg +0 -4
  164. package/hmu/images/countries/be.svg +0 -7
  165. package/hmu/images/countries/bf.svg +0 -7
  166. package/hmu/images/countries/bg.svg +0 -7
  167. package/hmu/images/countries/bh.svg +0 -11
  168. package/hmu/images/countries/bi.svg +0 -15
  169. package/hmu/images/countries/bj.svg +0 -14
  170. package/hmu/images/countries/bl.svg +0 -7
  171. package/hmu/images/countries/bm.svg +0 -99
  172. package/hmu/images/countries/bn.svg +0 -36
  173. package/hmu/images/countries/bo.svg +0 -686
  174. package/hmu/images/countries/bq.svg +0 -5
  175. package/hmu/images/countries/br.svg +0 -45
  176. package/hmu/images/countries/bs.svg +0 -13
  177. package/hmu/images/countries/bt.svg +0 -89
  178. package/hmu/images/countries/bv.svg +0 -13
  179. package/hmu/images/countries/bw.svg +0 -7
  180. package/hmu/images/countries/by.svg +0 -61
  181. package/hmu/images/countries/bz.svg +0 -146
  182. package/hmu/images/countries/ca.svg +0 -4
  183. package/hmu/images/countries/cc.svg +0 -19
  184. package/hmu/images/countries/cd.svg +0 -5
  185. package/hmu/images/countries/cf.svg +0 -15
  186. package/hmu/images/countries/cg.svg +0 -12
  187. package/hmu/images/countries/ch.svg +0 -9
  188. package/hmu/images/countries/ci.svg +0 -7
  189. package/hmu/images/countries/ck.svg +0 -9
  190. package/hmu/images/countries/cl.svg +0 -13
  191. package/hmu/images/countries/cm.svg +0 -15
  192. package/hmu/images/countries/cn.svg +0 -11
  193. package/hmu/images/countries/co.svg +0 -7
  194. package/hmu/images/countries/cr.svg +0 -7
  195. package/hmu/images/countries/cu.svg +0 -13
  196. package/hmu/images/countries/cv.svg +0 -13
  197. package/hmu/images/countries/cw.svg +0 -14
  198. package/hmu/images/countries/cx.svg +0 -15
  199. package/hmu/images/countries/cy.svg +0 -6
  200. package/hmu/images/countries/cz.svg +0 -12
  201. package/hmu/images/countries/de.svg +0 -5
  202. package/hmu/images/countries/dj.svg +0 -13
  203. package/hmu/images/countries/dk.svg +0 -5
  204. package/hmu/images/countries/dm.svg +0 -152
  205. package/hmu/images/countries/do.svg +0 -6745
  206. package/hmu/images/countries/dz.svg +0 -5
  207. package/hmu/images/countries/ec.svg +0 -141
  208. package/hmu/images/countries/ee.svg +0 -7
  209. package/hmu/images/countries/eg.svg +0 -38
  210. package/hmu/images/countries/eh.svg +0 -15
  211. package/hmu/images/countries/er.svg +0 -8
  212. package/hmu/images/countries/es-ct.svg +0 -4
  213. package/hmu/images/countries/es.svg +0 -581
  214. package/hmu/images/countries/et.svg +0 -14
  215. package/hmu/images/countries/eu.svg +0 -28
  216. package/hmu/images/countries/fi.svg +0 -5
  217. package/hmu/images/countries/fj.svg +0 -124
  218. package/hmu/images/countries/fk.svg +0 -90
  219. package/hmu/images/countries/fm.svg +0 -11
  220. package/hmu/images/countries/fo.svg +0 -12
  221. package/hmu/images/countries/fr.svg +0 -7
  222. package/hmu/images/countries/ga.svg +0 -7
  223. package/hmu/images/countries/gb-eng.svg +0 -5
  224. package/hmu/images/countries/gb-nir.svg +0 -137
  225. package/hmu/images/countries/gb-sct.svg +0 -4
  226. package/hmu/images/countries/gb-wls.svg +0 -9
  227. package/hmu/images/countries/gb.svg +0 -15
  228. package/hmu/images/countries/gd.svg +0 -27
  229. package/hmu/images/countries/ge.svg +0 -6
  230. package/hmu/images/countries/gf.svg +0 -5
  231. package/hmu/images/countries/gg.svg +0 -9
  232. package/hmu/images/countries/gh.svg +0 -6
  233. package/hmu/images/countries/gi.svg +0 -33
  234. package/hmu/images/countries/gl.svg +0 -4
  235. package/hmu/images/countries/gm.svg +0 -14
  236. package/hmu/images/countries/gn.svg +0 -7
  237. package/hmu/images/countries/gp.svg +0 -7
  238. package/hmu/images/countries/gq.svg +0 -23
  239. package/hmu/images/countries/gr.svg +0 -22
  240. package/hmu/images/countries/gs.svg +0 -205
  241. package/hmu/images/countries/gt.svg +0 -204
  242. package/hmu/images/countries/gu.svg +0 -39
  243. package/hmu/images/countries/gw.svg +0 -13
  244. package/hmu/images/countries/gy.svg +0 -9
  245. package/hmu/images/countries/hk.svg +0 -32
  246. package/hmu/images/countries/hm.svg +0 -9
  247. package/hmu/images/countries/hn.svg +0 -18
  248. package/hmu/images/countries/hr.svg +0 -59
  249. package/hmu/images/countries/ht.svg +0 -122
  250. package/hmu/images/countries/hu.svg +0 -7
  251. package/hmu/images/countries/id.svg +0 -6
  252. package/hmu/images/countries/ie.svg +0 -7
  253. package/hmu/images/countries/il.svg +0 -14
  254. package/hmu/images/countries/im.svg +0 -36
  255. package/hmu/images/countries/in.svg +0 -25
  256. package/hmu/images/countries/io.svg +0 -148
  257. package/hmu/images/countries/iq.svg +0 -10
  258. package/hmu/images/countries/ir.svg +0 -219
  259. package/hmu/images/countries/is.svg +0 -12
  260. package/hmu/images/countries/it.svg +0 -7
  261. package/hmu/images/countries/je.svg +0 -32
  262. package/hmu/images/countries/jm.svg +0 -8
  263. package/hmu/images/countries/jo.svg +0 -16
  264. package/hmu/images/countries/jp.svg +0 -11
  265. package/hmu/images/countries/ke.svg +0 -23
  266. package/hmu/images/countries/kg.svg +0 -15
  267. package/hmu/images/countries/kh.svg +0 -69
  268. package/hmu/images/countries/ki.svg +0 -36
  269. package/hmu/images/countries/km.svg +0 -16
  270. package/hmu/images/countries/kn.svg +0 -14
  271. package/hmu/images/countries/kp.svg +0 -15
  272. package/hmu/images/countries/kr.svg +0 -24
  273. package/hmu/images/countries/kw.svg +0 -13
  274. package/hmu/images/countries/ky.svg +0 -63
  275. package/hmu/images/countries/kz.svg +0 -23
  276. package/hmu/images/countries/la.svg +0 -12
  277. package/hmu/images/countries/lb.svg +0 -15
  278. package/hmu/images/countries/lc.svg +0 -8
  279. package/hmu/images/countries/li.svg +0 -43
  280. package/hmu/images/countries/lk.svg +0 -22
  281. package/hmu/images/countries/lr.svg +0 -14
  282. package/hmu/images/countries/ls.svg +0 -8
  283. package/hmu/images/countries/lt.svg +0 -7
  284. package/hmu/images/countries/lu.svg +0 -5
  285. package/hmu/images/countries/lv.svg +0 -6
  286. package/hmu/images/countries/ly.svg +0 -13
  287. package/hmu/images/countries/ma.svg +0 -4
  288. package/hmu/images/countries/mc.svg +0 -6
  289. package/hmu/images/countries/md.svg +0 -72
  290. package/hmu/images/countries/me.svg +0 -118
  291. package/hmu/images/countries/mf.svg +0 -7
  292. package/hmu/images/countries/mg.svg +0 -7
  293. package/hmu/images/countries/mh.svg +0 -7
  294. package/hmu/images/countries/mk.svg +0 -5
  295. package/hmu/images/countries/ml.svg +0 -7
  296. package/hmu/images/countries/mm.svg +0 -16
  297. package/hmu/images/countries/mn.svg +0 -13
  298. package/hmu/images/countries/mo.svg +0 -9
  299. package/hmu/images/countries/mp.svg +0 -86
  300. package/hmu/images/countries/mq.svg +0 -7
  301. package/hmu/images/countries/mr.svg +0 -6
  302. package/hmu/images/countries/ms.svg +0 -39
  303. package/hmu/images/countries/mt.svg +0 -49
  304. package/hmu/images/countries/mu.svg +0 -8
  305. package/hmu/images/countries/mv.svg +0 -6
  306. package/hmu/images/countries/mw.svg +0 -10
  307. package/hmu/images/countries/mx.svg +0 -385
  308. package/hmu/images/countries/my.svg +0 -15
  309. package/hmu/images/countries/mz.svg +0 -21
  310. package/hmu/images/countries/na.svg +0 -16
  311. package/hmu/images/countries/nc.svg +0 -7
  312. package/hmu/images/countries/ne.svg +0 -6
  313. package/hmu/images/countries/nf.svg +0 -9
  314. package/hmu/images/countries/ng.svg +0 -6
  315. package/hmu/images/countries/ni.svg +0 -131
  316. package/hmu/images/countries/nl.svg +0 -7
  317. package/hmu/images/countries/no.svg +0 -7
  318. package/hmu/images/countries/np.svg +0 -14
  319. package/hmu/images/countries/nr.svg +0 -12
  320. package/hmu/images/countries/nu.svg +0 -26
  321. package/hmu/images/countries/nz.svg +0 -41
  322. package/hmu/images/countries/om.svg +0 -116
  323. package/hmu/images/countries/pa.svg +0 -14
  324. package/hmu/images/countries/pe.svg +0 -279
  325. package/hmu/images/countries/pf.svg +0 -19
  326. package/hmu/images/countries/pg.svg +0 -9
  327. package/hmu/images/countries/ph.svg +0 -28
  328. package/hmu/images/countries/pk.svg +0 -15
  329. package/hmu/images/countries/pl.svg +0 -6
  330. package/hmu/images/countries/pm.svg +0 -7
  331. package/hmu/images/countries/pn.svg +0 -62
  332. package/hmu/images/countries/pr.svg +0 -13
  333. package/hmu/images/countries/ps.svg +0 -15
  334. package/hmu/images/countries/pt.svg +0 -57
  335. package/hmu/images/countries/pw.svg +0 -11
  336. package/hmu/images/countries/py.svg +0 -157
  337. package/hmu/images/countries/qa.svg +0 -4
  338. package/hmu/images/countries/re.svg +0 -7
  339. package/hmu/images/countries/ro.svg +0 -7
  340. package/hmu/images/countries/rs.svg +0 -292
  341. package/hmu/images/countries/ru.svg +0 -7
  342. package/hmu/images/countries/rw.svg +0 -13
  343. package/hmu/images/countries/sa.svg +0 -26
  344. package/hmu/images/countries/sb.svg +0 -13
  345. package/hmu/images/countries/sc.svg +0 -14
  346. package/hmu/images/countries/sd.svg +0 -13
  347. package/hmu/images/countries/se.svg +0 -16
  348. package/hmu/images/countries/sg.svg +0 -13
  349. package/hmu/images/countries/sh.svg +0 -74
  350. package/hmu/images/countries/si.svg +0 -18
  351. package/hmu/images/countries/sj.svg +0 -7
  352. package/hmu/images/countries/sk.svg +0 -9
  353. package/hmu/images/countries/sl.svg +0 -7
  354. package/hmu/images/countries/sm.svg +0 -91
  355. package/hmu/images/countries/sn.svg +0 -8
  356. package/hmu/images/countries/so.svg +0 -11
  357. package/hmu/images/countries/sr.svg +0 -6
  358. package/hmu/images/countries/ss.svg +0 -8
  359. package/hmu/images/countries/st.svg +0 -16
  360. package/hmu/images/countries/sv.svg +0 -618
  361. package/hmu/images/countries/sx.svg +0 -56
  362. package/hmu/images/countries/sy.svg +0 -6
  363. package/hmu/images/countries/sz.svg +0 -45
  364. package/hmu/images/countries/tc.svg +0 -67
  365. package/hmu/images/countries/td.svg +0 -7
  366. package/hmu/images/countries/tf.svg +0 -15
  367. package/hmu/images/countries/tg.svg +0 -14
  368. package/hmu/images/countries/th.svg +0 -7
  369. package/hmu/images/countries/tj.svg +0 -22
  370. package/hmu/images/countries/tk.svg +0 -5
  371. package/hmu/images/countries/tl.svg +0 -13
  372. package/hmu/images/countries/tm.svg +0 -213
  373. package/hmu/images/countries/tn.svg +0 -13
  374. package/hmu/images/countries/to.svg +0 -10
  375. package/hmu/images/countries/tr.svg +0 -8
  376. package/hmu/images/countries/tt.svg +0 -5
  377. package/hmu/images/countries/tv.svg +0 -27
  378. package/hmu/images/countries/tw.svg +0 -14
  379. package/hmu/images/countries/tz.svg +0 -13
  380. package/hmu/images/countries/ua.svg +0 -6
  381. package/hmu/images/countries/ug.svg +0 -30
  382. package/hmu/images/countries/um.svg +0 -23
  383. package/hmu/images/countries/un.svg +0 -16
  384. package/hmu/images/countries/us.svg +0 -12
  385. package/hmu/images/countries/uy.svg +0 -28
  386. package/hmu/images/countries/uz.svg +0 -30
  387. package/hmu/images/countries/va.svg +0 -483
  388. package/hmu/images/countries/vc.svg +0 -8
  389. package/hmu/images/countries/ve.svg +0 -26
  390. package/hmu/images/countries/vg.svg +0 -133
  391. package/hmu/images/countries/vi.svg +0 -31
  392. package/hmu/images/countries/vn.svg +0 -11
  393. package/hmu/images/countries/vu.svg +0 -18
  394. package/hmu/images/countries/wf.svg +0 -7
  395. package/hmu/images/countries/ws.svg +0 -7
  396. package/hmu/images/countries/ye.svg +0 -7
  397. package/hmu/images/countries/yt.svg +0 -7
  398. package/hmu/images/countries/za.svg +0 -17
  399. package/hmu/images/countries/zm.svg +0 -27
  400. package/hmu/images/countries/zw.svg +0 -21
  401. package/hmu/images/hipay-white-logo.svg +0 -42
  402. package/hmu/images/logo_visa_75wx45h.gif +0 -0
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.styles = undefined;
7
7
 
8
- var _keys = require('babel-runtime/core-js/object/keys');
9
-
10
- var _keys2 = _interopRequireDefault(_keys);
11
-
12
8
  var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
13
9
 
14
10
  var _defineProperty3 = _interopRequireDefault(_defineProperty2);
15
11
 
12
+ var _keys = require('babel-runtime/core-js/object/keys');
13
+
14
+ var _keys2 = _interopRequireDefault(_keys);
15
+
16
16
  var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
17
17
 
18
18
  var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
@@ -63,6 +63,10 @@ var _ClickAwayListener = require('material-ui/utils/ClickAwayListener');
63
63
 
64
64
  var _ClickAwayListener2 = _interopRequireDefault(_ClickAwayListener);
65
65
 
66
+ var _Collapse = require('material-ui/transitions/Collapse');
67
+
68
+ var _Collapse2 = _interopRequireDefault(_Collapse);
69
+
66
70
  var _reactPopper = require('react-popper');
67
71
 
68
72
  var _mdiMaterialUi = require('mdi-material-ui');
@@ -71,6 +75,10 @@ var _HiSelectableList = require('../HiSelectableList');
71
75
 
72
76
  var _HiSelectableList2 = _interopRequireDefault(_HiSelectableList);
73
77
 
78
+ var _HiSelectableListItem = require('../HiSelectableList/HiSelectableListItem');
79
+
80
+ var _HiSelectableListItem2 = _interopRequireDefault(_HiSelectableListItem);
81
+
74
82
  var _HiForm = require('../HiForm');
75
83
 
76
84
  var _SelectInput = require('./SelectInput');
@@ -103,6 +111,7 @@ var styles = exports.styles = function styles(theme) {
103
111
  },
104
112
  popper: {
105
113
  width: '100%',
114
+ transform: 'none !important',
106
115
  zIndex: 9
107
116
  },
108
117
  paper: {
@@ -149,7 +158,249 @@ var HiSelect = function (_React$PureComponent) {
149
158
 
150
159
  var _this = (0, _possibleConstructorReturn3.default)(this, (HiSelect.__proto__ || (0, _getPrototypeOf2.default)(HiSelect)).call(this, props));
151
160
 
152
- _initialiseProps.call(_this);
161
+ _this.handleClick = function () {
162
+ document.body.style.overflow = 'hidden';
163
+ _this.setState({ open: true });
164
+ var options = _this.props.options.slice();
165
+ _this.handleSuggestions(options);
166
+
167
+ if (_this.props.onClick) {
168
+ _this.props.onClick();
169
+ }
170
+
171
+ // Gestion du focus
172
+ if (_this.searchField) {
173
+ // si searchable, focus sur le champs de recherche
174
+ var searchField = _this.searchField;
175
+ setTimeout(function () {
176
+ searchField.focus();
177
+ }, 1);
178
+ } else if (_this.overlay) {
179
+ // sinon focus sur le dernier élément selectionné
180
+ _this.focusOnSelectedItem();
181
+ }
182
+ };
183
+
184
+ _this.focusOnSelectedItem = function () {
185
+ // On récupère la div parent "overlay"
186
+ var overlay = (0, _reactDom.findDOMNode)(_this.overlay);
187
+ var multiple = _this.props.multiple;
188
+ var value = _this.props.value;
189
+ var selectedIdList = Array.isArray(value) ? value : [value];
190
+ setTimeout(function () {
191
+ var focused = false;
192
+ // Si un ou plusieurs items sont selectionnés, on focus sur le dernier
193
+ if (selectedIdList.length > 0) {
194
+ var itemSelected = overlay.querySelector('[data-id="' + selectedIdList[selectedIdList.length - 1] + '"]');
195
+ if (itemSelected && itemSelected.parentElement.tagName === 'LI') {
196
+ itemSelected.parentElement.focus();
197
+ focused = true;
198
+ }
199
+ }
200
+ // Si pas d'item selectionné, ou pas visible (en cas de recherche), focus sur le premier
201
+ if (selectedIdList.length === 0 || !focused) {
202
+ // On recupère tous les items
203
+ var items = overlay.getElementsByTagName('li');
204
+ var itemToFocus = items[0];
205
+ // Si select multiple, et qu'au moins un selectionné, focus sur le 2e item
206
+ if (multiple && selectedIdList.length > 0) {
207
+ itemToFocus = items[1];
208
+ }
209
+ itemToFocus.focus();
210
+ }
211
+ }, 1);
212
+ };
213
+
214
+ _this.handleKeyDown = function (event) {
215
+ var nextItem = void 0;
216
+ if (event.key === 'ArrowDown') {
217
+ nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'down');
218
+ } else if (event.key === 'ArrowUp') {
219
+ nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'up');
220
+ } else if (event.key === 'Tab') {
221
+ document.body.style.overflow = 'auto';
222
+ _this.setState({ open: false });
223
+ }
224
+ if (nextItem) {
225
+ nextItem.focus();
226
+ }
227
+ };
228
+
229
+ _this.handleKeyDownSearch = function (event) {
230
+ if (_this.overlay && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {
231
+ _this.focusOnSelectedItem();
232
+ }
233
+ };
234
+
235
+ _this.handleFocus = function () {
236
+ _this.setState({ focused: true });
237
+ };
238
+
239
+ _this.handleBlur = function () {
240
+ _this.setState({ focused: false });
241
+ };
242
+
243
+ _this.handleClose = function () {
244
+ document.body.style.overflow = 'auto';
245
+ _this.setState({
246
+ open: false
247
+ });
248
+
249
+ if (_this.props.onClose) {
250
+ _this.props.onClose();
251
+ }
252
+ };
253
+
254
+ _this.handleSelect = function (event, item) {
255
+ var _this$props = _this.props,
256
+ multiple = _this$props.multiple,
257
+ value = _this$props.value,
258
+ name = _this$props.name,
259
+ onChange = _this$props.onChange,
260
+ options = _this$props.options,
261
+ hierarchic = _this$props.hierarchic;
262
+ var _this$state = _this.state,
263
+ hierarchySelected = _this$state.hierarchySelected,
264
+ hierarchy = _this$state.hierarchy,
265
+ nbOptions = _this$state.nbOptions;
266
+
267
+ var hiSelected = (0, _extends3.default)({}, hierarchySelected);
268
+
269
+ if (multiple) {
270
+ var valueList = value;
271
+ if (item.id === '_all') {
272
+ if (valueList.length === nbOptions) {
273
+ valueList = [];
274
+ if (hierarchic) {
275
+ // if hierarchic select => empty associative array of selected children
276
+ (0, _keys2.default)(hiSelected).forEach(function (key) {
277
+ hiSelected[key] = [];
278
+ });
279
+ }
280
+ } else {
281
+ options.forEach(function (option) {
282
+ if (option.hasChildren !== true && !valueList.includes(option.id) && option.id !== '_all') {
283
+ valueList.push(option.id);
284
+ } else if (option.hasChildren === true) {
285
+ // if hierarchic select => fill associative array of selected children
286
+ hiSelected[option.id] = hierarchy[option.id];
287
+ }
288
+ });
289
+ }
290
+ } else if (valueList.includes(item.id) || item.hasChildren === true && hierarchySelected[item.id].length === hierarchy[item.id].length) {
291
+ // item déjà sélectionné => on le déselectionne
292
+ if (item.hasChildren !== true) {
293
+ valueList = valueList.filter(function (val) {
294
+ return val !== item.id;
295
+ });
296
+ }
297
+
298
+ if (item.hasChildren === true) {
299
+ // remove all children
300
+ valueList = valueList.filter(function (val) {
301
+ return !_this.state.hierarchy[item.id].includes(val);
302
+ });
303
+ hiSelected[item.id] = [];
304
+ } else if (item.hasOwnProperty('parentId')) {
305
+ // Si item est un enfant on l'enlève du tableau associatif des
306
+ // elmts sélectionnés
307
+ hiSelected[item.parentId].splice(hiSelected[item.parentId].indexOf(item.id), 1);
308
+ }
309
+ } else {
310
+ // item non sélectionné => on le sélectionne
311
+ if (item.hasChildren !== true) valueList.push(item.id);
312
+
313
+ if (item.hasChildren === true) {
314
+ // Si item parent => on ajoute tous les enfants
315
+ // Ou on les supprime s'ils sont déjà tous sélectionnés (dans une liste filtrée)
316
+ var idsInSuggestions = [];
317
+ _this.state.suggestions.forEach(function (suggestion) {
318
+ if (_this.state.hierarchy[item.id].includes(suggestion.id)) {
319
+ idsInSuggestions.push(suggestion.id);
320
+ }
321
+ });
322
+ // if(hierarchySelected[item.id].length > 0) {}
323
+ var allChildrenSuggestionsSelected = true;
324
+ idsInSuggestions.forEach(function (id) {
325
+ if (!hierarchySelected[item.id].includes(id)) {
326
+ allChildrenSuggestionsSelected = false;
327
+ }
328
+ });
329
+
330
+ if (allChildrenSuggestionsSelected === true) {
331
+ // On supprime les enfants car déjà tous sélectionnés
332
+ idsInSuggestions.forEach(function (id) {
333
+ valueList.splice(valueList.indexOf(id), 1);
334
+ hiSelected[item.id].splice(hiSelected[item.id].indexOf(id), 1);
335
+ });
336
+ } else {
337
+ // On ajoute tous les enfants filtrés au éléments sélectionnés
338
+ valueList = (0, _hiHelpers.arrayUnique)(valueList.concat(idsInSuggestions));
339
+ hiSelected[item.id] = (0, _hiHelpers.arrayUnique)(hiSelected[item.id].concat(idsInSuggestions));
340
+ }
341
+
342
+ _this.setState({ hierarchySelected: hiSelected });
343
+ } else if (item.hasOwnProperty('parentId')) {
344
+ // Si item est un enfant on l'ajoute du tableau associatif des
345
+ // elmts sélectionnés
346
+ hiSelected[item.parentId].push(item.id);
347
+ }
348
+ }
349
+ _this.setState({ hierarchySelected: hiSelected });
350
+ onChange(event, valueList);
351
+ } else {
352
+ onChange(event, item.id);
353
+ _this.handleClose();
354
+ }
355
+ };
356
+
357
+ _this.handleSuggestions = function (suggestions) {
358
+ var _this$props2 = _this.props,
359
+ options = _this$props2.options,
360
+ hasAll = _this$props2.hasAll,
361
+ iconAll = _this$props2.iconAll,
362
+ translations = _this$props2.translations,
363
+ multiple = _this$props2.multiple;
364
+
365
+
366
+ if (suggestions.length === 0) {
367
+ // Handle No Result
368
+ // FIX to remove all item
369
+ suggestions = [];
370
+ suggestions.push({
371
+ id: '_no_result',
372
+ type: 'text',
373
+ disabled: true,
374
+ centered: true,
375
+ checkbox: false,
376
+ label: translations.no_result_match
377
+ });
378
+ } else if (hasAll && suggestions.length > 0 && suggestions.length === options.length && multiple === true) {
379
+ // Handle 'All'
380
+ if (suggestions.filter(function (suggestion) {
381
+ return suggestion.id === '_all';
382
+ }).length === 0) {
383
+ var allItem = {
384
+ id: '_all',
385
+ icon: iconAll,
386
+ label: translations.all
387
+ };
388
+ if (iconAll !== false) {
389
+ allItem.type = 'icon';
390
+ }
391
+ suggestions.unshift(allItem);
392
+ }
393
+ }
394
+
395
+ _this.setState({
396
+ suggestions: suggestions
397
+ });
398
+ };
399
+
400
+ _this.handleRequestDelete = function (evt) {
401
+ evt.stopPropagation();
402
+ _this.props.onChange(_this.props.name, []);
403
+ };
153
404
 
154
405
  _this.state = {
155
406
  open: false,
@@ -161,30 +412,28 @@ var HiSelect = function (_React$PureComponent) {
161
412
  dynamic: false
162
413
  };
163
414
 
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;
415
+ if (props.hierarchic === true && props.options.length > 1) {
416
+ // Construct two associative arrays
417
+ // hierarchy[parentId] => children
418
+ // hierarchySelected[parentId] => selected children
419
+ var hierarchy = {};
420
+ var hierarchySelected = {};
421
+ var value = props.value || [];
422
+ if (!Array.isArray(value)) value = [props.value];
423
+ props.options.forEach(function (option) {
424
+ if (option.hasChildren === true && !hierarchy.hasOwnProperty(option.id)) {
425
+ hierarchy[option.id] = [];
426
+ hierarchySelected[option.id] = [];
427
+ } else if (option.hasOwnProperty('parentId')) {
428
+ hierarchy[option.parentId].push(option.id);
429
+ if (value.includes(option.id)) {
430
+ hierarchySelected[option.parentId].push(option.id);
431
+ }
175
432
  }
176
433
  });
177
- }
178
434
 
179
- if (!valueInOptions) {
180
- throw new Error('prop value provided does not match any option.');
181
- }
182
-
183
- if (props.hierarchic === true && props.options.length > 1) {
184
- var hierarchyTrees = _this.buildHierarchyTrees(props);
185
-
186
- _this.state.hierarchy = hierarchyTrees.hierarchy;
187
- _this.state.hierarchySelected = hierarchyTrees.hierarchySelected;
435
+ _this.state.hierarchy = hierarchy;
436
+ _this.state.hierarchySelected = hierarchySelected;
188
437
  }
189
438
 
190
439
  if (props.options.length > 0) {
@@ -203,7 +452,6 @@ var HiSelect = function (_React$PureComponent) {
203
452
  _this.handleSelect = _this.handleSelect.bind(_this);
204
453
  _this.handleClick = _this.handleClick.bind(_this);
205
454
  _this.handleClose = _this.handleClose.bind(_this);
206
- _this.handleClickAway = _this.handleClickAway.bind(_this);
207
455
  _this.handleRequestDelete = _this.handleRequestDelete.bind(_this);
208
456
  _this.handleSuggestions = _this.handleSuggestions.bind(_this);
209
457
  _this.handleFocus = _this.handleFocus.bind(_this);
@@ -224,34 +472,6 @@ var HiSelect = function (_React$PureComponent) {
224
472
  });
225
473
  this.setState({ nbOptions: optionsLength });
226
474
  }
227
-
228
- if (nextProps.hierarchic === true && nextProps.options.length > 1) {
229
- var hierarchyTrees = this.buildHierarchyTrees(nextProps);
230
- this.setState({ hierarchy: hierarchyTrees.hierarchy, hierarchySelected: hierarchyTrees.hierarchySelected });
231
- }
232
- }
233
- }, {
234
- key: 'buildHierarchyTrees',
235
- value: function buildHierarchyTrees(props) {
236
- // Construct two associative arrays
237
- // hierarchy[parentId] => children
238
- // hierarchySelected[parentId] => selected children
239
- var hierarchy = {};
240
- var hierarchySelected = {};
241
- var value = props.value || [];
242
- if (!Array.isArray(value)) value = [props.value];
243
- props.options.forEach(function (option) {
244
- if (option.hasChildren === true && !hierarchy.hasOwnProperty(option.id)) {
245
- hierarchy[option.id] = [];
246
- hierarchySelected[option.id] = [];
247
- } else if (option.hasOwnProperty('parentId')) {
248
- hierarchy[option.parentId].push(option.id);
249
- if (value.includes(option.id)) {
250
- hierarchySelected[option.parentId].push(option.id);
251
- }
252
- }
253
- });
254
- return { hierarchy: hierarchy, hierarchySelected: hierarchySelected };
255
475
  }
256
476
 
257
477
  // Key down on list items
@@ -288,12 +508,15 @@ var HiSelect = function (_React$PureComponent) {
288
508
  classes = _props.classes,
289
509
  disabled = _props.disabled,
290
510
  error = _props.error,
511
+ multiple = _props.multiple,
291
512
  options = _props.options,
292
513
  checkbox = _props.checkbox,
293
514
  searchable = _props.searchable,
294
515
  displayAsChip = _props.displayAsChip,
295
516
  type = _props.type,
296
517
  value = _props.value,
518
+ _props$hasSelectedCou = _props.hasSelectedCount,
519
+ hasSelectedCount = _props$hasSelectedCou === undefined ? multiple : _props$hasSelectedCou,
297
520
  translations = _props.translations,
298
521
  parentItemSelectable = _props.parentItemSelectable,
299
522
  icon = _props.icon,
@@ -301,9 +524,7 @@ var HiSelect = function (_React$PureComponent) {
301
524
  hoverIcon = _props.hoverIcon,
302
525
  checkedIcon = _props.checkedIcon,
303
526
  hierarchic = _props.hierarchic,
304
- id = _props.id,
305
- placeholder = _props.placeholder,
306
- staticPosition = _props.staticPosition;
527
+ id = _props.id;
307
528
  var _state = this.state,
308
529
  open = _state.open,
309
530
  suggestions = _state.suggestions,
@@ -311,13 +532,13 @@ var HiSelect = function (_React$PureComponent) {
311
532
 
312
533
 
313
534
  var display = '';
314
- var selectedIdList = Array.isArray(value) ? value : value ? [value] : [];
535
+ var selectedIdList = Array.isArray(value) ? value : [value];
315
536
 
316
537
  if (this.state.dynamic && selectedIdList.length === 1) {
317
538
  display = translations.one_item_selected.replace('%s', selectedIdList.length);
318
539
  } else if (this.state.nbOptions !== selectedIdList.length && selectedIdList.length > 1) {
319
540
  display = translations.n_items_selected.replace('%s', selectedIdList.length);
320
- } else if (this.state.nbOptions === selectedIdList.length && this.state.nbOptions >= 1) {
541
+ } else if (this.state.nbOptions === selectedIdList.length) {
321
542
  display = translations.all;
322
543
  } else if (selectedIdList.length === 1) {
323
544
  if (type !== 'icon') {
@@ -338,7 +559,7 @@ var HiSelect = function (_React$PureComponent) {
338
559
  }
339
560
 
340
561
  if (displayAsChip) {
341
- var chipFilter = _react2.default.createElement(_HiChip2.default, { label: placeholder || display, onDelete: this.handleRequestDelete });
562
+ var chipFilter = _react2.default.createElement(_HiChip2.default, { label: display, onDelete: this.handleRequestDelete });
342
563
  if (display) {
343
564
  display = chipFilter;
344
565
  }
@@ -356,50 +577,6 @@ var HiSelect = function (_React$PureComponent) {
356
577
  popperStyle = { width: this.props.containerWidth };
357
578
  }
358
579
 
359
- var content = _react2.default.createElement(
360
- _ClickAwayListener2.default,
361
- { onClickAway: this.handleClickAway },
362
- _react2.default.createElement(
363
- _Grow2.default,
364
- { 'in': open, id: 'menu-list', style: { transformOrigin: '0 0 0' } },
365
- _react2.default.createElement(
366
- _Paper2.default,
367
- { className: classes.paper },
368
- !!searchable && _react2.default.createElement(_HiForm.HiSearchField, {
369
- itemList: options,
370
- callbackFilteredList: this.handleSuggestions,
371
- filterPropertyList: ['label'],
372
- placeholder: translations.search,
373
- autoFocus: true,
374
- onSearch: this.props.onSearch,
375
- inputRef: function inputRef(el) {
376
- _this2.searchField = el;
377
- },
378
- onKeyDown: this.handleKeyDownSearch
379
- }),
380
- _react2.default.createElement(_HiSelectableList2.default, {
381
- type: type,
382
- parentItemSelectable: parentItemSelectable,
383
- itemList: suggestions,
384
- onSelect: this.handleSelect,
385
- selectedIdList: selectedIdList,
386
- checkbox: checkbox,
387
- hierarchy: this.state.hierarchy,
388
- hierarchic: hierarchic,
389
- hierarchySelected: this.state.hierarchySelected,
390
- translations: translations,
391
- icon: icon,
392
- parentIcon: parentIcon,
393
- hoverIcon: hoverIcon,
394
- checkedIcon: checkedIcon,
395
- allSelected: allSelected,
396
- value: value,
397
- onKeyDown: this.handleKeyDown
398
- })
399
- )
400
- )
401
- );
402
-
403
580
  return _react2.default.createElement(
404
581
  'div',
405
582
  {
@@ -416,7 +593,7 @@ var HiSelect = function (_React$PureComponent) {
416
593
  null,
417
594
  _react2.default.createElement(_SelectInput2.default, {
418
595
  id: id,
419
- value: placeholder || display,
596
+ value: display,
420
597
  open: open,
421
598
  focused: focused,
422
599
  type: type,
@@ -427,17 +604,10 @@ var HiSelect = function (_React$PureComponent) {
427
604
  onFocus: this.handleFocus,
428
605
  onBlur: this.handleBlur,
429
606
  onMouseEnter: this.props.onMouseEnter,
430
- onMouseLeave: this.props.onMouseLeave,
431
- refElement: function refElement(el) {
432
- _this2.selectInputElement = el;
433
- }
607
+ onMouseLeave: this.props.onMouseLeave
434
608
  })
435
609
  ),
436
- open && (staticPosition ? _react2.default.createElement(
437
- 'div',
438
- { style: popperStyle },
439
- content
440
- ) : _react2.default.createElement(
610
+ open && _react2.default.createElement(
441
611
  _reactPopper.Popper,
442
612
  {
443
613
  placement: 'bottom-start',
@@ -445,8 +615,69 @@ var HiSelect = function (_React$PureComponent) {
445
615
  className: popperClass,
446
616
  style: popperStyle
447
617
  },
448
- content
449
- ))
618
+ _react2.default.createElement(
619
+ _ClickAwayListener2.default,
620
+ { onClickAway: this.handleClose },
621
+ _react2.default.createElement(
622
+ _Grow2.default,
623
+ { 'in': open, id: 'menu-list', style: { transformOrigin: '0 0 0' } },
624
+ _react2.default.createElement(
625
+ _Paper2.default,
626
+ { className: classes.paper },
627
+ !!searchable && _react2.default.createElement(_HiForm.HiSearchField, {
628
+ itemList: options,
629
+ callbackFilteredList: this.handleSuggestions,
630
+ filterPropertyList: ['label'],
631
+ placeholder: translations.search,
632
+ autoFocus: true,
633
+ onSearch: this.props.onSearch,
634
+ inputRef: function inputRef(el) {
635
+ _this2.searchField = el;
636
+ },
637
+ onKeyDown: this.handleKeyDownSearch
638
+ }),
639
+ !!hasSelectedCount && _react2.default.createElement(
640
+ _Collapse2.default,
641
+ {
642
+ 'in': selectedIdList.length > 0,
643
+ timeout: 'auto',
644
+ unmountOnExit: true
645
+ },
646
+ _react2.default.createElement(_HiSelectableListItem2.default, {
647
+ key: '_selected_count',
648
+ item: {
649
+ id: '_selected_count',
650
+ type: 'text',
651
+ disabled: true,
652
+ checkbox: false,
653
+ label: selectedIdList.length < 2 ? translations.one_item_selected.replace('%s', selectedIdList.length) : translations.n_items_selected.replace('%s', selectedIdList.length),
654
+ centered: true
655
+ }
656
+ })
657
+ ),
658
+ _react2.default.createElement(_HiSelectableList2.default, {
659
+ type: type,
660
+ parentItemSelectable: parentItemSelectable,
661
+ itemList: suggestions,
662
+ onSelect: this.handleSelect,
663
+ selectedIdList: selectedIdList,
664
+ checkbox: checkbox,
665
+ hierarchy: this.state.hierarchy,
666
+ hierarchic: hierarchic,
667
+ hierarchySelected: this.state.hierarchySelected,
668
+ translations: translations,
669
+ icon: icon,
670
+ parentIcon: parentIcon,
671
+ hoverIcon: hoverIcon,
672
+ checkedIcon: checkedIcon,
673
+ allSelected: allSelected,
674
+ value: value,
675
+ onKeyDown: this.handleKeyDown
676
+ })
677
+ )
678
+ )
679
+ )
680
+ )
450
681
  )
451
682
  );
452
683
  }
@@ -478,280 +709,8 @@ HiSelect.defaultProps = {
478
709
  one_item_selected: '%s item selected',
479
710
  n_children: '%s items',
480
711
  one_child: '%s item'
481
- },
482
- staticPosition: false
483
- };
484
-
485
- var _initialiseProps = function _initialiseProps() {
486
- var _this3 = this;
487
-
488
- this.handleClick = function () {
489
- if (_this3.state.open) {
490
- _this3.handleClose();
491
- } else {
492
- if (!_this3.props.staticPosition) {
493
- document.body.style.overflow = 'hidden';
494
- }
495
- _this3.setState({ open: true });
496
- var options = _this3.props.options.slice();
497
- _this3.handleSuggestions(options);
498
-
499
- if (_this3.props.onClick) {
500
- _this3.props.onClick();
501
- }
502
-
503
- // Gestion du focus
504
- if (_this3.searchField) {
505
- // si searchable, focus sur le champs de recherche
506
- var searchField = _this3.searchField;
507
- setTimeout(function () {
508
- searchField.focus();
509
- }, 1);
510
- } else if (_this3.overlay) {
511
- // sinon focus sur le dernier élément selectionné
512
- _this3.focusOnSelectedItem();
513
- }
514
- }
515
- };
516
-
517
- this.focusOnSelectedItem = function () {
518
- // On récupère la div parent "overlay"
519
- var overlay = (0, _reactDom.findDOMNode)(_this3.overlay);
520
- var multiple = _this3.props.multiple;
521
- var value = _this3.props.value;
522
- var selectedIdList = Array.isArray(value) ? value : [value];
523
- setTimeout(function () {
524
- var focused = false;
525
- // Si un ou plusieurs items sont selectionnés, on focus sur le dernier
526
- if (selectedIdList.length > 0) {
527
- var itemSelected = overlay.querySelector('[data-id="' + selectedIdList[selectedIdList.length - 1] + '"]');
528
- if (itemSelected && itemSelected.parentElement.tagName === 'LI') {
529
- itemSelected.parentElement.focus();
530
- focused = true;
531
- }
532
- }
533
- // Si pas d'item selectionné, ou pas visible (en cas de recherche), focus sur le premier
534
- if (selectedIdList.length === 0 || !focused) {
535
- // On recupère tous les items
536
- var items = overlay.getElementsByTagName('li');
537
- var itemToFocus = items[0];
538
- // Si select multiple, et qu'au moins un selectionné, focus sur le 2e item
539
- if (multiple && selectedIdList.length > 0) {
540
- itemToFocus = items[1];
541
- }
542
- if (itemToFocus) {
543
- itemToFocus.focus();
544
- }
545
- }
546
- }, 1);
547
- };
548
-
549
- this.handleKeyDown = function (event) {
550
- var nextItem = void 0;
551
- if (event.key === 'ArrowDown') {
552
- nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'down');
553
- } else if (event.key === 'ArrowUp') {
554
- nextItem = (0, _hiHelpers.getNextItemSelectable)(document.activeElement, 'up');
555
- } else if (event.key === 'Tab') {
556
- if (!_this3.props.staticPosition) {
557
- document.body.style.overflow = 'auto';
558
- }
559
- _this3.setState({ open: false });
560
- }
561
- if (nextItem) {
562
- nextItem.focus();
563
- }
564
- };
565
-
566
- this.handleKeyDownSearch = function (event) {
567
- if (_this3.overlay && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {
568
- _this3.focusOnSelectedItem();
569
- }
570
- };
571
-
572
- this.handleFocus = function () {
573
- _this3.setState({ focused: true });
574
- };
575
-
576
- this.handleBlur = function () {
577
- _this3.setState({ focused: false });
578
- };
579
-
580
- this.handleClose = function () {
581
- if (!_this3.props.staticPosition) {
582
- document.body.style.overflow = 'auto';
583
- }
584
- _this3.setState({
585
- open: false
586
- });
587
-
588
- if (_this3.props.onClose) {
589
- _this3.props.onClose();
590
- }
591
- if (_this3.selectInputElement) {
592
- _this3.selectInputElement.focus();
593
- }
594
- };
595
-
596
- this.handleClickAway = function (event) {
597
- // Au clic sur le bouton, on laisse le handleClick fermer le select
598
- if (!_this3.selectInputElement.contains(event.target)) {
599
- _this3.handleClose(event);
600
- }
601
- };
602
-
603
- this.handleSelect = function (event, item) {
604
- var _props2 = _this3.props,
605
- multiple = _props2.multiple,
606
- value = _props2.value,
607
- name = _props2.name,
608
- onChange = _props2.onChange,
609
- options = _props2.options,
610
- hierarchic = _props2.hierarchic;
611
- var _state2 = _this3.state,
612
- hierarchySelected = _state2.hierarchySelected,
613
- hierarchy = _state2.hierarchy,
614
- nbOptions = _state2.nbOptions;
615
-
616
- var hiSelected = (0, _extends3.default)({}, hierarchySelected);
617
-
618
- if (multiple) {
619
- var valueList = value;
620
- if (item.id === '_all') {
621
- if (valueList.length === nbOptions) {
622
- valueList = [];
623
- if (hierarchic) {
624
- // if hierarchic select => empty associative array of selected children
625
- (0, _keys2.default)(hiSelected).forEach(function (key) {
626
- hiSelected[key] = [];
627
- });
628
- }
629
- } else {
630
- options.forEach(function (option) {
631
- if (option.hasChildren !== true && !valueList.includes(option.id) && option.id !== '_all') {
632
- valueList.push(option.id);
633
- } else if (option.hasChildren === true) {
634
- // if hierarchic select => fill associative array of selected children
635
- hiSelected[option.id] = hierarchy[option.id];
636
- }
637
- });
638
- }
639
- } else if (valueList.includes(item.id) || item.hasChildren === true && hierarchySelected[item.id].length === hierarchy[item.id].length) {
640
- // item déjà sélectionné => on le déselectionne
641
- if (item.hasChildren !== true) {
642
- valueList = valueList.filter(function (val) {
643
- return val !== item.id;
644
- });
645
- }
646
-
647
- if (item.hasChildren === true) {
648
- // remove all children
649
- valueList = valueList.filter(function (val) {
650
- return !_this3.state.hierarchy[item.id].includes(val);
651
- });
652
- hiSelected[item.id] = [];
653
- } else if (item.hasOwnProperty('parentId')) {
654
- // Si item est un enfant on l'enlève du tableau associatif des
655
- // elmts sélectionnés
656
- hiSelected[item.parentId].splice(hiSelected[item.parentId].indexOf(item.id), 1);
657
- }
658
- } else {
659
- // item non sélectionné => on le sélectionne
660
- if (item.hasChildren !== true) valueList.push(item.id);
661
-
662
- if (item.hasChildren === true) {
663
- // Si item parent => on ajoute tous les enfants
664
- // Ou on les supprime s'ils sont déjà tous sélectionnés (dans une liste filtrée)
665
- var idsInSuggestions = [];
666
- _this3.state.suggestions.forEach(function (suggestion) {
667
- if (_this3.state.hierarchy[item.id].includes(suggestion.id)) {
668
- idsInSuggestions.push(suggestion.id);
669
- }
670
- });
671
- // if(hierarchySelected[item.id].length > 0) {}
672
- var allChildrenSuggestionsSelected = true;
673
- idsInSuggestions.forEach(function (id) {
674
- if (!hierarchySelected[item.id].includes(id)) {
675
- allChildrenSuggestionsSelected = false;
676
- }
677
- });
678
-
679
- if (allChildrenSuggestionsSelected === true) {
680
- // On supprime les enfants car déjà tous sélectionnés
681
- idsInSuggestions.forEach(function (id) {
682
- valueList.splice(valueList.indexOf(id), 1);
683
- hiSelected[item.id].splice(hiSelected[item.id].indexOf(id), 1);
684
- });
685
- } else {
686
- // On ajoute tous les enfants filtrés au éléments sélectionnés
687
- valueList = (0, _hiHelpers.arrayUnique)(valueList.concat(idsInSuggestions));
688
- hiSelected[item.id] = (0, _hiHelpers.arrayUnique)(hiSelected[item.id].concat(idsInSuggestions));
689
- }
690
-
691
- _this3.setState({ hierarchySelected: hiSelected });
692
- } else if (item.hasOwnProperty('parentId')) {
693
- // Si item est un enfant on l'ajoute du tableau associatif des
694
- // elmts sélectionnés
695
- hiSelected[item.parentId].push(item.id);
696
- }
697
- }
698
- _this3.setState({ hierarchySelected: hiSelected });
699
- onChange(event, valueList);
700
- } else {
701
- onChange(event, item.id);
702
- _this3.handleClose();
703
- }
704
- };
705
-
706
- this.handleSuggestions = function (suggestions) {
707
- var _props3 = _this3.props,
708
- options = _props3.options,
709
- hasAll = _props3.hasAll,
710
- iconAll = _props3.iconAll,
711
- translations = _props3.translations,
712
- multiple = _props3.multiple;
713
-
714
-
715
- if (suggestions.length === 0) {
716
- // Handle No Result
717
- // FIX to remove all item
718
- suggestions = [];
719
- suggestions.push({
720
- id: '_no_result',
721
- type: 'text',
722
- disabled: true,
723
- centered: true,
724
- checkbox: false,
725
- label: translations.no_result_match
726
- });
727
- } else if (hasAll && suggestions.length > 0 && suggestions.length === options.length && multiple === true) {
728
- // Handle 'All'
729
- if (suggestions.filter(function (suggestion) {
730
- return suggestion.id === '_all';
731
- }).length === 0) {
732
- var allItem = {
733
- id: '_all',
734
- icon: iconAll,
735
- label: translations.all
736
- };
737
- if (iconAll !== false) {
738
- allItem.type = 'icon';
739
- }
740
- suggestions.unshift(allItem);
741
- }
742
- }
743
-
744
- _this3.setState({
745
- suggestions: suggestions
746
- });
747
- };
748
-
749
- this.handleRequestDelete = function (evt) {
750
- evt.stopPropagation();
751
- _this3.props.onChange(_this3.props.name, []);
752
- };
712
+ }
753
713
  };
754
-
755
714
  HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
756
715
  /**
757
716
  * Affiche une checkbox pour chaque éléments, par défaut si options est nested
@@ -781,6 +740,10 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
781
740
  * Affiche l'élément 'All'
782
741
  */
783
742
  hasAll: _propTypes2.default.bool,
743
+ /**
744
+ * Affiche le compte d'éléments sélectionnés en haut de la liste
745
+ */
746
+ hasSelectedCount: _propTypes2.default.bool,
784
747
  /**
785
748
  * Les items sont hiérarchisés
786
749
  */
@@ -832,7 +795,6 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
832
795
  * Fonction de callback appelée lorsqu'on écrit dans la barre de recherche
833
796
  * A utiliser pour les selects avec des données dynamiques
834
797
  *
835
- * @param {object} event
836
798
  * @param {string} value
837
799
  */
838
800
  onSearch: _propTypes2.default.func,
@@ -848,19 +810,10 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
848
810
  * Les items parents sont sélectionnables
849
811
  */
850
812
  parentItemSelectable: _propTypes2.default.bool,
851
- /**
852
- * Placeholder affiché lorsque le select est fermé
853
- * Surcharge le placeholder par défaut
854
- */
855
- placeholder: _propTypes2.default.string,
856
813
  /**
857
814
  * Affiche un input de recherche permettant de filtrer les options
858
815
  */
859
816
  searchable: _propTypes2.default.bool,
860
- /**
861
- * Si true, le contenu du select sera dans une div static plutot que dans une popper absolute
862
- */
863
- staticPosition: _propTypes2.default.bool,
864
817
  /**
865
818
  * Traductions (par défaut en anglais)
866
819
  */