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
package/.eslintrc.cjs ADDED
@@ -0,0 +1,89 @@
1
+ module.exports = {
2
+ root: true,
3
+ env: { browser: true, es2021: true },
4
+ extends: [
5
+ 'eslint:recommended',
6
+ 'plugin:@typescript-eslint/recommended',
7
+ 'plugin:react-hooks/recommended',
8
+ 'plugin:react/recommended',
9
+ 'plugin:react/jsx-runtime',
10
+ 'prettier',
11
+ ],
12
+ globals: {
13
+ // eslint-disable-next-line @typescript-eslint/naming-convention
14
+ __ENVIRONMENT__: 'readonly',
15
+ },
16
+ ignorePatterns: ['dist', '.eslintrc.cjs'],
17
+ parser: '@typescript-eslint/parser',
18
+ parserOptions: {
19
+ ecmaFeatures: {
20
+ tsx: true,
21
+ },
22
+ ecmaVersion: 'latest',
23
+ sourceType: 'module',
24
+ },
25
+ plugins: [
26
+ 'react',
27
+ 'react-refresh',
28
+ '@typescript-eslint',
29
+ 'react-hooks',
30
+ 'prettier',
31
+ 'simple-import-sort',
32
+ ],
33
+ rules: {
34
+ '@typescript-eslint/no-non-null-assertion': 'off',
35
+ '@typescript-eslint/no-explicit-any': 'error',
36
+ 'react/jsx-uses-react': 'off',
37
+ 'react/react-in-jsx-scope': 'off',
38
+ 'no-unused-vars': 'off',
39
+ 'react/prop-types': 'off',
40
+ 'react-refresh/only-export-components': ['warn', { allowConstantExport: true }],
41
+ '@typescript-eslint/ban-types': [
42
+ 'error',
43
+ {
44
+ types: {
45
+ Object: {
46
+ message: 'Avoid using the `Object` type. Did you mean `object`?',
47
+ fixWith: 'object',
48
+ },
49
+ Function: {
50
+ message:
51
+ 'Avoid using the `Function` type. Prefer a specific function type, like `() => void`.',
52
+ fixWith: '() => void',
53
+ },
54
+ Boolean: {
55
+ message: 'Avoid using the `Boolean` type. Did you mean `boolean`?',
56
+ fixWith: 'boolean',
57
+ },
58
+ Number: {
59
+ message: 'Avoid using the `Number` type. Did you mean `number`?',
60
+ fixWith: 'number',
61
+ },
62
+ String: {
63
+ message: 'Avoid using the `String` type. Did you mean `string`?',
64
+ fixWith: 'string',
65
+ },
66
+ Symbol: {
67
+ message: 'Avoid using the `Symbol` type. Did you mean `symbol`?}}',
68
+ fixWith: 'symbol',
69
+ },
70
+ },
71
+ },
72
+ ],
73
+ 'react-hooks/exhaustive-deps': 'error',
74
+ 'react-hooks/rules-of-hooks': 'error',
75
+ 'no-nested-ternary': 'error',
76
+ 'object-curly-spacing': ['error', 'always'],
77
+ 'array-bracket-spacing': ['error', 'never'],
78
+ 'comma-dangle': ['error', 'always-multiline'],
79
+ 'no-unreachable': 'error',
80
+ },
81
+ settings: {
82
+ 'import/resolver': {
83
+ typescript: {},
84
+ },
85
+ react: {
86
+ version: 'detect',
87
+ },
88
+ },
89
+ }
package/.prettierrc ADDED
@@ -0,0 +1,8 @@
1
+ {
2
+ "semi": false,
3
+ "tabWidth": 2,
4
+ "printWidth": 100,
5
+ "singleQuote": true,
6
+ "trailingComma": "all",
7
+ "bracketSpacing": true
8
+ }
@@ -15,6 +15,6 @@ const config: StorybookConfig = {
15
15
  },
16
16
  docs: {
17
17
  autodocs: 'tag',
18
- },
18
+ }
19
19
  };
20
20
  export default config;
@@ -2,6 +2,11 @@ import type { Preview } from '@storybook/react';
2
2
 
