linear-react-components-ui 0.4.77-beta.23 → 0.4.77-beta.26

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 (587) hide show
  1. package/.eslintrc.json +99 -0
  2. package/.gitlab-ci.yml +19 -0
  3. package/.husky/pre-push +4 -0
  4. package/.vscode/launch.json +15 -0
  5. package/.vscode/settings.json +5 -3
  6. package/babel.config.json +11 -0
  7. package/config/getHttpsConfig.js +56 -0
  8. package/config/paths.js +140 -0
  9. package/config/webpackDevServer.config.js +128 -0
  10. package/dist/main.js +14 -0
  11. package/jest.config.js +3 -3
  12. package/lib/@types/Align.d.ts +3 -0
  13. package/lib/@types/Align.js +5 -0
  14. package/lib/@types/ButtonTypes.d.ts +3 -0
  15. package/lib/@types/ButtonTypes.js +5 -0
  16. package/lib/@types/ColorStyles.d.ts +3 -0
  17. package/lib/@types/ColorStyles.js +5 -0
  18. package/lib/@types/DataCombo.d.ts +3 -0
  19. package/lib/@types/DataCombo.js +5 -0
  20. package/lib/@types/Icon.d.ts +5 -0
  21. package/lib/@types/Icon.js +5 -0
  22. package/lib/@types/LabelStyles.d.ts +3 -0
  23. package/lib/@types/LabelStyles.js +5 -0
  24. package/lib/@types/Period.d.ts +6 -0
  25. package/lib/@types/Period.js +5 -0
  26. package/lib/@types/PermissionAttr.d.ts +14 -0
  27. package/lib/@types/PermissionAttr.js +5 -0
  28. package/lib/@types/PointerEvents.d.ts +3 -0
  29. package/lib/@types/PointerEvents.js +5 -0
  30. package/lib/@types/Position.d.ts +3 -0
  31. package/lib/@types/Position.js +5 -0
  32. package/lib/@types/PositionAlert.d.ts +3 -0
  33. package/lib/@types/PositionAlert.js +5 -0
  34. package/lib/@types/Size.d.ts +3 -0
  35. package/lib/@types/Size.js +5 -0
  36. package/lib/@types/SizePixels.d.ts +3 -0
  37. package/lib/@types/SizePixels.js +5 -0
  38. package/lib/@types/StorageMock.d.ts +5 -0
  39. package/lib/@types/StorageMock.js +5 -0
  40. package/lib/alerts/AlertContainer.d.ts +16 -0
  41. package/lib/alerts/AlertContainer.js +28 -26
  42. package/lib/alerts/AlertProvider.d.ts +7 -0
  43. package/lib/alerts/AlertProvider.js +30 -25
  44. package/lib/alerts/BaseAlert.d.ts +7 -0
  45. package/lib/alerts/BaseAlert.js +22 -15
  46. package/lib/alerts/Message.d.ts +7 -0
  47. package/lib/alerts/Message.js +41 -50
  48. package/lib/alerts/alert.spec.js +36 -59
  49. package/lib/alerts/helpers.d.ts +7 -0
  50. package/lib/alerts/helpers.js +4 -7
  51. package/lib/alerts/index.d.ts +6 -0
  52. package/lib/alerts/index.js +6 -6
  53. package/lib/alerts/types.d.ts +48 -0
  54. package/lib/alerts/types.js +5 -0
  55. package/lib/alerts/withAlert.d.ts +7 -0
  56. package/lib/alerts/withAlert.js +10 -10
  57. package/lib/assets/styles/commons.scss +0 -10
  58. package/lib/assets/styles/dropdown.scss +0 -1
  59. package/lib/assets/styles/list.scss +0 -8
  60. package/lib/assets/styles/table.scss +7 -2
  61. package/lib/assets/styles/treetable.scss +10 -12
  62. package/lib/avatar/avatar.spec.js +63 -95
  63. package/lib/avatar/index.d.ts +12 -0
  64. package/lib/avatar/index.js +24 -69
  65. package/lib/avatar/types.d.ts +31 -0
  66. package/lib/avatar/types.js +5 -0
  67. package/lib/badge/badge.spec.js +33 -55
  68. package/lib/badge/index.d.ts +6 -0
  69. package/lib/badge/index.js +12 -28
  70. package/lib/badge/types.d.ts +13 -0
  71. package/lib/badge/types.js +5 -0
  72. package/lib/buttons/ActivateButton.d.ts +9 -0
  73. package/lib/buttons/ActivateButton.js +8 -8
  74. package/lib/buttons/AddButton.d.ts +9 -0
  75. package/lib/buttons/AddButton.js +8 -8
  76. package/lib/buttons/Button.d.ts +12 -0
  77. package/lib/buttons/Button.js +22 -14
  78. package/lib/buttons/ButtonGroups.d.ts +8 -0
  79. package/lib/buttons/ButtonGroups.js +4 -9
  80. package/lib/buttons/CancelButton.d.ts +9 -0
  81. package/lib/buttons/CancelButton.js +20 -7
  82. package/lib/buttons/DangerButton.d.ts +9 -0
  83. package/lib/buttons/DangerButton.js +18 -23
  84. package/lib/buttons/DefaultButton.d.ts +12 -0
  85. package/lib/buttons/DefaultButton.js +90 -142
  86. package/lib/buttons/DestroyButton.d.ts +9 -0
  87. package/lib/buttons/DestroyButton.js +18 -9
  88. package/lib/buttons/EditButton.d.ts +9 -0
  89. package/lib/buttons/EditButton.js +8 -8
  90. package/lib/buttons/InactivateButton.d.ts +9 -0
  91. package/lib/buttons/InactivateButton.js +8 -8
  92. package/lib/buttons/InfoButton.d.ts +9 -0
  93. package/lib/buttons/InfoButton.js +18 -23
  94. package/lib/buttons/PrimaryButton.d.ts +9 -0
  95. package/lib/buttons/PrimaryButton.js +18 -23
  96. package/lib/buttons/RestoreButton.d.ts +9 -0
  97. package/lib/buttons/RestoreButton.js +8 -8
  98. package/lib/buttons/SaveButton.d.ts +9 -0
  99. package/lib/buttons/SaveButton.js +19 -6
  100. package/lib/buttons/SpinnerLoading.js +2 -2
  101. package/lib/buttons/SuccessButton.d.ts +9 -0
  102. package/lib/buttons/SuccessButton.js +17 -22
  103. package/lib/buttons/WarningButton.d.ts +9 -0
  104. package/lib/buttons/WarningButton.js +17 -22
  105. package/lib/buttons/button_container/index.d.ts +12 -0
  106. package/lib/buttons/button_container/index.js +12 -25
  107. package/lib/buttons/buttons.spec.js +184 -258
  108. package/lib/buttons/index.d.ts +21 -0
  109. package/lib/buttons/index.js +33 -33
  110. package/lib/buttons/split_button/index.d.ts +9 -0
  111. package/lib/buttons/split_button/index.js +20 -37
  112. package/lib/buttons/types.d.ts +44 -0
  113. package/lib/buttons/types.js +5 -0
  114. package/lib/calendar/DangerCalendar.d.ts +7 -0
  115. package/lib/calendar/DangerCalendar.js +17 -8
  116. package/lib/calendar/InfoCalendar.d.ts +7 -0
  117. package/lib/calendar/InfoCalendar.js +17 -8
  118. package/lib/calendar/PrimaryCalendar.d.ts +7 -0
  119. package/lib/calendar/PrimaryCalendar.js +17 -8
  120. package/lib/calendar/SuccessCalendar.d.ts +7 -0
  121. package/lib/calendar/SuccessCalendar.js +17 -8
  122. package/lib/calendar/WarningCalendar.d.ts +7 -0
  123. package/lib/calendar/WarningCalendar.js +17 -8
  124. package/lib/calendar/base/Day.d.ts +7 -0
  125. package/lib/calendar/base/Day.js +9 -15
  126. package/lib/calendar/base/Month.d.ts +7 -0
  127. package/lib/calendar/base/Month.js +19 -14
  128. package/lib/calendar/base/Week.d.ts +7 -0
  129. package/lib/calendar/base/Week.js +19 -15
  130. package/lib/calendar/base/helpers.d.ts +62 -0
  131. package/lib/calendar/base/helpers.js +16 -16
  132. package/lib/calendar/base/index.d.ts +7 -0
  133. package/lib/calendar/base/index.js +58 -51
  134. package/lib/calendar/calendar.spec.js +44 -75
  135. package/lib/calendar/index.d.ts +10 -0
  136. package/lib/calendar/index.js +15 -15
  137. package/lib/calendar/types.d.ts +25 -0
  138. package/lib/calendar/types.js +5 -0
  139. package/lib/checkbox/Label.d.ts +11 -0
  140. package/lib/checkbox/Label.js +8 -18
  141. package/lib/checkbox/checkbox.spec.js +43 -84
  142. package/lib/checkbox/index.d.ts +13 -0
  143. package/lib/checkbox/index.js +68 -95
  144. package/lib/checkbox/types.d.ts +42 -0
  145. package/lib/checkbox/types.js +5 -0
  146. package/lib/dialog/Alert.d.ts +6 -0
  147. package/lib/dialog/Alert.js +11 -16
  148. package/lib/dialog/Custom.d.ts +6 -0
  149. package/lib/dialog/Custom.js +28 -36
  150. package/lib/dialog/Error.d.ts +6 -0
  151. package/lib/dialog/Error.js +9 -14
  152. package/lib/dialog/Information.d.ts +6 -0
  153. package/lib/dialog/Information.js +9 -14
  154. package/lib/dialog/Question.d.ts +6 -0
  155. package/lib/dialog/Question.js +16 -27
  156. package/lib/dialog/Warning.d.ts +6 -0
  157. package/lib/dialog/Warning.js +9 -14
  158. package/lib/dialog/base/Content.d.ts +6 -0
  159. package/lib/dialog/base/Content.js +5 -14
  160. package/lib/dialog/base/Footer.d.ts +6 -0
  161. package/lib/dialog/base/Footer.js +6 -12
  162. package/lib/dialog/base/Header.d.ts +6 -0
  163. package/lib/dialog/base/Header.js +17 -31
  164. package/lib/dialog/base/index.d.ts +6 -0
  165. package/lib/dialog/base/index.js +14 -36
  166. package/lib/dialog/base/style.js +2 -2
  167. package/lib/dialog/dialog.spec.js +95 -169
  168. package/lib/dialog/form/index.d.ts +6 -0
  169. package/lib/dialog/form/index.js +37 -47
  170. package/lib/dialog/index.d.ts +10 -0
  171. package/lib/dialog/index.js +16 -16
  172. package/lib/dialog/types.d.ts +68 -0
  173. package/lib/dialog/types.js +5 -0
  174. package/lib/drawer/Content.d.ts +7 -0
  175. package/lib/drawer/Content.js +8 -17
  176. package/lib/drawer/Drawer.d.ts +7 -0
  177. package/lib/drawer/Drawer.js +51 -62
  178. package/lib/drawer/Drawer.spec.js +62 -105
  179. package/lib/drawer/Header.d.ts +7 -0
  180. package/lib/drawer/Header.js +29 -48
  181. package/lib/drawer/helpers.d.ts +7 -0
  182. package/lib/drawer/helpers.js +5 -5
  183. package/lib/drawer/index.d.ts +9 -0
  184. package/lib/drawer/index.js +9 -9
  185. package/lib/drawer/types.d.ts +34 -0
  186. package/lib/drawer/types.js +5 -0
  187. package/lib/dropdown/Popup.d.ts +6 -0
  188. package/lib/dropdown/Popup.js +37 -21
  189. package/lib/dropdown/dropdown.spec.js +41 -65
  190. package/lib/dropdown/helper.d.ts +4 -0
  191. package/lib/dropdown/helper.js +2 -2
  192. package/lib/dropdown/types.d.ts +43 -0
  193. package/lib/dropdown/types.js +5 -0
  194. package/lib/dropdown/withDropdown.d.ts +10 -0
  195. package/lib/dropdown/withDropdown.js +37 -52
  196. package/lib/fieldset/fieldset.spec.js +80 -126
  197. package/lib/fieldset/index.d.ts +8 -0
  198. package/lib/fieldset/index.js +35 -56
  199. package/lib/fieldset/types.d.ts +28 -0
  200. package/lib/fieldset/types.js +5 -0
  201. package/lib/form/Field.d.ts +6 -0
  202. package/lib/form/Field.js +37 -54
  203. package/lib/form/FieldArray.d.ts +6 -0
  204. package/lib/form/FieldArray.js +31 -61
  205. package/lib/form/FieldNumber.d.ts +6 -0
  206. package/lib/form/FieldNumber.js +11 -35
  207. package/lib/form/FieldPeriod.d.ts +6 -0
  208. package/lib/form/FieldPeriod.js +31 -53
  209. package/lib/form/form.spec.js +63 -105
  210. package/lib/form/helpers.d.ts +11 -0
  211. package/lib/form/helpers.js +26 -21
  212. package/lib/form/index.d.ts +9 -0
  213. package/lib/form/index.js +100 -118
  214. package/lib/form/types.d.ts +168 -0
  215. package/lib/form/types.js +5 -0
  216. package/lib/form/withFieldHOC.d.ts +6 -0
  217. package/lib/form/withFieldHOC.js +51 -125
  218. package/lib/form/withFormSecurity.d.ts +7 -0
  219. package/lib/form/withFormSecurity.js +31 -39
  220. package/lib/gridlayout/GridCol.d.ts +6 -0
  221. package/lib/gridlayout/GridCol.js +8 -23
  222. package/lib/gridlayout/GridRow.d.ts +6 -0
  223. package/lib/gridlayout/GridRow.js +9 -29
  224. package/lib/gridlayout/gridLayout.spec.js +47 -74
  225. package/lib/gridlayout/index.d.ts +5 -0
  226. package/lib/gridlayout/index.js +6 -6
  227. package/lib/gridlayout/types.d.ts +20 -0
  228. package/lib/gridlayout/types.js +5 -0
  229. package/lib/icons/helper.d.ts +560 -0
  230. package/lib/icons/helper.js +560 -563
  231. package/lib/icons/icons.spec.js +29 -45
  232. package/lib/icons/index.d.ts +8 -0
  233. package/lib/icons/index.js +29 -46
  234. package/lib/icons/types.d.ts +28 -0
  235. package/lib/icons/types.js +5 -0
  236. package/lib/index.d.ts +35 -0
  237. package/lib/index.js +18 -18
  238. package/lib/inputs/base/InputTextBase.d.ts +8 -0
  239. package/lib/inputs/base/InputTextBase.js +58 -157
  240. package/lib/inputs/base/base.spec.js +187 -302
  241. package/lib/inputs/base/helpers.d.ts +14 -0
  242. package/lib/inputs/base/helpers.js +11 -11
  243. package/lib/inputs/base/types.d.ts +68 -0
  244. package/lib/inputs/base/types.js +5 -0
  245. package/lib/inputs/color/color_input.spec.js +37 -71
  246. package/lib/inputs/color/index.d.ts +7 -0
  247. package/lib/inputs/color/index.js +55 -43
  248. package/lib/inputs/color/types.d.ts +14 -0
  249. package/lib/inputs/color/types.js +5 -0
  250. package/lib/inputs/date/Dialog.d.ts +10 -0
  251. package/lib/inputs/date/Dialog.js +5 -12
  252. package/lib/inputs/date/Dropdown.d.ts +10 -0
  253. package/lib/inputs/date/Dropdown.js +21 -63
  254. package/lib/inputs/date/date.spec.js +79 -160
  255. package/lib/inputs/date/helpers.d.ts +14 -0
  256. package/lib/inputs/date/helpers.js +6 -6
  257. package/lib/inputs/date/index.d.ts +10 -0
  258. package/lib/inputs/date/index.js +265 -415
  259. package/lib/inputs/date/types.d.ts +53 -0
  260. package/lib/inputs/date/types.js +5 -0
  261. package/lib/inputs/inputHOC.d.ts +11 -0
  262. package/lib/inputs/inputHOC.js +53 -99
  263. package/lib/inputs/mask/BaseMask.d.ts +12 -0
  264. package/lib/inputs/mask/BaseMask.js +14 -25
  265. package/lib/inputs/mask/Cnpj.d.ts +12 -0
  266. package/lib/inputs/mask/Cnpj.js +32 -29
  267. package/lib/inputs/mask/Cpf.d.ts +12 -0
  268. package/lib/inputs/mask/Cpf.js +33 -31
  269. package/lib/inputs/mask/Phone.d.ts +9 -0
  270. package/lib/inputs/mask/Phone.js +7 -15
  271. package/lib/inputs/mask/ZipCode.d.ts +9 -0
  272. package/lib/inputs/mask/ZipCode.js +7 -7
  273. package/lib/inputs/mask/helpers.d.ts +14 -0
  274. package/lib/inputs/mask/helpers.js +25 -40
  275. package/lib/inputs/mask/imaskHOC.d.ts +14 -0
  276. package/lib/inputs/mask/imaskHOC.js +189 -251
  277. package/lib/inputs/mask/index.d.ts +11 -0
  278. package/lib/inputs/mask/index.js +11 -11
  279. package/lib/inputs/mask/input_mask.spec.js +193 -306
  280. package/lib/inputs/mask/types.d.ts +66 -0
  281. package/lib/inputs/mask/types.js +5 -0
  282. package/lib/inputs/multiSelect/ActionButtons.d.ts +10 -0
  283. package/lib/inputs/multiSelect/ActionButtons.js +10 -22
  284. package/lib/inputs/multiSelect/Dropdown.d.ts +10 -0
  285. package/lib/inputs/multiSelect/Dropdown.js +76 -93
  286. package/lib/inputs/multiSelect/helper.d.ts +9 -0
  287. package/lib/inputs/multiSelect/helper.js +2 -2
  288. package/lib/inputs/multiSelect/index.d.ts +10 -0
  289. package/lib/inputs/multiSelect/index.js +107 -107
  290. package/lib/inputs/multiSelect/types.d.ts +49 -0
  291. package/lib/inputs/multiSelect/types.js +5 -0
  292. package/lib/inputs/number/BaseNumber.d.ts +12 -0
  293. package/lib/inputs/number/BaseNumber.js +17 -29
  294. package/lib/inputs/number/Currency.d.ts +12 -0
  295. package/lib/inputs/number/Currency.js +10 -20
  296. package/lib/inputs/number/Decimal.d.ts +12 -0
  297. package/lib/inputs/number/Decimal.js +5 -5
  298. package/lib/inputs/number/format_number.d.ts +4 -0
  299. package/lib/inputs/number/format_number.js +1 -1
  300. package/lib/inputs/number/index.d.ts +14 -0
  301. package/lib/inputs/number/index.js +16 -22
  302. package/lib/inputs/number/numberfield.spec.js +47 -88
  303. package/lib/inputs/number/types.d.ts +30 -0
  304. package/lib/inputs/number/types.js +5 -0
  305. package/lib/inputs/period/Dialog.d.ts +11 -0
  306. package/lib/inputs/period/Dialog.js +5 -12
  307. package/lib/inputs/period/Dropdown.d.ts +11 -0
  308. package/lib/inputs/period/Dropdown.js +19 -63
  309. package/lib/inputs/period/PeriodList.d.ts +11 -0
  310. package/lib/inputs/period/PeriodList.js +12 -25
  311. package/lib/inputs/period/helper.d.ts +19 -0
  312. package/lib/inputs/period/helper.js +34 -74
  313. package/lib/inputs/period/index.d.ts +11 -0
  314. package/lib/inputs/period/index.js +158 -198
  315. package/lib/inputs/period/types.d.ts +58 -0
  316. package/lib/inputs/period/types.js +5 -0
  317. package/lib/inputs/search/index.d.ts +11 -0
  318. package/lib/inputs/search/index.js +147 -263
  319. package/lib/inputs/search/search_input.spec.js +50 -90
  320. package/lib/inputs/select/ActionButtons.d.ts +11 -0
  321. package/lib/inputs/select/ActionButtons.js +20 -26
  322. package/lib/inputs/select/Dropdown.d.ts +11 -0
  323. package/lib/inputs/select/Dropdown.js +59 -82
  324. package/lib/inputs/select/helper.d.ts +25 -0
  325. package/lib/inputs/select/helper.js +19 -15
  326. package/lib/inputs/select/index.d.ts +10 -0
  327. package/lib/inputs/select/index.js +25 -21
  328. package/lib/inputs/select/multiple/Selecteds.d.ts +10 -0
  329. package/lib/inputs/select/multiple/Selecteds.js +9 -17
  330. package/lib/inputs/select/multiple/index.d.ts +10 -0
  331. package/lib/inputs/select/multiple/index.js +299 -408
  332. package/lib/inputs/select/select.spec.js +135 -186
  333. package/lib/inputs/select/simple/index.d.ts +10 -0
  334. package/lib/inputs/select/simple/index.js +310 -457
  335. package/lib/inputs/select/types.d.ts +94 -0
  336. package/lib/inputs/select/types.js +5 -0
  337. package/lib/inputs/text/index.d.ts +11 -0
  338. package/lib/inputs/text/index.js +6 -5
  339. package/lib/inputs/text/textfield.spec.js +46 -87
  340. package/lib/inputs/text/types.d.ts +25 -0
  341. package/lib/inputs/text/types.js +5 -0
  342. package/lib/inputs/textarea/index.d.ts +9 -0
  343. package/lib/inputs/textarea/index.js +11 -21
  344. package/lib/inputs/textarea/textarea.spec.js +16 -29
  345. package/lib/inputs/textarea/types.d.ts +13 -0
  346. package/lib/inputs/textarea/types.js +5 -0
  347. package/lib/inputs/types.d.ts +146 -0
  348. package/lib/inputs/types.js +5 -0
  349. package/lib/internals/colorStyles.d.ts +9 -0
  350. package/lib/internals/colorStyles.js +2 -2
  351. package/lib/internals/constants.d.ts +11 -0
  352. package/lib/internals/constants.js +1 -1
  353. package/lib/internals/types.d.ts +21 -0
  354. package/lib/internals/types.js +5 -0
  355. package/lib/internals/withTooltip.d.ts +11 -0
  356. package/lib/internals/withTooltip.js +50 -48
  357. package/lib/labelMessages/index.d.ts +7 -0
  358. package/lib/labelMessages/index.js +48 -56
  359. package/lib/labelMessages/labelMessages.spec.js +44 -77
  360. package/lib/labelMessages/types.d.ts +18 -0
  361. package/lib/labelMessages/types.js +5 -0
  362. package/lib/labels/DangerLabel.d.ts +9 -0
  363. package/lib/labels/DangerLabel.js +18 -9
  364. package/lib/labels/DefaultLabel.d.ts +12 -0
  365. package/lib/labels/DefaultLabel.js +46 -68
  366. package/lib/labels/InfoLabel.d.ts +9 -0
  367. package/lib/labels/InfoLabel.js +18 -9
  368. package/lib/labels/PrimaryLabel.d.ts +9 -0
  369. package/lib/labels/PrimaryLabel.js +18 -9
  370. package/lib/labels/SuccessLabel.d.ts +9 -0
  371. package/lib/labels/SuccessLabel.js +18 -9
  372. package/lib/labels/WarningLabel.d.ts +9 -0
  373. package/lib/labels/WarningLabel.js +18 -9
  374. package/lib/labels/index.d.ts +13 -0
  375. package/lib/labels/index.js +16 -16
  376. package/lib/labels/label.spec.js +59 -86
  377. package/lib/labels/label_container/index.d.ts +12 -0
  378. package/lib/labels/label_container/index.js +7 -17
  379. package/lib/labels/types.d.ts +24 -0
  380. package/lib/labels/types.js +5 -0
  381. package/lib/list/Header.d.ts +7 -0
  382. package/lib/list/Header.js +5 -18
  383. package/lib/list/Item.d.ts +7 -0
  384. package/lib/list/Item.js +54 -82
  385. package/lib/list/Separator.d.ts +3 -0
  386. package/lib/list/Separator.js +5 -5
  387. package/lib/list/helpers.d.ts +12 -0
  388. package/lib/list/helpers.js +4 -4
  389. package/lib/list/index.d.ts +10 -0
  390. package/lib/list/index.js +63 -72
  391. package/lib/list/list.spec.js +225 -371
  392. package/lib/list/types.d.ts +64 -0
  393. package/lib/list/types.js +5 -0
  394. package/lib/menus/float/MenuItem.d.ts +7 -0
  395. package/lib/menus/float/MenuItem.js +18 -38
  396. package/lib/menus/float/float-menu.spec.js +38 -72
  397. package/lib/menus/float/helpers.d.ts +7 -0
  398. package/lib/menus/float/helpers.js +5 -5
  399. package/lib/menus/float/index.d.ts +8 -0
  400. package/lib/menus/float/index.js +18 -38
  401. package/lib/menus/float/types.d.ts +27 -0
  402. package/lib/menus/float/types.js +5 -0
  403. package/lib/menus/index.d.ts +6 -0
  404. package/lib/menus/index.js +5 -5
  405. package/lib/menus/sidenav/ExpandMenu.d.ts +10 -0
  406. package/lib/menus/sidenav/ExpandMenu.js +7 -19
  407. package/lib/menus/sidenav/MenuLink.d.ts +13 -0
  408. package/lib/menus/sidenav/MenuLink.js +6 -20
  409. package/lib/menus/sidenav/NavMenuGroup.d.ts +10 -0
  410. package/lib/menus/sidenav/NavMenuGroup.js +6 -17
  411. package/lib/menus/sidenav/NavMenuItem.d.ts +13 -0
  412. package/lib/menus/sidenav/NavMenuItem.js +47 -63
  413. package/lib/menus/sidenav/NavSubMenuItem.d.ts +10 -0
  414. package/lib/menus/sidenav/NavSubMenuItem.js +24 -25
  415. package/lib/menus/sidenav/helpers.d.ts +12 -0
  416. package/lib/menus/sidenav/helpers.js +6 -6
  417. package/lib/menus/sidenav/index.d.ts +14 -0
  418. package/lib/menus/sidenav/index.js +71 -83
  419. package/lib/menus/sidenav/popup_menu_search/EmptyList.d.ts +10 -0
  420. package/lib/menus/sidenav/popup_menu_search/EmptyList.js +10 -19
  421. package/lib/menus/sidenav/popup_menu_search/index.d.ts +10 -0
  422. package/lib/menus/sidenav/popup_menu_search/index.js +41 -28
  423. package/lib/menus/sidenav/sidenav.spec.js +40 -89
  424. package/lib/menus/sidenav/types.d.ts +82 -0
  425. package/lib/menus/sidenav/types.js +5 -0
  426. package/lib/noPermission/index.d.ts +3 -0
  427. package/lib/noPermission/index.js +8 -8
  428. package/lib/panel/Content.d.ts +8 -0
  429. package/lib/panel/Content.js +15 -27
  430. package/lib/panel/DangerPanel.d.ts +8 -0
  431. package/lib/panel/DangerPanel.js +8 -8
  432. package/lib/panel/Default.d.ts +8 -0
  433. package/lib/panel/Default.js +41 -58
  434. package/lib/panel/Header.d.ts +8 -0
  435. package/lib/panel/Header.js +19 -41
  436. package/lib/panel/InfoPanel.d.ts +8 -0
  437. package/lib/panel/InfoPanel.js +8 -8
  438. package/lib/panel/PrimaryPanel.d.ts +8 -0
  439. package/lib/panel/PrimaryPanel.js +8 -8
  440. package/lib/panel/SuccessPanel.d.ts +8 -0
  441. package/lib/panel/SuccessPanel.js +8 -8
  442. package/lib/panel/ToolBar.d.ts +8 -0
  443. package/lib/panel/ToolBar.js +5 -10
  444. package/lib/panel/WarningPanel.d.ts +8 -0
  445. package/lib/panel/WarningPanel.js +8 -8
  446. package/lib/panel/helpers.d.ts +4 -0
  447. package/lib/panel/helpers.js +10 -6
  448. package/lib/panel/index.d.ts +13 -0
  449. package/lib/panel/index.js +19 -19
  450. package/lib/panel/panel.spec.js +76 -113
  451. package/lib/panel/types.d.ts +4 -0
  452. package/lib/panel/types.js +5 -0
  453. package/lib/permissionValidations.d.ts +14 -0
  454. package/lib/permissionValidations.js +14 -12
  455. package/lib/popover/PopoverText.d.ts +8 -0
  456. package/lib/popover/PopoverText.js +4 -9
  457. package/lib/popover/PopoverTitle.d.ts +8 -0
  458. package/lib/popover/PopoverTitle.js +4 -9
  459. package/lib/popover/index.d.ts +13 -0
  460. package/lib/popover/index.js +35 -49
  461. package/lib/popover/popover.spec.js +44 -74
  462. package/lib/popover/types.d.ts +21 -0
  463. package/lib/popover/types.js +5 -0
  464. package/lib/progress/Bar.d.ts +6 -0
  465. package/lib/progress/Bar.js +42 -52
  466. package/lib/progress/index.d.ts +7 -0
  467. package/lib/progress/index.js +19 -27
  468. package/lib/progress/progress.spec.js +38 -46
  469. package/lib/progress/types.d.ts +37 -0
  470. package/lib/progress/types.js +5 -0
  471. package/lib/radio/index.d.ts +12 -0
  472. package/lib/radio/index.js +45 -59
  473. package/lib/radio/radio.spec.js +51 -78
  474. package/lib/radio/types.d.ts +18 -0
  475. package/lib/radio/types.js +5 -0
  476. package/lib/skeleton/SkeletonContainer.d.ts +7 -0
  477. package/lib/skeleton/SkeletonContainer.js +4 -17
  478. package/lib/skeleton/index.d.ts +8 -0
  479. package/lib/skeleton/index.js +16 -35
  480. package/lib/skeleton/types.d.ts +21 -0
  481. package/lib/skeleton/types.js +5 -0
  482. package/lib/spinner/SpinnerLoading.d.ts +7 -0
  483. package/lib/spinner/SpinnerLoading.js +45 -53
  484. package/lib/spinner/index.d.ts +7 -0
  485. package/lib/spinner/index.js +42 -37
  486. package/lib/spinner/spinner.spec.js +47 -69
  487. package/lib/spinner/types.d.ts +20 -0
  488. package/lib/spinner/types.js +5 -0
  489. package/lib/split/Split.d.ts +6 -0
  490. package/lib/split/Split.js +83 -90
  491. package/lib/split/SplitSide.d.ts +6 -0
  492. package/lib/split/SplitSide.js +8 -28
  493. package/lib/split/helpers.d.ts +10 -0
  494. package/lib/split/helpers.js +5 -5
  495. package/lib/split/index.d.ts +5 -0
  496. package/lib/split/index.js +6 -6
  497. package/lib/split/split.spec.js +60 -73
  498. package/lib/split/types.d.ts +34 -0
  499. package/lib/split/types.js +5 -0
  500. package/lib/table/Body.d.ts +6 -0
  501. package/lib/table/Body.js +25 -32
  502. package/lib/table/Header.d.ts +6 -0
  503. package/lib/table/Header.js +52 -31
  504. package/lib/table/HeaderColumn.d.ts +6 -0
  505. package/lib/table/HeaderColumn.js +14 -28
  506. package/lib/table/Row.d.ts +6 -0
  507. package/lib/table/Row.js +15 -36
  508. package/lib/table/RowColumn.d.ts +6 -0
  509. package/lib/table/RowColumn.js +21 -39
  510. package/lib/table/helpers.d.ts +8 -0
  511. package/lib/table/helpers.js +6 -6
  512. package/lib/table/index.d.ts +11 -0
  513. package/lib/table/index.js +45 -71
  514. package/lib/table/table.spec.js +108 -163
  515. package/lib/table/types.d.ts +84 -0
  516. package/lib/table/types.js +5 -0
  517. package/lib/tabs/DropdownItems.d.ts +9 -0
  518. package/lib/tabs/DropdownItems.js +21 -31
  519. package/lib/tabs/Menu.d.ts +9 -0
  520. package/lib/tabs/Menu.js +22 -26
  521. package/lib/tabs/MenuItems.d.ts +9 -0
  522. package/lib/tabs/MenuItems.js +34 -48
  523. package/lib/tabs/Panel.d.ts +9 -0
  524. package/lib/tabs/Panel.js +38 -61
  525. package/lib/tabs/index.d.ts +10 -0
  526. package/lib/tabs/index.js +125 -99
  527. package/lib/tabs/tabHelpers.d.ts +21 -0
  528. package/lib/tabs/tabHelpers.js +13 -11
  529. package/lib/tabs/tabs.spec.js +121 -212
  530. package/lib/tabs/types.d.ts +63 -0
  531. package/lib/tabs/types.js +5 -0
  532. package/lib/toolbar/ButtonBar.d.ts +10 -0
  533. package/lib/toolbar/ButtonBar.js +54 -35
  534. package/lib/toolbar/LabelBar.d.ts +10 -0
  535. package/lib/toolbar/LabelBar.js +45 -32
  536. package/lib/toolbar/Separator.d.ts +3 -0
  537. package/lib/toolbar/Separator.js +5 -5
  538. package/lib/toolbar/ToolBarGroup.d.ts +10 -0
  539. package/lib/toolbar/ToolBarGroup.js +10 -16
  540. package/lib/toolbar/helpers.d.ts +10 -0
  541. package/lib/toolbar/helpers.js +3 -3
  542. package/lib/toolbar/index.d.ts +14 -0
  543. package/lib/toolbar/index.js +35 -41
  544. package/lib/toolbar/toolbar.spec.js +142 -190
  545. package/lib/toolbar/types.d.ts +43 -0
  546. package/lib/toolbar/types.js +5 -0
  547. package/lib/tooltip/index.d.ts +6 -0
  548. package/lib/tooltip/index.js +35 -44
  549. package/lib/tooltip/tooltip.spec.js +40 -55
  550. package/lib/tooltip/types.d.ts +16 -0
  551. package/lib/tooltip/types.js +5 -0
  552. package/lib/treetable/Body.js +46 -0
  553. package/lib/treetable/Header.js +27 -0
  554. package/lib/treetable/Row.js +261 -0
  555. package/lib/treetable/helpers.js +30 -61
  556. package/lib/treetable/index.js +13 -112
  557. package/lib/treetable/types.d.js +5 -0
  558. package/lib/treeview/Header.d.ts +7 -0
  559. package/lib/treeview/Header.js +5 -17
  560. package/lib/treeview/Node.d.ts +7 -0
  561. package/lib/treeview/Node.js +281 -391
  562. package/lib/treeview/constants.d.ts +7 -0
  563. package/lib/treeview/constants.js +3 -4
  564. package/lib/treeview/index.d.ts +9 -0
  565. package/lib/treeview/index.js +386 -555
  566. package/lib/treeview/treeview.spec.js +65 -102
  567. package/lib/treeview/types.d.ts +104 -0
  568. package/lib/treeview/types.js +5 -0
  569. package/lib/treeview_old/Header.js +8 -8
  570. package/lib/treeview_old/Node.js +38 -32
  571. package/lib/treeview_old/index.js +10 -10
  572. package/lib/types-3c6f1c20.d.ts +46 -0
  573. package/lib/uitour/helpers.d.ts +8 -0
  574. package/lib/uitour/helpers.js +1 -1
  575. package/lib/uitour/index.d.ts +6 -0
  576. package/lib/uitour/index.js +54 -59
  577. package/lib/uitour/types.d.ts +30 -0
  578. package/lib/uitour/types.js +5 -0
  579. package/lib/uitour/uitour.spec.js +63 -85
  580. package/package.json +57 -18
  581. package/scripts/start.js +135 -0
  582. package/tsconfig.json +32 -0
  583. package/tsup.config.ts +10 -0
  584. package/.eslintrc.js +0 -26
  585. package/.husky/pre-commit +0 -4
  586. package/lib/treetable/TRow.js +0 -255
  587. package/lib/treetable/treetable.spec.js +0 -302
