@orbe-agro/client-core 5.3.85 → 5.3.89

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 (502) hide show
  1. package/dist/@ecme/assets/styles/app.css +1 -1
  2. package/dist/@ecme/assets/styles/components/_dialog.css +1 -1
  3. package/dist/@ecme/assets/styles/components/_drawer.css +1 -1
  4. package/dist/@ecme/assets/styles/components/_scrollbar.css +1 -1
  5. package/dist/@ecme/assets/styles/components/_switcher.css +1 -1
  6. package/dist/@ecme/assets/styles/components/_upload.css +1 -1
  7. package/dist/@ecme/assets/styles/components/index.css +1 -1
  8. package/dist/@ecme/assets/styles/tailwind/index.css +1 -1
  9. package/dist/@ecme/auth/AuthProvider.js +58 -62
  10. package/dist/@ecme/auth/AuthProvider.js.map +1 -1
  11. package/dist/@ecme/components/docs/DemoCard/DemoCard.js +18 -19
  12. package/dist/@ecme/components/docs/DemoCard/DemoCard.js.map +1 -1
  13. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js +29 -30
  14. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
  15. package/dist/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.js +56 -56
  16. package/dist/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.js.map +1 -1
  17. package/dist/@ecme/components/shared/Affix.js +9 -10
  18. package/dist/@ecme/components/shared/Affix.js.map +1 -1
  19. package/dist/@ecme/components/shared/AutoComplete.js +27 -28
  20. package/dist/@ecme/components/shared/AutoComplete.js.map +1 -1
  21. package/dist/@ecme/components/shared/CalendarView.js +19 -20
  22. package/dist/@ecme/components/shared/CalendarView.js.map +1 -1
  23. package/dist/@ecme/components/shared/ConfirmDialog.js +16 -16
  24. package/dist/@ecme/components/shared/ConfirmDialog.js.map +1 -1
  25. package/dist/@ecme/components/shared/DataTable.js +151 -151
  26. package/dist/@ecme/components/shared/DataTable.js.map +1 -1
  27. package/dist/@ecme/components/shared/DebounceInput.js +11 -12
  28. package/dist/@ecme/components/shared/DebounceInput.js.map +1 -1
  29. package/dist/@ecme/components/shared/GanttChart/GanttChart.js +20 -20
  30. package/dist/@ecme/components/shared/GanttChart/GanttChart.js.map +1 -1
  31. package/dist/@ecme/components/shared/GanttChart/TaskListTable.js +22 -22
  32. package/dist/@ecme/components/shared/GanttChart/TaskListTable.js.map +1 -1
  33. package/dist/@ecme/components/shared/ImageGallery.js +18 -18
  34. package/dist/@ecme/components/shared/ImageGallery.js.map +1 -1
  35. package/dist/@ecme/components/shared/Masonry/Masonry.js +25 -25
  36. package/dist/@ecme/components/shared/Masonry/Masonry.js.map +1 -1
  37. package/dist/@ecme/components/shared/OtpInput.js +54 -56
  38. package/dist/@ecme/components/shared/OtpInput.js.map +1 -1
  39. package/dist/@ecme/components/shared/PasswordInput.js +6 -6
  40. package/dist/@ecme/components/shared/PasswordInput.js.map +1 -1
  41. package/dist/@ecme/components/shared/RegionMap.js +9 -9
  42. package/dist/@ecme/components/shared/RegionMap.js.map +1 -1
  43. package/dist/@ecme/components/shared/RichTextEditor/RichTextEditor.js +47 -47
  44. package/dist/@ecme/components/shared/RichTextEditor/RichTextEditor.js.map +1 -1
  45. package/dist/@ecme/components/shared/UsersAvatarGroup.js +24 -24
  46. package/dist/@ecme/components/shared/UsersAvatarGroup.js.map +1 -1
  47. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuContent.js +63 -69
  48. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuContent.js.map +1 -1
  49. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdown.js +48 -48
  50. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdown.js.map +1 -1
  51. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownContent.js +220 -231
  52. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownContent.js.map +1 -1
  53. package/dist/@ecme/components/template/LanguageSelector.js +10 -13
  54. package/dist/@ecme/components/template/LanguageSelector.js.map +1 -1
  55. package/dist/@ecme/components/template/Search.js +85 -92
  56. package/dist/@ecme/components/template/Search.js.map +1 -1
  57. package/dist/@ecme/components/template/ThemeConfigurator/DirectionSwitcher.js +18 -18
  58. package/dist/@ecme/components/template/ThemeConfigurator/DirectionSwitcher.js.map +1 -1
  59. package/dist/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.js +17 -17
  60. package/dist/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.js.map +1 -1
  61. package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js +59 -59
  62. package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js.map +1 -1
  63. package/dist/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.js +34 -34
  64. package/dist/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.js.map +1 -1
  65. package/dist/@ecme/components/ui/Alert/Alert.js +29 -29
  66. package/dist/@ecme/components/ui/Alert/Alert.js.map +1 -1
  67. package/dist/@ecme/components/ui/Avatar/AvatarGroup.js +30 -30
  68. package/dist/@ecme/components/ui/Avatar/AvatarGroup.js.map +1 -1
  69. package/dist/@ecme/components/ui/Button/Button.js +66 -67
  70. package/dist/@ecme/components/ui/Button/Button.js.map +1 -1
  71. package/dist/@ecme/components/ui/Card/Card.js +39 -40
  72. package/dist/@ecme/components/ui/Card/Card.js.map +1 -1
  73. package/dist/@ecme/components/ui/Checkbox/Checkbox.js +42 -42
  74. package/dist/@ecme/components/ui/Checkbox/Checkbox.js.map +1 -1
  75. package/dist/@ecme/components/ui/Checkbox/Group.js +27 -27
  76. package/dist/@ecme/components/ui/Checkbox/Group.js.map +1 -1
  77. package/dist/@ecme/components/ui/DatePicker/BasePicker.js +67 -67
  78. package/dist/@ecme/components/ui/DatePicker/BasePicker.js.map +1 -1
  79. package/dist/@ecme/components/ui/DatePicker/Calendar.js +18 -18
  80. package/dist/@ecme/components/ui/DatePicker/Calendar.js.map +1 -1
  81. package/dist/@ecme/components/ui/DatePicker/CalendarBase.js +77 -78
  82. package/dist/@ecme/components/ui/DatePicker/CalendarBase.js.map +1 -1
  83. package/dist/@ecme/components/ui/DatePicker/DatePicker.js +67 -71
  84. package/dist/@ecme/components/ui/DatePicker/DatePicker.js.map +1 -1
  85. package/dist/@ecme/components/ui/DatePicker/DatePickerRange.js +94 -98
  86. package/dist/@ecme/components/ui/DatePicker/DatePickerRange.js.map +1 -1
  87. package/dist/@ecme/components/ui/DatePicker/DateTimepicker.js +51 -58
  88. package/dist/@ecme/components/ui/DatePicker/DateTimepicker.js.map +1 -1
  89. package/dist/@ecme/components/ui/DatePicker/tables/DateTable.js +67 -67
  90. package/dist/@ecme/components/ui/DatePicker/tables/DateTable.js.map +1 -1
  91. package/dist/@ecme/components/ui/DatePicker/tables/components/Day.js +12 -12
  92. package/dist/@ecme/components/ui/DatePicker/tables/components/Day.js.map +1 -1
  93. package/dist/@ecme/components/ui/Dialog/Dialog.js +25 -25
  94. package/dist/@ecme/components/ui/Dialog/Dialog.js.map +1 -1
  95. package/dist/@ecme/components/ui/Drawer/Drawer.js +32 -32
  96. package/dist/@ecme/components/ui/Drawer/Drawer.js.map +1 -1
  97. package/dist/@ecme/components/ui/Dropdown/DropdownItem.js +58 -58
  98. package/dist/@ecme/components/ui/Dropdown/DropdownItem.js.map +1 -1
  99. package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js +99 -100
  100. package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js.map +1 -1
  101. package/dist/@ecme/components/ui/Dropdown/DropdownSubItem.js +26 -26
  102. package/dist/@ecme/components/ui/Dropdown/DropdownSubItem.js.map +1 -1
  103. package/dist/@ecme/components/ui/Form/FormContainer.js +17 -17
  104. package/dist/@ecme/components/ui/Form/FormContainer.js.map +1 -1
  105. package/dist/@ecme/components/ui/Form/FormItem.js +38 -38
  106. package/dist/@ecme/components/ui/Form/FormItem.js.map +1 -1
  107. package/dist/@ecme/components/ui/Input/Input.js +50 -52
  108. package/dist/@ecme/components/ui/Input/Input.js.map +1 -1
  109. package/dist/@ecme/components/ui/InputGroup/Addon.js +12 -13
  110. package/dist/@ecme/components/ui/InputGroup/Addon.js.map +1 -1
  111. package/dist/@ecme/components/ui/InputGroup/InputGroup.js +10 -11
  112. package/dist/@ecme/components/ui/InputGroup/InputGroup.js.map +1 -1
  113. package/dist/@ecme/components/ui/Notification/Notification.js +19 -19
  114. package/dist/@ecme/components/ui/Notification/Notification.js.map +1 -1
  115. package/dist/@ecme/components/ui/Pagination/Pagination.js +45 -45
  116. package/dist/@ecme/components/ui/Pagination/Pagination.js.map +1 -1
  117. package/dist/@ecme/components/ui/Radio/Group.js +28 -28
  118. package/dist/@ecme/components/ui/Radio/Group.js.map +1 -1
  119. package/dist/@ecme/components/ui/Radio/Radio.js +42 -42
  120. package/dist/@ecme/components/ui/Radio/Radio.js.map +1 -1
  121. package/dist/@ecme/components/ui/Segment/SegmentItem.js +53 -53
  122. package/dist/@ecme/components/ui/Segment/SegmentItem.js.map +1 -1
  123. package/dist/@ecme/components/ui/Select/Select.js +40 -41
  124. package/dist/@ecme/components/ui/Select/Select.js.map +1 -1
  125. package/dist/@ecme/components/ui/Steps/StepItem.js +33 -33
  126. package/dist/@ecme/components/ui/Steps/StepItem.js.map +1 -1
  127. package/dist/@ecme/components/ui/Switcher/Switcher.js +24 -24
  128. package/dist/@ecme/components/ui/Switcher/Switcher.js.map +1 -1
  129. package/dist/@ecme/components/ui/Tabs/TabNav.js +22 -22
  130. package/dist/@ecme/components/ui/Tabs/TabNav.js.map +1 -1
  131. package/dist/@ecme/components/ui/TimeInput/AmPmInput.js +25 -27
  132. package/dist/@ecme/components/ui/TimeInput/AmPmInput.js.map +1 -1
  133. package/dist/@ecme/components/ui/TimeInput/TimeInput.js +130 -135
  134. package/dist/@ecme/components/ui/TimeInput/TimeInput.js.map +1 -1
  135. package/dist/@ecme/components/ui/TimeInput/TimeInputField.js +22 -24
  136. package/dist/@ecme/components/ui/TimeInput/TimeInputField.js.map +1 -1
  137. package/dist/@ecme/components/ui/TimeInput/TimeInputRange.js +65 -68
  138. package/dist/@ecme/components/ui/TimeInput/TimeInputRange.js.map +1 -1
  139. package/dist/@ecme/components/ui/TimeInput/utils/createAmPmHandler.js +11 -12
  140. package/dist/@ecme/components/ui/TimeInput/utils/createAmPmHandler.js.map +1 -1
  141. package/dist/@ecme/components/ui/TimeInput/utils/createTimeHandler.js +19 -20
  142. package/dist/@ecme/components/ui/TimeInput/utils/createTimeHandler.js.map +1 -1
  143. package/dist/@ecme/components/ui/Upload/Upload.js +67 -68
  144. package/dist/@ecme/components/ui/Upload/Upload.js.map +1 -1
  145. package/dist/@ecme/components/ui/hooks/useCallbackRef.js +7 -10
  146. package/dist/@ecme/components/ui/hooks/useCallbackRef.js.map +1 -1
  147. package/dist/@ecme/components/ui/hooks/useRootClose.js +32 -32
  148. package/dist/@ecme/components/ui/hooks/useRootClose.js.map +1 -1
  149. package/dist/@ecme/components/ui/hooks/useTimeout.js +12 -13
  150. package/dist/@ecme/components/ui/hooks/useTimeout.js.map +1 -1
  151. package/dist/@ecme/components/ui/toast/ToastWrapper.js +58 -61
  152. package/dist/@ecme/components/ui/toast/ToastWrapper.js.map +1 -1
  153. package/dist/@ecme/components/ui/toast/toast.js +16 -19
  154. package/dist/@ecme/components/ui/toast/toast.js.map +1 -1
  155. package/dist/@ecme/components/view/Activity/ActivityEvent.js +63 -67
  156. package/dist/@ecme/components/view/Activity/ActivityEvent.js.map +1 -1
  157. package/dist/@ecme/components/view/ChatBox/components/Attachment.js +8 -9
  158. package/dist/@ecme/components/view/ChatBox/components/Attachment.js.map +1 -1
  159. package/dist/@ecme/components/view/ChatBox/components/ChatInput.js +37 -39
  160. package/dist/@ecme/components/view/ChatBox/components/ChatInput.js.map +1 -1
  161. package/dist/@ecme/components/view/ChatBox/components/Message.js +10 -10
  162. package/dist/@ecme/components/view/ChatBox/components/Message.js.map +1 -1
  163. package/dist/@ecme/components/view/CreditCardDialog/CreditCardDialog.js +36 -37
  164. package/dist/@ecme/components/view/CreditCardDialog/CreditCardDialog.js.map +1 -1
  165. package/dist/@ecme/components/view/TaskItem/TaskItem.js +33 -33
  166. package/dist/@ecme/components/view/TaskItem/TaskItem.js.map +1 -1
  167. package/dist/@ecme/mock/fakeApi/chatFakeApi.js +16 -18
  168. package/dist/@ecme/mock/fakeApi/chatFakeApi.js.map +1 -1
  169. package/dist/@ecme/mock/fakeApi/customersFakeApi.js +10 -11
  170. package/dist/@ecme/mock/fakeApi/customersFakeApi.js.map +1 -1
  171. package/dist/@ecme/mock/fakeApi/helpCenterFakeApi.js +10 -11
  172. package/dist/@ecme/mock/fakeApi/helpCenterFakeApi.js.map +1 -1
  173. package/dist/@ecme/mock/fakeApi/mailFakeApi.js +9 -10
  174. package/dist/@ecme/mock/fakeApi/mailFakeApi.js.map +1 -1
  175. package/dist/@ecme/mock/fakeApi/ordersFakeApi.js +9 -10
  176. package/dist/@ecme/mock/fakeApi/ordersFakeApi.js.map +1 -1
  177. package/dist/@ecme/mock/fakeApi/productsFakeApi.js +7 -8
  178. package/dist/@ecme/mock/fakeApi/productsFakeApi.js.map +1 -1
  179. package/dist/@ecme/mock/fakeApi/projectsFakeApi.js +10 -11
  180. package/dist/@ecme/mock/fakeApi/projectsFakeApi.js.map +1 -1
  181. package/dist/@ecme/utils/hooks/useInfiniteScroll.js +11 -11
  182. package/dist/@ecme/utils/hooks/useInfiniteScroll.js.map +1 -1
  183. package/dist/@ecme/utils/hooks/useMenuActive.js +11 -12
  184. package/dist/@ecme/utils/hooks/useMenuActive.js.map +1 -1
  185. package/dist/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.js +36 -37
  186. package/dist/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.js.map +1 -1
  187. package/dist/@ecme/views/auth/OtpVerification/OtpVerification.js +14 -14
  188. package/dist/@ecme/views/auth/OtpVerification/OtpVerification.js.map +1 -1
  189. package/dist/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.js +41 -42
  190. package/dist/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.js.map +1 -1
  191. package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js +59 -60
  192. package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js.map +1 -1
  193. package/dist/@ecme/views/auth/SignIn/components/OauthSignIn.js +27 -27
  194. package/dist/@ecme/views/auth/SignIn/components/OauthSignIn.js.map +1 -1
  195. package/dist/@ecme/views/auth/SignIn/components/SignInForm.js +57 -58
  196. package/dist/@ecme/views/auth/SignIn/components/SignInForm.js.map +1 -1
  197. package/dist/@ecme/views/auth/SignUp/components/SignUpForm.js +37 -38
  198. package/dist/@ecme/views/auth/SignUp/components/SignUpForm.js.map +1 -1
  199. package/dist/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.js +44 -45
  200. package/dist/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.js.map +1 -1
  201. package/dist/@ecme/views/concepts/accounts/Pricing/components/Plans.js +5 -5
  202. package/dist/@ecme/views/concepts/accounts/Pricing/components/Plans.js.map +1 -1
  203. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsAccessDialog.js +34 -35
  204. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsAccessDialog.js.map +1 -1
  205. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserAction.js +26 -26
  206. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserAction.js.map +1 -1
  207. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserTable.js +28 -29
  208. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserTable.js.map +1 -1
  209. package/dist/@ecme/views/concepts/accounts/RolesPermissions/hooks/useRolePermissonsUsers.js +8 -8
  210. package/dist/@ecme/views/concepts/accounts/RolesPermissions/hooks/useRolePermissonsUsers.js.map +1 -1
  211. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingMobileMenu.js +10 -11
  212. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingMobileMenu.js.map +1 -1
  213. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsBilling.js +48 -49
  214. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsBilling.js.map +1 -1
  215. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsMenu.js +14 -14
  216. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsMenu.js.map +1 -1
  217. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsProfile.js +102 -103
  218. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsProfile.js.map +1 -1
  219. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsSecurity.js +34 -35
  220. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsSecurity.js.map +1 -1
  221. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomAction.js +16 -16
  222. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomAction.js.map +1 -1
  223. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomContent.js +76 -78
  224. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomContent.js.map +1 -1
  225. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js +23 -23
  226. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js.map +1 -1
  227. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js +48 -49
  228. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js.map +1 -1
  229. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js +34 -35
  230. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js.map +1 -1
  231. package/dist/@ecme/views/concepts/ai/Chat/components/ChatMobileNav.js +11 -14
  232. package/dist/@ecme/views/concepts/ai/Chat/components/ChatMobileNav.js.map +1 -1
  233. package/dist/@ecme/views/concepts/ai/Chat/components/ChatSideNav.js +19 -19
  234. package/dist/@ecme/views/concepts/ai/Chat/components/ChatSideNav.js.map +1 -1
  235. package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js +22 -26
  236. package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js.map +1 -1
  237. package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js +18 -24
  238. package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js.map +1 -1
  239. package/dist/@ecme/views/concepts/ai/Image/components/ConfigDropdown.js +22 -22
  240. package/dist/@ecme/views/concepts/ai/Image/components/ConfigDropdown.js.map +1 -1
  241. package/dist/@ecme/views/concepts/ai/Image/components/GeneratorPrompt.js +31 -32
  242. package/dist/@ecme/views/concepts/ai/Image/components/GeneratorPrompt.js.map +1 -1
  243. package/dist/@ecme/views/concepts/ai/Image/components/ImageDialog.js +31 -32
  244. package/dist/@ecme/views/concepts/ai/Image/components/ImageDialog.js.map +1 -1
  245. package/dist/@ecme/views/concepts/calendar/Calendar/Calendar.js +38 -39
  246. package/dist/@ecme/views/concepts/calendar/Calendar/Calendar.js.map +1 -1
  247. package/dist/@ecme/views/concepts/calendar/Calendar/components/EventDialog.js +68 -69
  248. package/dist/@ecme/views/concepts/calendar/Calendar/components/EventDialog.js.map +1 -1
  249. package/dist/@ecme/views/concepts/chat/Chat/components/ChatBody.js +63 -66
  250. package/dist/@ecme/views/concepts/chat/Chat/components/ChatBody.js.map +1 -1
  251. package/dist/@ecme/views/concepts/chat/Chat/components/ChatList.js +21 -22
  252. package/dist/@ecme/views/concepts/chat/Chat/components/ChatList.js.map +1 -1
  253. package/dist/@ecme/views/concepts/chat/Chat/components/ContactInfoDrawer.js +84 -85
  254. package/dist/@ecme/views/concepts/chat/Chat/components/ContactInfoDrawer.js.map +1 -1
  255. package/dist/@ecme/views/concepts/customers/CustomerDetails/ActivitySection.js +19 -19
  256. package/dist/@ecme/views/concepts/customers/CustomerDetails/ActivitySection.js.map +1 -1
  257. package/dist/@ecme/views/concepts/customers/CustomerDetails/BillingSection.js +51 -58
  258. package/dist/@ecme/views/concepts/customers/CustomerDetails/BillingSection.js.map +1 -1
  259. package/dist/@ecme/views/concepts/customers/CustomerDetails/ProfileSection.js +76 -89
  260. package/dist/@ecme/views/concepts/customers/CustomerDetails/ProfileSection.js.map +1 -1
  261. package/dist/@ecme/views/concepts/customers/CustomerForm/AddressSection.js +104 -107
  262. package/dist/@ecme/views/concepts/customers/CustomerForm/AddressSection.js.map +1 -1
  263. package/dist/@ecme/views/concepts/customers/CustomerForm/CustomerForm.js +22 -22
  264. package/dist/@ecme/views/concepts/customers/CustomerForm/CustomerForm.js.map +1 -1
  265. package/dist/@ecme/views/concepts/customers/CustomerForm/OverviewSection.js +38 -39
  266. package/dist/@ecme/views/concepts/customers/CustomerForm/OverviewSection.js.map +1 -1
  267. package/dist/@ecme/views/concepts/customers/CustomerList/hooks/useCustomerList.js +20 -20
  268. package/dist/@ecme/views/concepts/customers/CustomerList/hooks/useCustomerList.js.map +1 -1
  269. package/dist/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.js +32 -33
  270. package/dist/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.js.map +1 -1
  271. package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.js +17 -18
  272. package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.js.map +1 -1
  273. package/dist/@ecme/views/concepts/help-center/ManageArticle/hooks/useManageArticle.js +5 -5
  274. package/dist/@ecme/views/concepts/help-center/ManageArticle/hooks/useManageArticle.js.map +1 -1
  275. package/dist/@ecme/views/concepts/help-center/SupportHub/components/TopSection.js +12 -13
  276. package/dist/@ecme/views/concepts/help-center/SupportHub/components/TopSection.js.map +1 -1
  277. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailAction.js +28 -29
  278. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailAction.js.map +1 -1
  279. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailContent.js +63 -67
  280. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailContent.js.map +1 -1
  281. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailTitle.js +8 -8
  282. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailTitle.js.map +1 -1
  283. package/dist/@ecme/views/concepts/mail/Mail/components/MailEditor.js +36 -37
  284. package/dist/@ecme/views/concepts/mail/Mail/components/MailEditor.js.map +1 -1
  285. package/dist/@ecme/views/concepts/mail/Mail/components/MailList.js +134 -137
  286. package/dist/@ecme/views/concepts/mail/Mail/components/MailList.js.map +1 -1
  287. package/dist/@ecme/views/concepts/orders/OrderDetails/components/OrderDetailProducts.js +17 -17
  288. package/dist/@ecme/views/concepts/orders/OrderDetails/components/OrderDetailProducts.js.map +1 -1
  289. package/dist/@ecme/views/concepts/orders/OrderEdit/OrderEdit.js +35 -35
  290. package/dist/@ecme/views/concepts/orders/OrderEdit/OrderEdit.js.map +1 -1
  291. package/dist/@ecme/views/concepts/orders/OrderForm/OrderForm.js +38 -38
  292. package/dist/@ecme/views/concepts/orders/OrderForm/OrderForm.js.map +1 -1
  293. package/dist/@ecme/views/concepts/orders/OrderForm/components/BillingAddressSection.js +108 -111
  294. package/dist/@ecme/views/concepts/orders/OrderForm/components/BillingAddressSection.js.map +1 -1
  295. package/dist/@ecme/views/concepts/orders/OrderForm/components/CustomerDetailSection.js +44 -45
  296. package/dist/@ecme/views/concepts/orders/OrderForm/components/CustomerDetailSection.js.map +1 -1
  297. package/dist/@ecme/views/concepts/orders/OrderForm/components/PaymentMethodSection.js +211 -214
  298. package/dist/@ecme/views/concepts/orders/OrderForm/components/PaymentMethodSection.js.map +1 -1
  299. package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableFilter.js +17 -17
  300. package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableFilter.js.map +1 -1
  301. package/dist/@ecme/views/concepts/orders/OrderList/hooks/useOrderlist.js +15 -15
  302. package/dist/@ecme/views/concepts/orders/OrderList/hooks/useOrderlist.js.map +1 -1
  303. package/dist/@ecme/views/concepts/products/ProductForm/ProductForm.js +4 -4
  304. package/dist/@ecme/views/concepts/products/ProductForm/ProductForm.js.map +1 -1
  305. package/dist/@ecme/views/concepts/products/ProductForm/components/AttributeSection.js +97 -100
  306. package/dist/@ecme/views/concepts/products/ProductForm/components/AttributeSection.js.map +1 -1
  307. package/dist/@ecme/views/concepts/products/ProductForm/components/GeneralSection.js +68 -71
  308. package/dist/@ecme/views/concepts/products/ProductForm/components/GeneralSection.js.map +1 -1
  309. package/dist/@ecme/views/concepts/products/ProductForm/components/ImageSection.js +85 -86
  310. package/dist/@ecme/views/concepts/products/ProductForm/components/ImageSection.js.map +1 -1
  311. package/dist/@ecme/views/concepts/products/ProductForm/components/PricingSection.js +121 -124
  312. package/dist/@ecme/views/concepts/products/ProductForm/components/PricingSection.js.map +1 -1
  313. package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSearch.js +11 -11
  314. package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSearch.js.map +1 -1
  315. package/dist/@ecme/views/concepts/products/ProductList/components/ProductTableFilter.js +17 -17
  316. package/dist/@ecme/views/concepts/products/ProductList/components/ProductTableFilter.js.map +1 -1
  317. package/dist/@ecme/views/concepts/products/ProductList/hooks/useProductList.js +17 -17
  318. package/dist/@ecme/views/concepts/products/ProductList/hooks/useProductList.js.map +1 -1
  319. package/dist/@ecme/views/concepts/projects/Issue/components/IssueBody.js +101 -105
  320. package/dist/@ecme/views/concepts/projects/Issue/components/IssueBody.js.map +1 -1
  321. package/dist/@ecme/views/concepts/projects/Issue/components/IssueFooter.js +57 -58
  322. package/dist/@ecme/views/concepts/projects/Issue/components/IssueFooter.js.map +1 -1
  323. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsHeader.js +51 -52
  324. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsHeader.js.map +1 -1
  325. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsOverview.js +22 -23
  326. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsOverview.js.map +1 -1
  327. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsSetting.js +45 -46
  328. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsSetting.js.map +1 -1
  329. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsTask.js +62 -65
  330. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsTask.js.map +1 -1
  331. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewProjectForm.js +52 -53
  332. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewProjectForm.js.map +1 -1
  333. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewTaskField.js +23 -25
  334. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewTaskField.js.map +1 -1
  335. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListContent.js +15 -15
  336. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListContent.js.map +1 -1
  337. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListHeader.js +16 -16
  338. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListHeader.js.map +1 -1
  339. package/dist/@ecme/views/concepts/projects/ProjectList/hooks/useProjectList.js +9 -9
  340. package/dist/@ecme/views/concepts/projects/ProjectList/hooks/useProjectList.js.map +1 -1
  341. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewColumnContent.js +40 -41
  342. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewColumnContent.js.map +1 -1
  343. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewTicketContent.js +33 -34
  344. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewTicketContent.js.map +1 -1
  345. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardCardList.js +33 -33
  346. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardCardList.js.map +1 -1
  347. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/TicketContent.js +203 -210
  348. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/TicketContent.js.map +1 -1
  349. package/dist/@ecme/views/concepts/projects/Tasks/components/AddTask.js +53 -56
  350. package/dist/@ecme/views/concepts/projects/Tasks/components/AddTask.js.map +1 -1
  351. package/dist/@ecme/views/concepts/projects/Tasks/components/TaskList.js +80 -83
  352. package/dist/@ecme/views/concepts/projects/Tasks/components/TaskList.js.map +1 -1
  353. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticHeader.js +6 -6
  354. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticHeader.js.map +1 -1
  355. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/Overview.js +21 -21
  356. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/Overview.js.map +1 -1
  357. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RevenueByChannel.js +27 -27
  358. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RevenueByChannel.js.map +1 -1
  359. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/SalesTarget.js +27 -27
  360. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/SalesTarget.js.map +1 -1
  361. package/dist/@ecme/views/dashboards/MarketingDashboard/components/CreateCampaign.js +59 -60
  362. package/dist/@ecme/views/dashboards/MarketingDashboard/components/CreateCampaign.js.map +1 -1
  363. package/dist/@ecme/views/dashboards/ProjectDashboard/components/CreateEventDialog.js +76 -77
  364. package/dist/@ecme/views/dashboards/ProjectDashboard/components/CreateEventDialog.js.map +1 -1
  365. package/dist/@ecme/views/dashboards/ProjectDashboard/components/UpcomingSchedule.js +30 -30
  366. package/dist/@ecme/views/dashboards/ProjectDashboard/components/UpcomingSchedule.js.map +1 -1
  367. package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/WithForm.js +21 -22
  368. package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/WithForm.js.map +1 -1
  369. package/dist/@ecme/views/guide/SharedComponentsDoc/components/ImageGalleryDoc/Example.js +15 -15
  370. package/dist/@ecme/views/guide/SharedComponentsDoc/components/ImageGalleryDoc/Example.js.map +1 -1
  371. package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/WithForm.js +20 -21
  372. package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/WithForm.js.map +1 -1
  373. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/WithForm.js +20 -21
  374. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/WithForm.js.map +1 -1
  375. package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/WithForm.js +20 -21
  376. package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/WithForm.js.map +1 -1
  377. package/dist/@ecme/views/ui-components/data-display/Table/Editable.js +17 -18
  378. package/dist/@ecme/views/ui-components/data-display/Table/Editable.js.map +1 -1
  379. package/dist/@ecme/views/ui-components/data-display/Table/PaginationTable.js +12 -12
  380. package/dist/@ecme/views/ui-components/data-display/Table/PaginationTable.js.map +1 -1
  381. package/dist/@ecme/views/ui-components/forms/FormControl/AsyncValidation.js +28 -29
  382. package/dist/@ecme/views/ui-components/forms/FormControl/AsyncValidation.js.map +1 -1
  383. package/dist/@ecme/views/ui-components/forms/FormControl/Basic.js +21 -22
  384. package/dist/@ecme/views/ui-components/forms/FormControl/Basic.js.map +1 -1
  385. package/dist/@ecme/views/ui-components/forms/FormControl/DependentValidation.js +24 -25
  386. package/dist/@ecme/views/ui-components/forms/FormControl/DependentValidation.js.map +1 -1
  387. package/dist/@ecme/views/ui-components/forms/FormControl/DynamicForm.js +75 -79
  388. package/dist/@ecme/views/ui-components/forms/FormControl/DynamicForm.js.map +1 -1
  389. package/dist/@ecme/views/ui-components/forms/FormControl/FieldValidation.js +19 -20
  390. package/dist/@ecme/views/ui-components/forms/FormControl/FieldValidation.js.map +1 -1
  391. package/dist/@ecme/views/ui-components/forms/FormControl/MixedFormControl.js +90 -91
  392. package/dist/@ecme/views/ui-components/forms/FormControl/MixedFormControl.js.map +1 -1
  393. package/dist/@ecme/views/ui-components/forms/FormControl/SchemaValidation.js +22 -23
  394. package/dist/@ecme/views/ui-components/forms/FormControl/SchemaValidation.js.map +1 -1
  395. package/dist/@types/base/configs/api.config.d.ts +0 -19
  396. package/dist/@types/base/configs/api.config.d.ts.map +1 -1
  397. package/dist/base/assets/styles/init.css +1 -1
  398. package/dist/base/components/forms/ArraysForms/GenericArrayNumberFormSection.js +24 -25
  399. package/dist/base/components/forms/ArraysForms/GenericArrayNumberFormSection.js.map +1 -1
  400. package/dist/base/components/forms/ArraysForms/GenericArrayStringFormSection.js +23 -24
  401. package/dist/base/components/forms/ArraysForms/GenericArrayStringFormSection.js.map +1 -1
  402. package/dist/base/components/forms/GenericFomrsSetValue/GenericNumberFormSectionPrice.js +30 -31
  403. package/dist/base/components/forms/GenericFomrsSetValue/GenericNumberFormSectionPrice.js.map +1 -1
  404. package/dist/base/components/forms/GenericFomrsSetValue/GenericStringFormSection.js +25 -26
  405. package/dist/base/components/forms/GenericFomrsSetValue/GenericStringFormSection.js.map +1 -1
  406. package/dist/base/components/forms/GenericForms/GenericArrayFormSection.js +49 -50
  407. package/dist/base/components/forms/GenericForms/GenericArrayFormSection.js.map +1 -1
  408. package/dist/base/components/forms/GenericForms/GenericNumberFormSection.js +27 -28
  409. package/dist/base/components/forms/GenericForms/GenericNumberFormSection.js.map +1 -1
  410. package/dist/base/components/forms/GenericForms/GenericStringFormSection.js +23 -24
  411. package/dist/base/components/forms/GenericForms/GenericStringFormSection.js.map +1 -1
  412. package/dist/base/components/forms/GenericForms/GenericUploadFormSection.js +27 -28
  413. package/dist/base/components/forms/GenericForms/GenericUploadFormSection.js.map +1 -1
  414. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPercentage.js +29 -30
  415. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPercentage.js.map +1 -1
  416. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPrice.js +27 -28
  417. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPrice.js.map +1 -1
  418. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionWeight.js +27 -28
  419. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionWeight.js.map +1 -1
  420. package/dist/base/components/shared/TransferirProcessoDialog.js +10 -10
  421. package/dist/base/components/shared/TransferirProcessoDialog.js.map +1 -1
  422. package/dist/base/components/tools/NavFilter.js +68 -75
  423. package/dist/base/components/tools/NavFilter.js.map +1 -1
  424. package/dist/base/configs/api.config.js +11 -14
  425. package/dist/base/configs/api.config.js.map +1 -1
  426. package/dist/base/hooks/adm/roles/useRolesList.js +11 -11
  427. package/dist/base/hooks/adm/roles/useRolesList.js.map +1 -1
  428. package/dist/base/hooks/adm/users/useUsersList.js +10 -10
  429. package/dist/base/hooks/adm/users/useUsersList.js.map +1 -1
  430. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerClienteList.js +5 -5
  431. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerClienteList.js.map +1 -1
  432. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerFornecedorList.js +7 -7
  433. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerFornecedorList.js.map +1 -1
  434. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerList.js +10 -10
  435. package/dist/base/hooks/dm/businessPartner/useBusinessPartnerList.js.map +1 -1
  436. package/dist/base/hooks/dm/canalDistribuicao/useCanalDistribuicaoByCodigoList.js +8 -8
  437. package/dist/base/hooks/dm/canalDistribuicao/useCanalDistribuicaoByCodigoList.js.map +1 -1
  438. package/dist/base/hooks/dm/canalDistribuicao/useCanalDistribuicaoList.js +8 -8
  439. package/dist/base/hooks/dm/canalDistribuicao/useCanalDistribuicaoList.js.map +1 -1
  440. package/dist/base/hooks/dm/centro/useCentroByCodigoList.js +13 -13
  441. package/dist/base/hooks/dm/centro/useCentroByCodigoList.js.map +1 -1
  442. package/dist/base/hooks/dm/centro/useCentroList.js +6 -6
  443. package/dist/base/hooks/dm/centro/useCentroList.js.map +1 -1
  444. package/dist/base/hooks/dm/condicaoPagamento/useCondicaoPagamentoList.js +4 -4
  445. package/dist/base/hooks/dm/condicaoPagamento/useCondicaoPagamentoList.js.map +1 -1
  446. package/dist/base/hooks/dm/deposito/useDepositoByCodigoList.js +9 -9
  447. package/dist/base/hooks/dm/deposito/useDepositoByCodigoList.js.map +1 -1
  448. package/dist/base/hooks/dm/deposito/useDepositoList.js +5 -5
  449. package/dist/base/hooks/dm/deposito/useDepositoList.js.map +1 -1
  450. package/dist/base/hooks/dm/deposito/useDepositosByCodigoCentroList.js +13 -13
  451. package/dist/base/hooks/dm/deposito/useDepositosByCodigoCentroList.js.map +1 -1
  452. package/dist/base/hooks/dm/equipeVenda/useEquipeVendaByCodigoList.js +8 -8
  453. package/dist/base/hooks/dm/equipeVenda/useEquipeVendaByCodigoList.js.map +1 -1
  454. package/dist/base/hooks/dm/equipeVenda/useEquipeVendaList.js +6 -6
  455. package/dist/base/hooks/dm/equipeVenda/useEquipeVendaList.js.map +1 -1
  456. package/dist/base/hooks/dm/escritorioVenda/useEscritorioVendaByCodigoList.js +10 -10
  457. package/dist/base/hooks/dm/escritorioVenda/useEscritorioVendaByCodigoList.js.map +1 -1
  458. package/dist/base/hooks/dm/escritorioVenda/useEscritorioVendaList.js +7 -7
  459. package/dist/base/hooks/dm/escritorioVenda/useEscritorioVendaList.js.map +1 -1
  460. package/dist/base/hooks/dm/formaPagamento/useFormaPagamentoByCodigoList.js +10 -10
  461. package/dist/base/hooks/dm/formaPagamento/useFormaPagamentoByCodigoList.js.map +1 -1
  462. package/dist/base/hooks/dm/formaPagamento/useFormaPagamentoList.js +1 -1
  463. package/dist/base/hooks/dm/formaPagamento/useFormaPagamentoList.js.map +1 -1
  464. package/dist/base/hooks/dm/grupoVenda/useGrupoVendaByCodigoList.js +11 -11
  465. package/dist/base/hooks/dm/grupoVenda/useGrupoVendaByCodigoList.js.map +1 -1
  466. package/dist/base/hooks/dm/grupoVenda/useGrupoVendaList.js +9 -9
  467. package/dist/base/hooks/dm/grupoVenda/useGrupoVendaList.js.map +1 -1
  468. package/dist/base/hooks/dm/incoterms/useIncotermsList.js +17 -18
  469. package/dist/base/hooks/dm/incoterms/useIncotermsList.js.map +1 -1
  470. package/dist/base/hooks/dm/produto/useProdutoByCodigoList.js +13 -13
  471. package/dist/base/hooks/dm/produto/useProdutoByCodigoList.js.map +1 -1
  472. package/dist/base/hooks/dm/produto/useProdutoByGrupoProdutoList.js +21 -21
  473. package/dist/base/hooks/dm/produto/useProdutoByGrupoProdutoList.js.map +1 -1
  474. package/dist/base/hooks/dm/produto/useProdutoFindList.js +8 -8
  475. package/dist/base/hooks/dm/produto/useProdutoFindList.js.map +1 -1
  476. package/dist/base/hooks/dm/produto/useProdutoFindMonitorList.js +11 -11
  477. package/dist/base/hooks/dm/produto/useProdutoFindMonitorList.js.map +1 -1
  478. package/dist/base/hooks/dm/produto/useProdutoIsPrecificadoRacaoList.js +9 -9
  479. package/dist/base/hooks/dm/produto/useProdutoIsPrecificadoRacaoList.js.map +1 -1
  480. package/dist/base/hooks/dm/setorAtividade/useSetorAtividadeList.js +5 -5
  481. package/dist/base/hooks/dm/setorAtividade/useSetorAtividadeList.js.map +1 -1
  482. package/dist/base/hooks/dm/tipoDocumentoVenda/useTipoDocumentoVendaByCodigoList.js +9 -9
  483. package/dist/base/hooks/dm/tipoDocumentoVenda/useTipoDocumentoVendaByCodigoList.js.map +1 -1
  484. package/dist/base/hooks/dm/tipoDocumentoVenda/useTipoDocumentoVendaList.js +9 -9
  485. package/dist/base/hooks/dm/tipoDocumentoVenda/useTipoDocumentoVendaList.js.map +1 -1
  486. package/dist/base/hooks/dm/tipoOrdemVenda/useTipoOrdemVendaByCodigoList.js +10 -10
  487. package/dist/base/hooks/dm/tipoOrdemVenda/useTipoOrdemVendaByCodigoList.js.map +1 -1
  488. package/dist/base/hooks/dm/tipoOrdemVenda/useTipoOrdemVendaList.js +9 -9
  489. package/dist/base/hooks/dm/tipoOrdemVenda/useTipoOrdemVendaList.js.map +1 -1
  490. package/dist/base/hooks/useList.js +10 -10
  491. package/dist/base/hooks/useList.js.map +1 -1
  492. package/dist/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.js +15 -15
  493. package/dist/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.js.map +1 -1
  494. package/dist/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.js +7 -7
  495. package/dist/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.js.map +1 -1
  496. package/dist/base/services/modules/transportadora/NaturezaCarga/NaturezaCargaService.js +5 -5
  497. package/dist/base/services/modules/transportadora/NaturezaCarga/NaturezaCargaService.js.map +1 -1
  498. package/dist/base/utils/functions/stringUtils.js +14 -15
  499. package/dist/base/utils/functions/stringUtils.js.map +1 -1
  500. package/lib/base/configs/api.config.ts +6 -7
  501. package/package.json +1 -1
  502. package/tsconfig.json +6 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EventDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/calendar/Calendar/components/EventDialog.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport Select from '@/components/ui/Select'\nimport DatePicker from '@/components/ui/DatePicker'\nimport Dialog from '@/components/ui/Dialog'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport Badge from '@/components/ui/Badge'\nimport hooks from '@/components/ui/hooks'\nimport { Controller, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport { TbChecks } from 'react-icons/tb'\nimport { components } from 'react-select'\nimport dayjs from 'dayjs'\nimport type { SelectedCell } from '../types'\nimport type { ControlProps, OptionProps } from 'react-select'\n\ntype FormModel = {\n title: string\n startDate: Date\n endDate: Date\n color: string\n}\n\nexport type EventParam = {\n id: string\n title: string\n start: string\n eventColor: string\n end?: string\n}\n\ntype ColorOption = {\n value: string\n label: string\n color: string\n}\n\ntype EventDialogProps = {\n open: boolean\n selected: SelectedCell\n onDialogOpen: (open: boolean) => void\n submit: (eventData: EventParam, type: string) => void\n}\n\nconst { Control } = components\n\nconst { useUniqueId } = hooks\n\nconst colorOptions = [\n {\n value: 'red',\n label: 'red',\n color: 'bg-red-400',\n },\n {\n value: 'orange',\n label: 'orange',\n color: 'bg-orange-400',\n },\n {\n value: 'yellow',\n label: 'yellow',\n color: 'bg-yellow-400',\n },\n {\n value: 'green',\n label: 'green',\n color: 'bg-green-400',\n },\n {\n value: 'blue',\n label: 'blue',\n color: 'bg-blue-400',\n },\n {\n value: 'purple',\n label: 'purple',\n color: 'bg-purple-400',\n },\n]\n\nconst CustomSelectOption = ({\n innerProps,\n label,\n data,\n isSelected,\n}: OptionProps<ColorOption>) => {\n return (\n <div\n className={`flex items-center justify-between rounded-lg p-2 ${\n isSelected\n ? 'bg-gray-100 dark:bg-gray-500'\n : 'hover:bg-gray-50 dark:hover:bg-gray-600'\n }`}\n {...innerProps}\n >\n <div className=\"flex items-center\">\n <Badge className={data.color} />\n <span className=\"ml-2 rtl:mr-2 capitalize\">{label}</span>\n </div>\n {isSelected && <TbChecks className=\"text-emerald-500 text-xl\" />}\n </div>\n )\n}\n\nconst CustomControl = ({ children, ...props }: ControlProps<ColorOption>) => {\n const selected = props.getValue()[0]\n\n return (\n <Control className=\"capitalize\" {...props}>\n {selected && (\n <Badge className={`${selected.color} ltr:ml-4 rtl:mr-4`} />\n )}\n {children}\n </Control>\n )\n}\n\nconst validationSchema = z.object({\n title: z.string().min(1, { message: 'Event title required' }),\n startDate: z.date({\n required_error: 'Please select a date',\n invalid_type_error: \"That's not a date!\",\n }),\n endDate: z.date({\n required_error: 'Please select a date',\n invalid_type_error: \"That's not a date!\",\n }),\n color: z.string().min(1, { message: 'Color required' }),\n})\n\nconst EventDialog = (props: EventDialogProps) => {\n const { submit, open, selected, onDialogOpen } = props\n\n const newId = useUniqueId('event-')\n\n const handleDialogClose = () => {\n onDialogOpen(false)\n }\n\n const onSubmit = (values: FormModel) => {\n const eventData: EventParam = {\n id: selected.id || newId,\n title: values.title,\n start: dayjs(values.startDate).format(),\n eventColor: values.color,\n }\n if (values.endDate) {\n eventData.end = dayjs(values.endDate).format()\n }\n console.log('eventData', eventData)\n submit?.(eventData, selected.type)\n handleDialogClose()\n }\n\n const {\n handleSubmit,\n reset,\n formState: { errors },\n control,\n } = useForm<FormModel>({\n resolver: zodResolver(validationSchema),\n })\n\n useEffect(() => {\n if (selected) {\n reset({\n title: selected.title || '',\n startDate: (selected.start &&\n dayjs(selected.start).toDate()) as Date,\n endDate: (selected.end && dayjs(selected.end).toDate()) as Date,\n color: selected.eventColor || colorOptions[0].value,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected])\n\n return (\n <Dialog\n isOpen={open}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h5 className=\"mb-4\">\n {selected.type === 'NEW' ? 'Add New Event' : 'Edit Event'}\n </h5>\n <Form\n className=\"flex-1 flex flex-col\"\n onSubmit={handleSubmit(onSubmit)}\n >\n <FormItem\n label=\"Event title\"\n invalid={Boolean(errors.title)}\n errorMessage={errors.title?.message}\n >\n <Controller\n name=\"title\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n autoComplete=\"off\"\n placeholder=\"Event title\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Start date\"\n invalid={Boolean(errors.startDate)}\n errorMessage={errors.startDate?.message}\n >\n <Controller\n name=\"startDate\"\n control={control}\n render={({ field }) => (\n <DatePicker\n value={field.value}\n onChange={field.onChange}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"End date\"\n invalid={Boolean(errors.endDate)}\n errorMessage={errors.endDate?.message}\n >\n <Controller\n name=\"endDate\"\n control={control}\n render={({ field }) => (\n <DatePicker\n value={field.value}\n onChange={field.onChange}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Event color\"\n asterisk={true}\n invalid={Boolean(errors.color)}\n errorMessage={errors.color?.message}\n >\n <Controller\n name=\"color\"\n control={control}\n render={({ field }) => (\n <Select<ColorOption>\n options={colorOptions}\n value={colorOptions.filter(\n (option) => option.value === field.value,\n )}\n components={{\n Option: CustomSelectOption,\n Control: CustomControl,\n }}\n onChange={(selected) => {\n field.onChange(selected?.value)\n }}\n />\n )}\n />\n </FormItem>\n <FormItem className=\"mb-0 text-right rtl:text-left\">\n <Button block variant=\"solid\" type=\"submit\">\n {selected.type === 'NEW' ? 'Create' : 'Update'}\n </Button>\n </FormItem>\n </Form>\n </Dialog>\n )\n}\n\nexport default EventDialog\n"],"names":["Control","components","useUniqueId","hooks","colorOptions","CustomSelectOption","innerProps","label","data","isSelected","jsxs","jsx","Badge","TbChecks","CustomControl","children","props","selected","validationSchema","z","EventDialog","submit","open","onDialogOpen","newId","handleDialogClose","onSubmit","values","eventData","dayjs","handleSubmit","reset","errors","control","useForm","zodResolver","useEffect","Dialog","Form","FormItem","_a","Controller","field","Input","_b","DatePicker","_c","_d","Select","option","Button"],"mappings":"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"}
1
+ {"version":3,"file":"EventDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/calendar/Calendar/components/EventDialog.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport Select from '@/components/ui/Select'\nimport DatePicker from '@/components/ui/DatePicker'\nimport Dialog from '@/components/ui/Dialog'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport Badge from '@/components/ui/Badge'\nimport hooks from '@/components/ui/hooks'\nimport { Controller, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport { TbChecks } from 'react-icons/tb'\nimport { components } from 'react-select'\nimport dayjs from 'dayjs'\nimport type { SelectedCell } from '../types'\nimport type { ControlProps, OptionProps } from 'react-select'\n\ntype FormModel = {\n title: string\n startDate: Date\n endDate: Date\n color: string\n}\n\nexport type EventParam = {\n id: string\n title: string\n start: string\n eventColor: string\n end?: string\n}\n\ntype ColorOption = {\n value: string\n label: string\n color: string\n}\n\ntype EventDialogProps = {\n open: boolean\n selected: SelectedCell\n onDialogOpen: (open: boolean) => void\n submit: (eventData: EventParam, type: string) => void\n}\n\nconst { Control } = components\n\nconst { useUniqueId } = hooks\n\nconst colorOptions = [\n {\n value: 'red',\n label: 'red',\n color: 'bg-red-400',\n },\n {\n value: 'orange',\n label: 'orange',\n color: 'bg-orange-400',\n },\n {\n value: 'yellow',\n label: 'yellow',\n color: 'bg-yellow-400',\n },\n {\n value: 'green',\n label: 'green',\n color: 'bg-green-400',\n },\n {\n value: 'blue',\n label: 'blue',\n color: 'bg-blue-400',\n },\n {\n value: 'purple',\n label: 'purple',\n color: 'bg-purple-400',\n },\n]\n\nconst CustomSelectOption = ({\n innerProps,\n label,\n data,\n isSelected,\n}: OptionProps<ColorOption>) => {\n return (\n <div\n className={`flex items-center justify-between rounded-lg p-2 ${\n isSelected\n ? 'bg-gray-100 dark:bg-gray-500'\n : 'hover:bg-gray-50 dark:hover:bg-gray-600'\n }`}\n {...innerProps}\n >\n <div className=\"flex items-center\">\n <Badge className={data.color} />\n <span className=\"ml-2 rtl:mr-2 capitalize\">{label}</span>\n </div>\n {isSelected && <TbChecks className=\"text-emerald-500 text-xl\" />}\n </div>\n )\n}\n\nconst CustomControl = ({ children, ...props }: ControlProps<ColorOption>) => {\n const selected = props.getValue()[0]\n\n return (\n <Control className=\"capitalize\" {...props}>\n {selected && (\n <Badge className={`${selected.color} ltr:ml-4 rtl:mr-4`} />\n )}\n {children}\n </Control>\n )\n}\n\nconst validationSchema = z.object({\n title: z.string().min(1, { message: 'Event title required' }),\n startDate: z.date({\n required_error: 'Please select a date',\n invalid_type_error: \"That's not a date!\",\n }),\n endDate: z.date({\n required_error: 'Please select a date',\n invalid_type_error: \"That's not a date!\",\n }),\n color: z.string().min(1, { message: 'Color required' }),\n})\n\nconst EventDialog = (props: EventDialogProps) => {\n const { submit, open, selected, onDialogOpen } = props\n\n const newId = useUniqueId('event-')\n\n const handleDialogClose = () => {\n onDialogOpen(false)\n }\n\n const onSubmit = (values: FormModel) => {\n const eventData: EventParam = {\n id: selected.id || newId,\n title: values.title,\n start: dayjs(values.startDate).format(),\n eventColor: values.color,\n }\n if (values.endDate) {\n eventData.end = dayjs(values.endDate).format()\n }\n console.log('eventData', eventData)\n submit?.(eventData, selected.type)\n handleDialogClose()\n }\n\n const {\n handleSubmit,\n reset,\n formState: { errors },\n control,\n } = useForm<FormModel>({\n resolver: zodResolver(validationSchema),\n })\n\n useEffect(() => {\n if (selected) {\n reset({\n title: selected.title || '',\n startDate: (selected.start &&\n dayjs(selected.start).toDate()) as Date,\n endDate: (selected.end && dayjs(selected.end).toDate()) as Date,\n color: selected.eventColor || colorOptions[0].value,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected])\n\n return (\n <Dialog\n isOpen={open}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h5 className=\"mb-4\">\n {selected.type === 'NEW' ? 'Add New Event' : 'Edit Event'}\n </h5>\n <Form\n className=\"flex-1 flex flex-col\"\n onSubmit={handleSubmit(onSubmit)}\n >\n <FormItem\n label=\"Event title\"\n invalid={Boolean(errors.title)}\n errorMessage={errors.title?.message}\n >\n <Controller\n name=\"title\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n autoComplete=\"off\"\n placeholder=\"Event title\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Start date\"\n invalid={Boolean(errors.startDate)}\n errorMessage={errors.startDate?.message}\n >\n <Controller\n name=\"startDate\"\n control={control}\n render={({ field }) => (\n <DatePicker\n value={field.value}\n onChange={field.onChange}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"End date\"\n invalid={Boolean(errors.endDate)}\n errorMessage={errors.endDate?.message}\n >\n <Controller\n name=\"endDate\"\n control={control}\n render={({ field }) => (\n <DatePicker\n value={field.value}\n onChange={field.onChange}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Event color\"\n asterisk={true}\n invalid={Boolean(errors.color)}\n errorMessage={errors.color?.message}\n >\n <Controller\n name=\"color\"\n control={control}\n render={({ field }) => (\n <Select<ColorOption>\n options={colorOptions}\n value={colorOptions.filter(\n (option) => option.value === field.value,\n )}\n components={{\n Option: CustomSelectOption,\n Control: CustomControl,\n }}\n onChange={(selected) => {\n field.onChange(selected?.value)\n }}\n />\n )}\n />\n </FormItem>\n <FormItem className=\"mb-0 text-right rtl:text-left\">\n <Button block variant=\"solid\" type=\"submit\">\n {selected.type === 'NEW' ? 'Create' : 'Update'}\n </Button>\n </FormItem>\n </Form>\n </Dialog>\n )\n}\n\nexport default EventDialog\n"],"names":["Control","components","useUniqueId","hooks","colorOptions","CustomSelectOption","innerProps","label","data","isSelected","jsxs","jsx","Badge","TbChecks","CustomControl","children","props","selected","validationSchema","z","EventDialog","submit","open","onDialogOpen","newId","handleDialogClose","onSubmit","values","eventData","dayjs","handleSubmit","reset","errors","control","useForm","zodResolver","useEffect","Dialog","Form","FormItem","Controller","field","Input","DatePicker","Select","option","Button"],"mappings":"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"}
@@ -1,20 +1,20 @@
1
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
2
- import { useRef as R, useState as h, useEffect as S, useMemo as T } from "react";
3
- import { Avatar as A } from "../../../../../components/ui/Avatar/index.js";
1
+ import { jsx as r, jsxs as c } from "react/jsx-runtime";
2
+ import { useRef as k, useState as u, useEffect as M, useMemo as R } from "react";
3
+ import { Avatar as S } from "../../../../../components/ui/Avatar/index.js";
4
4
  import "../../../../../components/ui/Card/index.js";