3
3
  const preview: Preview = {
4
4
  parameters: {
5
+ docs: {
6
+ source: {
7
+ type: 'code'
8
+ }
9
+ },
5
10
  actions: { argTypesRegex: '^on[A-Z].*' },
6
11
  controls: {
7
12
  matchers: {
package/index.html ADDED
@@ -0,0 +1,13 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Vite + React + TS</title>
8
+ </head>
9
+ <body>
10
+ <div id="root"></div>
11
+ <script type="module" src="/src/main.tsx"></script>
12
+ </body>
13
+ </html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "norma-library",
3
- "version": "0.6.77",
3
+ "version": "0.6.79",
4
4
  "private": false,
5
5
  "description": "Olos/Norma-DS. Design System based on Material UI, developed with TypeScript and Styled Components to create reusable and consistent components in web applications.",
6
6
  "scripts": {
@@ -33,6 +33,7 @@
33
33
  "@babel/preset-typescript": "^7.22.15",
34
34
  "@emotion/core": "^11.0.0",
35
35
  "@emotion/styled-base": "^11.0.0",
36
+ "@iconify/react": "^5.2.0",
36
37
  "@mdx-js/loader": "^2.3.0",
37
38
  "@storybook/addon-essentials": "^7.5.0",
38
39
  "@storybook/addon-interactions": "^7.5.0",
@@ -89,6 +90,9 @@
89
90
  ]
90
91
  },
91
92
  "dependencies": {
93
+ "@dnd-kit/core": "^6.3.1",
94
+ "@dnd-kit/modifiers": "^9.0.0",
95
+ "@dnd-kit/sortable": "^10.0.0",
92
96
  "@emotion/react": "^11.11.1",
93
97
  "@emotion/styled": "^11.11.0",
94
98
  "@mui/icons-material": "^5.14.9",
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="35.93" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 228"><path fill="#00D8FF" d="M210.483 73.824a171.49 171.49 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621c6.238-30.281 2.16-54.676-11.769-62.708c-13.355-7.7-35.196.329-57.254 19.526a171.23 171.23 0 0 0-6.375 5.848a155.866 155.866 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233C50.33 10.957 46.379 33.89 51.995 62.588a170.974 170.974 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a145.52 145.52 0 0 0 6.921 2.165a167.467 167.467 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266c13.744 7.926 36.812-.22 59.273-19.855a145.567 145.567 0 0 0 5.342-4.923a168.064 168.064 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586c13.731-7.949 18.194-32.003 12.4-61.268a145.016 145.016 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488c29.348-9.723 48.443-25.443 48.443-41.52c0-15.417-17.868-30.326-45.517-39.844Zm-6.365 70.984c-1.4.463-2.836.91-4.3 1.345c-3.24-10.257-7.612-21.163-12.963-32.432c5.106-11 9.31-21.767 12.459-31.957c2.619.758 5.16 1.557 7.61 2.4c23.69 8.156 38.14 20.213 38.14 29.504c0 9.896-15.606 22.743-40.946 31.14Zm-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787c-1.524 8.219-4.59 13.698-8.382 15.893c-8.067 4.67-25.32-1.4-43.927-17.412a156.726 156.726 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246c12.376-1.098 24.068-2.894 34.671-5.345a134.17 134.17 0 0 1 1.386 6.193ZM87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675c-8.075-4.657-11.432-22.636-6.853-46.752a156.923 156.923 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994c7.084 9.967 14.501 19.128 21.976 27.15a134.668 134.668 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94ZM50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863c-6.35-5.437-9.555-10.836-9.555-15.216c0-9.322 13.897-21.212 37.076-29.293c2.813-.98 5.757-1.905 8.812-2.773c3.204 10.42 7.406 21.315 12.477 32.332c-5.137 11.18-9.399 22.249-12.634 32.792a134.718 134.718 0 0 1-6.318-1.979Zm12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789c8.564-4.958 27.502 2.111 47.463 19.835a144.318 144.318 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988c-12.04 1.116-23.565 2.908-34.161 5.309a160.342 160.342 0 0 1-1.76-7.887Zm110.427 27.268a347.8 347.8 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08c-2.206 7.072-4.956 14.465-8.193 22.045a381.151 381.151 0 0 0-7.365-13.322Zm-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322.04 322.04 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18ZM82.802 87.83a323.167 323.167 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152c7.304-1.634 15.093-2.97 23.209-3.984a321.524 321.524 0 0 0-7.848 12.897Zm8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793c2.26-7.3 5.045-14.885 8.298-22.6a321.187 321.187 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147Zm37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433c4.902.192 9.899.29 14.978.29c5.218 0 10.376-.117 15.453-.343c-4.985 6.774-10.018 12.97-15.028 18.486Zm52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52c-7.422 1.694-15.436 3.058-23.88 4.071a382.417 382.417 0 0 0 7.859-13.026a347.403 347.403 0 0 0 7.425-13.565Zm-16.898 8.101a358.557 358.557 0 0 1-12.281 19.815a329.4 329.4 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310.202 310.202 0 0 1-12.513-19.846h.001a307.41 307.41 0 0 1-10.923-20.627a310.278 310.278 0 0 1 10.89-20.637l-.001.001a307.318 307.318 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329.357 329.357 0 0 1 12.335 19.695a358.489 358.489 0 0 1 11.036 20.54a329.472 329.472 0 0 1-11 20.722Zm22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026c-.344 1.668-.73 3.367-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408c-7.034-10.017-14.323-19.124-21.64-27.008a160.789 160.789 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3ZM128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86s-22.86-10.235-22.86-22.86s10.235-22.86 22.86-22.86Z"></path></svg>
@@ -0,0 +1,20 @@
1
+ 'use client'
2
+ import { ButtonBaseProps } from './types'
3
+ import { Button as MuiButton } from '@mui/material'
4
+ import { useTranslation } from 'react-i18next'
5
+
6
+ export const Button = ({ label, ...rest }: ButtonBaseProps) => {
7
+ const { t } = useTranslation()
8
+ const newLabel = label ? label : t('buttonText')
9
+ return (
10
+ <MuiButton {...rest} sx={{ color: rest.variant === 'contained' ? '#FFFF' : rest.color }}>
11
+ {newLabel}
12
+ </MuiButton>
13
+ )
14
+ }
15
+
16
+ Button.defaultProps = {
17
+ variant: 'contained',
18
+ size: 'medium',
19
+ color: 'primary',
20
+ }
@@ -0,0 +1,31 @@
1
+ import { ReactNode } from 'react'
2
+ import { Theme } from '@emotion/react'
3
+ import { Button } from './index'
4
+
5
+ import {
6
+ ButtonPropsColorOverrides,
7
+ ButtonPropsSizeOverrides,
8
+ ButtonPropsVariantOverrides,
9
+ ButtonProps as MuiButtonProps,
10
+ SxProps,
11
+ } from '@mui/material'
12
+
13
+ import { OverridableStringUnion } from '@mui/types'
14
+
15
+ type MuiButtonBaseProps = Pick<MuiButtonProps, 'sx' | 'color' | 'size' | 'variant'>
16
+
17
+ export interface ButtonBaseProps extends MuiButtonBaseProps {
18
+ label: string
19
+ sx?: SxProps<Theme>
20
+ children?: ReactNode
21
+ onClick?: (event: React.MouseEvent | React.KeyboardEvent | React.TouchEvent) => void
22
+ color?: OverridableStringUnion<
23
+ 'inherit' | 'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning',
24
+ ButtonPropsColorOverrides
25
+ >
26
+ size?: OverridableStringUnion<'small' | 'medium' | 'large', ButtonPropsSizeOverrides>
27
+ variant?: OverridableStringUnion<'text' | 'outlined' | 'contained', ButtonPropsVariantOverrides>
28
+ style?: React.CSSProperties
29
+ }
30
+
31
+ export type ButtonType = keyof typeof Button
@@ -0,0 +1,14 @@
1
+ import CardHeader from './CardHeader'
2
+ import { CardBaseProps } from './types'
3
+ import { StyledCard } from './styles'
4
+
5
+ const Card = ({ children, title }: CardBaseProps) => {
6
+ return (
7
+ <StyledCard>
8
+ {title && <CardHeader title={title} />}
9
+ {children}
10
+ </StyledCard>
11
+ )
12
+ }
13
+
14
+ export default Card
@@ -0,0 +1,8 @@
1
+ import { CardHeaderBaseProps } from './types'
2
+ import { StyledCardHeader } from './styles'
3
+
4
+ const CardHeader = ({ title }: CardHeaderBaseProps) => {
5
+ return <StyledCardHeader>{title}</StyledCardHeader>
6
+ }
7
+
8
+ export default CardHeader
@@ -0,0 +1,5 @@
1
+ export * from './Card'
2
+ export * from './CardHeader'
3
+
4
+ export { default as Card } from './Card'
5
+ export { default as CardHeader } from './CardHeader'
@@ -0,0 +1,16 @@
1
+ import styled from 'styled-components'
2
+
3
+ export const StyledCard = styled.div`
4
+ padding: 16px;
5
+ border-radius: 4px;
6
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
7
+ `
8
+ export const StyledCardHeader = styled.div`
9
+ display: flex;
10
+ justify-content: space-between;
11
+ align-items: center;
12
+ margin-bottom: 16px;
13
+ font-weight: bold;
14
+ border-bottom: 1px solid #ccc;
15
+ padding-bottom: 8px;
16
+ `
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from 'react'
2
+
3
+ export type CardBaseProps = {
4
+ children: ReactNode
5
+ title?: string
6
+ }
7
+
8
+ export type CardHeaderBaseProps = {
9
+ title: string
10
+ }
@@ -0,0 +1,23 @@
1
+ import { Icon } from '@iconify/react';
2
+ import React from 'react';
3
+
4
+ interface IconProps {
5
+ iconName: string;
6
+ size?: string;
7
+ color?: string;
8
+ }
9
+
10
+ export const IconifyIcon: React.FC<IconProps> = ({
11
+ iconName,
12
+ color,
13
+ size
14
+ }) => {
15
+ return (
16
+ <Icon
17
+ icon={iconName}
18
+ color={color}
19
+ width={size}
20
+ strokeWidth={2.5}
21
+ />
22
+ )
23
+ }
@@ -7,7 +7,7 @@ import { Button } from './Button';
7
7
 
8
8
  const ModalStyled = styled(MuiModal)({});
9
9
 
10
- const ModalContentStyled = styled(Paper)<{ $w?: string }>`
10
+ const ModalContentStyled = styled(Paper) <{ $w?: string }>`
11
11
  border: 1px solid #00000033;
12
12
  border-radius: 4px;
13
13
  position: absolute;
@@ -16,6 +16,7 @@ const ModalContentStyled = styled(Paper)<{ $w?: string }>`
16
16
  width: ${props => props.$w || '421px'};
17
17
  transform: translate(-50%, -50%);
18
18
  background-color: #fff;
19
+ outline: none;
19
20
  `;
20
21
 
21
22
  const ModalHeaderStyled = styled(Box)`
@@ -35,7 +36,7 @@ const ModalHeaderStyled = styled(Box)`
35
36
  }
36
37
  `;
37
38
 
38
- const ModalFooterStyled = styled(Box)<{ $spaceBetween?: boolean }>`
39
+ const ModalFooterStyled = styled(Box) <{ $spaceBetween?: boolean }>`
39
40
  box-sizing: border-box;
40
41
  position: relative;
41
42
  padding: 24px;
@@ -69,8 +70,14 @@ export function Close() {
69
70
  }
70
71
 
71
72
  export const Modal = ({ open, children, paperProps, ...props }: ModalBaseProps) => {
73
+
74
+ const handleClose = (event: {}, reason: "backdropClick" | "escapeKeyDown") => {
75
+ (reason === "escapeKeyDown" || !props.shouldNotCloseOnOutsideClick) && props.onClose?.(event as React.SyntheticEvent);
76
+ };
77
+
78
+
72
79
  return (
73
- <ModalStyled open {...props}>
80
+ <ModalStyled open {...props} onClose={handleClose}>
74
81
  <ModalContentStyled {...paperProps} $w={props.width}>
75
82
  <IconButton
76
83
  onClick={props.onClose}
@@ -78,7 +85,7 @@ export const Modal = ({ open, children, paperProps, ...props }: ModalBaseProps)
78
85
  color="inherit"
79
86
  variant="text"
80
87
  cursor="pointer"
81
- sx={{ padding: '0', position: 'absolute', right: '22px', top: '22px' }}
88
+ sx={{ padding: '0', position: 'absolute', right: '22px', top: '22px', zIndex: 2}}
82
89
  className='Modal__Close'
83
90
  >
84
91
  <Close />
@@ -0,0 +1,56 @@
1
+ import styled from "@emotion/styled";
2
+ import { pxToRem } from "../../utils/pxToRem";
3
+
4
+ export const ProductCardStyle = styled.div<{ disabled?: boolean, $bColor?: string, hasBorder?: boolean }>`
5
+ max-width: 380px;
6
+ cursor: ${(props) => (props.disabled ? "not-allowed" : "pointer")};
7
+ opacity: ${(props) => (props.disabled ? 0.5 : 1)};
8
+ height: 100%;
9
+ border-left: 7px solid ${(props) => props.hasBorder ? props.$bColor : 'transparent'} !important;
10
+ border-radius: 5px;
11
+
12
+
13
+ p.description {
14
+ margin-bottom: ${pxToRem(17)};
15
+ line-height: ${pxToRem(24)};
16
+ }
17
+
18
+ .MuiPaper-root {
19
+ min-height: 180px;
20
+ }
21
+
22
+ @media (max-width: 1535px) {
23
+ max-width: 100%;
24
+ }
25
+ `;
26
+
27
+ export const IconCardStyle = styled.div<{ $bColor?: string; $iColor: string }>`
28
+ display: inline-flex;
29
+ border-radius: 5px;
30
+ align-items: center;
31
+ justify-content: center;
32
+ padding: 10px;
33
+ background-color: ${(props) => props.$bColor};
34
+ min-width: ${pxToRem(50)};
35
+ min-height: ${pxToRem(50)};
36
+ margin-right: ${pxToRem(10)};
37
+ box-sizing: border-box;
38
+
39
+ svg {
40
+ max-height: 24px;
41
+
42
+ path {
43
+ fill: ${(props) => props.$iColor};
44
+ }
45
+ }
46
+ `;
47
+
48
+ export const TitleContainer = styled.div`
49
+ display: flex;
50
+ align-items: center;
51
+ margin-bottom: ${pxToRem(16)};
52
+
53
+ p {
54
+ font-size: ${pxToRem(24)};
55
+ }
56
+ `;
@@ -0,0 +1,71 @@
1
+ import { Grid } from "@mui/material";
2
+ import { ProductCardProps } from "../../interfaces/ProductCard";
3
+ import { Card } from "../Card";
4
+ import { IconCardStyle, ProductCardStyle, TitleContainer } from "./ProductCard.style";
5
+ import React from "react";
6
+ import { IconButton } from "../IconButton";
7
+ import GradeIcon from '@mui/icons-material/Grade'
8
+ import { IconifyIcon } from "../IconifyIcon";
9
+
10
+
11
+ export const ProductCard: React.FC<ProductCardProps> = ({
12
+ // product = 'analytics'
13
+ color,
14
+ iconColor,
15
+ onClick,
16
+ hasBorder = true,
17
+ disabled = false,
18
+ title,
19
+ description,
20
+ iconName,
21
+ flaggable = false
22
+ }) => {
23
+
24
+ /* const colors: { [key: string]: string } = {
25
+ primaryDark: '#B74608',
26
+ primaryLight: '#FCF1E3',
27
+ secondaryDark: '#6788B8',
28
+ secondaryLight: '#EEF7FB'
29
+ }
30
+ */
31
+ return (
32
+ <ProductCardStyle disabled={disabled} $bColor={iconColor} hasBorder={hasBorder}>
33
+ <Card
34
+ variant="outlined"
35
+ onClick={() => onClick && onClick()}
36
+ >
37
+ {flaggable && (
38
+ <Grid container justifyContent={'flex-end'} alignItems={'flex-start'}>
39
+ <Grid item>
40
+ <IconButton
41
+ sx={{ padding: 0 }}
42
+ aria-label="favorite"
43
+ onClick={(event) => {
44
+ event.preventDefault()
45
+ event.stopPropagation()
46
+ }}
47
+ cursor="pointer"
48
+ >
49
+ <GradeIcon />
50
+ </IconButton>
51
+ </Grid>
52
+ </Grid>
53
+ )}
54
+
55
+ <TitleContainer>
56
+ <IconCardStyle
57
+ $iColor={iconColor}
58
+ $bColor={color}
59
+ >
60
+ <IconifyIcon iconName={iconName} color={iconColor} size="100%" />
61
+ </IconCardStyle>
62
+ <p>{title}</p>
63
+ </TitleContainer>
64
+
65
+ <p className="description">
66
+ {description}
67
+ </p>
68
+ </Card>
69
+ </ProductCardStyle>
70
+ )
71
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Slider as MuiSlider } from '@mui/material';
2
+ import { Box, Slider as MuiSlider, Typography } from '@mui/material';
3
3
  import { palette } from '../helpers';
4
4
  import { styled } from '@mui/material/styles';
5
5
  import { ColorVariant } from '@/types';
@@ -60,6 +60,62 @@ const RangerSliderStyled = styled(MuiSlider)(() => ({
60
60
  },
61
61
  }));
62
62
 
63
- export const RangerSlider = ({ defaultValue = 50, color = 'primary', ...props }: RangerSliderBaseProps) => {
64
- return <RangerSliderStyled color={color} {...props} />;
63
+ export const RangerSlider = ({
64
+ value,
65
+ defaultValue,
66
+ color = 'primary',
67
+ showValueInline = false,
68
+ min = 0,
69
+ max = 100,
70
+ valueLabelFormat,
71
+ ...props
72
+ }: RangerSliderBaseProps) => {
73
+ const [currentValue, setCurrentValue] = React.useState<number | number[]>(
74
+ value ?? defaultValue ?? (Array.isArray(defaultValue) ? [min, max] : min),
75
+ );
76
+
77
+ const handleChange = (event: Event, newValue: number | number[]) => {
78
+ setCurrentValue(newValue);
79
+ props.onChange?.(event, newValue, Array.isArray(newValue) ? 1 : 0);
80
+ };
81
+
82
+ React.useEffect(() => {
83
+ value !== undefined && setCurrentValue(value);
84
+ }, [value]);
85
+
86
+ const formatValue = (val: number | number[]) =>
87
+ Array.isArray(val)
88
+ ? val[0] === val[1]
89
+ ? valueLabelFormat && typeof valueLabelFormat === 'function'
90
+ ? valueLabelFormat(val[0], 0)
91
+ : val[0]
92
+ : `${valueLabelFormat && typeof valueLabelFormat === 'function' ? valueLabelFormat(val[0], 0) : val[0]} - ${
93
+ valueLabelFormat && typeof valueLabelFormat === 'function' ? valueLabelFormat(val[1], 1) : val[1]
94
+ }`
95
+ : valueLabelFormat && typeof valueLabelFormat === 'function'
96
+ ? valueLabelFormat(val, 0)
97
+ : val;
98
+
99
+ return (
100
+ <Box sx={{ width: '100%' }}>
101
+ <div style={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>
102
+ <Typography gutterBottom>{props.label}</Typography>
103
+ {showValueInline && (
104
+ <Typography style={{ display: 'flex', alignItems: 'center', fontSize: 12 }}>
105
+ {formatValue(currentValue)}
106
+ </Typography>
107
+ )}
108
+ </div>
109
+ <RangerSliderStyled
110
+ value={currentValue}
111
+ defaultValue={undefined}
112
+ min={min}
113
+ max={max}
114
+ color={color}
115
+ onChange={handleChange}
116
+ valueLabelFormat={valueLabelFormat}
117
+ {...props}
118
+ />
119
+ </Box>
120
+ );
65
121
  };
@@ -0,0 +1,53 @@
1
+ import styled from "@emotion/styled";
2
+ import { pxToRem } from "../../utils/pxToRem";
3
+
4
+ export const ServiceCardStyle = styled.div<{ disabled?: boolean, $bColor?: string }>`
5
+ max-width: 380px;
6
+ min-width: 380px;
7
+ width: 100%;
8
+ cursor: ${(props) => (props.disabled ? "not-allowed" : "pointer")};
9
+ opacity: ${(props) => (props.disabled ? 0.5 : 1)};
10
+ height: 100%;
11
+ border-left: 7px solid ${(props) => props.$bColor};
12
+ border-radius: 5px;
13
+
14
+ p.description, p.title {
15
+ margin: 0 auto;
16
+ }
17
+ @media (max-width: 1330px) {
18
+ max-width: 100%;
19
+ }
20
+ `;
21
+ export const IconCardStyle = styled.div<{ $bColor?: string; $iColor: string }>`
22
+ display: inline-flex;
23
+ border-radius: 5px;
24
+ align-items: center;
25
+ justify-content: center;
26
+ padding: 10px;
27
+ background-color: ${(props) => props.$bColor};
28
+ min-width: ${pxToRem(50)};
29
+ min-height: ${pxToRem(50)};
30
+ margin-right: ${pxToRem(10)};
31
+ box-sizing: border-box;
32
+
33
+ svg {
34
+ max-height: 24px;
35
+
36
+ path.stroke {
37
+ stroke: ${(props) => props.$iColor};
38
+ }
39
+
40
+ path.fill {
41
+ fill: ${(props) => props.$iColor};
42
+ }
43
+ }
44
+ `;
45
+ export const TitleContainer = styled.div`
46
+ display: flex;
47
+ align-items: center;
48
+
49
+ p.title {
50
+ font-size: ${pxToRem(18)};
51
+ font-weight: 600;
52
+ }
53
+ `;
@@ -0,0 +1,30 @@
1
+ import React from "react";
2
+ import { ServiceCardProps } from "../../interfaces/ServiceCard";
3
+ import { IconCardStyle, ServiceCardStyle, TitleContainer } from "./ServiceCard.style";
4
+ import { Card } from "../Card";
5
+ import { IconifyIcon } from "../IconifyIcon";
6
+
7
+ export const ServiceCard: React.FC<ServiceCardProps> = ({iconName, onClick, disabled = false, color, iconColor, description, title }) => {
8
+ return (
9
+ <ServiceCardStyle disabled={disabled} $bColor={iconColor}>
10
+ <Card
11
+ border={true}
12
+ variant="outlined"
13
+ onClick={() => {
14
+ if (disabled) return;
15
+ onClick && onClick();
16
+ }}
17
+ >
18
+ <TitleContainer>
19
+ <IconCardStyle $iColor={iconColor || ""} $bColor={color || ""}>
20
+ <IconifyIcon iconName={iconName || ""} color={iconColor} size="100%"/>
21
+ </IconCardStyle>
22
+ <div className="text">
23
+ <p className="title">{title}</p>
24
+ <p className="description">{description}</p>
25
+ </div>
26
+ </TitleContainer>
27
+ </Card>
28
+ </ServiceCardStyle>
29
+ );
30
+ };
@@ -1,9 +1,13 @@
1
1
  import Pagination from "./pagination";
2
2
  import Header from "./header"
3
- import TBody from "./tbody";
3
+ import SimpleRow from "./row/SimpleRow";
4
+ import DraggableRow from "./row/DraggableRow";
5
+ import RowDragHandleCell from "./row/RowDragHandleCell";
4
6
 
5
7
  export {
6
8
  Pagination,
7
9
  Header,
8
- TBody
10
+ SimpleRow,
11
+ DraggableRow,
12
+ RowDragHandleCell
9
13
  }