@@ -1,8 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
6
4
 
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
@@ -10,37 +8,19 @@ Object.defineProperty(exports, "__esModule", {
10
8
  Object.defineProperty(exports, "TreeNode", {
11
9
  enumerable: true,
12
10
  get: function get() {
13
- return _Node["default"];
11
+ return _Node.default;
14
12
  }
15
13
  });
16
14
  Object.defineProperty(exports, "TreeViewHeader", {
17
15
  enumerable: true,
18
16
  get: function get() {
19
- return _Header["default"];
17
+ return _Header.default;
20
18
  }
21
19
  });
22
- exports["default"] = void 0;
23
-
24
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
25
-
26
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
27
-
28
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
29
-
30
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
31
-
32
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
33
-
34
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
35
-
36
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
37
-
38
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
20
+ exports.default = void 0;
39
21
 
40
22
  var _react = _interopRequireWildcard(require("react"));
41
23
 
42
- var _propTypes = _interopRequireDefault(require("prop-types"));
43
-
44
24
  var _lodash = _interopRequireDefault(require("lodash"));
45
25
 
46
26
  var _Node = _interopRequireDefault(require("./Node"));
@@ -51,576 +31,427 @@ require("../assets/styles/treeview.scss");
51
31
 
52
32
  var _constants = require("./constants");
53
33
 
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
+
54
36
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
55
37
 
56
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
+
40
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
41
+
42
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
43
+
44
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
45
+
46
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
47
+
48
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
49
+
50
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
51
+
52
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
53
+
54
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
55
+
56
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
57
+
58
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
59
+
60
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
61
+
62
+ var TreeView = function TreeView(props) {
63
+ var _props$selectedIds = props.selectedIds,
64
+ selectedIds = _props$selectedIds === void 0 ? [] : _props$selectedIds,
65
+ enableDynamicData = props.enableDynamicData,
66
+ allowCheckAllAncestry = props.allowCheckAllAncestry,
67
+ onNodeOpen = props.onNodeOpen,
68
+ allowCheckAllChildren = props.allowCheckAllChildren,
69
+ onSelectedIdsChange = props.onSelectedIdsChange,
70
+ idsInLoading = props.idsInLoading,
71
+ _props$startNodesOpen = props.startNodesOpened,
72
+ startNodesOpened = _props$startNodesOpen === void 0 ? false : _props$startNodesOpen,
73
+ alwaysShowArrow = props.alwaysShowArrow,
74
+ nodeElementsValidations = props.nodeElementsValidations,
75
+ nodeRightElements = props.nodeRightElements,
76
+ _props$nodeMenuButton = props.nodeMenuButtonSize,
77
+ nodeMenuButtonSize = _props$nodeMenuButton === void 0 ? 'small' : _props$nodeMenuButton,
78
+ nodeToolbarElements = props.nodeToolbarElements,
79
+ onNodeClick = props.onNodeClick,
80
+ selectedNodeId = props.selectedNodeId,
81
+ customClass = props.customClass,
82
+ children = props.children,
83
+ styleForContainer = props.styleForContainer,
84
+ bordered = props.bordered,
85
+ _props$requiredIds = props.requiredIds,
86
+ propsRequiredIds = _props$requiredIds === void 0 ? [] : _props$requiredIds;
87
+
88
+ var _useState = (0, _react.useState)(props.data),
89
+ _useState2 = _slicedToArray(_useState, 2),
90
+ data = _useState2[0],
91
+ setData = _useState2[1];
92
+
93
+ var _useState3 = (0, _react.useState)(selectedIds),
94
+ _useState4 = _slicedToArray(_useState3, 2),
95
+ currentSelectedIds = _useState4[0],
96
+ setCurrentSelectedIds = _useState4[1];
97
+
98
+ var _useState5 = (0, _react.useState)(selectedIds),
99
+ _useState6 = _slicedToArray(_useState5, 2),
100
+ propSelectedIds = _useState6[0],
101
+ setPropSelectedIds = _useState6[1];
102
+
103
+ var _useState7 = (0, _react.useState)(false),
104
+ _useState8 = _slicedToArray(_useState7, 2),
105
+ isHandlingSelectedIds = _useState8[0],
106
+ setIsHandlingSelectedIds = _useState8[1];
107
+
108
+ var _useState9 = (0, _react.useState)(false),
109
+ _useState10 = _slicedToArray(_useState9, 2),
110
+ selectedIdsUpdatedOnMount = _useState10[0],
111
+ setSelectedIdsUpdatedOnMount = _useState10[1];
112
+
113
+ var _useState11 = (0, _react.useState)([]),
114
+ _useState12 = _slicedToArray(_useState11, 2),
115
+ requiredParentsIds = _useState12[0],
116
+ setRequiredParentsIds = _useState12[1];
117
+
118
+ var _useState13 = (0, _react.useState)([]),
119
+ _useState14 = _slicedToArray(_useState13, 2),
120
+ alreadyOpenedIds = _useState14[0],
121
+ setAlreadyOpenedIds = _useState14[1];
122
+
123
+ var _useState15 = (0, _react.useState)({}),
124
+ _useState16 = _slicedToArray(_useState15, 1),
125
+ idsWithChildren = _useState16[0];
126
+
127
+ var returnChildrenIds = function returnChildrenIds(nodeId) {
128
+ var returnRequiredIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
129
+ var nodeChildrenIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
130
+ var requiredIds = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
131
+
132
+ if (idsWithChildren[nodeId] !== undefined) {
133
+ nodeChildrenIds.push(nodeId);
134
+ if (returnRequiredIds) requiredIds.push(nodeId);
135
+ idsWithChildren[nodeId].forEach(function (childId) {
136
+ return returnChildrenIds(childId, returnRequiredIds, nodeChildrenIds, requiredIds);
137
+ });
138
+ } else nodeChildrenIds.push(nodeId);
139
+
140
+ return returnRequiredIds ? {
141
+ nodeChildrenIds: nodeChildrenIds,
142
+ requiredIds: requiredIds
143
+ } : {
144
+ nodeChildrenIds: nodeChildrenIds
145
+ };
146
+ };
57
147
 
58
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
148
+ var returnParentId = function returnParentId(nodeId) {
149
+ var parentId = Object.keys(idsWithChildren).find(function (id) {
150
+ return idsWithChildren[id].find(function (childId) {
151
+ return childId === nodeId;
152
+ });
153
+ });
154
+ return Number(parentId);
155
+ };
59
156
 
60
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
157
+ var returnAllAncestryIds = function returnAllAncestryIds(nodeId) {
158
+ var ancestryIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
159
+ var parentId = returnParentId(nodeId);
61
160
 
62
- var TreeView = /*#__PURE__*/function (_Component) {
63
- (0, _inherits2["default"])(TreeView, _Component);
161
+ if (parentId) {
162
+ var currentAncestryIds = [].concat(_toConsumableArray(ancestryIds), [Number(parentId)]);
163
+ return returnAllAncestryIds(Number(parentId), currentAncestryIds);
164
+ }
64
165
 
65
- var _super = _createSuper(TreeView);
166
+ return ancestryIds;
167
+ };
66
168
 
67
- function TreeView(props) {
68
- var _this;
169
+ var returnRequiredAncestryIds = function returnRequiredAncestryIds(nodeId) {
170
+ var requiredAncestryIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
171
+ var previousParentId = arguments.length > 2 ? arguments[2] : undefined;
172
+ var selectedSiblingsIds = [];
173
+ var parentId = returnParentId(nodeId);
69
174
 
70
- (0, _classCallCheck2["default"])(this, TreeView);
71
- _this = _super.call(this, props);
72
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "getContextValues", {
73
- configurable: true,
74
- enumerable: true,
75
- writable: true,
76
- value: function value() {
77
- return (0, _extends2["default"])({}, _this.props, _this.state, {
78
- handlerUpdateSelectedIds: _this.updateSelectedIds,
79
- handlerToggleCheckChildren: _this.toggleCheckChildren
80
- });
81
- }
82
- });
83
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "handleNewSelectedIds", {
84
- configurable: true,
85
- enumerable: true,
86
- writable: true,
87
- value: function value(selectedIds) {
88
- _this.setState({
89
- requiredParentsIds: []
90
- }, function () {
91
- var requiredIds = [];
92
- var newSelectedIds = [];
93
- var selectedIdsUpdatedOnMount = _this.state.selectedIdsUpdatedOnMount;
94
- selectedIds.forEach(function (id) {
95
- var _this$checkAllAncestr = _this.checkAllAncestry(id, [], true, false),
96
- requiredParentsIds = _this$checkAllAncestr.requiredParentsIds,
97
- updatedIdsWithAncestryIds = _this$checkAllAncestr.updatedIdsWithAncestryIds;
98
-
99
- newSelectedIds = [].concat((0, _toConsumableArray2["default"])(newSelectedIds), (0, _toConsumableArray2["default"])(updatedIdsWithAncestryIds));
100
- requiredIds = [].concat((0, _toConsumableArray2["default"])(requiredIds), (0, _toConsumableArray2["default"])(requiredParentsIds));
101
- });
102
-
103
- _this.setState({
104
- requiredParentsIds: _lodash["default"].uniq(requiredIds),
105
- selectedIds: _lodash["default"].uniq(newSelectedIds),
106
- selectedIdsUpdatedOnMount: selectedIdsUpdatedOnMount || true
107
- });
108
- });
109
- }
110
- });
111
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "returnParentId", {
112
- configurable: true,
113
- enumerable: true,
114
- writable: true,
115
- value: function value(nodeId) {
116
- var parentId = Object.keys(_this.idsWithChildren).find(function (id) {
117
- return _this.idsWithChildren[id].find(function (childId) {
118
- return childId === nodeId;
119
- });
175
+ if (parentId) {
176
+ var nodeSiblingsIds = idsWithChildren && idsWithChildren[parentId].filter(function (childId) {
177
+ return childId !== nodeId;
178
+ });
179
+ var isPreviousParentSelected = previousParentId && currentSelectedIds.includes(previousParentId);
180
+
181
+ if (nodeSiblingsIds && nodeSiblingsIds.length > 0) {
182
+ selectedSiblingsIds = currentSelectedIds.filter(function (id) {
183
+ return nodeSiblingsIds.includes(id);
120
184
  });
121
- return Number(parentId);
122
185
  }
123
- });
124
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "returnAllAncestryIds", {
125
- configurable: true,
126
- enumerable: true,
127
- writable: true,
128
- value: function value(nodeId) {
129
- var ancestryIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
130
186
 
131
- var parentId = _this.returnParentId(nodeId);
187
+ var requiredIds = isPreviousParentSelected || selectedSiblingsIds.length > 0 ? _toConsumableArray(requiredAncestryIds) : [].concat(_toConsumableArray(requiredAncestryIds), [parentId]);
132
188
 
133
- if (parentId) {
134
- var currentAncestryIds = [].concat((0, _toConsumableArray2["default"])(ancestryIds), [Number(parentId)]);
135
- return _this.returnAllAncestryIds(Number(parentId), currentAncestryIds);
136
- }
137
-
138
- return ancestryIds;
189
+ if (selectedSiblingsIds.length === 0 && !isPreviousParentSelected) {
190
+ return returnRequiredAncestryIds(parentId, requiredIds, parentId);
139
191
  }
192
+ }
193
+
194
+ return requiredAncestryIds;
195
+ };
196
+
197
+ var updateAncestryAndSelectedIds = function updateAncestryAndSelectedIds(nodeId, codigos, requiredParents) {
198
+ var ancestryIds = returnRequiredAncestryIds(nodeId);
199
+ var remainRequiredParentsIds = requiredParents.filter(function (id) {
200
+ return !ancestryIds.includes(id);
140
201
  });
141
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "returnChildrenIds", {
142
- configurable: true,
143
- enumerable: true,
144
- writable: true,
145
- value: function value(nodeId) {
146
- var returnRequiredIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
147
- var nodeChildrenIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
148
- var requiredIds = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
149
-
150
- if (_this.idsWithChildren[nodeId] !== undefined) {
151
- nodeChildrenIds.push(nodeId);
152
- if (returnRequiredIds) requiredIds.push(nodeId);
153
-
154
- _this.idsWithChildren[nodeId].forEach(function (childId) {
155
- return _this.returnChildrenIds(childId, returnRequiredIds, nodeChildrenIds, requiredIds);
156
- });
157
- } else nodeChildrenIds.push(nodeId);
158
-
159
- return returnRequiredIds ? {
160
- nodeChildrenIds: nodeChildrenIds,
161
- requiredIds: requiredIds
162
- } : nodeChildrenIds;
163
- }
202
+ var newSelectedIds = currentSelectedIds.filter(function (selectedId) {
203
+ return !codigos.includes(selectedId);
164
204
  });
165
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "returnRequiredAncestryIds", {
166
- configurable: true,
167
- enumerable: true,
168
- writable: true,
169
- value: function value(nodeId) {
170
- var requiredAncestryIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
171
- var previousParentId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
172
- var selectedSiblingsIds = [];
173
- var selectedIds = _this.state.selectedIds;
174
-
175
- var parentId = _this.returnParentId(nodeId);
176
-
177
- if (parentId) {
178
- var nodeSiblingsIds = _this.idsWithChildren[parentId].filter(function (childId) {
179
- return childId !== nodeId;
180
- });
181
-
182
- var isPreviousParentSelected = selectedIds.includes(previousParentId);
183
-
184
- if (nodeSiblingsIds && nodeSiblingsIds.length > 0) {
185
- selectedSiblingsIds = selectedIds.filter(function (id) {
186
- return nodeSiblingsIds.includes(id);
187
- });
188
- }
189
-
190
- var requiredIds = isPreviousParentSelected || selectedSiblingsIds.length > 0 ? (0, _toConsumableArray2["default"])(requiredAncestryIds) : [].concat((0, _toConsumableArray2["default"])(requiredAncestryIds), [parentId]);
191
-
192
- if (selectedSiblingsIds.length === 0 && !isPreviousParentSelected) {
193
- return _this.returnRequiredAncestryIds(parentId, requiredIds, parentId);
194
- }
195
- }
196
-
197
- return requiredAncestryIds;
198
- }
205
+ setRequiredParentsIds(remainRequiredParentsIds);
206
+ return newSelectedIds;
207
+ };
208
+
209
+ var checkAllAncestry = function checkAllAncestry(nodeId, codigos) {
210
+ var returnRequiredParentsIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
211
+ var updateState = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
212
+ var nodeAncestryIds = returnAllAncestryIds(nodeId);
213
+ var notRequiredAncestryIds = nodeAncestryIds.filter(function (id) {
214
+ return !requiredParentsIds.includes(id);
199
215
  });
200
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "toggleCheckChildren", {
201
- configurable: true,
202
- enumerable: true,
203
- writable: true,
204
- value: function value(nodeId, check) {
205
- var required = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
206
-
207
- _this.setState({
208
- isHandlingSelectedIds: true
209
- }, function () {
210
- _this.updateSelectedIds(nodeId, check, true, required);
211
- });
212
- }
216
+ var notSelectedAncestryIds = nodeAncestryIds.filter(function (id) {
217
+ return !currentSelectedIds.includes(id);
213
218
  });
214
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "checkAllAncestry", {
215
- configurable: true,
216
- enumerable: true,
217
- writable: true,
218
- value: function value(nodeId, codigos) {
219
- var returnRequiredParentsIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
220
- var updateState = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
221
- var selectedIds = _this.state.selectedIds;
222
- var requiredParentsIds = _this.state.requiredParentsIds;
223
-
224
- var nodeAncestryIds = _this.returnAllAncestryIds(nodeId);
225
-
226
- var notRequiredAncestryIds = nodeAncestryIds.filter(function (id) {
227
- return !requiredParentsIds.includes(id);
228
- });
229
- var notSelectedAncestryIds = nodeAncestryIds.filter(function (id) {
230
- return !selectedIds.includes(id);
231
- });
232
- selectedIds = [].concat((0, _toConsumableArray2["default"])(selectedIds), (0, _toConsumableArray2["default"])(codigos), (0, _toConsumableArray2["default"])(notSelectedAncestryIds));
233
- requiredParentsIds = [].concat((0, _toConsumableArray2["default"])(requiredParentsIds), (0, _toConsumableArray2["default"])(notRequiredAncestryIds));
234
- if (updateState) _this.setState({
235
- requiredParentsIds: requiredParentsIds
236
- });
237
- return !returnRequiredParentsIds ? selectedIds : {
238
- updatedIdsWithAncestryIds: selectedIds,
239
- requiredParentsIds: requiredParentsIds
240
- };
241
- }
219
+ var newSelectedIds = [].concat(_toConsumableArray(currentSelectedIds), _toConsumableArray(codigos), _toConsumableArray(notSelectedAncestryIds));
220
+ var newRequiredParentsIds = [].concat(_toConsumableArray(requiredParentsIds), _toConsumableArray(notRequiredAncestryIds));
221
+
222
+ if (updateState) {
223
+ setRequiredParentsIds(newRequiredParentsIds);
224
+ }
225
+
226
+ return !returnRequiredParentsIds ? {
227
+ updatedIdsWithAncestryIds: newSelectedIds
228
+ } : {
229
+ updatedIdsWithAncestryIds: newSelectedIds,
230
+ requiredParentsIds: newRequiredParentsIds
231
+ };
232
+ };
233
+
234
+ var checkAllChildren = function checkAllChildren(nodeId) {
235
+ var returnRequiredIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
236
+ var currentRequiredIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
237
+ var childrenIds;
238
+ var newRequiredParentsIds = currentRequiredIds;
239
+
240
+ if (returnRequiredIds) {
241
+ var _returnChildrenIds = returnChildrenIds(nodeId, returnRequiredIds),
242
+ nodeChildrenIds = _returnChildrenIds.nodeChildrenIds,
243
+ requiredIds = _returnChildrenIds.requiredIds;
244
+
245
+ var newRequiredIds = requiredIds ? requiredIds.filter(function (id) {
246
+ return !currentRequiredIds.includes(id);
247
+ }) : [];
248
+ newRequiredParentsIds = [].concat(_toConsumableArray(currentRequiredIds), _toConsumableArray(newRequiredIds));
249
+ childrenIds = nodeChildrenIds;
250
+ } else childrenIds = returnChildrenIds(nodeId).nodeChildrenIds;
251
+
252
+ var notSelectedChildrenIds = childrenIds.filter(function (id) {
253
+ return !currentSelectedIds.includes(id);
242
254
  });
243
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "updateAncestryAndSelectedIds", {
244
- configurable: true,
245
- enumerable: true,
246
- writable: true,
247
- value: function value(nodeId, codigos, requiredParentsIds) {
248
- var selectedIds = _this.state.selectedIds;
255
+ var newSelectedIds = [].concat(_toConsumableArray(currentSelectedIds), _toConsumableArray(notSelectedChildrenIds));
256
+ setRequiredParentsIds(newRequiredParentsIds);
257
+ setIsHandlingSelectedIds(false);
258
+ return newSelectedIds;
259
+ };
260
+
261
+ var uncheckAllChildren = function uncheckAllChildren(nodeId) {
262
+ var remainSelectedIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
263
+ var newSelectedIds = remainSelectedIds.length > 0 ? remainSelectedIds : currentSelectedIds;
264
+ var childrenIds = returnChildrenIds(nodeId).nodeChildrenIds;
265
+ newSelectedIds = newSelectedIds.filter(function (selectedId) {
266
+ return !childrenIds.includes(selectedId);
267
+ });
268
+ setIsHandlingSelectedIds(false);
269
+ return newSelectedIds;
270
+ };
271
+
272
+ var uncheckRequiredChildren = function uncheckRequiredChildren(nodeId, codigos, requiredParents) {
273
+ var childrenIds = returnChildrenIds(nodeId).nodeChildrenIds;
274
+ var remainRequiredIds = requiredParents.filter(function (id) {
275
+ return !childrenIds.includes(id);
276
+ });
277
+ setRequiredParentsIds(_toConsumableArray(remainRequiredIds));
278
+ updateAncestryAndSelectedIds(nodeId, codigos, remainRequiredIds);
279
+ };
249
280
 
250
- var ancestryIds = _this.returnRequiredAncestryIds(nodeId);
281
+ var handleOnNodeOpen = function handleOnNodeOpen(node) {
282
+ var id = node.id;
283
+ var newAlreadyOpenedIds = alreadyOpenedIds;
251
284
 
252
- var remainRequiredParentsIds = requiredParentsIds.filter(function (id) {
253
- return !ancestryIds.includes(id);
254
- });
255
- selectedIds = selectedIds.filter(function (selectedId) {
256
- return !codigos.includes(selectedId);
257
- });
285
+ if (!alreadyOpenedIds.includes(id) && onNodeOpen) {
286
+ newAlreadyOpenedIds = [].concat(_toConsumableArray(newAlreadyOpenedIds), [id]);
287
+ onNodeOpen(node);
288
+ }
258
289
 
259
- _this.setState({
260
- requiredParentsIds: remainRequiredParentsIds
261
- });
290
+ setAlreadyOpenedIds(newAlreadyOpenedIds);
291
+ };
262
292
 
263
- return selectedIds;
264
- }
265
- });
266
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "checkAllChildren", {
267
- configurable: true,
268
- enumerable: true,
269
- writable: true,
270
- value: function value(nodeId) {
271
- var returnRequiredIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
272
- var currentRequiredIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
273
- var _this$state = _this.state,
274
- selectedIds = _this$state.selectedIds,
275
- requiredParentsIds = _this$state.requiredParentsIds;
276
- var childrenIds;
277
-
278
- if (returnRequiredIds) {
279
- var _this$returnChildrenI = _this.returnChildrenIds(nodeId, returnRequiredIds),
280
- nodeChildrenIds = _this$returnChildrenI.nodeChildrenIds,
281
- requiredIds = _this$returnChildrenI.requiredIds;
282
-
283
- var newRequiredIds = requiredIds.filter(function (id) {
284
- return !currentRequiredIds.includes(id);
285
- });
286
- requiredParentsIds = [].concat((0, _toConsumableArray2["default"])(currentRequiredIds), (0, _toConsumableArray2["default"])(newRequiredIds));
287
- childrenIds = nodeChildrenIds;
288
- } else childrenIds = _this.returnChildrenIds(nodeId);
289
-
290
- var notSelectedChildrenIds = childrenIds.filter(function (id) {
291
- return !selectedIds.includes(id);
292
- });
293
- selectedIds = [].concat((0, _toConsumableArray2["default"])(selectedIds), (0, _toConsumableArray2["default"])(notSelectedChildrenIds));
293
+ var handleCheck = function handleCheck(nodeId, handlingSelectedIds, isParent) {
294
+ var codigos = _lodash.default.isArray(nodeId) ? nodeId : [nodeId];
295
+ var newSelectedIds = [].concat(_toConsumableArray(currentSelectedIds), _toConsumableArray(codigos));
294
296
 
295
- _this.setState({
296
- isHandlingSelectedIds: false,
297
- requiredParentsIds: requiredParentsIds
298
- });
297
+ if (isParent && (handlingSelectedIds || isHandlingSelectedIds) && allowCheckAllChildren) {
298
+ if (allowCheckAllAncestry) {
299
+ var _checkAllAncestry = checkAllAncestry(nodeId, codigos, true),
300
+ updatedIdsWithAncestryIds = _checkAllAncestry.updatedIdsWithAncestryIds,
301
+ requiredParents = _checkAllAncestry.requiredParentsIds;
299
302
 
300
- return selectedIds;
301
- }
302
- });
303
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "uncheckAllChildren", {
304
- configurable: true,
305
- enumerable: true,
306
- writable: true,
307
- value: function value(nodeId) {
308
- var remainSelectedIds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
309
- var selectedIds = remainSelectedIds.length > 0 ? remainSelectedIds : _this.state.selectedIds;
310
-
311
- var childrenIds = _this.returnChildrenIds(nodeId);
312
-
313
- selectedIds = selectedIds.filter(function (selectedId) {
314
- return !childrenIds.includes(selectedId);
315
- });
303
+ var updatedIdsWithChildrenIds = checkAllChildren(nodeId, true, requiredParents);
304
+ newSelectedIds = [].concat(_toConsumableArray(updatedIdsWithAncestryIds), _toConsumableArray(updatedIdsWithChildrenIds));
305
+ } else newSelectedIds = checkAllChildren(nodeId);
306
+ } else if (allowCheckAllAncestry) {
307
+ newSelectedIds = checkAllAncestry(nodeId, codigos).updatedIdsWithAncestryIds;
308
+ }
316
309
 
317
- _this.setState({
318
- isHandlingSelectedIds: false
319
- });
310
+ return newSelectedIds;
311
+ };
320
312
 
321
- return selectedIds;
322
- }
313
+ var handleUncheck = function handleUncheck(nodeId, handlingSelectedIds, isParent, required) {
314
+ var codigos = _lodash.default.isArray(nodeId) ? nodeId : [nodeId];
315
+ var newSelectedIds = currentSelectedIds.filter(function (id) {
316
+ return !codigos.includes(id);
323
317
  });
324
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "uncheckRequiredChildren", {
325
- configurable: true,
326
- enumerable: true,
327
- writable: true,
328
- value: function value(nodeId, codigos, requiredParentsIds) {
329
- var childrenIds = _this.returnChildrenIds(nodeId);
330
-
331
- var remainRequiredIds = requiredParentsIds.filter(function (id) {
332
- return !childrenIds.includes(id);
333
- });
334
318
 
335
- _this.setState({
336
- requiredParentsIds: (0, _toConsumableArray2["default"])(remainRequiredIds)
337
- }, function () {
338
- return _this.updateAncestryAndSelectedIds(nodeId, codigos, remainRequiredIds);
339
- });
340
- }
341
- });
342
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "handleOnNodeOpen", {
343
- configurable: true,
344
- enumerable: true,
345
- writable: true,
346
- value: function value(node) {
347
- var id = node.id;
348
- var onNodeOpen = _this.props.onNodeOpen;
349
- var alreadyOpenedIds = _this.state.alreadyOpenedIds;
350
-
351
- if (!alreadyOpenedIds.includes(id) && onNodeOpen) {
352
- alreadyOpenedIds = [].concat((0, _toConsumableArray2["default"])(alreadyOpenedIds), [id]);
353
- onNodeOpen(node);
354
- }
355
-
356
- _this.setState({
357
- alreadyOpenedIds: alreadyOpenedIds
358
- });
359
- }
360
- });
361
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "handleCheck", {
362
- configurable: true,
363
- enumerable: true,
364
- writable: true,
365
- value: function value(nodeId, isParent) {
366
- var selectedIds = _this.state.selectedIds;
367
- var codigos = _lodash["default"].isArray(nodeId) ? nodeId : [nodeId];
368
- var isHandlingSelectedIds = _this.state.isHandlingSelectedIds;
369
- var _this$props = _this.props,
370
- allowCheckAllChildren = _this$props.allowCheckAllChildren,
371
- allowCheckAllAncestry = _this$props.allowCheckAllAncestry;
372
- selectedIds = [].concat((0, _toConsumableArray2["default"])(selectedIds), (0, _toConsumableArray2["default"])(codigos));
373
-
374
- if (isParent && isHandlingSelectedIds && allowCheckAllChildren) {
375
- if (allowCheckAllAncestry) {
376
- var _this$checkAllAncestr2 = _this.checkAllAncestry(nodeId, codigos, true),
377
- updatedIdsWithAncestryIds = _this$checkAllAncestr2.updatedIdsWithAncestryIds,
378
- requiredParentsIds = _this$checkAllAncestr2.requiredParentsIds;
379
-
380
- var updatedIdsWithChidlrenIds = _this.checkAllChildren(nodeId, true, requiredParentsIds);
381
-
382
- selectedIds = [].concat((0, _toConsumableArray2["default"])(updatedIdsWithAncestryIds), (0, _toConsumableArray2["default"])(updatedIdsWithChidlrenIds));
383
- } else selectedIds = _this.checkAllChildren(nodeId);
384
- } else if (allowCheckAllAncestry) {
385
- selectedIds = _this.checkAllAncestry(nodeId, codigos);
386
- }
387
-
388
- return selectedIds;
389
- }
390
- });
391
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "handleUncheck", {
392
- configurable: true,
393
- enumerable: true,
394
- writable: true,
395
- value: function value(nodeId, isParent, required) {
396
- var selectedIds = _this.state.selectedIds;
397
- var _this$state2 = _this.state,
398
- isHandlingSelectedIds = _this$state2.isHandlingSelectedIds,
399
- requiredParentsIds = _this$state2.requiredParentsIds;
400
- var _this$props2 = _this.props,
401
- allowCheckAllChildren = _this$props2.allowCheckAllChildren,
402
- allowCheckAllAncestry = _this$props2.allowCheckAllAncestry;
403
- var codigos = _lodash["default"].isArray(nodeId) ? nodeId : [nodeId];
404
- selectedIds = selectedIds.filter(function (id) {
405
- return !codigos.includes(id);
406
- });
319
+ if (isParent && (handlingSelectedIds || isHandlingSelectedIds) && allowCheckAllChildren) {
320
+ if (allowCheckAllAncestry) {
321
+ var updatedSelectedIds = updateAncestryAndSelectedIds(nodeId, codigos, requiredParentsIds);
322
+ newSelectedIds = uncheckAllChildren(nodeId, updatedSelectedIds);
323
+ if (required) uncheckRequiredChildren(nodeId, codigos, requiredParentsIds);
324
+ } else newSelectedIds = uncheckAllChildren(nodeId);
325
+ } else if (allowCheckAllAncestry) {
326
+ newSelectedIds = updateAncestryAndSelectedIds(nodeId, codigos, requiredParentsIds);
327
+ }
328
+
329
+ return newSelectedIds;
330
+ };
331
+
332
+ var updateSelectedIds = function updateSelectedIds(nodeId, checked, isParent) {
333
+ var required = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
334
+ var handlingSelectedIds = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : isHandlingSelectedIds;
335
+
336
+ var newSelectedIds = _toConsumableArray(currentSelectedIds);
337
+
338
+ if (checked) {
339
+ newSelectedIds = handleCheck(nodeId, handlingSelectedIds, isParent);
340
+ } else {
341
+ newSelectedIds = handleUncheck(nodeId, handlingSelectedIds, isParent, required);
342
+ }
407
343
 
408
- if (isParent && isHandlingSelectedIds && allowCheckAllChildren) {
409
- if (allowCheckAllAncestry) {
410
- var updatedSelectedIds = _this.updateAncestryAndSelectedIds(nodeId, codigos, requiredParentsIds);
344
+ setCurrentSelectedIds(newSelectedIds);
345
+ if (onSelectedIdsChange) onSelectedIdsChange(newSelectedIds);
346
+ };
411
347
 
412
- selectedIds = _this.uncheckAllChildren(nodeId, updatedSelectedIds);
413
- if (required) _this.uncheckRequiredChildren(nodeId, codigos, requiredParentsIds);
414
- } else selectedIds = _this.uncheckAllChildren(nodeId);
415
- } else if (allowCheckAllAncestry) {
416
- selectedIds = _this.updateAncestryAndSelectedIds(nodeId, codigos, requiredParentsIds);
417
- }
348
+ var toggleCheckChildren = function toggleCheckChildren(nodeId, check) {
349
+ var required = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
350
+ setIsHandlingSelectedIds(true);
351
+ updateSelectedIds(nodeId, check, true, required, true);
352
+ };
418
353
 
419
- return selectedIds;
354
+ var buildTree = function buildTree(node, parentId, ids) {
355
+ var childrenIds = [];
356
+
357
+ if (node.itens && node.itens.length > 0) {
358
+ childrenIds = node.itens.map(function (i) {
359
+ return i.id;
360
+ });
361
+
362
+ if (ids) {
363
+ var idWithChildren = {};
364
+ idWithChildren[node.id] = childrenIds;
365
+ Object.assign(ids, idWithChildren);
420
366
  }
421
- });
422
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "updateSelectedIds", {
423
- configurable: true,
424
- enumerable: true,
425
- writable: true,
426
- value: function value(nodeId, checked, isParent, required) {
427
- var selectedIds = _this.state.selectedIds;
428
- var onSelectedIdsChange = _this.props.onSelectedIdsChange;
429
-
430
- if (checked) {
431
- selectedIds = _this.handleCheck(nodeId, isParent);
432
- } else {
433
- selectedIds = _this.handleUncheck(nodeId, isParent, required);
434
- }
435
-
436
- _this.setState({
437
- selectedIds: selectedIds
438
- });
367
+ }
439
368
 
440
- if (onSelectedIdsChange) onSelectedIdsChange(selectedIds);
369
+ return /*#__PURE__*/_react.default.createElement(_Node.default, {
370
+ key: "node-".concat(node.id),
371
+ node: node,
372
+ idsInLoading: idsInLoading,
373
+ startNodesOpened: startNodesOpened,
374
+ alwaysShowArrow: alwaysShowArrow,
375
+ childrenIds: childrenIds,
376
+ isParent: node.itens && node.itens.length > 0,
377
+ parentId: parentId,
378
+ nodeRightElements: nodeRightElements,
379
+ nodeToolbarElements: nodeToolbarElements,
380
+ nodeElementsValidations: nodeElementsValidations,
381
+ nodeMenuButtonSize: nodeMenuButtonSize,
382
+ onNodeClick: onNodeClick,
383
+ selectedNodeId: selectedNodeId,
384
+ handlerOnNodeOpen: handleOnNodeOpen
385
+ }, childrenIds.length > 0 && node.itens && node.itens.map(function (nodeitem) {
386
+ return buildTree(nodeitem, node.id, idsWithChildren);
387
+ }));
388
+ };
389
+
390
+ var handleNewSelectedIds = function handleNewSelectedIds(selectedNodeIds) {
391
+ var requiredIds = [];
392
+ var newSelectedIds = [];
393
+ selectedNodeIds.forEach(function (id) {
394
+ var _checkAllAncestry2 = checkAllAncestry(id, [], true, false),
395
+ requiredParents = _checkAllAncestry2.requiredParentsIds,
396
+ updatedIdsWithAncestryIds = _checkAllAncestry2.updatedIdsWithAncestryIds;
397
+
398
+ newSelectedIds = [].concat(_toConsumableArray(newSelectedIds), _toConsumableArray(updatedIdsWithAncestryIds));
399
+
400
+ if (requiredParents) {
401
+ requiredIds = [].concat(_toConsumableArray(requiredIds), _toConsumableArray(requiredParents));
441
402
  }
442
403
  });
443
- Object.defineProperty((0, _assertThisInitialized2["default"])(_this), "buildTree", {
444
- configurable: true,
445
- enumerable: true,
446
- writable: true,
447
- value: function value(node) {
448
- var parentId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
449
- var ids = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
450
- var _this$props3 = _this.props,
451
- nodeRightElements = _this$props3.nodeRightElements,
452
- onNodeClick = _this$props3.onNodeClick,
453
- nodeElementsValidations = _this$props3.nodeElementsValidations,
454
- nodeToolbarElements = _this$props3.nodeToolbarElements,
455
- nodeMenuButtonSize = _this$props3.nodeMenuButtonSize,
456
- alwaysShowArrow = _this$props3.alwaysShowArrow,
457
- startNodesOpened = _this$props3.startNodesOpened,
458
- idsInLoading = _this$props3.idsInLoading,
459
- selectedNodeId = _this$props3.selectedNodeId;
460
- var childrenIds = [];
461
-
462
- if (node.itens && node.itens.length > 0) {
463
- childrenIds = node.itens.map(function (i) {
464
- return i.id;
465
- });
466
-
467
- if (ids) {
468
- var idWithChildren = {};
469
- idWithChildren[node.id] = childrenIds;
470
- Object.assign(ids, idWithChildren);
471
- }
472
- }
473
-
474
- return /*#__PURE__*/_react["default"].createElement(_Node["default"], {
475
- key: "node-".concat(node.id),
476
- node: node,
477
- idsInLoading: idsInLoading,
478
- startNodesOpened: startNodesOpened,
479
- alwaysShowArrow: alwaysShowArrow,
480
- childrenIds: childrenIds,
481
- isParent: node.itens && node.itens.length > 0,
482
- parentId: parentId,
483
- nodeRightElements: nodeRightElements,
484
- nodeToolbarElements: nodeToolbarElements,
485
- nodeElementsValidations: nodeElementsValidations,
486
- nodeMenuButtonSize: nodeMenuButtonSize,
487
- onNodeClick: onNodeClick,
488
- selectedNodeId: selectedNodeId,
489
- handlerOnNodeOpen: _this.handleOnNodeOpen
490
- }, childrenIds.length > 0 && node.itens.map(function (nodeitem) {
491
- return _this.buildTree(nodeitem, node.id, ids);
492
- }));
493
- }
404
+ setRequiredParentsIds(_lodash.default.uniq(requiredIds));
405
+ setCurrentSelectedIds(_lodash.default.uniq(newSelectedIds));
406
+ setSelectedIdsUpdatedOnMount(function (prevState) {
407
+ return prevState || true;
494
408
  });
495
- _this.idsWithChildren = {};
496
- _this.state = {
497
- data: _this.props.data,
498
- propSelectedIds: _this.props.selectedIds,
499
- selectedIds: _this.props.selectedIds,
500
- isHandlingSelectedIds: false,
501
- requiredParentsIds: [],
502
- alreadyOpenedIds: [],
503
- selectedIdsUpdatedOnMount: false
504
- };
505
- return _this;
506
- }
409
+ };
507
410
 
508
- (0, _createClass2["default"])(TreeView, [{
509
- key: "componentDidMount",
510
- value: function componentDidMount() {
511
- this.buildTree(this.state.data, undefined, this.idsWithChildren);
512
- }
513
- }, {
514
- key: "componentDidUpdate",
515
- value: function componentDidUpdate(prevProps, prevState) {
516
- var _this$state3 = this.state,
517
- selectedIds = _this$state3.selectedIds,
518
- propSelectedIds = _this$state3.propSelectedIds,
519
- selectedIdsUpdatedOnMount = _this$state3.selectedIdsUpdatedOnMount;
520
- var allowCheckAllAncestry = this.props.allowCheckAllAncestry;
521
-
522
- var isSameSelectedIds = _lodash["default"].isEqual(propSelectedIds.sort(), prevState.propSelectedIds.sort());
523
-
524
- if (allowCheckAllAncestry && (!selectedIdsUpdatedOnMount || !isSameSelectedIds)) {
525
- this.handleNewSelectedIds(selectedIds);
526
- }
411
+ (0, _react.useEffect)(function () {
412
+ var isSameSelectedIds = _lodash.default.isEqual(propSelectedIds.sort(), selectedIds.sort());
413
+
414
+ if (enableDynamicData && props.data !== data) {
415
+ setData(props.data);
416
+ } else if (!isSameSelectedIds) {
417
+ setCurrentSelectedIds(selectedIds);
418
+ setPropSelectedIds(selectedIds);
527
419
  }
528
- }, {
529
- key: "render",
530
- value: function render() {
531
- var _this$props4 = this.props,
532
- customClass = _this$props4.customClass,
533
- bordered = _this$props4.bordered,
534
- children = _this$props4.children,
535
- styleForContainer = _this$props4.styleForContainer;
536
- var data = this.state.data;
537
- return /*#__PURE__*/_react["default"].createElement(_constants.TreeviewContext.Provider, {
538
- value: this.getContextValues()
539
- }, /*#__PURE__*/_react["default"].createElement("div", {
540
- className: "treeview-component ".concat(customClass)
541
- }, children, /*#__PURE__*/_react["default"].createElement("ul", {
542
- style: styleForContainer,
543
- className: "treeviewcontainer ".concat(bordered && '-bordered')
544
- }, this.buildTree(data))));
420
+ }, [selectedIds.length, props.data]);
421
+ (0, _react.useEffect)(function () {
422
+ if (allowCheckAllAncestry && !selectedIdsUpdatedOnMount) {
423
+ handleNewSelectedIds(currentSelectedIds);
545
424
  }
546
- }], [{
547
- key: "getDerivedStateFromProps",
548
- value: function getDerivedStateFromProps(props, state) {
549
- var data = props.data,
550
- selectedIds = props.selectedIds,
551
- enableDynamicData = props.enableDynamicData;
552
- var propSelectedIds = state.propSelectedIds;
553
-
554
- var isSameSelectedIds = _lodash["default"].isEqual(propSelectedIds.sort(), selectedIds.sort());
555
-
556
- if (enableDynamicData && data !== state.data) {
557
- return {
558
- data: data
559
- };
560
- } else if (!isSameSelectedIds) {
561
- return {
562
- selectedIds: selectedIds,
563
- propSelectedIds: selectedIds
564
- };
565
- }
566
-
567
- return null;
425
+ }, [currentSelectedIds]);
426
+ (0, _react.useEffect)(function () {
427
+ if (allowCheckAllAncestry) {
428
+ handleNewSelectedIds(currentSelectedIds);
568
429
  }
569
- }]);
570
- return TreeView;
571
- }(_react.Component);
572
-
573
- TreeView.propTypes = {
574
- data: _propTypes["default"].object.isRequired,
575
- customClass: _propTypes["default"].string,
576
- bordered: _propTypes["default"].bool,
577
- valuePropName: _propTypes["default"].string.isRequired,
578
- labelPropName: _propTypes["default"].string.isRequired,
579
- parentPropName: _propTypes["default"].string.isRequired,
580
- startNodesOpened: _propTypes["default"].bool,
581
- alwaysShowArrow: _propTypes["default"].bool,
582
- selectedIds: _propTypes["default"].arrayOf(_propTypes["default"].number),
583
- requiredIds: _propTypes["default"].arrayOf(_propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])),
584
- showCheckBox: _propTypes["default"].bool,
585
- onSelectedIdsChange: _propTypes["default"].func,
586
- children: _propTypes["default"].instanceOf(Object),
587
- styleForContainer: _propTypes["default"].object,
588
- allowCheckAllChildren: _propTypes["default"].bool,
589
- allowCheckAllAncestry: _propTypes["default"].bool,
590
- defaultDisabledTooltip: _propTypes["default"].string,
591
- nodeRightElements: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].object), _propTypes["default"].element, _propTypes["default"].object]),
592
- nodeToolbarElements: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].object), _propTypes["default"].element, _propTypes["default"].object]),
593
- nodeMenuButtonSize: _propTypes["default"].oneOf(['mini', 'small', 'medium', 'large', 'default']),
594
- onNodeClick: _propTypes["default"].func,
595
- onNodeOpen: _propTypes["default"].func,
596
- nodeElementsValidations: _propTypes["default"].object,
597
- enableDynamicData: _propTypes["default"].bool,
598
- idsInLoading: _propTypes["default"].arrayOf(_propTypes["default"].number),
599
- selectedNodeId: _propTypes["default"].number
600
- };
601
- TreeView.defaultProps = {
602
- customClass: '',
603
- bordered: false,
604
- startNodesOpened: false,
605
- alwaysShowArrow: false,
606
- selectedIds: [],
607
- requiredIds: [],
608
- showCheckBox: false,
609
- onSelectedIdsChange: undefined,
610
- children: undefined,
611
- styleForContainer: {},
612
- allowCheckAllChildren: false,
613
- allowCheckAllAncestry: false,
614
- defaultDisabledTooltip: '',
615
- nodeRightElements: undefined,
616
- nodeToolbarElements: undefined,
617
- nodeMenuButtonSize: 'small',
618
- onNodeClick: undefined,
619
- onNodeOpen: undefined,
620
- nodeElementsValidations: undefined,
621
- enableDynamicData: false,
622
- idsInLoading: [],
623
- selectedNodeId: undefined
430
+ }, [propSelectedIds]);
431
+ (0, _react.useEffect)(function () {
432
+ buildTree(data, undefined, idsWithChildren);
433
+ }, []);
434
+
435
+ var contextValues = _extends({}, props, {
436
+ requiredIds: propsRequiredIds,
437
+ selectedIds: currentSelectedIds,
438
+ isHandlingSelectedIds: isHandlingSelectedIds,
439
+ selectedIdsUpdatedOnMount: selectedIdsUpdatedOnMount,
440
+ requiredParentsIds: requiredParentsIds,
441
+ alreadyOpenedIds: alreadyOpenedIds,
442
+ handlerUpdateSelectedIds: updateSelectedIds,
443
+ handlerToggleCheckChildren: toggleCheckChildren
444
+ });
445
+
446
+ return /*#__PURE__*/_react.default.createElement(_constants.TreeviewContext.Provider, {
447
+ value: contextValues
448
+ }, /*#__PURE__*/_react.default.createElement("div", {
449
+ className: "treeview-component ".concat(customClass)
450
+ }, children, /*#__PURE__*/_react.default.createElement("ul", {
451
+ style: styleForContainer,
452
+ className: "treeviewcontainer ".concat(bordered && '-bordered')
453
+ }, buildTree(data))));
624
454
  };
455
+
625
456
  var _default = TreeView;
626
- exports["default"] = _default;
457
+ exports.default = _default;