@zydon/common 2.2.42 → 2.2.44

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 (367) hide show
  1. package/dist/components/ActionButton/index.js +36 -3
  2. package/dist/components/ActionButton/index.js.map +1 -0
  3. package/dist/components/Autocomplete/index.js +142 -3
  4. package/dist/components/Autocomplete/index.js.map +1 -0
  5. package/dist/components/AutocompleteDetailed/index.js +139 -3
  6. package/dist/components/AutocompleteDetailed/index.js.map +1 -0
  7. package/dist/components/BuilderLayout/index.js +24 -9
  8. package/dist/components/BuilderLayout/index.js.map +1 -0
  9. package/dist/components/BuilderSidebar/index.js +18 -7
  10. package/dist/components/BuilderSidebar/index.js.map +1 -0
  11. package/dist/components/ColorPickerInput/index.js +102 -2
  12. package/dist/components/ColorPickerInput/index.js.map +1 -0
  13. package/dist/components/ColoredLabel/index.js +42 -4
  14. package/dist/components/ColoredLabel/index.js.map +1 -0
  15. package/dist/components/Common/index.js +29 -19
  16. package/dist/components/Common/index.js.map +1 -0
  17. package/dist/components/Confirm/index.js +49 -8
  18. package/dist/components/Confirm/index.js.map +1 -0
  19. package/dist/components/CustomAvatar/index.js +63 -1
  20. package/dist/components/CustomAvatar/index.js.map +1 -0
  21. package/dist/components/CustomAvatarGroup/index.js +74 -4
  22. package/dist/components/CustomAvatarGroup/index.js.map +1 -0
  23. package/dist/components/DashedDivider/index.js +11 -1
  24. package/dist/components/DashedDivider/index.js.map +1 -0
  25. package/dist/components/DataCards/index.js +58 -18
  26. package/dist/components/DataCards/index.js.map +1 -0
  27. package/dist/components/DataGrid/index.js +76 -12
  28. package/dist/components/DataGrid/index.js.map +1 -0
  29. package/dist/components/DatePicker/index.js +40 -4
  30. package/dist/components/DatePicker/index.js.map +1 -0
  31. package/dist/components/DateRangePicker/index.js +48 -4
  32. package/dist/components/DateRangePicker/index.js.map +1 -0
  33. package/dist/components/DateTimePicker/index.js +38 -4
  34. package/dist/components/DateTimePicker/index.js.map +1 -0
  35. package/dist/components/Delayed/index.js +15 -2
  36. package/dist/components/Delayed/index.js.map +1 -0
  37. package/dist/components/Drawer/index.js +37 -9
  38. package/dist/components/Drawer/index.js.map +1 -0
  39. package/dist/components/EmptyContent/index.js +81 -3
  40. package/dist/components/EmptyContent/index.js.map +1 -0
  41. package/dist/components/EmptyView/index.js +35 -2
  42. package/dist/components/EmptyView/index.js.map +1 -0
  43. package/dist/components/Error/index.js +44 -7
  44. package/dist/components/Error/index.js.map +1 -0
  45. package/dist/components/ExpandableGroup/index.js +31 -10
  46. package/dist/components/ExpandableGroup/index.js.map +1 -0
  47. package/dist/components/FixedProgressBar/index.js +23 -1
  48. package/dist/components/FixedProgressBar/index.js.map +1 -0
  49. package/dist/components/FrameSkeleton/index.js +96 -13
  50. package/dist/components/FrameSkeleton/index.js.map +1 -0
  51. package/dist/components/HelpButton/index.js +23 -3
  52. package/dist/components/HelpButton/index.js.map +1 -0
  53. package/dist/components/Icon/index.js +404 -2
  54. package/dist/components/Icon/index.js.map +1 -0
  55. package/dist/components/ImageCrop/index.js +52 -1
  56. package/dist/components/ImageCrop/index.js.map +1 -0
  57. package/dist/components/ImageCropModal/index.js +131 -5
  58. package/dist/components/ImageCropModal/index.js.map +1 -0
  59. package/dist/components/Incrementer/index.js +158 -5
  60. package/dist/components/Incrementer/index.js.map +1 -0
  61. package/dist/components/Label/index.js +72 -6
  62. package/dist/components/Label/index.js.map +1 -0
  63. package/dist/components/LoadingScreen/index.js +9 -5
  64. package/dist/components/LoadingScreen/index.js.map +1 -0
  65. package/dist/components/MaskedInput/index.js +56 -1
  66. package/dist/components/MaskedInput/index.js.map +1 -0
  67. package/dist/components/MenuItem/index.js +22 -8
  68. package/dist/components/MenuItem/index.js.map +1 -0
  69. package/dist/components/MenuPopover/index.js +49 -1
  70. package/dist/components/MenuPopover/index.js.map +1 -0
  71. package/dist/components/Modal/index.js +34 -3
  72. package/dist/components/Modal/index.js.map +1 -0
  73. package/dist/components/ModalActions/index.js +9 -3
  74. package/dist/components/ModalActions/index.js.map +1 -0
  75. package/dist/components/MoreMenu/index.js +16 -8
  76. package/dist/components/MoreMenu/index.js.map +1 -0
  77. package/dist/components/NumberInput/index.js +108 -1
  78. package/dist/components/NumberInput/index.js.map +1 -0
  79. package/dist/components/PasswordRules/index.js +76 -8
  80. package/dist/components/PasswordRules/index.js.map +1 -0
  81. package/dist/components/PopoverSelect/index.js +44 -10
  82. package/dist/components/PopoverSelect/index.js.map +1 -0
  83. package/dist/components/Portal/index.js +29 -1
  84. package/dist/components/Portal/index.js.map +1 -0
  85. package/dist/components/Result/index.js +29 -1
  86. package/dist/components/Result/index.js.map +1 -0
  87. package/dist/components/SavedChanges/index.js +40 -4
  88. package/dist/components/SavedChanges/index.js.map +1 -0
  89. package/dist/components/Scrollbar/index.js +46 -1
  90. package/dist/components/Scrollbar/index.js.map +1 -0
  91. package/dist/components/SearchInput/index.js +74 -3
  92. package/dist/components/SearchInput/index.js.map +1 -0
  93. package/dist/components/SelectableCards/index.js +145 -8
  94. package/dist/components/SelectableCards/index.js.map +1 -0
  95. package/dist/components/SeoPreview/index.js +158 -10
  96. package/dist/components/SeoPreview/index.js.map +1 -0
  97. package/dist/components/SplashScreen/index.js +105 -5
  98. package/dist/components/SplashScreen/index.js.map +1 -0
  99. package/dist/components/Steps/index.js +69 -11
  100. package/dist/components/Steps/index.js.map +1 -0
  101. package/dist/components/StyledTab/index.js +88 -7
  102. package/dist/components/StyledTab/index.js.map +1 -0
  103. package/dist/components/StyledTabs/index.js +25 -4
  104. package/dist/components/StyledTabs/index.js.map +1 -0
  105. package/dist/components/Summary/index.js +13 -5
  106. package/dist/components/Summary/index.js.map +1 -0
  107. package/dist/components/SwapList/index.js +246 -18
  108. package/dist/components/SwapList/index.js.map +1 -0
  109. package/dist/components/TabPanel/index.js +32 -3
  110. package/dist/components/TabPanel/index.js.map +1 -0
  111. package/dist/components/TextMaxLine/index.js +50 -2
  112. package/dist/components/TextMaxLine/index.js.map +1 -0
  113. package/dist/components/TimePicker/index.js +40 -4
  114. package/dist/components/TimePicker/index.js.map +1 -0
  115. package/dist/components/ToggleButtonGroup/index.js +8 -4
  116. package/dist/components/ToggleButtonGroup/index.js.map +1 -0
  117. package/dist/components/Tooltip/index.js +6 -3
  118. package/dist/components/Tooltip/index.js.map +1 -0
  119. package/dist/components/WhiteBox/index.js +9 -1
  120. package/dist/components/WhiteBox/index.js.map +1 -0
  121. package/dist/components/animate/index.js +6 -2
  122. package/dist/components/animate/index.js.map +1 -0
  123. package/dist/components/carousel/index.js +11 -16
  124. package/dist/components/carousel/index.js.map +1 -0
  125. package/dist/components/form/Address/index.js +197 -12
  126. package/dist/components/form/Address/index.js.map +1 -0
  127. package/dist/components/form/Autocomplete/index.js +43 -4
  128. package/dist/components/form/Autocomplete/index.js.map +1 -0
  129. package/dist/components/form/AutocompleteDetailed/index.js +40 -6
  130. package/dist/components/form/AutocompleteDetailed/index.js.map +1 -0
  131. package/dist/components/form/Checkbox/index.js +49 -6
  132. package/dist/components/form/Checkbox/index.js.map +1 -0
  133. package/dist/components/form/Codes/index.js +84 -7
  134. package/dist/components/form/Codes/index.js.map +1 -0
  135. package/dist/components/form/ColorPicker/index.js +50 -5
  136. package/dist/components/form/ColorPicker/index.js.map +1 -0
  137. package/dist/components/form/DatePicker/index.js +61 -5
  138. package/dist/components/form/DatePicker/index.js.map +1 -0
  139. package/dist/components/form/DateRangePicker/index.js +75 -7
  140. package/dist/components/form/DateRangePicker/index.js.map +1 -0
  141. package/dist/components/form/DateTimePicker/index.js +59 -5
  142. package/dist/components/form/DateTimePicker/index.js.map +1 -0
  143. package/dist/components/form/Field/index.js +50 -1
  144. package/dist/components/form/Field/index.js.map +1 -0
  145. package/dist/components/form/Form/index.js +27 -4
  146. package/dist/components/form/Form/index.js.map +1 -0
  147. package/dist/components/form/Incrementer/index.js +36 -8
  148. package/dist/components/form/Incrementer/index.js.map +1 -0
  149. package/dist/components/form/InputTags/index.js +67 -6
  150. package/dist/components/form/InputTags/index.js.map +1 -0
  151. package/dist/components/form/MaskedInput/index.js +46 -2
  152. package/dist/components/form/MaskedInput/index.js.map +1 -0
  153. package/dist/components/form/MultiCheckbox/index.js +91 -9
  154. package/dist/components/form/MultiCheckbox/index.js.map +1 -0
  155. package/dist/components/form/MultiChipField/index.js +47 -5
  156. package/dist/components/form/MultiChipField/index.js.map +1 -0
  157. package/dist/components/form/NumberInput/index.js +41 -4
  158. package/dist/components/form/NumberInput/index.js.map +1 -0
  159. package/dist/components/form/Password/index.js +88 -9
  160. package/dist/components/form/Password/index.js.map +1 -0
  161. package/dist/components/form/RadioGroup/index.js +124 -9
  162. package/dist/components/form/RadioGroup/index.js.map +1 -0
  163. package/dist/components/form/SelectableCards/index.js +20 -11
  164. package/dist/components/form/SelectableCards/index.js.map +1 -0
  165. package/dist/components/form/Switch/index.js +66 -6
  166. package/dist/components/form/Switch/index.js.map +1 -0
  167. package/dist/components/form/TimePicker/index.js +62 -5
  168. package/dist/components/form/TimePicker/index.js.map +1 -0
  169. package/dist/components/form/UploadAvatarWithCrop/index.js +57 -17
  170. package/dist/components/form/UploadAvatarWithCrop/index.js.map +1 -0
  171. package/dist/components/form/UploadWithCrop/index.js +57 -20
  172. package/dist/components/form/UploadWithCrop/index.js.map +1 -0
  173. package/dist/components/form/Webhook/index.js +144 -16
  174. package/dist/components/form/Webhook/index.js.map +1 -0
  175. package/dist/components/lightbox/index.js +4 -16
  176. package/dist/components/lightbox/index.js.map +1 -0
  177. package/dist/components/table/index.js +11 -21
  178. package/dist/components/table/index.js.map +1 -0
  179. package/dist/components/upload/index.js +10 -23
  180. package/dist/components/upload/index.js.map +1 -0
  181. package/dist/hooks/useActiveElement.js +25 -2
  182. package/dist/hooks/useActiveElement.js.map +1 -0
  183. package/dist/hooks/useApiMessage.js +31 -2
  184. package/dist/hooks/useApiMessage.js.map +1 -0
  185. package/dist/hooks/useAutocomplete.js +58 -2
  186. package/dist/hooks/useAutocomplete.js.map +1 -0
  187. package/dist/hooks/useCopyToClipboard.js +20 -2
  188. package/dist/hooks/useCopyToClipboard.js.map +1 -0
  189. package/dist/hooks/useDatagrid.js +41 -2
  190. package/dist/hooks/useDatagrid.js.map +1 -0
  191. package/dist/hooks/useDebounceValue.js +16 -2
  192. package/dist/hooks/useDebounceValue.js.map +1 -0
  193. package/dist/hooks/useDeepCompareEffect.js +14 -3
  194. package/dist/hooks/useDeepCompareEffect.js.map +1 -0
  195. package/dist/hooks/useEventCallback.js +17 -2
  196. package/dist/hooks/useEventCallback.js.map +1 -0
  197. package/dist/hooks/useEventListener.js +25 -1
  198. package/dist/hooks/useEventListener.js.map +1 -0
  199. package/dist/hooks/useIsMounting.js +11 -2
  200. package/dist/hooks/useIsMounting.js.map +1 -0
  201. package/dist/hooks/useIsomorphicLayoutEffect.js +7 -1
  202. package/dist/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  203. package/dist/hooks/useLocalStorage.js +86 -5
  204. package/dist/hooks/useLocalStorage.js.map +1 -0
  205. package/dist/hooks/useMount.js +7 -2
  206. package/dist/hooks/useMount.js.map +1 -0
  207. package/dist/hooks/useOnClickOutside.js +14 -3
  208. package/dist/hooks/useOnClickOutside.js.map +1 -0
  209. package/dist/hooks/usePagination.js +38 -2
  210. package/dist/hooks/usePagination.js.map +1 -0
  211. package/dist/hooks/usePopover.js +22 -1
  212. package/dist/hooks/usePopover.js.map +1 -0
  213. package/dist/hooks/useResponsive.js +35 -1
  214. package/dist/hooks/useResponsive.js.map +1 -0
  215. package/dist/hooks/useScrollOffSetTop.js +29 -2
  216. package/dist/hooks/useScrollOffSetTop.js.map +1 -0
  217. package/dist/hooks/useSnackbar.js +14 -1
  218. package/dist/hooks/useSnackbar.js.map +1 -0
  219. package/dist/hooks/useTabs.js +14 -2
  220. package/dist/hooks/useTabs.js.map +1 -0
  221. package/dist/hooks/useToggle.js +12 -1
  222. package/dist/hooks/useToggle.js.map +1 -0
  223. package/dist/hooks/useUpload.js +58 -1
  224. package/dist/hooks/useUpload.js.map +1 -0
  225. package/dist/hooks/useUploadImage.js +80 -2
  226. package/dist/hooks/useUploadImage.js.map +1 -0
  227. package/dist/index.js +6 -2
  228. package/dist/index.js.map +1 -0
  229. package/dist/locales/all-langs.js +34 -1
  230. package/dist/locales/all-langs.js.map +1 -0
  231. package/dist/theme/core/index.js +7 -3
  232. package/dist/theme/core/index.js.map +1 -0
  233. package/dist/theme/styles/index.js +4 -1
  234. package/dist/theme/styles/index.js.map +1 -0
  235. package/dist/theme/theme-provider.js +46 -7
  236. package/dist/theme/theme-provider.js.map +1 -0
  237. package/dist/theme/with-settings/index.js +3 -4
  238. package/dist/theme/with-settings/index.js.map +1 -0
  239. package/dist/types/addressProps.js +2 -0
  240. package/dist/types/addressProps.js.map +1 -0
  241. package/dist/types/api.js +2 -0
  242. package/dist/types/api.js.map +1 -0
  243. package/dist/types/autoComplete.js +2 -0
  244. package/dist/types/autoComplete.js.map +1 -0
  245. package/dist/types/autoCompleteProps.js +2 -0
  246. package/dist/types/autoCompleteProps.js.map +1 -0
  247. package/dist/types/baseField.js +2 -0
  248. package/dist/types/baseField.js.map +1 -0
  249. package/dist/types/dataGridProps.js +2 -0
  250. package/dist/types/dataGridProps.js.map +1 -0
  251. package/dist/types/datagrid.js +2 -0
  252. package/dist/types/datagrid.js.map +1 -0
  253. package/dist/types/datePickerProps.js +2 -0
  254. package/dist/types/datePickerProps.js.map +1 -0
  255. package/dist/types/dateRangePickerProps.js +2 -0
  256. package/dist/types/dateRangePickerProps.js.map +1 -0
  257. package/dist/types/dateTimePickerProps.js +2 -0
  258. package/dist/types/dateTimePickerProps.js.map +1 -0
  259. package/dist/types/fieldProps.js +2 -0
  260. package/dist/types/fieldProps.js.map +1 -0
  261. package/dist/types/icon.js +331 -1
  262. package/dist/types/icon.js.map +1 -0
  263. package/dist/types/iconProps.js +2 -0
  264. package/dist/types/iconProps.js.map +1 -0
  265. package/dist/types/incrementerProps.js +2 -0
  266. package/dist/types/incrementerProps.js.map +1 -0
  267. package/dist/types/item.js +2 -0
  268. package/dist/types/item.js.map +1 -0
  269. package/dist/types/multiCheckboxProps.js +2 -0
  270. package/dist/types/multiCheckboxProps.js.map +1 -0
  271. package/dist/types/numberInputProps.js +2 -0
  272. package/dist/types/numberInputProps.js.map +1 -0
  273. package/dist/types/option.js +2 -0
  274. package/dist/types/option.js.map +1 -0
  275. package/dist/types/radioGroupProps.js +2 -0
  276. package/dist/types/radioGroupProps.js.map +1 -0
  277. package/dist/types/searchInputProps.js +2 -0
  278. package/dist/types/searchInputProps.js.map +1 -0
  279. package/dist/types/sectionProps.js +2 -0
  280. package/dist/types/sectionProps.js.map +1 -0
  281. package/dist/types/switchProps.js +2 -0
  282. package/dist/types/switchProps.js.map +1 -0
  283. package/dist/types/timePickerProps.js +2 -0
  284. package/dist/types/timePickerProps.js.map +1 -0
  285. package/dist/types/upload.js +2 -0
  286. package/dist/types/upload.js.map +1 -0
  287. package/dist/types/webhook.js +35 -2
  288. package/dist/types/webhook.js.map +1 -0
  289. package/dist/utils/color.js +7 -1
  290. package/dist/utils/color.js.map +1 -0
  291. package/dist/utils/compare.js +7 -1
  292. package/dist/utils/compare.js.map +1 -0
  293. package/dist/utils/date.js +20 -4
  294. package/dist/utils/date.js.map +1 -0
  295. package/dist/utils/formatNumber.js +87 -1
  296. package/dist/utils/formatNumber.js.map +1 -0
  297. package/dist/utils/formatTime.js +157 -1
  298. package/dist/utils/formatTime.js.map +1 -0
  299. package/dist/utils/loadable.js +12 -4
  300. package/dist/utils/loadable.js.map +1 -0
  301. package/dist/utils/mask.js +38 -2
  302. package/dist/utils/mask.js.map +1 -0
  303. package/dist/utils/number.js +13 -1
  304. package/dist/utils/number.js.map +1 -0
  305. package/dist/utils/sort.js +22 -2
  306. package/dist/utils/sort.js.map +1 -0
  307. package/dist/utils/uuidv4.js +9 -2
  308. package/dist/utils/uuidv4.js.map +1 -0
  309. package/dist/utils/validators.js +83 -1
  310. package/dist/utils/validators.js.map +1 -0
  311. package/package.json +2 -1
  312. package/dist/chunk-2MVQI7NJ.js +0 -8
  313. package/dist/chunk-2MW433JI.js +0 -17
  314. package/dist/chunk-2Z4AFXGP.js +0 -10
  315. package/dist/chunk-3APKMSVD.js +0 -5
  316. package/dist/chunk-3E5A45HM.js +0 -3
  317. package/dist/chunk-3SFA4YEZ.js +0 -7
  318. package/dist/chunk-4INDXVIX.js +0 -5
  319. package/dist/chunk-4SHVMCT6.js +0 -7
  320. package/dist/chunk-5YJTSVA2.js +0 -6
  321. package/dist/chunk-7F56LFN2.js +0 -17
  322. package/dist/chunk-7KZ2UT76.js +0 -8
  323. package/dist/chunk-ANAHA3L6.js +0 -3
  324. package/dist/chunk-BUYQKDFG.js +0 -13
  325. package/dist/chunk-BYAPKKGB.js +0 -7
  326. package/dist/chunk-CFVUZ4S5.js +0 -5
  327. package/dist/chunk-CFYNJQGN.js +0 -43
  328. package/dist/chunk-CQDKXUUX.js +0 -3
  329. package/dist/chunk-D27ND54J.js +0 -16
  330. package/dist/chunk-E5MGOPPQ.js +0 -8
  331. package/dist/chunk-EFUFJKJD.js +0 -7
  332. package/dist/chunk-GA4A5P3S.js +0 -6
  333. package/dist/chunk-GOC7PC2S.js +0 -6
  334. package/dist/chunk-ILHUUK4X.js +0 -6
  335. package/dist/chunk-J76XIRCA.js +0 -18
  336. package/dist/chunk-JHCOHKLL.js +0 -7
  337. package/dist/chunk-KFZEM7KS.js +0 -5
  338. package/dist/chunk-M6QHAL4V.js +0 -7
  339. package/dist/chunk-MCT77MRN.js +0 -8
  340. package/dist/chunk-NF42ENKE.js +0 -9
  341. package/dist/chunk-OJKIWVED.js +0 -10
  342. package/dist/chunk-ORYAES3Q.js +0 -5
  343. package/dist/chunk-P4HPVV7B.js +0 -14
  344. package/dist/chunk-P5FKEHCD.js +0 -11
  345. package/dist/chunk-PIYBPQAC.js +0 -17
  346. package/dist/chunk-PPUFQMAW.js +0 -9
  347. package/dist/chunk-QCWALW56.js +0 -18
  348. package/dist/chunk-QNAXGE5H.js +0 -8
  349. package/dist/chunk-QQB3DGHT.js +0 -3
  350. package/dist/chunk-R6FUU7Z7.js +0 -7
  351. package/dist/chunk-REM462FC.js +0 -26
  352. package/dist/chunk-RLMWIJKJ.js +0 -10
  353. package/dist/chunk-SEVJABAI.js +0 -7
  354. package/dist/chunk-T7I256S6.js +0 -8
  355. package/dist/chunk-TRI6XGH4.js +0 -7
  356. package/dist/chunk-TWGGHTU5.js +0 -5
  357. package/dist/chunk-UGH5FWZQ.js +0 -13
  358. package/dist/chunk-VTHBHXM2.js +0 -7
  359. package/dist/chunk-VVMQMROT.js +0 -5
  360. package/dist/chunk-W3MYAMTH.js +0 -5
  361. package/dist/chunk-WAAV5ZRR.js +0 -13
  362. package/dist/chunk-WKD3OXUA.js +0 -6
  363. package/dist/chunk-YWEB6IAI.js +0 -6
  364. package/dist/chunk-Z2TDWMRU.js +0 -6
  365. package/dist/chunk-ZDHXW74M.js +0 -5
  366. package/dist/chunk-ZODC2MGF.js +0 -10
  367. package/dist/index.css +0 -10
