@zydon/common 2.2.43 → 2.2.45

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 (315) hide show
  1. package/dist/components/ActionButton/index.js +32 -4
  2. package/dist/components/ActionButton/index.js.map +1 -0
  3. package/dist/components/Autocomplete/index.js +137 -7
  4. package/dist/components/Autocomplete/index.js.map +1 -0
  5. package/dist/components/AutocompleteDetailed/index.js +134 -8
  6. package/dist/components/AutocompleteDetailed/index.js.map +1 -0
  7. package/dist/components/BuilderLayout/index.js +23 -4
  8. package/dist/components/BuilderLayout/index.js.map +1 -0
  9. package/dist/components/BuilderSidebar/index.js +17 -4
  10. package/dist/components/BuilderSidebar/index.js.map +1 -0
  11. package/dist/components/ColorPickerInput/index.js +98 -8
  12. package/dist/components/ColorPickerInput/index.js.map +1 -0
  13. package/dist/components/ColoredLabel/index.js +40 -3
  14. package/dist/components/ColoredLabel/index.js.map +1 -0
  15. package/dist/components/Common/index.js +27 -4
  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 +58 -4
  20. package/dist/components/CustomAvatar/index.js.map +1 -0
  21. package/dist/components/CustomAvatarGroup/index.js +73 -3
  22. package/dist/components/CustomAvatarGroup/index.js.map +1 -0
  23. package/dist/components/DashedDivider/index.d.ts +2 -1
  24. package/dist/components/DashedDivider/index.js +7 -2
  25. package/dist/components/DashedDivider/index.js.map +1 -0
  26. package/dist/components/DataCards/index.d.ts +6 -3
  27. package/dist/components/DataCards/index.js +55 -8
  28. package/dist/components/DataCards/index.js.map +1 -0
  29. package/dist/components/DataGrid/index.js +74 -6
  30. package/dist/components/DataGrid/index.js.map +1 -0
  31. package/dist/components/DatePicker/index.js +40 -4
  32. package/dist/components/DatePicker/index.js.map +1 -0
  33. package/dist/components/DateRangePicker/index.js +48 -4
  34. package/dist/components/DateRangePicker/index.js.map +1 -0
  35. package/dist/components/DateTimePicker/index.js +38 -4
  36. package/dist/components/DateTimePicker/index.js.map +1 -0
  37. package/dist/components/Delayed/index.js +15 -2
  38. package/dist/components/Delayed/index.js.map +1 -0
  39. package/dist/components/Drawer/index.js +36 -7
  40. package/dist/components/Drawer/index.js.map +1 -0
  41. package/dist/components/EmptyContent/index.js +77 -6
  42. package/dist/components/EmptyContent/index.js.map +1 -0
  43. package/dist/components/EmptyView/index.js +32 -5
  44. package/dist/components/EmptyView/index.js.map +1 -0
  45. package/dist/components/Error/index.js +44 -7
  46. package/dist/components/Error/index.js.map +1 -0
  47. package/dist/components/ExpandableGroup/index.js +30 -7
  48. package/dist/components/ExpandableGroup/index.js.map +1 -0
  49. package/dist/components/FixedProgressBar/index.js +20 -3
  50. package/dist/components/FixedProgressBar/index.js.map +1 -0
  51. package/dist/components/FrameSkeleton/index.js +95 -9
  52. package/dist/components/FrameSkeleton/index.js.map +1 -0
  53. package/dist/components/HelpButton/index.js +20 -4
  54. package/dist/components/HelpButton/index.js.map +1 -0
  55. package/dist/components/Icon/index.js +400 -53
  56. package/dist/components/Icon/index.js.map +1 -0
  57. package/dist/components/ImageCrop/index.js +48 -3
  58. package/dist/components/ImageCrop/index.js.map +1 -0
  59. package/dist/components/ImageCropModal/index.js +127 -10
  60. package/dist/components/ImageCropModal/index.js.map +1 -0
  61. package/dist/components/Incrementer/index.d.ts +2 -0
  62. package/dist/components/Incrementer/index.js +157 -6
  63. package/dist/components/Incrementer/index.js.map +1 -0
  64. package/dist/components/Label/index.js +68 -3
  65. package/dist/components/Label/index.js.map +1 -0
  66. package/dist/components/LoadingScreen/index.js +8 -3
  67. package/dist/components/LoadingScreen/index.js.map +1 -0
  68. package/dist/components/MaskedInput/index.js +51 -3
  69. package/dist/components/MaskedInput/index.js.map +1 -0
  70. package/dist/components/MenuItem/index.js +21 -6
  71. package/dist/components/MenuItem/index.js.map +1 -0
  72. package/dist/components/MenuPopover/index.js +45 -4
  73. package/dist/components/MenuPopover/index.js.map +1 -0
  74. package/dist/components/Modal/index.js +30 -7
  75. package/dist/components/Modal/index.js.map +1 -0
  76. package/dist/components/ModalActions/index.js +9 -3
  77. package/dist/components/ModalActions/index.js.map +1 -0
  78. package/dist/components/MoreMenu/index.js +16 -7
  79. package/dist/components/MoreMenu/index.js.map +1 -0
  80. package/dist/components/NumberInput/index.js +103 -3
  81. package/dist/components/NumberInput/index.js.map +1 -0
  82. package/dist/components/PasswordRules/index.js +74 -4
  83. package/dist/components/PasswordRules/index.js.map +1 -0
  84. package/dist/components/PopoverSelect/index.js +43 -5
  85. package/dist/components/PopoverSelect/index.js.map +1 -0
  86. package/dist/components/Portal/index.js +25 -2
  87. package/dist/components/Portal/index.js.map +1 -0
  88. package/dist/components/Result/index.js +26 -2
  89. package/dist/components/Result/index.js.map +1 -0
  90. package/dist/components/SavedChanges/index.js +39 -3
  91. package/dist/components/SavedChanges/index.js.map +1 -0
  92. package/dist/components/Scrollbar/index.js +41 -4
  93. package/dist/components/Scrollbar/index.js.map +1 -0
  94. package/dist/components/SearchInput/index.js +70 -6
  95. package/dist/components/SearchInput/index.js.map +1 -0
  96. package/dist/components/SelectableCards/index.js +140 -12
  97. package/dist/components/SelectableCards/index.js.map +1 -0
  98. package/dist/components/SeoPreview/index.js +157 -7
  99. package/dist/components/SeoPreview/index.js.map +1 -0
  100. package/dist/components/SplashScreen/index.js +103 -3
  101. package/dist/components/SplashScreen/index.js.map +1 -0
  102. package/dist/components/Steps/index.js +68 -8
  103. package/dist/components/Steps/index.js.map +1 -0
  104. package/dist/components/StyledTab/index.js +87 -5
  105. package/dist/components/StyledTab/index.js.map +1 -0
  106. package/dist/components/StyledTabs/index.js +24 -3
  107. package/dist/components/StyledTabs/index.js.map +1 -0
  108. package/dist/components/Summary/index.js +12 -2
  109. package/dist/components/Summary/index.js.map +1 -0
  110. package/dist/components/SwapList/index.js +244 -12
  111. package/dist/components/SwapList/index.js.map +1 -0
  112. package/dist/components/TabPanel/index.js +32 -3
  113. package/dist/components/TabPanel/index.js.map +1 -0
  114. package/dist/components/TextMaxLine/index.js +46 -5
  115. package/dist/components/TextMaxLine/index.js.map +1 -0
  116. package/dist/components/TimePicker/index.js +40 -4
  117. package/dist/components/TimePicker/index.js.map +1 -0
  118. package/dist/components/ToggleButtonGroup/index.js +7 -2
  119. package/dist/components/ToggleButtonGroup/index.js.map +1 -0
  120. package/dist/components/Tooltip/index.js +6 -3
  121. package/dist/components/Tooltip/index.js.map +1 -0
  122. package/dist/components/WhiteBox/index.js +5 -2
  123. package/dist/components/WhiteBox/index.js.map +1 -0
  124. package/dist/components/animate/index.js +2 -0
  125. package/dist/components/animate/index.js.map +1 -0
  126. package/dist/components/carousel/index.js +2 -0
  127. package/dist/components/carousel/index.js.map +1 -0
  128. package/dist/components/form/Address/index.js +197 -8
  129. package/dist/components/form/Address/index.js.map +1 -0
  130. package/dist/components/form/Autocomplete/index.js +39 -3
  131. package/dist/components/form/Autocomplete/index.js.map +1 -0
  132. package/dist/components/form/AutocompleteDetailed/index.js +39 -3
  133. package/dist/components/form/AutocompleteDetailed/index.js.map +1 -0
  134. package/dist/components/form/Checkbox/index.js +48 -5
  135. package/dist/components/form/Checkbox/index.js.map +1 -0
  136. package/dist/components/form/Codes/index.js +83 -6
  137. package/dist/components/form/Codes/index.js.map +1 -0
  138. package/dist/components/form/ColorPicker/index.js +49 -3
  139. package/dist/components/form/ColorPicker/index.js.map +1 -0
  140. package/dist/components/form/DatePicker/index.js +60 -4
  141. package/dist/components/form/DatePicker/index.js.map +1 -0
  142. package/dist/components/form/DateRangePicker/index.js +74 -6
  143. package/dist/components/form/DateRangePicker/index.js.map +1 -0
  144. package/dist/components/form/DateTimePicker/index.js +58 -4
  145. package/dist/components/form/DateTimePicker/index.js.map +1 -0
  146. package/dist/components/form/Field/index.js +46 -3
  147. package/dist/components/form/Field/index.js.map +1 -0
  148. package/dist/components/form/Form/index.js +26 -3
  149. package/dist/components/form/Form/index.js.map +1 -0
  150. package/dist/components/form/Incrementer/index.js +35 -3
  151. package/dist/components/form/Incrementer/index.js.map +1 -0
  152. package/dist/components/form/InputTags/index.js +66 -5
  153. package/dist/components/form/InputTags/index.js.map +1 -0
  154. package/dist/components/form/MaskedInput/index.js +42 -3
  155. package/dist/components/form/MaskedInput/index.js.map +1 -0
  156. package/dist/components/form/MultiCheckbox/index.js +90 -8
  157. package/dist/components/form/MultiCheckbox/index.js.map +1 -0
  158. package/dist/components/form/MultiChipField/index.js +46 -4
  159. package/dist/components/form/MultiChipField/index.js.map +1 -0
  160. package/dist/components/form/NumberInput/index.js +40 -3
  161. package/dist/components/form/NumberInput/index.js.map +1 -0
  162. package/dist/components/form/Password/index.js +86 -6
  163. package/dist/components/form/Password/index.js.map +1 -0
  164. package/dist/components/form/RadioGroup/index.js +123 -8
  165. package/dist/components/form/RadioGroup/index.js.map +1 -0
  166. package/dist/components/form/SelectableCards/index.js +19 -3
  167. package/dist/components/form/SelectableCards/index.js.map +1 -0
  168. package/dist/components/form/Switch/index.js +65 -5
  169. package/dist/components/form/Switch/index.js.map +1 -0
  170. package/dist/components/form/TimePicker/index.js +61 -4
  171. package/dist/components/form/TimePicker/index.js.map +1 -0
  172. package/dist/components/form/UploadAvatarWithCrop/index.js +56 -5
  173. package/dist/components/form/UploadAvatarWithCrop/index.js.map +1 -0
  174. package/dist/components/form/UploadWithCrop/index.js +56 -5
  175. package/dist/components/form/UploadWithCrop/index.js.map +1 -0
  176. package/dist/components/form/Webhook/index.js +141 -12
  177. package/dist/components/form/Webhook/index.js.map +1 -0
  178. package/dist/components/lightbox/index.js +2 -0
  179. package/dist/components/lightbox/index.js.map +1 -0
  180. package/dist/components/table/index.js +2 -0
  181. package/dist/components/table/index.js.map +1 -0
  182. package/dist/components/upload/index.js +2 -0
  183. package/dist/components/upload/index.js.map +1 -0
  184. package/dist/hooks/useActiveElement.js +25 -2
  185. package/dist/hooks/useActiveElement.js.map +1 -0
  186. package/dist/hooks/useApiMessage.js +31 -2
  187. package/dist/hooks/useApiMessage.js.map +1 -0
  188. package/dist/hooks/useAutocomplete.js +58 -2
  189. package/dist/hooks/useAutocomplete.js.map +1 -0
  190. package/dist/hooks/useCopyToClipboard.js +20 -2
  191. package/dist/hooks/useCopyToClipboard.js.map +1 -0
  192. package/dist/hooks/useDatagrid.js +41 -2
  193. package/dist/hooks/useDatagrid.js.map +1 -0
  194. package/dist/hooks/useDebounceValue.js +16 -2
  195. package/dist/hooks/useDebounceValue.js.map +1 -0
  196. package/dist/hooks/useDeepCompareEffect.js +13 -2
  197. package/dist/hooks/useDeepCompareEffect.js.map +1 -0
  198. package/dist/hooks/useEventCallback.js +14 -3
  199. package/dist/hooks/useEventCallback.js.map +1 -0
  200. package/dist/hooks/useEventListener.js +22 -2
  201. package/dist/hooks/useEventListener.js.map +1 -0
  202. package/dist/hooks/useIsMounting.js +11 -2
  203. package/dist/hooks/useIsMounting.js.map +1 -0
  204. package/dist/hooks/useIsomorphicLayoutEffect.js +4 -2
  205. package/dist/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  206. package/dist/hooks/useLocalStorage.js +85 -3
  207. package/dist/hooks/useLocalStorage.js.map +1 -0
  208. package/dist/hooks/useMount.js +7 -2
  209. package/dist/hooks/useMount.js.map +1 -0
  210. package/dist/hooks/useOnClickOutside.js +14 -3
  211. package/dist/hooks/useOnClickOutside.js.map +1 -0
  212. package/dist/hooks/usePagination.js +38 -2
  213. package/dist/hooks/usePagination.js.map +1 -0
  214. package/dist/hooks/usePopover.js +19 -2
  215. package/dist/hooks/usePopover.js.map +1 -0
  216. package/dist/hooks/useResponsive.js +32 -3
  217. package/dist/hooks/useResponsive.js.map +1 -0
  218. package/dist/hooks/useScrollOffSetTop.js +29 -2
  219. package/dist/hooks/useScrollOffSetTop.js.map +1 -0
  220. package/dist/hooks/useSnackbar.js +11 -2
  221. package/dist/hooks/useSnackbar.js.map +1 -0
  222. package/dist/hooks/useTabs.js +14 -2
  223. package/dist/hooks/useTabs.js.map +1 -0
  224. package/dist/hooks/useToggle.js +9 -2
  225. package/dist/hooks/useToggle.js.map +1 -0
  226. package/dist/hooks/useUpload.js +54 -2
  227. package/dist/hooks/useUpload.js.map +1 -0
  228. package/dist/hooks/useUploadImage.js +77 -4
  229. package/dist/hooks/useUploadImage.js.map +1 -0
  230. package/dist/index.js +4 -2
  231. package/dist/index.js.map +1 -0
  232. package/dist/locales/all-langs.js +29 -2
  233. package/dist/locales/all-langs.js.map +1 -0
  234. package/dist/theme/core/index.js +2 -0
  235. package/dist/theme/core/index.js.map +1 -0
  236. package/dist/theme/styles/index.js +2 -0
  237. package/dist/theme/styles/index.js.map +1 -0
  238. package/dist/theme/theme-provider.js +39 -3
  239. package/dist/theme/theme-provider.js.map +1 -0
  240. package/dist/theme/with-settings/index.js +2 -0
  241. package/dist/theme/with-settings/index.js.map +1 -0
  242. package/dist/types/addressProps.js +2 -0
  243. package/dist/types/addressProps.js.map +1 -0
  244. package/dist/types/api.js +2 -0
  245. package/dist/types/api.js.map +1 -0
  246. package/dist/types/autoComplete.js +2 -0
  247. package/dist/types/autoComplete.js.map +1 -0
  248. package/dist/types/autoCompleteProps.js +2 -0
  249. package/dist/types/autoCompleteProps.js.map +1 -0
  250. package/dist/types/baseField.js +2 -0
  251. package/dist/types/baseField.js.map +1 -0
  252. package/dist/types/dataGridProps.js +2 -0
  253. package/dist/types/dataGridProps.js.map +1 -0
  254. package/dist/types/datagrid.d.ts +4 -1
  255. package/dist/types/datagrid.js +2 -0
  256. package/dist/types/datagrid.js.map +1 -0
  257. package/dist/types/datePickerProps.js +2 -0
  258. package/dist/types/datePickerProps.js.map +1 -0
  259. package/dist/types/dateRangePickerProps.js +2 -0
  260. package/dist/types/dateRangePickerProps.js.map +1 -0
  261. package/dist/types/dateTimePickerProps.js +2 -0
  262. package/dist/types/dateTimePickerProps.js.map +1 -0
  263. package/dist/types/fieldProps.js +2 -0
  264. package/dist/types/fieldProps.js.map +1 -0
  265. package/dist/types/icon.js +330 -2
  266. package/dist/types/icon.js.map +1 -0
  267. package/dist/types/iconProps.js +2 -0
  268. package/dist/types/iconProps.js.map +1 -0
  269. package/dist/types/incrementerProps.js +2 -0
  270. package/dist/types/incrementerProps.js.map +1 -0
  271. package/dist/types/item.js +2 -0
  272. package/dist/types/item.js.map +1 -0
  273. package/dist/types/multiCheckboxProps.js +2 -0
  274. package/dist/types/multiCheckboxProps.js.map +1 -0
  275. package/dist/types/numberInputProps.js +2 -0
  276. package/dist/types/numberInputProps.js.map +1 -0
  277. package/dist/types/option.js +2 -0
  278. package/dist/types/option.js.map +1 -0
  279. package/dist/types/radioGroupProps.js +2 -0
  280. package/dist/types/radioGroupProps.js.map +1 -0
  281. package/dist/types/searchInputProps.js +2 -0
  282. package/dist/types/searchInputProps.js.map +1 -0
  283. package/dist/types/sectionProps.js +2 -0
  284. package/dist/types/sectionProps.js.map +1 -0
  285. package/dist/types/switchProps.js +2 -0
  286. package/dist/types/switchProps.js.map +1 -0
  287. package/dist/types/timePickerProps.js +2 -0
  288. package/dist/types/timePickerProps.js.map +1 -0
  289. package/dist/types/upload.js +2 -0
  290. package/dist/types/upload.js.map +1 -0
  291. package/dist/types/webhook.js +35 -2
  292. package/dist/types/webhook.js.map +1 -0
  293. package/dist/utils/color.js +5 -3
  294. package/dist/utils/color.js.map +1 -0
  295. package/dist/utils/compare.js +5 -3
  296. package/dist/utils/compare.js.map +1 -0
  297. package/dist/utils/date.js +20 -4
  298. package/dist/utils/date.js.map +1 -0
  299. package/dist/utils/formatNumber.js +86 -2
  300. package/dist/utils/formatNumber.js.map +1 -0
  301. package/dist/utils/formatTime.js +155 -5
  302. package/dist/utils/formatTime.js.map +1 -0
  303. package/dist/utils/loadable.js +11 -3
  304. package/dist/utils/loadable.js.map +1 -0
  305. package/dist/utils/mask.js +38 -2
  306. package/dist/utils/mask.js.map +1 -0
  307. package/dist/utils/number.js +12 -2
  308. package/dist/utils/number.js.map +1 -0
  309. package/dist/utils/sort.js +22 -2
  310. package/dist/utils/sort.js.map +1 -0
  311. package/dist/utils/uuidv4.js +9 -2
  312. package/dist/utils/uuidv4.js.map +1 -0
  313. package/dist/utils/validators.js +82 -2
  314. package/dist/utils/validators.js.map +1 -0
  315. package/package.json +1 -1
