norma-library 0.6.77 → 0.6.79

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 (401) hide show
  1. package/.eslintrc.cjs +89 -0
  2. package/.prettierrc +8 -0
  3. package/.storybook/main.ts +1 -1
  4. package/.storybook/preview.ts +5 -0
  5. package/index.html +13 -0
  6. package/package.json +5 -1
  7. package/public/vite.svg +1 -0
  8. package/src/assets/react.svg +1 -0
  9. package/src/components/Button/index.tsx +20 -0
  10. package/src/components/Button/types.tsx +31 -0
  11. package/src/components/Card/Card.tsx +14 -0
  12. package/src/components/Card/CardHeader.tsx +8 -0
  13. package/src/components/Card/index.ts +5 -0
  14. package/src/components/Card/styles.ts +16 -0
  15. package/src/components/Card/types.ts +10 -0
  16. package/src/components/IconifyIcon.tsx +23 -0
  17. package/src/components/Modal.tsx +11 -4
  18. package/src/components/ProductCard/ProductCard.style.ts +56 -0
  19. package/src/components/ProductCard/ProductCard.tsx +71 -0
  20. package/src/components/RangerSlider.tsx +59 -3
  21. package/src/components/ServiceCard/ServiceCard.style.ts +53 -0
  22. package/src/components/ServiceCard/ServiceCard.tsx +30 -0
  23. package/src/components/UncontrolledTable/components/index.tsx +6 -2
  24. package/src/components/UncontrolledTable/components/row/DraggableRow.tsx +34 -0
  25. package/src/components/UncontrolledTable/components/row/RowDragHandleCell.tsx +17 -0
  26. package/src/components/UncontrolledTable/components/row/SimpleRow.tsx +26 -0
  27. package/src/components/UncontrolledTable/index.tsx +191 -105
  28. package/src/components/UncontrolledTable/interface.ts +6 -4
  29. package/src/components/index.ts +2 -0
  30. package/src/index.ts +3 -1
  31. package/src/interfaces/Modal.ts +2 -1
  32. package/src/interfaces/ProductCard.ts +23 -0
  33. package/src/interfaces/RangerSlider.ts +3 -0
  34. package/src/interfaces/ServiceCard.ts +11 -0
  35. package/src/stories/IconifyIcon.stories.tsx +31 -0
  36. package/src/stories/Modal.stories.tsx +54 -0
  37. package/src/stories/ModalStatus.stories.tsx +1 -0
  38. package/src/stories/ProductCard.stories.tsx +22 -0
  39. package/src/stories/RangerSlider.stories.tsx +6 -2
  40. package/src/stories/ServiceCard.stories.tsx +20 -0
  41. package/src/stories/UncontrolledTable.stories.tsx +464 -206
  42. package/src/utils/pxToRem.ts +4 -0
  43. package/src/vite-env.d.ts +1 -0
  44. package/tsconfig.json +32 -32
  45. package/tsconfig.node.json +10 -0
  46. package/dist/esm/components/Accordion.d.ts +0 -3
  47. package/dist/esm/components/Accordion.js +0 -20
  48. package/dist/esm/components/Accordion.js.map +0 -1
  49. package/dist/esm/components/Avatar.d.ts +0 -3
  50. package/dist/esm/components/Avatar.js +0 -13
  51. package/dist/esm/components/Avatar.js.map +0 -1
  52. package/dist/esm/components/Badge.d.ts +0 -3
  53. package/dist/esm/components/Badge.js +0 -10
  54. package/dist/esm/components/Badge.js.map +0 -1
  55. package/dist/esm/components/Box/index.d.ts +0 -4
  56. package/dist/esm/components/Box/index.js +0 -8
  57. package/dist/esm/components/Box/index.js.map +0 -1
  58. package/dist/esm/components/Box/interfaces.d.ts +0 -4
  59. package/dist/esm/components/Box/interfaces.js +0 -2
  60. package/dist/esm/components/Box/interfaces.js.map +0 -1
  61. package/dist/esm/components/Box/styles.d.ts +0 -2
  62. package/dist/esm/components/Box/styles.js +0 -17
  63. package/dist/esm/components/Box/styles.js.map +0 -1
  64. package/dist/esm/components/Breadcrumb/index.d.ts +0 -4
  65. package/dist/esm/components/Breadcrumb/index.js +0 -18
  66. package/dist/esm/components/Breadcrumb/index.js.map +0 -1
  67. package/dist/esm/components/Breadcrumb/interface.d.ts +0 -8
  68. package/dist/esm/components/Breadcrumb/interface.js +0 -2
  69. package/dist/esm/components/Breadcrumb/interface.js.map +0 -1
  70. package/dist/esm/components/Breadcrumb/styles.d.ts +0 -4
  71. package/dist/esm/components/Breadcrumb/styles.js +0 -8
  72. package/dist/esm/components/Breadcrumb/styles.js.map +0 -1
  73. package/dist/esm/components/Button.d.ts +0 -3
  74. package/dist/esm/components/Button.js +0 -18
  75. package/dist/esm/components/Button.js.map +0 -1
  76. package/dist/esm/components/Card.d.ts +0 -7
  77. package/dist/esm/components/Card.js +0 -24
  78. package/dist/esm/components/Card.js.map +0 -1
  79. package/dist/esm/components/ChatMessage.d.ts +0 -3
  80. package/dist/esm/components/ChatMessage.js +0 -63
  81. package/dist/esm/components/ChatMessage.js.map +0 -1
  82. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.d.ts +0 -3
  83. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.js +0 -29
  84. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.js.map +0 -1
  85. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.style.d.ts +0 -5
  86. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.style.js +0 -13
  87. package/dist/esm/components/ChatMessageBalloon/ChatMessageBalloon.style.js.map +0 -1
  88. package/dist/esm/components/CheckBox.d.ts +0 -3
  89. package/dist/esm/components/CheckBox.js +0 -10
  90. package/dist/esm/components/CheckBox.js.map +0 -1
  91. package/dist/esm/components/DateInput/index.d.ts +0 -4
  92. package/dist/esm/components/DateInput/index.js +0 -15
  93. package/dist/esm/components/DateInput/index.js.map +0 -1
  94. package/dist/esm/components/DateInput/interface.d.ts +0 -12
  95. package/dist/esm/components/DateInput/interface.js +0 -2
  96. package/dist/esm/components/DateInput/interface.js.map +0 -1
  97. package/dist/esm/components/DateInput/styles.d.ts +0 -4
  98. package/dist/esm/components/DateInput/styles.js +0 -7
  99. package/dist/esm/components/DateInput/styles.js.map +0 -1
  100. package/dist/esm/components/DatePicker.d.ts +0 -6
  101. package/dist/esm/components/DatePicker.js +0 -53
  102. package/dist/esm/components/DatePicker.js.map +0 -1
  103. package/dist/esm/components/DropDown.d.ts +0 -3
  104. package/dist/esm/components/DropDown.js +0 -12
  105. package/dist/esm/components/DropDown.js.map +0 -1
  106. package/dist/esm/components/IconButton.d.ts +0 -3
  107. package/dist/esm/components/IconButton.js +0 -28
  108. package/dist/esm/components/IconButton.js.map +0 -1
  109. package/dist/esm/components/Icons.d.ts +0 -7
  110. package/dist/esm/components/Icons.js +0 -49
  111. package/dist/esm/components/Icons.js.map +0 -1
  112. package/dist/esm/components/Modal.d.ts +0 -4
  113. package/dist/esm/components/Modal.js +0 -32
  114. package/dist/esm/components/Modal.js.map +0 -1
  115. package/dist/esm/components/MultiSelectInput/components/MultiValue/index.d.ts +0 -3
  116. package/dist/esm/components/MultiSelectInput/components/MultiValue/index.js +0 -30
  117. package/dist/esm/components/MultiSelectInput/components/MultiValue/index.js.map +0 -1
  118. package/dist/esm/components/MultiSelectInput/components/Option/index.d.ts +0 -3
  119. package/dist/esm/components/MultiSelectInput/components/Option/index.js +0 -36
  120. package/dist/esm/components/MultiSelectInput/components/Option/index.js.map +0 -1
  121. package/dist/esm/components/MultiSelectInput/components/Option/styles.d.ts +0 -1
  122. package/dist/esm/components/MultiSelectInput/components/Option/styles.js +0 -5
  123. package/dist/esm/components/MultiSelectInput/components/Option/styles.js.map +0 -1
  124. package/dist/esm/components/MultiSelectInput/index.d.ts +0 -4
  125. package/dist/esm/components/MultiSelectInput/index.js +0 -33
  126. package/dist/esm/components/MultiSelectInput/index.js.map +0 -1
  127. package/dist/esm/components/MultiSelectInput/interfaces.d.ts +0 -15
  128. package/dist/esm/components/MultiSelectInput/interfaces.js +0 -2
  129. package/dist/esm/components/MultiSelectInput/interfaces.js.map +0 -1
  130. package/dist/esm/components/MultiSelectInput/styles.d.ts +0 -2
  131. package/dist/esm/components/MultiSelectInput/styles.js +0 -6
  132. package/dist/esm/components/MultiSelectInput/styles.js.map +0 -1
  133. package/dist/esm/components/NormaTimeLine/NormaTimeLine.d.ts +0 -14
  134. package/dist/esm/components/NormaTimeLine/NormaTimeLine.js +0 -48
  135. package/dist/esm/components/NormaTimeLine/NormaTimeLine.js.map +0 -1
  136. package/dist/esm/components/Paper.d.ts +0 -3
  137. package/dist/esm/components/Paper.js +0 -10
  138. package/dist/esm/components/Paper.js.map +0 -1
  139. package/dist/esm/components/ProgressBar.d.ts +0 -3
  140. package/dist/esm/components/ProgressBar.js +0 -42
  141. package/dist/esm/components/ProgressBar.js.map +0 -1
  142. package/dist/esm/components/RadioGroup.d.ts +0 -3
  143. package/dist/esm/components/RadioGroup.js +0 -15
  144. package/dist/esm/components/RadioGroup.js.map +0 -1
  145. package/dist/esm/components/RangerSlider.d.ts +0 -3
  146. package/dist/esm/components/RangerSlider.js +0 -63
  147. package/dist/esm/components/RangerSlider.js.map +0 -1
  148. package/dist/esm/components/Select.d.ts +0 -3
  149. package/dist/esm/components/Select.js +0 -41
  150. package/dist/esm/components/Select.js.map +0 -1
  151. package/dist/esm/components/SelectInput/components/Option/index.d.ts +0 -3
  152. package/dist/esm/components/SelectInput/components/Option/index.js +0 -34
  153. package/dist/esm/components/SelectInput/components/Option/index.js.map +0 -1
  154. package/dist/esm/components/SelectInput/components/Option/styles.d.ts +0 -1
  155. package/dist/esm/components/SelectInput/components/Option/styles.js +0 -5
  156. package/dist/esm/components/SelectInput/components/Option/styles.js.map +0 -1
  157. package/dist/esm/components/SelectInput/index.d.ts +0 -4
  158. package/dist/esm/components/SelectInput/index.js +0 -19
  159. package/dist/esm/components/SelectInput/index.js.map +0 -1
  160. package/dist/esm/components/SelectInput/interfaces.d.ts +0 -15
  161. package/dist/esm/components/SelectInput/interfaces.js +0 -2
  162. package/dist/esm/components/SelectInput/interfaces.js.map +0 -1
  163. package/dist/esm/components/SelectInput/styles.d.ts +0 -2
  164. package/dist/esm/components/SelectInput/styles.js +0 -6
  165. package/dist/esm/components/SelectInput/styles.js.map +0 -1
  166. package/dist/esm/components/StatusModal/StatusModal.d.ts +0 -11
  167. package/dist/esm/components/StatusModal/StatusModal.js +0 -26
  168. package/dist/esm/components/StatusModal/StatusModal.js.map +0 -1
  169. package/dist/esm/components/StatusModal/StatusModal.style.d.ts +0 -12
  170. package/dist/esm/components/StatusModal/StatusModal.style.js +0 -12
  171. package/dist/esm/components/StatusModal/StatusModal.style.js.map +0 -1
  172. package/dist/esm/components/Svgs.d.ts +0 -30
  173. package/dist/esm/components/Svgs.js +0 -106
  174. package/dist/esm/components/Svgs.js.map +0 -1
  175. package/dist/esm/components/Table/components/header/index.d.ts +0 -3
  176. package/dist/esm/components/Table/components/header/index.js +0 -47
  177. package/dist/esm/components/Table/components/header/index.js.map +0 -1
  178. package/dist/esm/components/Table/components/header/styles.d.ts +0 -8
  179. package/dist/esm/components/Table/components/header/styles.js +0 -12
  180. package/dist/esm/components/Table/components/header/styles.js.map +0 -1
  181. package/dist/esm/components/Table/components/index.d.ts +0 -4
  182. package/dist/esm/components/Table/components/index.js +0 -5
  183. package/dist/esm/components/Table/components/index.js.map +0 -1
  184. package/dist/esm/components/Table/components/pagination/index.d.ts +0 -3
  185. package/dist/esm/components/Table/components/pagination/index.js +0 -26
  186. package/dist/esm/components/Table/components/pagination/index.js.map +0 -1
  187. package/dist/esm/components/Table/components/pagination/styles.d.ts +0 -1
  188. package/dist/esm/components/Table/components/pagination/styles.js +0 -5
  189. package/dist/esm/components/Table/components/pagination/styles.js.map +0 -1
  190. package/dist/esm/components/Table/components/tbody/index.d.ts +0 -3
  191. package/dist/esm/components/Table/components/tbody/index.js +0 -15
  192. package/dist/esm/components/Table/components/tbody/index.js.map +0 -1
  193. package/dist/esm/components/Table/components/tbody/styles.d.ts +0 -1
  194. package/dist/esm/components/Table/components/tbody/styles.js +0 -5
  195. package/dist/esm/components/Table/components/tbody/styles.js.map +0 -1
  196. package/dist/esm/components/Table/index.d.ts +0 -4
  197. package/dist/esm/components/Table/index.js +0 -227
  198. package/dist/esm/components/Table/index.js.map +0 -1
  199. package/dist/esm/components/Table/interface.d.ts +0 -26
  200. package/dist/esm/components/Table/interface.js +0 -2
  201. package/dist/esm/components/Table/interface.js.map +0 -1
  202. package/dist/esm/components/Table/styles.d.ts +0 -10
  203. package/dist/esm/components/Table/styles.js +0 -14
  204. package/dist/esm/components/Table/styles.js.map +0 -1
  205. package/dist/esm/components/Tabs.d.ts +0 -3
  206. package/dist/esm/components/Tabs.js +0 -73
  207. package/dist/esm/components/Tabs.js.map +0 -1
  208. package/dist/esm/components/Tag.d.ts +0 -3
  209. package/dist/esm/components/Tag.js +0 -24
  210. package/dist/esm/components/Tag.js.map +0 -1
  211. package/dist/esm/components/TextField.d.ts +0 -3
  212. package/dist/esm/components/TextField.js +0 -14
  213. package/dist/esm/components/TextField.js.map +0 -1
  214. package/dist/esm/components/TextInput/index.d.ts +0 -4
  215. package/dist/esm/components/TextInput/index.js +0 -16
  216. package/dist/esm/components/TextInput/index.js.map +0 -1
  217. package/dist/esm/components/TextInput/interface.d.ts +0 -10
  218. package/dist/esm/components/TextInput/interface.js +0 -2
  219. package/dist/esm/components/TextInput/interface.js.map +0 -1
  220. package/dist/esm/components/TextInput/styles.d.ts +0 -3
  221. package/dist/esm/components/TextInput/styles.js +0 -7
  222. package/dist/esm/components/TextInput/styles.js.map +0 -1
  223. package/dist/esm/components/TimeLine/TimeLine.d.ts +0 -14
  224. package/dist/esm/components/TimeLine/TimeLine.js +0 -48
  225. package/dist/esm/components/TimeLine/TimeLine.js.map +0 -1
  226. package/dist/esm/components/TimeLine.d.ts +0 -3
  227. package/dist/esm/components/TimeLine.js +0 -56
  228. package/dist/esm/components/TimeLine.js.map +0 -1
  229. package/dist/esm/components/TimePicker.d.ts +0 -9
  230. package/dist/esm/components/TimePicker.js +0 -61
  231. package/dist/esm/components/TimePicker.js.map +0 -1
  232. package/dist/esm/components/Typography/Text/index.d.ts +0 -4
  233. package/dist/esm/components/Typography/Text/index.js +0 -8
  234. package/dist/esm/components/Typography/Text/index.js.map +0 -1
  235. package/dist/esm/components/Typography/Text/interfaces.d.ts +0 -6
  236. package/dist/esm/components/Typography/Text/interfaces.js +0 -2
  237. package/dist/esm/components/Typography/Text/interfaces.js.map +0 -1
  238. package/dist/esm/components/Typography/Text/styles.d.ts +0 -2
  239. package/dist/esm/components/Typography/Text/styles.js +0 -35
  240. package/dist/esm/components/Typography/Text/styles.js.map +0 -1
  241. package/dist/esm/components/Typography/Title/index.d.ts +0 -4
  242. package/dist/esm/components/Typography/Title/index.js +0 -8
  243. package/dist/esm/components/Typography/Title/index.js.map +0 -1
  244. package/dist/esm/components/Typography/Title/interfaces.d.ts +0 -7
  245. package/dist/esm/components/Typography/Title/interfaces.js +0 -2
  246. package/dist/esm/components/Typography/Title/interfaces.js.map +0 -1
  247. package/dist/esm/components/Typography/Title/styles.d.ts +0 -2
  248. package/dist/esm/components/Typography/Title/styles.js +0 -35
  249. package/dist/esm/components/Typography/Title/styles.js.map +0 -1
  250. package/dist/esm/components/Typography/index.d.ts +0 -3
  251. package/dist/esm/components/Typography/index.js +0 -4
  252. package/dist/esm/components/Typography/index.js.map +0 -1
  253. package/dist/esm/components/UncontrolledTable/components/header/index.d.ts +0 -3
  254. package/dist/esm/components/UncontrolledTable/components/header/index.js +0 -39
  255. package/dist/esm/components/UncontrolledTable/components/header/index.js.map +0 -1
  256. package/dist/esm/components/UncontrolledTable/components/header/styles.d.ts +0 -8
  257. package/dist/esm/components/UncontrolledTable/components/header/styles.js +0 -12
  258. package/dist/esm/components/UncontrolledTable/components/header/styles.js.map +0 -1
  259. package/dist/esm/components/UncontrolledTable/components/index.d.ts +0 -4
  260. package/dist/esm/components/UncontrolledTable/components/index.js +0 -5
  261. package/dist/esm/components/UncontrolledTable/components/index.js.map +0 -1
  262. package/dist/esm/components/UncontrolledTable/components/pagination/index.d.ts +0 -11
  263. package/dist/esm/components/UncontrolledTable/components/pagination/index.js +0 -18
  264. package/dist/esm/components/UncontrolledTable/components/pagination/index.js.map +0 -1
  265. package/dist/esm/components/UncontrolledTable/components/pagination/styles.d.ts +0 -1
  266. package/dist/esm/components/UncontrolledTable/components/pagination/styles.js +0 -5
  267. package/dist/esm/components/UncontrolledTable/components/pagination/styles.js.map +0 -1
  268. package/dist/esm/components/UncontrolledTable/components/tbody/index.d.ts +0 -3
  269. package/dist/esm/components/UncontrolledTable/components/tbody/index.js +0 -15
  270. package/dist/esm/components/UncontrolledTable/components/tbody/index.js.map +0 -1
  271. package/dist/esm/components/UncontrolledTable/components/tbody/styles.d.ts +0 -2
  272. package/dist/esm/components/UncontrolledTable/components/tbody/styles.js +0 -12
  273. package/dist/esm/components/UncontrolledTable/components/tbody/styles.js.map +0 -1
  274. package/dist/esm/components/UncontrolledTable/index.d.ts +0 -4
  275. package/dist/esm/components/UncontrolledTable/index.js +0 -86
  276. package/dist/esm/components/UncontrolledTable/index.js.map +0 -1
  277. package/dist/esm/components/UncontrolledTable/interface.d.ts +0 -44
  278. package/dist/esm/components/UncontrolledTable/interface.js +0 -2
  279. package/dist/esm/components/UncontrolledTable/interface.js.map +0 -1
  280. package/dist/esm/components/UncontrolledTable/styles.d.ts +0 -14
  281. package/dist/esm/components/UncontrolledTable/styles.js +0 -22
  282. package/dist/esm/components/UncontrolledTable/styles.js.map +0 -1
  283. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.d.ts +0 -15
  284. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.js +0 -32
  285. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.js.map +0 -1
  286. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.style.d.ts +0 -12
  287. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.style.js +0 -49
  288. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.style.js.map +0 -1
  289. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.d.ts +0 -1
  290. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.js +0 -5
  291. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.js.map +0 -1
  292. package/dist/esm/components/index.d.ts +0 -23
  293. package/dist/esm/components/index.js +0 -24
  294. package/dist/esm/components/index.js.map +0 -1
  295. package/dist/esm/helpers/alignments.d.ts +0 -2
  296. package/dist/esm/helpers/alignments.js +0 -14
  297. package/dist/esm/helpers/alignments.js.map +0 -1
  298. package/dist/esm/helpers/borders.d.ts +0 -2
  299. package/dist/esm/helpers/borders.js +0 -18
  300. package/dist/esm/helpers/borders.js.map +0 -1
  301. package/dist/esm/helpers/colors.d.ts +0 -178
  302. package/dist/esm/helpers/colors.js +0 -237
  303. package/dist/esm/helpers/colors.js.map +0 -1
  304. package/dist/esm/helpers/index.d.ts +0 -5
  305. package/dist/esm/helpers/index.js +0 -6
  306. package/dist/esm/helpers/index.js.map +0 -1
  307. package/dist/esm/helpers/radios.d.ts +0 -2
  308. package/dist/esm/helpers/radios.js +0 -24
  309. package/dist/esm/helpers/radios.js.map +0 -1
  310. package/dist/esm/helpers/sizes.d.ts +0 -11
  311. package/dist/esm/helpers/sizes.js +0 -67
  312. package/dist/esm/helpers/sizes.js.map +0 -1
  313. package/dist/esm/hooks/useClickOutside.d.ts +0 -2
  314. package/dist/esm/hooks/useClickOutside.js +0 -16
  315. package/dist/esm/hooks/useClickOutside.js.map +0 -1
  316. package/dist/esm/index.d.ts +0 -34
  317. package/dist/esm/index.js +0 -35
  318. package/dist/esm/index.js.map +0 -1
  319. package/dist/esm/interfaces/Accordion.d.ts +0 -11
  320. package/dist/esm/interfaces/Accordion.js +0 -2
  321. package/dist/esm/interfaces/Accordion.js.map +0 -1
  322. package/dist/esm/interfaces/Avatar.d.ts +0 -12
  323. package/dist/esm/interfaces/Avatar.js +0 -2
  324. package/dist/esm/interfaces/Avatar.js.map +0 -1
  325. package/dist/esm/interfaces/Badge.d.ts +0 -14
  326. package/dist/esm/interfaces/Badge.js +0 -2
  327. package/dist/esm/interfaces/Badge.js.map +0 -1
  328. package/dist/esm/interfaces/Button.d.ts +0 -12
  329. package/dist/esm/interfaces/Button.js +0 -2
  330. package/dist/esm/interfaces/Button.js.map +0 -1
  331. package/dist/esm/interfaces/Card.d.ts +0 -10
  332. package/dist/esm/interfaces/Card.js +0 -2
  333. package/dist/esm/interfaces/Card.js.map +0 -1
  334. package/dist/esm/interfaces/ChatMessage.d.ts +0 -11
  335. package/dist/esm/interfaces/ChatMessage.js +0 -2
  336. package/dist/esm/interfaces/ChatMessage.js.map +0 -1
  337. package/dist/esm/interfaces/ChatMessageBalloon.d.ts +0 -16
  338. package/dist/esm/interfaces/ChatMessageBalloon.js +0 -2
  339. package/dist/esm/interfaces/ChatMessageBalloon.js.map +0 -1
  340. package/dist/esm/interfaces/CheckBox.d.ts +0 -19
  341. package/dist/esm/interfaces/CheckBox.js +0 -2
  342. package/dist/esm/interfaces/CheckBox.js.map +0 -1
  343. package/dist/esm/interfaces/DatePicker.d.ts +0 -11
  344. package/dist/esm/interfaces/DatePicker.js +0 -2
  345. package/dist/esm/interfaces/DatePicker.js.map +0 -1
  346. package/dist/esm/interfaces/DropDown.d.ts +0 -11
  347. package/dist/esm/interfaces/DropDown.js +0 -2
  348. package/dist/esm/interfaces/DropDown.js.map +0 -1
  349. package/dist/esm/interfaces/IconButton.d.ts +0 -14
  350. package/dist/esm/interfaces/IconButton.js +0 -2
  351. package/dist/esm/interfaces/IconButton.js.map +0 -1
  352. package/dist/esm/interfaces/Icons.d.ts +0 -15
  353. package/dist/esm/interfaces/Icons.js +0 -2
  354. package/dist/esm/interfaces/Icons.js.map +0 -1
  355. package/dist/esm/interfaces/Modal.d.ts +0 -16
  356. package/dist/esm/interfaces/Modal.js +0 -2
  357. package/dist/esm/interfaces/Modal.js.map +0 -1
  358. package/dist/esm/interfaces/Paper.d.ts +0 -11
  359. package/dist/esm/interfaces/Paper.js +0 -2
  360. package/dist/esm/interfaces/Paper.js.map +0 -1
  361. package/dist/esm/interfaces/ProgressBar.d.ts +0 -26
  362. package/dist/esm/interfaces/ProgressBar.js +0 -2
  363. package/dist/esm/interfaces/ProgressBar.js.map +0 -1
  364. package/dist/esm/interfaces/RadioGroup.d.ts +0 -16
  365. package/dist/esm/interfaces/RadioGroup.js +0 -2
  366. package/dist/esm/interfaces/RadioGroup.js.map +0 -1
  367. package/dist/esm/interfaces/RangerSlider.d.ts +0 -18
  368. package/dist/esm/interfaces/RangerSlider.js +0 -2
  369. package/dist/esm/interfaces/RangerSlider.js.map +0 -1
  370. package/dist/esm/interfaces/Select.d.ts +0 -16
  371. package/dist/esm/interfaces/Select.js +0 -2
  372. package/dist/esm/interfaces/Select.js.map +0 -1
  373. package/dist/esm/interfaces/Tabs.d.ts +0 -17
  374. package/dist/esm/interfaces/Tabs.js +0 -2
  375. package/dist/esm/interfaces/Tabs.js.map +0 -1
  376. package/dist/esm/interfaces/Tag.d.ts +0 -17
  377. package/dist/esm/interfaces/Tag.js +0 -2
  378. package/dist/esm/interfaces/Tag.js.map +0 -1
  379. package/dist/esm/interfaces/TextField.d.ts +0 -41
  380. package/dist/esm/interfaces/TextField.js +0 -2
  381. package/dist/esm/interfaces/TextField.js.map +0 -1
  382. package/dist/esm/interfaces/TimeLine.d.ts +0 -16
  383. package/dist/esm/interfaces/TimeLine.js +0 -2
  384. package/dist/esm/interfaces/TimeLine.js.map +0 -1
  385. package/dist/esm/interfaces/TimePicker.d.ts +0 -11
  386. package/dist/esm/interfaces/TimePicker.js +0 -2
  387. package/dist/esm/interfaces/TimePicker.js.map +0 -1
  388. package/dist/esm/interfaces/index.d.ts +0 -23
  389. package/dist/esm/interfaces/index.js +0 -24
  390. package/dist/esm/interfaces/index.js.map +0 -1
  391. package/dist/esm/providers/NormaProvider.d.ts +0 -3
  392. package/dist/esm/providers/NormaProvider.js +0 -7
  393. package/dist/esm/providers/NormaProvider.js.map +0 -1
  394. package/dist/esm/types/index.d.ts +0 -90
  395. package/dist/esm/types/index.js +0 -10
  396. package/dist/esm/types/index.js.map +0 -1
  397. package/dist/esm/utils/styledBreakpoints.d.ts +0 -10
  398. package/dist/esm/utils/styledBreakpoints.js +0 -12
  399. package/dist/esm/utils/styledBreakpoints.js.map +0 -1
  400. package/src/components/UncontrolledTable/components/tbody/index.tsx +0 -33
  401. /package/src/components/UncontrolledTable/components/{tbody → row}/styles.tsx +0 -0