@@ -1,10 +1,91 @@
1
- import { a } from '../../chunk-PPUFQMAW.js';
2
- import '../../chunk-3E5A45HM.js';
3
- import n from '@mui/material/Stack';
4
- import { styled, alpha } from '@mui/material/styles';
5
- import b from '@mui/material/Tab';
6
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import Stack from '@mui/material/Stack';
3
+ import { styled, alpha } from '@mui/material/styles';
4
+ import Tab from '@mui/material/Tab';
5
+ import Icon from '../Icon';
7
6
 
8
- var g=styled(({label:o,onClose:i,icon:p,hasChanges:e,...l})=>jsx(b,{disableRipple:!0,...l,label:jsxs(n,{position:"relative",direction:"row",alignItems:"center",gap:1.5,sx:t=>({"> span":{position:"absolute",top:-14,right:-10,span:{position:"fixed",width:10,height:10,backgroundColor:t.palette.warning.main,border:"1px solid #fff",borderRadius:"50%",zIndex:999}}}),children:[p,o,jsx(a,{icon:"CLOSE_MARK_BUTTON",width:16,onClick:t=>{i(),t.stopPropagation();}}),e&&jsx("span",{children:jsx("span",{})})]})}))(({theme:o})=>({textTransform:"none",fontSize:o.typography.pxToRem(14),margin:"0 !important",color:`${o.palette.primary.lighter} !important`,minHeight:"initial",padding:"10px 16px",backgroundColor:o.palette.primary.dark,border:`1px solid ${alpha(o.palette.primary.darker,.25)}`,borderBottom:0,borderRadius:"8px 8px 0 0",fontWeight:600,overflow:"initial !important",lineHeight:1,"&.Mui-selected":{color:`${o.palette.text.primary} !important`,backgroundColor:o.palette.background.paper,borderColor:o.palette.primary.dark,svg:{color:o.palette.text.disabled}},"&.Mui-focusVisible":{backgroundColor:"rgba(100, 95, 228, 0.32)"},"svg:hover":{opacity:.85}})),y=g;
7
+ const StyledTab = styled(
8
+ ({ label, onClose, icon, hasChanges, ...props }) => {
9
+ return /* @__PURE__ */ jsx(
10
+ Tab,
11
+ {
12
+ disableRipple: true,
13
+ ...props,
14
+ label: /* @__PURE__ */ jsxs(
15
+ Stack,
16
+ {
17
+ position: "relative",
18
+ direction: "row",
19
+ alignItems: "center",
20
+ gap: 1.5,
21
+ sx: (theme) => ({
22
+ "> span": {
23
+ position: "absolute",
24
+ top: -14,
25
+ right: -10,
26
+ span: {
27
+ position: "fixed",
28
+ width: 10,
29
+ height: 10,
30
+ backgroundColor: theme.palette.warning.main,
31
+ border: "1px solid #fff",
32
+ borderRadius: "50%",
33
+ zIndex: 999
34
+ }
35
+ }
36
+ }),
37
+ children: [
38
+ icon,
39
+ label,
40
+ /* @__PURE__ */ jsx(
41
+ Icon,
42
+ {
43
+ icon: "CLOSE_MARK_BUTTON",
44
+ width: 16,
45
+ onClick: (e) => {
46
+ onClose();
47
+ e.stopPropagation();
48
+ }
49
+ }
50
+ ),
51
+ hasChanges && /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx("span", {}) })
52
+ ]
53
+ }
54
+ )
55
+ }
56
+ );
57
+ }
58
+ )(({ theme }) => ({
59
+ textTransform: "none",
60
+ fontSize: theme.typography.pxToRem(14),
61
+ margin: "0 !important",
62
+ color: `${theme.palette.primary.lighter} !important`,
63
+ minHeight: "initial",
64
+ padding: "10px 16px",
65
+ backgroundColor: theme.palette.primary.dark,
66
+ border: `1px solid ${alpha(theme.palette.primary.darker, 0.25)}`,
67
+ borderBottom: 0,
68
+ borderRadius: "8px 8px 0 0",
69
+ fontWeight: 600,
70
+ overflow: "initial !important",
71
+ lineHeight: 1,
72
+ "&.Mui-selected": {
73
+ color: `${theme.palette.text.primary} !important`,
74
+ backgroundColor: theme.palette.background.paper,
75
+ borderColor: theme.palette.primary.dark,
76
+ svg: {
77
+ color: theme.palette.text.disabled
78
+ }
79
+ },
80
+ "&.Mui-focusVisible": {
81
+ backgroundColor: "rgba(100, 95, 228, 0.32)"
82
+ },
83
+ "svg:hover": {
84
+ opacity: 0.85
85
+ }
86
+ }));
87
+ var StyledTab_default = StyledTab;
9
88
 