5
5
  import "../../../../../components/view/ChatBox/index.js";
6
- import E from "./ChatAction.js";
7
- import L from "../../../../../assets/svg/StartConverstation.js";
6
+ import T from "./ChatAction.js";
7
+ import A from "../../../../../assets/svg/StartConverstation.js";
8
8
  import { useChatStore as n } from "../store/chatStore.js";
9
- import { apiGetConversation as U } from "../../../../../services/ChatService.js";
10
- import B from "../../../../../utils/classNames.js";
11
- import D from "../../../../../utils/hooks/useResponsive.js";
12
- import f from "dayjs";
13
- import P from "lodash/uniqueId";
14
- import { TbChevronLeft as G } from "react-icons/tb";
15
- import F from "../../../../../components/ui/Card/Card.js";
16
- import H from "../../../../../components/view/ChatBox/ChatBox.js";
17
- const O = (s) => {
9
+ import { apiGetConversation as E } from "../../../../../services/ChatService.js";
10
+ import L from "../../../../../utils/classNames.js";
11
+ import U from "../../../../../utils/hooks/useResponsive.js";
12
+ import h from "dayjs";
13
+ import B from "lodash/uniqueId";
14
+ import { TbChevronLeft as D } from "react-icons/tb";
15
+ import P from "../../../../../components/ui/Card/Card.js";
16
+ import G from "../../../../../components/view/ChatBox/ChatBox.js";
17
+ const F = (s) => {
18
18
  switch (console.log("file.type", s.type), s.type) {
19
19
  case "image/jpg":
20
20
  case "image/jpeg":
@@ -30,132 +30,129 @@ const O = (s) => {
30
30
  default:
31
31
  return "misc";
32
32
  }
33
- }, oe = () => {
34
- var u, p;
35
- const s = R(null), t = n((e) => e.selectedChat), g = n((e) => e.conversationRecord), v = n(
33
+ }, ae = () => {
34
+ const s = k(null), t = n((e) => e.selectedChat), p = n((e) => e.conversationRecord), f = n(
36
35
  (e) => e.pushConversationRecord
37
- ), C = n((e) => e.setSelectedChat), x = n(
36
+ ), g = n((e) => e.setSelectedChat), v = n(
38
37
  (e) => e.pushConversationMessage
39
- ), y = n(
38
+ ), C = n(
40
39
  (e) => e.setContactInfoDrawer
41
- ), [q, m] = h(!1), [l, c] = h([]), { smaller: b } = D(), w = () => {
42
- var e;
43
- if ((e = s.current) != null && e.getScrollElement) {
44
- const a = s.current.getScrollElement();
45
- a && (a.scrollTop = a.scrollHeight);
40
+ ), [H, m] = u(!1), [l, i] = u([]), { smaller: x } = U(), y = () => {
41
+ if (s.current?.getScrollElement) {
42
+ const e = s.current.getScrollElement();
43
+ e && (e.scrollTop = e.scrollHeight);
46
44
  }
47
- }, N = () => {
48
- var e;
49
- y({
50
- userId: (e = t.user) == null ? void 0 : e.id,
45
+ }, b = () => {
46
+ C({
47
+ userId: t.user?.id,
51
48
  chatId: t.id,
52
49
  chatType: t.chatType,
53
50
  open: !0
54
51
  });
55
- }, I = (e) => {
56
- x(t.id, e), c((a) => (a.push(e), structuredClone(a)));
57
- }, j = async ({
52
+ }, w = (e) => {
53
+ v(t.id, e), i((a) => (a.push(e), structuredClone(a)));
54
+ }, N = async ({
58
55
  value: e,
59
56
  attachments: a
60
57
  }) => {
61
58
  const o = {
62
- id: P("chat-conversation-"),
59
+ id: B("chat-conversation-"),
63
60
  sender: {
64
61
  id: "1",
65
62
  name: "Angelina Gotelli",
66
63
  avatarImageUrl: "/img/avatars/thumb-1.jpg"
67
64
  },
68
65
  content: e,
69
- attachments: a == null ? void 0 : a.map((d) => ({
70
- type: O(d),
66
+ attachments: a?.map((d) => ({
67
+ type: F(d),
71
68
  source: d,
72
69
  mediaUrl: URL.createObjectURL(d)
73
70
  })),
74
- timestamp: f().toDate(),
71
+ timestamp: h().toDate(),
75
72
  type: "regular",
76
73
  isMyMessage: !0
77
74
  };
78
- I(o);
79
- }, k = {
75
+ w(o);
76
+ }, I = {
80
77
  header: {
81
- content: /* @__PURE__ */ i("div", { className: "flex items-center gap-2", children: [
82
- b.md && /* @__PURE__ */ r(
78
+ content: /* @__PURE__ */ c("div", { className: "flex items-center gap-2", children: [
79
+ x.md && /* @__PURE__ */ r(
83
80
  "button",
84
81
  {
85
82
  className: "text-xl hover:text-primary",
86
- onClick: () => C({}),
87
- children: /* @__PURE__ */ r(G, {})
83
+ onClick: () => g({}),
84
+ children: /* @__PURE__ */ r(D, {})
88
85
  }
89
86
  ),
90
- /* @__PURE__ */ i(
87
+ /* @__PURE__ */ c(
91
88
  "button",
92
89
  {
93
90
  className: "flex items-center gap-2",
94
91
  role: "button",
95
- onClick: N,
92
+ onClick: b,
96
93
  children: [
97
- /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(A, { src: (u = t.user) == null ? void 0 : u.avatarImageUrl }) }),
98
- /* @__PURE__ */ i("div", { className: "min-w-0 flex-1", children: [
99
- /* @__PURE__ */ r("div", { className: "flex justify-between", children: /* @__PURE__ */ r("div", { className: "font-bold heading-text truncate", children: (p = t.user) == null ? void 0 : p.name }) }),
100
- /* @__PURE__ */ r("div", { children: (t == null ? void 0 : t.chatType) === "groups" ? "click here for group info" : "last seen recently" })
94
+ /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(S, { src: t.user?.avatarImageUrl }) }),
95
+ /* @__PURE__ */ c("div", { className: "min-w-0 flex-1", children: [
96
+ /* @__PURE__ */ r("div", { className: "flex justify-between", children: /* @__PURE__ */ r("div", { className: "font-bold heading-text truncate", children: t.user?.name }) }),
97
+ /* @__PURE__ */ r("div", { children: t?.chatType === "groups" ? "click here for group info" : "last seen recently" })
101
98
  ] })
102
99
  ]
103
100
  }
104
101
  )
105
102
  ] }),
106
- extra: /* @__PURE__ */ r(E, { muted: t.muted }),
103
+ extra: /* @__PURE__ */ r(T, { muted: t.muted }),
107
104
  className: "bg-gray-100 dark:bg-gray-600 h-[100px]"
108
105
  }
109
106
  };
110
- S(() => {
107
+ M(() => {
111
108
  const e = async () => {
112
109
  m(!0);
113
- const a = g.find(
110
+ const a = p.find(
114
111
  (o) => o.id === t.id
115
112
  );
116
113
  if (a)
117
- c(a.conversation);
114
+ i(a.conversation);
118
115
  else {
119
- const o = await U({
116
+ const o = await E({
120
117
  id: t.id
121
118
  });
122
- c(o.conversation), v(o);
119
+ i(o.conversation), f(o);
123
120
  }
124
- m(!1), w();
121
+ m(!1), y();
125
122
  };
126
- t.id && (c([]), e());
123
+ t.id && (i([]), e());
127
124
  }, [t.id, l]);
128
- const M = T(() => l.map((e) => (e.timestamp = f.unix(e.timestamp).toDate(), e.isMyMessage && (e.showAvatar = !1), e)), [l]);
125
+ const j = R(() => l.map((e) => (e.timestamp = h.unix(e.timestamp).toDate(), e.isMyMessage && (e.showAvatar = !1), e)), [l]);
129
126
  return /* @__PURE__ */ r(
130
127
  "div",
131
128
  {
132
- className: B(
129
+ className: L(
133
130
  "w-full md:block",
134
131
  !t.id && "hidden"
135
132
  ),
136
133
  children: t.id ? /* @__PURE__ */ r(
137
- F,
134
+ P,
138
135
  {
139
136
  className: "flex-1 h-full max-h-full dark:border-gray-700",
140
137
  bodyClass: "h-[calc(100%-100px)] relative",
141
- ...k,
138
+ ...I,
142
139
  children: /* @__PURE__ */ r(
143
- H,
140
+ G,
144
141
  {
145
142
  ref: s,
146
- messageList: M,
143
+ messageList: j,
147
144
  placeholder: "Enter a prompt here",
148
145
  showAvatar: !0,
149
146
  avatarGap: !0,
150
147
  messageListClass: "h-[calc(100%-100px)]",
151
148
  bubbleClass: "max-w-[300px]",
152
- onInputChange: j
149
+ onInputChange: N
153
150
  }
154
151
  )
155
152
  }
156
- ) : /* @__PURE__ */ i("div", { className: "flex-1 h-full max-h-full flex flex-col items-center justify-center rounded-2xl border border-gray-200 dark:border-gray-800", children: [
157
- /* @__PURE__ */ r(L, { height: 250, width: 250 }),
158
- /* @__PURE__ */ i("div", { className: "mt-10 text-center", children: [
153
+ ) : /* @__PURE__ */ c("div", { className: "flex-1 h-full max-h-full flex flex-col items-center justify-center rounded-2xl border border-gray-200 dark:border-gray-800", children: [
154
+ /* @__PURE__ */ r(A, { height: 250, width: 250 }),
155
+ /* @__PURE__ */ c("div", { className: "mt-10 text-center", children: [
159
156
  /* @__PURE__ */ r("h3", { children: "Start Chatting!" }),
160
157
  /* @__PURE__ */ r("p", { className: "mt-2 text-base", children: "Pick a Conversation or Begin a New One" })
161
158
  ] })
@@ -164,6 +161,6 @@ const O = (s) => {
164
161
  );
165
162
  };
166
163
  export {
167
- oe as default
164
+ ae as default
168
165
  };
169
166
  //# sourceMappingURL=ChatBody.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatBody.js","sources":["../../../../../../../lib/@ecme/views/concepts/chat/Chat/components/ChatBody.tsx"],"sourcesContent":["import { useState, useEffect, useRef, useMemo } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Card from '@/components/ui/Card'\nimport ChatBox from '@/components/view/ChatBox'\nimport ChatAction from './ChatAction'\nimport StartConverstation from '@/assets/svg/StartConverstation'\nimport { useChatStore } from '../store/chatStore'\nimport { apiGetConversation } from '@/services/ChatService'\nimport classNames from '@/utils/classNames'\nimport useResponsive from '@/utils/hooks/useResponsive'\nimport dayjs from 'dayjs'\nimport uniqueId from 'lodash/uniqueId'\nimport { TbChevronLeft } from 'react-icons/tb'\nimport type { GetConversationResponse, Message, ChatType } from '../types'\nimport type { ScrollBarRef } from '@/components/ui/ScrollBar'\n\nconst getFileType = (file: File) => {\n console.log('file.type', file.type)\n switch (file.type) {\n case 'image/jpg':\n case 'image/jpeg':\n case 'image/png':\n case 'image/webp':\n return 'image'\n case 'video/mp4':\n case 'video/avi':\n return 'video'\n case 'audio/mp3':\n case 'audio/wav':\n return 'audio'\n default:\n return 'misc'\n }\n}\n\nconst ChatBody = () => {\n const scrollRef = useRef<ScrollBarRef>(null)\n const selectedChat = useChatStore((state) => state.selectedChat)\n const conversationRecord = useChatStore((state) => state.conversationRecord)\n const pushConversationRecord = useChatStore(\n (state) => state.pushConversationRecord,\n )\n const setSelectedChat = useChatStore((state) => state.setSelectedChat)\n const pushConversationMessage = useChatStore(\n (state) => state.pushConversationMessage,\n )\n const setContactInfoDrawer = useChatStore(\n (state) => state.setContactInfoDrawer,\n )\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, setIsFetchingConversation] = useState(false)\n const [conversation, setConversation] = useState<Message[]>([])\n\n const { smaller } = useResponsive()\n\n const scrollToBottom = () => {\n if (scrollRef.current?.getScrollElement) {\n const scrollElement = scrollRef.current.getScrollElement()\n if (scrollElement) {\n scrollElement.scrollTop = scrollElement.scrollHeight\n }\n }\n }\n\n const handleProfileClick = () => {\n setContactInfoDrawer({\n userId: selectedChat.user?.id as string,\n chatId: selectedChat.id as string,\n chatType: selectedChat.chatType as ChatType,\n open: true,\n })\n }\n\n const handlePushMessage = (message: Message) => {\n pushConversationMessage(selectedChat.id as string, message)\n setConversation((prevConversation) => {\n prevConversation.push(message)\n return structuredClone(prevConversation)\n })\n }\n\n const handleInputChange = async ({\n value,\n attachments,\n }: {\n value: string\n attachments?: File[]\n }) => {\n const newMessage: Message = {\n id: uniqueId('chat-conversation-'),\n sender: {\n id: '1',\n name: 'Angelina Gotelli',\n avatarImageUrl: '/img/avatars/thumb-1.jpg',\n },\n content: value,\n attachments: attachments?.map((attachment) => {\n return {\n type: getFileType(attachment),\n source: attachment,\n mediaUrl: URL.createObjectURL(attachment),\n }\n }),\n timestamp: dayjs().toDate(),\n type: 'regular',\n isMyMessage: true,\n }\n handlePushMessage(newMessage)\n }\n\n const cardHeaderProps = {\n header: {\n content: (\n <div className=\"flex items-center gap-2\">\n {smaller.md && (\n <button\n className=\"text-xl hover:text-primary\"\n onClick={() => setSelectedChat({})}\n >\n <TbChevronLeft />\n </button>\n )}\n <button\n className=\"flex items-center gap-2\"\n role=\"button\"\n onClick={handleProfileClick}\n >\n <div>\n <Avatar src={selectedChat.user?.avatarImageUrl} />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex justify-between\">\n <div className=\"font-bold heading-text truncate\">\n {selectedChat.user?.name}\n </div>\n </div>\n <div>\n {selectedChat?.chatType === 'groups'\n ? 'click here for group info'\n : 'last seen recently'}\n </div>\n </div>\n </button>\n </div>\n ),\n extra: <ChatAction muted={selectedChat.muted} />,\n className: 'bg-gray-100 dark:bg-gray-600 h-[100px]',\n },\n }\n\n useEffect(() => {\n const fetchConvesation = async () => {\n setIsFetchingConversation(true)\n\n const record = conversationRecord.find(\n (item) => item.id === selectedChat.id,\n )\n\n if (record) {\n setConversation(record.conversation)\n } else {\n const resp = await apiGetConversation<GetConversationResponse>({\n id: selectedChat.id as string,\n })\n setConversation(resp.conversation)\n pushConversationRecord(resp)\n }\n\n setIsFetchingConversation(false)\n scrollToBottom()\n }\n\n if (selectedChat.id) {\n setConversation([])\n fetchConvesation()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedChat.id, conversation])\n\n const messageList = useMemo(() => {\n return conversation.map((item) => {\n item.timestamp = dayjs\n .unix(item.timestamp as number)\n .toDate() as Date\n if (item.isMyMessage) {\n item.showAvatar = false\n }\n return item\n })\n }, [conversation])\n\n return (\n <div\n className={classNames(\n 'w-full md:block',\n !selectedChat.id && 'hidden',\n )}\n >\n {selectedChat.id ? (\n <Card\n className=\"flex-1 h-full max-h-full dark:border-gray-700\"\n bodyClass=\"h-[calc(100%-100px)] relative\"\n {...cardHeaderProps}\n >\n <ChatBox\n ref={scrollRef}\n messageList={messageList}\n placeholder=\"Enter a prompt here\"\n showAvatar={true}\n avatarGap={true}\n messageListClass=\"h-[calc(100%-100px)]\"\n bubbleClass=\"max-w-[300px]\"\n onInputChange={handleInputChange}\n />\n </Card>\n ) : (\n <div className=\"flex-1 h-full max-h-full flex flex-col items-center justify-center rounded-2xl border border-gray-200 dark:border-gray-800\">\n <StartConverstation height={250} width={250} />\n <div className=\"mt-10 text-center\">\n <h3>Start Chatting!</h3>\n <p className=\"mt-2 text-base\">\n Pick a Conversation or Begin a New One\n </p>\n </div>\n </div>\n )}\n </div>\n )\n}\n\nexport default ChatBody\n"],"names":["getFileType","file","ChatBody","scrollRef","useRef","selectedChat","useChatStore","state","conversationRecord","pushConversationRecord","setSelectedChat","pushConversationMessage","setContactInfoDrawer","_","setIsFetchingConversation","useState","conversation","setConversation","smaller","useResponsive","scrollToBottom","_a","scrollElement","handleProfileClick","handlePushMessage","message","prevConversation","handleInputChange","value","attachments","newMessage","uniqueId","attachment","dayjs","cardHeaderProps","jsxs","jsx","TbChevronLeft","Avatar","_b","ChatAction","useEffect","fetchConvesation","record","item","resp","apiGetConversation","messageList","useMemo","classNames","Card","ChatBox","StartConverstation"],"mappings":"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"}
1
+ {"version":3,"file":"ChatBody.js","sources":["../../../../../../../lib/@ecme/views/concepts/chat/Chat/components/ChatBody.tsx"],"sourcesContent":["import { useState, useEffect, useRef, useMemo } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Card from '@/components/ui/Card'\nimport ChatBox from '@/components/view/ChatBox'\nimport ChatAction from './ChatAction'\nimport StartConverstation from '@/assets/svg/StartConverstation'\nimport { useChatStore } from '../store/chatStore'\nimport { apiGetConversation } from '@/services/ChatService'\nimport classNames from '@/utils/classNames'\nimport useResponsive from '@/utils/hooks/useResponsive'\nimport dayjs from 'dayjs'\nimport uniqueId from 'lodash/uniqueId'\nimport { TbChevronLeft } from 'react-icons/tb'\nimport type { GetConversationResponse, Message, ChatType } from '../types'\nimport type { ScrollBarRef } from '@/components/ui/ScrollBar'\n\nconst getFileType = (file: File) => {\n console.log('file.type', file.type)\n switch (file.type) {\n case 'image/jpg':\n case 'image/jpeg':\n case 'image/png':\n case 'image/webp':\n return 'image'\n case 'video/mp4':\n case 'video/avi':\n return 'video'\n case 'audio/mp3':\n case 'audio/wav':\n return 'audio'\n default:\n return 'misc'\n }\n}\n\nconst ChatBody = () => {\n const scrollRef = useRef<ScrollBarRef>(null)\n const selectedChat = useChatStore((state) => state.selectedChat)\n const conversationRecord = useChatStore((state) => state.conversationRecord)\n const pushConversationRecord = useChatStore(\n (state) => state.pushConversationRecord,\n )\n const setSelectedChat = useChatStore((state) => state.setSelectedChat)\n const pushConversationMessage = useChatStore(\n (state) => state.pushConversationMessage,\n )\n const setContactInfoDrawer = useChatStore(\n (state) => state.setContactInfoDrawer,\n )\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, setIsFetchingConversation] = useState(false)\n const [conversation, setConversation] = useState<Message[]>([])\n\n const { smaller } = useResponsive()\n\n const scrollToBottom = () => {\n if (scrollRef.current?.getScrollElement) {\n const scrollElement = scrollRef.current.getScrollElement()\n if (scrollElement) {\n scrollElement.scrollTop = scrollElement.scrollHeight\n }\n }\n }\n\n const handleProfileClick = () => {\n setContactInfoDrawer({\n userId: selectedChat.user?.id as string,\n chatId: selectedChat.id as string,\n chatType: selectedChat.chatType as ChatType,\n open: true,\n })\n }\n\n const handlePushMessage = (message: Message) => {\n pushConversationMessage(selectedChat.id as string, message)\n setConversation((prevConversation) => {\n prevConversation.push(message)\n return structuredClone(prevConversation)\n })\n }\n\n const handleInputChange = async ({\n value,\n attachments,\n }: {\n value: string\n attachments?: File[]\n }) => {\n const newMessage: Message = {\n id: uniqueId('chat-conversation-'),\n sender: {\n id: '1',\n name: 'Angelina Gotelli',\n avatarImageUrl: '/img/avatars/thumb-1.jpg',\n },\n content: value,\n attachments: attachments?.map((attachment) => {\n return {\n type: getFileType(attachment),\n source: attachment,\n mediaUrl: URL.createObjectURL(attachment),\n }\n }),\n timestamp: dayjs().toDate(),\n type: 'regular',\n isMyMessage: true,\n }\n handlePushMessage(newMessage)\n }\n\n const cardHeaderProps = {\n header: {\n content: (\n <div className=\"flex items-center gap-2\">\n {smaller.md && (\n <button\n className=\"text-xl hover:text-primary\"\n onClick={() => setSelectedChat({})}\n >\n <TbChevronLeft />\n </button>\n )}\n <button\n className=\"flex items-center gap-2\"\n role=\"button\"\n onClick={handleProfileClick}\n >\n <div>\n <Avatar src={selectedChat.user?.avatarImageUrl} />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex justify-between\">\n <div className=\"font-bold heading-text truncate\">\n {selectedChat.user?.name}\n </div>\n </div>\n <div>\n {selectedChat?.chatType === 'groups'\n ? 'click here for group info'\n : 'last seen recently'}\n </div>\n </div>\n </button>\n </div>\n ),\n extra: <ChatAction muted={selectedChat.muted} />,\n className: 'bg-gray-100 dark:bg-gray-600 h-[100px]',\n },\n }\n\n useEffect(() => {\n const fetchConvesation = async () => {\n setIsFetchingConversation(true)\n\n const record = conversationRecord.find(\n (item) => item.id === selectedChat.id,\n )\n\n if (record) {\n setConversation(record.conversation)\n } else {\n const resp = await apiGetConversation<GetConversationResponse>({\n id: selectedChat.id as string,\n })\n setConversation(resp.conversation)\n pushConversationRecord(resp)\n }\n\n setIsFetchingConversation(false)\n scrollToBottom()\n }\n\n if (selectedChat.id) {\n setConversation([])\n fetchConvesation()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedChat.id, conversation])\n\n const messageList = useMemo(() => {\n return conversation.map((item) => {\n item.timestamp = dayjs\n .unix(item.timestamp as number)\n .toDate() as Date\n if (item.isMyMessage) {\n item.showAvatar = false\n }\n return item\n })\n }, [conversation])\n\n return (\n <div\n className={classNames(\n 'w-full md:block',\n !selectedChat.id && 'hidden',\n )}\n >\n {selectedChat.id ? (\n <Card\n className=\"flex-1 h-full max-h-full dark:border-gray-700\"\n bodyClass=\"h-[calc(100%-100px)] relative\"\n {...cardHeaderProps}\n >\n <ChatBox\n ref={scrollRef}\n messageList={messageList}\n placeholder=\"Enter a prompt here\"\n showAvatar={true}\n avatarGap={true}\n messageListClass=\"h-[calc(100%-100px)]\"\n bubbleClass=\"max-w-[300px]\"\n onInputChange={handleInputChange}\n />\n </Card>\n ) : (\n <div className=\"flex-1 h-full max-h-full flex flex-col items-center justify-center rounded-2xl border border-gray-200 dark:border-gray-800\">\n <StartConverstation height={250} width={250} />\n <div className=\"mt-10 text-center\">\n <h3>Start Chatting!</h3>\n <p className=\"mt-2 text-base\">\n Pick a Conversation or Begin a New One\n </p>\n </div>\n </div>\n )}\n </div>\n )\n}\n\nexport default ChatBody\n"],"names":["getFileType","file","ChatBody","scrollRef","useRef","selectedChat","useChatStore","state","conversationRecord","pushConversationRecord","setSelectedChat","pushConversationMessage","setContactInfoDrawer","_","setIsFetchingConversation","useState","conversation","setConversation","smaller","useResponsive","scrollToBottom","scrollElement","handleProfileClick","handlePushMessage","message","prevConversation","handleInputChange","value","attachments","newMessage","uniqueId","attachment","dayjs","cardHeaderProps","jsxs","jsx","TbChevronLeft","Avatar","ChatAction","useEffect","fetchConvesation","record","item","resp","apiGetConversation","messageList","useMemo","classNames","Card","ChatBox","StartConverstation"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
- import { useRef as k, useState as d, useEffect as h } from "react";
2
+ import { useRef as k, useState as o, useEffect as d } from "react";
3
3
  import { Avatar as I } from "../../../../../components/ui/Avatar/index.js";
4
4
  import "../../../../../components/ui/Badge/index.js";
5
5
  import "../../../../../components/ui/ScrollBar/index.js";
@@ -14,44 +14,43 @@ import E from "dayjs";
14
14
  import O from "../../../../../components/ui/ScrollBar/ScrollBar.js";
15
15
  import Q from "../../../../../components/ui/Badge/Badge.js";
16
16
  const re = () => {
17
- const i = r((e) => e.chats), f = r((e) => e.chatsFetched), m = r((e) => e.selectedChat), u = r((e) => e.setSelectedChat), p = r((e) => e.setMobileSidebar), g = r((e) => e.selectedChatType), n = r(
17
+ const h = r((e) => e.chats), i = r((e) => e.chatsFetched), f = r((e) => e.selectedChat), m = r((e) => e.setSelectedChat), u = r((e) => e.setMobileSidebar), p = r((e) => e.selectedChatType), c = r(
18
18
  (e) => e.setSelectedChatType
19
- ), b = r((e) => e.setChatRead), c = k(null), [l, C] = d(!1), [o, x] = d(""), { fetchChats: v } = R();
20
- h(() => {
21
- f || v();
22
- }, []), h(() => {
23
- var e, s;
24
- l ? (e = c.current) == null || e.focus() : (s = c.current) == null || s.blur();
19
+ ), g = r((e) => e.setChatRead), s = k(null), [l, b] = o(!1), [n, C] = o(""), { fetchChats: x } = R();
20
+ d(() => {
21
+ i || x();
22
+ }, []), d(() => {
23
+ l ? s.current?.focus() : s.current?.blur();
25
24
  }, [l]);
26
- const y = ({
25
+ const v = ({
27
26
  id: e,
28
- user: s,
27
+ user: S,
29
28
  muted: T,
30
29
  chatType: w,
31
30
  unread: j
32
31
  }) => {
33
- j > 0 && b(e), u({
32
+ j > 0 && g(e), m({
34
33
  id: e,
35
- user: s,
34
+ user: S,
36
35
  muted: T,
37
36
  chatType: w
38
- }), p(!1);
37
+ }), u(!1);
39
38
  };
40
- function N(e) {
41
- e.target.value.length > 0 && n(""), e.target.value.length === 0 && n("personal"), x(e.target.value);
39
+ function y(e) {
40
+ e.target.value.length > 0 && c(""), e.target.value.length === 0 && c("personal"), C(e.target.value);
42
41
  }
43
- const S = D(N, 500);
42
+ const N = D(y, 500);
44
43
  return /* @__PURE__ */ a("div", { className: "flex flex-col justify-between h-full", children: [
45
44
  /* @__PURE__ */ a("div", { className: "mb-4", children: [
46
45
  /* @__PURE__ */ a("div", { className: "flex items-center justify-between mb-4", children: [
47
46
  l ? /* @__PURE__ */ t(
48
47
  "input",
49
48
  {
50
- ref: c,
49
+ ref: s,
51
50
  className: "flex-1 h-full placeholder:text-gray-400 placeholder:text-base placeholder:font-normal bg-transparent focus:outline-none heading-text font-bold",
52
51
  placeholder: "Search chat",
53
52
  onChange: (e) => {
54
- S(e);
53
+ N(e);
55
54
  }
56
55
  }
57
56
  ) : /* @__PURE__ */ t("h4", { children: "Chat" }),
@@ -61,7 +60,7 @@ const re = () => {
61
60
  className: "close-button text-lg",
62
61
  type: "button",
63
62
  onClick: () => {
64
- C(!l);
63
+ b(!l);
65
64
  },
66
65
  children: l ? /* @__PURE__ */ t(L, {}) : /* @__PURE__ */ t(M, {})
67
66
  }
@@ -69,15 +68,15 @@ const re = () => {
69
68
  ] }),
70
69
  /* @__PURE__ */ t(B, {})
71
70
  ] }),
72
- /* @__PURE__ */ t(O, { className: "h-[calc(100%-150px)] overflow-y-auto", children: /* @__PURE__ */ t("div", { className: "flex flex-col gap-2 h-full", children: i.filter((e) => o ? e.name.toLowerCase().includes(o) : g === e.chatType).map((e) => /* @__PURE__ */ a(
71
+ /* @__PURE__ */ t(O, { className: "h-[calc(100%-150px)] overflow-y-auto", children: /* @__PURE__ */ t("div", { className: "flex flex-col gap-2 h-full", children: h.filter((e) => n ? e.name.toLowerCase().includes(n) : p === e.chatType).map((e) => /* @__PURE__ */ a(
73
72
  "div",
74
73
  {
75
74
  className: A(
76
75
  "py-3 px-2 flex items-center gap-2 justify-between rounded-xl hover:bg-gray-100 dark:hover:bg-gray-700 relative cursor-pointer select-none",
77
- m.id === e.id && "bg-gray-100 dark:bg-gray-700"
76
+ f.id === e.id && "bg-gray-100 dark:bg-gray-700"
78
77
  ),
79
78
  role: "button",
80
- onClick: () => y({
79
+ onClick: () => v({
81
80
  id: e.id,
82
81
  user: {
83
82
  id: e.userId || e.groupId,
@@ -1 +1 @@
1
- {"version":3,"file":"ChatList.js","sources":["../../../../../../../lib/@ecme/views/concepts/chat/Chat/components/ChatList.tsx"],"sourcesContent":["import { useRef, useState, useEffect } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Badge from '@/components/ui/Badge'\nimport ScrollBar from '@/components/ui/ScrollBar'\nimport ChatSegment from './ChatSegment'\nimport NewChat from './NewChat'\nimport { useChatStore } from '../store/chatStore'\nimport useChat from '../hooks/useChat'\nimport classNames from '@/utils/classNames'\nimport useDebounce from '@/utils/hooks/useDebounce'\nimport { TbVolumeOff, TbSearch, TbX } from 'react-icons/tb'\nimport dayjs from 'dayjs'\nimport type { ChatType } from '../types'\nimport type { ChangeEvent } from 'react'\n\nconst ChatList = () => {\n const chats = useChatStore((state) => state.chats)\n const chatsFetched = useChatStore((state) => state.chatsFetched)\n const selectedChat = useChatStore((state) => state.selectedChat)\n const setSelectedChat = useChatStore((state) => state.setSelectedChat)\n const setMobileSidebar = useChatStore((state) => state.setMobileSidebar)\n const selectedChatType = useChatStore((state) => state.selectedChatType)\n const setSelectedChatType = useChatStore(\n (state) => state.setSelectedChatType,\n )\n const setChatRead = useChatStore((state) => state.setChatRead)\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n const [showSearchBar, setShowSearchBar] = useState(false)\n const [queryText, setQueryText] = useState('')\n\n const { fetchChats } = useChat()\n\n useEffect(() => {\n if (!chatsFetched) {\n fetchChats()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n useEffect(() => {\n if (showSearchBar) {\n inputRef.current?.focus()\n } else {\n inputRef.current?.blur()\n }\n }, [showSearchBar])\n\n const handleChatClick = ({\n id,\n user,\n muted,\n chatType,\n unread,\n }: {\n id: string\n user: { id: string; avatarImageUrl: string; name: string }\n muted: boolean\n chatType: ChatType\n unread: number\n }) => {\n if (unread > 0) {\n setChatRead(id)\n }\n\n setSelectedChat({\n id,\n user,\n muted,\n chatType,\n })\n setMobileSidebar(false)\n }\n\n function handleDebounceFn(e: ChangeEvent<HTMLInputElement>) {\n if (e.target.value.length > 0) {\n setSelectedChatType('')\n }\n\n if (e.target.value.length === 0) {\n setSelectedChatType('personal')\n }\n\n setQueryText(e.target.value)\n }\n\n const debounceFn = useDebounce(handleDebounceFn, 500)\n\n const handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n debounceFn(e)\n }\n\n const handleSearchToggleClick = () => {\n setShowSearchBar(!showSearchBar)\n }\n\n return (\n <div className=\"flex flex-col justify-between h-full\">\n <div className=\"mb-4\">\n <div className=\"flex items-center justify-between mb-4\">\n {showSearchBar ? (\n <input\n ref={inputRef}\n className=\"flex-1 h-full placeholder:text-gray-400 placeholder:text-base placeholder:font-normal bg-transparent focus:outline-none heading-text font-bold\"\n placeholder=\"Search chat\"\n onChange={handleInputChange}\n />\n ) : (\n <h4>Chat</h4>\n )}\n <button\n className=\"close-button text-lg\"\n type=\"button\"\n onClick={handleSearchToggleClick}\n >\n {showSearchBar ? <TbX /> : <TbSearch />}\n </button>\n </div>\n <ChatSegment />\n </div>\n <ScrollBar className=\"h-[calc(100%-150px)] overflow-y-auto\">\n <div className=\"flex flex-col gap-2 h-full\">\n {chats\n .filter((item) => {\n if (queryText) {\n return item.name\n .toLowerCase()\n .includes(queryText)\n }\n\n return selectedChatType === item.chatType\n })\n .map((item) => (\n <div\n key={item.id}\n className={classNames(\n 'py-3 px-2 flex items-center gap-2 justify-between rounded-xl hover:bg-gray-100 dark:hover:bg-gray-700 relative cursor-pointer select-none',\n selectedChat.id === item.id &&\n 'bg-gray-100 dark:bg-gray-700',\n )}\n role=\"button\"\n onClick={() =>\n handleChatClick({\n id: item.id,\n user: {\n id: item.userId || item.groupId,\n avatarImageUrl: item.avatar,\n name: item.name,\n },\n muted: item.muted,\n chatType: item.chatType,\n unread: item.unread,\n })\n }\n >\n <div className=\"flex items-center gap-2 min-w-0 flex-1\">\n <div>\n <Avatar src={item.avatar} />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex justify-between\">\n <div className=\"font-bold heading-text truncate flex gap-2 items-center\">\n <span>{item.name}</span>\n {item.muted && (\n <TbVolumeOff className=\"opacity-60\" />\n )}\n </div>\n </div>\n <div className=\"truncate\">\n {item.lastConversation}\n </div>\n </div>\n </div>\n <div className=\"flex gap-1 items-center\">\n <small className=\"font-semibold\">\n {dayjs\n .unix(item.time)\n .format('hh:mm A')}\n </small>\n {item.unread > 0 && (\n <Badge className=\"bg-primary\" />\n )}\n </div>\n </div>\n ))}\n </div>\n </ScrollBar>\n <NewChat />\n </div>\n )\n}\n\nexport default ChatList\n"],"names":["ChatList","chats","useChatStore","state","chatsFetched","selectedChat","setSelectedChat","setMobileSidebar","selectedChatType","setSelectedChatType","setChatRead","inputRef","useRef","showSearchBar","setShowSearchBar","useState","queryText","setQueryText","fetchChats","useChat","useEffect","_a","_b","handleChatClick","id","user","muted","chatType","unread","handleDebounceFn","debounceFn","useDebounce","jsxs","jsx","TbX","TbSearch","ChatSegment","ScrollBar","item","classNames","Avatar","TbVolumeOff","dayjs","Badge","NewChat"],"mappings":"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"}
1
+ {"version":3,"file":"ChatList.js","sources":["../../../../../../../lib/@ecme/views/concepts/chat/Chat/components/ChatList.tsx"],"sourcesContent":["import { useRef, useState, useEffect } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Badge from '@/components/ui/Badge'\nimport ScrollBar from '@/components/ui/ScrollBar'\nimport ChatSegment from './ChatSegment'\nimport NewChat from './NewChat'\nimport { useChatStore } from '../store/chatStore'\nimport useChat from '../hooks/useChat'\nimport classNames from '@/utils/classNames'\nimport useDebounce from '@/utils/hooks/useDebounce'\nimport { TbVolumeOff, TbSearch, TbX } from 'react-icons/tb'\nimport dayjs from 'dayjs'\nimport type { ChatType } from '../types'\nimport type { ChangeEvent } from 'react'\n\nconst ChatList = () => {\n const chats = useChatStore((state) => state.chats)\n const chatsFetched = useChatStore((state) => state.chatsFetched)\n const selectedChat = useChatStore((state) => state.selectedChat)\n const setSelectedChat = useChatStore((state) => state.setSelectedChat)\n const setMobileSidebar = useChatStore((state) => state.setMobileSidebar)\n const selectedChatType = useChatStore((state) => state.selectedChatType)\n const setSelectedChatType = useChatStore(\n (state) => state.setSelectedChatType,\n )\n const setChatRead = useChatStore((state) => state.setChatRead)\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n const [showSearchBar, setShowSearchBar] = useState(false)\n const [queryText, setQueryText] = useState('')\n\n const { fetchChats } = useChat()\n\n useEffect(() => {\n if (!chatsFetched) {\n fetchChats()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n useEffect(() => {\n if (showSearchBar) {\n inputRef.current?.focus()\n } else {\n inputRef.current?.blur()\n }\n }, [showSearchBar])\n\n const handleChatClick = ({\n id,\n user,\n muted,\n chatType,\n unread,\n }: {\n id: string\n user: { id: string; avatarImageUrl: string; name: string }\n muted: boolean\n chatType: ChatType\n unread: number\n }) => {\n if (unread > 0) {\n setChatRead(id)\n }\n\n setSelectedChat({\n id,\n user,\n muted,\n chatType,\n })\n setMobileSidebar(false)\n }\n\n function handleDebounceFn(e: ChangeEvent<HTMLInputElement>) {\n if (e.target.value.length > 0) {\n setSelectedChatType('')\n }\n\n if (e.target.value.length === 0) {\n setSelectedChatType('personal')\n }\n\n setQueryText(e.target.value)\n }\n\n const debounceFn = useDebounce(handleDebounceFn, 500)\n\n const handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n debounceFn(e)\n }\n\n const handleSearchToggleClick = () => {\n setShowSearchBar(!showSearchBar)\n }\n\n return (\n <div className=\"flex flex-col justify-between h-full\">\n <div className=\"mb-4\">\n <div className=\"flex items-center justify-between mb-4\">\n {showSearchBar ? (\n <input\n ref={inputRef}\n className=\"flex-1 h-full placeholder:text-gray-400 placeholder:text-base placeholder:font-normal bg-transparent focus:outline-none heading-text font-bold\"\n placeholder=\"Search chat\"\n onChange={handleInputChange}\n />\n ) : (\n <h4>Chat</h4>\n )}\n <button\n className=\"close-button text-lg\"\n type=\"button\"\n onClick={handleSearchToggleClick}\n >\n {showSearchBar ? <TbX /> : <TbSearch />}\n </button>\n </div>\n <ChatSegment />\n </div>\n <ScrollBar className=\"h-[calc(100%-150px)] overflow-y-auto\">\n <div className=\"flex flex-col gap-2 h-full\">\n {chats\n .filter((item) => {\n if (queryText) {\n return item.name\n .toLowerCase()\n .includes(queryText)\n }\n\n return selectedChatType === item.chatType\n })\n .map((item) => (\n <div\n key={item.id}\n className={classNames(\n 'py-3 px-2 flex items-center gap-2 justify-between rounded-xl hover:bg-gray-100 dark:hover:bg-gray-700 relative cursor-pointer select-none',\n selectedChat.id === item.id &&\n 'bg-gray-100 dark:bg-gray-700',\n )}\n role=\"button\"\n onClick={() =>\n handleChatClick({\n id: item.id,\n user: {\n id: item.userId || item.groupId,\n avatarImageUrl: item.avatar,\n name: item.name,\n },\n muted: item.muted,\n chatType: item.chatType,\n unread: item.unread,\n })\n }\n >\n <div className=\"flex items-center gap-2 min-w-0 flex-1\">\n <div>\n <Avatar src={item.avatar} />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex justify-between\">\n <div className=\"font-bold heading-text truncate flex gap-2 items-center\">\n <span>{item.name}</span>\n {item.muted && (\n <TbVolumeOff className=\"opacity-60\" />\n )}\n </div>\n </div>\n <div className=\"truncate\">\n {item.lastConversation}\n </div>\n </div>\n </div>\n <div className=\"flex gap-1 items-center\">\n <small className=\"font-semibold\">\n {dayjs\n .unix(item.time)\n .format('hh:mm A')}\n </small>\n {item.unread > 0 && (\n <Badge className=\"bg-primary\" />\n )}\n </div>\n </div>\n ))}\n </div>\n </ScrollBar>\n <NewChat />\n </div>\n )\n}\n\nexport default ChatList\n"],"names":["ChatList","chats","useChatStore","state","chatsFetched","selectedChat","setSelectedChat","setMobileSidebar","selectedChatType","setSelectedChatType","setChatRead","inputRef","useRef","showSearchBar","setShowSearchBar","useState","queryText","setQueryText","fetchChats","useChat","useEffect","handleChatClick","id","user","muted","chatType","unread","handleDebounceFn","debounceFn","useDebounce","jsxs","jsx","TbX","TbSearch","ChatSegment","ScrollBar","item","classNames","Avatar","TbVolumeOff","dayjs","Badge","NewChat"],"mappings":"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"}