@tecsinapse/react-web-kit 1.20.2 → 1.21.0

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 (384) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/babel.config.esm.js +0 -1
  3. package/babel.config.js +1 -6
  4. package/dist/components/atoms/Accordion/Accordion.js +10 -8
  5. package/dist/components/atoms/Accordion/Accordion.js.map +1 -1
  6. package/dist/components/atoms/Accordion/animations.js +2 -2
  7. package/dist/components/atoms/Accordion/animations.js.map +1 -1
  8. package/dist/components/atoms/Accordion/styled.js +33 -37
  9. package/dist/components/atoms/Accordion/styled.js.map +1 -1
  10. package/dist/components/atoms/Badge/Badge.js +7 -6
  11. package/dist/components/atoms/Badge/Badge.js.map +1 -1
  12. package/dist/components/atoms/Button/Button.js +14 -12
  13. package/dist/components/atoms/Button/Button.js.map +1 -1
  14. package/dist/components/atoms/Button/styled.js +14 -16
  15. package/dist/components/atoms/Button/styled.js.map +1 -1
  16. package/dist/components/atoms/Dropdown/index.js +6 -5
  17. package/dist/components/atoms/Dropdown/index.js.map +1 -1
  18. package/dist/components/atoms/Dropdown/styled.js +30 -21
  19. package/dist/components/atoms/Dropdown/styled.js.map +1 -1
  20. package/dist/components/atoms/Input/Input.js +26 -24
  21. package/dist/components/atoms/Input/Input.js.map +1 -1
  22. package/dist/components/atoms/Input/styled.js +5 -5
  23. package/dist/components/atoms/Input/styled.js.map +1 -1
  24. package/dist/components/atoms/InputMask/InputMask.js +26 -24
  25. package/dist/components/atoms/InputMask/InputMask.js.map +1 -1
  26. package/dist/components/atoms/InputMask/styled.js +5 -5
  27. package/dist/components/atoms/InputMask/styled.js.map +1 -1
  28. package/dist/components/atoms/Modal/Modal.js +8 -7
  29. package/dist/components/atoms/Modal/Modal.js.map +1 -1
  30. package/dist/components/atoms/Modal/animations.js +1 -1
  31. package/dist/components/atoms/Modal/animations.js.map +1 -1
  32. package/dist/components/atoms/Modal/styled.js +30 -24
  33. package/dist/components/atoms/Modal/styled.js.map +1 -1
  34. package/dist/components/atoms/Overlay/Overlay.js +8 -7
  35. package/dist/components/atoms/Overlay/Overlay.js.map +1 -1
  36. package/dist/components/atoms/Overlay/animations.js +1 -1
  37. package/dist/components/atoms/Overlay/animations.js.map +1 -1
  38. package/dist/components/atoms/Overlay/styled.js +21 -20
  39. package/dist/components/atoms/Overlay/styled.js.map +1 -1
  40. package/dist/components/atoms/Skeleton/Skeleton.js +11 -9
  41. package/dist/components/atoms/Skeleton/Skeleton.js.map +1 -1
  42. package/dist/components/atoms/Skeleton/styled.js +42 -66
  43. package/dist/components/atoms/Skeleton/styled.js.map +1 -1
  44. package/dist/components/atoms/Table/Body/TBody.js +5 -4
  45. package/dist/components/atoms/Table/Body/TBody.js.map +1 -1
  46. package/dist/components/atoms/Table/Cell/Td.js +5 -4
  47. package/dist/components/atoms/Table/Cell/Td.js.map +1 -1
  48. package/dist/components/atoms/Table/Cell/styled.js +34 -20
  49. package/dist/components/atoms/Table/Cell/styled.js.map +1 -1
  50. package/dist/components/atoms/Table/Container/TableContainer.js +5 -4
  51. package/dist/components/atoms/Table/Container/TableContainer.js.map +1 -1
  52. package/dist/components/atoms/Table/Container/styled.js +25 -15
  53. package/dist/components/atoms/Table/Container/styled.js.map +1 -1
  54. package/dist/components/atoms/Table/Footer/TFoot.js +5 -4
  55. package/dist/components/atoms/Table/Footer/TFoot.js.map +1 -1
  56. package/dist/components/atoms/Table/Footer/styled.js +5 -6
  57. package/dist/components/atoms/Table/Footer/styled.js.map +1 -1
  58. package/dist/components/atoms/Table/Header/THead.js +5 -4
  59. package/dist/components/atoms/Table/Header/THead.js.map +1 -1
  60. package/dist/components/atoms/Table/Header/Th.js +5 -4
  61. package/dist/components/atoms/Table/Header/Th.js.map +1 -1
  62. package/dist/components/atoms/Table/Header/styled.js +41 -38
  63. package/dist/components/atoms/Table/Header/styled.js.map +1 -1
  64. package/dist/components/atoms/Table/Row/Tr.js +5 -4
  65. package/dist/components/atoms/Table/Row/Tr.js.map +1 -1
  66. package/dist/components/atoms/Table/Row/styled.js +15 -9
  67. package/dist/components/atoms/Table/Row/styled.js.map +1 -1
  68. package/dist/components/atoms/Table/Table.js +5 -4
  69. package/dist/components/atoms/Table/Table.js.map +1 -1
  70. package/dist/components/atoms/Table/Toolbar/TableToolbar.js +7 -6
  71. package/dist/components/atoms/Table/Toolbar/TableToolbar.js.map +1 -1
  72. package/dist/components/atoms/Table/Toolbar/styled.js +5 -6
  73. package/dist/components/atoms/Table/Toolbar/styled.js.map +1 -1
  74. package/dist/components/atoms/Table/styled.js +10 -7
  75. package/dist/components/atoms/Table/styled.js.map +1 -1
  76. package/dist/components/atoms/Tag/Tag.js +6 -5
  77. package/dist/components/atoms/Tag/Tag.js.map +1 -1
  78. package/dist/components/atoms/Tooltip/Tooltip.js +7 -5
  79. package/dist/components/atoms/Tooltip/Tooltip.js.map +1 -1
  80. package/dist/components/atoms/Tooltip/styled.js +41 -122
  81. package/dist/components/atoms/Tooltip/styled.js.map +1 -1
  82. package/dist/components/molecules/Breadcrumbs/BreadcrumbItem/BreadcrumbItem.js +7 -6
  83. package/dist/components/molecules/Breadcrumbs/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
  84. package/dist/components/molecules/Breadcrumbs/BreadcrumbItem/styled.js +16 -18
  85. package/dist/components/molecules/Breadcrumbs/BreadcrumbItem/styled.js.map +1 -1
  86. package/dist/components/molecules/Breadcrumbs/Breadcrumbs.js +5 -4
  87. package/dist/components/molecules/Breadcrumbs/Breadcrumbs.js.map +1 -1
  88. package/dist/components/molecules/Breadcrumbs/styled.js +25 -18
  89. package/dist/components/molecules/Breadcrumbs/styled.js.map +1 -1
  90. package/dist/components/molecules/DatePicker/DatePicker.js +6 -5
  91. package/dist/components/molecules/DatePicker/DatePicker.js.map +1 -1
  92. package/dist/components/molecules/DatePicker/Modal.js +6 -5
  93. package/dist/components/molecules/DatePicker/Modal.js.map +1 -1
  94. package/dist/components/molecules/DatePicker/styled.js +20 -30
  95. package/dist/components/molecules/DatePicker/styled.js.map +1 -1
  96. package/dist/components/molecules/DateTimePicker/DateTimePicker.js +3 -2
  97. package/dist/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  98. package/dist/components/molecules/DateTimePicker/Modal.js +6 -5
  99. package/dist/components/molecules/DateTimePicker/Modal.js.map +1 -1
  100. package/dist/components/molecules/DateTimePicker/styled.js +15 -29
  101. package/dist/components/molecules/DateTimePicker/styled.js.map +1 -1
  102. package/dist/components/molecules/Drawer/Drawer.js +10 -10
  103. package/dist/components/molecules/Drawer/Drawer.js.map +1 -1
  104. package/dist/components/molecules/Drawer/styled.js +35 -63
  105. package/dist/components/molecules/Drawer/styled.js.map +1 -1
  106. package/dist/components/molecules/Grid/Grid.js +15 -11
  107. package/dist/components/molecules/Grid/Grid.js.map +1 -1
  108. package/dist/components/molecules/Grid/Item/Item.js +22 -21
  109. package/dist/components/molecules/Grid/Item/Item.js.map +1 -1
  110. package/dist/components/molecules/Grid/Item/functions.js +4 -2
  111. package/dist/components/molecules/Grid/Item/functions.js.map +1 -1
  112. package/dist/components/molecules/IconTextButton/IconTextButton.js +10 -9
  113. package/dist/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  114. package/dist/components/molecules/IconTextButton/TextComponent.js +12 -9
  115. package/dist/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  116. package/dist/components/molecules/IconTextButton/styled.js +25 -18
  117. package/dist/components/molecules/IconTextButton/styled.js.map +1 -1
  118. package/dist/components/molecules/InputPassword/InputPassword.js +5 -4
  119. package/dist/components/molecules/InputPassword/InputPassword.js.map +1 -1
  120. package/dist/components/molecules/LabeledSwitch/LabelComponent.js +13 -10
  121. package/dist/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  122. package/dist/components/molecules/LabeledSwitch/LabeledSwitch.js +11 -10
  123. package/dist/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  124. package/dist/components/molecules/LabeledSwitch/styled.js +12 -17
  125. package/dist/components/molecules/LabeledSwitch/styled.js.map +1 -1
  126. package/dist/components/molecules/Masonry/Masonry.js +8 -6
  127. package/dist/components/molecules/Masonry/Masonry.js.map +1 -1
  128. package/dist/components/molecules/Masonry/styled.js +21 -28
  129. package/dist/components/molecules/Masonry/styled.js.map +1 -1
  130. package/dist/components/molecules/Menubar/MenuBlock/MenuBlock.js +24 -20
  131. package/dist/components/molecules/Menubar/MenuBlock/MenuBlock.js.map +1 -1
  132. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/MenuItem.js +10 -8
  133. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/MenuItem.js.map +1 -1
  134. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/SubMenuBlock.js +5 -4
  135. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/SubMenuBlock.js.map +1 -1
  136. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/styled.js +21 -15
  137. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/styled.js.map +1 -1
  138. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/styled.js +21 -19
  139. package/dist/components/molecules/Menubar/MenuBlock/MenuItem/styled.js.map +1 -1
  140. package/dist/components/molecules/Menubar/MenuBlock/styled.js +34 -33
  141. package/dist/components/molecules/Menubar/MenuBlock/styled.js.map +1 -1
  142. package/dist/components/molecules/Menubar/Menubar.js +14 -12
  143. package/dist/components/molecules/Menubar/Menubar.js.map +1 -1
  144. package/dist/components/molecules/Menubar/MostUsed/MostUsed.js +29 -25
  145. package/dist/components/molecules/Menubar/MostUsed/MostUsed.js.map +1 -1
  146. package/dist/components/molecules/Menubar/MostUsed/styled.js +41 -27
  147. package/dist/components/molecules/Menubar/MostUsed/styled.js.map +1 -1
  148. package/dist/components/molecules/Menubar/SearchResultItem/SearchResultItem.js +6 -5
  149. package/dist/components/molecules/Menubar/SearchResultItem/SearchResultItem.js.map +1 -1
  150. package/dist/components/molecules/Menubar/SearchResultItem/styled.js +21 -16
  151. package/dist/components/molecules/Menubar/SearchResultItem/styled.js.map +1 -1
  152. package/dist/components/molecules/Menubar/SearchResultItem/utils.js +2 -2
  153. package/dist/components/molecules/Menubar/SearchResultItem/utils.js.map +1 -1
  154. package/dist/components/molecules/Menubar/styled.js +117 -96
  155. package/dist/components/molecules/Menubar/styled.js.map +1 -1
  156. package/dist/components/molecules/Select/Dropdown/Dropdown.js +16 -15
  157. package/dist/components/molecules/Select/Dropdown/Dropdown.js.map +1 -1
  158. package/dist/components/molecules/Select/Dropdown/components/SearchInput.js +7 -6
  159. package/dist/components/molecules/Select/Dropdown/components/SearchInput.js.map +1 -1
  160. package/dist/components/molecules/Select/Dropdown/styled.js +111 -107
  161. package/dist/components/molecules/Select/Dropdown/styled.js.map +1 -1
  162. package/dist/components/molecules/Select/Select.js +20 -18
  163. package/dist/components/molecules/Select/Select.js.map +1 -1
  164. package/dist/components/molecules/Select/SelectItem/SelectItem.js +13 -12
  165. package/dist/components/molecules/Select/SelectItem/SelectItem.js.map +1 -1
  166. package/dist/components/molecules/Select/SelectItem/styled.js +38 -39
  167. package/dist/components/molecules/Select/SelectItem/styled.js.map +1 -1
  168. package/dist/components/molecules/Select/styled.js +6 -11
  169. package/dist/components/molecules/Select/styled.js.map +1 -1
  170. package/dist/components/molecules/Snackbar/Snackbar.js +9 -8
  171. package/dist/components/molecules/Snackbar/Snackbar.js.map +1 -1
  172. package/dist/components/molecules/Snackbar/styled.js +6 -7
  173. package/dist/components/molecules/Snackbar/styled.js.map +1 -1
  174. package/dist/components/molecules/TextArea/TextArea.js +27 -26
  175. package/dist/components/molecules/TextArea/TextArea.js.map +1 -1
  176. package/dist/components/molecules/TextArea/styled.js +17 -11
  177. package/dist/components/molecules/TextArea/styled.js.map +1 -1
  178. package/dist/components/organisms/DataGrid/DataGrid.js +34 -32
  179. package/dist/components/organisms/DataGrid/DataGrid.js.map +1 -1
  180. package/dist/components/organisms/DataGrid/Footer/Footer.js +17 -15
  181. package/dist/components/organisms/DataGrid/Footer/Footer.js.map +1 -1
  182. package/dist/components/organisms/DataGrid/Footer/styled.js +75 -74
  183. package/dist/components/organisms/DataGrid/Footer/styled.js.map +1 -1
  184. package/dist/components/organisms/DataGrid/Header/Header.js +37 -32
  185. package/dist/components/organisms/DataGrid/Header/Header.js.map +1 -1
  186. package/dist/components/organisms/DataGrid/Header/styled.js +10 -8
  187. package/dist/components/organisms/DataGrid/Header/styled.js.map +1 -1
  188. package/dist/components/organisms/DataGrid/Row/Row.js +18 -14
  189. package/dist/components/organisms/DataGrid/Row/Row.js.map +1 -1
  190. package/dist/components/organisms/DataGrid/styled.js +10 -8
  191. package/dist/components/organisms/DataGrid/styled.js.map +1 -1
  192. package/dist/hooks/useClickAwayListener.js +3 -1
  193. package/dist/hooks/useClickAwayListener.js.map +1 -1
  194. package/esm/components/atoms/Accordion/Accordion.js +30 -10
  195. package/esm/components/atoms/Accordion/Accordion.js.map +1 -1
  196. package/esm/components/atoms/Accordion/animations.js +2 -2
  197. package/esm/components/atoms/Accordion/animations.js.map +1 -1
  198. package/esm/components/atoms/Accordion/styled.js +7 -7
  199. package/esm/components/atoms/Accordion/styled.js.map +1 -1
  200. package/esm/components/atoms/Badge/Badge.js +3 -1
  201. package/esm/components/atoms/Badge/Badge.js.map +1 -1
  202. package/esm/components/atoms/Button/Button.js +3 -1
  203. package/esm/components/atoms/Button/Button.js.map +1 -1
  204. package/esm/components/atoms/Button/hooks/useMouseHover.js +17 -4
  205. package/esm/components/atoms/Button/hooks/useMouseHover.js.map +1 -1
  206. package/esm/components/atoms/Button/hooks/useMousePressed.js +17 -4
  207. package/esm/components/atoms/Button/hooks/useMousePressed.js.map +1 -1
  208. package/esm/components/atoms/Button/styled.js +3 -3
  209. package/esm/components/atoms/Button/styled.js.map +1 -1
  210. package/esm/components/atoms/Dropdown/index.js +6 -2
  211. package/esm/components/atoms/Dropdown/index.js.map +1 -1
  212. package/esm/components/atoms/Dropdown/styled.js +2 -2
  213. package/esm/components/atoms/Dropdown/styled.js.map +1 -1
  214. package/esm/components/atoms/Input/Input.js +3 -1
  215. package/esm/components/atoms/Input/Input.js.map +1 -1
  216. package/esm/components/atoms/Input/styled.js +2 -2
  217. package/esm/components/atoms/Input/styled.js.map +1 -1
  218. package/esm/components/atoms/InputMask/InputMask.js +3 -1
  219. package/esm/components/atoms/InputMask/InputMask.js.map +1 -1
  220. package/esm/components/atoms/InputMask/styled.js +2 -2
  221. package/esm/components/atoms/InputMask/styled.js.map +1 -1
  222. package/esm/components/atoms/Modal/Modal.js +10 -2
  223. package/esm/components/atoms/Modal/Modal.js.map +1 -1
  224. package/esm/components/atoms/Modal/styled.js +2 -2
  225. package/esm/components/atoms/Modal/styled.js.map +1 -1
  226. package/esm/components/atoms/Overlay/Overlay.js +6 -2
  227. package/esm/components/atoms/Overlay/Overlay.js.map +1 -1
  228. package/esm/components/atoms/Overlay/styled.js +2 -2
  229. package/esm/components/atoms/Overlay/styled.js.map +1 -1
  230. package/esm/components/atoms/Skeleton/Skeleton.js +3 -1
  231. package/esm/components/atoms/Skeleton/Skeleton.js.map +1 -1
  232. package/esm/components/atoms/Skeleton/styled.js +8 -8
  233. package/esm/components/atoms/Skeleton/styled.js.map +1 -1
  234. package/esm/components/atoms/Table/Body/TBody.js +3 -1
  235. package/esm/components/atoms/Table/Body/TBody.js.map +1 -1
  236. package/esm/components/atoms/Table/Cell/Td.js +3 -1
  237. package/esm/components/atoms/Table/Cell/Td.js.map +1 -1
  238. package/esm/components/atoms/Table/Cell/styled.js +2 -2
  239. package/esm/components/atoms/Table/Cell/styled.js.map +1 -1
  240. package/esm/components/atoms/Table/Container/TableContainer.js +3 -1
  241. package/esm/components/atoms/Table/Container/TableContainer.js.map +1 -1
  242. package/esm/components/atoms/Table/Container/styled.js +3 -3
  243. package/esm/components/atoms/Table/Container/styled.js.map +1 -1
  244. package/esm/components/atoms/Table/Footer/TFoot.js +3 -1
  245. package/esm/components/atoms/Table/Footer/TFoot.js.map +1 -1
  246. package/esm/components/atoms/Table/Footer/styled.js +2 -2
  247. package/esm/components/atoms/Table/Footer/styled.js.map +1 -1
  248. package/esm/components/atoms/Table/Header/THead.js +3 -1
  249. package/esm/components/atoms/Table/Header/THead.js.map +1 -1
  250. package/esm/components/atoms/Table/Header/Th.js +3 -1
  251. package/esm/components/atoms/Table/Header/Th.js.map +1 -1
  252. package/esm/components/atoms/Table/Header/styled.js +5 -5
  253. package/esm/components/atoms/Table/Header/styled.js.map +1 -1
  254. package/esm/components/atoms/Table/Row/Tr.js +3 -1
  255. package/esm/components/atoms/Table/Row/Tr.js.map +1 -1
  256. package/esm/components/atoms/Table/Row/styled.js +2 -2
  257. package/esm/components/atoms/Table/Row/styled.js.map +1 -1
  258. package/esm/components/atoms/Table/Table.js +3 -1
  259. package/esm/components/atoms/Table/Table.js.map +1 -1
  260. package/esm/components/atoms/Table/Toolbar/TableToolbar.js +3 -1
  261. package/esm/components/atoms/Table/Toolbar/TableToolbar.js.map +1 -1
  262. package/esm/components/atoms/Table/Toolbar/styled.js +2 -2
  263. package/esm/components/atoms/Table/Toolbar/styled.js.map +1 -1
  264. package/esm/components/atoms/Table/styled.js +3 -3
  265. package/esm/components/atoms/Table/styled.js.map +1 -1
  266. package/esm/components/atoms/Tag/Tag.js +3 -1
  267. package/esm/components/atoms/Tag/Tag.js.map +1 -1
  268. package/esm/components/atoms/Tooltip/Tooltip.js +17 -4
  269. package/esm/components/atoms/Tooltip/Tooltip.js.map +1 -1
  270. package/esm/components/atoms/Tooltip/styled.js +15 -15
  271. package/esm/components/atoms/Tooltip/styled.js.map +1 -1
  272. package/esm/components/molecules/Breadcrumbs/BreadcrumbItem/styled.js +3 -3
  273. package/esm/components/molecules/Breadcrumbs/BreadcrumbItem/styled.js.map +1 -1
  274. package/esm/components/molecules/Breadcrumbs/Breadcrumbs.js +3 -1
  275. package/esm/components/molecules/Breadcrumbs/Breadcrumbs.js.map +1 -1
  276. package/esm/components/molecules/Breadcrumbs/styled.js +3 -3
  277. package/esm/components/molecules/Breadcrumbs/styled.js.map +1 -1
  278. package/esm/components/molecules/DatePicker/DatePicker.js +18 -3
  279. package/esm/components/molecules/DatePicker/DatePicker.js.map +1 -1
  280. package/esm/components/molecules/DatePicker/Modal.js +3 -1
  281. package/esm/components/molecules/DatePicker/Modal.js.map +1 -1
  282. package/esm/components/molecules/DatePicker/styled.js +5 -5
  283. package/esm/components/molecules/DatePicker/styled.js.map +1 -1
  284. package/esm/components/molecules/DateTimePicker/DateTimePicker.js +15 -2
  285. package/esm/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
  286. package/esm/components/molecules/DateTimePicker/Modal.js +3 -1
  287. package/esm/components/molecules/DateTimePicker/Modal.js.map +1 -1
  288. package/esm/components/molecules/DateTimePicker/styled.js +4 -4
  289. package/esm/components/molecules/DateTimePicker/styled.js.map +1 -1
  290. package/esm/components/molecules/Drawer/Drawer.js +12 -4
  291. package/esm/components/molecules/Drawer/Drawer.js.map +1 -1
  292. package/esm/components/molecules/Drawer/styled.js +7 -7
  293. package/esm/components/molecules/Drawer/styled.js.map +1 -1
  294. package/esm/components/molecules/Grid/Grid.js +15 -7
  295. package/esm/components/molecules/Grid/Grid.js.map +1 -1
  296. package/esm/components/molecules/Grid/Item/Item.js +13 -5
  297. package/esm/components/molecules/Grid/Item/Item.js.map +1 -1
  298. package/esm/components/molecules/Grid/Item/functions.js +2 -2
  299. package/esm/components/molecules/Grid/Item/functions.js.map +1 -1
  300. package/esm/components/molecules/IconTextButton/IconTextButton.js +3 -1
  301. package/esm/components/molecules/IconTextButton/IconTextButton.js.map +1 -1
  302. package/esm/components/molecules/IconTextButton/TextComponent.js +3 -3
  303. package/esm/components/molecules/IconTextButton/TextComponent.js.map +1 -1
  304. package/esm/components/molecules/IconTextButton/hooks/useIconTextButton.js +19 -5
  305. package/esm/components/molecules/IconTextButton/hooks/useIconTextButton.js.map +1 -1
  306. package/esm/components/molecules/IconTextButton/styled.js +4 -4
  307. package/esm/components/molecules/IconTextButton/styled.js.map +1 -1
  308. package/esm/components/molecules/InputPassword/InputPassword.js +18 -3
  309. package/esm/components/molecules/InputPassword/InputPassword.js.map +1 -1
  310. package/esm/components/molecules/LabeledSwitch/LabelComponent.js +5 -3
  311. package/esm/components/molecules/LabeledSwitch/LabelComponent.js.map +1 -1
  312. package/esm/components/molecules/LabeledSwitch/LabeledSwitch.js +3 -1
  313. package/esm/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -1
  314. package/esm/components/molecules/LabeledSwitch/styled.js +4 -4
  315. package/esm/components/molecules/LabeledSwitch/styled.js.map +1 -1
  316. package/esm/components/molecules/Masonry/styled.js +4 -4
  317. package/esm/components/molecules/Masonry/styled.js.map +1 -1
  318. package/esm/components/molecules/Menubar/MenuBlock/MenuBlock.js +1 -1
  319. package/esm/components/molecules/Menubar/MenuBlock/MenuBlock.js.map +1 -1
  320. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/MenuItem.js +16 -3
  321. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/MenuItem.js.map +1 -1
  322. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/styled.js +4 -4
  323. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/SubMenuBlock/styled.js.map +1 -1
  324. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/styled.js +3 -3
  325. package/esm/components/molecules/Menubar/MenuBlock/MenuItem/styled.js.map +1 -1
  326. package/esm/components/molecules/Menubar/MenuBlock/styled.js +7 -7
  327. package/esm/components/molecules/Menubar/MenuBlock/styled.js.map +1 -1
  328. package/esm/components/molecules/Menubar/Menubar.js +30 -12
  329. package/esm/components/molecules/Menubar/Menubar.js.map +1 -1
  330. package/esm/components/molecules/Menubar/MostUsed/MostUsed.js +2 -2
  331. package/esm/components/molecules/Menubar/MostUsed/MostUsed.js.map +1 -1
  332. package/esm/components/molecules/Menubar/MostUsed/styled.js +3 -3
  333. package/esm/components/molecules/Menubar/MostUsed/styled.js.map +1 -1
  334. package/esm/components/molecules/Menubar/SearchResultItem/styled.js +5 -5
  335. package/esm/components/molecules/Menubar/SearchResultItem/styled.js.map +1 -1
  336. package/esm/components/molecules/Menubar/SearchResultItem/utils.js +2 -2
  337. package/esm/components/molecules/Menubar/SearchResultItem/utils.js.map +1 -1
  338. package/esm/components/molecules/Menubar/animations.js +7 -3
  339. package/esm/components/molecules/Menubar/animations.js.map +1 -1
  340. package/esm/components/molecules/Menubar/styled.js +11 -11
  341. package/esm/components/molecules/Menubar/styled.js.map +1 -1
  342. package/esm/components/molecules/Menubar/utils.js +1 -1
  343. package/esm/components/molecules/Menubar/utils.js.map +1 -1
  344. package/esm/components/molecules/Select/Dropdown/Dropdown.js +20 -6
  345. package/esm/components/molecules/Select/Dropdown/Dropdown.js.map +1 -1
  346. package/esm/components/molecules/Select/Dropdown/styled.js +13 -13
  347. package/esm/components/molecules/Select/Dropdown/styled.js.map +1 -1
  348. package/esm/components/molecules/Select/Select.js +25 -4
  349. package/esm/components/molecules/Select/Select.js.map +1 -1
  350. package/esm/components/molecules/Select/SelectItem/SelectItem.js +28 -6
  351. package/esm/components/molecules/Select/SelectItem/SelectItem.js.map +1 -1
  352. package/esm/components/molecules/Select/SelectItem/styled.js +6 -6
  353. package/esm/components/molecules/Select/SelectItem/styled.js.map +1 -1
  354. package/esm/components/molecules/Select/styled.js +3 -3
  355. package/esm/components/molecules/Select/styled.js.map +1 -1
  356. package/esm/components/molecules/Snackbar/Snackbar.js +3 -1
  357. package/esm/components/molecules/Snackbar/Snackbar.js.map +1 -1
  358. package/esm/components/molecules/Snackbar/styled.js +3 -3
  359. package/esm/components/molecules/Snackbar/styled.js.map +1 -1
  360. package/esm/components/molecules/TextArea/TextArea.js +3 -1
  361. package/esm/components/molecules/TextArea/TextArea.js.map +1 -1
  362. package/esm/components/molecules/TextArea/styled.js +3 -3
  363. package/esm/components/molecules/TextArea/styled.js.map +1 -1
  364. package/esm/components/organisms/DataGrid/DataGrid.js +27 -13
  365. package/esm/components/organisms/DataGrid/DataGrid.js.map +1 -1
  366. package/esm/components/organisms/DataGrid/Footer/Footer.js +20 -8
  367. package/esm/components/organisms/DataGrid/Footer/Footer.js.map +1 -1
  368. package/esm/components/organisms/DataGrid/Footer/styled.js +12 -12
  369. package/esm/components/organisms/DataGrid/Footer/styled.js.map +1 -1
  370. package/esm/components/organisms/DataGrid/Header/Header.js +21 -8
  371. package/esm/components/organisms/DataGrid/Header/Header.js.map +1 -1
  372. package/esm/components/organisms/DataGrid/Header/styled.js +2 -2
  373. package/esm/components/organisms/DataGrid/Header/styled.js.map +1 -1
  374. package/esm/components/organisms/DataGrid/Row/Row.js +1 -1
  375. package/esm/components/organisms/DataGrid/Row/Row.js.map +1 -1
  376. package/esm/components/organisms/DataGrid/styled.js +2 -2
  377. package/esm/components/organisms/DataGrid/styled.js.map +1 -1
  378. package/esm/components/organisms/DataGrid/utils.js +14 -1
  379. package/esm/components/organisms/DataGrid/utils.js.map +1 -1
  380. package/esm/hooks/useClickAwayListener.js +2 -5
  381. package/esm/hooks/useClickAwayListener.js.map +1 -1
  382. package/esm/hooks/useWindowSize.js +15 -2
  383. package/esm/hooks/useWindowSize.js.map +1 -1
  384. package/package.json +3 -3