10
- export { y as default };
89
+ export { StyledTab_default as default };
90
+ //# sourceMappingURL=out.js.map
91
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/StyledTab/index.tsx"],"names":[],"mappings":"AAeU,SA2BE,KA3BF;AAfV,OAAO,WAAW;AAClB,SAAS,OAAO,cAAc;AAC9B,OAAO,SAAS;AAEhB,OAAO,UAAU;AAIjB,MAAM,YAAY;AAAA,EAChB,CAAC,EAAE,OAAO,SAAS,MAAM,YAAY,GAAG,MAAM,MAAsB;AAClE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACZ,GAAG;AAAA,QACJ,OACE;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,WAAU;AAAA,YACV,YAAW;AAAA,YACX,KAAK;AAAA,YACL,IAAI,YAAU;AAAA,cACZ,UAAU;AAAA,gBACR,UAAU;AAAA,gBACV,KAAK;AAAA,gBACL,OAAO;AAAA,gBAEP,MAAM;AAAA,kBACJ,UAAU;AAAA,kBACV,OAAO;AAAA,kBACP,QAAQ;AAAA,kBACR,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,kBACvC,QAAQ;AAAA,kBACR,cAAc;AAAA,kBACd,QAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YAEC;AAAA;AAAA,cAEA;AAAA,cAED;AAAA,gBAAC;AAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAO;AAAA,kBACP,SAAS,OAAK;AACZ,4BAAQ;AACR,sBAAE,gBAAgB;AAAA,kBACpB;AAAA;AAAA,cACF;AAAA,cACC,cACC,oBAAC,UACC,8BAAC,UAAK,GACR;AAAA;AAAA;AAAA,QAEJ;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAChB,eAAe;AAAA,EACf,UAAU,MAAM,WAAW,QAAQ,EAAE;AAAA,EACrC,QAAQ;AAAA,EACR,OAAO,GAAG,MAAM,QAAQ,QAAQ;AAAA,EAChC,WAAW;AAAA,EACX,SAAS;AAAA,EACT,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,EACvC,QAAQ,aAAa,MAAM,MAAM,QAAQ,QAAQ,QAAQ,IAAI;AAAA,EAC7D,cAAc;AAAA,EACd,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,YAAY;AAAA,EAEZ,kBAAkB;AAAA,IAChB,OAAO,GAAG,MAAM,QAAQ,KAAK;AAAA,IAC7B,iBAAiB,MAAM,QAAQ,WAAW;AAAA,IAC1C,aAAa,MAAM,QAAQ,QAAQ;AAAA,IAEnC,KAAK;AAAA,MACH,OAAO,MAAM,QAAQ,KAAK;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,sBAAsB;AAAA,IACpB,iBAAiB;AAAA,EACnB;AAAA,EAEA,aAAa;AAAA,IACX,SAAS;AAAA,EACX;AACF,EAAE;AAEF,IAAO,oBAAQ","sourcesContent":["import Stack from '@mui/material/Stack';\nimport { alpha, styled } from '@mui/material/styles';\nimport Tab from '@mui/material/Tab';\n\nimport Icon from '../Icon';\n\nimport { StyledTabProps } from './props';\n\nconst StyledTab = styled(\n ({ label, onClose, icon, hasChanges, ...props }: StyledTabProps) => {\n return (\n <Tab\n disableRipple\n {...props}\n label={\n <Stack\n position=\"relative\"\n direction=\"row\"\n alignItems=\"center\"\n gap={1.5}\n sx={theme => ({\n '> span': {\n position: 'absolute',\n top: -14,\n right: -10,\n\n span: {\n position: 'fixed',\n width: 10,\n height: 10,\n backgroundColor: theme.palette.warning.main,\n border: '1px solid #fff',\n borderRadius: '50%',\n zIndex: 999,\n },\n },\n })}\n >\n {icon}\n\n {label}\n\n <Icon\n icon=\"CLOSE_MARK_BUTTON\"\n width={16}\n onClick={e => {\n onClose();\n e.stopPropagation();\n }}\n />\n {hasChanges && (\n <span>\n <span />\n </span>\n )}\n </Stack>\n }\n />\n );\n },\n)(({ theme }) => ({\n textTransform: 'none',\n fontSize: theme.typography.pxToRem(14),\n margin: '0 !important',\n color: `${theme.palette.primary.lighter} !important`,\n minHeight: 'initial',\n padding: '10px 16px',\n backgroundColor: theme.palette.primary.dark,\n border: `1px solid ${alpha(theme.palette.primary.darker, 0.25)}`,\n borderBottom: 0,\n borderRadius: '8px 8px 0 0',\n fontWeight: 600,\n overflow: 'initial !important',\n lineHeight: 1,\n\n '&.Mui-selected': {\n color: `${theme.palette.text.primary} !important`,\n backgroundColor: theme.palette.background.paper,\n borderColor: theme.palette.primary.dark,\n\n svg: {\n color: theme.palette.text.disabled,\n },\n },\n\n '&.Mui-focusVisible': {\n backgroundColor: 'rgba(100, 95, 228, 0.32)',\n },\n\n 'svg:hover': {\n opacity: 0.85,\n },\n}));\n\nexport default StyledTab;\n"]}
@@ -1,7 +1,28 @@
1
- import { styled } from '@mui/material/styles';
2
- import r from '@mui/material/Tabs';
3
1
  import { jsx } from 'react/jsx-runtime';
2
+ import { styled } from '@mui/material/styles';
3
+ import Tabs from '@mui/material/Tabs';
4
4
 
5
- var a=styled(o=>jsx(r,{...o,variant:"scrollable",scrollButtons:"auto"}))({height:"100%",alignItems:"flex-end",gap:8,"& .MuiTabs-indicator":{display:"none",justifyContent:"center",backgroundColor:"transparent"},"& > .MuiButtonBase-root":{height:32,width:32,color:"#fff",marginBottom:2},"& .MuiTabs-flexContainer":{gap:4}}),s=a;
5
+ const StyledTabs = styled((props) => /* @__PURE__ */ jsx(Tabs, { ...props, variant: "scrollable", scrollButtons: "auto" }))({
6
+ height: "100%",
7
+ alignItems: "flex-end",
8
+ gap: 8,
9
+ "& .MuiTabs-indicator": {
10
+ display: "none",
11
+ justifyContent: "center",
12
+ backgroundColor: "transparent"
13
+ },
14
+ "& > .MuiButtonBase-root": {
15
+ height: 32,
16
+ width: 32,
17
+ color: "#fff",
18
+ marginBottom: 2
19
+ },
20
+ "& .MuiTabs-flexContainer": {
21
+ gap: 4
22
+ }
23
+ });
24
+ var StyledTabs_default = StyledTabs;
6
25
 
7
- export { s as default };
26
+ export { StyledTabs_default as default };
27
+ //# sourceMappingURL=out.js.map
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/StyledTabs/index.tsx"],"names":[],"mappings":"AAOE;AANF,SAAS,cAAc;AACvB,OAAO,UAAU;AAIjB,MAAM,aAAa,OAAO,CAAC,UACzB,oBAAC,QAAM,GAAG,OAAO,SAAQ,cAAa,eAAc,QAAO,CAC5D,EAAE;AAAA,EACD,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,KAAK;AAAA,EAEL,wBAAwB;AAAA,IACtB,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,EACnB;AAAA,EAEA,2BAA2B;AAAA,IACzB,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,IACP,cAAc;AAAA,EAChB;AAAA,EAEA,4BAA4B;AAAA,IAC1B,KAAK;AAAA,EACP;AACF,CAAC;AACD,IAAO,qBAAQ","sourcesContent":["import { PropsWithChildren } from 'react';\nimport { styled } from '@mui/material/styles';\nimport Tabs from '@mui/material/Tabs';\n\nimport { StyledTabsProps } from './props';\n\nconst StyledTabs = styled((props: PropsWithChildren<StyledTabsProps>) => (\n <Tabs {...props} variant=\"scrollable\" scrollButtons=\"auto\" />\n))({\n height: '100%',\n alignItems: 'flex-end',\n gap: 8,\n\n '& .MuiTabs-indicator': {\n display: 'none',\n justifyContent: 'center',\n backgroundColor: 'transparent',\n },\n\n '& > .MuiButtonBase-root': {\n height: 32,\n width: 32,\n color: '#fff',\n marginBottom: 2,\n },\n\n '& .MuiTabs-flexContainer': {\n gap: 4,\n },\n});\nexport default StyledTabs;\n"]}
@@ -1,8 +1,16 @@
1
- import n from '@mui/material/Stack';
2
- import { styled } from '@mui/material/styles';
3
- import a from '@mui/material/Typography';
4
1
  import { jsx } from 'react/jsx-runtime';
2
+ import { Container, Label, Value } from './styles';
5
3
 
6
- var l=styled(n)({display:"grid",gridTemplateColumns:"auto auto"}),p=styled(a)(({theme:e})=>({color:e.palette.grey[600],display:"flex",gap:"8px",alignItems:"center"})),i=styled(a)(({theme:e})=>({textAlign:"right",color:e.palette.grey[800]}));var u=({data:e,...m})=>e.length===0?null:jsx(l,{gap:1,...m,children:e.map(r=>[jsx(p,{variant:"body2",children:r.label},`label:${r.id}`),jsx(i,{variant:"body2",children:r.value},`value:${r.id}`)])}),c=u;
4
+ const Summary = ({ data, ...other }) => {
5
+ if (data.length === 0)
6
+ return null;
7
+ return /* @__PURE__ */ jsx(Container, { gap: 1, ...other, children: data.map((d) => [
8
+ /* @__PURE__ */ jsx(Label, { variant: "body2", children: d.label }, `label:${d.id}`),
9
+ /* @__PURE__ */ jsx(Value, { variant: "body2", children: d.value }, `value:${d.id}`)
10
+ ]) });
11
+ };
12
+ var Summary_default = Summary;
7
13
 
8
- export { c as default };
14
+ export { Summary_default as default };
15
+ //# sourceMappingURL=out.js.map
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/Summary/index.tsx"],"names":[],"mappings":"AASQ;AARR,SAAS,WAAW,OAAO,aAAa;AAExC,MAAM,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,MAAoB;AACpD,MAAI,KAAK,WAAW;AAAG,WAAO;AAE9B,SACE,oBAAC,aAAU,KAAK,GAAI,GAAG,OACpB,eAAK,IAAI,OAAK;AAAA,IACb,oBAAC,SAA4B,SAAQ,SAClC,YAAE,SADO,SAAS,EAAE,IAEvB;AAAA,IACA,oBAAC,SAA4B,SAAQ,SAClC,YAAE,SADO,SAAS,EAAE,IAEvB;AAAA,EACF,CAAC,GACH;AAEJ;AAEA,IAAO,kBAAQ","sourcesContent":["import { SummaryProps } from './props';\nimport { Container, Label, Value } from './styles';\n\nconst Summary = ({ data, ...other }: SummaryProps) => {\n if (data.length === 0) return null;\n\n return (\n <Container gap={1} {...other}>\n {data.map(d => [\n <Label key={`label:${d.id}`} variant=\"body2\">\n {d.label}\n </Label>,\n <Value key={`value:${d.id}`} variant=\"body2\">\n {d.value}\n </Value>,\n ])}\n </Container>\n );\n};\n\nexport default Summary;\n"]}
@@ -1,22 +1,250 @@
1
- import { a } from '../../chunk-2Z4AFXGP.js';
2
- import { a as a$1 } from '../../chunk-TWGGHTU5.js';
3
- import { a as a$3 } from '../../chunk-E5MGOPPQ.js';
4
- import { a as a$2 } from '../../chunk-2MVQI7NJ.js';
5
- import '../../chunk-ZDHXW74M.js';
6
- import { a as a$4 } from '../../chunk-PPUFQMAW.js';
7
- import '../../chunk-3E5A45HM.js';
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
8
2
  import { useState } from 'react';
9
- import h from '@mui/material/Checkbox';
10
- import T from '@mui/material/CircularProgress';
11
- import f from '@mui/material/Divider';
12
- import t from '@mui/material/Stack';
13
- import S from '@mui/material/Typography';
3
+ import Checkbox from '@mui/material/Checkbox';
4
+ import CircularProgress from '@mui/material/CircularProgress';
5
+ import Divider from '@mui/material/Divider';
6
+ import Stack from '@mui/material/Stack';
7
+ import Typography from '@mui/material/Typography';
14
8
  import { debounce } from '@mui/material/utils';
15
- import U from '@mui/material/Box';
16
- import X from '@mui/material/Button';
17
- import { styled } from '@mui/material/styles';
18
- import { jsx, jsxs } from 'react/jsx-runtime';
9
+ import EmptyView from 'components/EmptyView';
10
+ import Icon from 'components/Icon';
11
+ import Result from 'components/Result';
12
+ import Scrollbar from 'components/Scrollbar';
13
+ import SearchInput from 'components/SearchInput';
14
+ import { Card, StyledSwapButton } from './styles';
19
15
 
20
- var R=styled(X)(({theme:a})=>({borderColor:a.palette.grey[300]})),L=styled(U)(({theme:a})=>({display:"flex",border:`1.5px solid ${a.palette.grey[300]}`,height:450,borderRadius:8,flex:1,overflow:"hidden"}));var Z=({selectedItems:a$5,items:B,loading:$,searchText:g,onAdd:D,onRemove:P,search:z,itemsTitle:W,selectedItemsTitle:H,additionalContent:K,enableSearchInSelectedItems:k,selectedItemChild:A,onSearch:N})=>{let[m,_]=useState(""),M=debounce(N,400),d=B.filter(e=>!a$5.some(n=>n.id===e.id)),O=a$5.filter(e=>e.name?.toLowerCase().includes(m.toLowerCase())||e.id?.toLowerCase().includes(m.toLowerCase())),u=k&&m?O:a$5,[i,s]=useState([]),[l,p]=useState([]),j=()=>{D(i),s([]);},G=()=>{P(l),p([]);},V=e=>{p(e?u:[]);},q=e=>{s(e?d:[]);},J=(e,n)=>{p(n?c=>[...c,e]:c=>c.filter(y=>y.id!==e.id));},Q=(e,n)=>{s(n?c=>[...c,e]:c=>c.filter(y=>y.id!==e.id));},E=e=>{e.key==="Enter"&&e.preventDefault();};return jsx(t,{children:jsxs(t,{direction:"row",alignItems:"center",gap:3,children:[jsx(L,{flex:1,children:jsxs(t,{flex:1,overflow:"hidden",children:[jsxs(t,{direction:"row",gap:1,padding:2,children:[jsx(h,{size:"small",indeterminate:i.length>0&&i.length!==d.length,checked:i.length>0&&i.length===d.length,onChange:e=>q(e.target.checked)}),jsxs(t,{children:[jsx(S,{variant:"subtitle2",color:"text.primary",children:`${W} cadastrados(as)`}),jsx(S,{variant:"caption",color:"text.disabled",children:`${i.length}/${d.length} selecionados`})]})]}),jsx(f,{}),jsxs(t,{p:2,flex:1,overflow:"hidden",children:[jsxs(t,{direction:"row",gap:1,children:[jsx(a,{iconPosition:"start",placeholder:"Buscar",onKeyDown:E,size:"small",fullWidth:!0,trigger:"change",onSearch:e=>M(e)}),K]}),jsx(a$1,{isLoading:$,loading:jsx(t,{alignItems:"center",justifyContent:"center",flex:1,children:jsx(T,{})}),isEmpty:d.length===0,empty:jsx(a$2,{text:z?`Nenhum ${g} encontrado`:`Nenhum ${g} dispon\xEDvel`,sx:{svg:{height:140}}}),children:jsx(a$3,{sx:{maxHeight:280},children:d.map(e=>jsxs(t,{gap:1,marginTop:"8px",children:[jsxs(t,{direction:"row",gap:.5,alignItems:"center",marginTop:"8px",children:[jsx(h,{size:"small",checked:i.includes(e),onChange:n=>Q(e,n.target.checked)}),e.label]}),jsx(f,{})]},e.id))})})]})]})}),jsxs(t,{gap:3,children:[jsx(R,{variant:"outlined",onClick:j,children:jsx(a$4,{icon:"ARROW_RIGHT_SIMPLE"})}),jsx(R,{variant:"outlined",onClick:G,children:jsx(a$4,{icon:"ARROW_LEFT_SIMPLE"})})]}),jsx(L,{flex:1,children:jsxs(t,{flex:1,overflow:"hidden",children:[jsxs(t,{direction:"row",gap:1,padding:2,children:[jsx(h,{size:"small",indeterminate:l.length>0&&l.length!==a$5.length,checked:l.length>0&&l.length===a$5.length,onChange:e=>V(e.target.checked)}),jsxs(t,{children:[jsx(S,{variant:"subtitle2",color:"text.primary",children:`${H} selecionados(as)`}),jsx(S,{variant:"caption",color:"text.disabled",children:`${l.length}/${a$5.length} selecionados`})]})]}),jsx(f,{}),jsxs(t,{p:2,gap:1,overflow:"hidden",children:[k&&jsx(a,{iconPosition:"start",placeholder:"Buscar",size:"small",fullWidth:!0,trigger:"change",onSearch:e=>_(e??""),onKeyDown:E}),jsx(a$1,{isLoading:$,loading:jsx(t,{alignItems:"center",justifyContent:"center",flex:1,children:jsx(T,{})}),isEmpty:u.length===0,empty:jsx(a$2,{text:m&&k?`Nenhum ${g} encontrado`:`Nenhum ${g} selecionado`,sx:{svg:{height:140},marginTop:"56px",backgroundColor:"transparent"}}),children:jsx(a$3,{sx:{maxHeight:280},children:u.map(e=>jsxs(t,{gap:1,children:[jsxs(t,{direction:"row",gap:.5,alignItems:"center",marginTop:"8px",children:[jsxs(t,{direction:"row",children:[A&&A(e),jsx(h,{size:"small",checked:l.includes(e),onChange:n=>J(e,n.target.checked)})]}),e.label]}),jsx(f,{})]},e.id))})})]})]})})]})})},ue=Z;
16
+ const SwapList = ({
17
+ selectedItems,
18
+ items,
19
+ loading,
20
+ searchText,
21
+ onAdd,
22
+ onRemove,
23
+ search,
24
+ itemsTitle,
25
+ selectedItemsTitle,
26
+ additionalContent,
27
+ enableSearchInSelectedItems,
28
+ selectedItemChild,
29
+ onSearch
30
+ }) => {
31
+ const [localSearch, setLocalSearch] = useState("");
32
+ const handleSearchWithDebounce = debounce(onSearch, 400);
33
+ const availableItems = items.filter(
34
+ (item) => !selectedItems.some((selectedItem) => selectedItem.id === item.id)
35
+ );
36
+ const searchedSelectedItems = selectedItems.filter(
37
+ (item) => item.name?.toLowerCase().includes(localSearch.toLowerCase()) || item.id?.toLowerCase().includes(localSearch.toLowerCase())
38
+ );
39
+ const filtredSelectedItems = enableSearchInSelectedItems && localSearch ? searchedSelectedItems : selectedItems;
40
+ const [selectedesForAdd, setSelectedesForAdd] = useState([]);
41
+ const [selectedesForRemove, setSelectedesForRemove] = useState([]);
42
+ const onAddItems = () => {
43
+ onAdd(selectedesForAdd);
44
+ setSelectedesForAdd([]);
45
+ };
46
+ const onRemoveItems = () => {
47
+ onRemove(selectedesForRemove);
48
+ setSelectedesForRemove([]);
49
+ };
50
+ const onSelectAllForRemove = (checked) => {
51
+ if (checked) {
52
+ setSelectedesForRemove(filtredSelectedItems);
53
+ } else {
54
+ setSelectedesForRemove([]);
55
+ }
56
+ };
57
+ const onSelectAllForAdd = (checked) => {
58
+ if (checked) {
59
+ setSelectedesForAdd(availableItems);
60
+ } else {
61
+ setSelectedesForAdd([]);
62
+ }
63
+ };
64
+ const onSelectItemForRemove = (item, checked) => {
65
+ if (checked) {
66
+ setSelectedesForRemove((prevState) => [...prevState, item]);
67
+ } else {
68
+ setSelectedesForRemove(
69
+ (prevState) => prevState.filter((prevItem) => prevItem.id !== item.id)
70
+ );
71
+ }
72
+ };
73
+ const onSelectItemForAdd = (item, checked) => {
74
+ if (checked) {
75
+ setSelectedesForAdd((prevState) => [...prevState, item]);
76
+ } else {
77
+ setSelectedesForAdd(
78
+ (prevState) => prevState.filter((prevItem) => prevItem.id !== item.id)
79
+ );
80
+ }
81
+ };
82
+ const handleKeyDown = (e) => {
83
+ if (e.key === "Enter")
84
+ e.preventDefault();
85
+ };
86
+ return /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsxs(Stack, { direction: "row", alignItems: "center", gap: 3, children: [
87
+ /* @__PURE__ */ jsx(Card, { flex: 1, children: /* @__PURE__ */ jsxs(Stack, { flex: 1, overflow: "hidden", children: [
88
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", gap: 1, padding: 2, children: [
89
+ /* @__PURE__ */ jsx(
90
+ Checkbox,
91
+ {
92
+ size: "small",
93
+ indeterminate: selectedesForAdd.length > 0 && selectedesForAdd.length !== availableItems.length,
94
+ checked: selectedesForAdd.length > 0 && selectedesForAdd.length === availableItems.length,
95
+ onChange: (e) => onSelectAllForAdd(e.target.checked)
96
+ }
97
+ ),
98
+ /* @__PURE__ */ jsxs(Stack, { children: [
99
+ /* @__PURE__ */ jsx(Typography, { variant: "subtitle2", color: "text.primary", children: `${itemsTitle} cadastrados(as)` }),
100
+ /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "text.disabled", children: `${selectedesForAdd.length}/${availableItems.length} selecionados` })
101
+ ] })
102
+ ] }),
103
+ /* @__PURE__ */ jsx(Divider, {}),
104
+ /* @__PURE__ */ jsxs(Stack, { p: 2, flex: 1, overflow: "hidden", children: [
105
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", gap: 1, children: [
106
+ /* @__PURE__ */ jsx(
107
+ SearchInput,
108
+ {
109
+ iconPosition: "start",
110
+ placeholder: "Buscar",
111
+ onKeyDown: handleKeyDown,
112
+ size: "small",
113
+ fullWidth: true,
114
+ trigger: "change",
115
+ onSearch: (value) => handleSearchWithDebounce(value)
116
+ }
117
+ ),
118
+ additionalContent
119
+ ] }),
120
+ /* @__PURE__ */ jsx(
121
+ Result,
122
+ {
123
+ isLoading: loading,
124
+ loading: /* @__PURE__ */ jsx(Stack, { alignItems: "center", justifyContent: "center", flex: 1, children: /* @__PURE__ */ jsx(CircularProgress, {}) }),
125
+ isEmpty: availableItems.length === 0,
126
+ empty: /* @__PURE__ */ jsx(
127
+ EmptyView,
128
+ {
129
+ text: search ? `Nenhum ${searchText} encontrado` : `Nenhum ${searchText} dispon\xEDvel`,
130
+ sx: { svg: { height: 140 } }
131
+ }
132
+ ),
133
+ children: /* @__PURE__ */ jsx(Scrollbar, { sx: { maxHeight: 280 }, children: availableItems.map((element) => /* @__PURE__ */ jsxs(Stack, { gap: 1, marginTop: "8px", children: [
134
+ /* @__PURE__ */ jsxs(
135
+ Stack,
136
+ {
137
+ direction: "row",
138
+ gap: 0.5,
139
+ alignItems: "center",
140
+ marginTop: "8px",
141
+ children: [
142
+ /* @__PURE__ */ jsx(
143
+ Checkbox,
144
+ {
145
+ size: "small",
146
+ checked: selectedesForAdd.includes(element),
147
+ onChange: (event) => onSelectItemForAdd(element, event.target.checked)
148
+ }
149
+ ),
150
+ element.label
151
+ ]
152
+ }
153
+ ),
154
+ /* @__PURE__ */ jsx(Divider, {})
155
+ ] }, element.id)) })
156
+ }
157
+ )
158
+ ] })
159
+ ] }) }),
160
+ /* @__PURE__ */ jsxs(Stack, { gap: 3, children: [
161
+ /* @__PURE__ */ jsx(StyledSwapButton, { variant: "outlined", onClick: onAddItems, children: /* @__PURE__ */ jsx(Icon, { icon: "ARROW_RIGHT_SIMPLE" }) }),
162
+ /* @__PURE__ */ jsx(StyledSwapButton, { variant: "outlined", onClick: onRemoveItems, children: /* @__PURE__ */ jsx(Icon, { icon: "ARROW_LEFT_SIMPLE" }) })
163
+ ] }),
164
+ /* @__PURE__ */ jsx(Card, { flex: 1, children: /* @__PURE__ */ jsxs(Stack, { flex: 1, overflow: "hidden", children: [
165
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", gap: 1, padding: 2, children: [
166
+ /* @__PURE__ */ jsx(
167
+ Checkbox,
168
+ {
169
+ size: "small",
170
+ indeterminate: selectedesForRemove.length > 0 && selectedesForRemove.length !== selectedItems.length,
171
+ checked: selectedesForRemove.length > 0 && selectedesForRemove.length === selectedItems.length,
172
+ onChange: (e) => onSelectAllForRemove(e.target.checked)
173
+ }
174
+ ),
175
+ /* @__PURE__ */ jsxs(Stack, { children: [
176
+ /* @__PURE__ */ jsx(Typography, { variant: "subtitle2", color: "text.primary", children: `${selectedItemsTitle} selecionados(as)` }),
177
+ /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "text.disabled", children: `${selectedesForRemove.length}/${selectedItems.length} selecionados` })
178
+ ] })
179
+ ] }),
180
+ /* @__PURE__ */ jsx(Divider, {}),
181
+ /* @__PURE__ */ jsxs(Stack, { p: 2, gap: 1, overflow: "hidden", children: [
182
+ enableSearchInSelectedItems && /* @__PURE__ */ jsx(
183
+ SearchInput,
184
+ {
185
+ iconPosition: "start",
186
+ placeholder: "Buscar",
187
+ size: "small",
188
+ fullWidth: true,
189
+ trigger: "change",
190
+ onSearch: (value) => setLocalSearch(value ?? ""),
191
+ onKeyDown: handleKeyDown
192
+ }
193
+ ),
194
+ /* @__PURE__ */ jsx(
195
+ Result,
196
+ {
197
+ isLoading: loading,
198
+ loading: /* @__PURE__ */ jsx(Stack, { alignItems: "center", justifyContent: "center", flex: 1, children: /* @__PURE__ */ jsx(CircularProgress, {}) }),
199
+ isEmpty: filtredSelectedItems.length === 0,
200
+ empty: /* @__PURE__ */ jsx(
201
+ EmptyView,
202
+ {
203
+ text: localSearch && enableSearchInSelectedItems ? `Nenhum ${searchText} encontrado` : `Nenhum ${searchText} selecionado`,
204
+ sx: {
205
+ svg: { height: 140 },
206
+ marginTop: "56px",
207
+ backgroundColor: "transparent"
208
+ }
209
+ }
210
+ ),
211
+ children: /* @__PURE__ */ jsx(Scrollbar, { sx: { maxHeight: 280 }, children: filtredSelectedItems.map((element) => /* @__PURE__ */ jsxs(Stack, { gap: 1, children: [
212
+ /* @__PURE__ */ jsxs(
213
+ Stack,
214
+ {
215
+ direction: "row",
216
+ gap: 0.5,
217
+ alignItems: "center",
218
+ marginTop: "8px",
219
+ children: [
220
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", children: [
221
+ selectedItemChild && selectedItemChild(element),
222
+ /* @__PURE__ */ jsx(
223
+ Checkbox,
224
+ {
225
+ size: "small",
226
+ checked: selectedesForRemove.includes(element),
227
+ onChange: (event) => onSelectItemForRemove(
228
+ element,
229
+ event.target.checked
230
+ )
231
+ }
232
+ )
233
+ ] }),
234
+ element.label
235
+ ]
236
+ }
237
+ ),
238
+ /* @__PURE__ */ jsx(Divider, {})
239
+ ] }, element.id)) })
240
+ }
241
+ )
242
+ ] })
243
+ ] }) })
244
+ ] }) });
245
+ };
246
+ var SwapList_default = SwapList;
21
247
 