@@ -1,12 +1,72 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import a from '@mui/material/Box';
3
- import c from '@mui/material/Stack';
4
- import m from '@mui/material/Step';
5
- import s from '@mui/material/StepLabel';
6
- import l from '@mui/material/Stepper';
7
- import S from '../Icon';
2
+ import Box from '@mui/material/Box';
3
+ import Stack from '@mui/material/Stack';
4
+ import Step from '@mui/material/Step';
5
+ import StepLabel from '@mui/material/StepLabel';
6
+ import Stepper from '@mui/material/Stepper';
7
+ import Icon from '../Icon';
8
8
  import { StepConnector } from './styles';
9
9
 
10
- const b=({active:e,completed:o})=>jsx(c,{alignItems:"center",justifyContent:"center",sx:{width:24,height:24,color:"text.disabled",...e&&{color:"primary.main"}},children:o?jsx(S,{icon:"SIMPLE_CHECK",color:"primary.main"}):jsx(a,{sx:{width:8,height:8,borderRadius:"50%",backgroundColor:"currentColor"}})}),d=({steps:e,activeStep:o,showLabels:p=!0,sx:n,...i})=>jsx(l,{alternativeLabel:!0,activeStep:o,connector:jsx(StepConnector,{}),sx:n,...i,children:e.map(r=>jsx(m,{children:jsx(s,{StepIconComponent:b,sx:{"& .MuiStepLabel-label":{typography:"subtitle2"}},children:p&&r})},r))});var v=d;
10
+ const StepIcon = ({ active, completed }) => {
11
+ return /* @__PURE__ */ jsx(
12
+ Stack,
13
+ {
14
+ alignItems: "center",
15
+ justifyContent: "center",
16
+ sx: {
17
+ width: 24,
18
+ height: 24,
19
+ color: "text.disabled",
20
+ ...active && {
21
+ color: "primary.main"
22
+ }
23
+ },
24
+ children: completed ? /* @__PURE__ */ jsx(Icon, { icon: "SIMPLE_CHECK", color: "primary.main" }) : /* @__PURE__ */ jsx(
25
+ Box,
26
+ {
27
+ sx: {
28
+ width: 8,
29
+ height: 8,
30
+ borderRadius: "50%",
31
+ backgroundColor: "currentColor"
32
+ }
33
+ }
34
+ )
35
+ }
36
+ );
37
+ };
38
+ const Steps = ({
39
+ steps,
40
+ activeStep,
41
+ showLabels = true,
42
+ sx,
43
+ ...other
44
+ }) => {
45
+ return /* @__PURE__ */ jsx(
46
+ Stepper,
47
+ {
48
+ alternativeLabel: true,
49
+ activeStep,
50
+ connector: /* @__PURE__ */ jsx(StepConnector, {}),
51
+ sx,
52
+ ...other,
53
+ children: steps.map((label) => /* @__PURE__ */ jsx(Step, { children: /* @__PURE__ */ jsx(
54
+ StepLabel,
55
+ {
56
+ StepIconComponent: StepIcon,
57
+ sx: {
58
+ "& .MuiStepLabel-label": {
59
+ typography: "subtitle2"
60
+ }
61
+ },
62
+ children: showLabels && label
63
+ }
64
+ ) }, label))
65
+ }
66
+ );
67
+ };
68
+ var Steps_default = Steps;
11
69
 