@@ -21,39 +21,41 @@ var _utils = require("./utils");
21
21
 
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
23
 
24
- const DataGrid = ({
25
- headers,
26
- data,
27
- rowKeyExtractor,
28
- toolbarTitle,
29
- toolbarFooter,
30
- toolbarRightIcons,
31
- selectable = false,
32
- selectedRows = [],
33
- onSelectedRows,
34
- pagination = false,
35
- rowsPerPage = 10,
36
- onRowsPerPageChange,
37
- rowsPerPageOptions: _rowsPerPageOptions,
38
- rowsPerPageLabel: _rowsPerPageLabel,
39
- exportLabel = 'Exportar',
40
- exportFunction,
41
- rowsCount,
42
- page = 0,
43
- onPageChange,
44
- loading = false,
45
- skeletonComponent,
46
- emptyPlaceholder,
47
- exportComponent,
48
- ...rest
49
- }) => {
24
+ const DataGrid = _ref => {
25
+ let {
26
+ headers,
27
+ data,
28
+ rowKeyExtractor,
29
+ toolbarTitle,
30
+ toolbarFooter,
31
+ toolbarRightIcons,
32
+ selectable = false,
33
+ selectedRows = [],
34
+ onSelectedRows,
35
+ pagination = false,
36
+ rowsPerPage = 10,
37
+ onRowsPerPageChange,
38
+ rowsPerPageOptions: _rowsPerPageOptions,
39
+ rowsPerPageLabel: _rowsPerPageLabel,
40
+ exportLabel = 'Exportar',
41
+ exportFunction,
42
+ rowsCount,
43
+ page = 0,
44
+ onPageChange,
45
+ loading = false,
46
+ skeletonComponent,
47
+ emptyPlaceholder,
48
+ exportComponent,
49
+ ...rest
50
+ } = _ref;
51
+
50
52
  if (selectable && (!selectedRows || !onSelectedRows)) {
51
53
  throw new Error('[DataGrid] You should specify selection handlers (selectedRows, onSelectedRows)');
52
54
  }
53
55
 
54
- const rowsPerPageLabel = _react.default.useCallback(value => _rowsPerPageLabel ? _rowsPerPageLabel(value) : `Exibir por página: ${value} itens`, [_rowsPerPageLabel]);
56
+ const rowsPerPageLabel = _react.default.useCallback(value => _rowsPerPageLabel ? _rowsPerPageLabel(value) : "Exibir por p\xE1gina: ".concat(value, " itens"), [_rowsPerPageLabel]);
55
57
 
56
- const rowsPerPageOptions = _react.default.useMemo(() => _rowsPerPageOptions ?? [10, 25, 50], [_rowsPerPageOptions]);
58
+ const rowsPerPageOptions = _react.default.useMemo(() => _rowsPerPageOptions !== null && _rowsPerPageOptions !== void 0 ? _rowsPerPageOptions : [10, 25, 50], [_rowsPerPageOptions]);
57
59
 
58
60
  const handleSelect = _react.default.useCallback((current, checked) => {
59
61
  if (checked) {
@@ -75,7 +77,7 @@ const DataGrid = ({
75
77
  selectable: selectable,
76
78
  headers: headers,
77
79
  data: data,
78
- rowsCount: rowsCount ?? data.length,
80
+ rowsCount: rowsCount !== null && rowsCount !== void 0 ? rowsCount : data.length,
79
81
  rowKeyExtractor: rowKeyExtractor,
80
82
  selectedRows: selectedRows,
81
83
  onSelected: onSelectedRows
@@ -90,13 +92,13 @@ const DataGrid = ({
90
92
  })) : _react.default.createElement("tr", null, _react.default.createElement("td", {
91
93
  colSpan: 99
92
94
  }, emptyPlaceholder))) : _react.default.createElement(_Table.TBody, null, [...Array(rowsPerPage).keys()].map(idx => _react.default.createElement(_Table.Tr, {
93
- key: `skeleton-${idx}`
95
+ key: "skeleton-".concat(idx)
94
96
  }, _react.default.createElement(_Table.Td, {
95
97
  colSpan: 99,
96
98
  style: {
97
99
  padding: 0
98
100
  }
99
- }, skeletonComponent ?? _react.default.createElement(_Skeleton.Skeleton, {
101
+ }, skeletonComponent !== null && skeletonComponent !== void 0 ? skeletonComponent : _react.default.createElement(_Skeleton.Skeleton, {
100
102
  height: 55,
101
103
  radius: "mili",
102
104
  animation: "wave"
@@ -111,7 +113,7 @@ const DataGrid = ({
111
113
  rowsPerPage: rowsPerPage,
112
114
  onRowsPerPageChange: onRowsPerPageChange,
113
115
  rowsPerPageOptions: rowsPerPageOptions,
114
- rowsCount: rowsCount ?? data.length,
116
+ rowsCount: rowsCount !== null && rowsCount !== void 0 ? rowsCount : data.length,
115
117
  page: page,
116
118
  onPageChange: onPageChange,
117
119
  pagination: pagination,
@@ -1 +1 @@
1
- {"version":3,"file":"DataGrid.js","names":["DataGrid","headers","data","rowKeyExtractor","toolbarTitle","toolbarFooter","toolbarRightIcons","selectable","selectedRows","onSelectedRows","pagination","rowsPerPage","onRowsPerPageChange","rowsPerPageOptions","_rowsPerPageOptions","rowsPerPageLabel","_rowsPerPageLabel","exportLabel","exportFunction","rowsCount","page","onPageChange","loading","skeletonComponent","emptyPlaceholder","exportComponent","rest","Error","React","useCallback","value","useMemo","handleSelect","current","checked","prevState","idx","findIndex","el","removeElement","length","getData","map","item","some","sel","Array","keys","padding","width","Number"],"sources":["../../../../src/components/organisms/DataGrid/DataGrid.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Table,\n TableToolbar,\n TableContainer,\n Tr,\n Td,\n TBody,\n} from '../../atoms/Table';\nimport { Header } from './Header';\nimport { Row } from './Row';\nimport { HeadersType } from './types';\nimport { Footer } from './Footer';\nimport { Skeleton } from '../../atoms/Skeleton';\nimport { getData, removeElement } from './utils';\n\nexport interface DataGridProps<Data>\n extends React.HTMLAttributes<HTMLDivElement> {\n headers: HeadersType<Data>[];\n data: Data[];\n /** Unique identifier for row data */\n rowKeyExtractor: (data: Data) => string;\n toolbarRightIcons?: React.ReactNode;\n toolbarFooter?: React.ReactNode;\n toolbarTitle: string;\n /** Enable rows selection */\n selectable?: boolean;\n /** Selected items */\n selectedRows?: Data[];\n /** Selection handler */\n onSelectedRows?: (data: Data[] | ((prevState: Data[]) => Data[])) => void;\n /** Shows pagination controls */\n pagination?: boolean;\n /** Results per page */\n rowsPerPage?: number;\n /** Results per page handler */\n onRowsPerPageChange?: (value: number) => void;\n rowsPerPageOptions?: number[];\n rowsPerPageLabel?: (value: number) => string;\n /** Export button label */\n exportLabel?: string;\n exportFunction?: () => void;\n /** Total data elements. Only specify this property if your data is server-side */\n rowsCount?: number;\n /** Current page. Always start in 0 */\n page?: number;\n /** Current page handler */\n onPageChange?: (page: number) => void;\n /** Loading state. The amount of skeleton rows is based on current rowsPerPage */\n loading?: boolean;\n /** Custom skeleton component for better visual */\n skeletonComponent?: React.ReactNode;\n /** Empty state placeholder */\n emptyPlaceholder?: React.ReactNode;\n /** Export component, use if default button with label is not ideal. This prop, not receive \"exportLabel\" and \"exportFunction\" */\n exportComponent?: React.ReactNode;\n}\n\n/** Note: Consider memoizing functions for a better performance */\nconst DataGrid = <Data,>({\n headers,\n data,\n rowKeyExtractor,\n toolbarTitle,\n toolbarFooter,\n toolbarRightIcons,\n selectable = false,\n selectedRows = [],\n onSelectedRows,\n pagination = false,\n rowsPerPage = 10,\n onRowsPerPageChange,\n rowsPerPageOptions: _rowsPerPageOptions,\n rowsPerPageLabel: _rowsPerPageLabel,\n exportLabel = 'Exportar',\n exportFunction,\n rowsCount,\n page = 0,\n onPageChange,\n loading = false,\n skeletonComponent,\n emptyPlaceholder,\n exportComponent,\n ...rest\n}: DataGridProps<Data>): JSX.Element => {\n if (selectable && (!selectedRows || !onSelectedRows)) {\n throw new Error(\n '[DataGrid] You should specify selection handlers (selectedRows, onSelectedRows)'\n );\n }\n\n const rowsPerPageLabel = React.useCallback(\n value =>\n _rowsPerPageLabel\n ? _rowsPerPageLabel(value)\n : `Exibir por página: ${value} itens`,\n [_rowsPerPageLabel]\n );\n const rowsPerPageOptions = React.useMemo(\n () => _rowsPerPageOptions ?? [10, 25, 50],\n [_rowsPerPageOptions]\n );\n\n const handleSelect = React.useCallback(\n (current, checked) => {\n if (checked) {\n onSelectedRows?.(prevState => [...prevState, current]);\n return;\n }\n\n onSelectedRows?.(prevState => {\n const idx = prevState.findIndex(\n el => rowKeyExtractor(el) === rowKeyExtractor(current)\n );\n return [...removeElement(prevState, idx)];\n });\n },\n [onSelectedRows, rowKeyExtractor]\n );\n\n return (\n <TableContainer {...rest}>\n <TableToolbar\n title={toolbarTitle}\n rightIcons={toolbarRightIcons}\n footer={toolbarFooter}\n />\n <Table>\n <Header\n selectable={selectable}\n headers={headers}\n data={data}\n rowsCount={rowsCount ?? data.length}\n rowKeyExtractor={rowKeyExtractor}\n selectedRows={selectedRows}\n onSelected={onSelectedRows}\n />\n\n {!loading ? (\n <TBody>\n {data.length > 0 ? (\n getData(data, rowsCount, page, rowsPerPage, pagination).map(\n item => (\n <Row\n key={rowKeyExtractor(item)}\n rowKeyExtractor={rowKeyExtractor}\n handleSelect={handleSelect}\n selectable={selectable}\n headers={headers}\n data={item}\n checked={selectedRows?.some(\n sel => rowKeyExtractor(sel) === rowKeyExtractor(item)\n )}\n />\n )\n )\n ) : (\n <tr>\n <td colSpan={99}>{emptyPlaceholder}</td>\n </tr>\n )}\n </TBody>\n ) : (\n <TBody>\n {[...Array(rowsPerPage).keys()].map(idx => (\n <Tr key={`skeleton-${idx}`}>\n <Td colSpan={99} style={{ padding: 0 }}>\n {skeletonComponent ?? (\n <Skeleton height={55} radius=\"mili\" animation=\"wave\">\n <div style={{ width: '100%' }} />\n </Skeleton>\n )}\n </Td>\n </Tr>\n ))}\n </TBody>\n )}\n\n {(Number(rowsCount) > 0 || data.length > 0) && (\n <Footer\n exportFunction={exportFunction}\n exportLabel={exportLabel}\n rowsPerPageLabel={rowsPerPageLabel}\n rowsPerPage={rowsPerPage}\n onRowsPerPageChange={onRowsPerPageChange}\n rowsPerPageOptions={rowsPerPageOptions}\n rowsCount={rowsCount ?? data.length}\n page={page}\n onPageChange={onPageChange}\n pagination={pagination}\n exportComponent={exportComponent}\n />\n )}\n </Table>\n </TableContainer>\n );\n};\n\nexport default DataGrid;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DataGrid.js","names":["DataGrid","headers","data","rowKeyExtractor","toolbarTitle","toolbarFooter","toolbarRightIcons","selectable","selectedRows","onSelectedRows","pagination","rowsPerPage","onRowsPerPageChange","rowsPerPageOptions","_rowsPerPageOptions","rowsPerPageLabel","_rowsPerPageLabel","exportLabel","exportFunction","rowsCount","page","onPageChange","loading","skeletonComponent","emptyPlaceholder","exportComponent","rest","Error","React","useCallback","value","useMemo","handleSelect","current","checked","prevState","idx","findIndex","el","removeElement","length","getData","map","item","some","sel","Array","keys","padding","width","Number"],"sources":["../../../../src/components/organisms/DataGrid/DataGrid.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Table,\n TableToolbar,\n TableContainer,\n Tr,\n Td,\n TBody,\n} from '../../atoms/Table';\nimport { Header } from './Header';\nimport { Row } from './Row';\nimport { HeadersType } from './types';\nimport { Footer } from './Footer';\nimport { Skeleton } from '../../atoms/Skeleton';\nimport { getData, removeElement } from './utils';\n\nexport interface DataGridProps<Data>\n extends React.HTMLAttributes<HTMLDivElement> {\n headers: HeadersType<Data>[];\n data: Data[];\n /** Unique identifier for row data */\n rowKeyExtractor: (data: Data) => string;\n toolbarRightIcons?: React.ReactNode;\n toolbarFooter?: React.ReactNode;\n toolbarTitle: string;\n /** Enable rows selection */\n selectable?: boolean;\n /** Selected items */\n selectedRows?: Data[];\n /** Selection handler */\n onSelectedRows?: (data: Data[] | ((prevState: Data[]) => Data[])) => void;\n /** Shows pagination controls */\n pagination?: boolean;\n /** Results per page */\n rowsPerPage?: number;\n /** Results per page handler */\n onRowsPerPageChange?: (value: number) => void;\n rowsPerPageOptions?: number[];\n rowsPerPageLabel?: (value: number) => string;\n /** Export button label */\n exportLabel?: string;\n exportFunction?: () => void;\n /** Total data elements. Only specify this property if your data is server-side */\n rowsCount?: number;\n /** Current page. Always start in 0 */\n page?: number;\n /** Current page handler */\n onPageChange?: (page: number) => void;\n /** Loading state. The amount of skeleton rows is based on current rowsPerPage */\n loading?: boolean;\n /** Custom skeleton component for better visual */\n skeletonComponent?: React.ReactNode;\n /** Empty state placeholder */\n emptyPlaceholder?: React.ReactNode;\n /** Export component, use if default button with label is not ideal. This prop, not receive \"exportLabel\" and \"exportFunction\" */\n exportComponent?: React.ReactNode;\n}\n\n/** Note: Consider memoizing functions for a better performance */\nconst DataGrid = <Data,>({\n headers,\n data,\n rowKeyExtractor,\n toolbarTitle,\n toolbarFooter,\n toolbarRightIcons,\n selectable = false,\n selectedRows = [],\n onSelectedRows,\n pagination = false,\n rowsPerPage = 10,\n onRowsPerPageChange,\n rowsPerPageOptions: _rowsPerPageOptions,\n rowsPerPageLabel: _rowsPerPageLabel,\n exportLabel = 'Exportar',\n exportFunction,\n rowsCount,\n page = 0,\n onPageChange,\n loading = false,\n skeletonComponent,\n emptyPlaceholder,\n exportComponent,\n ...rest\n}: DataGridProps<Data>): JSX.Element => {\n if (selectable && (!selectedRows || !onSelectedRows)) {\n throw new Error(\n '[DataGrid] You should specify selection handlers (selectedRows, onSelectedRows)'\n );\n }\n\n const rowsPerPageLabel = React.useCallback(\n value =>\n _rowsPerPageLabel\n ? _rowsPerPageLabel(value)\n : `Exibir por página: ${value} itens`,\n [_rowsPerPageLabel]\n );\n const rowsPerPageOptions = React.useMemo(\n () => _rowsPerPageOptions ?? [10, 25, 50],\n [_rowsPerPageOptions]\n );\n\n const handleSelect = React.useCallback(\n (current, checked) => {\n if (checked) {\n onSelectedRows?.(prevState => [...prevState, current]);\n return;\n }\n\n onSelectedRows?.(prevState => {\n const idx = prevState.findIndex(\n el => rowKeyExtractor(el) === rowKeyExtractor(current)\n );\n return [...removeElement(prevState, idx)];\n });\n },\n [onSelectedRows, rowKeyExtractor]\n );\n\n return (\n <TableContainer {...rest}>\n <TableToolbar\n title={toolbarTitle}\n rightIcons={toolbarRightIcons}\n footer={toolbarFooter}\n />\n <Table>\n <Header\n selectable={selectable}\n headers={headers}\n data={data}\n rowsCount={rowsCount ?? data.length}\n rowKeyExtractor={rowKeyExtractor}\n selectedRows={selectedRows}\n onSelected={onSelectedRows}\n />\n\n {!loading ? (\n <TBody>\n {data.length > 0 ? (\n getData(data, rowsCount, page, rowsPerPage, pagination).map(\n item => (\n <Row\n key={rowKeyExtractor(item)}\n rowKeyExtractor={rowKeyExtractor}\n handleSelect={handleSelect}\n selectable={selectable}\n headers={headers}\n data={item}\n checked={selectedRows?.some(\n sel => rowKeyExtractor(sel) === rowKeyExtractor(item)\n )}\n />\n )\n )\n ) : (\n <tr>\n <td colSpan={99}>{emptyPlaceholder}</td>\n </tr>\n )}\n </TBody>\n ) : (\n <TBody>\n {[...Array(rowsPerPage).keys()].map(idx => (\n <Tr key={`skeleton-${idx}`}>\n <Td colSpan={99} style={{ padding: 0 }}>\n {skeletonComponent ?? (\n <Skeleton height={55} radius=\"mili\" animation=\"wave\">\n <div style={{ width: '100%' }} />\n </Skeleton>\n )}\n </Td>\n </Tr>\n ))}\n </TBody>\n )}\n\n {(Number(rowsCount) > 0 || data.length > 0) && (\n <Footer\n exportFunction={exportFunction}\n exportLabel={exportLabel}\n rowsPerPageLabel={rowsPerPageLabel}\n rowsPerPage={rowsPerPage}\n onRowsPerPageChange={onRowsPerPageChange}\n rowsPerPageOptions={rowsPerPageOptions}\n rowsCount={rowsCount ?? data.length}\n page={page}\n onPageChange={onPageChange}\n pagination={pagination}\n exportComponent={exportComponent}\n />\n )}\n </Table>\n </TableContainer>\n );\n};\n\nexport default DataGrid;\n"],"mappings":"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"}
@@ -15,19 +15,21 @@ var _styled = require("./styled");
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
18
- const Footer = ({
19
- rowsPerPage,
20
- onRowsPerPageChange,
21
- rowsPerPageOptions,
22
- rowsPerPageLabel,
23
- exportFunction,
24
- exportLabel,
25
- rowsCount,
26
- page,
27
- onPageChange,
28
- pagination,
29
- exportComponent
30
- }) => {
18
+ const Footer = _ref => {
19
+ let {
20
+ rowsPerPage,
21
+ onRowsPerPageChange,
22
+ rowsPerPageOptions,
23
+ rowsPerPageLabel,
24
+ exportFunction,
25
+ exportLabel,
26
+ rowsCount,
27
+ page,
28
+ onPageChange,
29
+ pagination,
30
+ exportComponent
31
+ } = _ref;
32
+
31
33
  if (pagination && (!onPageChange || !onRowsPerPageChange)) {
32
34
  throw new Error('[DataGrid] You should specify pagination handlers (onPageChange, onRowsPerPageChange)');
33
35
  }
@@ -88,7 +90,7 @@ const Footer = ({
88
90
  }, exportLabel)))), pagination && _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_styled.TextPagination, {
89
91
  fontWeight: 'bold',
90
92
  fontColor: 'medium'
91
- }, `Exibindo ${currentInitItem} a ${currentFinalItem} de ${rowsCount} registros`), _react.default.createElement(_styled.FooterContainerEnd, null, _react.default.createElement(_styled.NavigationButton, {
93
+ }, "Exibindo ".concat(currentInitItem, " a ").concat(currentFinalItem, " de ").concat(rowsCount, " registros")), _react.default.createElement(_styled.FooterContainerEnd, null, _react.default.createElement(_styled.NavigationButton, {
92
94
  onPress: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(page - 1),
93
95
  disabled: page === 0
94
96
  }, _react.default.createElement(_reactWebKit.Icon, {
@@ -96,7 +98,7 @@ const Footer = ({
96
98
  type: 'material-community',
97
99
  fontColor: 'light'
98
100
  })), _react.default.createElement(_styled.PagesContainer, null, [...Array(Math.ceil(rowsCount / rowsPerPage)).keys()].slice(getPaginationSlice().start, getPaginationSlice().end).map(value => _react.default.createElement(_styled.HoveredText, {
99
- key: `page-${value}`
101
+ key: "page-".concat(value)
100
102
  }, _react.default.createElement(_styled.PageButton, {
101
103
  variant: page === value ? 'outlined' : 'text',
102
104
  onPress: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(value)
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","names":["Footer","rowsPerPage","onRowsPerPageChange","rowsPerPageOptions","rowsPerPageLabel","exportFunction","exportLabel","rowsCount","page","onPageChange","pagination","exportComponent","Error","getPaginationSlice","totalPages","Math","ceil","start","end","handleRowsPerPage","React","useCallback","value","currentInitItem","currentFinalItem","String","Array","keys","slice","map","memo"],"sources":["../../../../../src/components/organisms/DataGrid/Footer/Footer.tsx"],"sourcesContent":["import React from 'react';\nimport { Button, Icon, Select, Text } from '@tecsinapse/react-web-kit';\nimport { TFoot, Tr } from '../../../atoms/Table';\nimport {\n FooterContainer,\n FooterContainerEnd,\n FooterContainerStart,\n HoveredText,\n NavigationButton,\n PageButton,\n PagesContainer,\n SelectContainer,\n TdFooterStyled,\n TextPagination,\n} from './styled';\n\ninterface DataGridFooterProps {\n rowsPerPage: number;\n onRowsPerPageChange?: (value: number) => void;\n rowsPerPageOptions: number[];\n rowsPerPageLabel: (value: number) => string;\n exportLabel?: string;\n exportFunction?: () => void;\n /** Total data elements */\n rowsCount: number;\n page: number;\n onPageChange?: (page: number) => void;\n pagination: boolean;\n exportComponent?: React.ReactNode;\n}\n\nconst Footer: React.FC<DataGridFooterProps> = ({\n rowsPerPage,\n onRowsPerPageChange,\n rowsPerPageOptions,\n rowsPerPageLabel,\n exportFunction,\n exportLabel,\n rowsCount,\n page,\n onPageChange,\n pagination,\n exportComponent,\n}) => {\n if (pagination && (!onPageChange || !onRowsPerPageChange)) {\n throw new Error(\n '[DataGrid] You should specify pagination handlers (onPageChange, onRowsPerPageChange)'\n );\n }\n\n const getPaginationSlice = (): { start: number; end: number } => {\n const totalPages = Math.ceil(rowsCount / rowsPerPage);\n if (totalPages < 4) {\n return { start: 0, end: totalPages };\n }\n if (page === 0) {\n return { start: page, end: page + 3 };\n }\n if (page === totalPages - 1) {\n return { start: page - 2, end: page + 1 };\n }\n return { start: page - 1, end: page + 2 };\n };\n\n const handleRowsPerPage = React.useCallback(\n value => {\n onRowsPerPageChange?.(value as number);\n onPageChange?.(0);\n },\n [onPageChange, onRowsPerPageChange]\n );\n const currentInitItem = page * rowsPerPage + 1;\n const currentFinalItem =\n (page + 1) * rowsPerPage > rowsCount ? rowsCount : (page + 1) * rowsPerPage;\n\n return (\n <TFoot>\n <Tr>\n <TdFooterStyled colSpan={99}>\n <FooterContainer>\n <FooterContainerStart>\n {pagination && (\n <SelectContainer>\n <Select\n options={rowsPerPageOptions}\n onSelect={handleRowsPerPage}\n value={rowsPerPage}\n type={'single'}\n keyExtractor={value => String(value)}\n labelExtractor={rowsPerPageLabel}\n anchor=\"top\"\n />\n </SelectContainer>\n )}\n {exportComponent && !exportFunction && <>{exportComponent}</>}\n {exportFunction && (\n <HoveredText>\n <Button variant=\"outlined\" onPress={() => exportFunction()}>\n <Text fontColor=\"orange\" fontWeight=\"bold\">\n {exportLabel}\n </Text>\n </Button>\n </HoveredText>\n )}\n </FooterContainerStart>\n {pagination && (\n <>\n <TextPagination\n fontWeight={'bold'}\n fontColor={'medium'}\n >{`Exibindo ${currentInitItem} a ${currentFinalItem} de ${rowsCount} registros`}</TextPagination>\n <FooterContainerEnd>\n <NavigationButton\n onPress={() => onPageChange?.(page - 1)}\n disabled={page === 0}\n >\n <Icon\n name={'chevron-left'}\n type={'material-community'}\n fontColor={'light'}\n />\n </NavigationButton>\n <PagesContainer>\n {[...Array(Math.ceil(rowsCount / rowsPerPage)).keys()]\n .slice(\n getPaginationSlice().start,\n getPaginationSlice().end\n )\n .map(value => (\n <HoveredText key={`page-${value}`}>\n <PageButton\n variant={page === value ? 'outlined' : 'text'}\n onPress={() => onPageChange?.(value)}\n >\n <Text fontColor=\"medium\" fontWeight=\"bold\">\n {value + 1}\n </Text>\n </PageButton>\n </HoveredText>\n ))}\n </PagesContainer>\n <NavigationButton\n onPress={() => onPageChange?.(page + 1)}\n disabled={page === Math.ceil(rowsCount / rowsPerPage) - 1}\n >\n <Icon\n name={'chevron-right'}\n type={'material-community'}\n fontColor={'light'}\n />\n </NavigationButton>\n </FooterContainerEnd>\n </>\n )}\n </FooterContainer>\n </TdFooterStyled>\n </Tr>\n </TFoot>\n );\n};\n\nexport default React.memo(Footer);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Footer.js","names":["Footer","rowsPerPage","onRowsPerPageChange","rowsPerPageOptions","rowsPerPageLabel","exportFunction","exportLabel","rowsCount","page","onPageChange","pagination","exportComponent","Error","getPaginationSlice","totalPages","Math","ceil","start","end","handleRowsPerPage","React","useCallback","value","currentInitItem","currentFinalItem","String","Array","keys","slice","map","memo"],"sources":["../../../../../src/components/organisms/DataGrid/Footer/Footer.tsx"],"sourcesContent":["import React from 'react';\nimport { Button, Icon, Select, Text } from '@tecsinapse/react-web-kit';\nimport { TFoot, Tr } from '../../../atoms/Table';\nimport {\n FooterContainer,\n FooterContainerEnd,\n FooterContainerStart,\n HoveredText,\n NavigationButton,\n PageButton,\n PagesContainer,\n SelectContainer,\n TdFooterStyled,\n TextPagination,\n} from './styled';\n\ninterface DataGridFooterProps {\n rowsPerPage: number;\n onRowsPerPageChange?: (value: number) => void;\n rowsPerPageOptions: number[];\n rowsPerPageLabel: (value: number) => string;\n exportLabel?: string;\n exportFunction?: () => void;\n /** Total data elements */\n rowsCount: number;\n page: number;\n onPageChange?: (page: number) => void;\n pagination: boolean;\n exportComponent?: React.ReactNode;\n}\n\nconst Footer: React.FC<DataGridFooterProps> = ({\n rowsPerPage,\n onRowsPerPageChange,\n rowsPerPageOptions,\n rowsPerPageLabel,\n exportFunction,\n exportLabel,\n rowsCount,\n page,\n onPageChange,\n pagination,\n exportComponent,\n}) => {\n if (pagination && (!onPageChange || !onRowsPerPageChange)) {\n throw new Error(\n '[DataGrid] You should specify pagination handlers (onPageChange, onRowsPerPageChange)'\n );\n }\n\n const getPaginationSlice = (): { start: number; end: number } => {\n const totalPages = Math.ceil(rowsCount / rowsPerPage);\n if (totalPages < 4) {\n return { start: 0, end: totalPages };\n }\n if (page === 0) {\n return { start: page, end: page + 3 };\n }\n if (page === totalPages - 1) {\n return { start: page - 2, end: page + 1 };\n }\n return { start: page - 1, end: page + 2 };\n };\n\n const handleRowsPerPage = React.useCallback(\n value => {\n onRowsPerPageChange?.(value as number);\n onPageChange?.(0);\n },\n [onPageChange, onRowsPerPageChange]\n );\n const currentInitItem = page * rowsPerPage + 1;\n const currentFinalItem =\n (page + 1) * rowsPerPage > rowsCount ? rowsCount : (page + 1) * rowsPerPage;\n\n return (\n <TFoot>\n <Tr>\n <TdFooterStyled colSpan={99}>\n <FooterContainer>\n <FooterContainerStart>\n {pagination && (\n <SelectContainer>\n <Select\n options={rowsPerPageOptions}\n onSelect={handleRowsPerPage}\n value={rowsPerPage}\n type={'single'}\n keyExtractor={value => String(value)}\n labelExtractor={rowsPerPageLabel}\n anchor=\"top\"\n />\n </SelectContainer>\n )}\n {exportComponent && !exportFunction && <>{exportComponent}</>}\n {exportFunction && (\n <HoveredText>\n <Button variant=\"outlined\" onPress={() => exportFunction()}>\n <Text fontColor=\"orange\" fontWeight=\"bold\">\n {exportLabel}\n </Text>\n </Button>\n </HoveredText>\n )}\n </FooterContainerStart>\n {pagination && (\n <>\n <TextPagination\n fontWeight={'bold'}\n fontColor={'medium'}\n >{`Exibindo ${currentInitItem} a ${currentFinalItem} de ${rowsCount} registros`}</TextPagination>\n <FooterContainerEnd>\n <NavigationButton\n onPress={() => onPageChange?.(page - 1)}\n disabled={page === 0}\n >\n <Icon\n name={'chevron-left'}\n type={'material-community'}\n fontColor={'light'}\n />\n </NavigationButton>\n <PagesContainer>\n {[...Array(Math.ceil(rowsCount / rowsPerPage)).keys()]\n .slice(\n getPaginationSlice().start,\n getPaginationSlice().end\n )\n .map(value => (\n <HoveredText key={`page-${value}`}>\n <PageButton\n variant={page === value ? 'outlined' : 'text'}\n onPress={() => onPageChange?.(value)}\n >\n <Text fontColor=\"medium\" fontWeight=\"bold\">\n {value + 1}\n </Text>\n </PageButton>\n </HoveredText>\n ))}\n </PagesContainer>\n <NavigationButton\n onPress={() => onPageChange?.(page + 1)}\n disabled={page === Math.ceil(rowsCount / rowsPerPage) - 1}\n >\n <Icon\n name={'chevron-right'}\n type={'material-community'}\n fontColor={'light'}\n />\n </NavigationButton>\n </FooterContainerEnd>\n </>\n )}\n </FooterContainer>\n </TdFooterStyled>\n </Tr>\n </TFoot>\n );\n};\n\nexport default React.memo(Footer);\n"],"mappings":"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"}
@@ -15,91 +15,92 @@ var _Table = require("../../../atoms/Table");
15
15
 
16
16
  var _Button = require("../../../atoms/Button");
17
17
 
18
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
19
+
18
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
21
 
20
- const TdFooterStyled = (0, _styled.default)(_Table.Td)`
21
- padding: ${({
22
- theme
23
- }) => theme.spacing.centi} 0 0 0;
24
- `;
22
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
23
+
24
+ const TdFooterStyled = (0, _styled.default)(_Table.Td)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: ", " 0 0 0;\n"])), _ref => {
25
+ let {
26
+ theme
27
+ } = _ref;
28
+ return theme.spacing.centi;
29
+ });
25
30
  exports.TdFooterStyled = TdFooterStyled;
26
- const FlexContainer = (0, _styled.default)('div')`
27
- display: flex;
28
- flex-grow: 1;
29
- `;
31
+ const FlexContainer = (0, _styled.default)('div')(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n flex-grow: 1;\n"])));
30
32
  exports.FlexContainer = FlexContainer;
31
- const FooterContainer = (0, _styled.default)(FlexContainer)`
32
- justify-content: space-between;
33
- align-items: center;
34
- `;
33
+ const FooterContainer = (0, _styled.default)(FlexContainer)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n justify-content: space-between;\n align-items: center;\n"])));
35
34
  exports.FooterContainer = FooterContainer;
36
- const FooterContainerStart = (0, _styled.default)(FlexContainer)`
37
- justify-content: flex-start;
38
- `;
35
+ const FooterContainerStart = (0, _styled.default)(FlexContainer)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n justify-content: flex-start;\n"])));
39
36
  exports.FooterContainerStart = FooterContainerStart;
40
- const FooterContainerEnd = (0, _styled.default)(FlexContainer)`
41
- justify-content: flex-end;
42
- `;
37
+ const FooterContainerEnd = (0, _styled.default)(FlexContainer)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n justify-content: flex-end;\n"])));
43
38
  exports.FooterContainerEnd = FooterContainerEnd;
44
- const SelectContainer = (0, _styled.default)('div')`
45
- margin-right: ${({
46
- theme
47
- }) => theme.spacing.deca};
48
- `;
39
+ const SelectContainer = (0, _styled.default)('div')(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n margin-right: ", ";\n"])), _ref2 => {
40
+ let {
41
+ theme
42
+ } = _ref2;
43
+ return theme.spacing.deca;
44
+ });
49
45
  exports.SelectContainer = SelectContainer;
50
- const NavigationButton = (0, _native.default)(_Button.Button)`
51
- border-radius: ${({
52
- theme
53
- }) => theme.borderRadius.mili};
54
- height: 44px;
55
- justify-content: center;
56
- padding: ${({
57
- theme
58
- }) => theme.spacing.centi};
59
- width: 44px;
60
- `;
46
+ const NavigationButton = (0, _native.default)(_Button.Button)(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([" \n border-radius: ", ";\n height: 44px;\n justify-content: center;\n padding: ", ";\n width: 44px; \n"])), _ref3 => {
47
+ let {
48
+ theme
49
+ } = _ref3;
50
+ return theme.borderRadius.mili;
51
+ }, _ref4 => {
52
+ let {
53
+ theme
54
+ } = _ref4;
55
+ return theme.spacing.centi;
56
+ });
61
57
  exports.NavigationButton = NavigationButton;
62
- const PageButton = (0, _native.default)(NavigationButton)`
63
- padding-right: ${({
64
- theme
65
- }) => theme.spacing.deca};
66
- padding-left: ${({
67
- theme
68
- }) => theme.spacing.deca};
69
- border-radius: ${({
70
- theme
71
- }) => theme.borderRadius.mili};
72
- justify-content: center;
73
- margin-left: ${({
74
- theme
75
- }) => theme.spacing.micro};
76
- margin-right: ${({
77
- theme
78
- }) => theme.spacing.micro};
79
- `;
58
+ const PageButton = (0, _native.default)(NavigationButton)(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n padding-right: ", ";\n padding-left: ", ";\n border-radius: ", ";\n justify-content: center;\n margin-left: ", ";\n margin-right: ", ";\n"])), _ref5 => {
59
+ let {
60
+ theme
61
+ } = _ref5;
62
+ return theme.spacing.deca;
63
+ }, _ref6 => {
64
+ let {
65
+ theme
66
+ } = _ref6;
67
+ return theme.spacing.deca;
68
+ }, _ref7 => {
69
+ let {
70
+ theme
71
+ } = _ref7;
72
+ return theme.borderRadius.mili;
73
+ }, _ref8 => {
74
+ let {
75
+ theme
76
+ } = _ref8;
77
+ return theme.spacing.micro;
78
+ }, _ref9 => {
79
+ let {
80
+ theme
81
+ } = _ref9;
82
+ return theme.spacing.micro;
83
+ });
80
84
  exports.PageButton = PageButton;
81
- const PagesContainer = (0, _styled.default)('div')`
82
- margin: 0 20px;
83
- display: flex;
84
- `;
85
+ const PagesContainer = (0, _styled.default)('div')(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n margin: 0 20px;\n display: flex;\n"])));
85
86
  exports.PagesContainer = PagesContainer;
86
- const HoveredText = (0, _styled.default)('div')`
87
- user-select: none;
88
- &:hover * {
89
- color: ${({
90
- theme
91
- }) => theme.font.color.light};
92
- }
93
- `;
87
+ const HoveredText = (0, _styled.default)('div')(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n user-select: none;\n &:hover * {\n color: ", ";\n }\n"])), _ref10 => {
88
+ let {
89
+ theme
90
+ } = _ref10;
91
+ return theme.font.color.light;
92
+ });
94
93
  exports.HoveredText = HoveredText;
95
- const TextPagination = (0, _native.default)(_reactWebKit.Text)`
96
- padding-right: ${({
97
- theme
98
- }) => theme.spacing.deca};
99
- padding-left: ${({
100
- theme
101
- }) => theme.spacing.deca};
102
-
103
- `;
94
+ const TextPagination = (0, _native.default)(_reactWebKit.Text)(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n padding-right: ", ";\n padding-left: ", ";\n\n"])), _ref11 => {
95
+ let {
96
+ theme
97
+ } = _ref11;
98
+ return theme.spacing.deca;
99
+ }, _ref12 => {
100
+ let {
101
+ theme
102
+ } = _ref12;
103
+ return theme.spacing.deca;
104
+ });
104
105
  exports.TextPagination = TextPagination;
105
106
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","names":["TdFooterStyled","styled","Td","theme","spacing","centi","FlexContainer","FooterContainer","FooterContainerStart","FooterContainerEnd","SelectContainer","deca","NavigationButton","nativeStyled","Button","borderRadius","mili","PageButton","micro","PagesContainer","HoveredText","font","color","light","TextPagination","Text"],"sources":["../../../../../src/components/organisms/DataGrid/Footer/styled.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport { default as nativeStyled } from '@emotion/native';\nimport { StyleProps } from '@tecsinapse/react-core';\nimport { Text } from '@tecsinapse/react-web-kit';\nimport { Td } from '../../../atoms/Table';\nimport { Button } from '../../../atoms/Button';\n\nexport const TdFooterStyled = styled(Td)<Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.centi} 0 0 0;\n`;\n\nexport const FlexContainer = styled('div')`\n display: flex;\n flex-grow: 1;\n`;\n\nexport const FooterContainer = styled(FlexContainer)`\n justify-content: space-between;\n align-items: center;\n`;\n\nexport const FooterContainerStart = styled(FlexContainer)`\n justify-content: flex-start;\n`;\n\nexport const FooterContainerEnd = styled(FlexContainer)`\n justify-content: flex-end;\n`;\n\nexport const SelectContainer = styled('div')<Partial<StyleProps>>`\n margin-right: ${({ theme }) => theme.spacing.deca};\n`;\n\nexport const NavigationButton = nativeStyled(Button)<Partial<StyleProps>>` \n border-radius: ${({ theme }) => theme.borderRadius.mili};\n height: 44px;\n justify-content: center;\n padding: ${({ theme }) => theme.spacing.centi};\n width: 44px; \n`;\n\n// Se o botão estiver ativo, renderizar outlined, caso contrario o botão é text\nexport const PageButton = nativeStyled(NavigationButton)<Partial<StyleProps>>`\n padding-right: ${({ theme }) => theme.spacing.deca};\n padding-left: ${({ theme }) => theme.spacing.deca};\n border-radius: ${({ theme }) => theme.borderRadius.mili};\n justify-content: center;\n margin-left: ${({ theme }) => theme.spacing.micro};\n margin-right: ${({ theme }) => theme.spacing.micro};\n`;\n\nexport const PagesContainer = styled('div')<Partial<StyleProps>>`\n margin: 0 20px;\n display: flex;\n`;\n\nexport const HoveredText = styled('div')<Partial<StyleProps>>`\n user-select: none;\n &:hover * {\n color: ${({ theme }) => theme.font.color.light};\n }\n`;\n\nexport const TextPagination = nativeStyled(Text)<Partial<StyleProps>>`\n padding-right: ${({ theme }) => theme.spacing.deca};\n padding-left: ${({ theme }) => theme.spacing.deca};\n\n`;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;AAEO,MAAMA,cAAc,GAAG,IAAAC,eAAA,EAAOC,SAAP,CAAgC;AAC9D,aAAa,CAAC;EAAEC;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcC,KAAM;AAChD,CAFO;;AAIA,MAAMC,aAAa,GAAG,IAAAL,eAAA,EAAO,KAAP,CAAc;AAC3C;AACA;AACA,CAHO;;AAKA,MAAMM,eAAe,GAAG,IAAAN,eAAA,EAAOK,aAAP,CAAsB;AACrD;AACA;AACA,CAHO;;AAKA,MAAME,oBAAoB,GAAG,IAAAP,eAAA,EAAOK,aAAP,CAAsB;AAC1D;AACA,CAFO;;AAIA,MAAMG,kBAAkB,GAAG,IAAAR,eAAA,EAAOK,aAAP,CAAsB;AACxD;AACA,CAFO;;AAIA,MAAMI,eAAe,GAAG,IAAAT,eAAA,EAAO,KAAP,CAAmC;AAClE,kBAAkB,CAAC;EAAEE;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcO,IAAK;AACpD,CAFO;;AAIA,MAAMC,gBAAgB,GAAG,IAAAC,eAAA,EAAaC,cAAb,CAA0C;AAC1E,qBAAqB,CAAC;EAAEX;AAAF,CAAD,KAAeA,KAAK,CAACY,YAAN,CAAmBC,IAAK;AAC5D;AACA;AACA,eAAe,CAAC;EAAEb;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcC,KAAM;AAClD;AACA,CANO;;AASA,MAAMY,UAAU,GAAG,IAAAJ,eAAA,EAAaD,gBAAb,CAAoD;AAC9E,qBAAqB,CAAC;EAAET;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcO,IAAK;AACvD,oBAAoB,CAAC;EAAER;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcO,IAAK;AACtD,qBAAqB,CAAC;EAAER;AAAF,CAAD,KAAeA,KAAK,CAACY,YAAN,CAAmBC,IAAK;AAC5D;AACA,mBAAmB,CAAC;EAAEb;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcc,KAAM;AACtD,oBAAoB,CAAC;EAAEf;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcc,KAAM;AACvD,CAPO;;AASA,MAAMC,cAAc,GAAG,IAAAlB,eAAA,EAAO,KAAP,CAAmC;AACjE;AACA;AACA,CAHO;;AAKA,MAAMmB,WAAW,GAAG,IAAAnB,eAAA,EAAO,KAAP,CAAmC;AAC9D;AACA;AACA,aAAa,CAAC;EAAEE;AAAF,CAAD,KAAeA,KAAK,CAACkB,IAAN,CAAWC,KAAX,CAAiBC,KAAM;AACnD;AACA,CALO;;AAOA,MAAMC,cAAc,GAAG,IAAAX,eAAA,EAAaY,iBAAb,CAAwC;AACtE,mBAAmB,CAAC;EAAEtB;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcO,IAAK;AACrD,kBAAkB,CAAC;EAAER;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcO,IAAK;AACpD;AACA,CAJO"}
1
+ {"version":3,"file":"styled.js","names":["TdFooterStyled","styled","Td","theme","spacing","centi","FlexContainer","FooterContainer","FooterContainerStart","FooterContainerEnd","SelectContainer","deca","NavigationButton","nativeStyled","Button","borderRadius","mili","PageButton","micro","PagesContainer","HoveredText","font","color","light","TextPagination","Text"],"sources":["../../../../../src/components/organisms/DataGrid/Footer/styled.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport { default as nativeStyled } from '@emotion/native';\nimport { StyleProps } from '@tecsinapse/react-core';\nimport { Text } from '@tecsinapse/react-web-kit';\nimport { Td } from '../../../atoms/Table';\nimport { Button } from '../../../atoms/Button';\n\nexport const TdFooterStyled = styled(Td)<Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.centi} 0 0 0;\n`;\n\nexport const FlexContainer = styled('div')`\n display: flex;\n flex-grow: 1;\n`;\n\nexport const FooterContainer = styled(FlexContainer)`\n justify-content: space-between;\n align-items: center;\n`;\n\nexport const FooterContainerStart = styled(FlexContainer)`\n justify-content: flex-start;\n`;\n\nexport const FooterContainerEnd = styled(FlexContainer)`\n justify-content: flex-end;\n`;\n\nexport const SelectContainer = styled('div')<Partial<StyleProps>>`\n margin-right: ${({ theme }) => theme.spacing.deca};\n`;\n\nexport const NavigationButton = nativeStyled(Button)<Partial<StyleProps>>` \n border-radius: ${({ theme }) => theme.borderRadius.mili};\n height: 44px;\n justify-content: center;\n padding: ${({ theme }) => theme.spacing.centi};\n width: 44px; \n`;\n\n// Se o botão estiver ativo, renderizar outlined, caso contrario o botão é text\nexport const PageButton = nativeStyled(NavigationButton)<Partial<StyleProps>>`\n padding-right: ${({ theme }) => theme.spacing.deca};\n padding-left: ${({ theme }) => theme.spacing.deca};\n border-radius: ${({ theme }) => theme.borderRadius.mili};\n justify-content: center;\n margin-left: ${({ theme }) => theme.spacing.micro};\n margin-right: ${({ theme }) => theme.spacing.micro};\n`;\n\nexport const PagesContainer = styled('div')<Partial<StyleProps>>`\n margin: 0 20px;\n display: flex;\n`;\n\nexport const HoveredText = styled('div')<Partial<StyleProps>>`\n user-select: none;\n &:hover * {\n color: ${({ theme }) => theme.font.color.light};\n }\n`;\n\nexport const TextPagination = nativeStyled(Text)<Partial<StyleProps>>`\n padding-right: ${({ theme }) => theme.spacing.deca};\n padding-left: ${({ theme }) => theme.spacing.deca};\n\n`;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;AAEO,MAAMA,cAAc,GAAG,IAAAC,eAAA,EAAOC,SAAP,CAAH,gGACd;EAAA,IAAC;IAAEC;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcC,KAA7B;AAAA,CADc,CAApB;;AAIA,MAAMC,aAAa,GAAG,IAAAL,eAAA,EAAO,KAAP,CAAH,4GAAnB;;AAKA,MAAMM,eAAe,GAAG,IAAAN,eAAA,EAAOK,aAAP,CAAH,oIAArB;;AAKA,MAAME,oBAAoB,GAAG,IAAAP,eAAA,EAAOK,aAAP,CAAH,yGAA1B;;AAIA,MAAMG,kBAAkB,GAAG,IAAAR,eAAA,EAAOK,aAAP,CAAH,uGAAxB;;AAIA,MAAMI,eAAe,GAAG,IAAAT,eAAA,EAAO,KAAP,CAAH,iGACV;EAAA,IAAC;IAAEE;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcO,IAA7B;AAAA,CADU,CAArB;;AAIA,MAAMC,gBAAgB,GAAG,IAAAC,eAAA,EAAaC,cAAb,CAAH,iMACR;EAAA,IAAC;IAAEX;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACY,YAAN,CAAmBC,IAAlC;AAAA,CADQ,EAId;EAAA,IAAC;IAAEb;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcC,KAA7B;AAAA,CAJc,CAAtB;;AASA,MAAMY,UAAU,GAAG,IAAAJ,eAAA,EAAaD,gBAAb,CAAH,sOACF;EAAA,IAAC;IAAET;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcO,IAA7B;AAAA,CADE,EAEH;EAAA,IAAC;IAAER;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcO,IAA7B;AAAA,CAFG,EAGF;EAAA,IAAC;IAAER;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACY,YAAN,CAAmBC,IAAlC;AAAA,CAHE,EAKJ;EAAA,IAAC;IAAEb;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcc,KAA7B;AAAA,CALI,EAMH;EAAA,IAAC;IAAEf;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcc,KAA7B;AAAA,CANG,CAAhB;;AASA,MAAMC,cAAc,GAAG,IAAAlB,eAAA,EAAO,KAAP,CAAH,8GAApB;;AAKA,MAAMmB,WAAW,GAAG,IAAAnB,eAAA,EAAO,KAAP,CAAH,wIAGX;EAAA,IAAC;IAAEE;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACkB,IAAN,CAAWC,KAAX,CAAiBC,KAAhC;AAAA,CAHW,CAAjB;;AAOA,MAAMC,cAAc,GAAG,IAAAX,eAAA,EAAaY,iBAAb,CAAH,6HACR;EAAA,IAAC;IAAEtB;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcO,IAA7B;AAAA,CADQ,EAET;EAAA,IAAC;IAAER;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcO,IAA7B;AAAA,CAFS,CAApB"}
@@ -17,15 +17,17 @@ var _utils = require("./utils");
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
20
- const Header = ({
21
- selectable,
22
- rowsCount,
23
- headers,
24
- data,
25
- rowKeyExtractor,
26
- selectedRows,
27
- onSelected
28
- }) => {
20
+ const Header = _ref => {
21
+ let {
22
+ selectable,
23
+ rowsCount,
24
+ headers,
25
+ data,
26
+ rowKeyExtractor,
27
+ selectedRows,
28
+ onSelected
29
+ } = _ref;
30
+
29
31
  const [sortDirection, setSortDirection] = _react.default.useState(_utils.NEXT_STATE.initial);
30
32
 
31
33
  const handleSortDirection = sort => {
@@ -58,29 +60,32 @@ const Header = ({
58
60
  return _react.default.createElement(_Table.THead, null, _react.default.createElement(_Table.Tr, null, selectable && _react.default.createElement(_styled.CheckboxHeader, null, _react.default.createElement(_reactCore.Checkbox, {
59
61
  checked: rowsCount === (selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.length),
60
62
  onChange: handleSelectAll
61
- })), headers.map(({
62
- label,
63
- sort,
64
- justifyContent = 'flex-start'
65
- }) => _react.default.createElement(_Table.Th, {
66
- key: label
67
- }, _react.default.createElement("div", {
68
- style: {
69
- display: 'flex',
70
- alignItems: 'center',
71
- justifyContent
72
- }
73
- }, label, sort && _react.default.createElement("div", {
74
- style: {
75
- marginLeft: 8
76
- }
77
- }, _react.default.createElement(_reactCore.PressableSurface, {
78
- onPress: () => handleSortDirection(sort)
79
- }, _react.default.createElement(_reactCore.Icon, {
80
- name: `sort-alphabetical-${(0, _utils.getIconSuffix)(sortDirection)}`,
81
- type: 'material-community',
82
- fontColor: (0, _utils.getIconColor)(sortDirection)
83
- }))))))));
63
+ })), headers.map(_ref2 => {
64
+ let {
65
+ label,
66
+ sort,
67
+ justifyContent = 'flex-start'
68
+ } = _ref2;
69
+ return _react.default.createElement(_Table.Th, {
70
+ key: label
71
+ }, _react.default.createElement("div", {
72
+ style: {
73
+ display: 'flex',
74
+ alignItems: 'center',
75
+ justifyContent
76
+ }
77
+ }, label, sort && _react.default.createElement("div", {
78
+ style: {
79
+ marginLeft: 8
80
+ }
81
+ }, _react.default.createElement(_reactCore.PressableSurface, {
82
+ onPress: () => handleSortDirection(sort)
83
+ }, _react.default.createElement(_reactCore.Icon, {
84
+ name: "sort-alphabetical-".concat((0, _utils.getIconSuffix)(sortDirection)),
85
+ type: 'material-community',
86
+ fontColor: (0, _utils.getIconColor)(sortDirection)
87
+ })))));
88
+ })));
84
89
  };
85
90
 
86
91
  var _default = Header;
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","names":["Header","selectable","rowsCount","headers","data","rowKeyExtractor","selectedRows","onSelected","sortDirection","setSortDirection","React","useState","NEXT_STATE","initial","handleSortDirection","sort","handleSelectAll","checked","currentItemsOnData","findCurrentItemsOnData","unselectedItemsOnData","findUnselectedItemsOnData","length","concat","map","label","justifyContent","display","alignItems","marginLeft","getIconSuffix","getIconColor"],"sources":["../../../../../src/components/organisms/DataGrid/Header/Header.tsx"],"sourcesContent":["import React from 'react';\nimport { Checkbox, Icon, PressableSurface } from '@tecsinapse/react-core';\nimport { Th, THead, Tr } from '../../../atoms/Table';\nimport { CheckboxHeader } from './styled';\nimport { HeadersType, SortState } from '../types';\nimport {\n findCurrentItemsOnData,\n findUnselectedItemsOnData,\n getIconColor,\n getIconSuffix,\n NEXT_STATE,\n} from './utils';\n\nexport interface DataGridHeaderProps<Data> {\n headers: HeadersType<Data>[];\n data: Data[];\n selectedRows: Data[];\n onSelected?: (data: Data[]) => void;\n rowKeyExtractor: (data: Data) => string;\n rowsCount: number;\n selectable?: boolean;\n}\n\nconst Header = <Data,>({\n selectable,\n rowsCount,\n headers,\n data,\n rowKeyExtractor,\n selectedRows,\n onSelected,\n}: DataGridHeaderProps<Data>): JSX.Element => {\n const [sortDirection, setSortDirection] = React.useState<SortState>(\n NEXT_STATE.initial\n );\n\n const handleSortDirection = sort => {\n sort(NEXT_STATE[sortDirection]);\n setSortDirection(NEXT_STATE[sortDirection]);\n };\n\n const handleSelectAll = checked => {\n if (!checked) {\n onSelected?.([]);\n return;\n }\n\n const currentItemsOnData = findCurrentItemsOnData(\n selectedRows,\n data,\n rowKeyExtractor\n );\n\n const unselectedItemsOnData = findUnselectedItemsOnData(\n selectedRows,\n data,\n rowKeyExtractor\n );\n\n if (checked && selectedRows.length < 1) {\n onSelected?.(data);\n return;\n }\n if (checked && currentItemsOnData.length < 1) {\n onSelected?.(unselectedItemsOnData.concat(selectedRows));\n return;\n }\n onSelected?.(selectedRows.concat(unselectedItemsOnData));\n };\n\n return (\n <THead>\n <Tr>\n {selectable && (\n <CheckboxHeader>\n <Checkbox\n checked={rowsCount === selectedRows?.length}\n onChange={handleSelectAll}\n />\n </CheckboxHeader>\n )}\n {headers.map(({ label, sort, justifyContent = 'flex-start' }) => (\n <Th key={label}>\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent,\n }}\n >\n {label}\n {sort && (\n <div style={{ marginLeft: 8 }}>\n <PressableSurface onPress={() => handleSortDirection(sort)}>\n <Icon\n name={`sort-alphabetical-${getIconSuffix(sortDirection)}`}\n type={'material-community'}\n fontColor={getIconColor(sortDirection)}\n />\n </PressableSurface>\n </div>\n )}\n </div>\n </Th>\n ))}\n </Tr>\n </THead>\n );\n};\n\nexport default Header;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;;;AAkBA,MAAMA,MAAM,GAAG,CAAQ;EACrBC,UADqB;EAErBC,SAFqB;EAGrBC,OAHqB;EAIrBC,IAJqB;EAKrBC,eALqB;EAMrBC,YANqB;EAOrBC;AAPqB,CAAR,KAQ+B;EAC5C,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,cAAA,CAAMC,QAAN,CACxCC,iBAAA,CAAWC,OAD6B,CAA1C;;EAIA,MAAMC,mBAAmB,GAAGC,IAAI,IAAI;IAClCA,IAAI,CAACH,iBAAA,CAAWJ,aAAX,CAAD,CAAJ;IACAC,gBAAgB,CAACG,iBAAA,CAAWJ,aAAX,CAAD,CAAhB;EACD,CAHD;;EAKA,MAAMQ,eAAe,GAAGC,OAAO,IAAI;IACjC,IAAI,CAACA,OAAL,EAAc;MACZV,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAG,EAAH,CAAV;MACA;IACD;;IAED,MAAMW,kBAAkB,GAAG,IAAAC,6BAAA,EACzBb,YADyB,EAEzBF,IAFyB,EAGzBC,eAHyB,CAA3B;IAMA,MAAMe,qBAAqB,GAAG,IAAAC,gCAAA,EAC5Bf,YAD4B,EAE5BF,IAF4B,EAG5BC,eAH4B,CAA9B;;IAMA,IAAIY,OAAO,IAAIX,YAAY,CAACgB,MAAb,GAAsB,CAArC,EAAwC;MACtCf,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGH,IAAH,CAAV;MACA;IACD;;IACD,IAAIa,OAAO,IAAIC,kBAAkB,CAACI,MAAnB,GAA4B,CAA3C,EAA8C;MAC5Cf,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGa,qBAAqB,CAACG,MAAtB,CAA6BjB,YAA7B,CAAH,CAAV;MACA;IACD;;IACDC,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGD,YAAY,CAACiB,MAAb,CAAoBH,qBAApB,CAAH,CAAV;EACD,CA3BD;;EA6BA,OACE,6BAAC,YAAD,QACE,6BAAC,SAAD,QACGnB,UAAU,IACT,6BAAC,sBAAD,QACE,6BAAC,mBAAD;IACE,OAAO,EAAEC,SAAS,MAAKI,YAAL,aAAKA,YAAL,uBAAKA,YAAY,CAAEgB,MAAnB,CADpB;IAEE,QAAQ,EAAEN;EAFZ,EADF,CAFJ,EASGb,OAAO,CAACqB,GAAR,CAAY,CAAC;IAAEC,KAAF;IAASV,IAAT;IAAeW,cAAc,GAAG;EAAhC,CAAD,KACX,6BAAC,SAAD;IAAI,GAAG,EAAED;EAAT,GACE;IACE,KAAK,EAAE;MACLE,OAAO,EAAE,MADJ;MAELC,UAAU,EAAE,QAFP;MAGLF;IAHK;EADT,GAOGD,KAPH,EAQGV,IAAI,IACH;IAAK,KAAK,EAAE;MAAEc,UAAU,EAAE;IAAd;EAAZ,GACE,6BAAC,2BAAD;IAAkB,OAAO,EAAE,MAAMf,mBAAmB,CAACC,IAAD;EAApD,GACE,6BAAC,eAAD;IACE,IAAI,EAAG,qBAAoB,IAAAe,oBAAA,EAActB,aAAd,CAA6B,EAD1D;IAEE,IAAI,EAAE,oBAFR;IAGE,SAAS,EAAE,IAAAuB,mBAAA,EAAavB,aAAb;EAHb,EADF,CADF,CATJ,CADF,CADD,CATH,CADF,CADF;AAsCD,CArFD;;eAuFeR,M"}
1
+ {"version":3,"file":"Header.js","names":["Header","selectable","rowsCount","headers","data","rowKeyExtractor","selectedRows","onSelected","sortDirection","setSortDirection","React","useState","NEXT_STATE","initial","handleSortDirection","sort","handleSelectAll","checked","currentItemsOnData","findCurrentItemsOnData","unselectedItemsOnData","findUnselectedItemsOnData","length","concat","map","label","justifyContent","display","alignItems","marginLeft","getIconSuffix","getIconColor"],"sources":["../../../../../src/components/organisms/DataGrid/Header/Header.tsx"],"sourcesContent":["import React from 'react';\nimport { Checkbox, Icon, PressableSurface } from '@tecsinapse/react-core';\nimport { Th, THead, Tr } from '../../../atoms/Table';\nimport { CheckboxHeader } from './styled';\nimport { HeadersType, SortState } from '../types';\nimport {\n findCurrentItemsOnData,\n findUnselectedItemsOnData,\n getIconColor,\n getIconSuffix,\n NEXT_STATE,\n} from './utils';\n\nexport interface DataGridHeaderProps<Data> {\n headers: HeadersType<Data>[];\n data: Data[];\n selectedRows: Data[];\n onSelected?: (data: Data[]) => void;\n rowKeyExtractor: (data: Data) => string;\n rowsCount: number;\n selectable?: boolean;\n}\n\nconst Header = <Data,>({\n selectable,\n rowsCount,\n headers,\n data,\n rowKeyExtractor,\n selectedRows,\n onSelected,\n}: DataGridHeaderProps<Data>): JSX.Element => {\n const [sortDirection, setSortDirection] = React.useState<SortState>(\n NEXT_STATE.initial\n );\n\n const handleSortDirection = sort => {\n sort(NEXT_STATE[sortDirection]);\n setSortDirection(NEXT_STATE[sortDirection]);\n };\n\n const handleSelectAll = checked => {\n if (!checked) {\n onSelected?.([]);\n return;\n }\n\n const currentItemsOnData = findCurrentItemsOnData(\n selectedRows,\n data,\n rowKeyExtractor\n );\n\n const unselectedItemsOnData = findUnselectedItemsOnData(\n selectedRows,\n data,\n rowKeyExtractor\n );\n\n if (checked && selectedRows.length < 1) {\n onSelected?.(data);\n return;\n }\n if (checked && currentItemsOnData.length < 1) {\n onSelected?.(unselectedItemsOnData.concat(selectedRows));\n return;\n }\n onSelected?.(selectedRows.concat(unselectedItemsOnData));\n };\n\n return (\n <THead>\n <Tr>\n {selectable && (\n <CheckboxHeader>\n <Checkbox\n checked={rowsCount === selectedRows?.length}\n onChange={handleSelectAll}\n />\n </CheckboxHeader>\n )}\n {headers.map(({ label, sort, justifyContent = 'flex-start' }) => (\n <Th key={label}>\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent,\n }}\n >\n {label}\n {sort && (\n <div style={{ marginLeft: 8 }}>\n <PressableSurface onPress={() => handleSortDirection(sort)}>\n <Icon\n name={`sort-alphabetical-${getIconSuffix(sortDirection)}`}\n type={'material-community'}\n fontColor={getIconColor(sortDirection)}\n />\n </PressableSurface>\n </div>\n )}\n </div>\n </Th>\n ))}\n </Tr>\n </THead>\n );\n};\n\nexport default Header;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;;;AAkBA,MAAMA,MAAM,GAAG,QAQ+B;EAAA,IARvB;IACrBC,UADqB;IAErBC,SAFqB;IAGrBC,OAHqB;IAIrBC,IAJqB;IAKrBC,eALqB;IAMrBC,YANqB;IAOrBC;EAPqB,CAQuB;;EAC5C,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,cAAA,CAAMC,QAAN,CACxCC,iBAAA,CAAWC,OAD6B,CAA1C;;EAIA,MAAMC,mBAAmB,GAAGC,IAAI,IAAI;IAClCA,IAAI,CAACH,iBAAA,CAAWJ,aAAX,CAAD,CAAJ;IACAC,gBAAgB,CAACG,iBAAA,CAAWJ,aAAX,CAAD,CAAhB;EACD,CAHD;;EAKA,MAAMQ,eAAe,GAAGC,OAAO,IAAI;IACjC,IAAI,CAACA,OAAL,EAAc;MACZV,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAG,EAAH,CAAV;MACA;IACD;;IAED,MAAMW,kBAAkB,GAAG,IAAAC,6BAAA,EACzBb,YADyB,EAEzBF,IAFyB,EAGzBC,eAHyB,CAA3B;IAMA,MAAMe,qBAAqB,GAAG,IAAAC,gCAAA,EAC5Bf,YAD4B,EAE5BF,IAF4B,EAG5BC,eAH4B,CAA9B;;IAMA,IAAIY,OAAO,IAAIX,YAAY,CAACgB,MAAb,GAAsB,CAArC,EAAwC;MACtCf,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGH,IAAH,CAAV;MACA;IACD;;IACD,IAAIa,OAAO,IAAIC,kBAAkB,CAACI,MAAnB,GAA4B,CAA3C,EAA8C;MAC5Cf,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGa,qBAAqB,CAACG,MAAtB,CAA6BjB,YAA7B,CAAH,CAAV;MACA;IACD;;IACDC,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAGD,YAAY,CAACiB,MAAb,CAAoBH,qBAApB,CAAH,CAAV;EACD,CA3BD;;EA6BA,OACE,6BAAC,YAAD,QACE,6BAAC,SAAD,QACGnB,UAAU,IACT,6BAAC,sBAAD,QACE,6BAAC,mBAAD;IACE,OAAO,EAAEC,SAAS,MAAKI,YAAL,aAAKA,YAAL,uBAAKA,YAAY,CAAEgB,MAAnB,CADpB;IAEE,QAAQ,EAAEN;EAFZ,EADF,CAFJ,EASGb,OAAO,CAACqB,GAAR,CAAY;IAAA,IAAC;MAAEC,KAAF;MAASV,IAAT;MAAeW,cAAc,GAAG;IAAhC,CAAD;IAAA,OACX,6BAAC,SAAD;MAAI,GAAG,EAAED;IAAT,GACE;MACE,KAAK,EAAE;QACLE,OAAO,EAAE,MADJ;QAELC,UAAU,EAAE,QAFP;QAGLF;MAHK;IADT,GAOGD,KAPH,EAQGV,IAAI,IACH;MAAK,KAAK,EAAE;QAAEc,UAAU,EAAE;MAAd;IAAZ,GACE,6BAAC,2BAAD;MAAkB,OAAO,EAAE,MAAMf,mBAAmB,CAACC,IAAD;IAApD,GACE,6BAAC,eAAD;MACE,IAAI,8BAAuB,IAAAe,oBAAA,EAActB,aAAd,CAAvB,CADN;MAEE,IAAI,EAAE,oBAFR;MAGE,SAAS,EAAE,IAAAuB,mBAAA,EAAavB,aAAb;IAHb,EADF,CADF,CATJ,CADF,CADW;EAAA,CAAZ,CATH,CADF,CADF;AAsCD,CArFD;;eAuFeR,M"}
@@ -9,15 +9,17 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
9
9
 
10
10
  var _Table = require("../../../atoms/Table");
11
11
 
12
+ var _templateObject;
13
+
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
15
 
14
- const CheckboxHeader = (0, _styled.default)(_Table.Th)`
15
- padding: 0 0 0 ${({
16
- theme
17
- }) => theme.spacing.mili};
18
- & * {
19
- user-select: none;
20
- }
21
- `;
16
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
17
+
18
+ const CheckboxHeader = (0, _styled.default)(_Table.Th)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: 0 0 0 ", ";\n & * {\n user-select: none;\n }\n"])), _ref => {
19
+ let {
20
+ theme
21
+ } = _ref;
22
+ return theme.spacing.mili;
23
+ });
22
24
  exports.CheckboxHeader = CheckboxHeader;
23
25
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","names":["CheckboxHeader","styled","Th","theme","spacing","mili"],"sources":["../../../../../src/components/organisms/DataGrid/Header/styled.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport { StyleProps } from '@tecsinapse/react-core';\nimport { Th } from '../../../atoms/Table';\n\nexport const CheckboxHeader = styled(Th)<Partial<StyleProps>>`\n padding: 0 0 0 ${({ theme }) => theme.spacing.mili};\n & * {\n user-select: none;\n }\n`;\n"],"mappings":";;;;;;;AAAA;;AAEA;;;;AAEO,MAAMA,cAAc,GAAG,IAAAC,eAAA,EAAOC,SAAP,CAAgC;AAC9D,mBAAmB,CAAC;EAAEC;AAAF,CAAD,KAAeA,KAAK,CAACC,OAAN,CAAcC,IAAK;AACrD;AACA;AACA;AACA,CALO"}
1
+ {"version":3,"file":"styled.js","names":["CheckboxHeader","styled","Th","theme","spacing","mili"],"sources":["../../../../../src/components/organisms/DataGrid/Header/styled.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport { StyleProps } from '@tecsinapse/react-core';\nimport { Th } from '../../../atoms/Table';\n\nexport const CheckboxHeader = styled(Th)<Partial<StyleProps>>`\n padding: 0 0 0 ${({ theme }) => theme.spacing.mili};\n & * {\n user-select: none;\n }\n`;\n"],"mappings":";;;;;;;AAAA;;AAEA;;;;;;;;AAEO,MAAMA,cAAc,GAAG,IAAAC,eAAA,EAAOC,SAAP,CAAH,sIACR;EAAA,IAAC;IAAEC;EAAF,CAAD;EAAA,OAAeA,KAAK,CAACC,OAAN,CAAcC,IAA7B;AAAA,CADQ,CAApB"}