22
- export { ue as default };
248
+ export { SwapList_default as default };
249
+ //# sourceMappingURL=out.js.map
250
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/SwapList/index.tsx"],"names":[],"mappings":"AA+Gc,cAaA,YAbA;AA/Gd,SAAgB,gBAAgB;AAChC,OAAO,cAAc;AACrB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;AACpB,OAAO,WAAW;AAClB,OAAO,gBAAgB;AACvB,SAAS,gBAAgB;AAEzB,OAAO,eAAe;AACtB,OAAO,UAAU;AACjB,OAAO,YAAY;AACnB,OAAO,eAAe;AACtB,OAAO,iBAAiB;AAIxB,SAAS,MAAM,wBAAwB;AAEvC,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAqB;AACnB,QAAM,CAAC,aAAa,cAAc,IAAI,SAAiB,EAAE;AACzD,QAAM,2BAA2B,SAAS,UAAU,GAAG;AAEvD,QAAM,iBAAiB,MAAM;AAAA,IAC3B,UAAQ,CAAC,cAAc,KAAK,kBAAgB,aAAa,OAAO,KAAK,EAAE;AAAA,EACzE;AAEA,QAAM,wBAAwB,cAAc;AAAA,IAC1C,UACE,KAAK,MAAM,YAAY,EAAE,SAAS,YAAY,YAAY,CAAC,KAC3D,KAAK,IAAI,YAAY,EAAE,SAAS,YAAY,YAAY,CAAC;AAAA,EAC7D;AAEA,QAAM,uBACJ,+BAA+B,cAC3B,wBACA;AAEN,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,SAAiB,CAAC,CAAC;AAEnE,QAAM,CAAC,qBAAqB,sBAAsB,IAAI,SAAiB,CAAC,CAAC;AAEzE,QAAM,aAAa,MAAM;AACvB,UAAM,gBAAgB;AACtB,wBAAoB,CAAC,CAAC;AAAA,EACxB;AAEA,QAAM,gBAAgB,MAAM;AAC1B,aAAS,mBAAmB;AAC5B,2BAAuB,CAAC,CAAC;AAAA,EAC3B;AAEA,QAAM,uBAAuB,CAAC,YAAqB;AACjD,QAAI,SAAS;AACX,6BAAuB,oBAAoB;AAAA,IAC7C,OAAO;AACL,6BAAuB,CAAC,CAAC;AAAA,IAC3B;AAAA,EACF;AAEA,QAAM,oBAAoB,CAAC,YAAqB;AAC9C,QAAI,SAAS;AACX,0BAAoB,cAAc;AAAA,IACpC,OAAO;AACL,0BAAoB,CAAC,CAAC;AAAA,IACxB;AAAA,EACF;AAEA,QAAM,wBAAwB,CAAC,MAAY,YAAqB;AAC9D,QAAI,SAAS;AACX,6BAAuB,eAAa,CAAC,GAAG,WAAW,IAAI,CAAC;AAAA,IAC1D,OAAO;AACL;AAAA,QAAuB,eACrB,UAAU,OAAO,cAAY,SAAS,OAAO,KAAK,EAAE;AAAA,MACtD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,qBAAqB,CAAC,MAAY,YAAqB;AAC3D,QAAI,SAAS;AACX,0BAAoB,eAAa,CAAC,GAAG,WAAW,IAAI,CAAC;AAAA,IACvD,OAAO;AACL;AAAA,QAAoB,eAClB,UAAU,OAAO,cAAY,SAAS,OAAO,KAAK,EAAE;AAAA,MACtD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,gBAAgB,CAAC,MAA2C;AAChE,QAAI,EAAE,QAAQ;AAAS,QAAE,eAAe;AAAA,EAC1C;AAEA,SACE,oBAAC,SACC,+BAAC,SAAM,WAAU,OAAM,YAAW,UAAS,KAAK,GAC9C;AAAA,wBAAC,QAAK,MAAM,GACV,+BAAC,SAAM,MAAM,GAAG,UAAS,UACvB;AAAA,2BAAC,SAAM,WAAU,OAAM,KAAK,GAAG,SAAS,GACtC;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,eACE,iBAAiB,SAAS,KAC1B,iBAAiB,WAAW,eAAe;AAAA,YAE7C,SACE,iBAAiB,SAAS,KAC1B,iBAAiB,WAAW,eAAe;AAAA,YAE7C,UAAU,OAAK,kBAAkB,EAAE,OAAO,OAAO;AAAA;AAAA,QACnD;AAAA,QAEA,qBAAC,SACC;AAAA,8BAAC,cAAW,SAAQ,aAAY,OAAM,gBACnC,aAAG,8BACN;AAAA,UAEA,oBAAC,cAAW,SAAQ,WAAU,OAAM,iBACjC,aAAG,iBAAiB,UAAU,eAAe,uBAChD;AAAA,WACF;AAAA,SACF;AAAA,MAEA,oBAAC,WAAQ;AAAA,MAET,qBAAC,SAAM,GAAG,GAAG,MAAM,GAAG,UAAS,UAC7B;AAAA,6BAAC,SAAM,WAAU,OAAM,KAAK,GAC1B;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,cAAa;AAAA,cACb,aAAY;AAAA,cACZ,WAAW;AAAA,cACX,MAAK;AAAA,cACL,WAAS;AAAA,cACT,SAAQ;AAAA,cACR,UAAU,WAAS,yBAAyB,KAAK;AAAA;AAAA,UACnD;AAAA,UACC;AAAA,WACH;AAAA,QAEA;AAAA,UAAC;AAAA;AAAA,YACC,WAAW;AAAA,YACX,SACE,oBAAC,SAAM,YAAW,UAAS,gBAAe,UAAS,MAAM,GACvD,8BAAC,oBAAiB,GACpB;AAAA,YAEF,SAAS,eAAe,WAAW;AAAA,YACnC,OACE;AAAA,cAAC;AAAA;AAAA,gBACC,MACE,SACI,UAAU,0BACV,UAAU;AAAA,gBAEhB,IAAI,EAAE,KAAK,EAAE,QAAQ,IAAI,EAAE;AAAA;AAAA,YAC7B;AAAA,YAGF,8BAAC,aAAU,IAAI,EAAE,WAAW,IAAI,GAC7B,yBAAe,IAAI,aAClB,qBAAC,SAAM,KAAK,GAAoB,WAAU,OACxC;AAAA;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAU;AAAA,kBACV,KAAK;AAAA,kBACL,YAAW;AAAA,kBACX,WAAU;AAAA,kBAEV;AAAA;AAAA,sBAAC;AAAA;AAAA,wBACC,MAAK;AAAA,wBACL,SAAS,iBAAiB,SAAS,OAAO;AAAA,wBAC1C,UAAU,WACR,mBAAmB,SAAS,MAAM,OAAO,OAAO;AAAA;AAAA,oBAEpD;AAAA,oBACC,QAAQ;AAAA;AAAA;AAAA,cACX;AAAA,cACA,oBAAC,WAAQ;AAAA,iBAhBS,QAAQ,EAiB5B,CACD,GACH;AAAA;AAAA,QACF;AAAA,SACF;AAAA,OACF,GACF;AAAA,IAEA,qBAAC,SAAM,KAAK,GACV;AAAA,0BAAC,oBAAiB,SAAQ,YAAW,SAAS,YAC3C,8BAAC,QAAK,MAAK,sBAAqB,GACnC;AAAA,MAEA,oBAAC,oBAAiB,SAAQ,YAAW,SAAS,eAC3C,8BAAC,QAAK,MAAK,qBAAoB,GAClC;AAAA,OACF;AAAA,IAEA,oBAAC,QAAK,MAAM,GACV,+BAAC,SAAM,MAAM,GAAG,UAAS,UACvB;AAAA,2BAAC,SAAM,WAAU,OAAM,KAAK,GAAG,SAAS,GACtC;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,eACE,oBAAoB,SAAS,KAC7B,oBAAoB,WAAW,cAAc;AAAA,YAE/C,SACE,oBAAoB,SAAS,KAC7B,oBAAoB,WAAW,cAAc;AAAA,YAE/C,UAAU,OAAK,qBAAqB,EAAE,OAAO,OAAO;AAAA;AAAA,QACtD;AAAA,QAEA,qBAAC,SACC;AAAA,8BAAC,cAAW,SAAQ,aAAY,OAAM,gBACnC,aAAG,uCACN;AAAA,UAEA,oBAAC,cAAW,SAAQ,WAAU,OAAM,iBACjC,aAAG,oBAAoB,UAAU,cAAc,uBAClD;AAAA,WACF;AAAA,SACF;AAAA,MAEA,oBAAC,WAAQ;AAAA,MAET,qBAAC,SAAM,GAAG,GAAG,KAAK,GAAG,UAAS,UAC3B;AAAA,uCACC;AAAA,UAAC;AAAA;AAAA,YACC,cAAa;AAAA,YACb,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,WAAS;AAAA,YACT,SAAQ;AAAA,YACR,UAAU,WAAS,eAAe,SAAS,EAAE;AAAA,YAC7C,WAAW;AAAA;AAAA,QACb;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC,WAAW;AAAA,YACX,SACE,oBAAC,SAAM,YAAW,UAAS,gBAAe,UAAS,MAAM,GACvD,8BAAC,oBAAiB,GACpB;AAAA,YAEF,SAAS,qBAAqB,WAAW;AAAA,YACzC,OACE;AAAA,cAAC;AAAA;AAAA,gBACC,MACE,eAAe,8BACX,UAAU,0BACV,UAAU;AAAA,gBAEhB,IAAI;AAAA,kBACF,KAAK,EAAE,QAAQ,IAAI;AAAA,kBACnB,WAAW;AAAA,kBACX,iBAAiB;AAAA,gBACnB;AAAA;AAAA,YACF;AAAA,YAGF,8BAAC,aAAU,IAAI,EAAE,WAAW,IAAI,GAC7B,+BAAqB,IAAI,aACxB,qBAAC,SAAM,KAAK,GACV;AAAA;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAU;AAAA,kBACV,KAAK;AAAA,kBACL,YAAW;AAAA,kBACX,WAAU;AAAA,kBAEV;AAAA,yCAAC,SAAM,WAAU,OACd;AAAA,2CAAqB,kBAAkB,OAAO;AAAA,sBAE/C;AAAA,wBAAC;AAAA;AAAA,0BACC,MAAK;AAAA,0BACL,SAAS,oBAAoB,SAAS,OAAO;AAAA,0BAC7C,UAAU,WACR;AAAA,4BACE;AAAA,4BACA,MAAM,OAAO;AAAA,0BACf;AAAA;AAAA,sBAEJ;AAAA,uBACF;AAAA,oBACC,QAAQ;AAAA;AAAA;AAAA,cACX;AAAA,cACA,oBAAC,WAAQ;AAAA,iBAvBS,QAAQ,EAwB5B,CACD,GACH;AAAA;AAAA,QACF;AAAA,SACF;AAAA,OACF,GACF;AAAA,KACF,GACF;AAEJ;AAEA,IAAO,mBAAQ","sourcesContent":["import React, { useState } from 'react';\nimport Checkbox from '@mui/material/Checkbox';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport Divider from '@mui/material/Divider';\nimport Stack from '@mui/material/Stack';\nimport Typography from '@mui/material/Typography';\nimport { debounce } from '@mui/material/utils';\n\nimport EmptyView from 'components/EmptyView';\nimport Icon from 'components/Icon';\nimport Result from 'components/Result';\nimport Scrollbar from 'components/Scrollbar';\nimport SearchInput from 'components/SearchInput';\nimport { Item } from 'types/item';\n\nimport { SwapListProps } from './props';\nimport { Card, StyledSwapButton } from './styles';\n\nconst SwapList = ({\n selectedItems,\n items,\n loading,\n searchText,\n onAdd,\n onRemove,\n search,\n itemsTitle,\n selectedItemsTitle,\n additionalContent,\n enableSearchInSelectedItems,\n selectedItemChild,\n onSearch,\n}: SwapListProps) => {\n const [localSearch, setLocalSearch] = useState<string>('');\n const handleSearchWithDebounce = debounce(onSearch, 400);\n\n const availableItems = items.filter(\n item => !selectedItems.some(selectedItem => selectedItem.id === item.id),\n );\n\n const searchedSelectedItems = selectedItems.filter(\n item =>\n item.name?.toLowerCase().includes(localSearch.toLowerCase()) ||\n item.id?.toLowerCase().includes(localSearch.toLowerCase()),\n );\n\n const filtredSelectedItems =\n enableSearchInSelectedItems && localSearch\n ? searchedSelectedItems\n : selectedItems;\n\n const [selectedesForAdd, setSelectedesForAdd] = useState<Item[]>([]);\n\n const [selectedesForRemove, setSelectedesForRemove] = useState<Item[]>([]);\n\n const onAddItems = () => {\n onAdd(selectedesForAdd);\n setSelectedesForAdd([]);\n };\n\n const onRemoveItems = () => {\n onRemove(selectedesForRemove);\n setSelectedesForRemove([]);\n };\n\n const onSelectAllForRemove = (checked: boolean) => {\n if (checked) {\n setSelectedesForRemove(filtredSelectedItems);\n } else {\n setSelectedesForRemove([]);\n }\n };\n\n const onSelectAllForAdd = (checked: boolean) => {\n if (checked) {\n setSelectedesForAdd(availableItems);\n } else {\n setSelectedesForAdd([]);\n }\n };\n\n const onSelectItemForRemove = (item: Item, checked: boolean) => {\n if (checked) {\n setSelectedesForRemove(prevState => [...prevState, item]);\n } else {\n setSelectedesForRemove(prevState =>\n prevState.filter(prevItem => prevItem.id !== item.id),\n );\n }\n };\n\n const onSelectItemForAdd = (item: Item, checked: boolean) => {\n if (checked) {\n setSelectedesForAdd(prevState => [...prevState, item]);\n } else {\n setSelectedesForAdd(prevState =>\n prevState.filter(prevItem => prevItem.id !== item.id),\n );\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Enter') e.preventDefault();\n };\n\n return (\n <Stack>\n <Stack direction=\"row\" alignItems=\"center\" gap={3}>\n <Card flex={1}>\n <Stack flex={1} overflow=\"hidden\">\n <Stack direction=\"row\" gap={1} padding={2}>\n <Checkbox\n size=\"small\"\n indeterminate={\n selectedesForAdd.length > 0 &&\n selectedesForAdd.length !== availableItems.length\n }\n checked={\n selectedesForAdd.length > 0 &&\n selectedesForAdd.length === availableItems.length\n }\n onChange={e => onSelectAllForAdd(e.target.checked)}\n />\n\n <Stack>\n <Typography variant=\"subtitle2\" color=\"text.primary\">\n {`${itemsTitle} cadastrados(as)`}\n </Typography>\n\n <Typography variant=\"caption\" color=\"text.disabled\">\n {`${selectedesForAdd.length}/${availableItems.length} selecionados`}\n </Typography>\n </Stack>\n </Stack>\n\n <Divider />\n\n <Stack p={2} flex={1} overflow=\"hidden\">\n <Stack direction=\"row\" gap={1}>\n <SearchInput\n iconPosition=\"start\"\n placeholder=\"Buscar\"\n onKeyDown={handleKeyDown}\n size=\"small\"\n fullWidth\n trigger=\"change\"\n onSearch={value => handleSearchWithDebounce(value)}\n />\n {additionalContent}\n </Stack>\n\n <Result\n isLoading={loading}\n loading={\n <Stack alignItems=\"center\" justifyContent=\"center\" flex={1}>\n <CircularProgress />\n </Stack>\n }\n isEmpty={availableItems.length === 0}\n empty={\n <EmptyView\n text={\n search\n ? `Nenhum ${searchText} encontrado`\n : `Nenhum ${searchText} disponível`\n }\n sx={{ svg: { height: 140 } }}\n />\n }\n >\n <Scrollbar sx={{ maxHeight: 280 }}>\n {availableItems.map(element => (\n <Stack gap={1} key={element.id} marginTop=\"8px\">\n <Stack\n direction=\"row\"\n gap={0.5}\n alignItems=\"center\"\n marginTop=\"8px\"\n >\n <Checkbox\n size=\"small\"\n checked={selectedesForAdd.includes(element)}\n onChange={event =>\n onSelectItemForAdd(element, event.target.checked)\n }\n />\n {element.label}\n </Stack>\n <Divider />\n </Stack>\n ))}\n </Scrollbar>\n </Result>\n </Stack>\n </Stack>\n </Card>\n\n <Stack gap={3}>\n <StyledSwapButton variant=\"outlined\" onClick={onAddItems}>\n {<Icon icon=\"ARROW_RIGHT_SIMPLE\" />}\n </StyledSwapButton>\n\n <StyledSwapButton variant=\"outlined\" onClick={onRemoveItems}>\n {<Icon icon=\"ARROW_LEFT_SIMPLE\" />}\n </StyledSwapButton>\n </Stack>\n\n <Card flex={1}>\n <Stack flex={1} overflow=\"hidden\">\n <Stack direction=\"row\" gap={1} padding={2}>\n <Checkbox\n size=\"small\"\n indeterminate={\n selectedesForRemove.length > 0 &&\n selectedesForRemove.length !== selectedItems.length\n }\n checked={\n selectedesForRemove.length > 0 &&\n selectedesForRemove.length === selectedItems.length\n }\n onChange={e => onSelectAllForRemove(e.target.checked)}\n />\n\n <Stack>\n <Typography variant=\"subtitle2\" color=\"text.primary\">\n {`${selectedItemsTitle} selecionados(as)`}\n </Typography>\n\n <Typography variant=\"caption\" color=\"text.disabled\">\n {`${selectedesForRemove.length}/${selectedItems.length} selecionados`}\n </Typography>\n </Stack>\n </Stack>\n\n <Divider />\n\n <Stack p={2} gap={1} overflow=\"hidden\">\n {enableSearchInSelectedItems && (\n <SearchInput\n iconPosition=\"start\"\n placeholder=\"Buscar\"\n size=\"small\"\n fullWidth\n trigger=\"change\"\n onSearch={value => setLocalSearch(value ?? '')}\n onKeyDown={handleKeyDown}\n />\n )}\n <Result\n isLoading={loading}\n loading={\n <Stack alignItems=\"center\" justifyContent=\"center\" flex={1}>\n <CircularProgress />\n </Stack>\n }\n isEmpty={filtredSelectedItems.length === 0}\n empty={\n <EmptyView\n text={\n localSearch && enableSearchInSelectedItems\n ? `Nenhum ${searchText} encontrado`\n : `Nenhum ${searchText} selecionado`\n }\n sx={{\n svg: { height: 140 },\n marginTop: '56px',\n backgroundColor: 'transparent',\n }}\n />\n }\n >\n <Scrollbar sx={{ maxHeight: 280 }}>\n {filtredSelectedItems.map(element => (\n <Stack gap={1} key={element.id}>\n <Stack\n direction=\"row\"\n gap={0.5}\n alignItems=\"center\"\n marginTop=\"8px\"\n >\n <Stack direction=\"row\">\n {selectedItemChild && selectedItemChild(element)}\n\n <Checkbox\n size=\"small\"\n checked={selectedesForRemove.includes(element)}\n onChange={event =>\n onSelectItemForRemove(\n element,\n event.target.checked,\n )\n }\n />\n </Stack>\n {element.label}\n </Stack>\n <Divider />\n </Stack>\n ))}\n </Scrollbar>\n </Result>\n </Stack>\n </Stack>\n </Card>\n </Stack>\n </Stack>\n );\n};\n\nexport default SwapList;\n"]}
@@ -1,6 +1,35 @@
1
- import l from '@mui/material/Box';
2
1
  import { jsx } from 'react/jsx-runtime';
2
+ import Box from '@mui/material/Box';
3
3
 
4
- var e=({children:i,value:t,index:o,sx:r})=>jsx(l,{role:"tabpanel",id:`simple-tabpanel-${o}`,"aria-labelledby":`simple-tab-${o}`,sx:{mt:3,...t.toString()!==o.toString()&&{position:"absolute",width:"100%",height:0,overflow:"hidden",visibility:"hidden"},...r},children:i}),n=e;
4
+ const TabPanel = ({
5
+ children,
6
+ value,
7
+ index,
8
+ sx
9
+ }) => {
10
+ return /* @__PURE__ */ jsx(
11
+ Box,
12
+ {
13
+ role: "tabpanel",
14
+ id: `simple-tabpanel-${index}`,
15
+ "aria-labelledby": `simple-tab-${index}`,
16
+ sx: {
17
+ mt: 3,
18
+ ...value.toString() !== index.toString() && {
19
+ position: "absolute",
20
+ width: "100%",
21
+ height: 0,
22
+ overflow: "hidden",
23
+ visibility: "hidden"
24
+ },
25
+ ...sx
26
+ },
27
+ children
28
+ }
29
+ );
30
+ };
31
+ var TabPanel_default = TabPanel;
5
32
 
6
- export { n as default };
33
+ export { TabPanel_default as default };
34
+ //# sourceMappingURL=out.js.map
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/TabPanel/index.tsx"],"names":[],"mappings":"AAYI;AAXJ,OAAO,SAAS;AAIhB,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAwC;AACtC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,IAAI,mBAAmB;AAAA,MACvB,mBAAiB,cAAc;AAAA,MAC/B,IAAI;AAAA,QACF,IAAI;AAAA,QACJ,GAAI,MAAM,SAAS,MAAM,MAAM,SAAS,KAAK;AAAA,UAC3C,UAAU;AAAA,UACV,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,UAAU;AAAA,UACV,YAAY;AAAA,QACd;AAAA,QACA,GAAG;AAAA,MACL;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,mBAAQ","sourcesContent":["import { PropsWithChildren } from 'react';\nimport Box from '@mui/material/Box';\n\nimport { TabPanelProps } from './props';\n\nconst TabPanel = ({\n children,\n value,\n index,\n sx,\n}: PropsWithChildren<TabPanelProps>) => {\n return (\n <Box\n role=\"tabpanel\"\n id={`simple-tabpanel-${index}`}\n aria-labelledby={`simple-tab-${index}`}\n sx={{\n mt: 3,\n ...(value.toString() !== index.toString() && {\n position: 'absolute',\n width: '100%',\n height: 0,\n overflow: 'hidden',\n visibility: 'hidden',\n }),\n ...sx,\n }}\n >\n {children}\n </Box>\n );\n};\n\nexport default TabPanel;\n"]}
@@ -1,2 +1,50 @@
1
- export { a as default } from '../../chunk-RLMWIJKJ.js';
2
- import '../../chunk-ILHUUK4X.js';
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef } from 'react';
3
+ import Link from '@mui/material/Link';
4
+ import Typography from '@mui/material/Typography';
5
+ import useTypography from './useTypography';
6
+
7
+ const TextMaxLine = forwardRef(
8
+ ({
9
+ asLink,
10
+ variant = "body1",
11
+ line = 2,
12
+ persistent = false,
13
+ children,
14
+ sx,
15
+ ...other
16
+ }, ref) => {
17
+ const { lineHeight } = useTypography(variant);
18
+ const styles = {
19
+ overflow: "hidden",
20
+ textOverflow: "ellipsis",
21
+ display: "-webkit-box",
22
+ WebkitLineClamp: line,
23
+ WebkitBoxOrient: "vertical",
24
+ ...persistent && {
25
+ height: lineHeight * line
26
+ },
27
+ ...sx
28
+ };
29
+ if (asLink) {
30
+ return /* @__PURE__ */ jsx(
31
+ Link,
32
+ {
33
+ color: "inherit",
34
+ ref,
35
+ variant,
36
+ sx: { ...styles },
37
+ ...other,
38
+ children
39
+ }
40
+ );
41
+ }
42
+ return /* @__PURE__ */ jsx(Typography, { ref, variant, sx: { ...styles }, ...other, children });
43
+ }
44
+ );
45
+ TextMaxLine.displayName = "TextMaxLine";
46
+ var TextMaxLine_default = TextMaxLine;
47
+
48
+ export { TextMaxLine_default as default };
49
+ //# sourceMappingURL=out.js.map
50
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/TextMaxLine/index.tsx"],"names":[],"mappings":"AAoCQ;AApCR,SAAS,kBAAkB;AAC3B,OAAO,UAAU;AACjB,OAAO,gBAAgB;AAGvB,OAAO,mBAAmB;AAE1B,MAAM,cAAc;AAAA,EAClB,CACE;AAAA,IACE;AAAA,IACA,UAAU;AAAA,IACV,OAAO;AAAA,IACP,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,GACA,QACG;AACH,UAAM,EAAE,WAAW,IAAI,cAAc,OAAO;AAE5C,UAAM,SAAS;AAAA,MACb,UAAU;AAAA,MACV,cAAc;AAAA,MACd,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,MACjB,GAAI,cAAc;AAAA,QAChB,QAAQ,aAAa;AAAA,MACvB;AAAA,MACA,GAAG;AAAA,IACL;AAEA,QAAI,QAAQ;AACV,aACE;AAAA,QAAC;AAAA;AAAA,UACC,OAAM;AAAA,UACN;AAAA,UACA;AAAA,UACA,IAAI,EAAE,GAAG,OAAO;AAAA,UACf,GAAG;AAAA,UAEH;AAAA;AAAA,MACH;AAAA,IAEJ;AAEA,WACE,oBAAC,cAAW,KAAU,SAAkB,IAAI,EAAE,GAAG,OAAO,GAAI,GAAG,OAC5D,UACH;AAAA,EAEJ;AACF;AAEA,YAAY,cAAc;AAE1B,IAAO,sBAAQ","sourcesContent":["import { forwardRef } from 'react';\nimport Link from '@mui/material/Link';\nimport Typography from '@mui/material/Typography';\n\nimport { TextMaxLineProps } from './props';\nimport useTypography from './useTypography';\n\nconst TextMaxLine = forwardRef<HTMLAnchorElement, TextMaxLineProps>(\n (\n {\n asLink,\n variant = 'body1',\n line = 2,\n persistent = false,\n children,\n sx,\n ...other\n },\n ref,\n ) => {\n const { lineHeight } = useTypography(variant);\n\n const styles = {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n WebkitLineClamp: line,\n WebkitBoxOrient: 'vertical',\n ...(persistent && {\n height: lineHeight * line,\n }),\n ...sx,\n } as const;\n\n if (asLink) {\n return (\n <Link\n color=\"inherit\"\n ref={ref}\n variant={variant}\n sx={{ ...styles }}\n {...other}\n >\n {children}\n </Link>\n );\n }\n\n return (\n <Typography ref={ref} variant={variant} sx={{ ...styles }} {...other}>\n {children}\n </Typography>\n );\n },\n);\n\nTextMaxLine.displayName = 'TextMaxLine';\n\nexport default TextMaxLine;\n"]}
@@ -1,7 +1,43 @@
1
- import { TimePicker } from '@mui/x-date-pickers-pro';
2
- import s from 'dayjs';
3
1
  import { jsx } from 'react/jsx-runtime';
2
+ import { TimePicker as TimePicker$1 } from '@mui/x-date-pickers-pro';
3
+ import dayjs from 'dayjs';
4
4
 
5
- var P=({value:e,onChange:i,tabIndex:o,helperText:l,required:m,...r})=>jsx(TimePicker,{...r,format:"HH:mm",value:e?s(e):null,onChange:t=>i(t?t.toDate():null),slotProps:{textField:{...r.slotProps?.textField,required:m,helperText:l,autoComplete:"off",spellCheck:"false",fullWidth:!0,inputProps:{tabIndex:o}},openPickerButton:{tabIndex:o}}}),k=P;
5
+ const TimePicker = ({
6
+ value,
7
+ onChange,
8
+ tabIndex,
9
+ helperText,
10
+ required,
11
+ ...other
12
+ }) => {
13
+ return /* @__PURE__ */ jsx(
14
+ TimePicker$1,
15
+ {
16
+ ...other,
17
+ format: "HH:mm",
18
+ value: value ? dayjs(value) : null,
19
+ onChange: (v) => onChange(v ? v.toDate() : null),
20
+ slotProps: {
21
+ textField: {
22
+ ...other.slotProps?.textField,
23
+ required,
24
+ helperText,
25
+ autoComplete: "off",
26
+ spellCheck: "false",
27
+ fullWidth: true,
28
+ inputProps: {
29
+ tabIndex
30
+ }
31
+ },
32
+ openPickerButton: {
33
+ tabIndex
34
+ }
35
+ }
36
+ }
37
+ );
38
+ };
39
+ var TimePicker_default = TimePicker;
6
40
 
7
- export { k as default };
41
+ export { TimePicker_default as default };
42
+ //# sourceMappingURL=out.js.map
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/TimePicker/index.tsx"],"names":[],"mappings":"AAcI;AAdJ,SAAS,cAAc,qBAAqB;AAC5C,OAAO,WAAW;AAIlB,MAAM,aAAa,CAAC;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAuB;AACrB,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,QAAO;AAAA,MACP,OAAO,QAAQ,MAAM,KAAK,IAAI;AAAA,MAC9B,UAAU,OAAK,SAAS,IAAI,EAAE,OAAO,IAAI,IAAI;AAAA,MAC7C,WAAW;AAAA,QACT,WAAW;AAAA,UACT,GAAG,MAAM,WAAW;AAAA,UACpB;AAAA,UACA;AAAA,UACA,cAAc;AAAA,UACd,YAAY;AAAA,UACZ,WAAW;AAAA,UACX,YAAY;AAAA,YACV;AAAA,UACF;AAAA,QACF;AAAA,QACA,kBAAkB;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,qBAAQ","sourcesContent":["import { TimePicker as MuiTimePicker } from '@mui/x-date-pickers-pro';\nimport dayjs from 'dayjs';\n\nimport { TimePickerProps } from './props';\n\nconst TimePicker = ({\n value,\n onChange,\n tabIndex,\n helperText,\n required,\n ...other\n}: TimePickerProps) => {\n return (\n <MuiTimePicker\n {...other}\n format=\"HH:mm\"\n value={value ? dayjs(value) : null}\n onChange={v => onChange(v ? v.toDate() : null)}\n slotProps={{\n textField: {\n ...other.slotProps?.textField,\n required,\n helperText,\n autoComplete: 'off',\n spellCheck: 'false',\n fullWidth: true,\n inputProps: {\n tabIndex,\n },\n },\n openPickerButton: {\n tabIndex,\n },\n }}\n />\n );\n};\n\nexport default TimePicker;\n"]}