12
- export { v as default };
70
+ export { Steps_default as default };
71
+ //# sourceMappingURL=out.js.map
72
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/Steps/index.tsx"],"names":[],"mappings":"AA0BQ;AA1BR,OAAO,SAAS;AAChB,OAAO,WAAW;AAClB,OAAO,UAAU;AACjB,OAAO,eAAe;AACtB,OAAO,aAAa;AAEpB,OAAO,UAAU;AAGjB,SAAS,qBAAqB;AAE9B,MAAM,WAAW,CAAC,EAAE,QAAQ,UAAU,MAAqB;AACzD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAW;AAAA,MACX,gBAAe;AAAA,MACf,IAAI;AAAA,QACF,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,GAAI,UAAU;AAAA,UACZ,OAAO;AAAA,QACT;AAAA,MACF;AAAA,MAEC,sBACC,oBAAC,QAAK,MAAK,gBAAe,OAAM,gBAAe,IAE/C;AAAA,QAAC;AAAA;AAAA,UACC,IAAI;AAAA,YACF,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,cAAc;AAAA,YACd,iBAAiB;AAAA,UACnB;AAAA;AAAA,MACF;AAAA;AAAA,EAEJ;AAEJ;AAEA,MAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA,GAAG;AACL,MAAkB;AAChB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,kBAAgB;AAAA,MAChB;AAAA,MACA,WAAW,oBAAC,iBAAc;AAAA,MAC1B;AAAA,MACC,GAAG;AAAA,MAEH,gBAAM,IAAI,WACT,oBAAC,QACC;AAAA,QAAC;AAAA;AAAA,UAEC,mBAAmB;AAAA,UACnB,IAAI;AAAA,YACF,yBAAyB;AAAA,cACvB,YAAY;AAAA,YACd;AAAA,UACF;AAAA,UAEC,wBAAc;AAAA;AAAA,MACjB,KAXS,KAYX,CACD;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,gBAAQ","sourcesContent":["import Box from '@mui/material/Box';\nimport Stack from '@mui/material/Stack';\nimport Step from '@mui/material/Step';\nimport StepLabel from '@mui/material/StepLabel';\nimport Stepper from '@mui/material/Stepper';\n\nimport Icon from '../Icon';\n\nimport { StepIconProps, StepsProps } from './props';\nimport { StepConnector } from './styles';\n\nconst StepIcon = ({ active, completed }: StepIconProps) => {\n return (\n <Stack\n alignItems=\"center\"\n justifyContent=\"center\"\n sx={{\n width: 24,\n height: 24,\n color: 'text.disabled',\n ...(active && {\n color: 'primary.main',\n }),\n }}\n >\n {completed ? (\n <Icon icon=\"SIMPLE_CHECK\" color=\"primary.main\" />\n ) : (\n <Box\n sx={{\n width: 8,\n height: 8,\n borderRadius: '50%',\n backgroundColor: 'currentColor',\n }}\n />\n )}\n </Stack>\n );\n};\n\nconst Steps = ({\n steps,\n activeStep,\n showLabels = true,\n sx,\n ...other\n}: StepsProps) => {\n return (\n <Stepper\n alternativeLabel\n activeStep={activeStep}\n connector={<StepConnector />}\n sx={sx}\n {...other}\n >\n {steps.map(label => (\n <Step key={label}>\n <StepLabel\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n StepIconComponent={StepIcon as any}\n sx={{\n '& .MuiStepLabel-label': {\n typography: 'subtitle2',\n },\n }}\n >\n {showLabels && label}\n </StepLabel>\n </Step>\n ))}\n </Stepper>\n );\n};\n\nexport default Steps;\n"]}
@@ -1,9 +1,91 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
- import l from '@mui/material/Stack';
2
+ import Stack from '@mui/material/Stack';
3
3
  import { styled, alpha } from '@mui/material/styles';