@@ -0,0 +1,34 @@
1
+ import React, { CSSProperties } from 'react';
2
+ import * as S from './styles';
3
+
4
+ import { flexRender } from '@tanstack/react-table';
5
+ import { useSortable } from '@dnd-kit/sortable';
6
+ import { CSS } from '@dnd-kit/utilities';
7
+
8
+ const DraggableRow: React.FC<any> = ({ row, onClick, onMouseOver, onMouseOut }) => {
9
+ const { transform, transition, setNodeRef, isDragging } = useSortable({
10
+ id: row.id,
11
+ });
12
+
13
+ const style: CSSProperties = {
14
+ transform: CSS.Transform.toString(transform),
15
+ transition: transition,
16
+ opacity: isDragging ? 0.8 : 1,
17
+ zIndex: isDragging ? 1 : 0,
18
+ position: 'relative',
19
+ };
20
+
21
+ return (
22
+ <S.Tr $hasAction={!!onClick || !!onMouseOver || !!onMouseOut} ref={setNodeRef} style={style}>
23
+ {row.getVisibleCells().map((cell: any) => (
24
+ <S.Td key={cell.id} onClick={onClick} onMouseOver={onMouseOver} onMouseOut={onMouseOut}>
25
+ {cell.column.columnDef.type == 'action'
26
+ ? cell.getValue()
27
+ : flexRender(cell.column.columnDef.cell, cell.getContext())}
28
+ </S.Td>
29
+ ))}
30
+ </S.Tr>
31
+ );
32
+ };
33
+
34
+ export default DraggableRow;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { useSortable } from '@dnd-kit/sortable';
3
+ import { Button } from '../../../../components/Button';
4
+ import DragIndicatorIcon from '@mui/icons-material/DragIndicator';
5
+
6
+ const RowDragHandleCell: React.FC<any> = ({ rowId }: { rowId: string}) => {
7
+ const { attributes, listeners } = useSortable({
8
+ id: rowId,
9
+ });
10
+ return (
11
+ <Button {...attributes} {...listeners} style={{ cursor: 'grab' }}>
12
+ <DragIndicatorIcon />
13
+ </Button>
14
+ );
15
+ };
16
+
17
+ export default RowDragHandleCell;
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { flexRender } from '@tanstack/react-table';
3
+ import * as S from './styles';
4
+
5
+ const SimpleRow: React.FC<any> = ({ row, onClick, onMouseOver, onMouseOut }) => {
6
+ return (
7
+ <S.Tr
8
+ $hasAction={!!onClick || !!onMouseOver || !!onMouseOut}
9
+ onClick={() => (onClick ? onClick(row.original) : null)}
10
+ onMouseOver={() => (onMouseOver ? onMouseOver(row.original) : null)}
11
+ onMouseOut={() => (onMouseOut ? onMouseOut(row.original) : null)}
12
+ >
13
+ {row.getVisibleCells().map((cell: any, index: number) => {
14
+ return (
15
+ <S.Td key={index}>
16
+ {cell.column.columnDef.type == 'action'
17
+ ? cell.getValue()
18
+ : flexRender(cell.column.columnDef.cell, cell.getContext())}
19
+ </S.Td>
20
+ );
21
+ })}
22
+ </S.Tr>
23
+ );
24
+ };
25
+
26
+ export default SimpleRow;
@@ -10,7 +10,21 @@ import {
10
10
  TableOptions,
11
11
  } from '@tanstack/react-table';
