@orbe-agro/client-core 5.3.9 → 5.3.10

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 (466) hide show
  1. package/dist/@ecme/assets/styles/app.css +1 -1
  2. package/dist/@ecme/assets/styles/components/_input.css +1 -1
  3. package/dist/@ecme/assets/styles/components/_select.css +1 -1
  4. package/dist/@ecme/assets/styles/components/_tabs.css +1 -1
  5. package/dist/@ecme/assets/styles/components/index.css +1 -1
  6. package/dist/@ecme/assets/styles/tailwind/index.css +1 -1
  7. package/dist/@ecme/auth/AuthContext.js.map +1 -1
  8. package/dist/@ecme/auth/AuthProvider.js.map +1 -1
  9. package/dist/@ecme/components/docs/DemoCard/CardFooter.js.map +1 -1
  10. package/dist/@ecme/components/docs/DemoCard/DemoCard.js.map +1 -1
  11. package/dist/@ecme/components/docs/DocumentationNav.js.map +1 -1
  12. package/dist/@ecme/components/layouts/AuthLayout/AuthLayout.js.map +1 -1
  13. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
  14. package/dist/@ecme/components/route/AppRoute.js.map +1 -1
  15. package/dist/@ecme/components/shared/AbbreviateNumber.js.map +1 -1
  16. package/dist/@ecme/components/shared/Affix.js.map +1 -1
  17. package/dist/@ecme/components/shared/AutoComplete.js.map +1 -1
  18. package/dist/@ecme/components/shared/CalendarView.js.map +1 -1
  19. package/dist/@ecme/components/shared/Chart.js.map +1 -1
  20. package/dist/@ecme/components/shared/ConfirmDialog.js.map +1 -1
  21. package/dist/@ecme/components/shared/DataTable.js.map +1 -1
  22. package/dist/@ecme/components/shared/DebounceInput.js.map +1 -1
  23. package/dist/@ecme/components/shared/GanttChart/TaskListTable.js.map +1 -1
  24. package/dist/@ecme/components/shared/GanttChart/getStartEndDateForProject.js.map +1 -1
  25. package/dist/@ecme/components/shared/GanttChart/tasksPreProcess.js.map +1 -1
  26. package/dist/@ecme/components/shared/Masonry/breakpoints.js.map +1 -1
  27. package/dist/@ecme/components/shared/Masonry/useCoulmnsCount.js.map +1 -1
  28. package/dist/@ecme/components/shared/Masonry/useMasonry.js.map +1 -1
  29. package/dist/@ecme/components/shared/Masonry/useWindowWidth.js.map +1 -1
  30. package/dist/@ecme/components/shared/OtpInput.js.map +1 -1
  31. package/dist/@ecme/components/shared/PasswordInput.js.map +1 -1
  32. package/dist/@ecme/components/shared/RegionMap.js.map +1 -1
  33. package/dist/@ecme/components/shared/RichTextEditor/RichTextEditor.js.map +1 -1
  34. package/dist/@ecme/components/shared/StickyFooter.js.map +1 -1
  35. package/dist/@ecme/components/shared/StrictModeDroppable.js.map +1 -1
  36. package/dist/@ecme/components/shared/ToggleDrawer.js.map +1 -1
  37. package/dist/@ecme/components/shared/UsersAvatarGroup.js.map +1 -1
  38. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdown.js.map +1 -1
  39. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownContent.js.map +1 -1
  40. package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownTrigger.js.map +1 -1
  41. package/dist/@ecme/components/template/LanguageSelector.js.map +1 -1
  42. package/dist/@ecme/components/template/MobileNav.js.map +1 -1
  43. package/dist/@ecme/components/template/Notification/Notification.js.map +1 -1
  44. package/dist/@ecme/components/template/Search.js.map +1 -1
  45. package/dist/@ecme/components/template/SideNavToggle.js.map +1 -1
  46. package/dist/@ecme/components/template/SidePanel/SidePanel.js.map +1 -1
  47. package/dist/@ecme/components/template/StackedSideNav/StackedSideNav.js.map +1 -1
  48. package/dist/@ecme/components/template/StackedSideNav/StackedSideNavMini.js.map +1 -1
  49. package/dist/@ecme/components/template/StackedSideNav/StackedSideNavSecondary.js.map +1 -1
  50. package/dist/@ecme/components/template/ThemeConfigurator/CopyButton.js.map +1 -1
  51. package/dist/@ecme/components/template/ThemeConfigurator/DirectionSwitcher.js.map +1 -1
  52. package/dist/@ecme/components/template/ThemeConfigurator/LayoutSwitcher.js.map +1 -1
  53. package/dist/@ecme/components/template/ThemeConfigurator/ModeSwitcher.js.map +1 -1
  54. package/dist/@ecme/components/template/UserProfileDropdown.js.map +1 -1
  55. package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js.map +1 -1
  56. package/dist/@ecme/components/ui/Alert/Alert.js.map +1 -1
  57. package/dist/@ecme/components/ui/Avatar/Avatar.js.map +1 -1
  58. package/dist/@ecme/components/ui/Avatar/AvatarGroup.js.map +1 -1
  59. package/dist/@ecme/components/ui/Button/Button.js.map +1 -1
  60. package/dist/@ecme/components/ui/Card/Card.js.map +1 -1
  61. package/dist/@ecme/components/ui/Checkbox/Checkbox.js.map +1 -1
  62. package/dist/@ecme/components/ui/Checkbox/Group.js.map +1 -1
  63. package/dist/@ecme/components/ui/DatePicker/BasePicker.js.map +1 -1
  64. package/dist/@ecme/components/ui/DatePicker/Calendar.js.map +1 -1
  65. package/dist/@ecme/components/ui/DatePicker/CalendarBase.js.map +1 -1
  66. package/dist/@ecme/components/ui/DatePicker/DatePicker.js.map +1 -1
  67. package/dist/@ecme/components/ui/DatePicker/DatePickerRange.js.map +1 -1
  68. package/dist/@ecme/components/ui/DatePicker/DateTimepicker.js.map +1 -1
  69. package/dist/@ecme/components/ui/DatePicker/RangeCalendar.js.map +1 -1
  70. package/dist/@ecme/components/ui/DatePicker/tables/DateTable.js.map +1 -1
  71. package/dist/@ecme/components/ui/DatePicker/tables/MonthTable.js.map +1 -1
  72. package/dist/@ecme/components/ui/DatePicker/tables/YearTable.js.map +1 -1
  73. package/dist/@ecme/components/ui/DatePicker/tables/components/Month.js.map +1 -1
  74. package/dist/@ecme/components/ui/DatePicker/utils/getDecadeRange.js.map +1 -1
  75. package/dist/@ecme/components/ui/DatePicker/utils/getMonthDays.js.map +1 -1
  76. package/dist/@ecme/components/ui/Dialog/Dialog.js.map +1 -1
  77. package/dist/@ecme/components/ui/Drawer/Drawer.js.map +1 -1
  78. package/dist/@ecme/components/ui/Dropdown/DropdownItem.js.map +1 -1
  79. package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js.map +1 -1
  80. package/dist/@ecme/components/ui/Dropdown/context/menuContext.js.map +1 -1
  81. package/dist/@ecme/components/ui/Form/FormItem.js.map +1 -1
  82. package/dist/@ecme/components/ui/Input/Input.js.map +1 -1
  83. package/dist/@ecme/components/ui/Menu/MenuCollapse.js.map +1 -1
  84. package/dist/@ecme/components/ui/MenuItem/index.js.map +1 -1
  85. package/dist/@ecme/components/ui/Notification/Notification.js.map +1 -1
  86. package/dist/@ecme/components/ui/Pagination/Next.js.map +1 -1
  87. package/dist/@ecme/components/ui/Pagination/Pagers.js.map +1 -1
  88. package/dist/@ecme/components/ui/Pagination/Pagination.js.map +1 -1
  89. package/dist/@ecme/components/ui/Pagination/Prev.js.map +1 -1
  90. package/dist/@ecme/components/ui/Progress/Circle.js.map +1 -1
  91. package/dist/@ecme/components/ui/Progress/Progress.js.map +1 -1
  92. package/dist/@ecme/components/ui/Radio/Group.js.map +1 -1
  93. package/dist/@ecme/components/ui/Radio/Radio.js.map +1 -1
  94. package/dist/@ecme/components/ui/Segment/Segment.js.map +1 -1
  95. package/dist/@ecme/components/ui/Segment/SegmentItem.js.map +1 -1
  96. package/dist/@ecme/components/ui/Select/Select.js.map +1 -1
  97. package/dist/@ecme/components/ui/Steps/StepItem.js.map +1 -1
  98. package/dist/@ecme/components/ui/Steps/Steps.js.map +1 -1
  99. package/dist/@ecme/components/ui/Switcher/Switcher.js.map +1 -1
  100. package/dist/@ecme/components/ui/Tabs/TabNav.js.map +1 -1
  101. package/dist/@ecme/components/ui/TimeInput/AmPmInput.js.map +1 -1
  102. package/dist/@ecme/components/ui/TimeInput/TimeInput.js.map +1 -1
  103. package/dist/@ecme/components/ui/TimeInput/TimeInputField.js.map +1 -1
  104. package/dist/@ecme/components/ui/TimeInput/TimeInputRange.js.map +1 -1
  105. package/dist/@ecme/components/ui/TimeInput/utils/createAmPmHandler.js.map +1 -1
  106. package/dist/@ecme/components/ui/TimeInput/utils/createTimeHandler.js.map +1 -1
  107. package/dist/@ecme/components/ui/Tooltip/Arrow.js.map +1 -1
  108. package/dist/@ecme/components/ui/Tooltip/Tooltip.js.map +1 -1
  109. package/dist/@ecme/components/ui/Upload/Upload.js.map +1 -1
  110. package/dist/@ecme/components/ui/hooks/useCallbackRef.js.map +1 -1
  111. package/dist/@ecme/components/ui/hooks/useControllableState.js.map +1 -1
  112. package/dist/@ecme/components/ui/hooks/useDidUpdate.js.map +1 -1
  113. package/dist/@ecme/components/ui/hooks/useMergeRef.js.map +1 -1
  114. package/dist/@ecme/components/ui/hooks/useRootClose.js.map +1 -1
  115. package/dist/@ecme/components/ui/hooks/useTimeout.js.map +1 -1
  116. package/dist/@ecme/components/ui/hooks/useWindowSize.js.map +1 -1
  117. package/dist/@ecme/components/ui/toast/ToastWrapper.js.map +1 -1
  118. package/dist/@ecme/components/ui/toast/toast.js.map +1 -1
  119. package/dist/@ecme/components/ui/utils/chainedFunction.js.map +1 -1
  120. package/dist/@ecme/components/ui/utils/mapCloneElement.js.map +1 -1
  121. package/dist/@ecme/components/view/Activity/ActivityAvatar.js.map +1 -1
  122. package/dist/@ecme/components/view/Activity/ActivityEvent.js.map +1 -1
  123. package/dist/@ecme/components/view/ChatBox/components/Attachment.js.map +1 -1
  124. package/dist/@ecme/components/view/ChatBox/components/ChatInput.js.map +1 -1
  125. package/dist/@ecme/components/view/CreditCardDialog/CreditCardDialog.js.map +1 -1
  126. package/dist/@ecme/configs/chart.config.js.map +1 -1
  127. package/dist/@ecme/constants/theme.constant.js +23 -23
  128. package/dist/@ecme/constants/theme.constant.js.map +1 -1
  129. package/dist/@ecme/mock/fakeApi/accountsFakeApi.js.map +1 -1
  130. package/dist/@ecme/mock/fakeApi/aiFakeApi.js.map +1 -1
  131. package/dist/@ecme/mock/fakeApi/authFakeApi.js.map +1 -1
  132. package/dist/@ecme/mock/fakeApi/commonFakeApi.js.map +1 -1
  133. package/dist/@ecme/mock/fakeApi/customersFakeApi.js.map +1 -1
  134. package/dist/@ecme/mock/fakeApi/fileFakeApi.js.map +1 -1
  135. package/dist/@ecme/mock/fakeApi/helpCenterFakeApi.js.map +1 -1
  136. package/dist/@ecme/mock/fakeApi/ordersFakeApi.js.map +1 -1
  137. package/dist/@ecme/mock/fakeApi/productsFakeApi.js.map +1 -1
  138. package/dist/@ecme/services/ApiService.js.map +1 -1
  139. package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js.map +1 -1
  140. package/dist/@ecme/store/authStore.js.map +1 -1
  141. package/dist/@ecme/store/localeStore.js.map +1 -1
  142. package/dist/@ecme/utils/cookiesStorage.js.map +1 -1
  143. package/dist/@ecme/utils/hoc/withHeaderItem.js.map +1 -1
  144. package/dist/@ecme/utils/hooks/useDarkMode.js.map +1 -1
  145. package/dist/@ecme/utils/hooks/useDirection.js.map +1 -1
  146. package/dist/@ecme/utils/hooks/useInfiniteScroll.js.map +1 -1
  147. package/dist/@ecme/utils/hooks/useInterval .js.map +1 -1
  148. package/dist/@ecme/utils/hooks/useLayoutGap.js.map +1 -1
  149. package/dist/@ecme/utils/hooks/useLocale.js.map +1 -1
  150. package/dist/@ecme/utils/hooks/useMenuActive.js.map +1 -1
  151. package/dist/@ecme/utils/hooks/useRandomBgColor.js.map +1 -1
  152. package/dist/@ecme/utils/hooks/useResponsive.js.map +1 -1
  153. package/dist/@ecme/utils/hooks/useScrollTop.js.map +1 -1
  154. package/dist/@ecme/utils/hooks/useThemeSchema.js.map +1 -1
  155. package/dist/@ecme/utils/hooks/useTimeOutMessage.js.map +1 -1
  156. package/dist/@ecme/utils/reorderDragable.js.map +1 -1
  157. package/dist/@ecme/utils/sortBy.js.map +1 -1
  158. package/dist/@ecme/utils/wildCardSearch.js.map +1 -1
  159. package/dist/@ecme/views/auth/ForgotPassword/ForgotPassword.js.map +1 -1
  160. package/dist/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.js.map +1 -1
  161. package/dist/@ecme/views/auth/OtpVerification/OtpVerification.js.map +1 -1
  162. package/dist/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.js.map +1 -1
  163. package/dist/@ecme/views/auth/ResetPassword/ResetPassword.js.map +1 -1
  164. package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js.map +1 -1
  165. package/dist/@ecme/views/auth/SignIn/components/OauthSignIn.js.map +1 -1
  166. package/dist/@ecme/views/auth/SignIn/components/SignInForm.js.map +1 -1
  167. package/dist/@ecme/views/auth/SignUp/components/SignUpForm.js.map +1 -1
  168. package/dist/@ecme/views/concepts/accounts/ActivityLog/ActivityLog.js.map +1 -1
  169. package/dist/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.js.map +1 -1
  170. package/dist/@ecme/views/concepts/accounts/Pricing/components/Plans.js.map +1 -1
  171. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsAccessDialog.js.map +1 -1
  172. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsGroups.js.map +1 -1
  173. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserAction.js.map +1 -1
  174. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserSelected.js.map +1 -1
  175. package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserTable.js.map +1 -1
  176. package/dist/@ecme/views/concepts/accounts/RolesPermissions/store/rolePermissionsStore.js.map +1 -1
  177. package/dist/@ecme/views/concepts/accounts/Settings/components/BillingHistory.js.map +1 -1
  178. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingIntegration.js.map +1 -1
  179. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingMobileMenu.js.map +1 -1
  180. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsBilling.js.map +1 -1
  181. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsMenu.js.map +1 -1
  182. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsNotification.js.map +1 -1
  183. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsProfile.js.map +1 -1
  184. package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsSecurity.js.map +1 -1
  185. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomAction.js.map +1 -1
  186. package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomContent.js.map +1 -1
  187. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js.map +1 -1
  188. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js.map +1 -1
  189. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js.map +1 -1
  190. package/dist/@ecme/views/concepts/ai/Chat/components/ChatSideNav.js.map +1 -1
  191. package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js.map +1 -1
  192. package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js.map +1 -1
  193. package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js.map +1 -1
  194. package/dist/@ecme/views/concepts/ai/Image/components/Gallery.js.map +1 -1
  195. package/dist/@ecme/views/concepts/ai/Image/components/GeneratorPrompt.js.map +1 -1
  196. package/dist/@ecme/views/concepts/ai/Image/components/ImageDialog.js.map +1 -1
  197. package/dist/@ecme/views/concepts/ai/Image/store/imageGeneratorStore.js.map +1 -1
  198. package/dist/@ecme/views/concepts/calendar/Calendar/Calendar.js.map +1 -1
  199. package/dist/@ecme/views/concepts/calendar/Calendar/components/EventDialog.js.map +1 -1
  200. package/dist/@ecme/views/concepts/chat/Chat/components/ChatAction.js.map +1 -1
  201. package/dist/@ecme/views/concepts/chat/Chat/components/ChatBody.js.map +1 -1
  202. package/dist/@ecme/views/concepts/chat/Chat/components/ChatList.js.map +1 -1
  203. package/dist/@ecme/views/concepts/chat/Chat/components/ContactInfoDrawer.js.map +1 -1
  204. package/dist/@ecme/views/concepts/chat/Chat/components/NewChat.js.map +1 -1
  205. package/dist/@ecme/views/concepts/chat/Chat/hooks/useChat.js.map +1 -1
  206. package/dist/@ecme/views/concepts/chat/Chat/store/chatStore.js.map +1 -1
  207. package/dist/@ecme/views/concepts/customers/CustomerCreate/CustomerCreate.js.map +1 -1
  208. package/dist/@ecme/views/concepts/customers/CustomerDetails/ActivitySection.js.map +1 -1
  209. package/dist/@ecme/views/concepts/customers/CustomerDetails/BillingSection.js.map +1 -1
  210. package/dist/@ecme/views/concepts/customers/CustomerDetails/ProfileSection.js.map +1 -1
  211. package/dist/@ecme/views/concepts/customers/CustomerEdit/CustomerEdit.js.map +1 -1
  212. package/dist/@ecme/views/concepts/customers/CustomerForm/AccountSection.js.map +1 -1
  213. package/dist/@ecme/views/concepts/customers/CustomerForm/CustomerForm.js.map +1 -1
  214. package/dist/@ecme/views/concepts/customers/CustomerForm/OverviewSection.js.map +1 -1
  215. package/dist/@ecme/views/concepts/customers/CustomerForm/ProfileImageSection.js.map +1 -1
  216. package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListSelected.js.map +1 -1
  217. package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListTable.js.map +1 -1
  218. package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListTableFilter.js.map +1 -1
  219. package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomersListTableTools.js.map +1 -1
  220. package/dist/@ecme/views/concepts/customers/CustomerList/store/customerListStore.js.map +1 -1
  221. package/dist/@ecme/views/concepts/files/FileManager/FileManager.js.map +1 -1
  222. package/dist/@ecme/views/concepts/files/FileManager/components/FileDetails.js.map +1 -1
  223. package/dist/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.js.map +1 -1
  224. package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerDeleteDialog.js.map +1 -1
  225. package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerHeader.js.map +1 -1
  226. package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerInviteDialog.js.map +1 -1
  227. package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerRenameDialog.js.map +1 -1
  228. package/dist/@ecme/views/concepts/files/FileManager/components/UploadFile.js.map +1 -1
  229. package/dist/@ecme/views/concepts/files/FileManager/store/useFileManagerStore.js.map +1 -1
  230. package/dist/@ecme/views/concepts/help-center/Article/components/ArticleAction.js.map +1 -1
  231. package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleFooter.js.map +1 -1
  232. package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.js.map +1 -1
  233. package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListSearch.js.map +1 -1
  234. package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListSelected.js.map +1 -1
  235. package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListTable.js.map +1 -1
  236. package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleTableFilter.js.map +1 -1
  237. package/dist/@ecme/views/concepts/help-center/ManageArticle/store/manageArticleStore.js.map +1 -1
  238. package/dist/@ecme/views/concepts/help-center/SupportHub/components/Article.js.map +1 -1
  239. package/dist/@ecme/views/concepts/help-center/SupportHub/components/ArticleList.js.map +1 -1
  240. package/dist/@ecme/views/concepts/help-center/SupportHub/components/Categories.js.map +1 -1
  241. package/dist/@ecme/views/concepts/help-center/SupportHub/components/TopSection.js.map +1 -1
  242. package/dist/@ecme/views/concepts/mail/Mail/components/MailBody.js.map +1 -1
  243. package/dist/@ecme/views/concepts/mail/Mail/components/MailBodyTop.js.map +1 -1
  244. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailAction.js.map +1 -1
  245. package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailTitle.js.map +1 -1
  246. package/dist/@ecme/views/concepts/mail/Mail/components/MailEditor.js.map +1 -1
  247. package/dist/@ecme/views/concepts/mail/Mail/components/MailList.js.map +1 -1
  248. package/dist/@ecme/views/concepts/mail/Mail/components/MailSidebar.js.map +1 -1
  249. package/dist/@ecme/views/concepts/mail/Mail/hooks/useMail.js.map +1 -1
  250. package/dist/@ecme/views/concepts/mail/Mail/hooks/useMailAction.js.map +1 -1
  251. package/dist/@ecme/views/concepts/orders/OrderCreate/OrderCreate.js.map +1 -1
  252. package/dist/@ecme/views/concepts/orders/OrderDetails/components/OrderDetailHeaderExtra.js.map +1 -1
  253. package/dist/@ecme/views/concepts/orders/OrderEdit/OrderEdit.js.map +1 -1
  254. package/dist/@ecme/views/concepts/orders/OrderForm/OrderForm.js.map +1 -1
  255. package/dist/@ecme/views/concepts/orders/OrderForm/components/CustomerDetailSection.js.map +1 -1
  256. package/dist/@ecme/views/concepts/orders/OrderForm/components/PaymentMethodSection.js.map +1 -1
  257. package/dist/@ecme/views/concepts/orders/OrderForm/components/ProductSelectSection.js.map +1 -1
  258. package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTable.js.map +1 -1
  259. package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableFilter.js.map +1 -1
  260. package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableTools.js.map +1 -1
  261. package/dist/@ecme/views/concepts/products/ProductCreate/ProductCreate.js.map +1 -1
  262. package/dist/@ecme/views/concepts/products/ProductEdit/ProducEdit.js.map +1 -1
  263. package/dist/@ecme/views/concepts/products/ProductForm/ProductForm.js.map +1 -1
  264. package/dist/@ecme/views/concepts/products/ProductForm/components/GeneralSection.js.map +1 -1
  265. package/dist/@ecme/views/concepts/products/ProductForm/components/ImageSection.js.map +1 -1
  266. package/dist/@ecme/views/concepts/products/ProductForm/components/PricingSection.js.map +1 -1
  267. package/dist/@ecme/views/concepts/products/ProductList/components/ProducListTableTools.js.map +1 -1
  268. package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSearch.js.map +1 -1
  269. package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSelected.js.map +1 -1
  270. package/dist/@ecme/views/concepts/products/ProductList/components/ProductListTable.js.map +1 -1
  271. package/dist/@ecme/views/concepts/products/ProductList/components/ProductTableFilter.js.map +1 -1
  272. package/dist/@ecme/views/concepts/products/ProductList/store/productListStore.js.map +1 -1
  273. package/dist/@ecme/views/concepts/projects/Issue/Issue.js.map +1 -1
  274. package/dist/@ecme/views/concepts/projects/Issue/components/IssueBody.js.map +1 -1
  275. package/dist/@ecme/views/concepts/projects/Issue/components/IssueFooter.js.map +1 -1
  276. package/dist/@ecme/views/concepts/projects/Issue/components/IssueHeader.js.map +1 -1
  277. package/dist/@ecme/views/concepts/projects/ProjectDetails/ProjectDetails.js.map +1 -1
  278. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsActivity.js.map +1 -1
  279. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsHeader.js.map +1 -1
  280. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsNavigation.js.map +1 -1
  281. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsSetting.js.map +1 -1
  282. package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsTask.js.map +1 -1
  283. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewProjectForm.js.map +1 -1
  284. package/dist/@ecme/views/concepts/projects/ProjectList/components/NewTaskField.js.map +1 -1
  285. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListContent.js.map +1 -1
  286. package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListHeader.js.map +1 -1
  287. package/dist/@ecme/views/concepts/projects/ProjectList/hooks/useProjectList.js.map +1 -1
  288. package/dist/@ecme/views/concepts/projects/ProjectList/store/projectListStore.js.map +1 -1
  289. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewColumnContent.js.map +1 -1
  290. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewMemberContent.js.map +1 -1
  291. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewTicketContent.js.map +1 -1
  292. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/Board.js.map +1 -1
  293. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardCard.js.map +1 -1
  294. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardTitle.js.map +1 -1
  295. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/ScrumBoardHeader.js.map +1 -1
  296. package/dist/@ecme/views/concepts/projects/ScrumBoard/components/TicketContent.js.map +1 -1
  297. package/dist/@ecme/views/concepts/projects/Tasks/Tasks.js.map +1 -1
  298. package/dist/@ecme/views/concepts/projects/Tasks/components/AddTask.js.map +1 -1
  299. package/dist/@ecme/views/concepts/projects/Tasks/components/TaskList.js.map +1 -1
  300. package/dist/@ecme/views/concepts/projects/Tasks/components/TasksHeader.js.map +1 -1
  301. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticChart.js.map +1 -1
  302. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticHeader.js.map +1 -1
  303. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/DeviceSession.js.map +1 -1
  304. package/dist/@ecme/views/dashboards/AnalyticDashboard/components/Traffic.js.map +1 -1
  305. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/Overview.js.map +1 -1
  306. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RecentOrder.js.map +1 -1
  307. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RevenueByChannel.js.map +1 -1
  308. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/SalesTarget.js.map +1 -1
  309. package/dist/@ecme/views/dashboards/EcommerceDashboard/components/TopProduct.js.map +1 -1
  310. package/dist/@ecme/views/dashboards/MarketingDashboard/components/AdsPerformance.js.map +1 -1
  311. package/dist/@ecme/views/dashboards/MarketingDashboard/components/CreateCampaign.js.map +1 -1
  312. package/dist/@ecme/views/dashboards/MarketingDashboard/components/LeadPerformance.js.map +1 -1
  313. package/dist/@ecme/views/dashboards/MarketingDashboard/components/RecentCampaign.js.map +1 -1
  314. package/dist/@ecme/views/dashboards/ProjectDashboard/components/CreateEventDialog.js.map +1 -1
  315. package/dist/@ecme/views/dashboards/ProjectDashboard/components/CurrentTasks.js.map +1 -1
  316. package/dist/@ecme/views/dashboards/ProjectDashboard/components/Schedule.js.map +1 -1
  317. package/dist/@ecme/views/dashboards/ProjectDashboard/components/UpcomingSchedule.js.map +1 -1
  318. package/dist/@ecme/views/guide/Documentations/components/Layouts.js.map +1 -1
  319. package/dist/@ecme/views/guide/SharedComponentsDoc/components/CalendarViewDoc/Example.js.map +1 -1
  320. package/dist/@ecme/views/guide/SharedComponentsDoc/components/ConfirmDialogDoc/Example.js.map +1 -1
  321. package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/Simple.js.map +1 -1
  322. package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/WithForm.js.map +1 -1
  323. package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Basic.js.map +1 -1
  324. package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Checkable.js.map +1 -1
  325. package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Query.js.map +1 -1
  326. package/dist/@ecme/views/guide/SharedComponentsDoc/components/DebounceInputDoc/Example.js.map +1 -1
  327. package/dist/@ecme/views/guide/SharedComponentsDoc/components/GanttChartDoc/Example.js.map +1 -1
  328. package/dist/@ecme/views/guide/SharedComponentsDoc/components/MasonryDoc/Basic.js.map +1 -1
  329. package/dist/@ecme/views/guide/SharedComponentsDoc/components/MasonryDoc/Responsive.js.map +1 -1
  330. package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/Basic.js.map +1 -1
  331. package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/WithForm.js.map +1 -1
  332. package/dist/@ecme/views/guide/SharedComponentsDoc/components/OtpInputDoc/Basic.js.map +1 -1
  333. package/dist/@ecme/views/guide/SharedComponentsDoc/components/OtpInputDoc/Length.js.map +1 -1
  334. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PasswordInputDoc/Example.js.map +1 -1
  335. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/Basic.js.map +1 -1
  336. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/WithForm.js.map +1 -1
  337. package/dist/@ecme/views/guide/SharedComponentsDoc/components/PresetSegmentItemOptionDoc/Example.js.map +1 -1
  338. package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/CustomConfig.js.map +1 -1
  339. package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/WithForm.js.map +1 -1
  340. package/dist/@ecme/views/ui-components/common/Button/ButtonWithIcon.js.map +1 -1
  341. package/dist/@ecme/views/ui-components/common/Button/Loading.js.map +1 -1
  342. package/dist/@ecme/views/ui-components/data-display/Calendar/CustomRender.js.map +1 -1
  343. package/dist/@ecme/views/ui-components/data-display/Table/DragAndDrop.js.map +1 -1
  344. package/dist/@ecme/views/ui-components/data-display/Table/Editable.js.map +1 -1
  345. package/dist/@ecme/views/ui-components/data-display/Table/Expanding.js.map +1 -1
  346. package/dist/@ecme/views/ui-components/data-display/Table/Filtering.js.map +1 -1
  347. package/dist/@ecme/views/ui-components/data-display/Table/Group.js.map +1 -1
  348. package/dist/@ecme/views/ui-components/data-display/Table/PaginationTable.js.map +1 -1
  349. package/dist/@ecme/views/ui-components/data-display/Table/Resizable.js.map +1 -1
  350. package/dist/@ecme/views/ui-components/data-display/Table/RowSelection.js.map +1 -1
  351. package/dist/@ecme/views/ui-components/data-display/Table/Sorting.js.map +1 -1
  352. package/dist/@ecme/views/ui-components/data-display/Table/SubComponent.js.map +1 -1
  353. package/dist/@ecme/views/ui-components/feedback/Alert/Closable.js.map +1 -1
  354. package/dist/@ecme/views/ui-components/feedback/Dialog/Basic.js.map +1 -1
  355. package/dist/@ecme/views/ui-components/feedback/Dialog/Closable.js.map +1 -1
  356. package/dist/@ecme/views/ui-components/feedback/Dialog/CloseWithEscBackdrop.js.map +1 -1
  357. package/dist/@ecme/views/ui-components/feedback/Dialog/CustomStyle.js.map +1 -1
  358. package/dist/@ecme/views/ui-components/feedback/Dialog/InternalScroll.js.map +1 -1
  359. package/dist/@ecme/views/ui-components/feedback/Dialog/Size.js.map +1 -1
  360. package/dist/@ecme/views/ui-components/feedback/Dialog/StaticBackdrop.js.map +1 -1
  361. package/dist/@ecme/views/ui-components/feedback/Drawer/Basic.js.map +1 -1
  362. package/dist/@ecme/views/ui-components/feedback/Drawer/Closable.js.map +1 -1
  363. package/dist/@ecme/views/ui-components/feedback/Drawer/CustomStyle.js.map +1 -1
  364. package/dist/@ecme/views/ui-components/feedback/Drawer/Footer.js.map +1 -1
  365. package/dist/@ecme/views/ui-components/feedback/Drawer/Placement.js.map +1 -1
  366. package/dist/@ecme/views/ui-components/feedback/Drawer/WidthHeight.js.map +1 -1
  367. package/dist/@ecme/views/ui-components/feedback/Progress/Dynamic.js.map +1 -1
  368. package/dist/@ecme/views/ui-components/feedback/Toast/AlertToast.js.map +1 -1
  369. package/dist/@ecme/views/ui-components/feedback/Toast/Closable.js.map +1 -1
  370. package/dist/@ecme/views/ui-components/feedback/Toast/CustomClose.js.map +1 -1
  371. package/dist/@ecme/views/ui-components/feedback/Toast/CustomIcon.js.map +1 -1
  372. package/dist/@ecme/views/ui-components/feedback/Toast/Duration.js.map +1 -1
  373. package/dist/@ecme/views/ui-components/feedback/Toast/Notification.js.map +1 -1
  374. package/dist/@ecme/views/ui-components/feedback/Toast/NotificationType.js.map +1 -1
  375. package/dist/@ecme/views/ui-components/feedback/Toast/Placement.js.map +1 -1
  376. package/dist/@ecme/views/ui-components/forms/Checkbox/Default.js.map +1 -1
  377. package/dist/@ecme/views/ui-components/forms/Checkbox/Group.js.map +1 -1
  378. package/dist/@ecme/views/ui-components/forms/DatePicker/Controlled.js.map +1 -1
  379. package/dist/@ecme/views/ui-components/forms/DatePicker/CustomRender.js.map +1 -1
  380. package/dist/@ecme/views/ui-components/forms/DatePicker/DisabledCertainDate.js.map +1 -1
  381. package/dist/@ecme/views/ui-components/forms/FormControl/AsyncValidation.js.map +1 -1
  382. package/dist/@ecme/views/ui-components/forms/FormControl/Basic.js.map +1 -1
  383. package/dist/@ecme/views/ui-components/forms/FormControl/DependentValidation.js.map +1 -1
  384. package/dist/@ecme/views/ui-components/forms/FormControl/DynamicForm.js.map +1 -1
  385. package/dist/@ecme/views/ui-components/forms/FormControl/FieldValidation.js.map +1 -1
  386. package/dist/@ecme/views/ui-components/forms/FormControl/Layout.js.map +1 -1
  387. package/dist/@ecme/views/ui-components/forms/FormControl/MixedFormControl.js.map +1 -1
  388. package/dist/@ecme/views/ui-components/forms/FormControl/SchemaValidation.js.map +1 -1
  389. package/dist/@ecme/views/ui-components/forms/FormControl/Sizes.js.map +1 -1
  390. package/dist/@ecme/views/ui-components/forms/Input/PasswordVisible.js.map +1 -1
  391. package/dist/@ecme/views/ui-components/forms/Radio/Group.js.map +1 -1
  392. package/dist/@ecme/views/ui-components/forms/Radio/Vertical.js.map +1 -1
  393. package/dist/@ecme/views/ui-components/forms/Segment/Controlled.js.map +1 -1
  394. package/dist/@ecme/views/ui-components/forms/Segment/Size.js.map +1 -1
  395. package/dist/@ecme/views/ui-components/forms/Select/AsyncOnSearch.js.map +1 -1
  396. package/dist/@ecme/views/ui-components/forms/Select/Creatable.js.map +1 -1
  397. package/dist/@ecme/views/ui-components/forms/Select/LoadOptionOnExpand.js.map +1 -1
  398. package/dist/@ecme/views/ui-components/forms/Switcher/Basic.js.map +1 -1
  399. package/dist/@ecme/views/ui-components/forms/Switcher/Controlled.js.map +1 -1
  400. package/dist/@ecme/views/ui-components/forms/Switcher/Loading.js.map +1 -1
  401. package/dist/@ecme/views/ui-components/forms/Upload/AvatarImage.js.map +1 -1
  402. package/dist/@ecme/views/ui-components/forms/Upload/BeforeUpload.js.map +1 -1
  403. package/dist/@ecme/views/ui-components/graph/Charts/DashedLine.js.map +1 -1
  404. package/dist/@ecme/views/ui-components/graph/Maps/ChoroplethQuantile.js.map +1 -1
  405. package/dist/@ecme/views/ui-components/graph/Maps/ChoroplethQuantize.js.map +1 -1
  406. package/dist/@ecme/views/ui-components/graph/Maps/MapChartWithTooltip.js.map +1 -1
  407. package/dist/@ecme/views/ui-components/graph/Maps/UsaStatesMapWithLabels.js.map +1 -1
  408. package/dist/@ecme/views/ui-components/navigation/Dropdown/Default.js.map +1 -1
  409. package/dist/@ecme/views/ui-components/navigation/Menu/CollapsableMenuItem.js.map +1 -1
  410. package/dist/@ecme/views/ui-components/navigation/Menu/Simple.js.map +1 -1
  411. package/dist/@ecme/views/ui-components/navigation/Pagination/Basic.js.map +1 -1
  412. package/dist/@ecme/views/ui-components/navigation/Pagination/Controlled.js.map +1 -1
  413. package/dist/@ecme/views/ui-components/navigation/Pagination/PageSize.js.map +1 -1
  414. package/dist/@ecme/views/ui-components/navigation/Steps/Clickable.js.map +1 -1
  415. package/dist/@ecme/views/ui-components/navigation/Steps/Controlled.js.map +1 -1
  416. package/dist/@types/@ecme/configs/chart.config.d.ts +2 -0
  417. package/dist/@types/@ecme/configs/chart.config.d.ts.map +1 -1
  418. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts +18 -0
  419. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts.map +1 -1
  420. package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.d.ts +20 -0
  421. package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.d.ts.map +1 -0
  422. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +18 -0
  423. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
  424. package/dist/@types/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.d.ts.map +1 -1
  425. package/dist/@types/base/services/modules/centralNfe/index.d.ts +2 -0
  426. package/dist/@types/base/services/modules/centralNfe/index.d.ts.map +1 -1
  427. package/dist/@types/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.d.ts +5 -0
  428. package/dist/@types/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.d.ts.map +1 -0
  429. package/dist/base/assets/styles/init.css +1 -1
  430. package/dist/base/components/forms/GenericForms/GenericUploadFormSection.js.map +1 -1
  431. package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPercentage.js.map +1 -1
  432. package/dist/base/components/shared/AceitarProcessoDialog.js.map +1 -1
  433. package/dist/base/components/shared/AdicionarHistoricoDialog.js.map +1 -1
  434. package/dist/base/components/shared/CancelarProcessoDialog.js.map +1 -1
  435. package/dist/base/components/shared/ConcluirProcessoDialog.js.map +1 -1
  436. package/dist/base/components/shared/ReabrirProcessoDialog.js.map +1 -1
  437. package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js.map +1 -1
  438. package/dist/base/components/shared/TransferirParaAtendenteDialog.js.map +1 -1
  439. package/dist/base/components/shared/TransferirParaSolicitanteDialog.js.map +1 -1
  440. package/dist/base/components/shared/TransferirProcessoDialog.js.map +1 -1
  441. package/dist/base/components/table/ListColumn.js.map +1 -1
  442. package/dist/base/components/tools/NavFilter.js.map +1 -1
  443. package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js +5 -3
  444. package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js.map +1 -1
  445. package/dist/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.js +10 -0
  446. package/dist/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.js.map +1 -0
  447. package/dist/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.js +10 -0
  448. package/dist/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.js.map +1 -1
  449. package/dist/base/hooks/flux/useAceitarProcesso.js.map +1 -1
  450. package/dist/base/hooks/flux/useAdicionarHistorico.js.map +1 -1
  451. package/dist/base/hooks/flux/useCancelarProcesso.js.map +1 -1
  452. package/dist/base/hooks/flux/useConcluirProcesso.js.map +1 -1
  453. package/dist/base/hooks/flux/useReabrirProcesso.js.map +1 -1
  454. package/dist/base/hooks/flux/useRetornarFluxoAtendimento.js.map +1 -1
  455. package/dist/base/hooks/flux/useTransferirParaAtendente.js.map +1 -1
  456. package/dist/base/hooks/flux/useTransferirParaSolicitante.js.map +1 -1
  457. package/dist/base/hooks/flux/useTransferirProcesso.js.map +1 -1
  458. package/dist/base/services/modules/centralNfe/index.js +13 -3
  459. package/dist/base/services/modules/centralNfe/index.js.map +1 -1
  460. package/dist/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.js +37 -0
  461. package/dist/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.js.map +1 -0
  462. package/dist/base/services/query.js.map +1 -1
  463. package/dist/base/utils/functions/formUtils.js.map +1 -1
  464. package/dist/base/utils/functions/handleInputChangeUtils.js.map +1 -1
  465. package/dist/base/utils/functions/stringUtils.js.map +1 -1
  466. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CustomerListSelected.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListSelected.tsx"],"sourcesContent":["import { useState } from 'react'\nimport StickyFooter from '@/components/shared/StickyFooter'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Avatar from '@/components/ui/Avatar'\nimport Tooltip from '@/components/ui/Tooltip'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport RichTextEditor from '@/components/shared/RichTextEditor'\nimport ConfirmDialog from '@/components/shared/ConfirmDialog'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { TbChecks } from 'react-icons/tb'\n\nconst CustomerListSelected = () => {\n const {\n selectedCustomer,\n customerList,\n mutate,\n customerListTotal,\n setSelectAllCustomer,\n } = useCustomerList()\n\n const [deleteConfirmationOpen, setDeleteConfirmationOpen] = useState(false)\n const [sendMessageDialogOpen, setSendMessageDialogOpen] = useState(false)\n const [sendMessageLoading, setSendMessageLoading] = useState(false)\n\n const handleDelete = () => {\n setDeleteConfirmationOpen(true)\n }\n\n const handleCancel = () => {\n setDeleteConfirmationOpen(false)\n }\n\n const handleConfirmDelete = () => {\n const newCustomerList = customerList.filter((customer) => {\n return !selectedCustomer.some(\n (selected) => selected.id === customer.id,\n )\n })\n setSelectAllCustomer([])\n mutate(\n {\n list: newCustomerList,\n total: customerListTotal - selectedCustomer.length,\n },\n false,\n )\n setDeleteConfirmationOpen(false)\n }\n\n const handleSend = () => {\n setSendMessageLoading(true)\n setTimeout(() => {\n toast.push(\n <Notification type=\"success\">Message sent!</Notification>,\n { placement: 'top-center' },\n )\n setSendMessageLoading(false)\n setSendMessageDialogOpen(false)\n setSelectAllCustomer([])\n }, 500)\n }\n\n return (\n <>\n {selectedCustomer.length > 0 && (\n <StickyFooter\n className=\" flex items-center justify-between py-4 bg-white dark:bg-gray-800\"\n stickyClass=\"-mx-4 sm:-mx-8 border-t border-gray-200 dark:border-gray-700 px-8\"\n defaultClass=\"container mx-auto px-8 rounded-xl border border-gray-200 dark:border-gray-600 mt-4\"\n >\n <div className=\"container mx-auto\">\n <div className=\"flex items-center justify-between\">\n <span>\n {selectedCustomer.length > 0 && (\n <span className=\"flex items-center gap-2\">\n <span className=\"text-lg text-primary\">\n <TbChecks />\n </span>\n <span className=\"font-semibold flex items-center gap-1\">\n <span className=\"heading-text\">\n {selectedCustomer.length}{' '}\n Customers\n </span>\n <span>selected</span>\n </span>\n </span>\n )}\n </span>\n\n <div className=\"flex items-center\">\n <Button\n size=\"sm\"\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n customColorClass={() =>\n 'border-error ring-1 ring-error text-error hover:border-error hover:ring-error hover:text-error'\n }\n onClick={handleDelete}\n >\n Delete\n </Button>\n <Button\n size=\"sm\"\n variant=\"solid\"\n onClick={() =>\n setSendMessageDialogOpen(true)\n }\n >\n Message\n </Button>\n </div>\n </div>\n </div>\n </StickyFooter>\n )}\n <ConfirmDialog\n isOpen={deleteConfirmationOpen}\n type=\"danger\"\n title=\"Remove customers\"\n onClose={handleCancel}\n onRequestClose={handleCancel}\n onCancel={handleCancel}\n onConfirm={handleConfirmDelete}\n >\n <p>\n {' '}\n Are you sure you want to remove these customers? This action\n can&apos;t be undo.{' '}\n </p>\n </ConfirmDialog>\n <Dialog\n isOpen={sendMessageDialogOpen}\n onRequestClose={() => setSendMessageDialogOpen(false)}\n onClose={() => setSendMessageDialogOpen(false)}\n >\n <h5 className=\"mb-2\">Send Message</h5>\n <p>Send message to the following customers</p>\n <Avatar.Group\n chained\n omittedAvatarTooltip\n className=\"mt-4\"\n maxCount={4}\n omittedAvatarProps={{ size: 30 }}\n >\n {selectedCustomer.map((customer) => (\n <Tooltip key={customer.id} title={customer.name}>\n <Avatar size={30} src={customer.img} alt=\"\" />\n </Tooltip>\n ))}\n </Avatar.Group>\n <div className=\"my-4\">\n <RichTextEditor content={''} />\n </div>\n <div className=\"ltr:justify-end flex items-center gap-2\">\n <Button\n size=\"sm\"\n onClick={() => setSendMessageDialogOpen(false)}\n >\n Cancel\n </Button>\n <Button\n size=\"sm\"\n variant=\"solid\"\n loading={sendMessageLoading}\n onClick={handleSend}\n >\n Send\n </Button>\n </div>\n </Dialog>\n </>\n )\n}\n\nexport default CustomerListSelected\n"],"names":["CustomerListSelected","selectedCustomer","customerList","mutate","customerListTotal","setSelectAllCustomer","useCustomerList","deleteConfirmationOpen","setDeleteConfirmationOpen","useState","sendMessageDialogOpen","setSendMessageDialogOpen","sendMessageLoading","setSendMessageLoading","handleDelete","handleCancel","handleConfirmDelete","newCustomerList","customer","selected","handleSend","toast","jsx","Notification","jsxs","Fragment","StickyFooter","TbChecks","Button","ConfirmDialog","Dialog","Avatar","Tooltip","RichTextEditor"],"mappings":"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"}
1
+ {"version":3,"file":"CustomerListSelected.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListSelected.tsx"],"sourcesContent":["import { useState } from 'react'\nimport StickyFooter from '@/components/shared/StickyFooter'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Avatar from '@/components/ui/Avatar'\nimport Tooltip from '@/components/ui/Tooltip'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport RichTextEditor from '@/components/shared/RichTextEditor'\nimport ConfirmDialog from '@/components/shared/ConfirmDialog'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { TbChecks } from 'react-icons/tb'\n\nconst CustomerListSelected = () => {\n const {\n selectedCustomer,\n customerList,\n mutate,\n customerListTotal,\n setSelectAllCustomer,\n } = useCustomerList()\n\n const [deleteConfirmationOpen, setDeleteConfirmationOpen] = useState(false)\n const [sendMessageDialogOpen, setSendMessageDialogOpen] = useState(false)\n const [sendMessageLoading, setSendMessageLoading] = useState(false)\n\n const handleDelete = () => {\n setDeleteConfirmationOpen(true)\n }\n\n const handleCancel = () => {\n setDeleteConfirmationOpen(false)\n }\n\n const handleConfirmDelete = () => {\n const newCustomerList = customerList.filter((customer) => {\n return !selectedCustomer.some(\n (selected) => selected.id === customer.id,\n )\n })\n setSelectAllCustomer([])\n mutate(\n {\n list: newCustomerList,\n total: customerListTotal - selectedCustomer.length,\n },\n false,\n )\n setDeleteConfirmationOpen(false)\n }\n\n const handleSend = () => {\n setSendMessageLoading(true)\n setTimeout(() => {\n toast.push(\n <Notification type=\"success\">Message sent!</Notification>,\n { placement: 'top-center' },\n )\n setSendMessageLoading(false)\n setSendMessageDialogOpen(false)\n setSelectAllCustomer([])\n }, 500)\n }\n\n return (\n <>\n {selectedCustomer.length > 0 && (\n <StickyFooter\n className=\" flex items-center justify-between py-4 bg-white dark:bg-gray-800\"\n stickyClass=\"-mx-4 sm:-mx-8 border-t border-gray-200 dark:border-gray-700 px-8\"\n defaultClass=\"container mx-auto px-8 rounded-xl border border-gray-200 dark:border-gray-600 mt-4\"\n >\n <div className=\"container mx-auto\">\n <div className=\"flex items-center justify-between\">\n <span>\n {selectedCustomer.length > 0 && (\n <span className=\"flex items-center gap-2\">\n <span className=\"text-lg text-primary\">\n <TbChecks />\n </span>\n <span className=\"font-semibold flex items-center gap-1\">\n <span className=\"heading-text\">\n {selectedCustomer.length}{' '}\n Customers\n </span>\n <span>selected</span>\n </span>\n </span>\n )}\n </span>\n\n <div className=\"flex items-center\">\n <Button\n size=\"sm\"\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n customColorClass={() =>\n 'border-error ring-1 ring-error text-error hover:border-error hover:ring-error hover:text-error'\n }\n onClick={handleDelete}\n >\n Delete\n </Button>\n <Button\n size=\"sm\"\n variant=\"solid\"\n onClick={() =>\n setSendMessageDialogOpen(true)\n }\n >\n Message\n </Button>\n </div>\n </div>\n </div>\n </StickyFooter>\n )}\n <ConfirmDialog\n isOpen={deleteConfirmationOpen}\n type=\"danger\"\n title=\"Remove customers\"\n onClose={handleCancel}\n onRequestClose={handleCancel}\n onCancel={handleCancel}\n onConfirm={handleConfirmDelete}\n >\n <p>\n {' '}\n Are you sure you want to remove these customers? This action\n can&apos;t be undo.{' '}\n </p>\n </ConfirmDialog>\n <Dialog\n isOpen={sendMessageDialogOpen}\n onRequestClose={() => setSendMessageDialogOpen(false)}\n onClose={() => setSendMessageDialogOpen(false)}\n >\n <h5 className=\"mb-2\">Send Message</h5>\n <p>Send message to the following customers</p>\n <Avatar.Group\n chained\n omittedAvatarTooltip\n className=\"mt-4\"\n maxCount={4}\n omittedAvatarProps={{ size: 30 }}\n >\n {selectedCustomer.map((customer) => (\n <Tooltip key={customer.id} title={customer.name}>\n <Avatar size={30} src={customer.img} alt=\"\" />\n </Tooltip>\n ))}\n </Avatar.Group>\n <div className=\"my-4\">\n <RichTextEditor content={''} />\n </div>\n <div className=\"ltr:justify-end flex items-center gap-2\">\n <Button\n size=\"sm\"\n onClick={() => setSendMessageDialogOpen(false)}\n >\n Cancel\n </Button>\n <Button\n size=\"sm\"\n variant=\"solid\"\n loading={sendMessageLoading}\n onClick={handleSend}\n >\n Send\n </Button>\n </div>\n </Dialog>\n </>\n )\n}\n\nexport default CustomerListSelected\n"],"names":["CustomerListSelected","selectedCustomer","customerList","mutate","customerListTotal","setSelectAllCustomer","useCustomerList","deleteConfirmationOpen","setDeleteConfirmationOpen","useState","sendMessageDialogOpen","setSendMessageDialogOpen","sendMessageLoading","setSendMessageLoading","handleDelete","handleCancel","handleConfirmDelete","newCustomerList","customer","selected","handleSend","toast","jsx","Notification","jsxs","Fragment","StickyFooter","TbChecks","Button","ConfirmDialog","Dialog","Avatar","Tooltip","RichTextEditor"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomerListTable.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListTable.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Tag from '@/components/ui/Tag'\nimport Tooltip from '@/components/ui/Tooltip'\nimport DataTable from '@/components/shared/DataTable'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { Link, useNavigate } from 'react-router-dom'\nimport cloneDeep from 'lodash/cloneDeep'\nimport { TbPencil, TbEye } from 'react-icons/tb'\nimport type { OnSortParam, ColumnDef, Row } from '@/components/shared/DataTable'\nimport type { Customer } from '../types'\nimport type { TableQueries } from '@/@types/common'\n\nconst statusColor: Record<string, string> = {\n active: 'bg-emerald-200 dark:bg-emerald-200 text-gray-900 dark:text-gray-900',\n blocked: 'bg-red-200 dark:bg-red-200 text-gray-900 dark:text-gray-900',\n}\n\nconst NameColumn = ({ row }: { row: Customer }) => {\n return (\n <div className=\"flex items-center\">\n <Avatar size={40} shape=\"circle\" src={row.img} />\n <Link\n className={`hover:text-primary ml-2 rtl:mr-2 font-semibold text-gray-900 dark:text-gray-100`}\n to={`/concepts/customers/customer-details/${row.id}`}\n >\n {row.name}\n </Link>\n </div>\n )\n}\n\nconst ActionColumn = ({\n onEdit,\n onViewDetail,\n}: {\n onEdit: () => void\n onViewDetail: () => void\n}) => {\n return (\n <div className=\"flex items-center gap-3\">\n <Tooltip title=\"Edit\">\n <div\n className={`text-xl cursor-pointer select-none font-semibold`}\n role=\"button\"\n onClick={onEdit}\n >\n <TbPencil />\n </div>\n </Tooltip>\n <Tooltip title=\"View\">\n <div\n className={`text-xl cursor-pointer select-none font-semibold`}\n role=\"button\"\n onClick={onViewDetail}\n >\n <TbEye />\n </div>\n </Tooltip>\n </div>\n )\n}\n\nconst CustomerListTable = () => {\n const navigate = useNavigate()\n\n const {\n customerList,\n customerListTotal,\n tableData,\n isLoading,\n setTableData,\n setSelectAllCustomer,\n setSelectedCustomer,\n selectedCustomer,\n } = useCustomerList()\n\n const handleEdit = (customer: Customer) => {\n navigate(`/concepts/customers/customer-edit/${customer.id}`)\n }\n\n const handleViewDetails = (customer: Customer) => {\n navigate(`/concepts/customers/customer-details/${customer.id}`)\n }\n\n const columns: ColumnDef<Customer>[] = useMemo(\n () => [\n {\n header: 'Name',\n accessorKey: 'name',\n cell: (props) => {\n const row = props.row.original\n return <NameColumn row={row} />\n },\n },\n {\n header: 'Email',\n accessorKey: 'email',\n },\n {\n header: 'location',\n accessorKey: 'personalInfo.location',\n },\n {\n header: 'Status',\n accessorKey: 'status',\n cell: (props) => {\n const row = props.row.original\n return (\n <div className=\"flex items-center\">\n <Tag className={statusColor[row.status]}>\n <span className=\"capitalize\">{row.status}</span>\n </Tag>\n </div>\n )\n },\n },\n {\n header: 'Spent',\n accessorKey: 'totalSpending',\n cell: (props) => {\n return <span>${props.row.original.totalSpending}</span>\n },\n },\n {\n header: '',\n id: 'action',\n cell: (props) => (\n <ActionColumn\n onEdit={() => handleEdit(props.row.original)}\n onViewDetail={() =>\n handleViewDetails(props.row.original)\n }\n />\n ),\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n )\n\n const handleSetTableData = (data: TableQueries) => {\n setTableData(data)\n if (selectedCustomer.length > 0) {\n setSelectAllCustomer([])\n }\n }\n\n const handlePaginationChange = (page: number) => {\n const newTableData = cloneDeep(tableData)\n newTableData.pageIndex = page\n handleSetTableData(newTableData)\n }\n\n const handleSelectChange = (value: number) => {\n const newTableData = cloneDeep(tableData)\n newTableData.pageSize = Number(value)\n newTableData.pageIndex = 1\n handleSetTableData(newTableData)\n }\n\n const handleSort = (sort: OnSortParam) => {\n const newTableData = cloneDeep(tableData)\n newTableData.sort = sort\n handleSetTableData(newTableData)\n }\n\n const handleRowSelect = (checked: boolean, row: Customer) => {\n setSelectedCustomer(checked, row)\n }\n\n const handleAllRowSelect = (checked: boolean, rows: Row<Customer>[]) => {\n if (checked) {\n const originalRows = rows.map((row) => row.original)\n setSelectAllCustomer(originalRows)\n } else {\n setSelectAllCustomer([])\n }\n }\n\n return (\n <DataTable\n selectable\n columns={columns}\n data={customerList}\n noData={!isLoading && customerList.length === 0}\n skeletonAvatarColumns={[0]}\n skeletonAvatarProps={{ width: 28, height: 28 }}\n loading={isLoading}\n pagingData={{\n total: customerListTotal,\n pageIndex: tableData.pageIndex as number,\n pageSize: tableData.pageSize as number,\n }}\n checkboxChecked={(row) =>\n selectedCustomer.some((selected) => selected.id === row.id)\n }\n onPaginationChange={handlePaginationChange}\n onSelectChange={handleSelectChange}\n onSort={handleSort}\n onCheckBoxChange={handleRowSelect}\n onIndeterminateCheckBoxChange={handleAllRowSelect}\n />\n )\n}\n\nexport default CustomerListTable\n"],"names":["statusColor","NameColumn","row","jsxs","jsx","Avatar","Link","ActionColumn","onEdit","onViewDetail","Tooltip","TbPencil","TbEye","CustomerListTable","navigate","useNavigate","customerList","customerListTotal","tableData","isLoading","setTableData","setSelectAllCustomer","setSelectedCustomer","selectedCustomer","useCustomerList","handleEdit","customer","handleViewDetails","columns","useMemo","props","Tag","handleSetTableData","data","handlePaginationChange","page","newTableData","cloneDeep","handleSelectChange","value","handleSort","sort","handleRowSelect","checked","handleAllRowSelect","rows","originalRows","DataTable","selected"],"mappings":"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"}
1
+ {"version":3,"file":"CustomerListTable.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListTable.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Tag from '@/components/ui/Tag'\nimport Tooltip from '@/components/ui/Tooltip'\nimport DataTable from '@/components/shared/DataTable'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { Link, useNavigate } from 'react-router-dom'\nimport cloneDeep from 'lodash/cloneDeep'\nimport { TbPencil, TbEye } from 'react-icons/tb'\nimport type { OnSortParam, ColumnDef, Row } from '@/components/shared/DataTable'\nimport type { Customer } from '../types'\nimport type { TableQueries } from '@/@types/common'\n\nconst statusColor: Record<string, string> = {\n active: 'bg-emerald-200 dark:bg-emerald-200 text-gray-900 dark:text-gray-900',\n blocked: 'bg-red-200 dark:bg-red-200 text-gray-900 dark:text-gray-900',\n}\n\nconst NameColumn = ({ row }: { row: Customer }) => {\n return (\n <div className=\"flex items-center\">\n <Avatar size={40} shape=\"circle\" src={row.img} />\n <Link\n className={`hover:text-primary ml-2 rtl:mr-2 font-semibold text-gray-900 dark:text-gray-100`}\n to={`/concepts/customers/customer-details/${row.id}`}\n >\n {row.name}\n </Link>\n </div>\n )\n}\n\nconst ActionColumn = ({\n onEdit,\n onViewDetail,\n}: {\n onEdit: () => void\n onViewDetail: () => void\n}) => {\n return (\n <div className=\"flex items-center gap-3\">\n <Tooltip title=\"Edit\">\n <div\n className={`text-xl cursor-pointer select-none font-semibold`}\n role=\"button\"\n onClick={onEdit}\n >\n <TbPencil />\n </div>\n </Tooltip>\n <Tooltip title=\"View\">\n <div\n className={`text-xl cursor-pointer select-none font-semibold`}\n role=\"button\"\n onClick={onViewDetail}\n >\n <TbEye />\n </div>\n </Tooltip>\n </div>\n )\n}\n\nconst CustomerListTable = () => {\n const navigate = useNavigate()\n\n const {\n customerList,\n customerListTotal,\n tableData,\n isLoading,\n setTableData,\n setSelectAllCustomer,\n setSelectedCustomer,\n selectedCustomer,\n } = useCustomerList()\n\n const handleEdit = (customer: Customer) => {\n navigate(`/concepts/customers/customer-edit/${customer.id}`)\n }\n\n const handleViewDetails = (customer: Customer) => {\n navigate(`/concepts/customers/customer-details/${customer.id}`)\n }\n\n const columns: ColumnDef<Customer>[] = useMemo(\n () => [\n {\n header: 'Name',\n accessorKey: 'name',\n cell: (props) => {\n const row = props.row.original\n return <NameColumn row={row} />\n },\n },\n {\n header: 'Email',\n accessorKey: 'email',\n },\n {\n header: 'location',\n accessorKey: 'personalInfo.location',\n },\n {\n header: 'Status',\n accessorKey: 'status',\n cell: (props) => {\n const row = props.row.original\n return (\n <div className=\"flex items-center\">\n <Tag className={statusColor[row.status]}>\n <span className=\"capitalize\">{row.status}</span>\n </Tag>\n </div>\n )\n },\n },\n {\n header: 'Spent',\n accessorKey: 'totalSpending',\n cell: (props) => {\n return <span>${props.row.original.totalSpending}</span>\n },\n },\n {\n header: '',\n id: 'action',\n cell: (props) => (\n <ActionColumn\n onEdit={() => handleEdit(props.row.original)}\n onViewDetail={() =>\n handleViewDetails(props.row.original)\n }\n />\n ),\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n )\n\n const handleSetTableData = (data: TableQueries) => {\n setTableData(data)\n if (selectedCustomer.length > 0) {\n setSelectAllCustomer([])\n }\n }\n\n const handlePaginationChange = (page: number) => {\n const newTableData = cloneDeep(tableData)\n newTableData.pageIndex = page\n handleSetTableData(newTableData)\n }\n\n const handleSelectChange = (value: number) => {\n const newTableData = cloneDeep(tableData)\n newTableData.pageSize = Number(value)\n newTableData.pageIndex = 1\n handleSetTableData(newTableData)\n }\n\n const handleSort = (sort: OnSortParam) => {\n const newTableData = cloneDeep(tableData)\n newTableData.sort = sort\n handleSetTableData(newTableData)\n }\n\n const handleRowSelect = (checked: boolean, row: Customer) => {\n setSelectedCustomer(checked, row)\n }\n\n const handleAllRowSelect = (checked: boolean, rows: Row<Customer>[]) => {\n if (checked) {\n const originalRows = rows.map((row) => row.original)\n setSelectAllCustomer(originalRows)\n } else {\n setSelectAllCustomer([])\n }\n }\n\n return (\n <DataTable\n selectable\n columns={columns}\n data={customerList}\n noData={!isLoading && customerList.length === 0}\n skeletonAvatarColumns={[0]}\n skeletonAvatarProps={{ width: 28, height: 28 }}\n loading={isLoading}\n pagingData={{\n total: customerListTotal,\n pageIndex: tableData.pageIndex as number,\n pageSize: tableData.pageSize as number,\n }}\n checkboxChecked={(row) =>\n selectedCustomer.some((selected) => selected.id === row.id)\n }\n onPaginationChange={handlePaginationChange}\n onSelectChange={handleSelectChange}\n onSort={handleSort}\n onCheckBoxChange={handleRowSelect}\n onIndeterminateCheckBoxChange={handleAllRowSelect}\n />\n )\n}\n\nexport default CustomerListTable\n"],"names":["statusColor","NameColumn","row","jsxs","jsx","Avatar","Link","ActionColumn","onEdit","onViewDetail","Tooltip","TbPencil","TbEye","CustomerListTable","navigate","useNavigate","customerList","customerListTotal","tableData","isLoading","setTableData","setSelectAllCustomer","setSelectedCustomer","selectedCustomer","useCustomerList","handleEdit","customer","handleViewDetails","columns","useMemo","props","Tag","handleSetTableData","data","handlePaginationChange","page","newTableData","cloneDeep","handleSelectChange","value","handleSort","sort","handleRowSelect","checked","handleAllRowSelect","rows","originalRows","DataTable","selected"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomerListTableFilter.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListTableFilter.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Checkbox from '@/components/ui/Checkbox'\nimport Input from '@/components/ui/Input'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { TbFilter } from 'react-icons/tb'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\n\ntype FormSchema = {\n purchasedProducts: string\n purchaseChannel: Array<string>\n}\n\nconst channelList = [\n 'Retail Stores',\n 'Online Retailers',\n 'Resellers',\n 'Mobile Apps',\n 'Direct Sales',\n]\n\nconst validationSchema: ZodType<FormSchema> = z.object({\n purchasedProducts: z.string(),\n purchaseChannel: z.array(z.string()),\n})\n\nconst CustomerListTableFilter = () => {\n const [dialogIsOpen, setIsOpen] = useState(false)\n\n const { filterData, setFilterData } = useCustomerList()\n\n const openDialog = () => {\n setIsOpen(true)\n }\n\n const onDialogClose = () => {\n setIsOpen(false)\n }\n\n const { handleSubmit, reset, control } = useForm<FormSchema>({\n defaultValues: filterData,\n resolver: zodResolver(validationSchema),\n })\n\n const onSubmit = (values: FormSchema) => {\n setFilterData(values)\n setIsOpen(false)\n }\n\n return (\n <>\n <Button icon={<TbFilter />} onClick={() => openDialog()}>\n Filter\n </Button>\n <Dialog\n isOpen={dialogIsOpen}\n onClose={onDialogClose}\n onRequestClose={onDialogClose}\n >\n <h4 className=\"mb-4\">Filter</h4>\n <Form onSubmit={handleSubmit(onSubmit)}>\n <FormItem label=\"Products\">\n <Controller\n name=\"purchasedProducts\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n autoComplete=\"off\"\n placeholder=\"Search by purchased product\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem label=\"Purchase Channel\">\n <Controller\n name=\"purchaseChannel\"\n control={control}\n render={({ field }) => (\n <Checkbox.Group\n vertical\n className=\"flex mt-4\"\n {...field}\n >\n {channelList.map((source, index) => (\n <Checkbox\n key={source + index}\n name={field.name}\n value={source}\n className=\"justify-between flex-row-reverse heading-text\"\n >\n {source}\n </Checkbox>\n ))}\n </Checkbox.Group>\n )}\n />\n </FormItem>\n <div className=\"flex justify-end items-center gap-2 mt-4\">\n <Button type=\"button\" onClick={() => reset()}>\n Reset\n </Button>\n <Button type=\"submit\" variant=\"solid\">\n Apply\n </Button>\n </div>\n </Form>\n </Dialog>\n </>\n )\n}\n\nexport default CustomerListTableFilter\n"],"names":["channelList","validationSchema","z","CustomerListTableFilter","dialogIsOpen","setIsOpen","useState","filterData","setFilterData","useCustomerList","openDialog","onDialogClose","handleSubmit","reset","control","useForm","zodResolver","jsxs","Fragment","jsx","Button","TbFilter","Dialog","Form","values","FormItem","Controller","field","Input","Checkbox","source","index"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,MAAMA,IAAc;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,GAEMC,IAAwCC,EAAE,OAAO;AAAA,EACnD,mBAAmBA,EAAE,OAAA;AAAA,EACrB,iBAAiBA,EAAE,MAAMA,EAAE,QAAQ;AACvC,CAAC,GAEKC,IAA0B,MAAM;AAClC,QAAM,CAACC,GAAcC,CAAS,IAAIC,EAAS,EAAK,GAE1C,EAAE,YAAAC,GAAY,eAAAC,EAAA,IAAkBC,EAAA,GAEhCC,IAAa,MAAM;AACrB,IAAAL,EAAU,EAAI;AAAA,EAAA,GAGZM,IAAgB,MAAM;AACxB,IAAAN,EAAU,EAAK;AAAA,EAAA,GAGb,EAAE,cAAAO,GAAc,OAAAC,GAAO,SAAAC,EAAA,IAAYC,EAAoB;AAAA,IACzD,eAAeR;AAAA,IACf,UAAUS,EAAYf,CAAgB;AAAA,EAAA,CACzC;AAOD,SACI,gBAAAgB,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAO,MAAM,gBAAAD,EAACE,GAAA,CAAA,CAAS,GAAI,SAAS,MAAMX,EAAA,GAAc,UAAA,SAAA,CAEzD;AAAA,IACA,gBAAAO;AAAA,MAACK;AAAA,MAAA;AAAA,QACG,QAAQlB;AAAA,QACR,SAASO;AAAA,QACT,gBAAgBA;AAAA,QAEhB,UAAA;AAAA,UAAA,gBAAAQ,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,UAAM;AAAA,UAC3B,gBAAAF,EAACM,GAAA,EAAK,UAAUX,EAhBX,CAACY,MAAuB;AACrC,YAAAhB,EAAcgB,CAAM,GACpBnB,EAAU,EAAK;AAAA,UAAA,CAc8B,GACjC,UAAA;AAAA,YAAA,gBAAAc,EAACM,GAAA,EAAS,OAAM,YACZ,UAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAAZ;AAAA,gBACA,QAAQ,CAAC,EAAE,OAAAa,EAAA,MACP,gBAAAR;AAAA,kBAACS;AAAA,kBAAA;AAAA,oBACG,MAAK;AAAA,oBACL,cAAa;AAAA,oBACb,aAAY;AAAA,oBACX,GAAGD;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACR;AAAA,YAAA,GAGZ;AAAA,YACA,gBAAAR,EAACM,GAAA,EAAS,OAAM,oBACZ,UAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAAZ;AAAA,gBACA,QAAQ,CAAC,EAAE,OAAAa,EAAA,MACP,gBAAAR;AAAA,kBAACU,EAAS;AAAA,kBAAT;AAAA,oBACG,UAAQ;AAAA,oBACR,WAAU;AAAA,oBACT,GAAGF;AAAA,oBAEH,UAAA3B,EAAY,IAAI,CAAC8B,GAAQC,MACtB,gBAAAZ;AAAA,sBAACU;AAAA,sBAAA;AAAA,wBAEG,MAAMF,EAAM;AAAA,wBACZ,OAAOG;AAAA,wBACP,WAAU;AAAA,wBAET,UAAAA;AAAA,sBAAA;AAAA,sBALIA,IAASC;AAAA,oBAAA,CAOrB;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACL;AAAA,YAAA,GAGZ;AAAA,YACA,gBAAAd,EAAC,OAAA,EAAI,WAAU,4CACX,UAAA;AAAA,cAAA,gBAAAE,EAACC,KAAO,MAAK,UAAS,SAAS,MAAMP,EAAA,GAAS,UAAA,SAE9C;AAAA,gCACCO,GAAA,EAAO,MAAK,UAAS,SAAQ,SAAQ,UAAA,QAAA,CAEtC;AAAA,YAAA,EAAA,CACJ;AAAA,UAAA,EAAA,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;"}
1
+ {"version":3,"file":"CustomerListTableFilter.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomerListTableFilter.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Checkbox from '@/components/ui/Checkbox'\nimport Input from '@/components/ui/Input'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport useCustomerList from '../hooks/useCustomerList'\nimport { TbFilter } from 'react-icons/tb'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\n\ntype FormSchema = {\n purchasedProducts: string\n purchaseChannel: Array<string>\n}\n\nconst channelList = [\n 'Retail Stores',\n 'Online Retailers',\n 'Resellers',\n 'Mobile Apps',\n 'Direct Sales',\n]\n\nconst validationSchema: ZodType<FormSchema> = z.object({\n purchasedProducts: z.string(),\n purchaseChannel: z.array(z.string()),\n})\n\nconst CustomerListTableFilter = () => {\n const [dialogIsOpen, setIsOpen] = useState(false)\n\n const { filterData, setFilterData } = useCustomerList()\n\n const openDialog = () => {\n setIsOpen(true)\n }\n\n const onDialogClose = () => {\n setIsOpen(false)\n }\n\n const { handleSubmit, reset, control } = useForm<FormSchema>({\n defaultValues: filterData,\n resolver: zodResolver(validationSchema),\n })\n\n const onSubmit = (values: FormSchema) => {\n setFilterData(values)\n setIsOpen(false)\n }\n\n return (\n <>\n <Button icon={<TbFilter />} onClick={() => openDialog()}>\n Filter\n </Button>\n <Dialog\n isOpen={dialogIsOpen}\n onClose={onDialogClose}\n onRequestClose={onDialogClose}\n >\n <h4 className=\"mb-4\">Filter</h4>\n <Form onSubmit={handleSubmit(onSubmit)}>\n <FormItem label=\"Products\">\n <Controller\n name=\"purchasedProducts\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n autoComplete=\"off\"\n placeholder=\"Search by purchased product\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem label=\"Purchase Channel\">\n <Controller\n name=\"purchaseChannel\"\n control={control}\n render={({ field }) => (\n <Checkbox.Group\n vertical\n className=\"flex mt-4\"\n {...field}\n >\n {channelList.map((source, index) => (\n <Checkbox\n key={source + index}\n name={field.name}\n value={source}\n className=\"justify-between flex-row-reverse heading-text\"\n >\n {source}\n </Checkbox>\n ))}\n </Checkbox.Group>\n )}\n />\n </FormItem>\n <div className=\"flex justify-end items-center gap-2 mt-4\">\n <Button type=\"button\" onClick={() => reset()}>\n Reset\n </Button>\n <Button type=\"submit\" variant=\"solid\">\n Apply\n </Button>\n </div>\n </Form>\n </Dialog>\n </>\n )\n}\n\nexport default CustomerListTableFilter\n"],"names":["channelList","validationSchema","z","CustomerListTableFilter","dialogIsOpen","setIsOpen","useState","filterData","setFilterData","useCustomerList","openDialog","onDialogClose","handleSubmit","reset","control","useForm","zodResolver","jsxs","Fragment","jsx","Button","TbFilter","Dialog","Form","values","FormItem","Controller","field","Input","Checkbox","source","index"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,MAAMA,IAAc;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,GAEMC,IAAwCC,EAAE,OAAO;AAAA,EACnD,mBAAmBA,EAAE,OAAA;AAAA,EACrB,iBAAiBA,EAAE,MAAMA,EAAE,QAAQ;AACvC,CAAC,GAEKC,IAA0B,MAAM;AAClC,QAAM,CAACC,GAAcC,CAAS,IAAIC,EAAS,EAAK,GAE1C,EAAE,YAAAC,GAAY,eAAAC,EAAA,IAAkBC,EAAA,GAEhCC,IAAa,MAAM;AACrB,IAAAL,EAAU,EAAI;AAAA,EAClB,GAEMM,IAAgB,MAAM;AACxB,IAAAN,EAAU,EAAK;AAAA,EACnB,GAEM,EAAE,cAAAO,GAAc,OAAAC,GAAO,SAAAC,EAAA,IAAYC,EAAoB;AAAA,IACzD,eAAeR;AAAA,IACf,UAAUS,EAAYf,CAAgB;AAAA,EAAA,CACzC;AAOD,SACI,gBAAAgB,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAO,MAAM,gBAAAD,EAACE,GAAA,CAAA,CAAS,GAAI,SAAS,MAAMX,EAAA,GAAc,UAAA,SAAA,CAEzD;AAAA,IACA,gBAAAO;AAAA,MAACK;AAAA,MAAA;AAAA,QACG,QAAQlB;AAAA,QACR,SAASO;AAAA,QACT,gBAAgBA;AAAA,QAEhB,UAAA;AAAA,UAAA,gBAAAQ,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,UAAM;AAAA,UAC3B,gBAAAF,EAACM,GAAA,EAAK,UAAUX,EAhBX,CAACY,MAAuB;AACrC,YAAAhB,EAAcgB,CAAM,GACpBnB,EAAU,EAAK;AAAA,UACnB,CAaiD,GACjC,UAAA;AAAA,YAAA,gBAAAc,EAACM,GAAA,EAAS,OAAM,YACZ,UAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAAZ;AAAA,gBACA,QAAQ,CAAC,EAAE,OAAAa,EAAA,MACP,gBAAAR;AAAA,kBAACS;AAAA,kBAAA;AAAA,oBACG,MAAK;AAAA,oBACL,cAAa;AAAA,oBACb,aAAY;AAAA,oBACX,GAAGD;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACR;AAAA,YAAA,GAGZ;AAAA,YACA,gBAAAR,EAACM,GAAA,EAAS,OAAM,oBACZ,UAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAAZ;AAAA,gBACA,QAAQ,CAAC,EAAE,OAAAa,EAAA,MACP,gBAAAR;AAAA,kBAACU,EAAS;AAAA,kBAAT;AAAA,oBACG,UAAQ;AAAA,oBACR,WAAU;AAAA,oBACT,GAAGF;AAAA,oBAEH,UAAA3B,EAAY,IAAI,CAAC8B,GAAQC,MACtB,gBAAAZ;AAAA,sBAACU;AAAA,sBAAA;AAAA,wBAEG,MAAMF,EAAM;AAAA,wBACZ,OAAOG;AAAA,wBACP,WAAU;AAAA,wBAET,UAAAA;AAAA,sBAAA;AAAA,sBALIA,IAASC;AAAA,oBAAA,CAOrB;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACL;AAAA,YAAA,GAGZ;AAAA,YACA,gBAAAd,EAAC,OAAA,EAAI,WAAU,4CACX,UAAA;AAAA,cAAA,gBAAAE,EAACC,KAAO,MAAK,UAAS,SAAS,MAAMP,EAAA,GAAS,UAAA,SAE9C;AAAA,gCACCO,GAAA,EAAO,MAAK,UAAS,SAAQ,SAAQ,UAAA,QAAA,CAEtC;AAAA,YAAA,EAAA,CACJ;AAAA,UAAA,EAAA,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomersListTableTools.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomersListTableTools.tsx"],"sourcesContent":["import useCustomerList from '../hooks/useCustomerList'\nimport CustomerListSearch from './CustomerListSearch'\nimport CustomerTableFilter from './CustomerListTableFilter'\nimport cloneDeep from 'lodash/cloneDeep'\n\nconst CustomersListTableTools = () => {\n const { tableData, setTableData } = useCustomerList()\n\n const handleInputChange = (val: string) => {\n const newTableData = cloneDeep(tableData)\n newTableData.query = val\n newTableData.pageIndex = 1\n if (typeof val === 'string' && val.length > 1) {\n setTableData(newTableData)\n }\n\n if (typeof val === 'string' && val.length === 0) {\n setTableData(newTableData)\n }\n }\n\n return (\n <div className=\"flex flex-col md:flex-row md:items-center md:justify-between gap-2\">\n <CustomerListSearch onInputChange={handleInputChange} />\n <CustomerTableFilter />\n </div>\n )\n}\n\nexport default CustomersListTableTools\n"],"names":["CustomersListTableTools","tableData","setTableData","useCustomerList","jsxs","jsx","CustomerListSearch","val","newTableData","cloneDeep","CustomerTableFilter"],"mappings":";;;;;AAKA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,WAAAC,GAAW,cAAAC,EAAA,IAAiBC,EAAA;AAepC,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,sEACX,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAmB,eAfF,CAACC,MAAgB;AACvC,YAAMC,IAAeC,EAAUR,CAAS;AACxC,MAAAO,EAAa,QAAQD,GACrBC,EAAa,YAAY,GACrB,OAAOD,KAAQ,YAAYA,EAAI,SAAS,KACxCL,EAAaM,CAAY,GAGzB,OAAOD,KAAQ,YAAYA,EAAI,WAAW,KAC1CL,EAAaM,CAAY;AAAA,IAC7B,EAKuC,CAAmB;AAAA,sBACrDE,GAAA,CAAA,CAAoB;AAAA,EAAA,GACzB;AAER;"}
1
+ {"version":3,"file":"CustomersListTableTools.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/components/CustomersListTableTools.tsx"],"sourcesContent":["import useCustomerList from '../hooks/useCustomerList'\nimport CustomerListSearch from './CustomerListSearch'\nimport CustomerTableFilter from './CustomerListTableFilter'\nimport cloneDeep from 'lodash/cloneDeep'\n\nconst CustomersListTableTools = () => {\n const { tableData, setTableData } = useCustomerList()\n\n const handleInputChange = (val: string) => {\n const newTableData = cloneDeep(tableData)\n newTableData.query = val\n newTableData.pageIndex = 1\n if (typeof val === 'string' && val.length > 1) {\n setTableData(newTableData)\n }\n\n if (typeof val === 'string' && val.length === 0) {\n setTableData(newTableData)\n }\n }\n\n return (\n <div className=\"flex flex-col md:flex-row md:items-center md:justify-between gap-2\">\n <CustomerListSearch onInputChange={handleInputChange} />\n <CustomerTableFilter />\n </div>\n )\n}\n\nexport default CustomersListTableTools\n"],"names":["CustomersListTableTools","tableData","setTableData","useCustomerList","jsxs","jsx","CustomerListSearch","val","newTableData","cloneDeep","CustomerTableFilter"],"mappings":";;;;;AAKA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,WAAAC,GAAW,cAAAC,EAAA,IAAiBC,EAAA;AAepC,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,sEACX,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAmB,eAfF,CAACC,MAAgB;AACvC,YAAMC,IAAeC,EAAUR,CAAS;AACxC,MAAAO,EAAa,QAAQD,GACrBC,EAAa,YAAY,GACrB,OAAOD,KAAQ,YAAYA,EAAI,SAAS,KACxCL,EAAaM,CAAY,GAGzB,OAAOD,KAAQ,YAAYA,EAAI,WAAW,KAC1CL,EAAaM,CAAY;AAAA,IAEjC,EAI2C,CAAmB;AAAA,sBACrDE,GAAA,CAAA,CAAoB;AAAA,EAAA,GACzB;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"customerListStore.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/store/customerListStore.ts"],"sourcesContent":["import { create } from 'zustand'\nimport type { TableQueries } from '@/@types/common'\nimport type { Customer, Filter } from '../types'\n\nexport const initialTableData: TableQueries = {\n pageIndex: 1,\n pageSize: 10,\n query: '',\n sort: {\n order: '',\n key: '',\n },\n}\n\nexport const initialFilterData = {\n purchasedProducts: '',\n purchaseChannel: [\n 'Retail Stores',\n 'Online Retailers',\n 'Resellers',\n 'Mobile Apps',\n 'Direct Sales',\n ],\n}\n\nexport type CustomersListState = {\n tableData: TableQueries\n filterData: Filter\n selectedCustomer: Partial<Customer>[]\n}\n\ntype CustomersListAction = {\n setFilterData: (payload: Filter) => void\n setTableData: (payload: TableQueries) => void\n setSelectedCustomer: (checked: boolean, customer: Customer) => void\n setSelectAllCustomer: (customer: Customer[]) => void\n}\n\nconst initialState: CustomersListState = {\n tableData: initialTableData,\n filterData: initialFilterData,\n selectedCustomer: [],\n}\n\nexport const useCustomerListStore = create<\n CustomersListState & CustomersListAction\n>((set) => ({\n ...initialState,\n setFilterData: (payload) => set(() => ({ filterData: payload })),\n setTableData: (payload) => set(() => ({ tableData: payload })),\n setSelectedCustomer: (checked, row) =>\n set((state) => {\n const prevData = state.selectedCustomer\n if (checked) {\n return { selectedCustomer: [...prevData, ...[row]] }\n } else {\n if (\n prevData.some((prevCustomer) => row.id === prevCustomer.id)\n ) {\n return {\n selectedCustomer: prevData.filter(\n (prevCustomer) => prevCustomer.id !== row.id,\n ),\n }\n }\n return { selectedCustomer: prevData }\n }\n }),\n setSelectAllCustomer: (row) => set(() => ({ selectedCustomer: row })),\n}))\n"],"names":["initialTableData","initialFilterData","initialState","useCustomerListStore","create","set","payload","checked","row","state","prevData","prevCustomer"],"mappings":";AAIO,MAAMA,IAAiC;AAAA,EAC1C,WAAW;AAAA,EACX,UAAU;AAAA,EACV,OAAO;AAAA,EACP,MAAM;AAAA,IACF,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAEb,GAEaC,IAAoB;AAAA,EAC7B,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAER,GAeMC,IAAmC;AAAA,EACrC,WAAWF;AAAA,EACX,YAAYC;AAAA,EACZ,kBAAkB,CAAA;AACtB,GAEaE,IAAuBC,EAElC,CAACC,OAAS;AAAA,EACR,GAAGH;AAAA,EACH,eAAe,CAACI,MAAYD,EAAI,OAAO,EAAE,YAAYC,IAAU;AAAA,EAC/D,cAAc,CAACA,MAAYD,EAAI,OAAO,EAAE,WAAWC,IAAU;AAAA,EAC7D,qBAAqB,CAACC,GAASC,MAC3BH,EAAI,CAACI,MAAU;AACX,UAAMC,IAAWD,EAAM;AACvB,WAAIF,IACO,EAAE,kBAAkB,CAAC,GAAGG,GAAcF,CAAI,EAAA,IAG7CE,EAAS,KAAK,CAACC,MAAiBH,EAAI,OAAOG,EAAa,EAAE,IAEnD;AAAA,MACH,kBAAkBD,EAAS;AAAA,QACvB,CAACC,MAAiBA,EAAa,OAAOH,EAAI;AAAA,MAAA;AAAA,IAC9C,IAGD,EAAE,kBAAkBE,EAAA;AAAA,EAC/B,CACH;AAAA,EACL,sBAAsB,CAACF,MAAQH,EAAI,OAAO,EAAE,kBAAkBG,IAAM;AACxE,EAAE;"}
1
+ {"version":3,"file":"customerListStore.js","sources":["../../../../../../../lib/@ecme/views/concepts/customers/CustomerList/store/customerListStore.ts"],"sourcesContent":["import { create } from 'zustand'\nimport type { TableQueries } from '@/@types/common'\nimport type { Customer, Filter } from '../types'\n\nexport const initialTableData: TableQueries = {\n pageIndex: 1,\n pageSize: 10,\n query: '',\n sort: {\n order: '',\n key: '',\n },\n}\n\nexport const initialFilterData = {\n purchasedProducts: '',\n purchaseChannel: [\n 'Retail Stores',\n 'Online Retailers',\n 'Resellers',\n 'Mobile Apps',\n 'Direct Sales',\n ],\n}\n\nexport type CustomersListState = {\n tableData: TableQueries\n filterData: Filter\n selectedCustomer: Partial<Customer>[]\n}\n\ntype CustomersListAction = {\n setFilterData: (payload: Filter) => void\n setTableData: (payload: TableQueries) => void\n setSelectedCustomer: (checked: boolean, customer: Customer) => void\n setSelectAllCustomer: (customer: Customer[]) => void\n}\n\nconst initialState: CustomersListState = {\n tableData: initialTableData,\n filterData: initialFilterData,\n selectedCustomer: [],\n}\n\nexport const useCustomerListStore = create<\n CustomersListState & CustomersListAction\n>((set) => ({\n ...initialState,\n setFilterData: (payload) => set(() => ({ filterData: payload })),\n setTableData: (payload) => set(() => ({ tableData: payload })),\n setSelectedCustomer: (checked, row) =>\n set((state) => {\n const prevData = state.selectedCustomer\n if (checked) {\n return { selectedCustomer: [...prevData, ...[row]] }\n } else {\n if (\n prevData.some((prevCustomer) => row.id === prevCustomer.id)\n ) {\n return {\n selectedCustomer: prevData.filter(\n (prevCustomer) => prevCustomer.id !== row.id,\n ),\n }\n }\n return { selectedCustomer: prevData }\n }\n }),\n setSelectAllCustomer: (row) => set(() => ({ selectedCustomer: row })),\n}))\n"],"names":["initialTableData","initialFilterData","initialState","useCustomerListStore","create","set","payload","checked","row","state","prevData","prevCustomer"],"mappings":";AAIO,MAAMA,IAAiC;AAAA,EAC1C,WAAW;AAAA,EACX,UAAU;AAAA,EACV,OAAO;AAAA,EACP,MAAM;AAAA,IACF,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAEb,GAEaC,IAAoB;AAAA,EAC7B,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAER,GAeMC,IAAmC;AAAA,EACrC,WAAWF;AAAA,EACX,YAAYC;AAAA,EACZ,kBAAkB,CAAA;AACtB,GAEaE,IAAuBC,EAElC,CAACC,OAAS;AAAA,EACR,GAAGH;AAAA,EACH,eAAe,CAACI,MAAYD,EAAI,OAAO,EAAE,YAAYC,IAAU;AAAA,EAC/D,cAAc,CAACA,MAAYD,EAAI,OAAO,EAAE,WAAWC,IAAU;AAAA,EAC7D,qBAAqB,CAACC,GAASC,MAC3BH,EAAI,CAACI,MAAU;AACX,UAAMC,IAAWD,EAAM;AACvB,WAAIF,IACO,EAAE,kBAAkB,CAAC,GAAGG,GAAcF,CAAI,EAAA,IAG7CE,EAAS,KAAK,CAACC,MAAiBH,EAAI,OAAOG,EAAa,EAAE,IAEnD;AAAA,MACH,kBAAkBD,EAAS;AAAA,QACvB,CAACC,MAAiBA,EAAa,OAAOH,EAAI;AAAA,MAAA;AAAA,IAC9C,IAGD,EAAE,kBAAkBE,EAAA;AAAA,EAEnC,CAAC;AAAA,EACL,sBAAsB,CAACF,MAAQH,EAAI,OAAO,EAAE,kBAAkBG,IAAM;AACxE,EAAE;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileManager.js","sources":["../../../../../../lib/@ecme/views/concepts/files/FileManager/FileManager.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Table from '@/components/ui/Table'\nimport TableRowSkeleton from '@/components/shared/loaders/TableRowSkeleton'\nimport FileManagerHeader from './components/FileManagerHeader'\nimport FileSegment from './components/FileSegment'\nimport FileList from './components/FileList'\nimport FileDetails from './components/FileDetails'\nimport FileManagerDeleteDialog from './components/FileManagerDeleteDialog'\nimport FileManagerInviteDialog from './components/FileManagerInviteDialog'\nimport FileManagerRenameDialog from './components/FileManagerRenameDialog'\nimport { useFileManagerStore } from './store/useFileManagerStore'\nimport { apiGetFiles } from '@/services/FileService'\nimport useSWRMutation from 'swr/mutation'\nimport { GetFileListResponse } from './types'\n\nconst { THead, Th, Tr } = Table\n\nasync function getFile(_: string, { arg }: { arg: string }) {\n const data = await apiGetFiles<GetFileListResponse, { id: string }>({\n id: arg,\n })\n return data\n}\n\nconst FileManager = () => {\n const {\n layout,\n fileList,\n setFileList,\n setDeleteDialog,\n setInviteDialog,\n setRenameDialog,\n openedDirectoryId,\n setOpenedDirectoryId,\n setDirectories,\n setSelectedFile,\n } = useFileManagerStore()\n\n const { trigger, isMutating } = useSWRMutation(\n `/api/files/${openedDirectoryId}`,\n getFile,\n {\n onSuccess: (resp) => {\n setDirectories(resp.directory)\n setFileList(resp.list)\n },\n },\n )\n\n useEffect(() => {\n if (fileList.length === 0) {\n trigger(openedDirectoryId)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleShare = (id: string) => {\n setInviteDialog({ id, open: true })\n }\n\n const handleDelete = (id: string) => {\n setDeleteDialog({ id, open: true })\n }\n\n const handleDownload = () => {\n const blob = new Blob(\n [\n 'This text file is created to demonstrate how file downloading works in our template demo.',\n ],\n { type: 'text/plain;charset=utf-8' },\n )\n\n const link = document.createElement('a')\n link.href = window.URL.createObjectURL(blob)\n link.download = 'sample-dowoad-file'\n document.body.appendChild(link)\n\n link.click()\n\n document.body.removeChild(link)\n window.URL.revokeObjectURL(link.href)\n }\n\n const handleRename = (id: string) => {\n setRenameDialog({ id, open: true })\n }\n\n const handleOpen = (id: string) => {\n setOpenedDirectoryId(id)\n trigger(id)\n }\n\n const handleEntryClick = () => {\n setOpenedDirectoryId('')\n trigger('')\n }\n\n const handleDirectoryClick = (id: string) => {\n setOpenedDirectoryId(id)\n trigger(id)\n }\n\n const handleClick = (fileId: string) => {\n setSelectedFile(fileId)\n }\n\n return (\n <>\n <div>\n <FileManagerHeader\n onEntryClick={handleEntryClick}\n onDirectoryClick={handleDirectoryClick}\n />\n <div className=\"mt-6\">\n {isMutating ? (\n layout === 'grid' ? (\n <div className=\"grid grid-cols-1 xs:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4 mt-4 gap-4 lg:gap-6\">\n {[...Array(4).keys()].map((item) => (\n <FileSegment\n key={item}\n loading={isMutating}\n />\n ))}\n </div>\n ) : (\n <Table>\n <THead>\n <Tr>\n <Th>File</Th>\n <Th>Size</Th>\n <Th>Type</Th>\n <Th></Th>\n </Tr>\n </THead>\n <TableRowSkeleton\n avatarInColumns={[0]}\n columns={4}\n rows={5}\n avatarProps={{\n width: 30,\n height: 30,\n }}\n />\n </Table>\n )\n ) : (\n <FileList\n fileList={fileList}\n layout={layout}\n onDownload={handleDownload}\n onShare={handleShare}\n onDelete={handleDelete}\n onRename={handleRename}\n onOpen={handleOpen}\n onClick={handleClick}\n />\n )}\n </div>\n </div>\n <FileDetails onShare={handleShare} />\n <FileManagerDeleteDialog />\n <FileManagerInviteDialog />\n <FileManagerRenameDialog />\n </>\n )\n}\n\nexport default FileManager\n"],"names":["THead","Th","Tr","Table","getFile","_","arg","apiGetFiles","FileManager","layout","fileList","setFileList","setDeleteDialog","setInviteDialog","setRenameDialog","openedDirectoryId","setOpenedDirectoryId","setDirectories","setSelectedFile","useFileManagerStore","trigger","isMutating","useSWRMutation","resp","useEffect","handleShare","id","jsxs","Fragment","jsx","FileManagerHeader","item","FileSegment","TableRowSkeleton","FileList","blob","link","fileId","FileDetails","FileManagerDeleteDialog","FileManagerInviteDialog","FileManagerRenameDialog"],"mappings":"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"}
1
+ {"version":3,"file":"FileManager.js","sources":["../../../../../../lib/@ecme/views/concepts/files/FileManager/FileManager.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Table from '@/components/ui/Table'\nimport TableRowSkeleton from '@/components/shared/loaders/TableRowSkeleton'\nimport FileManagerHeader from './components/FileManagerHeader'\nimport FileSegment from './components/FileSegment'\nimport FileList from './components/FileList'\nimport FileDetails from './components/FileDetails'\nimport FileManagerDeleteDialog from './components/FileManagerDeleteDialog'\nimport FileManagerInviteDialog from './components/FileManagerInviteDialog'\nimport FileManagerRenameDialog from './components/FileManagerRenameDialog'\nimport { useFileManagerStore } from './store/useFileManagerStore'\nimport { apiGetFiles } from '@/services/FileService'\nimport useSWRMutation from 'swr/mutation'\nimport { GetFileListResponse } from './types'\n\nconst { THead, Th, Tr } = Table\n\nasync function getFile(_: string, { arg }: { arg: string }) {\n const data = await apiGetFiles<GetFileListResponse, { id: string }>({\n id: arg,\n })\n return data\n}\n\nconst FileManager = () => {\n const {\n layout,\n fileList,\n setFileList,\n setDeleteDialog,\n setInviteDialog,\n setRenameDialog,\n openedDirectoryId,\n setOpenedDirectoryId,\n setDirectories,\n setSelectedFile,\n } = useFileManagerStore()\n\n const { trigger, isMutating } = useSWRMutation(\n `/api/files/${openedDirectoryId}`,\n getFile,\n {\n onSuccess: (resp) => {\n setDirectories(resp.directory)\n setFileList(resp.list)\n },\n },\n )\n\n useEffect(() => {\n if (fileList.length === 0) {\n trigger(openedDirectoryId)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleShare = (id: string) => {\n setInviteDialog({ id, open: true })\n }\n\n const handleDelete = (id: string) => {\n setDeleteDialog({ id, open: true })\n }\n\n const handleDownload = () => {\n const blob = new Blob(\n [\n 'This text file is created to demonstrate how file downloading works in our template demo.',\n ],\n { type: 'text/plain;charset=utf-8' },\n )\n\n const link = document.createElement('a')\n link.href = window.URL.createObjectURL(blob)\n link.download = 'sample-dowoad-file'\n document.body.appendChild(link)\n\n link.click()\n\n document.body.removeChild(link)\n window.URL.revokeObjectURL(link.href)\n }\n\n const handleRename = (id: string) => {\n setRenameDialog({ id, open: true })\n }\n\n const handleOpen = (id: string) => {\n setOpenedDirectoryId(id)\n trigger(id)\n }\n\n const handleEntryClick = () => {\n setOpenedDirectoryId('')\n trigger('')\n }\n\n const handleDirectoryClick = (id: string) => {\n setOpenedDirectoryId(id)\n trigger(id)\n }\n\n const handleClick = (fileId: string) => {\n setSelectedFile(fileId)\n }\n\n return (\n <>\n <div>\n <FileManagerHeader\n onEntryClick={handleEntryClick}\n onDirectoryClick={handleDirectoryClick}\n />\n <div className=\"mt-6\">\n {isMutating ? (\n layout === 'grid' ? (\n <div className=\"grid grid-cols-1 xs:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4 mt-4 gap-4 lg:gap-6\">\n {[...Array(4).keys()].map((item) => (\n <FileSegment\n key={item}\n loading={isMutating}\n />\n ))}\n </div>\n ) : (\n <Table>\n <THead>\n <Tr>\n <Th>File</Th>\n <Th>Size</Th>\n <Th>Type</Th>\n <Th></Th>\n </Tr>\n </THead>\n <TableRowSkeleton\n avatarInColumns={[0]}\n columns={4}\n rows={5}\n avatarProps={{\n width: 30,\n height: 30,\n }}\n />\n </Table>\n )\n ) : (\n <FileList\n fileList={fileList}\n layout={layout}\n onDownload={handleDownload}\n onShare={handleShare}\n onDelete={handleDelete}\n onRename={handleRename}\n onOpen={handleOpen}\n onClick={handleClick}\n />\n )}\n </div>\n </div>\n <FileDetails onShare={handleShare} />\n <FileManagerDeleteDialog />\n <FileManagerInviteDialog />\n <FileManagerRenameDialog />\n </>\n )\n}\n\nexport default FileManager\n"],"names":["THead","Th","Tr","Table","getFile","_","arg","apiGetFiles","FileManager","layout","fileList","setFileList","setDeleteDialog","setInviteDialog","setRenameDialog","openedDirectoryId","setOpenedDirectoryId","setDirectories","setSelectedFile","useFileManagerStore","trigger","isMutating","useSWRMutation","resp","useEffect","handleShare","id","jsxs","Fragment","jsx","FileManagerHeader","item","FileSegment","TableRowSkeleton","FileList","blob","link","fileId","FileDetails","FileManagerDeleteDialog","FileManagerInviteDialog","FileManagerRenameDialog"],"mappings":";;;;;;;;;;;;;;AAeA,MAAM,EAAE,OAAAA,GAAO,IAAAC,GAAI,IAAAC,EAAA,IAAOC;AAE1B,eAAeC,EAAQC,GAAW,EAAE,KAAAC,KAAwB;AAIxD,SAHa,MAAMC,EAAiD;AAAA,IAChE,IAAID;AAAA,EAAA,CACP;AAEL;AAEA,MAAME,KAAc,MAAM;AACtB,QAAM;AAAA,IACF,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,iBAAAC;AAAA,EAAA,IACAC,EAAA,GAEE,EAAE,SAAAC,GAAS,YAAAC,EAAA,IAAeC;AAAA,IAC5B,cAAcP,CAAiB;AAAA,IAC/BX;AAAA,IACA;AAAA,MACI,WAAW,CAACmB,MAAS;AACjB,QAAAN,EAAeM,EAAK,SAAS,GAC7BZ,EAAYY,EAAK,IAAI;AAAA,MACzB;AAAA,IAAA;AAAA,EACJ;AAGJ,EAAAC,EAAU,MAAM;AACZ,IAAId,EAAS,WAAW,KACpBU,EAAQL,CAAiB;AAAA,EAGjC,GAAG,CAAA,CAAE;AAEL,QAAMU,IAAc,CAACC,MAAe;AAChC,IAAAb,EAAgB,EAAE,IAAAa,GAAI,MAAM,GAAA,CAAM;AAAA,EACtC;AAgDA,SACI,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EACG,UAAA;AAAA,MAAA,gBAAAE;AAAA,QAACC;AAAA,QAAA;AAAA,UACG,cAlBS,MAAM;AAC3B,YAAAd,EAAqB,EAAE,GACvBI,EAAQ,EAAE;AAAA,UACd;AAAA,UAgBgB,kBAda,CAACM,MAAe;AACzC,YAAAV,EAAqBU,CAAE,GACvBN,EAAQM,CAAE;AAAA,UACd;AAAA,QAWkC;AAAA,MAAA;AAAA,MAEtB,gBAAAG,EAAC,SAAI,WAAU,QACV,cACGpB,MAAW,2BACN,OAAA,EAAI,WAAU,sFACV,UAAA,CAAC,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAACsB,MACvB,gBAAAF;AAAA,QAACG;AAAA,QAAA;AAAA,UAEG,SAASX;AAAA,QAAA;AAAA,QADJU;AAAA,MAAA,CAGZ,EAAA,CACL,IAEA,gBAAAJ,EAACxB,GAAA,EACG,UAAA;AAAA,QAAA,gBAAA0B,EAAC7B,GAAA,EACG,4BAACE,GAAA,EACG,UAAA;AAAA,UAAA,gBAAA2B,EAAC5B,KAAG,UAAA,OAAA,CAAI;AAAA,UACR,gBAAA4B,EAAC5B,KAAG,UAAA,OAAA,CAAI;AAAA,UACR,gBAAA4B,EAAC5B,KAAG,UAAA,OAAA,CAAI;AAAA,4BACPA,GAAA,CAAA,CAAG;AAAA,QAAA,EAAA,CACR,EAAA,CACJ;AAAA,QACA,gBAAA4B;AAAA,UAACI;AAAA,UAAA;AAAA,YACG,iBAAiB,CAAC,CAAC;AAAA,YACnB,SAAS;AAAA,YACT,MAAM;AAAA,YACN,aAAa;AAAA,cACT,OAAO;AAAA,cACP,QAAQ;AAAA,YAAA;AAAA,UACZ;AAAA,QAAA;AAAA,MACJ,EAAA,CACJ,IAGJ,gBAAAJ;AAAA,QAACK;AAAA,QAAA;AAAA,UACG,UAAAxB;AAAA,UACA,QAAAD;AAAA,UACA,YArFD,MAAM;AACzB,kBAAM0B,IAAO,IAAI;AAAA,cACb;AAAA,gBACI;AAAA,cAAA;AAAA,cAEJ,EAAE,MAAM,2BAAA;AAAA,YAA2B,GAGjCC,IAAO,SAAS,cAAc,GAAG;AACvC,YAAAA,EAAK,OAAO,OAAO,IAAI,gBAAgBD,CAAI,GAC3CC,EAAK,WAAW,sBAChB,SAAS,KAAK,YAAYA,CAAI,GAE9BA,EAAK,MAAA,GAEL,SAAS,KAAK,YAAYA,CAAI,GAC9B,OAAO,IAAI,gBAAgBA,EAAK,IAAI;AAAA,UACxC;AAAA,UAqEwB,SAASX;AAAA,UACT,UA3FH,CAACC,MAAe;AACjC,YAAAd,EAAgB,EAAE,IAAAc,GAAI,MAAM,GAAA,CAAM;AAAA,UACtC;AAAA,UA0FwB,UArEH,CAACA,MAAe;AACjC,YAAAZ,EAAgB,EAAE,IAAAY,GAAI,MAAM,GAAA,CAAM;AAAA,UACtC;AAAA,UAoEwB,QAlEL,CAACA,MAAe;AAC/B,YAAAV,EAAqBU,CAAE,GACvBN,EAAQM,CAAE;AAAA,UACd;AAAA,UAgEwB,SApDJ,CAACW,MAAmB;AACpC,YAAAnB,EAAgBmB,CAAM;AAAA,UAC1B;AAAA,QAkDiC;AAAA,MAAA,EACb,CAER;AAAA,IAAA,GACJ;AAAA,IACA,gBAAAR,EAACS,GAAA,EAAY,SAASb,EAAA,CAAa;AAAA,sBAClCc,GAAA,EAAwB;AAAA,sBACxBC,GAAA,EAAwB;AAAA,sBACxBC,GAAA,CAAA,CAAwB;AAAA,EAAA,GAC7B;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileDetails.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileDetails.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport Drawer from '@/components/ui/Drawer'\nimport Avatar from '@/components/ui/Avatar'\nimport Button from '@/components/ui/Button'\nimport CloseButton from '@/components/ui/CloseButton'\nimport FileIcon from '@/components/view/FileIcon'\nimport FileType from './FileType'\nimport fileSizeUnit from '@/utils/fileSizeUnit'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport dayjs from 'dayjs'\nimport { TbPlus } from 'react-icons/tb'\nimport type { ReactNode } from 'react'\n\ntype FileDetailsProps = {\n onShare: (id: string) => void\n}\n\nconst InfoRow = ({\n label,\n value,\n}: {\n label: string\n value: string | ReactNode\n}) => {\n return (\n <div className=\"flex items-center justify-between\">\n <span>{label}</span>\n <span className=\"heading-text font-bold\">{value}</span>\n </div>\n )\n}\n\nconst FileDetails = ({ onShare }: FileDetailsProps) => {\n const { selectedFile, setSelectedFile, fileList } = useFileManagerStore()\n\n const file = useMemo(() => {\n return fileList.find((file) => selectedFile === file.id)\n }, [fileList, selectedFile])\n\n const handleDrawerClose = () => {\n setSelectedFile('')\n }\n\n return (\n <Drawer\n title={null}\n closable={false}\n isOpen={Boolean(selectedFile)}\n showBackdrop={false}\n width={350}\n onClose={handleDrawerClose}\n onRequestClose={handleDrawerClose}\n >\n {file && (\n <div>\n <div className=\"flex justify-end\">\n <CloseButton onClick={handleDrawerClose} />\n </div>\n <div className=\"mt-10 flex justify-center\">\n {file.fileType.startsWith('jpeg') ||\n file.fileType.startsWith('png') ? (\n <img\n src={file.srcUrl}\n className=\"max-h-[170px] rounded-xl\"\n alt={file.name}\n />\n ) : (\n <FileIcon type={file.fileType} size={120} />\n )}\n </div>\n <div className=\"mt-10 text-center\">\n <h4>{file.name}</h4>\n </div>\n <div className=\"mt-8\">\n <h6>Info</h6>\n <div className=\"mt-4 flex flex-col gap-4\">\n <InfoRow\n label=\"Size\"\n value={fileSizeUnit(file.size)}\n />\n <InfoRow\n label=\"Type\"\n value={<FileType type={file.fileType} />}\n />\n <InfoRow\n label=\"Created\"\n value={dayjs\n .unix(file.uploadDate)\n .format('MMM DD, YYYY')}\n />\n <InfoRow\n label=\"Last modified\"\n value={dayjs\n .unix(file.activities[0].timestamp)\n .format('MMM DD, YYYY')}\n />\n </div>\n </div>\n <div className=\"mt-10\">\n <div className=\"flex justify-between items-center\">\n <h6>Shared with</h6>\n <Button\n type=\"button\"\n shape=\"circle\"\n icon={<TbPlus />}\n size=\"xs\"\n onClick={() => onShare(file.id)}\n />\n </div>\n <div className=\"mt-6 flex flex-col gap-4\">\n {file.permissions.map((user) => (\n <div\n key={user.userName}\n className=\"flex items-center gap-2\"\n >\n <Avatar src={user.userImg} alt=\"\" />\n <div>\n <div className=\"heading-text font-semibold\">\n {user.userName}\n </div>\n <div>{user.role}</div>\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </Drawer>\n )\n}\n\nexport default FileDetails\n"],"names":["InfoRow","label","value","jsxs","jsx","FileDetails","onShare","selectedFile","setSelectedFile","fileList","useFileManagerStore","file","useMemo","handleDrawerClose","Drawer","CloseButton","FileIcon","fileSizeUnit","FileType","dayjs","Button","TbPlus","user","Avatar"],"mappings":"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"}
1
+ {"version":3,"file":"FileDetails.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileDetails.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport Drawer from '@/components/ui/Drawer'\nimport Avatar from '@/components/ui/Avatar'\nimport Button from '@/components/ui/Button'\nimport CloseButton from '@/components/ui/CloseButton'\nimport FileIcon from '@/components/view/FileIcon'\nimport FileType from './FileType'\nimport fileSizeUnit from '@/utils/fileSizeUnit'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport dayjs from 'dayjs'\nimport { TbPlus } from 'react-icons/tb'\nimport type { ReactNode } from 'react'\n\ntype FileDetailsProps = {\n onShare: (id: string) => void\n}\n\nconst InfoRow = ({\n label,\n value,\n}: {\n label: string\n value: string | ReactNode\n}) => {\n return (\n <div className=\"flex items-center justify-between\">\n <span>{label}</span>\n <span className=\"heading-text font-bold\">{value}</span>\n </div>\n )\n}\n\nconst FileDetails = ({ onShare }: FileDetailsProps) => {\n const { selectedFile, setSelectedFile, fileList } = useFileManagerStore()\n\n const file = useMemo(() => {\n return fileList.find((file) => selectedFile === file.id)\n }, [fileList, selectedFile])\n\n const handleDrawerClose = () => {\n setSelectedFile('')\n }\n\n return (\n <Drawer\n title={null}\n closable={false}\n isOpen={Boolean(selectedFile)}\n showBackdrop={false}\n width={350}\n onClose={handleDrawerClose}\n onRequestClose={handleDrawerClose}\n >\n {file && (\n <div>\n <div className=\"flex justify-end\">\n <CloseButton onClick={handleDrawerClose} />\n </div>\n <div className=\"mt-10 flex justify-center\">\n {file.fileType.startsWith('jpeg') ||\n file.fileType.startsWith('png') ? (\n <img\n src={file.srcUrl}\n className=\"max-h-[170px] rounded-xl\"\n alt={file.name}\n />\n ) : (\n <FileIcon type={file.fileType} size={120} />\n )}\n </div>\n <div className=\"mt-10 text-center\">\n <h4>{file.name}</h4>\n </div>\n <div className=\"mt-8\">\n <h6>Info</h6>\n <div className=\"mt-4 flex flex-col gap-4\">\n <InfoRow\n label=\"Size\"\n value={fileSizeUnit(file.size)}\n />\n <InfoRow\n label=\"Type\"\n value={<FileType type={file.fileType} />}\n />\n <InfoRow\n label=\"Created\"\n value={dayjs\n .unix(file.uploadDate)\n .format('MMM DD, YYYY')}\n />\n <InfoRow\n label=\"Last modified\"\n value={dayjs\n .unix(file.activities[0].timestamp)\n .format('MMM DD, YYYY')}\n />\n </div>\n </div>\n <div className=\"mt-10\">\n <div className=\"flex justify-between items-center\">\n <h6>Shared with</h6>\n <Button\n type=\"button\"\n shape=\"circle\"\n icon={<TbPlus />}\n size=\"xs\"\n onClick={() => onShare(file.id)}\n />\n </div>\n <div className=\"mt-6 flex flex-col gap-4\">\n {file.permissions.map((user) => (\n <div\n key={user.userName}\n className=\"flex items-center gap-2\"\n >\n <Avatar src={user.userImg} alt=\"\" />\n <div>\n <div className=\"heading-text font-semibold\">\n {user.userName}\n </div>\n <div>{user.role}</div>\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </Drawer>\n )\n}\n\nexport default FileDetails\n"],"names":["InfoRow","label","value","jsxs","jsx","FileDetails","onShare","selectedFile","setSelectedFile","fileList","useFileManagerStore","file","useMemo","handleDrawerClose","Drawer","CloseButton","FileIcon","fileSizeUnit","FileType","dayjs","Button","TbPlus","user","Avatar"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileItemDropdown.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport {\n TbCloudDownload,\n TbPencil,\n TbUserPlus,\n TbTrash,\n TbFolderSymlink,\n} from \"react-icons/tb\";\nimport type { DropdownItemCallbackProps } from \"../types\";\nimport type { MouseEvent, SyntheticEvent } from \"react\";\nimport { Dropdown, DropdownRef } from \"@/components\";\nimport EllipsisButton from \"@/components/shared/EllipsisButton\";\n\ntype FileItemDropdownProps = DropdownItemCallbackProps;\n\nconst FileItemDropdown = (props: FileItemDropdownProps) => {\n const { onDelete, onShare, onRename, onDownload, onOpen } = props;\n\n const dropdownRef = useRef<DropdownRef>(null);\n\n const handleDropdownClick = (e: MouseEvent) => {\n e.stopPropagation();\n dropdownRef.current?.handleDropdownOpen();\n };\n\n const handleDropdownItemClick = (\n e: SyntheticEvent,\n callback?: () => void\n ) => {\n e.stopPropagation();\n callback?.();\n };\n\n return (\n <Dropdown\n ref={dropdownRef}\n renderTitle={<EllipsisButton onClick={handleDropdownClick} />}\n placement=\"bottom-end\"\n >\n {onOpen && (\n <Dropdown.Item\n eventKey=\"Open\"\n onClick={(e) => handleDropdownItemClick(e, onOpen)}\n >\n <TbFolderSymlink className=\"text-xl\" />\n <span>Open</span>\n </Dropdown.Item>\n )}\n {onDownload && (\n <Dropdown.Item\n eventKey=\"download\"\n onClick={(e) => handleDropdownItemClick(e, onDownload)}\n >\n <TbCloudDownload className=\"text-xl\" />\n <span>Download</span>\n </Dropdown.Item>\n )}\n {onRename && (\n <Dropdown.Item\n eventKey=\"rename\"\n onClick={(e) => handleDropdownItemClick(e, onRename)}\n >\n <TbPencil className=\"text-xl\" />\n <span>Rename</span>\n </Dropdown.Item>\n )}\n {onShare && (\n <Dropdown.Item\n eventKey=\"share\"\n onClick={(e) => handleDropdownItemClick(e, onShare)}\n >\n <TbUserPlus className=\"text-xl\" />\n <span>Share</span>\n </Dropdown.Item>\n )}\n {onDelete && (\n <Dropdown.Item\n eventKey=\"share\"\n onClick={(e) => handleDropdownItemClick(e, onDelete)}\n >\n <span className=\"flex items-center gap-2 text-error\">\n <TbTrash className=\"text-xl\" />\n <span>Delete</span>\n </span>\n </Dropdown.Item>\n )}\n </Dropdown>\n );\n};\n\nexport default FileItemDropdown;\n"],"names":["FileItemDropdown","props","onDelete","onShare","onRename","onDownload","onOpen","dropdownRef","useRef","handleDropdownClick","_a","handleDropdownItemClick","callback","jsxs","Dropdown","jsx","EllipsisButton","TbFolderSymlink","TbCloudDownload","TbPencil","TbUserPlus","TbTrash"],"mappings":";;;;;;AAeA,MAAMA,IAAmB,CAACC,MAAiC;AACzD,QAAM,EAAE,UAAAC,GAAU,SAAAC,GAAS,UAAAC,GAAU,YAAAC,GAAY,QAAAC,MAAWL,GAEtDM,IAAcC,EAAoB,IAAI,GAEtCC,IAAsB,CAAC,MAAkB;;AAC7C,MAAE,gBAAA,IACFC,IAAAH,EAAY,YAAZ,QAAAG,EAAqB;AAAA,EAAmB,GAGpCC,IAA0B,CAC9B,GACAC,MACG;AACH,MAAE,gBAAA,GACFA,KAAA,QAAAA;AAAA,EAAW;AAGb,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,aAAa,gBAAAQ,EAACC,GAAA,EAAe,SAASP,EAAA,CAAqB;AAAA,MAC3D,WAAU;AAAA,MAET,UAAA;AAAA,QAAAH,KACC,gBAAAO;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGL,CAAM;AAAA,YAEjD,UAAA;AAAA,cAAA,gBAAAS,EAACE,GAAA,EAAgB,WAAU,UAAA,CAAU;AAAA,cACrC,gBAAAF,EAAC,UAAK,UAAA,OAAA,CAAI;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGbV,KACC,gBAAAQ;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGN,CAAU;AAAA,YAErD,UAAA;AAAA,cAAA,gBAAAU,EAACG,GAAA,EAAgB,WAAU,UAAA,CAAU;AAAA,cACrC,gBAAAH,EAAC,UAAK,UAAA,WAAA,CAAQ;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGjBX,KACC,gBAAAS;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGP,CAAQ;AAAA,YAEnD,UAAA;AAAA,cAAA,gBAAAW,EAACI,GAAA,EAAS,WAAU,UAAA,CAAU;AAAA,cAC9B,gBAAAJ,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGfZ,KACC,gBAAAU;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGR,CAAO;AAAA,YAElD,UAAA;AAAA,cAAA,gBAAAY,EAACK,GAAA,EAAW,WAAU,UAAA,CAAU;AAAA,cAChC,gBAAAL,EAAC,UAAK,UAAA,QAAA,CAAK;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGdb,KACC,gBAAAa;AAAA,UAACD,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGT,CAAQ;AAAA,YAEnD,UAAA,gBAAAW,EAAC,QAAA,EAAK,WAAU,sCACd,UAAA;AAAA,cAAA,gBAAAE,EAACM,GAAA,EAAQ,WAAU,UAAA,CAAU;AAAA,cAC7B,gBAAAN,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,YAAA,EAAA,CACd;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"FileItemDropdown.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport {\n TbCloudDownload,\n TbPencil,\n TbUserPlus,\n TbTrash,\n TbFolderSymlink,\n} from \"react-icons/tb\";\nimport type { DropdownItemCallbackProps } from \"../types\";\nimport type { MouseEvent, SyntheticEvent } from \"react\";\nimport { Dropdown, DropdownRef } from \"@/components\";\nimport EllipsisButton from \"@/components/shared/EllipsisButton\";\n\ntype FileItemDropdownProps = DropdownItemCallbackProps;\n\nconst FileItemDropdown = (props: FileItemDropdownProps) => {\n const { onDelete, onShare, onRename, onDownload, onOpen } = props;\n\n const dropdownRef = useRef<DropdownRef>(null);\n\n const handleDropdownClick = (e: MouseEvent) => {\n e.stopPropagation();\n dropdownRef.current?.handleDropdownOpen();\n };\n\n const handleDropdownItemClick = (\n e: SyntheticEvent,\n callback?: () => void\n ) => {\n e.stopPropagation();\n callback?.();\n };\n\n return (\n <Dropdown\n ref={dropdownRef}\n renderTitle={<EllipsisButton onClick={handleDropdownClick} />}\n placement=\"bottom-end\"\n >\n {onOpen && (\n <Dropdown.Item\n eventKey=\"Open\"\n onClick={(e) => handleDropdownItemClick(e, onOpen)}\n >\n <TbFolderSymlink className=\"text-xl\" />\n <span>Open</span>\n </Dropdown.Item>\n )}\n {onDownload && (\n <Dropdown.Item\n eventKey=\"download\"\n onClick={(e) => handleDropdownItemClick(e, onDownload)}\n >\n <TbCloudDownload className=\"text-xl\" />\n <span>Download</span>\n </Dropdown.Item>\n )}\n {onRename && (\n <Dropdown.Item\n eventKey=\"rename\"\n onClick={(e) => handleDropdownItemClick(e, onRename)}\n >\n <TbPencil className=\"text-xl\" />\n <span>Rename</span>\n </Dropdown.Item>\n )}\n {onShare && (\n <Dropdown.Item\n eventKey=\"share\"\n onClick={(e) => handleDropdownItemClick(e, onShare)}\n >\n <TbUserPlus className=\"text-xl\" />\n <span>Share</span>\n </Dropdown.Item>\n )}\n {onDelete && (\n <Dropdown.Item\n eventKey=\"share\"\n onClick={(e) => handleDropdownItemClick(e, onDelete)}\n >\n <span className=\"flex items-center gap-2 text-error\">\n <TbTrash className=\"text-xl\" />\n <span>Delete</span>\n </span>\n </Dropdown.Item>\n )}\n </Dropdown>\n );\n};\n\nexport default FileItemDropdown;\n"],"names":["FileItemDropdown","props","onDelete","onShare","onRename","onDownload","onOpen","dropdownRef","useRef","handleDropdownClick","_a","handleDropdownItemClick","callback","jsxs","Dropdown","jsx","EllipsisButton","TbFolderSymlink","TbCloudDownload","TbPencil","TbUserPlus","TbTrash"],"mappings":";;;;;;AAeA,MAAMA,IAAmB,CAACC,MAAiC;AACzD,QAAM,EAAE,UAAAC,GAAU,SAAAC,GAAS,UAAAC,GAAU,YAAAC,GAAY,QAAAC,MAAWL,GAEtDM,IAAcC,EAAoB,IAAI,GAEtCC,IAAsB,CAAC,MAAkB;;AAC7C,MAAE,gBAAA,IACFC,IAAAH,EAAY,YAAZ,QAAAG,EAAqB;AAAA,EACvB,GAEMC,IAA0B,CAC9B,GACAC,MACG;AACH,MAAE,gBAAA,GACFA,KAAA,QAAAA;AAAA,EACF;AAEA,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,aAAa,gBAAAQ,EAACC,GAAA,EAAe,SAASP,EAAA,CAAqB;AAAA,MAC3D,WAAU;AAAA,MAET,UAAA;AAAA,QAAAH,KACC,gBAAAO;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGL,CAAM;AAAA,YAEjD,UAAA;AAAA,cAAA,gBAAAS,EAACE,GAAA,EAAgB,WAAU,UAAA,CAAU;AAAA,cACrC,gBAAAF,EAAC,UAAK,UAAA,OAAA,CAAI;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGbV,KACC,gBAAAQ;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGN,CAAU;AAAA,YAErD,UAAA;AAAA,cAAA,gBAAAU,EAACG,GAAA,EAAgB,WAAU,UAAA,CAAU;AAAA,cACrC,gBAAAH,EAAC,UAAK,UAAA,WAAA,CAAQ;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGjBX,KACC,gBAAAS;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGP,CAAQ;AAAA,YAEnD,UAAA;AAAA,cAAA,gBAAAW,EAACI,GAAA,EAAS,WAAU,UAAA,CAAU;AAAA,cAC9B,gBAAAJ,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGfZ,KACC,gBAAAU;AAAA,UAACC,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGR,CAAO;AAAA,YAElD,UAAA;AAAA,cAAA,gBAAAY,EAACK,GAAA,EAAW,WAAU,UAAA,CAAU;AAAA,cAChC,gBAAAL,EAAC,UAAK,UAAA,QAAA,CAAK;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGdb,KACC,gBAAAa;AAAA,UAACD,EAAS;AAAA,UAAT;AAAA,YACC,UAAS;AAAA,YACT,SAAS,CAAC,MAAMH,EAAwB,GAAGT,CAAQ;AAAA,YAEnD,UAAA,gBAAAW,EAAC,QAAA,EAAK,WAAU,sCACd,UAAA;AAAA,cAAA,gBAAAE,EAACM,GAAA,EAAQ,WAAU,UAAA,CAAU;AAAA,cAC7B,gBAAAN,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,YAAA,EAAA,CACd;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileManagerDeleteDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerDeleteDialog.tsx"],"sourcesContent":["import { useFileManagerStore } from '../store/useFileManagerStore'\nimport ConfirmDialog from '@/components/shared/ConfirmDialog'\n\nconst FileManagerDeleteDialog = () => {\n const { deleteDialog, setDeleteDialog, deleteFile } = useFileManagerStore()\n\n const handleDeleteDialogClose = () => {\n setDeleteDialog({ id: '', open: false })\n }\n\n const handleDeleteConfirm = () => {\n deleteFile(deleteDialog.id)\n setDeleteDialog({ id: '', open: false })\n }\n\n return (\n <ConfirmDialog\n isOpen={deleteDialog.open}\n type=\"danger\"\n title=\"Delete file\"\n onClose={handleDeleteDialogClose}\n onRequestClose={handleDeleteDialogClose}\n onCancel={handleDeleteDialogClose}\n onConfirm={handleDeleteConfirm}\n >\n <p>\n Are you sure you want to delete file? This action can&apos;t be\n undo.{' '}\n </p>\n </ConfirmDialog>\n )\n}\n\nexport default FileManagerDeleteDialog\n"],"names":["FileManagerDeleteDialog","deleteDialog","setDeleteDialog","deleteFile","useFileManagerStore","handleDeleteDialogClose","handleDeleteConfirm","jsx","ConfirmDialog"],"mappings":";;;AAGA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,GAAiB,YAAAC,EAAA,IAAeC,EAAA,GAEhDC,IAA0B,MAAM;AAClC,IAAAH,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAAA,GAGrCI,IAAsB,MAAM;AAC9B,IAAAH,EAAWF,EAAa,EAAE,GAC1BC,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAAA;AAG3C,SACI,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQP,EAAa;AAAA,MACrB,MAAK;AAAA,MACL,OAAM;AAAA,MACN,SAASI;AAAA,MACT,gBAAgBA;AAAA,MAChB,UAAUA;AAAA,MACV,WAAWC;AAAA,MAEX,4BAAC,KAAA,EAAE,UAAA;AAAA,QAAA;AAAA,QAEO;AAAA,MAAA,EAAA,CACV;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
1
+ {"version":3,"file":"FileManagerDeleteDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerDeleteDialog.tsx"],"sourcesContent":["import { useFileManagerStore } from '../store/useFileManagerStore'\nimport ConfirmDialog from '@/components/shared/ConfirmDialog'\n\nconst FileManagerDeleteDialog = () => {\n const { deleteDialog, setDeleteDialog, deleteFile } = useFileManagerStore()\n\n const handleDeleteDialogClose = () => {\n setDeleteDialog({ id: '', open: false })\n }\n\n const handleDeleteConfirm = () => {\n deleteFile(deleteDialog.id)\n setDeleteDialog({ id: '', open: false })\n }\n\n return (\n <ConfirmDialog\n isOpen={deleteDialog.open}\n type=\"danger\"\n title=\"Delete file\"\n onClose={handleDeleteDialogClose}\n onRequestClose={handleDeleteDialogClose}\n onCancel={handleDeleteDialogClose}\n onConfirm={handleDeleteConfirm}\n >\n <p>\n Are you sure you want to delete file? This action can&apos;t be\n undo.{' '}\n </p>\n </ConfirmDialog>\n )\n}\n\nexport default FileManagerDeleteDialog\n"],"names":["FileManagerDeleteDialog","deleteDialog","setDeleteDialog","deleteFile","useFileManagerStore","handleDeleteDialogClose","handleDeleteConfirm","jsx","ConfirmDialog"],"mappings":";;;AAGA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,GAAiB,YAAAC,EAAA,IAAeC,EAAA,GAEhDC,IAA0B,MAAM;AAClC,IAAAH,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAC3C,GAEMI,IAAsB,MAAM;AAC9B,IAAAH,EAAWF,EAAa,EAAE,GAC1BC,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAC3C;AAEA,SACI,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQP,EAAa;AAAA,MACrB,MAAK;AAAA,MACL,OAAM;AAAA,MACN,SAASI;AAAA,MACT,gBAAgBA;AAAA,MAChB,UAAUA;AAAA,MACV,WAAWC;AAAA,MAEX,4BAAC,KAAA,EAAE,UAAA;AAAA,QAAA;AAAA,QAEO;AAAA,MAAA,EAAA,CACV;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileManagerHeader.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerHeader.tsx"],"sourcesContent":["import { Fragment } from 'react'\nimport Segment from '@/components/ui/Segment'\nimport UploadFile from './UploadFile'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport { TbChevronRight, TbLayoutGrid, TbList } from 'react-icons/tb'\nimport type { Layout } from '../types'\n\ntype FileManagerHeaderProps = {\n onEntryClick: () => void\n onDirectoryClick: (id: string) => void\n}\n\nconst FileManagerHeader = ({\n onEntryClick,\n onDirectoryClick,\n}: FileManagerHeaderProps) => {\n const { directories, layout, setLayout } = useFileManagerStore()\n\n const handleEntryClick = () => {\n onEntryClick()\n }\n\n const handleDirectoryClick = (id: string) => {\n onDirectoryClick(id)\n }\n\n return (\n <div className=\"flex flex-col md:flex-row md:items-center justify-between gap-4\">\n <div>\n {directories.length > 0 ? (\n <div className=\"flex items-center gap-2\">\n <h3 className=\"flex items-center gap-2 text-base sm:text-2xl\">\n <span\n className=\"hover:text-primary cursor-pointer\"\n role=\"button\"\n onClick={handleEntryClick}\n >\n File Manager\n </span>\n {directories.map((dir, index) => (\n <Fragment key={dir.id}>\n <TbChevronRight className=\"text-lg\" />\n {directories.length - 1 === index ? (\n <span>{dir.label}</span>\n ) : (\n <span\n className=\"hover:text-primary cursor-pointer\"\n role=\"button\"\n onClick={() =>\n handleDirectoryClick(dir.id)\n }\n >\n {dir.label}\n </span>\n )}\n </Fragment>\n ))}\n </h3>\n </div>\n ) : (\n <h3>File Manager</h3>\n )}\n </div>\n <div className=\"flex items-center gap-2\">\n <Segment\n value={layout}\n onChange={(val) => setLayout(val as Layout)}\n >\n <Segment.Item value=\"grid\" className=\"text-xl px-3\">\n <TbLayoutGrid />\n </Segment.Item>\n <Segment.Item value=\"list\" className=\"text-xl px-3\">\n <TbList />\n </Segment.Item>\n </Segment>\n <UploadFile />\n </div>\n </div>\n )\n}\n\nexport default FileManagerHeader\n"],"names":["FileManagerHeader","onEntryClick","onDirectoryClick","directories","layout","setLayout","useFileManagerStore","handleEntryClick","handleDirectoryClick","id","jsxs","jsx","dir","index","Fragment","TbChevronRight","Segment","val","TbLayoutGrid","TbList","UploadFile"],"mappings":";;;;;;AAYA,MAAMA,IAAoB,CAAC;AAAA,EACvB,cAAAC;AAAA,EACA,kBAAAC;AACJ,MAA8B;AAC1B,QAAM,EAAE,aAAAC,GAAa,QAAAC,GAAQ,WAAAC,EAAA,IAAcC,EAAA,GAErCC,IAAmB,MAAM;AAC3B,IAAAN,EAAA;AAAA,EAAa,GAGXO,IAAuB,CAACC,MAAe;AACzC,IAAAP,EAAiBO,CAAE;AAAA,EAAA;AAGvB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,mEACX,UAAA;AAAA,IAAA,gBAAAC,EAAC,OAAA,EACI,UAAAR,EAAY,SAAS,IAClB,gBAAAQ,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA,gBAAAD,EAAC,MAAA,EAAG,WAAU,iDACV,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,MAAK;AAAA,UACL,SAASJ;AAAA,UACZ,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGAJ,EAAY,IAAI,CAACS,GAAKC,wBAClBC,GAAA,EACG,UAAA;AAAA,QAAA,gBAAAH,EAACI,GAAA,EAAe,WAAU,UAAA,CAAU;AAAA,QACnCZ,EAAY,SAAS,MAAMU,sBACvB,QAAA,EAAM,UAAAD,EAAI,OAAM,IAEjB,gBAAAD;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAU;AAAA,YACV,MAAK;AAAA,YACL,SAAS,MACLH,EAAqBI,EAAI,EAAE;AAAA,YAG9B,UAAAA,EAAI;AAAA,UAAA;AAAA,QAAA;AAAA,MACT,EAAA,GAbOA,EAAI,EAenB,CACH;AAAA,IAAA,GACL,EAAA,CACJ,IAEA,gBAAAD,EAAC,MAAA,EAAG,0BAAY,GAExB;AAAA,IACA,gBAAAD,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,MAAA,gBAAAA;AAAA,QAACM;AAAA,QAAA;AAAA,UACG,OAAOZ;AAAA,UACP,UAAU,CAACa,MAAQZ,EAAUY,CAAa;AAAA,UAE1C,UAAA;AAAA,YAAA,gBAAAN,EAACK,EAAQ,MAAR,EAAa,OAAM,QAAO,WAAU,gBACjC,UAAA,gBAAAL,EAACO,GAAA,CAAA,CAAa,EAAA,CAClB;AAAA,YACA,gBAAAP,EAACK,EAAQ,MAAR,EAAa,OAAM,QAAO,WAAU,gBACjC,UAAA,gBAAAL,EAACQ,GAAA,CAAA,CAAO,EAAA,CACZ;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,wBAEHC,GAAA,CAAA,CAAW;AAAA,IAAA,EAAA,CAChB;AAAA,EAAA,GACJ;AAER;"}
1
+ {"version":3,"file":"FileManagerHeader.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerHeader.tsx"],"sourcesContent":["import { Fragment } from 'react'\nimport Segment from '@/components/ui/Segment'\nimport UploadFile from './UploadFile'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport { TbChevronRight, TbLayoutGrid, TbList } from 'react-icons/tb'\nimport type { Layout } from '../types'\n\ntype FileManagerHeaderProps = {\n onEntryClick: () => void\n onDirectoryClick: (id: string) => void\n}\n\nconst FileManagerHeader = ({\n onEntryClick,\n onDirectoryClick,\n}: FileManagerHeaderProps) => {\n const { directories, layout, setLayout } = useFileManagerStore()\n\n const handleEntryClick = () => {\n onEntryClick()\n }\n\n const handleDirectoryClick = (id: string) => {\n onDirectoryClick(id)\n }\n\n return (\n <div className=\"flex flex-col md:flex-row md:items-center justify-between gap-4\">\n <div>\n {directories.length > 0 ? (\n <div className=\"flex items-center gap-2\">\n <h3 className=\"flex items-center gap-2 text-base sm:text-2xl\">\n <span\n className=\"hover:text-primary cursor-pointer\"\n role=\"button\"\n onClick={handleEntryClick}\n >\n File Manager\n </span>\n {directories.map((dir, index) => (\n <Fragment key={dir.id}>\n <TbChevronRight className=\"text-lg\" />\n {directories.length - 1 === index ? (\n <span>{dir.label}</span>\n ) : (\n <span\n className=\"hover:text-primary cursor-pointer\"\n role=\"button\"\n onClick={() =>\n handleDirectoryClick(dir.id)\n }\n >\n {dir.label}\n </span>\n )}\n </Fragment>\n ))}\n </h3>\n </div>\n ) : (\n <h3>File Manager</h3>\n )}\n </div>\n <div className=\"flex items-center gap-2\">\n <Segment\n value={layout}\n onChange={(val) => setLayout(val as Layout)}\n >\n <Segment.Item value=\"grid\" className=\"text-xl px-3\">\n <TbLayoutGrid />\n </Segment.Item>\n <Segment.Item value=\"list\" className=\"text-xl px-3\">\n <TbList />\n </Segment.Item>\n </Segment>\n <UploadFile />\n </div>\n </div>\n )\n}\n\nexport default FileManagerHeader\n"],"names":["FileManagerHeader","onEntryClick","onDirectoryClick","directories","layout","setLayout","useFileManagerStore","handleEntryClick","handleDirectoryClick","id","jsxs","jsx","dir","index","Fragment","TbChevronRight","Segment","val","TbLayoutGrid","TbList","UploadFile"],"mappings":";;;;;;AAYA,MAAMA,IAAoB,CAAC;AAAA,EACvB,cAAAC;AAAA,EACA,kBAAAC;AACJ,MAA8B;AAC1B,QAAM,EAAE,aAAAC,GAAa,QAAAC,GAAQ,WAAAC,EAAA,IAAcC,EAAA,GAErCC,IAAmB,MAAM;AAC3B,IAAAN,EAAA;AAAA,EACJ,GAEMO,IAAuB,CAACC,MAAe;AACzC,IAAAP,EAAiBO,CAAE;AAAA,EACvB;AAEA,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,mEACX,UAAA;AAAA,IAAA,gBAAAC,EAAC,OAAA,EACI,UAAAR,EAAY,SAAS,IAClB,gBAAAQ,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA,gBAAAD,EAAC,MAAA,EAAG,WAAU,iDACV,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,MAAK;AAAA,UACL,SAASJ;AAAA,UACZ,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGAJ,EAAY,IAAI,CAACS,GAAKC,wBAClBC,GAAA,EACG,UAAA;AAAA,QAAA,gBAAAH,EAACI,GAAA,EAAe,WAAU,UAAA,CAAU;AAAA,QACnCZ,EAAY,SAAS,MAAMU,sBACvB,QAAA,EAAM,UAAAD,EAAI,OAAM,IAEjB,gBAAAD;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAU;AAAA,YACV,MAAK;AAAA,YACL,SAAS,MACLH,EAAqBI,EAAI,EAAE;AAAA,YAG9B,UAAAA,EAAI;AAAA,UAAA;AAAA,QAAA;AAAA,MACT,EAAA,GAbOA,EAAI,EAenB,CACH;AAAA,IAAA,GACL,EAAA,CACJ,IAEA,gBAAAD,EAAC,MAAA,EAAG,0BAAY,GAExB;AAAA,IACA,gBAAAD,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,MAAA,gBAAAA;AAAA,QAACM;AAAA,QAAA;AAAA,UACG,OAAOZ;AAAA,UACP,UAAU,CAACa,MAAQZ,EAAUY,CAAa;AAAA,UAE1C,UAAA;AAAA,YAAA,gBAAAN,EAACK,EAAQ,MAAR,EAAa,OAAM,QAAO,WAAU,gBACjC,UAAA,gBAAAL,EAACO,GAAA,CAAA,CAAa,EAAA,CAClB;AAAA,YACA,gBAAAP,EAACK,EAAQ,MAAR,EAAa,OAAM,QAAO,WAAU,gBACjC,UAAA,gBAAAL,EAACQ,GAAA,CAAA,CAAO,EAAA,CACZ;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,wBAEHC,GAAA,CAAA,CAAW;AAAA,IAAA,EAAA,CAChB;AAAA,EAAA,GACJ;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileManagerInviteDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerInviteDialog.tsx"],"sourcesContent":["import { useState, useRef } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport Button from '@/components/ui/Button'\nimport Input from '@/components/ui/Input'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport sleep from '@/utils/sleep'\nimport classNames from '@/utils/classNames'\nimport { TbLink } from 'react-icons/tb'\n\nconst FileManagerInviteDialog = () => {\n const { inviteDialog, setInviteDialog } = useFileManagerStore()\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n const [inviting, setInviting] = useState(false)\n\n const handleDialogClose = () => {\n setInviteDialog({ id: '', open: false })\n }\n\n const handleInvite = async () => {\n setInviting(true)\n await sleep(500)\n toast.push(\n <Notification\n type=\"success\"\n title=\"Invitation send!\"\n ></Notification>,\n { placement: 'top-end' },\n )\n setInviting(false)\n }\n\n const handleCopy = async () => {\n toast.push(\n <Notification type=\"success\" title=\"Copied!\"></Notification>,\n { placement: 'top-end' },\n )\n navigator.clipboard.writeText(window.location.href)\n }\n\n return (\n <Dialog\n isOpen={inviteDialog.open}\n contentClassName=\"mt-[50%]\"\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h4>Share this file</h4>\n <div className=\"mt-6\">\n <Input\n ref={inputRef}\n placeholder=\"Email\"\n type=\"email\"\n suffix={\n <Button\n type=\"button\"\n variant=\"solid\"\n size=\"sm\"\n customColorClass={({ unclickable }) =>\n classNames(\n 'bg-gray-900 dark:bg-gray-100 dark:hover:bg-gray-200',\n !unclickable\n ? 'hover:bg-gray-800'\n : 'hover:bg-gray-900',\n )\n }\n loading={inviting}\n onClick={handleInvite}\n >\n Invite\n </Button>\n }\n />\n </div>\n <div className=\"mt-6 flex justify-between items-center\">\n <Button\n variant=\"plain\"\n size=\"sm\"\n icon={<TbLink />}\n onClick={handleCopy}\n >\n Copy link\n </Button>\n <Button variant=\"solid\" size=\"sm\" onClick={handleDialogClose}>\n Done\n </Button>\n </div>\n </Dialog>\n )\n}\n\nexport default FileManagerInviteDialog\n"],"names":["FileManagerInviteDialog","inviteDialog","setInviteDialog","useFileManagerStore","inputRef","useRef","inviting","setInviting","useState","handleDialogClose","handleInvite","sleep","toast","jsx","Notification","handleCopy","jsxs","Dialog","Input","Button","unclickable","classNames","TbLink"],"mappings":";;;;;;;;;;;;;;;;AAWA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,EAAA,IAAoBC,EAAA,GAEpCC,IAAWC,EAAyB,IAAI,GAExC,CAACC,GAAUC,CAAW,IAAIC,EAAS,EAAK,GAExCC,IAAoB,MAAM;AAC5B,IAAAP,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAAA,GAGrCQ,IAAe,YAAY;AAC7B,IAAAH,EAAY,EAAI,GAChB,MAAMI,EAAM,GAAG,GACfC,EAAM;AAAA,MACF,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACG,MAAK;AAAA,UACL,OAAM;AAAA,QAAA;AAAA,MAAA;AAAA,MAEV,EAAE,WAAW,UAAA;AAAA,IAAU,GAE3BP,EAAY,EAAK;AAAA,EAAA,GAGfQ,IAAa,YAAY;AAC3B,IAAAH,EAAM;AAAA,MACF,gBAAAC,EAACC,GAAA,EAAa,MAAK,WAAU,OAAM,WAAU;AAAA,MAC7C,EAAE,WAAW,UAAA;AAAA,IAAU,GAE3B,UAAU,UAAU,UAAU,OAAO,SAAS,IAAI;AAAA,EAAA;AAGtD,SACI,gBAAAE;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQhB,EAAa;AAAA,MACrB,kBAAiB;AAAA,MACjB,SAASQ;AAAA,MACT,gBAAgBA;AAAA,MAEhB,UAAA;AAAA,QAAA,gBAAAI,EAAC,QAAG,UAAA,kBAAA,CAAe;AAAA,QACnB,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,UAACK;AAAA,UAAA;AAAA,YACG,KAAKd;AAAA,YACL,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,QACI,gBAAAS;AAAA,cAACM;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,kBAAkB,CAAC,EAAE,aAAAC,EAAA,MACjBC;AAAA,kBACI;AAAA,kBACCD,IAEK,sBADA;AAAA,gBACA;AAAA,gBAGd,SAASd;AAAA,gBACT,SAASI;AAAA,gBACZ,UAAA;AAAA,cAAA;AAAA,YAAA;AAAA,UAED;AAAA,QAAA,GAGZ;AAAA,QACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,UAAA,gBAAAH;AAAA,YAACM;AAAA,YAAA;AAAA,cACG,SAAQ;AAAA,cACR,MAAK;AAAA,cACL,wBAAOG,GAAA,EAAO;AAAA,cACd,SAASP;AAAA,cACZ,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAGD,gBAAAF,EAACM,KAAO,SAAQ,SAAQ,MAAK,MAAK,SAASV,GAAmB,UAAA,OAAA,CAE9D;AAAA,QAAA,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
1
+ {"version":3,"file":"FileManagerInviteDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerInviteDialog.tsx"],"sourcesContent":["import { useState, useRef } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport Button from '@/components/ui/Button'\nimport Input from '@/components/ui/Input'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\nimport sleep from '@/utils/sleep'\nimport classNames from '@/utils/classNames'\nimport { TbLink } from 'react-icons/tb'\n\nconst FileManagerInviteDialog = () => {\n const { inviteDialog, setInviteDialog } = useFileManagerStore()\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n const [inviting, setInviting] = useState(false)\n\n const handleDialogClose = () => {\n setInviteDialog({ id: '', open: false })\n }\n\n const handleInvite = async () => {\n setInviting(true)\n await sleep(500)\n toast.push(\n <Notification\n type=\"success\"\n title=\"Invitation send!\"\n ></Notification>,\n { placement: 'top-end' },\n )\n setInviting(false)\n }\n\n const handleCopy = async () => {\n toast.push(\n <Notification type=\"success\" title=\"Copied!\"></Notification>,\n { placement: 'top-end' },\n )\n navigator.clipboard.writeText(window.location.href)\n }\n\n return (\n <Dialog\n isOpen={inviteDialog.open}\n contentClassName=\"mt-[50%]\"\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h4>Share this file</h4>\n <div className=\"mt-6\">\n <Input\n ref={inputRef}\n placeholder=\"Email\"\n type=\"email\"\n suffix={\n <Button\n type=\"button\"\n variant=\"solid\"\n size=\"sm\"\n customColorClass={({ unclickable }) =>\n classNames(\n 'bg-gray-900 dark:bg-gray-100 dark:hover:bg-gray-200',\n !unclickable\n ? 'hover:bg-gray-800'\n : 'hover:bg-gray-900',\n )\n }\n loading={inviting}\n onClick={handleInvite}\n >\n Invite\n </Button>\n }\n />\n </div>\n <div className=\"mt-6 flex justify-between items-center\">\n <Button\n variant=\"plain\"\n size=\"sm\"\n icon={<TbLink />}\n onClick={handleCopy}\n >\n Copy link\n </Button>\n <Button variant=\"solid\" size=\"sm\" onClick={handleDialogClose}>\n Done\n </Button>\n </div>\n </Dialog>\n )\n}\n\nexport default FileManagerInviteDialog\n"],"names":["FileManagerInviteDialog","inviteDialog","setInviteDialog","useFileManagerStore","inputRef","useRef","inviting","setInviting","useState","handleDialogClose","handleInvite","sleep","toast","jsx","Notification","handleCopy","jsxs","Dialog","Input","Button","unclickable","classNames","TbLink"],"mappings":";;;;;;;;;;;;;;;;AAWA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,EAAA,IAAoBC,EAAA,GAEpCC,IAAWC,EAAyB,IAAI,GAExC,CAACC,GAAUC,CAAW,IAAIC,EAAS,EAAK,GAExCC,IAAoB,MAAM;AAC5B,IAAAP,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAC3C,GAEMQ,IAAe,YAAY;AAC7B,IAAAH,EAAY,EAAI,GAChB,MAAMI,EAAM,GAAG,GACfC,EAAM;AAAA,MACF,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACG,MAAK;AAAA,UACL,OAAM;AAAA,QAAA;AAAA,MAAA;AAAA,MAEV,EAAE,WAAW,UAAA;AAAA,IAAU,GAE3BP,EAAY,EAAK;AAAA,EACrB,GAEMQ,IAAa,YAAY;AAC3B,IAAAH,EAAM;AAAA,MACF,gBAAAC,EAACC,GAAA,EAAa,MAAK,WAAU,OAAM,WAAU;AAAA,MAC7C,EAAE,WAAW,UAAA;AAAA,IAAU,GAE3B,UAAU,UAAU,UAAU,OAAO,SAAS,IAAI;AAAA,EACtD;AAEA,SACI,gBAAAE;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQhB,EAAa;AAAA,MACrB,kBAAiB;AAAA,MACjB,SAASQ;AAAA,MACT,gBAAgBA;AAAA,MAEhB,UAAA;AAAA,QAAA,gBAAAI,EAAC,QAAG,UAAA,kBAAA,CAAe;AAAA,QACnB,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,UAACK;AAAA,UAAA;AAAA,YACG,KAAKd;AAAA,YACL,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,QACI,gBAAAS;AAAA,cAACM;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,kBAAkB,CAAC,EAAE,aAAAC,EAAA,MACjBC;AAAA,kBACI;AAAA,kBACCD,IAEK,sBADA;AAAA,gBACA;AAAA,gBAGd,SAASd;AAAA,gBACT,SAASI;AAAA,gBACZ,UAAA;AAAA,cAAA;AAAA,YAAA;AAAA,UAED;AAAA,QAAA,GAGZ;AAAA,QACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,UAAA,gBAAAH;AAAA,YAACM;AAAA,YAAA;AAAA,cACG,SAAQ;AAAA,cACR,MAAK;AAAA,cACL,wBAAOG,GAAA,EAAO;AAAA,cACd,SAASP;AAAA,cACZ,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAGD,gBAAAF,EAACM,KAAO,SAAQ,SAAQ,MAAK,MAAK,SAASV,GAAmB,UAAA,OAAA,CAE9D;AAAA,QAAA,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileManagerRenameDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerRenameDialog.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport Button from '@/components/ui/Button'\nimport DebounceInput from '@/components/shared/DebounceInput'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\n\nconst FileManagerRenameDialog = () => {\n const { renameDialog, setRenameDialog, renameFile } = useFileManagerStore()\n\n const [newName, setNewName] = useState('')\n\n const handleDialogClose = () => {\n setRenameDialog({ id: '', open: false })\n }\n\n const handleSubmit = () => {\n renameFile({ id: renameDialog.id, fileName: newName })\n setRenameDialog({ id: '', open: false })\n }\n\n return (\n <Dialog\n isOpen={renameDialog.open}\n contentClassName=\"mt-[50%]\"\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h4>Rename</h4>\n <div className=\"mt-6\">\n <DebounceInput\n placeholder=\"New name\"\n type=\"text\"\n onChange={(e) => setNewName(e.target.value)}\n />\n </div>\n <div className=\"mt-6 flex justify-end items-center gap-2\">\n <Button size=\"sm\" onClick={handleDialogClose}>\n Close\n </Button>\n <Button\n variant=\"solid\"\n size=\"sm\"\n disabled={newName.length === 0}\n onClick={handleSubmit}\n >\n <span className=\"flex justify-center min-w-10\">Ok</span>\n </Button>\n </div>\n </Dialog>\n )\n}\n\nexport default FileManagerRenameDialog\n"],"names":["FileManagerRenameDialog","renameDialog","setRenameDialog","renameFile","useFileManagerStore","newName","setNewName","useState","handleDialogClose","handleSubmit","jsxs","Dialog","jsx","DebounceInput","e","Button"],"mappings":";;;;;;;;AAMA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,GAAiB,YAAAC,EAAA,IAAeC,EAAA,GAEhD,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE,GAEnCC,IAAoB,MAAM;AAC5B,IAAAN,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAAA,GAGrCO,IAAe,MAAM;AACvB,IAAAN,EAAW,EAAE,IAAIF,EAAa,IAAI,UAAUI,GAAS,GACrDH,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAAA;AAG3C,SACI,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQV,EAAa;AAAA,MACrB,kBAAiB;AAAA,MACjB,SAASO;AAAA,MACT,gBAAgBA;AAAA,MAEhB,UAAA;AAAA,QAAA,gBAAAI,EAAC,QAAG,UAAA,SAAA,CAAM;AAAA,QACV,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,UAAU,CAACC,MAAMR,EAAWQ,EAAE,OAAO,KAAK;AAAA,UAAA;AAAA,QAAA,GAElD;AAAA,QACA,gBAAAJ,EAAC,OAAA,EAAI,WAAU,4CACX,UAAA;AAAA,UAAA,gBAAAE,EAACG,GAAA,EAAO,MAAK,MAAK,SAASP,GAAmB,UAAA,SAE9C;AAAA,UACA,gBAAAI;AAAA,YAACG;AAAA,YAAA;AAAA,cACG,SAAQ;AAAA,cACR,MAAK;AAAA,cACL,UAAUV,EAAQ,WAAW;AAAA,cAC7B,SAASI;AAAA,cAET,UAAA,gBAAAG,EAAC,QAAA,EAAK,WAAU,gCAA+B,UAAA,KAAA,CAAE;AAAA,YAAA;AAAA,UAAA;AAAA,QACrD,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
1
+ {"version":3,"file":"FileManagerRenameDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/FileManagerRenameDialog.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport Button from '@/components/ui/Button'\nimport DebounceInput from '@/components/shared/DebounceInput'\nimport { useFileManagerStore } from '../store/useFileManagerStore'\n\nconst FileManagerRenameDialog = () => {\n const { renameDialog, setRenameDialog, renameFile } = useFileManagerStore()\n\n const [newName, setNewName] = useState('')\n\n const handleDialogClose = () => {\n setRenameDialog({ id: '', open: false })\n }\n\n const handleSubmit = () => {\n renameFile({ id: renameDialog.id, fileName: newName })\n setRenameDialog({ id: '', open: false })\n }\n\n return (\n <Dialog\n isOpen={renameDialog.open}\n contentClassName=\"mt-[50%]\"\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h4>Rename</h4>\n <div className=\"mt-6\">\n <DebounceInput\n placeholder=\"New name\"\n type=\"text\"\n onChange={(e) => setNewName(e.target.value)}\n />\n </div>\n <div className=\"mt-6 flex justify-end items-center gap-2\">\n <Button size=\"sm\" onClick={handleDialogClose}>\n Close\n </Button>\n <Button\n variant=\"solid\"\n size=\"sm\"\n disabled={newName.length === 0}\n onClick={handleSubmit}\n >\n <span className=\"flex justify-center min-w-10\">Ok</span>\n </Button>\n </div>\n </Dialog>\n )\n}\n\nexport default FileManagerRenameDialog\n"],"names":["FileManagerRenameDialog","renameDialog","setRenameDialog","renameFile","useFileManagerStore","newName","setNewName","useState","handleDialogClose","handleSubmit","jsxs","Dialog","jsx","DebounceInput","e","Button"],"mappings":";;;;;;;;AAMA,MAAMA,IAA0B,MAAM;AAClC,QAAM,EAAE,cAAAC,GAAc,iBAAAC,GAAiB,YAAAC,EAAA,IAAeC,EAAA,GAEhD,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE,GAEnCC,IAAoB,MAAM;AAC5B,IAAAN,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAC3C,GAEMO,IAAe,MAAM;AACvB,IAAAN,EAAW,EAAE,IAAIF,EAAa,IAAI,UAAUI,GAAS,GACrDH,EAAgB,EAAE,IAAI,IAAI,MAAM,IAAO;AAAA,EAC3C;AAEA,SACI,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,QAAQV,EAAa;AAAA,MACrB,kBAAiB;AAAA,MACjB,SAASO;AAAA,MACT,gBAAgBA;AAAA,MAEhB,UAAA;AAAA,QAAA,gBAAAI,EAAC,QAAG,UAAA,SAAA,CAAM;AAAA,QACV,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,UAAU,CAACC,MAAMR,EAAWQ,EAAE,OAAO,KAAK;AAAA,UAAA;AAAA,QAAA,GAElD;AAAA,QACA,gBAAAJ,EAAC,OAAA,EAAI,WAAU,4CACX,UAAA;AAAA,UAAA,gBAAAE,EAACG,GAAA,EAAO,MAAK,MAAK,SAASP,GAAmB,UAAA,SAE9C;AAAA,UACA,gBAAAI;AAAA,YAACG;AAAA,YAAA;AAAA,cACG,SAAQ;AAAA,cACR,MAAK;AAAA,cACL,UAAUV,EAAQ,WAAW;AAAA,cAC7B,SAASI;AAAA,cAET,UAAA,gBAAAG,EAAC,QAAA,EAAK,WAAU,gCAA+B,UAAA,KAAA,CAAE;AAAA,YAAA;AAAA,UAAA;AAAA,QACrD,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFile.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/UploadFile.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Upload from '@/components/ui/Upload'\nimport toast from '@/components/ui/toast'\nimport Notification from '@/components/ui/Notification'\nimport UploadMedia from '@/assets/svg/UploadMedia'\nimport sleep from '@/utils/sleep'\n\nconst UploadFile = () => {\n const [uploadDialogOpen, setUploadDialogOpen] = useState(false)\n const [isUploading, setIsUploading] = useState(false)\n const [uploadedFiles, setUploadedFiles] = useState<File[]>([])\n\n const handleUploadDialogClose = () => {\n setUploadDialogOpen(false)\n }\n\n const handleUpload = async () => {\n setIsUploading(true)\n await sleep(500)\n handleUploadDialogClose()\n setIsUploading(false)\n toast.push(\n <Notification title={'Successfully uploaded'} type=\"success\" />,\n { placement: 'top-center' },\n )\n }\n\n return (\n <>\n <Button variant=\"solid\" onClick={() => setUploadDialogOpen(true)}>\n Upload\n </Button>\n <Dialog\n isOpen={uploadDialogOpen}\n onClose={handleUploadDialogClose}\n onRequestClose={handleUploadDialogClose}\n >\n <h4>Upload Files</h4>\n <Upload\n draggable\n className=\"mt-6 bg-gray-100\"\n onChange={setUploadedFiles}\n onFileRemove={setUploadedFiles}\n >\n <div className=\"my-4 text-center\">\n <div className=\"text-6xl mb-4 flex justify-center\">\n <UploadMedia height={150} width={200} />\n </div>\n <p className=\"font-semibold\">\n <span className=\"text-gray-800 dark:text-white\">\n Drop your files here, or{' '}\n </span>\n <span className=\"text-blue-500\">browse</span>\n </p>\n <p className=\"mt-1 font-semibold opacity-60 dark:text-white\">\n through your machine\n </p>\n </div>\n </Upload>\n <div className=\"mt-4\">\n <Button\n block\n loading={isUploading}\n variant=\"solid\"\n disabled={uploadedFiles.length === 0}\n onClick={handleUpload}\n >\n Upload\n </Button>\n </div>\n </Dialog>\n </>\n )\n}\n\nexport default UploadFile\n"],"names":["UploadFile","uploadDialogOpen","setUploadDialogOpen","useState","isUploading","setIsUploading","uploadedFiles","setUploadedFiles","handleUploadDialogClose","handleUpload","sleep","toast","jsx","Notification","jsxs","Fragment","Button","Dialog","Upload","UploadMedia"],"mappings":";;;;;;;;;;;;;;AASA,MAAMA,IAAa,MAAM;AACrB,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAS,EAAK,GACxD,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAK,GAC9C,CAACG,GAAeC,CAAgB,IAAIJ,EAAiB,CAAA,CAAE,GAEvDK,IAA0B,MAAM;AAClC,IAAAN,EAAoB,EAAK;AAAA,EAAA,GAGvBO,IAAe,YAAY;AAC7B,IAAAJ,EAAe,EAAI,GACnB,MAAMK,EAAM,GAAG,GACfF,EAAA,GACAH,EAAe,EAAK,GACpBM,EAAM;AAAA,MACF,gBAAAC,EAACC,GAAA,EAAa,OAAO,yBAAyB,MAAK,WAAU;AAAA,MAC7D,EAAE,WAAW,aAAA;AAAA,IAAa;AAAA,EAC9B;AAGJ,SACI,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAH,EAACI,GAAA,EAAO,SAAQ,SAAQ,SAAS,MAAMd,EAAoB,EAAI,GAAG,UAAA,SAAA,CAElE;AAAA,IACA,gBAAAY;AAAA,MAACG;AAAA,MAAA;AAAA,QACG,QAAQhB;AAAA,QACR,SAASO;AAAA,QACT,gBAAgBA;AAAA,QAEhB,UAAA;AAAA,UAAA,gBAAAI,EAAC,QAAG,UAAA,eAAA,CAAY;AAAA,UAChB,gBAAAA;AAAA,YAACM;AAAA,YAAA;AAAA,cACG,WAAS;AAAA,cACT,WAAU;AAAA,cACV,UAAUX;AAAA,cACV,cAAcA;AAAA,cAEd,UAAA,gBAAAO,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA;AAAA,gBAAA,gBAAAF,EAAC,OAAA,EAAI,WAAU,qCACX,UAAA,gBAAAA,EAACO,KAAY,QAAQ,KAAK,OAAO,IAAA,CAAK,EAAA,CAC1C;AAAA,gBACA,gBAAAL,EAAC,KAAA,EAAE,WAAU,iBACT,UAAA;AAAA,kBAAA,gBAAAA,EAAC,QAAA,EAAK,WAAU,iCAAgC,UAAA;AAAA,oBAAA;AAAA,oBACnB;AAAA,kBAAA,GAC7B;AAAA,kBACA,gBAAAF,EAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,SAAA,CAAM;AAAA,gBAAA,GAC1C;AAAA,gBACA,gBAAAA,EAAC,KAAA,EAAE,WAAU,iDAAgD,UAAA,uBAAA,CAE7D;AAAA,cAAA,EAAA,CACJ;AAAA,YAAA;AAAA,UAAA;AAAA,UAEJ,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,YAACI;AAAA,YAAA;AAAA,cACG,OAAK;AAAA,cACL,SAASZ;AAAA,cACT,SAAQ;AAAA,cACR,UAAUE,EAAc,WAAW;AAAA,cACnC,SAASG;AAAA,cACZ,UAAA;AAAA,YAAA;AAAA,UAAA,EAED,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;"}
1
+ {"version":3,"file":"UploadFile.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/components/UploadFile.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Upload from '@/components/ui/Upload'\nimport toast from '@/components/ui/toast'\nimport Notification from '@/components/ui/Notification'\nimport UploadMedia from '@/assets/svg/UploadMedia'\nimport sleep from '@/utils/sleep'\n\nconst UploadFile = () => {\n const [uploadDialogOpen, setUploadDialogOpen] = useState(false)\n const [isUploading, setIsUploading] = useState(false)\n const [uploadedFiles, setUploadedFiles] = useState<File[]>([])\n\n const handleUploadDialogClose = () => {\n setUploadDialogOpen(false)\n }\n\n const handleUpload = async () => {\n setIsUploading(true)\n await sleep(500)\n handleUploadDialogClose()\n setIsUploading(false)\n toast.push(\n <Notification title={'Successfully uploaded'} type=\"success\" />,\n { placement: 'top-center' },\n )\n }\n\n return (\n <>\n <Button variant=\"solid\" onClick={() => setUploadDialogOpen(true)}>\n Upload\n </Button>\n <Dialog\n isOpen={uploadDialogOpen}\n onClose={handleUploadDialogClose}\n onRequestClose={handleUploadDialogClose}\n >\n <h4>Upload Files</h4>\n <Upload\n draggable\n className=\"mt-6 bg-gray-100\"\n onChange={setUploadedFiles}\n onFileRemove={setUploadedFiles}\n >\n <div className=\"my-4 text-center\">\n <div className=\"text-6xl mb-4 flex justify-center\">\n <UploadMedia height={150} width={200} />\n </div>\n <p className=\"font-semibold\">\n <span className=\"text-gray-800 dark:text-white\">\n Drop your files here, or{' '}\n </span>\n <span className=\"text-blue-500\">browse</span>\n </p>\n <p className=\"mt-1 font-semibold opacity-60 dark:text-white\">\n through your machine\n </p>\n </div>\n </Upload>\n <div className=\"mt-4\">\n <Button\n block\n loading={isUploading}\n variant=\"solid\"\n disabled={uploadedFiles.length === 0}\n onClick={handleUpload}\n >\n Upload\n </Button>\n </div>\n </Dialog>\n </>\n )\n}\n\nexport default UploadFile\n"],"names":["UploadFile","uploadDialogOpen","setUploadDialogOpen","useState","isUploading","setIsUploading","uploadedFiles","setUploadedFiles","handleUploadDialogClose","handleUpload","sleep","toast","jsx","Notification","jsxs","Fragment","Button","Dialog","Upload","UploadMedia"],"mappings":";;;;;;;;;;;;;;AASA,MAAMA,IAAa,MAAM;AACrB,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAS,EAAK,GACxD,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAK,GAC9C,CAACG,GAAeC,CAAgB,IAAIJ,EAAiB,CAAA,CAAE,GAEvDK,IAA0B,MAAM;AAClC,IAAAN,EAAoB,EAAK;AAAA,EAC7B,GAEMO,IAAe,YAAY;AAC7B,IAAAJ,EAAe,EAAI,GACnB,MAAMK,EAAM,GAAG,GACfF,EAAA,GACAH,EAAe,EAAK,GACpBM,EAAM;AAAA,MACF,gBAAAC,EAACC,GAAA,EAAa,OAAO,yBAAyB,MAAK,WAAU;AAAA,MAC7D,EAAE,WAAW,aAAA;AAAA,IAAa;AAAA,EAElC;AAEA,SACI,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAH,EAACI,GAAA,EAAO,SAAQ,SAAQ,SAAS,MAAMd,EAAoB,EAAI,GAAG,UAAA,SAAA,CAElE;AAAA,IACA,gBAAAY;AAAA,MAACG;AAAA,MAAA;AAAA,QACG,QAAQhB;AAAA,QACR,SAASO;AAAA,QACT,gBAAgBA;AAAA,QAEhB,UAAA;AAAA,UAAA,gBAAAI,EAAC,QAAG,UAAA,eAAA,CAAY;AAAA,UAChB,gBAAAA;AAAA,YAACM;AAAA,YAAA;AAAA,cACG,WAAS;AAAA,cACT,WAAU;AAAA,cACV,UAAUX;AAAA,cACV,cAAcA;AAAA,cAEd,UAAA,gBAAAO,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA;AAAA,gBAAA,gBAAAF,EAAC,OAAA,EAAI,WAAU,qCACX,UAAA,gBAAAA,EAACO,KAAY,QAAQ,KAAK,OAAO,IAAA,CAAK,EAAA,CAC1C;AAAA,gBACA,gBAAAL,EAAC,KAAA,EAAE,WAAU,iBACT,UAAA;AAAA,kBAAA,gBAAAA,EAAC,QAAA,EAAK,WAAU,iCAAgC,UAAA;AAAA,oBAAA;AAAA,oBACnB;AAAA,kBAAA,GAC7B;AAAA,kBACA,gBAAAF,EAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,SAAA,CAAM;AAAA,gBAAA,GAC1C;AAAA,gBACA,gBAAAA,EAAC,KAAA,EAAE,WAAU,iDAAgD,UAAA,uBAAA,CAE7D;AAAA,cAAA,EAAA,CACJ;AAAA,YAAA;AAAA,UAAA;AAAA,UAEJ,gBAAAA,EAAC,OAAA,EAAI,WAAU,QACX,UAAA,gBAAAA;AAAA,YAACI;AAAA,YAAA;AAAA,cACG,OAAK;AAAA,cACL,SAASZ;AAAA,cACT,SAAQ;AAAA,cACR,UAAUE,EAAc,WAAW;AAAA,cACnC,SAASG;AAAA,cACZ,UAAA;AAAA,YAAA;AAAA,UAAA,EAED,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFileManagerStore.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/store/useFileManagerStore.tsx"],"sourcesContent":["import { create } from 'zustand'\nimport type { Files, Directories, Layout } from '../types'\n\ntype DialogProps = { id: string; open: boolean }\n\nexport type FileManagerState = {\n fileList: Files\n layout: Layout\n selectedFile: string\n openedDirectoryId: string\n directories: Directories\n deleteDialog: DialogProps\n inviteDialog: DialogProps\n renameDialog: DialogProps\n}\n\ntype FileManagerAction = {\n setFileList: (payload: Files) => void\n setLayout: (payload: Layout) => void\n setOpenedDirectoryId: (payload: string) => void\n setDirectories: (payload: Directories) => void\n setSelectedFile: (payload: string) => void\n setDeleteDialog: (paload: DialogProps) => void\n setInviteDialog: (paload: DialogProps) => void\n setRenameDialog: (paload: DialogProps) => void\n deleteFile: (payload: string) => void\n renameFile: (payload: { id: string; fileName: string }) => void\n}\n\nconst initialState: FileManagerState = {\n fileList: [],\n layout: 'grid',\n selectedFile: '',\n openedDirectoryId: '',\n directories: [],\n deleteDialog: { open: false, id: '' },\n inviteDialog: { open: false, id: '' },\n renameDialog: { open: false, id: '' },\n}\n\nexport const useFileManagerStore = create<FileManagerState & FileManagerAction>(\n (set, get) => ({\n ...initialState,\n setFileList: (payload) => set(() => ({ fileList: payload })),\n setLayout: (payload: Layout) => set(() => ({ layout: payload })),\n setOpenedDirectoryId: (payload) =>\n set(() => ({ openedDirectoryId: payload })),\n setSelectedFile: (payload) => set(() => ({ selectedFile: payload })),\n setDirectories: (payload) => set(() => ({ directories: payload })),\n setDeleteDialog: (payload) => set(() => ({ deleteDialog: payload })),\n setInviteDialog: (payload) => set(() => ({ inviteDialog: payload })),\n setRenameDialog: (payload) => set(() => ({ renameDialog: payload })),\n deleteFile: (payload) =>\n set(() => ({\n fileList: get().fileList.filter((file) => file.id !== payload),\n })),\n renameFile: (payload) =>\n set(() => ({\n fileList: get().fileList.map((file) => {\n if (file.id === payload.id) {\n const fileAbbreviationArr = file.name.split('.')\n const fileAbbreviation =\n fileAbbreviationArr[fileAbbreviationArr.length - 1]\n\n if (fileAbbreviationArr.length > 1) {\n file.name = `${payload.fileName}.${fileAbbreviation}`\n } else {\n file.name = payload.fileName\n }\n }\n return file\n }),\n })),\n }),\n)\n"],"names":["initialState","useFileManagerStore","create","set","get","payload","file","fileAbbreviationArr","fileAbbreviation"],"mappings":";AA6BA,MAAMA,IAAiC;AAAA,EACnC,UAAU,CAAA;AAAA,EACV,QAAQ;AAAA,EACR,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,aAAa,CAAA;AAAA,EACb,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AAAA,EACjC,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AAAA,EACjC,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AACrC,GAEaC,IAAsBC;AAAA,EAC/B,CAACC,GAAKC,OAAS;AAAA,IACX,GAAGJ;AAAA,IACH,aAAa,CAACK,MAAYF,EAAI,OAAO,EAAE,UAAUE,IAAU;AAAA,IAC3D,WAAW,CAACA,MAAoBF,EAAI,OAAO,EAAE,QAAQE,IAAU;AAAA,IAC/D,sBAAsB,CAACA,MACnBF,EAAI,OAAO,EAAE,mBAAmBE,IAAU;AAAA,IAC9C,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,gBAAgB,CAACA,MAAYF,EAAI,OAAO,EAAE,aAAaE,IAAU;AAAA,IACjE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,YAAY,CAACA,MACTF,EAAI,OAAO;AAAA,MACP,UAAUC,IAAM,SAAS,OAAO,CAACE,MAASA,EAAK,OAAOD,CAAO;AAAA,IAAA,EAC/D;AAAA,IACN,YAAY,CAACA,MACTF,EAAI,OAAO;AAAA,MACP,UAAUC,EAAA,EAAM,SAAS,IAAI,CAACE,MAAS;AACnC,YAAIA,EAAK,OAAOD,EAAQ,IAAI;AACxB,gBAAME,IAAsBD,EAAK,KAAK,MAAM,GAAG,GACzCE,IACFD,EAAoBA,EAAoB,SAAS,CAAC;AAEtD,UAAIA,EAAoB,SAAS,IAC7BD,EAAK,OAAO,GAAGD,EAAQ,QAAQ,IAAIG,CAAgB,KAEnDF,EAAK,OAAOD,EAAQ;AAAA,QACxB;AAEJ,eAAOC;AAAA,MAAA,CACV;AAAA,IAAA,EACH;AAAA,EAAA;AAEd;"}
1
+ {"version":3,"file":"useFileManagerStore.js","sources":["../../../../../../../lib/@ecme/views/concepts/files/FileManager/store/useFileManagerStore.tsx"],"sourcesContent":["import { create } from 'zustand'\nimport type { Files, Directories, Layout } from '../types'\n\ntype DialogProps = { id: string; open: boolean }\n\nexport type FileManagerState = {\n fileList: Files\n layout: Layout\n selectedFile: string\n openedDirectoryId: string\n directories: Directories\n deleteDialog: DialogProps\n inviteDialog: DialogProps\n renameDialog: DialogProps\n}\n\ntype FileManagerAction = {\n setFileList: (payload: Files) => void\n setLayout: (payload: Layout) => void\n setOpenedDirectoryId: (payload: string) => void\n setDirectories: (payload: Directories) => void\n setSelectedFile: (payload: string) => void\n setDeleteDialog: (paload: DialogProps) => void\n setInviteDialog: (paload: DialogProps) => void\n setRenameDialog: (paload: DialogProps) => void\n deleteFile: (payload: string) => void\n renameFile: (payload: { id: string; fileName: string }) => void\n}\n\nconst initialState: FileManagerState = {\n fileList: [],\n layout: 'grid',\n selectedFile: '',\n openedDirectoryId: '',\n directories: [],\n deleteDialog: { open: false, id: '' },\n inviteDialog: { open: false, id: '' },\n renameDialog: { open: false, id: '' },\n}\n\nexport const useFileManagerStore = create<FileManagerState & FileManagerAction>(\n (set, get) => ({\n ...initialState,\n setFileList: (payload) => set(() => ({ fileList: payload })),\n setLayout: (payload: Layout) => set(() => ({ layout: payload })),\n setOpenedDirectoryId: (payload) =>\n set(() => ({ openedDirectoryId: payload })),\n setSelectedFile: (payload) => set(() => ({ selectedFile: payload })),\n setDirectories: (payload) => set(() => ({ directories: payload })),\n setDeleteDialog: (payload) => set(() => ({ deleteDialog: payload })),\n setInviteDialog: (payload) => set(() => ({ inviteDialog: payload })),\n setRenameDialog: (payload) => set(() => ({ renameDialog: payload })),\n deleteFile: (payload) =>\n set(() => ({\n fileList: get().fileList.filter((file) => file.id !== payload),\n })),\n renameFile: (payload) =>\n set(() => ({\n fileList: get().fileList.map((file) => {\n if (file.id === payload.id) {\n const fileAbbreviationArr = file.name.split('.')\n const fileAbbreviation =\n fileAbbreviationArr[fileAbbreviationArr.length - 1]\n\n if (fileAbbreviationArr.length > 1) {\n file.name = `${payload.fileName}.${fileAbbreviation}`\n } else {\n file.name = payload.fileName\n }\n }\n return file\n }),\n })),\n }),\n)\n"],"names":["initialState","useFileManagerStore","create","set","get","payload","file","fileAbbreviationArr","fileAbbreviation"],"mappings":";AA6BA,MAAMA,IAAiC;AAAA,EACnC,UAAU,CAAA;AAAA,EACV,QAAQ;AAAA,EACR,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,aAAa,CAAA;AAAA,EACb,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AAAA,EACjC,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AAAA,EACjC,cAAc,EAAE,MAAM,IAAO,IAAI,GAAA;AACrC,GAEaC,IAAsBC;AAAA,EAC/B,CAACC,GAAKC,OAAS;AAAA,IACX,GAAGJ;AAAA,IACH,aAAa,CAACK,MAAYF,EAAI,OAAO,EAAE,UAAUE,IAAU;AAAA,IAC3D,WAAW,CAACA,MAAoBF,EAAI,OAAO,EAAE,QAAQE,IAAU;AAAA,IAC/D,sBAAsB,CAACA,MACnBF,EAAI,OAAO,EAAE,mBAAmBE,IAAU;AAAA,IAC9C,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,gBAAgB,CAACA,MAAYF,EAAI,OAAO,EAAE,aAAaE,IAAU;AAAA,IACjE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,iBAAiB,CAACA,MAAYF,EAAI,OAAO,EAAE,cAAcE,IAAU;AAAA,IACnE,YAAY,CAACA,MACTF,EAAI,OAAO;AAAA,MACP,UAAUC,IAAM,SAAS,OAAO,CAACE,MAASA,EAAK,OAAOD,CAAO;AAAA,IAAA,EAC/D;AAAA,IACN,YAAY,CAACA,MACTF,EAAI,OAAO;AAAA,MACP,UAAUC,EAAA,EAAM,SAAS,IAAI,CAACE,MAAS;AACnC,YAAIA,EAAK,OAAOD,EAAQ,IAAI;AACxB,gBAAME,IAAsBD,EAAK,KAAK,MAAM,GAAG,GACzCE,IACFD,EAAoBA,EAAoB,SAAS,CAAC;AAEtD,UAAIA,EAAoB,SAAS,IAC7BD,EAAK,OAAO,GAAGD,EAAQ,QAAQ,IAAIG,CAAgB,KAEnDF,EAAK,OAAOD,EAAQ;AAAA,QAE5B;AACA,eAAOC;AAAA,MACX,CAAC;AAAA,IAAA,EACH;AAAA,EAAA;AAEd;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleAction.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/Article/components/ArticleAction.tsx"],"sourcesContent":["import { useState, useRef, useCallback } from 'react'\nimport Card from '@/components/ui/Card'\nimport Button from '@/components/ui/Button'\nimport Input from '@/components/ui/Input'\nimport { TbCheck, TbX } from 'react-icons/tb'\n\nconst ArticleAction = () => {\n const commentInput = useRef<HTMLInputElement>(null)\n\n const [helpful, setHelpful] = useState('')\n\n const onHelpfulClick = useCallback((val: string) => {\n setHelpful(val)\n }, [])\n\n const onCommentSubmit = () => {\n if (commentInput.current) {\n commentInput.current.value = ''\n }\n }\n\n return (\n <>\n <Card\n bordered\n className=\"mt-8\"\n bodyClass=\"flex items-center justify-between\"\n >\n <div>\n <h5>Was this article helpful?</h5>\n <p>\n {helpful === 'Y' ? '1' : '0'} out of{' '}\n {helpful === 'Y' ? '1' : '0'} found this helpful\n </p>\n </div>\n <div className=\"flex gap-2\">\n <Button\n icon={helpful === 'Y' && <TbCheck />}\n variant={helpful === 'Y' ? 'solid' : 'default'}\n onClick={() => onHelpfulClick('Y')}\n >\n <span>Yes</span>\n </Button>\n <Button\n icon={helpful === 'N' && <TbX />}\n variant={helpful === 'N' ? 'solid' : 'default'}\n onClick={() => onHelpfulClick('N')}\n >\n <span>No</span>\n </Button>\n </div>\n </Card>\n <div className=\"mt-12\">\n <h3 className=\"mb-4\">Comments</h3>\n <Input\n ref={commentInput}\n textArea\n placeholder=\"Enter your comment here...\"\n />\n <div className=\"mt-3 flex justify-end\">\n <Button variant=\"solid\" onClick={onCommentSubmit}>\n Submit\n </Button>\n </div>\n </div>\n </>\n )\n}\n\nexport default ArticleAction\n"],"names":["ArticleAction","commentInput","useRef","helpful","setHelpful","useState","onHelpfulClick","useCallback","val","jsxs","Fragment","Card","jsx","Button","TbCheck","TbX","Input"],"mappings":";;;;;;;;;AAMA,MAAMA,IAAgB,MAAM;AACxB,QAAMC,IAAeC,EAAyB,IAAI,GAE5C,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE,GAEnCC,IAAiBC,EAAY,CAACC,MAAgB;AAChD,IAAAJ,EAAWI,CAAG;AAAA,EAAA,GACf,EAAE;AAQL,SACI,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,UAAQ;AAAA,QACR,WAAU;AAAA,QACV,WAAU;AAAA,QAEV,UAAA;AAAA,UAAA,gBAAAF,EAAC,OAAA,EACG,UAAA;AAAA,YAAA,gBAAAG,EAAC,QAAG,UAAA,4BAAA,CAAyB;AAAA,8BAC5B,KAAA,EACI,UAAA;AAAA,cAAAT,MAAY,MAAM,MAAM;AAAA,cAAI;AAAA,cAAQ;AAAA,cACpCA,MAAY,MAAM,MAAM;AAAA,cAAI;AAAA,YAAA,EAAA,CACjC;AAAA,UAAA,GACJ;AAAA,UACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,cACX,UAAA;AAAA,YAAA,gBAAAG;AAAA,cAACC;AAAA,cAAA;AAAA,gBACG,MAAMV,MAAY,OAAO,gBAAAS,EAACE,GAAA,CAAA,CAAQ;AAAA,gBAClC,SAASX,MAAY,MAAM,UAAU;AAAA,gBACrC,SAAS,MAAMG,EAAe,GAAG;AAAA,gBAEjC,UAAA,gBAAAM,EAAC,UAAK,UAAA,MAAA,CAAG;AAAA,cAAA;AAAA,YAAA;AAAA,YAEb,gBAAAA;AAAA,cAACC;AAAA,cAAA;AAAA,gBACG,MAAMV,MAAY,OAAO,gBAAAS,EAACG,GAAA,CAAA,CAAI;AAAA,gBAC9B,SAASZ,MAAY,MAAM,UAAU;AAAA,gBACrC,SAAS,MAAMG,EAAe,GAAG;AAAA,gBAEjC,UAAA,gBAAAM,EAAC,UAAK,UAAA,KAAA,CAAE;AAAA,cAAA;AAAA,YAAA;AAAA,UACZ,EAAA,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAEJ,gBAAAH,EAAC,OAAA,EAAI,WAAU,SACX,UAAA;AAAA,MAAA,gBAAAG,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,YAAQ;AAAA,MAC7B,gBAAAA;AAAA,QAACI;AAAA,QAAA;AAAA,UACG,KAAKf;AAAA,UACL,UAAQ;AAAA,UACR,aAAY;AAAA,QAAA;AAAA,MAAA;AAAA,MAEhB,gBAAAW,EAAC,OAAA,EAAI,WAAU,yBACX,UAAA,gBAAAA,EAACC,GAAA,EAAO,SAAQ,SAAQ,SA7ChB,MAAM;AAC1B,QAAIZ,EAAa,YACbA,EAAa,QAAQ,QAAQ;AAAA,MACjC,GA0C8D,UAAA,SAAA,CAElD,EAAA,CACJ;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}
1
+ {"version":3,"file":"ArticleAction.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/Article/components/ArticleAction.tsx"],"sourcesContent":["import { useState, useRef, useCallback } from 'react'\nimport Card from '@/components/ui/Card'\nimport Button from '@/components/ui/Button'\nimport Input from '@/components/ui/Input'\nimport { TbCheck, TbX } from 'react-icons/tb'\n\nconst ArticleAction = () => {\n const commentInput = useRef<HTMLInputElement>(null)\n\n const [helpful, setHelpful] = useState('')\n\n const onHelpfulClick = useCallback((val: string) => {\n setHelpful(val)\n }, [])\n\n const onCommentSubmit = () => {\n if (commentInput.current) {\n commentInput.current.value = ''\n }\n }\n\n return (\n <>\n <Card\n bordered\n className=\"mt-8\"\n bodyClass=\"flex items-center justify-between\"\n >\n <div>\n <h5>Was this article helpful?</h5>\n <p>\n {helpful === 'Y' ? '1' : '0'} out of{' '}\n {helpful === 'Y' ? '1' : '0'} found this helpful\n </p>\n </div>\n <div className=\"flex gap-2\">\n <Button\n icon={helpful === 'Y' && <TbCheck />}\n variant={helpful === 'Y' ? 'solid' : 'default'}\n onClick={() => onHelpfulClick('Y')}\n >\n <span>Yes</span>\n </Button>\n <Button\n icon={helpful === 'N' && <TbX />}\n variant={helpful === 'N' ? 'solid' : 'default'}\n onClick={() => onHelpfulClick('N')}\n >\n <span>No</span>\n </Button>\n </div>\n </Card>\n <div className=\"mt-12\">\n <h3 className=\"mb-4\">Comments</h3>\n <Input\n ref={commentInput}\n textArea\n placeholder=\"Enter your comment here...\"\n />\n <div className=\"mt-3 flex justify-end\">\n <Button variant=\"solid\" onClick={onCommentSubmit}>\n Submit\n </Button>\n </div>\n </div>\n </>\n )\n}\n\nexport default ArticleAction\n"],"names":["ArticleAction","commentInput","useRef","helpful","setHelpful","useState","onHelpfulClick","useCallback","val","jsxs","Fragment","Card","jsx","Button","TbCheck","TbX","Input"],"mappings":";;;;;;;;;AAMA,MAAMA,IAAgB,MAAM;AACxB,QAAMC,IAAeC,EAAyB,IAAI,GAE5C,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE,GAEnCC,IAAiBC,EAAY,CAACC,MAAgB;AAChD,IAAAJ,EAAWI,CAAG;AAAA,EAClB,GAAG,CAAA,CAAE;AAQL,SACI,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,UAAQ;AAAA,QACR,WAAU;AAAA,QACV,WAAU;AAAA,QAEV,UAAA;AAAA,UAAA,gBAAAF,EAAC,OAAA,EACG,UAAA;AAAA,YAAA,gBAAAG,EAAC,QAAG,UAAA,4BAAA,CAAyB;AAAA,8BAC5B,KAAA,EACI,UAAA;AAAA,cAAAT,MAAY,MAAM,MAAM;AAAA,cAAI;AAAA,cAAQ;AAAA,cACpCA,MAAY,MAAM,MAAM;AAAA,cAAI;AAAA,YAAA,EAAA,CACjC;AAAA,UAAA,GACJ;AAAA,UACA,gBAAAM,EAAC,OAAA,EAAI,WAAU,cACX,UAAA;AAAA,YAAA,gBAAAG;AAAA,cAACC;AAAA,cAAA;AAAA,gBACG,MAAMV,MAAY,OAAO,gBAAAS,EAACE,GAAA,CAAA,CAAQ;AAAA,gBAClC,SAASX,MAAY,MAAM,UAAU;AAAA,gBACrC,SAAS,MAAMG,EAAe,GAAG;AAAA,gBAEjC,UAAA,gBAAAM,EAAC,UAAK,UAAA,MAAA,CAAG;AAAA,cAAA;AAAA,YAAA;AAAA,YAEb,gBAAAA;AAAA,cAACC;AAAA,cAAA;AAAA,gBACG,MAAMV,MAAY,OAAO,gBAAAS,EAACG,GAAA,CAAA,CAAI;AAAA,gBAC9B,SAASZ,MAAY,MAAM,UAAU;AAAA,gBACrC,SAAS,MAAMG,EAAe,GAAG;AAAA,gBAEjC,UAAA,gBAAAM,EAAC,UAAK,UAAA,KAAA,CAAE;AAAA,cAAA;AAAA,YAAA;AAAA,UACZ,EAAA,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAEJ,gBAAAH,EAAC,OAAA,EAAI,WAAU,SACX,UAAA;AAAA,MAAA,gBAAAG,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,YAAQ;AAAA,MAC7B,gBAAAA;AAAA,QAACI;AAAA,QAAA;AAAA,UACG,KAAKf;AAAA,UACL,UAAQ;AAAA,UACR,aAAY;AAAA,QAAA;AAAA,MAAA;AAAA,MAEhB,gBAAAW,EAAC,OAAA,EAAI,WAAU,yBACX,UAAA,gBAAAA,EAACC,GAAA,EAAO,SAAQ,SAAQ,SA7ChB,MAAM;AAC1B,QAAIZ,EAAa,YACbA,EAAa,QAAQ,QAAQ;AAAA,MAErC,GAyCkE,UAAA,SAAA,CAElD,EAAA,CACJ;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditArticleFooter.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/EditArticle/components/EditArticleFooter.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport { useNavigate } from 'react-router-dom'\nimport sleep from '@/utils/sleep'\nimport { TbDeviceFloppy, TbArrowNarrowLeft } from 'react-icons/tb'\n\nconst EditArticleFooter = () => {\n const [isPublishing, setIsPublishing] = useState(false)\n\n const [isSaving, setIsSaving] = useState(false)\n\n const navigate = useNavigate()\n\n const handleBack = () => {\n history.back()\n }\n\n const handleSave = async () => {\n setIsSaving(true)\n await sleep(1000)\n toast.push(<Notification type=\"success\">Saved as draft</Notification>, {\n placement: 'top-center',\n })\n setIsSaving(false)\n }\n\n const handlePublish = async () => {\n setIsPublishing(true)\n await sleep(1000)\n toast.push(\n <Notification type=\"success\">Article published</Notification>,\n { placement: 'top-center' },\n )\n setIsPublishing(false)\n navigate('/concepts/help-center/manage-article')\n }\n\n return (\n <div className=\"sticky bottom-0 left-0 right-0 z-10 mt-8 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 -mx-4 sm:-mx-8 py-4\">\n <div className=\"max-w-[1200px] mx-auto\">\n <div className=\"flex items-center justify-between px-8\">\n <Button\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n variant=\"plain\"\n icon={<TbArrowNarrowLeft />}\n onClick={handleBack}\n >\n Back\n </Button>\n <div className=\"flex items-center\">\n <Button\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n icon={<TbDeviceFloppy />}\n loading={isSaving}\n onClick={handleSave}\n >\n Save\n </Button>\n <Button\n variant=\"solid\"\n type=\"button\"\n loading={isPublishing}\n onClick={handlePublish}\n >\n Publish\n </Button>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport default EditArticleFooter\n"],"names":["EditArticleFooter","isPublishing","setIsPublishing","useState","isSaving","setIsSaving","navigate","useNavigate","jsx","jsxs","Button","TbArrowNarrowLeft","TbDeviceFloppy","sleep","toast","Notification"],"mappings":";;;;;;;;;;;AAQA,MAAMA,IAAoB,MAAM;AAC5B,QAAM,CAACC,GAAcC,CAAe,IAAIC,EAAS,EAAK,GAEhD,CAACC,GAAUC,CAAW,IAAIF,EAAS,EAAK,GAExCG,IAAWC,EAAA;AA0BjB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,wIACX,UAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,0BACX,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,wBAAOC,GAAA,EAAkB;AAAA,QACzB,SAjCD,MAAM;AACrB,kBAAQ,KAAA;AAAA,QAAK;AAAA,QAiCA,UAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGD,gBAAAF,EAAC,OAAA,EAAI,WAAU,qBACX,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,MAAK;AAAA,UACL,wBAAOE,GAAA,EAAe;AAAA,UACtB,SAASR;AAAA,UACT,SAvCL,YAAY;AAC3B,YAAAC,EAAY,EAAI,GAChB,MAAMQ,EAAM,GAAI,GAChBC,EAAM,KAAK,gBAAAN,EAACO,GAAA,EAAa,MAAK,WAAU,4BAAc,GAAiB;AAAA,cACnE,WAAW;AAAA,YAAA,CACd,GACDV,EAAY,EAAK;AAAA,UAAA;AAAA,UAkCA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGD,gBAAAG;AAAA,QAACE;AAAA,QAAA;AAAA,UACG,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,SAAST;AAAA,UACT,SAtCF,YAAY;AAC9B,YAAAC,EAAgB,EAAI,GACpB,MAAMW,EAAM,GAAI,GAChBC,EAAM;AAAA,cACF,gBAAAN,EAACO,GAAA,EAAa,MAAK,WAAU,UAAA,qBAAiB;AAAA,cAC9C,EAAE,WAAW,aAAA;AAAA,YAAa,GAE9Bb,EAAgB,EAAK,GACrBI,EAAS,sCAAsC;AAAA,UAAA;AAAA,UA+B9B,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAED,EAAA,CACJ;AAAA,EAAA,EAAA,CACJ,GACJ,GACJ;AAER;"}
1
+ {"version":3,"file":"EditArticleFooter.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/EditArticle/components/EditArticleFooter.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Notification from '@/components/ui/Notification'\nimport toast from '@/components/ui/toast'\nimport { useNavigate } from 'react-router-dom'\nimport sleep from '@/utils/sleep'\nimport { TbDeviceFloppy, TbArrowNarrowLeft } from 'react-icons/tb'\n\nconst EditArticleFooter = () => {\n const [isPublishing, setIsPublishing] = useState(false)\n\n const [isSaving, setIsSaving] = useState(false)\n\n const navigate = useNavigate()\n\n const handleBack = () => {\n history.back()\n }\n\n const handleSave = async () => {\n setIsSaving(true)\n await sleep(1000)\n toast.push(<Notification type=\"success\">Saved as draft</Notification>, {\n placement: 'top-center',\n })\n setIsSaving(false)\n }\n\n const handlePublish = async () => {\n setIsPublishing(true)\n await sleep(1000)\n toast.push(\n <Notification type=\"success\">Article published</Notification>,\n { placement: 'top-center' },\n )\n setIsPublishing(false)\n navigate('/concepts/help-center/manage-article')\n }\n\n return (\n <div className=\"sticky bottom-0 left-0 right-0 z-10 mt-8 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 -mx-4 sm:-mx-8 py-4\">\n <div className=\"max-w-[1200px] mx-auto\">\n <div className=\"flex items-center justify-between px-8\">\n <Button\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n variant=\"plain\"\n icon={<TbArrowNarrowLeft />}\n onClick={handleBack}\n >\n Back\n </Button>\n <div className=\"flex items-center\">\n <Button\n className=\"ltr:mr-3 rtl:ml-3\"\n type=\"button\"\n icon={<TbDeviceFloppy />}\n loading={isSaving}\n onClick={handleSave}\n >\n Save\n </Button>\n <Button\n variant=\"solid\"\n type=\"button\"\n loading={isPublishing}\n onClick={handlePublish}\n >\n Publish\n </Button>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport default EditArticleFooter\n"],"names":["EditArticleFooter","isPublishing","setIsPublishing","useState","isSaving","setIsSaving","navigate","useNavigate","jsx","jsxs","Button","TbArrowNarrowLeft","TbDeviceFloppy","sleep","toast","Notification"],"mappings":";;;;;;;;;;;AAQA,MAAMA,IAAoB,MAAM;AAC5B,QAAM,CAACC,GAAcC,CAAe,IAAIC,EAAS,EAAK,GAEhD,CAACC,GAAUC,CAAW,IAAIF,EAAS,EAAK,GAExCG,IAAWC,EAAA;AA0BjB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,wIACX,UAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,0BACX,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,wBAAOC,GAAA,EAAkB;AAAA,QACzB,SAjCD,MAAM;AACrB,kBAAQ,KAAA;AAAA,QACZ;AAAA,QAgCiB,UAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGD,gBAAAF,EAAC,OAAA,EAAI,WAAU,qBACX,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,MAAK;AAAA,UACL,wBAAOE,GAAA,EAAe;AAAA,UACtB,SAASR;AAAA,UACT,SAvCL,YAAY;AAC3B,YAAAC,EAAY,EAAI,GAChB,MAAMQ,EAAM,GAAI,GAChBC,EAAM,KAAK,gBAAAN,EAACO,GAAA,EAAa,MAAK,WAAU,4BAAc,GAAiB;AAAA,cACnE,WAAW;AAAA,YAAA,CACd,GACDV,EAAY,EAAK;AAAA,UACrB;AAAA,UAiCqB,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGD,gBAAAG;AAAA,QAACE;AAAA,QAAA;AAAA,UACG,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,SAAST;AAAA,UACT,SAtCF,YAAY;AAC9B,YAAAC,EAAgB,EAAI,GACpB,MAAMW,EAAM,GAAI,GAChBC,EAAM;AAAA,cACF,gBAAAN,EAACO,GAAA,EAAa,MAAK,WAAU,UAAA,qBAAiB;AAAA,cAC9C,EAAE,WAAW,aAAA;AAAA,YAAa,GAE9Bb,EAAgB,EAAK,GACrBI,EAAS,sCAAsC;AAAA,UACnD;AAAA,UA8BqB,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAED,EAAA,CACJ;AAAA,EAAA,EAAA,CACJ,GACJ,GACJ;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditArticleHeader.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.tsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Tag from '@/components/ui/Tag'\nimport uniqueId from 'lodash/uniqueId'\nimport type { ArticleContent } from '../types'\nimport type { CommonProps } from '@/@types/common'\nimport type { ReactNode } from 'react'\n\ntype EditArticleHeaderProps = Pick<\n ArticleContent,\n 'title' | 'category' | 'tags' | 'authors' | 'updateTime'\n>\n\nexport interface FieldProps extends CommonProps {\n title: string\n icon?: ReactNode\n}\n\nconst Field = (props: FieldProps) => {\n const { title, icon, children } = props\n\n return (\n <div className=\"flex items-center mb-2\">\n <div className=\"flex items-center gap-2 font-semibold min-w-[150px]\">\n <span className=\"text-lg\">{icon}</span>\n <span>{title}</span>\n </div>\n {children}\n </div>\n )\n}\n\nconst EditArticleHeader = (props: EditArticleHeaderProps) => {\n const { title, authors, updateTime, tags } = props\n\n const [articleTitle, setArticleTitle] = useState(title)\n const [articleTags, setArticleTags] = useState(tags)\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.value = ''\n }\n }, [articleTags])\n\n return (\n <div>\n <input\n className=\"ring-0 outline-none block w-full p-2 bg-transparent heading-text h3\"\n placeholder=\"Untitle article\"\n value={articleTitle}\n onChange={(e) => setArticleTitle(e.target.value)}\n />\n <div className=\"mt-3 flex flex-col gap-6 border-t border-gray-200 dark:border-gray-700 py-6\">\n <Field title=\"Created by:\">\n {authors.length > 0 && (\n <div className=\"flex items-center gap-2\">\n <Avatar size={25} src={authors[0].img} />\n <span className=\"heading-text font-bold\">\n {authors[0].name}\n </span>\n </div>\n )}\n </Field>\n <Field title=\"Last updated:\">\n <span className=\"heading-text font-bold\">{updateTime}</span>\n </Field>\n <Field title=\"Tags:\">\n <div className=\"flex flex-wrap items-center gap-2\">\n {articleTags.map((tag) => (\n <Tag key={tag.id}>{tag.label}</Tag>\n ))}\n <input\n ref={inputRef}\n className=\"ring-0 outline-none block py-2 bg-transparent heading-text text-sm\"\n type=\"text\"\n onKeyDown={(event) => {\n if (event.key === 'Enter') {\n const eventTarget =\n event.target as HTMLInputElement\n setArticleTags((tag) => {\n const newTags = structuredClone(tag)\n\n newTags.push({\n id: uniqueId('article-tag-'),\n label: eventTarget.value,\n })\n return newTags\n })\n inputRef.current?.blur()\n }\n\n if (\n event.key === 'Backspace' &&\n (event.target as HTMLInputElement).value\n .length === 0\n ) {\n setArticleTags((tag) => {\n const newTags = structuredClone(tag)\n newTags.pop()\n return newTags\n })\n }\n }}\n />\n </div>\n </Field>\n </div>\n </div>\n )\n}\n\nexport default EditArticleHeader\n"],"names":["Field","props","title","icon","children","jsxs","jsx","EditArticleHeader","authors","updateTime","tags","articleTitle","setArticleTitle","useState","articleTags","setArticleTags","inputRef","useRef","useEffect","e","Avatar","tag","Tag","event","eventTarget","newTags","uniqueId","_a"],"mappings":";;;;;;AAkBA,MAAMA,IAAQ,CAACC,MAAsB;AACjC,QAAM,EAAE,OAAAC,GAAO,MAAAC,GAAM,UAAAC,EAAA,IAAaH;AAElC,SACI,gBAAAI,EAAC,OAAA,EAAI,WAAU,0BACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,uDACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,WAAW,UAAAH,GAAK;AAAA,MAChC,gBAAAG,EAAC,UAAM,UAAAJ,EAAA,CAAM;AAAA,IAAA,GACjB;AAAA,IACCE;AAAA,EAAA,GACL;AAER,GAEMG,IAAoB,CAACN,MAAkC;AACzD,QAAM,EAAE,OAAAC,GAAO,SAAAM,GAAS,YAAAC,GAAY,MAAAC,MAAST,GAEvC,CAACU,GAAcC,CAAe,IAAIC,EAASX,CAAK,GAChD,CAACY,GAAaC,CAAc,IAAIF,EAASH,CAAI,GAE7CM,IAAWC,EAAyB,IAAI;AAE9C,SAAAC,EAAU,MAAM;AACZ,IAAIF,EAAS,YACTA,EAAS,QAAQ,QAAQ;AAAA,EAC7B,GACD,CAACF,CAAW,CAAC,qBAGX,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAR;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,aAAY;AAAA,QACZ,OAAOK;AAAA,QACP,UAAU,CAACQ,MAAMP,EAAgBO,EAAE,OAAO,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnD,gBAAAd,EAAC,OAAA,EAAI,WAAU,+EACX,UAAA;AAAA,MAAA,gBAAAC,EAACN,GAAA,EAAM,OAAM,eACR,UAAAQ,EAAQ,SAAS,KACd,gBAAAH,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,QAAA,gBAAAC,EAACc,KAAO,MAAM,IAAI,KAAKZ,EAAQ,CAAC,EAAE,KAAK;AAAA,0BACtC,QAAA,EAAK,WAAU,0BACX,UAAAA,EAAQ,CAAC,EAAE,KAAA,CAChB;AAAA,MAAA,EAAA,CACJ,EAAA,CAER;AAAA,MACA,gBAAAF,EAACN,KAAM,OAAM,iBACT,4BAAC,QAAA,EAAK,WAAU,0BAA0B,UAAAS,EAAA,CAAW,EAAA,CACzD;AAAA,wBACCT,GAAA,EAAM,OAAM,SACT,UAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,qCACV,UAAA;AAAA,QAAAS,EAAY,IAAI,CAACO,MACd,gBAAAf,EAACgB,KAAkB,UAAAD,EAAI,MAAA,GAAbA,EAAI,EAAe,CAChC;AAAA,QACD,gBAAAf;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,KAAKU;AAAA,YACL,WAAU;AAAA,YACV,MAAK;AAAA,YACL,WAAW,CAACO,MAAU;;AAClB,kBAAIA,EAAM,QAAQ,SAAS;AACvB,sBAAMC,IACFD,EAAM;AACV,gBAAAR,EAAe,CAACM,MAAQ;AACpB,wBAAMI,IAAU,gBAAgBJ,CAAG;AAEnC,yBAAAI,EAAQ,KAAK;AAAA,oBACT,IAAIC,EAAS,cAAc;AAAA,oBAC3B,OAAOF,EAAY;AAAA,kBAAA,CACtB,GACMC;AAAA,gBAAA,CACV,IACDE,IAAAX,EAAS,YAAT,QAAAW,EAAkB;AAAA,cAAK;AAG3B,cACIJ,EAAM,QAAQ,eACbA,EAAM,OAA4B,MAC9B,WAAW,KAEhBR,EAAe,CAACM,MAAQ;AACpB,sBAAMI,IAAU,gBAAgBJ,CAAG;AACnC,uBAAAI,EAAQ,IAAA,GACDA;AAAA,cAAA,CACV;AAAA,YACL;AAAA,UACJ;AAAA,QAAA;AAAA,MACJ,EAAA,CACJ,EAAA,CACJ;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}
1
+ {"version":3,"file":"EditArticleHeader.js","sources":["../../../../../../../lib/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.tsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react'\nimport Avatar from '@/components/ui/Avatar'\nimport Tag from '@/components/ui/Tag'\nimport uniqueId from 'lodash/uniqueId'\nimport type { ArticleContent } from '../types'\nimport type { CommonProps } from '@/@types/common'\nimport type { ReactNode } from 'react'\n\ntype EditArticleHeaderProps = Pick<\n ArticleContent,\n 'title' | 'category' | 'tags' | 'authors' | 'updateTime'\n>\n\nexport interface FieldProps extends CommonProps {\n title: string\n icon?: ReactNode\n}\n\nconst Field = (props: FieldProps) => {\n const { title, icon, children } = props\n\n return (\n <div className=\"flex items-center mb-2\">\n <div className=\"flex items-center gap-2 font-semibold min-w-[150px]\">\n <span className=\"text-lg\">{icon}</span>\n <span>{title}</span>\n </div>\n {children}\n </div>\n )\n}\n\nconst EditArticleHeader = (props: EditArticleHeaderProps) => {\n const { title, authors, updateTime, tags } = props\n\n const [articleTitle, setArticleTitle] = useState(title)\n const [articleTags, setArticleTags] = useState(tags)\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.value = ''\n }\n }, [articleTags])\n\n return (\n <div>\n <input\n className=\"ring-0 outline-none block w-full p-2 bg-transparent heading-text h3\"\n placeholder=\"Untitle article\"\n value={articleTitle}\n onChange={(e) => setArticleTitle(e.target.value)}\n />\n <div className=\"mt-3 flex flex-col gap-6 border-t border-gray-200 dark:border-gray-700 py-6\">\n <Field title=\"Created by:\">\n {authors.length > 0 && (\n <div className=\"flex items-center gap-2\">\n <Avatar size={25} src={authors[0].img} />\n <span className=\"heading-text font-bold\">\n {authors[0].name}\n </span>\n </div>\n )}\n </Field>\n <Field title=\"Last updated:\">\n <span className=\"heading-text font-bold\">{updateTime}</span>\n </Field>\n <Field title=\"Tags:\">\n <div className=\"flex flex-wrap items-center gap-2\">\n {articleTags.map((tag) => (\n <Tag key={tag.id}>{tag.label}</Tag>\n ))}\n <input\n ref={inputRef}\n className=\"ring-0 outline-none block py-2 bg-transparent heading-text text-sm\"\n type=\"text\"\n onKeyDown={(event) => {\n if (event.key === 'Enter') {\n const eventTarget =\n event.target as HTMLInputElement\n setArticleTags((tag) => {\n const newTags = structuredClone(tag)\n\n newTags.push({\n id: uniqueId('article-tag-'),\n label: eventTarget.value,\n })\n return newTags\n })\n inputRef.current?.blur()\n }\n\n if (\n event.key === 'Backspace' &&\n (event.target as HTMLInputElement).value\n .length === 0\n ) {\n setArticleTags((tag) => {\n const newTags = structuredClone(tag)\n newTags.pop()\n return newTags\n })\n }\n }}\n />\n </div>\n </Field>\n </div>\n </div>\n )\n}\n\nexport default EditArticleHeader\n"],"names":["Field","props","title","icon","children","jsxs","jsx","EditArticleHeader","authors","updateTime","tags","articleTitle","setArticleTitle","useState","articleTags","setArticleTags","inputRef","useRef","useEffect","e","Avatar","tag","Tag","event","eventTarget","newTags","uniqueId","_a"],"mappings":";;;;;;AAkBA,MAAMA,IAAQ,CAACC,MAAsB;AACjC,QAAM,EAAE,OAAAC,GAAO,MAAAC,GAAM,UAAAC,EAAA,IAAaH;AAElC,SACI,gBAAAI,EAAC,OAAA,EAAI,WAAU,0BACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,uDACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,WAAW,UAAAH,GAAK;AAAA,MAChC,gBAAAG,EAAC,UAAM,UAAAJ,EAAA,CAAM;AAAA,IAAA,GACjB;AAAA,IACCE;AAAA,EAAA,GACL;AAER,GAEMG,IAAoB,CAACN,MAAkC;AACzD,QAAM,EAAE,OAAAC,GAAO,SAAAM,GAAS,YAAAC,GAAY,MAAAC,MAAST,GAEvC,CAACU,GAAcC,CAAe,IAAIC,EAASX,CAAK,GAChD,CAACY,GAAaC,CAAc,IAAIF,EAASH,CAAI,GAE7CM,IAAWC,EAAyB,IAAI;AAE9C,SAAAC,EAAU,MAAM;AACZ,IAAIF,EAAS,YACTA,EAAS,QAAQ,QAAQ;AAAA,EAEjC,GAAG,CAACF,CAAW,CAAC,qBAGX,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAR;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,aAAY;AAAA,QACZ,OAAOK;AAAA,QACP,UAAU,CAACQ,MAAMP,EAAgBO,EAAE,OAAO,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnD,gBAAAd,EAAC,OAAA,EAAI,WAAU,+EACX,UAAA;AAAA,MAAA,gBAAAC,EAACN,GAAA,EAAM,OAAM,eACR,UAAAQ,EAAQ,SAAS,KACd,gBAAAH,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,QAAA,gBAAAC,EAACc,KAAO,MAAM,IAAI,KAAKZ,EAAQ,CAAC,EAAE,KAAK;AAAA,0BACtC,QAAA,EAAK,WAAU,0BACX,UAAAA,EAAQ,CAAC,EAAE,KAAA,CAChB;AAAA,MAAA,EAAA,CACJ,EAAA,CAER;AAAA,MACA,gBAAAF,EAACN,KAAM,OAAM,iBACT,4BAAC,QAAA,EAAK,WAAU,0BAA0B,UAAAS,EAAA,CAAW,EAAA,CACzD;AAAA,wBACCT,GAAA,EAAM,OAAM,SACT,UAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,qCACV,UAAA;AAAA,QAAAS,EAAY,IAAI,CAACO,MACd,gBAAAf,EAACgB,KAAkB,UAAAD,EAAI,MAAA,GAAbA,EAAI,EAAe,CAChC;AAAA,QACD,gBAAAf;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,KAAKU;AAAA,YACL,WAAU;AAAA,YACV,MAAK;AAAA,YACL,WAAW,CAACO,MAAU;;AAClB,kBAAIA,EAAM,QAAQ,SAAS;AACvB,sBAAMC,IACFD,EAAM;AACV,gBAAAR,EAAe,CAACM,MAAQ;AACpB,wBAAMI,IAAU,gBAAgBJ,CAAG;AAEnC,yBAAAI,EAAQ,KAAK;AAAA,oBACT,IAAIC,EAAS,cAAc;AAAA,oBAC3B,OAAOF,EAAY;AAAA,kBAAA,CACtB,GACMC;AAAA,gBACX,CAAC,IACDE,IAAAX,EAAS,YAAT,QAAAW,EAAkB;AAAA,cACtB;AAEA,cACIJ,EAAM,QAAQ,eACbA,EAAM,OAA4B,MAC9B,WAAW,KAEhBR,EAAe,CAACM,MAAQ;AACpB,sBAAMI,IAAU,gBAAgBJ,CAAG;AACnC,uBAAAI,EAAQ,IAAA,GACDA;AAAA,cACX,CAAC;AAAA,YAET;AAAA,UAAA;AAAA,QAAA;AAAA,MACJ,EAAA,CACJ,EAAA,CACJ;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}