4
- import s from '@mui/material/Tab';
5
- import b from '../Icon';
4
+ import Tab from '@mui/material/Tab';
5
+ import Icon from '../Icon';
6
6
 
7
- const g=styled(({label:o,onClose:a,icon:i,hasChanges:p,...e})=>jsx(s,{disableRipple:!0,...e,label:jsxs(l,{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:[i,o,jsx(b,{icon:"CLOSE_MARK_BUTTON",width:16,onClick:t=>{a(),t.stopPropagation();}}),p&&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}}));var T=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;
8
88
 
9
- export { T 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
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { styled } from '@mui/material/styles';
3
- import r from '@mui/material/Tabs';
3
+ import Tabs from '@mui/material/Tabs';
4
4
 
5
- const 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}});var f=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 { f 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,6 +1,16 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Container, Label, Value } from './styles';
3
3
 
4
- const u=({data:e,...l})=>e.length===0?null:jsx(Container,{gap:1,...l,children:e.map(a=>[jsx(Label,{variant:"body2",children:a.label},`label:${a.id}`),jsx(Value,{variant:"body2",children:a.value},`value:${a.id}`)])});var y=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;
5
13
 
6
- export { y 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,18 +1,250 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { useState } from 'react';
3
- import h from '@mui/material/Checkbox';
4
- import C from '@mui/material/CircularProgress';
5
- import S from '@mui/material/Divider';
6
- import o from '@mui/material/Stack';
7
- import f 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';
8
8
  import { debounce } from '@mui/material/utils';
9
- import R from 'components/EmptyView';
10
- import L from 'components/Icon';
11
- import I from 'components/Result';
12
- import $ from 'components/Scrollbar';
13
- import A from 'components/SearchInput';
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
14
  import { Card, StyledSwapButton } from './styles';
15
15
 
16
- const U=({selectedItems:c,items:T,loading:v,searchText:g,onAdd:D,onRemove:P,search:z,itemsTitle:B,selectedItemsTitle:W,additionalContent:H,enableSearchInSelectedItems:k,selectedItemChild:x,onSearch:K})=>{const[m,N]=useState(""),_=debounce(K,400),s=T.filter(e=>!c.some(n=>n.id===e.id)),M=c.filter(e=>e.name?.toLowerCase().includes(m.toLowerCase())||e.id?.toLowerCase().includes(m.toLowerCase())),u=k&&m?M:c,[r,d]=useState([]),[i,p]=useState([]),O=()=>{D(r),d([]);},j=()=>{P(i),p([]);},G=e=>{p(e?u:[]);},V=e=>{d(e?s:[]);},q=(e,n)=>{p(n?l=>[...l,e]:l=>l.filter(y=>y.id!==e.id));},J=(e,n)=>{d(n?l=>[...l,e]:l=>l.filter(y=>y.id!==e.id));},b=e=>{e.key==="Enter"&&e.preventDefault();};return jsx(o,{children:jsxs(o,{direction:"row",alignItems:"center",gap:3,children:[jsx(Card,{flex:1,children:jsxs(o,{flex:1,overflow:"hidden",children:[jsxs(o,{direction:"row",gap:1,padding:2,children:[jsx(h,{size:"small",indeterminate:r.length>0&&r.length!==s.length,checked:r.length>0&&r.length===s.length,onChange:e=>V(e.target.checked)}),jsxs(o,{children:[jsx(f,{variant:"subtitle2",color:"text.primary",children:`${B} cadastrados(as)`}),jsx(f,{variant:"caption",color:"text.disabled",children:`${r.length}/${s.length} selecionados`})]})]}),jsx(S,{}),jsxs(o,{p:2,flex:1,overflow:"hidden",children:[jsxs(o,{direction:"row",gap:1,children:[jsx(A,{iconPosition:"start",placeholder:"Buscar",onKeyDown:b,size:"small",fullWidth:!0,trigger:"change",onSearch:e=>_(e)}),H]}),jsx(I,{isLoading:v,loading:jsx(o,{alignItems:"center",justifyContent:"center",flex:1,children:jsx(C,{})}),isEmpty:s.length===0,empty:jsx(R,{text:z?`Nenhum ${g} encontrado`:`Nenhum ${g} dispon\xEDvel`,sx:{svg:{height:140}}}),children:jsx($,{sx:{maxHeight:280},children:s.map(e=>jsxs(o,{gap:1,marginTop:"8px",children:[jsxs(o,{direction:"row",gap:.5,alignItems:"center",marginTop:"8px",children:[jsx(h,{size:"small",checked:r.includes(e),onChange:n=>J(e,n.target.checked)}),e.label]}),jsx(S,{})]},e.id))})})]})]})}),jsxs(o,{gap:3,children:[jsx(StyledSwapButton,{variant:"outlined",onClick:O,children:jsx(L,{icon:"ARROW_RIGHT_SIMPLE"})}),jsx(StyledSwapButton,{variant:"outlined",onClick:j,children:jsx(L,{icon:"ARROW_LEFT_SIMPLE"})})]}),jsx(Card,{flex:1,children:jsxs(o,{flex:1,overflow:"hidden",children:[jsxs(o,{direction:"row",gap:1,padding:2,children:[jsx(h,{size:"small",indeterminate:i.length>0&&i.length!==c.length,checked:i.length>0&&i.length===c.length,onChange:e=>G(e.target.checked)}),jsxs(o,{children:[jsx(f,{variant:"subtitle2",color:"text.primary",children:`${W} selecionados(as)`}),jsx(f,{variant:"caption",color:"text.disabled",children:`${i.length}/${c.length} selecionados`})]})]}),jsx(S,{}),jsxs(o,{p:2,gap:1,overflow:"hidden",children:[k&&jsx(A,{iconPosition:"start",placeholder:"Buscar",size:"small",fullWidth:!0,trigger:"change",onSearch:e=>N(e??""),onKeyDown:b}),jsx(I,{isLoading:v,loading:jsx(o,{alignItems:"center",justifyContent:"center",flex:1,children:jsx(C,{})}),isEmpty:u.length===0,empty:jsx(R,{text:m&&k?`Nenhum ${g} encontrado`:`Nenhum ${g} selecionado`,sx:{svg:{height:140},marginTop:"56px",backgroundColor:"transparent"}}),children:jsx($,{sx:{maxHeight:280},children:u.map(e=>jsxs(o,{gap:1,children:[jsxs(o,{direction:"row",gap:.5,alignItems:"center",marginTop:"8px",children:[jsxs(o,{direction:"row",children:[x&&x(e),jsx(h,{size:"small",checked:i.includes(e),onChange:n=>q(e,n.target.checked)})]}),e.label]}),jsx(S,{})]},e.id))})})]})]})})]})})};var Se=U;
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;
17
247
 
18
- export { Se 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":"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","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
1
  import { jsx } from 'react/jsx-runtime';
2
- import l from '@mui/material/Box';
2
+ import Box from '@mui/material/Box';
3
3
 
4
- const 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});var d=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 { d 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"]}