12
12
 
13
- import { Pagination, Header, TBody } from './components';
13
+ import {
14
+ DndContext,
15
+ MouseSensor,
16
+ closestCenter,
17
+ type DragEndEvent,
18
+ type UniqueIdentifier,
19
+ useSensor,
20
+ useSensors,
21
+ TouchSensor,
22
+ KeyboardSensor,
23
+ } from '@dnd-kit/core';
24
+ import { restrictToVerticalAxis } from '@dnd-kit/modifiers';
25
+ import { arrayMove, SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
26
+
27
+ import { Pagination, Header, SimpleRow, DraggableRow, RowDragHandleCell } from './components';
14
28
  import { UncontrolledTableProps } from './interface';
15
29
  import useClickOutside from '../../hooks/useClickOutside';
16
30
 
@@ -35,6 +49,8 @@ const UncontrolledTable = (props: UncontrolledTableProps) => {
35
49
  tableClassName,
36
50
  stickyHeader,
37
51
  stickyHeaderP,
52
+ draggable,
53
+ onDragEnd,
38
54
  } = props;
39
55
 
40
56
  const [openFilterDialog, setOpenFilterDialog] = useState('');
@@ -44,10 +60,27 @@ const UncontrolledTable = (props: UncontrolledTableProps) => {
44
60
  const [orderSmallest, setOrderSmallest] = useState(false);
45
61
  const [orderLargest, setOrderLargest] = useState(false);
46
62
 
63
+ const _columns: any[] = useMemo(() => {
64
+ return draggable
65
+ ? [
66
+ {
67
+ id: 'drag',
68
+ header: '',
69
+ cell: ({ row }: { row: any }) => <RowDragHandleCell rowId={row.id}/>,
70
+ disableMenu: true,
71
+ },
72
+ ...columns.map((column) => ({
73
+ ...column,
74
+ disableMenu: true,
75
+ })),
76
+ ]
77
+ : columns;
78
+ }, [columns]);
79
+
47
80
  const reactTableConfig = useMemo(() => {
48
81
  const config: TableOptions<unknown> = {
49
- columns: columns as any,
50
82
  data,
83
+ columns: _columns,
51
84
  state: {
52
85
  sorting: sorting,
53
86
  columnFilters: filterByColumn,
@@ -59,16 +92,40 @@ const UncontrolledTable = (props: UncontrolledTableProps) => {
59
92
  onSortingChange: setSorting,
60
93
  onColumnFiltersChange: setFilterByColumn,
61
94
  manualPagination: true,
95
+ getRowId: (row: any) => row.id,
96
+ debugTable: true,
97
+ debugHeaders: true,
98
+ debugColumns: true,
62
99
  };
63
100
 
64
101
  return config;
65
- }, [data, sorting, filterByColumn, columns, pagination]);
102
+ }, [data, sorting, filterByColumn, _columns, pagination]);
66
103
 
67
104
  const table = useReactTable(reactTableConfig);
68
105
  const filterRef = useRef<HTMLDivElement>(null);
69
106
 
70
107
  useClickOutside(filterRef, () => setOpenFilterDialog(''));
71
108
 
109
+ const handleDragEnd = (event: DragEndEvent) => {
110
+ const { active, over } = event;
111
+
112
+
113
+ if (active && over && active.id !== over.id && onDragEnd) {
114
+ const oldIndex = dataIds.indexOf(active.id);
115
+ const newIndex = dataIds.indexOf(over.id);
116
+
117
+ const _data = arrayMove(data, oldIndex, newIndex);
118
+ onDragEnd(_data);
119
+ }
120
+ };
121
+
122
+ const sensors = useSensors(useSensor(MouseSensor, {}), useSensor(TouchSensor, {}), useSensor(KeyboardSensor, {}));
123
+
124
+ const dataIds = useMemo<UniqueIdentifier[]>(
125
+ () => data?.map((item: { id: UniqueIdentifier }) => item.id) || [],
126
+ [data],
127
+ );
128
+
72
129
  return (
73
130
  <S.Container>
74
131
  <Header
@@ -89,128 +146,157 @@ const UncontrolledTable = (props: UncontrolledTableProps) => {
89
146
  hideColumns={props.hideColumns}
90
147
  onColumnVisibilityChange={props.onColumnVisibilityChange}
91
148
  />
92
- <S.Table className={tableClassName || ''}>
93
- <S.Thead $sticky={stickyHeader} $stickyTopP={stickyHeaderP}>
94
- {table.getHeaderGroups().map((headerGroup: any) => (
95
- <S.TableRow key={headerGroup.id}>
96
- {headerGroup.headers.map((header: any) => (
97
- <S.Th key={header.id}>
98
- <S.ColumnContent
99
- onClick={() => {
100
- if (!header?.column?.columnDef?.disableMenu)
101
- setOpenFilterDialog(header.column.columnDef.accessorKey);
102
- }}
103
- >
104
- <S.TextColumn>
105
- {!header.isPlaceholder && flexRender(header.column.columnDef.header, header.getContext())}
106
- </S.TextColumn>
107
- {!header?.column?.columnDef?.disableMenu && (
108
- <S.IconFilterDialog>
109
- <svg fill="#666" focusable="false" aria-hidden="true" viewBox="0 0 24 24">
110
- <path d="m7 10 5 5 5-5z" />
111
- </svg>
112
- </S.IconFilterDialog>
113
- )}
114
- </S.ColumnContent>
115
- {openFilterDialog === header.column.columnDef.accessorKey && (
116
- <S.FilterDialog ref={filterRef}>
117
- <S.ListFilterDialog>
118
- <S.OptionFilterDialog
119
- style={{
120
- background: orderSmallest ? 'rgba(0, 0, 0, 0.04)' : '',
121
- }}
122
- onClick={() => {
123
- onSortClick && onSortClick(header.column.columnDef.accessorKey, 'asc');
124
- setOpenFilterDialog('');
125
- }}
126
- >
127
- <div className="icon">
128
- <svg
129
- fill="#666"
130
- stroke="currentColor"
131
- strokeWidth="1.5"
132
- viewBox="0 0 24 24"
133
- xmlns="http://www.w3.org/2000/svg"
134
- aria-hidden="true"
135
- width="20"
136
- height="20"
137
- >
138
- <path
139
- strokeLinecap="round"
140
- strokeLinejoin="round"
141
- d="M12 4.5v15m0 0l6.75-6.75M12 19.5l-6.75-6.75"
142
- />
143
- </svg>
144
- </div>
145
- <p>{labels?.orderAsc || 'Menor primeiro'}</p>
146
- </S.OptionFilterDialog>
147
- <S.OptionFilterDialog
148
- style={{
149
- background: orderLargest ? 'rgba(0, 0, 0, 0.04)' : '',
150
- }}
151
- onClick={() => {
152
- onSortClick && onSortClick(header.column.columnDef.accessorKey, 'desc');
153
- setOpenFilterDialog('');
154
- }}
155
- >
156
- <div className="icon rotate">
157
- <svg
158
- fill="#666"
159
- stroke="currentColor"
160
- strokeWidth="1.5"
161
- viewBox="0 0 24 24"
162
- xmlns="http://www.w3.org/2000/svg"
163
- aria-hidden="true"
164
- width="20"
165
- height="20"
166
- >
167
- <path
168
- strokeLinecap="round"
169
- strokeLinejoin="round"
170
- d="M12 4.5v15m0 0l6.75-6.75M12 19.5l-6.75-6.75"
171
- ></path>
172
- </svg>
173
- </div>
174
- <p>{labels?.orderDesc || 'Maior primeiro'}</p>
175
- </S.OptionFilterDialog>
176
- {!header?.column?.columnDef?.nofilter && (
149
+ <DndContext
150
+ collisionDetection={closestCenter}
151
+ modifiers={[restrictToVerticalAxis]}
152
+ onDragEnd={handleDragEnd}
153
+ sensors={sensors}
154
+ >
155
+ <S.Table className={tableClassName || ''}>
156
+ <S.Thead $sticky={stickyHeader} $stickyTopP={stickyHeaderP}>
157
+ {table.getHeaderGroups().map((headerGroup: any) => (
158
+ <S.TableRow key={headerGroup.id}>
159
+ {headerGroup.headers.map((header: any) => (
160
+ <S.Th key={header.id}>
161
+ <S.ColumnContent
162
+ onClick={() => {
163
+ if (!header?.column?.columnDef?.disableMenu)
164
+ setOpenFilterDialog(header.column.columnDef.accessorKey);
165
+ }}
166
+ >
167
+ <S.TextColumn>
168
+ {!header.isPlaceholder && flexRender(header.column.columnDef.header, header.getContext())}
169
+ </S.TextColumn>
170
+ {!header?.column?.columnDef?.disableMenu && (
171
+ <S.IconFilterDialog>
172
+ <svg fill="#666" focusable="false" aria-hidden="true" viewBox="0 0 24 24">
173
+ <path d="m7 10 5 5 5-5z" />
174
+ </svg>
175
+ </S.IconFilterDialog>
176
+ )}
177
+ </S.ColumnContent>
178
+ {openFilterDialog === header.column.columnDef.accessorKey && (
179
+ <S.FilterDialog ref={filterRef}>
180
+ <S.ListFilterDialog>
177
181
  <S.OptionFilterDialog
182
+ style={{
183
+ background: orderSmallest ? 'rgba(0, 0, 0, 0.04)' : '',
184
+ }}
178
185
  onClick={() => {
179
- onFilterClick && onFilterClick(header.column.columnDef.accessorKey);
186
+ onSortClick && onSortClick(header.column.columnDef.accessorKey, 'asc');
180
187
  setOpenFilterDialog('');
181
188
  }}
182
189
  >
183
190
  <div className="icon">
184
191
  <svg
185
- fill="none"
192
+ fill="#666"
186
193
  stroke="currentColor"
187
194
  strokeWidth="1.5"
188
195
  viewBox="0 0 24 24"
189
196
  xmlns="http://www.w3.org/2000/svg"
190
197
  aria-hidden="true"
191
- width="16"
192
- height="16"
198
+ width="20"
199
+ height="20"
193
200
  >
194
201
  <path
195
202
  strokeLinecap="round"
196
203
  strokeLinejoin="round"
197
- d="M12 3c2.755 0 5.455.232 8.083.678.533.09.917.556.917 1.096v1.044a2.25 2.25 0 01-.659 1.591l-5.432 5.432a2.25 2.25 0 00-.659 1.591v2.927a2.25 2.25 0 01-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 00-.659-1.591L3.659 7.409A2.25 2.25 0 013 5.818V4.774c0-.54.384-1.006.917-1.096A48.32 48.32 0 0112 3z"
204
+ d="M12 4.5v15m0 0l6.75-6.75M12 19.5l-6.75-6.75"
205
+ />
206
+ </svg>
207
+ </div>
208
+ <p>{labels?.orderAsc || 'Menor primeiro'}</p>
209
+ </S.OptionFilterDialog>
210
+ <S.OptionFilterDialog
211
+ style={{
212
+ background: orderLargest ? 'rgba(0, 0, 0, 0.04)' : '',
213
+ }}
214
+ onClick={() => {
215
+ onSortClick && onSortClick(header.column.columnDef.accessorKey, 'desc');
216
+ setOpenFilterDialog('');
217
+ }}
218
+ >
219
+ <div className="icon rotate">
220
+ <svg
221
+ fill="#666"
222
+ stroke="currentColor"
223
+ strokeWidth="1.5"
224
+ viewBox="0 0 24 24"
225
+ xmlns="http://www.w3.org/2000/svg"
226
+ aria-hidden="true"
227
+ width="20"
228
+ height="20"
229
+ >
230
+ <path
231
+ strokeLinecap="round"
232
+ strokeLinejoin="round"
233
+ d="M12 4.5v15m0 0l6.75-6.75M12 19.5l-6.75-6.75"
198
234
  ></path>
199
235
  </svg>
200
236
  </div>
201
- <p>{labels?.filter || 'Filtrar por'}</p>
237
+ <p>{labels?.orderDesc || 'Maior primeiro'}</p>
202
238
  </S.OptionFilterDialog>
203
- )}
204
- </S.ListFilterDialog>
205
- </S.FilterDialog>
206
- )}
207
- </S.Th>
208
- ))}
209
- </S.TableRow>
210
- ))}
211
- </S.Thead>
212
- <TBody table={table} onClick={onClick} onMouseOver={onMouseOver} onMouseOut={onMouseOut} />
213
- </S.Table>
239
+ {!header?.column?.columnDef?.nofilter && (
240
+ <S.OptionFilterDialog
241
+ onClick={() => {
242
+ onFilterClick && onFilterClick(header.column.columnDef.accessorKey);
243
+ setOpenFilterDialog('');
244
+ }}
245
+ >
246
+ <div className="icon">
247
+ <svg
248
+ fill="none"
249
+ stroke="currentColor"
250
+ strokeWidth="1.5"
251
+ viewBox="0 0 24 24"
252
+ xmlns="http://www.w3.org/2000/svg"
253
+ aria-hidden="true"
254
+ width="16"
255
+ height="16"
256
+ >
257
+ <path
258
+ strokeLinecap="round"
259
+ strokeLinejoin="round"
260
+ d="M12 3c2.755 0 5.455.232 8.083.678.533.09.917.556.917 1.096v1.044a2.25 2.25 0 01-.659 1.591l-5.432 5.432a2.25 2.25 0 00-.659 1.591v2.927a2.25 2.25 0 01-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 00-.659-1.591L3.659 7.409A2.25 2.25 0 013 5.818V4.774c0-.54.384-1.006.917-1.096A48.32 48.32 0 0112 3z"
261
+ ></path>
262
+ </svg>
263
+ </div>
264
+ <p>{labels?.filter || 'Filtrar por'}</p>
265
+ </S.OptionFilterDialog>
266
+ )}
267
+ </S.ListFilterDialog>
268
+ </S.FilterDialog>
269
+ )}
270
+ </S.Th>
271
+ ))}
272
+ </S.TableRow>
273
+ ))}
274
+ </S.Thead>
275
+ <tbody>
276
+ <SortableContext items={dataIds} strategy={verticalListSortingStrategy}>
277
+ {table.getRowModel().rows.map((row: any) => {
278
+ return draggable ? (
279
+ <DraggableRow
280
+ key={row.id}
281
+ row={row}
282
+ onClick={onClick}
283
+ onMouseOver={onMouseOver}
284
+ onMouseOut={onMouseOut}
285
+ />
286
+ ) : (
287
+ <SimpleRow
288
+ key={row.id}
289
+ row={row}
290
+ onClick={onClick}
291
+ onMouseOver={onMouseOver}
292
+ onMouseOut={onMouseOut}
293
+ />
294
+ );
295
+ })}
296
+ </SortableContext>
297
+ </tbody>
298
+ </S.Table>
299
+ </DndContext>
214
300
  {pagination && (
215
301
  <Pagination
216
302
  pagination={pagination}
@@ -24,17 +24,19 @@ export interface UncontrolledTableProps {
24
24
  totalPages: number;
25
25
  showClearFields?: boolean;
26
26
  customTotalResults?: string;
27
- onChangePage: (pagination: Pagination) => void;
28
- onClearFieldsClick?: () => void;
29
- onFilterClick?: (column: string) => void;
30
- onSortClick?: (column: string, direction: string) => void;
31
27
  labels?: Labels;
32
28
  tableClassName?: string;
33
29
  stickyHeader?: boolean;
34
30
  stickyHeaderP?: number;
35
31
  customIcons?: React.ReactNode[];
36
32
  hideColumns?: string[];
33
+ draggable?: boolean;
34
+ onChangePage: (pagination: Pagination) => void;
35
+ onClearFieldsClick?: () => void;
36
+ onFilterClick?: (column: string) => void;
37
+ onSortClick?: (column: string, direction: string) => void;
37
38
  onColumnVisibilityChange?: (columnId: string, isVisible: boolean) => void;
39
+ onDragEnd?: (data: any[]) => void;
38
40
  }
39
41
 
40
42
  export interface ColumnsTable {
@@ -12,10 +12,12 @@ export * from './IconButton';
12
12
  export * from './Icons';
13
13
  export * from './Modal';
14
14
  export * from './Paper';
15
+ export * from './ProductCard/ProductCard';
15
16
  export * from './ProgressBar';
16
17
  export * from './RadioGroup';
17
18
  export * from './RangerSlider';
18
19
  export * from './Select';
20
+ export * from './ServiceCard/ServiceCard';
19
21
  export * from './Tabs';
20
22
  export * from './Tag';
21
23
  export * from './Table';
package/src/index.ts CHANGED
@@ -14,7 +14,7 @@ import { Tabs } from './components/Tabs';
14
14
  import { Tag } from './components/Tag';
15
15
  import { TextField } from './components/TextField';
16
16
  import { DatePicker } from './components/DatePicker';
17
- import { ChatMessage, ChatMessageBalloon } from './components';
17
+ import { ChatMessage, ChatMessageBalloon, ProductCard, ServiceCard } from './components';
18
18
  import { NormaProvider } from './providers/NormaProvider';
19
19
  import { themes, getPalette } from './helpers';
20
20
  import DateInput from './components/DateInput';
@@ -47,6 +47,7 @@ export {
47
47
  Modal,
48
48
  Paper,
49
49
  ProgressBar,
50
+ ProductCard,
50
51
  RadioGroup,
51
52
  RangerSlider,
52
53
  Select,
@@ -59,6 +60,7 @@ export {
59
60
  Box,
60
61
  Breadcrumb,
61
62
  SelectInput,
63
+ ServiceCard,
62
64
  MultiSelectInput,
63
65
  Text,
64
66
  Title,
@@ -14,5 +14,6 @@ export interface ModalBaseProps extends MuiModalBaseProps {
14
14
  id?: string;
15
15
  paperProps?: MuiPaperBaseProps;
16
16
  width?: string;
17
-
17
+ shouldNotCloseOnOutsideClick?: boolean;
18
+
18
19
  }
@@ -0,0 +1,23 @@
1
+ import { ReactNode } from 'react'
2
+
3
+ export interface ProductCardProps {
4
+ // product?: string
5
+ onClick?: () => void
6
+ disabled?: boolean
7
+ color: string
8
+ iconColor: string
9
+ iconName: string
10
+ title: string
11
+ description: string
12
+ hasBorder?: boolean
13
+ flaggable?: boolean
14
+ }
15
+
16
+
17
+ export interface BgIconProps {
18
+ $bColor: string
19
+ children?: ReactNode
20
+ className?: string
21
+ color: string
22
+ }
23
+
@@ -18,4 +18,7 @@ export interface RangerSliderBaseProps extends MuiRangerSliderBaseProps {
18
18
  defaultValue?: number | number[];
19
19
  valueLabelDisplay?: 'on' | 'auto' | 'off';
20
20
  color?: OverridableStringUnion<'primary' | 'secondary', SliderPropsColorOverrides>;
21
+ label?: string;
22
+ showValueInline?: boolean;
23
+ valueLabelFormat?: string | ((value: number, index: number) => React.ReactNode);
21
24
  }
@@ -0,0 +1,11 @@
1
+ export interface ServiceCardProps {
2
+ // service: string;
3
+ title?: string;
4
+ description: string;
5
+ onClick?: () => void;
6
+ disabled?: boolean;
7
+ color?: string;
8
+ iconColor?: string;
9
+ iconName?: string;
10
+ borderColor?: string;
11
+ }
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import { IconifyIcon } from '../components/IconifyIcon';
3
+ import { Meta, StoryObj } from '@storybook/react';
4
+
5
+ const meta: Meta<typeof IconifyIcon> = {
6
+ title: "Display/IconifyIcons",
7
+ component: IconifyIcon,
8
+ tags: ['autodocs'],
9
+ };
10
+ export default meta;
11
+ type Story = StoryObj<typeof meta>;
12
+
13
+
14
+ export const OpenSourceIcons: Story = {
15
+ parameters: {
16
+ docs: {
17
+ description: {
18
+ story: 'Este é um exemplo de uso do componente IconifyIcon, que permite a utilização de ícones de diversas bibliotecas, como Lucide, Material UI, e mais.',
19
+ },
20
+ },
21
+ },
22
+ render: () => (
23
+ <>
24
+ <IconifyIcon iconName="mdi:home" size="24px" color="red" />
25
+ <IconifyIcon iconName="mdi:account" size="24px" color="blue" />
26
+ <IconifyIcon iconName="mdi:account-check" size="24px" color="green" />
27
+ <IconifyIcon iconName="mdi:account-edit" size="24px" color="purple" />
28
+ </>
29
+
30
+ ),
31
+ }
@@ -244,3 +244,57 @@ export const ModalSize = () => {
244
244
  };
245
245
 
246
246
  ModalSize.storyName = 'Modal width and height';
247
+
248
+ export const ModalOutsideClick = () => {
249
+ const [open, setOpen] = React.useState(false);
250
+ const handleOpen = () => setOpen(true);
251
+ const handleClose = () => setOpen(false);
252
+
253
+ const defaultAction = [
254
+ {
255
+ label: 'Cancelar',
256
+ action: handleClose,
257
+ color: 'error',
258
+ size: 'medium',
259
+ variant: 'outlined',
260
+ },
261
+ {
262
+ label: 'Confirmar',
263
+ action: handleClose,
264
+ color: 'primary',
265
+ size: 'medium',
266
+ variant: 'contained',
267
+ },
268
+ ];
269
+ return (
270
+ <>
271
+ <Button onClick={handleOpen} color="primary" variant="outlined">
272
+ Open modal
273
+ </Button>
274
+
275
+ {open && (
276
+ <Modal
277
+ open={open}
278
+ shouldNotCloseOnOutsideClick={true}
279
+ onClose={handleClose}
280
+ aria-labelledby="modal-modal-title"
281
+ aria-describedby="modal-modal-description"
282
+ action={defaultAction}
283
+ title="Select a company"
284
+ width='90vw'
285
+ >
286
+ <>
287
+ <Typography id="modal-modal-title" variant="h6" component="h2">
288
+ Text in a modal
289
+ </Typography>
290
+ <Typography id="modal-modal-description" sx={{ mt: 2 }}>
291
+ Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
292
+ </Typography>
293
+ </>
294
+ </Modal>
295
+ )}
296
+ </>
297
+ );
298
+ };
299
+
300
+ ModalOutsideClick.storyName = 'Modal custom outside click behaviour';
@@ -11,6 +11,7 @@ const actions: OnAction[] = [
11
11
  },
12
12
  {
13
13
  label: 'Entendi',
14
+ variant: 'contained',
14
15
  action: () => {},
15
16
  },
16
17
  ];