@orbe-agro/client-core 5.3.8 → 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.
- package/dist/@ecme/assets/styles/app.css +1 -1
- package/dist/@ecme/assets/styles/components/_input.css +1 -1
- package/dist/@ecme/assets/styles/components/_select.css +1 -1
- package/dist/@ecme/assets/styles/components/_tabs.css +1 -1
- package/dist/@ecme/assets/styles/components/index.css +1 -1
- package/dist/@ecme/assets/styles/tailwind/index.css +1 -1
- package/dist/@ecme/auth/AuthContext.js.map +1 -1
- package/dist/@ecme/auth/AuthProvider.js.map +1 -1
- package/dist/@ecme/components/docs/DemoCard/CardFooter.js.map +1 -1
- package/dist/@ecme/components/docs/DemoCard/DemoCard.js.map +1 -1
- package/dist/@ecme/components/docs/DocumentationNav.js.map +1 -1
- package/dist/@ecme/components/layouts/AuthLayout/AuthLayout.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
- package/dist/@ecme/components/route/AppRoute.js.map +1 -1
- package/dist/@ecme/components/shared/AbbreviateNumber.js.map +1 -1
- package/dist/@ecme/components/shared/Affix.js.map +1 -1
- package/dist/@ecme/components/shared/AutoComplete.js.map +1 -1
- package/dist/@ecme/components/shared/CalendarView.js.map +1 -1
- package/dist/@ecme/components/shared/Chart.js.map +1 -1
- package/dist/@ecme/components/shared/ConfirmDialog.js.map +1 -1
- package/dist/@ecme/components/shared/DataTable.js.map +1 -1
- package/dist/@ecme/components/shared/DebounceInput.js.map +1 -1
- package/dist/@ecme/components/shared/GanttChart/TaskListTable.js.map +1 -1
- package/dist/@ecme/components/shared/GanttChart/getStartEndDateForProject.js.map +1 -1
- package/dist/@ecme/components/shared/GanttChart/tasksPreProcess.js.map +1 -1
- package/dist/@ecme/components/shared/Masonry/breakpoints.js.map +1 -1
- package/dist/@ecme/components/shared/Masonry/useCoulmnsCount.js.map +1 -1
- package/dist/@ecme/components/shared/Masonry/useMasonry.js.map +1 -1
- package/dist/@ecme/components/shared/Masonry/useWindowWidth.js.map +1 -1
- package/dist/@ecme/components/shared/OtpInput.js.map +1 -1
- package/dist/@ecme/components/shared/PasswordInput.js.map +1 -1
- package/dist/@ecme/components/shared/RegionMap.js.map +1 -1
- package/dist/@ecme/components/shared/RichTextEditor/RichTextEditor.js.map +1 -1
- package/dist/@ecme/components/shared/StickyFooter.js.map +1 -1
- package/dist/@ecme/components/shared/StrictModeDroppable.js.map +1 -1
- package/dist/@ecme/components/shared/ToggleDrawer.js.map +1 -1
- package/dist/@ecme/components/shared/UsersAvatarGroup.js.map +1 -1
- package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdown.js.map +1 -1
- package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownContent.js.map +1 -1
- package/dist/@ecme/components/template/HorizontalMenuContent/HorizontalMenuDropdownTrigger.js.map +1 -1
- package/dist/@ecme/components/template/LanguageSelector.js.map +1 -1
- package/dist/@ecme/components/template/MobileNav.js.map +1 -1
- package/dist/@ecme/components/template/Notification/Notification.js.map +1 -1
- package/dist/@ecme/components/template/Search.js.map +1 -1
- package/dist/@ecme/components/template/SideNavToggle.js.map +1 -1
- package/dist/@ecme/components/template/SidePanel/SidePanel.js.map +1 -1
- package/dist/@ecme/components/template/StackedSideNav/StackedSideNav.js.map +1 -1
- package/dist/@ecme/components/template/StackedSideNav/StackedSideNavMini.js.map +1 -1
- package/dist/@ecme/components/template/StackedSideNav/StackedSideNavSecondary.js.map +1 -1
- package/dist/@ecme/components/template/ThemeConfigurator/CopyButton.js.map +1 -1
- package/dist/@ecme/components/template/ThemeConfigurator/DirectionSwitcher.js.map +1 -1
- package/dist/@ecme/components/template/ThemeConfigurator/LayoutSwitcher.js.map +1 -1
- package/dist/@ecme/components/template/ThemeConfigurator/ModeSwitcher.js.map +1 -1
- package/dist/@ecme/components/template/UserProfileDropdown.js.map +1 -1
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js.map +1 -1
- package/dist/@ecme/components/ui/Alert/Alert.js.map +1 -1
- package/dist/@ecme/components/ui/Avatar/Avatar.js.map +1 -1
- package/dist/@ecme/components/ui/Avatar/AvatarGroup.js.map +1 -1
- package/dist/@ecme/components/ui/Button/Button.js.map +1 -1
- package/dist/@ecme/components/ui/Card/Card.js.map +1 -1
- package/dist/@ecme/components/ui/Checkbox/Checkbox.js.map +1 -1
- package/dist/@ecme/components/ui/Checkbox/Group.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/BasePicker.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/Calendar.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/CalendarBase.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/DatePicker.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/DatePickerRange.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/DateTimepicker.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/RangeCalendar.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/tables/DateTable.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/tables/MonthTable.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/tables/YearTable.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/tables/components/Month.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/utils/getDecadeRange.js.map +1 -1
- package/dist/@ecme/components/ui/DatePicker/utils/getMonthDays.js.map +1 -1
- package/dist/@ecme/components/ui/Dialog/Dialog.js.map +1 -1
- package/dist/@ecme/components/ui/Drawer/Drawer.js.map +1 -1
- package/dist/@ecme/components/ui/Dropdown/DropdownItem.js.map +1 -1
- package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js.map +1 -1
- package/dist/@ecme/components/ui/Dropdown/context/menuContext.js.map +1 -1
- package/dist/@ecme/components/ui/Form/FormItem.js.map +1 -1
- package/dist/@ecme/components/ui/Input/Input.js.map +1 -1
- package/dist/@ecme/components/ui/Menu/MenuCollapse.js.map +1 -1
- package/dist/@ecme/components/ui/MenuItem/index.js.map +1 -1
- package/dist/@ecme/components/ui/Notification/Notification.js.map +1 -1
- package/dist/@ecme/components/ui/Pagination/Next.js.map +1 -1
- package/dist/@ecme/components/ui/Pagination/Pagers.js.map +1 -1
- package/dist/@ecme/components/ui/Pagination/Pagination.js.map +1 -1
- package/dist/@ecme/components/ui/Pagination/Prev.js.map +1 -1
- package/dist/@ecme/components/ui/Progress/Circle.js.map +1 -1
- package/dist/@ecme/components/ui/Progress/Progress.js.map +1 -1
- package/dist/@ecme/components/ui/Radio/Group.js.map +1 -1
- package/dist/@ecme/components/ui/Radio/Radio.js.map +1 -1
- package/dist/@ecme/components/ui/Segment/Segment.js.map +1 -1
- package/dist/@ecme/components/ui/Segment/SegmentItem.js.map +1 -1
- package/dist/@ecme/components/ui/Select/Select.js.map +1 -1
- package/dist/@ecme/components/ui/Steps/StepItem.js.map +1 -1
- package/dist/@ecme/components/ui/Steps/Steps.js.map +1 -1
- package/dist/@ecme/components/ui/Switcher/Switcher.js.map +1 -1
- package/dist/@ecme/components/ui/Tabs/TabNav.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/AmPmInput.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/TimeInput.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/TimeInputField.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/TimeInputRange.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/utils/createAmPmHandler.js.map +1 -1
- package/dist/@ecme/components/ui/TimeInput/utils/createTimeHandler.js.map +1 -1
- package/dist/@ecme/components/ui/Tooltip/Arrow.js.map +1 -1
- package/dist/@ecme/components/ui/Tooltip/Tooltip.js.map +1 -1
- package/dist/@ecme/components/ui/Upload/Upload.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useCallbackRef.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useControllableState.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useDidUpdate.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useMergeRef.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useRootClose.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useTimeout.js.map +1 -1
- package/dist/@ecme/components/ui/hooks/useWindowSize.js.map +1 -1
- package/dist/@ecme/components/ui/toast/ToastWrapper.js.map +1 -1
- package/dist/@ecme/components/ui/toast/toast.js.map +1 -1
- package/dist/@ecme/components/ui/utils/chainedFunction.js.map +1 -1
- package/dist/@ecme/components/ui/utils/mapCloneElement.js.map +1 -1
- package/dist/@ecme/components/view/Activity/ActivityAvatar.js.map +1 -1
- package/dist/@ecme/components/view/Activity/ActivityEvent.js.map +1 -1
- package/dist/@ecme/components/view/ChatBox/components/Attachment.js.map +1 -1
- package/dist/@ecme/components/view/ChatBox/components/ChatInput.js.map +1 -1
- package/dist/@ecme/components/view/CreditCardDialog/CreditCardDialog.js.map +1 -1
- package/dist/@ecme/configs/chart.config.js.map +1 -1
- package/dist/@ecme/constants/theme.constant.js +23 -23
- package/dist/@ecme/constants/theme.constant.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/accountsFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/aiFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/authFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/commonFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/customersFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/fileFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/helpCenterFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/ordersFakeApi.js.map +1 -1
- package/dist/@ecme/mock/fakeApi/productsFakeApi.js.map +1 -1
- package/dist/@ecme/services/ApiService.js.map +1 -1
- package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js.map +1 -1
- package/dist/@ecme/store/authStore.js.map +1 -1
- package/dist/@ecme/store/localeStore.js.map +1 -1
- package/dist/@ecme/utils/cookiesStorage.js.map +1 -1
- package/dist/@ecme/utils/hoc/withHeaderItem.js.map +1 -1
- package/dist/@ecme/utils/hooks/useDarkMode.js.map +1 -1
- package/dist/@ecme/utils/hooks/useDirection.js.map +1 -1
- package/dist/@ecme/utils/hooks/useInfiniteScroll.js.map +1 -1
- package/dist/@ecme/utils/hooks/useInterval .js.map +1 -1
- package/dist/@ecme/utils/hooks/useLayoutGap.js.map +1 -1
- package/dist/@ecme/utils/hooks/useLocale.js.map +1 -1
- package/dist/@ecme/utils/hooks/useMenuActive.js.map +1 -1
- package/dist/@ecme/utils/hooks/useRandomBgColor.js.map +1 -1
- package/dist/@ecme/utils/hooks/useResponsive.js.map +1 -1
- package/dist/@ecme/utils/hooks/useScrollTop.js.map +1 -1
- package/dist/@ecme/utils/hooks/useThemeSchema.js.map +1 -1
- package/dist/@ecme/utils/hooks/useTimeOutMessage.js.map +1 -1
- package/dist/@ecme/utils/reorderDragable.js.map +1 -1
- package/dist/@ecme/utils/sortBy.js.map +1 -1
- package/dist/@ecme/utils/wildCardSearch.js.map +1 -1
- package/dist/@ecme/views/auth/ForgotPassword/ForgotPassword.js.map +1 -1
- package/dist/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.js.map +1 -1
- package/dist/@ecme/views/auth/OtpVerification/OtpVerification.js.map +1 -1
- package/dist/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.js.map +1 -1
- package/dist/@ecme/views/auth/ResetPassword/ResetPassword.js.map +1 -1
- package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js.map +1 -1
- package/dist/@ecme/views/auth/SignIn/components/OauthSignIn.js.map +1 -1
- package/dist/@ecme/views/auth/SignIn/components/SignInForm.js.map +1 -1
- package/dist/@ecme/views/auth/SignUp/components/SignUpForm.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/ActivityLog/ActivityLog.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Pricing/components/Plans.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsAccessDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsGroups.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserAction.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserSelected.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/components/RolesPermissionsUserTable.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/RolesPermissions/store/rolePermissionsStore.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/BillingHistory.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingIntegration.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingMobileMenu.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsBilling.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsMenu.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsNotification.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsProfile.js.map +1 -1
- package/dist/@ecme/views/concepts/accounts/Settings/components/SettingsSecurity.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomAction.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatCustomContent.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatSideNav.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Image/components/Gallery.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Image/components/GeneratorPrompt.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Image/components/ImageDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Image/store/imageGeneratorStore.js.map +1 -1
- package/dist/@ecme/views/concepts/calendar/Calendar/Calendar.js.map +1 -1
- package/dist/@ecme/views/concepts/calendar/Calendar/components/EventDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/components/ChatAction.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/components/ChatBody.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/components/ChatList.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/components/ContactInfoDrawer.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/components/NewChat.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/hooks/useChat.js.map +1 -1
- package/dist/@ecme/views/concepts/chat/Chat/store/chatStore.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerCreate/CustomerCreate.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerDetails/ActivitySection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerDetails/BillingSection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerDetails/ProfileSection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerEdit/CustomerEdit.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerForm/AccountSection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerForm/CustomerForm.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerForm/OverviewSection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerForm/ProfileImageSection.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListSelected.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListTable.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomerListTableFilter.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerList/components/CustomersListTableTools.js.map +1 -1
- package/dist/@ecme/views/concepts/customers/CustomerList/store/customerListStore.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/FileManager.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileDetails.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileItemDropdown.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerDeleteDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerInviteDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/FileManagerRenameDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/components/UploadFile.js.map +1 -1
- package/dist/@ecme/views/concepts/files/FileManager/store/useFileManagerStore.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/Article/components/ArticleAction.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleFooter.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/EditArticle/components/EditArticleHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListSearch.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListSelected.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleListTable.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/ManageArticle/components/ArticleTableFilter.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/ManageArticle/store/manageArticleStore.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/SupportHub/components/Article.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/SupportHub/components/ArticleList.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/SupportHub/components/Categories.js.map +1 -1
- package/dist/@ecme/views/concepts/help-center/SupportHub/components/TopSection.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailBody.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailBodyTop.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailAction.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailDetailTitle.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailEditor.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailList.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/components/MailSidebar.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/hooks/useMail.js.map +1 -1
- package/dist/@ecme/views/concepts/mail/Mail/hooks/useMailAction.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderCreate/OrderCreate.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderDetails/components/OrderDetailHeaderExtra.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderEdit/OrderEdit.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderForm/OrderForm.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderForm/components/CustomerDetailSection.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderForm/components/PaymentMethodSection.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderForm/components/ProductSelectSection.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTable.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableFilter.js.map +1 -1
- package/dist/@ecme/views/concepts/orders/OrderList/components/OrderListTableTools.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductCreate/ProductCreate.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductEdit/ProducEdit.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductForm/ProductForm.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductForm/components/GeneralSection.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductForm/components/ImageSection.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductForm/components/PricingSection.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/components/ProducListTableTools.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSearch.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/components/ProductListSelected.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/components/ProductListTable.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/components/ProductTableFilter.js.map +1 -1
- package/dist/@ecme/views/concepts/products/ProductList/store/productListStore.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Issue/Issue.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Issue/components/IssueBody.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Issue/components/IssueFooter.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Issue/components/IssueHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/ProjectDetails.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsActivity.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsNavigation.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsSetting.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectDetails/components/ProjectDetailsTask.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/components/NewProjectForm.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/components/NewTaskField.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListContent.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/components/ProjectListHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/hooks/useProjectList.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ProjectList/store/projectListStore.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewColumnContent.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewMemberContent.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/AddNewTicketContent.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/Board.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardCard.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/BoardTitle.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/ScrumBoardHeader.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/ScrumBoard/components/TicketContent.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Tasks/Tasks.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Tasks/components/AddTask.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Tasks/components/TaskList.js.map +1 -1
- package/dist/@ecme/views/concepts/projects/Tasks/components/TasksHeader.js.map +1 -1
- package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticChart.js.map +1 -1
- package/dist/@ecme/views/dashboards/AnalyticDashboard/components/AnalyticHeader.js.map +1 -1
- package/dist/@ecme/views/dashboards/AnalyticDashboard/components/DeviceSession.js.map +1 -1
- package/dist/@ecme/views/dashboards/AnalyticDashboard/components/Traffic.js.map +1 -1
- package/dist/@ecme/views/dashboards/EcommerceDashboard/components/Overview.js.map +1 -1
- package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RecentOrder.js.map +1 -1
- package/dist/@ecme/views/dashboards/EcommerceDashboard/components/RevenueByChannel.js.map +1 -1
- package/dist/@ecme/views/dashboards/EcommerceDashboard/components/SalesTarget.js.map +1 -1
- package/dist/@ecme/views/dashboards/EcommerceDashboard/components/TopProduct.js.map +1 -1
- package/dist/@ecme/views/dashboards/MarketingDashboard/components/AdsPerformance.js.map +1 -1
- package/dist/@ecme/views/dashboards/MarketingDashboard/components/CreateCampaign.js.map +1 -1
- package/dist/@ecme/views/dashboards/MarketingDashboard/components/LeadPerformance.js.map +1 -1
- package/dist/@ecme/views/dashboards/MarketingDashboard/components/RecentCampaign.js.map +1 -1
- package/dist/@ecme/views/dashboards/ProjectDashboard/components/CreateEventDialog.js.map +1 -1
- package/dist/@ecme/views/dashboards/ProjectDashboard/components/CurrentTasks.js.map +1 -1
- package/dist/@ecme/views/dashboards/ProjectDashboard/components/Schedule.js.map +1 -1
- package/dist/@ecme/views/dashboards/ProjectDashboard/components/UpcomingSchedule.js.map +1 -1
- package/dist/@ecme/views/guide/Documentations/components/Layouts.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/CalendarViewDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/ConfirmDialogDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/Simple.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/CustomFormatInputDoc/WithForm.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Basic.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Checkable.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/DataTableDoc/Query.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/DebounceInputDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/GanttChartDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/MasonryDoc/Basic.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/MasonryDoc/Responsive.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/Basic.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/NumericInputDoc/WithForm.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/OtpInputDoc/Basic.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/OtpInputDoc/Length.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/PasswordInputDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/Basic.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/PatternInputDoc/WithForm.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/PresetSegmentItemOptionDoc/Example.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/CustomConfig.js.map +1 -1
- package/dist/@ecme/views/guide/SharedComponentsDoc/components/RichTextEditorDoc/WithForm.js.map +1 -1
- package/dist/@ecme/views/ui-components/common/Button/ButtonWithIcon.js.map +1 -1
- package/dist/@ecme/views/ui-components/common/Button/Loading.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Calendar/CustomRender.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/DragAndDrop.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Editable.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Expanding.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Filtering.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Group.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/PaginationTable.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Resizable.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/RowSelection.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/Sorting.js.map +1 -1
- package/dist/@ecme/views/ui-components/data-display/Table/SubComponent.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Alert/Closable.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/Basic.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/Closable.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/CloseWithEscBackdrop.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/CustomStyle.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/InternalScroll.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/Size.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Dialog/StaticBackdrop.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/Basic.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/Closable.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/CustomStyle.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/Footer.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/Placement.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Drawer/WidthHeight.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Progress/Dynamic.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/AlertToast.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/Closable.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/CustomClose.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/CustomIcon.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/Duration.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/Notification.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/NotificationType.js.map +1 -1
- package/dist/@ecme/views/ui-components/feedback/Toast/Placement.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Checkbox/Default.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Checkbox/Group.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/DatePicker/Controlled.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/DatePicker/CustomRender.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/DatePicker/DisabledCertainDate.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/AsyncValidation.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/Basic.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/DependentValidation.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/DynamicForm.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/FieldValidation.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/Layout.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/MixedFormControl.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/SchemaValidation.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/FormControl/Sizes.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Input/PasswordVisible.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Radio/Group.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Radio/Vertical.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Segment/Controlled.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Segment/Size.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Select/AsyncOnSearch.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Select/Creatable.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Select/LoadOptionOnExpand.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Switcher/Basic.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Switcher/Controlled.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Switcher/Loading.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Upload/AvatarImage.js.map +1 -1
- package/dist/@ecme/views/ui-components/forms/Upload/BeforeUpload.js.map +1 -1
- package/dist/@ecme/views/ui-components/graph/Charts/DashedLine.js.map +1 -1
- package/dist/@ecme/views/ui-components/graph/Maps/ChoroplethQuantile.js.map +1 -1
- package/dist/@ecme/views/ui-components/graph/Maps/ChoroplethQuantize.js.map +1 -1
- package/dist/@ecme/views/ui-components/graph/Maps/MapChartWithTooltip.js.map +1 -1
- package/dist/@ecme/views/ui-components/graph/Maps/UsaStatesMapWithLabels.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Dropdown/Default.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Menu/CollapsableMenuItem.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Menu/Simple.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Pagination/Basic.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Pagination/Controlled.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Pagination/PageSize.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Steps/Clickable.js.map +1 -1
- package/dist/@ecme/views/ui-components/navigation/Steps/Controlled.js.map +1 -1
- package/dist/@types/@ecme/configs/chart.config.d.ts +2 -0
- package/dist/@types/@ecme/configs/chart.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts +1 -0
- package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts +18 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.d.ts +20 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +18 -0
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.d.ts.map +1 -1
- package/dist/@types/base/services/modules/Ticket/TicketService.d.ts +1 -0
- package/dist/@types/base/services/modules/Ticket/TicketService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/centralNfe/index.d.ts +2 -0
- package/dist/@types/base/services/modules/centralNfe/index.d.ts.map +1 -1
- package/dist/@types/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.d.ts +5 -0
- package/dist/@types/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/modules.query.d.ts +4 -0
- package/dist/@types/base/services/modules/modules.query.d.ts.map +1 -1
- package/dist/base/assets/styles/init.css +1 -1
- package/dist/base/components/forms/GenericForms/GenericUploadFormSection.js.map +1 -1
- package/dist/base/components/forms/NumberFormVariant/GenericNumberFormSectionPercentage.js.map +1 -1
- package/dist/base/components/shared/AceitarProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/AdicionarHistoricoDialog.js.map +1 -1
- package/dist/base/components/shared/CancelarProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/ConcluirProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/ReabrirProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirParaAtendenteDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirParaSolicitanteDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirProcessoDialog.js.map +1 -1
- package/dist/base/components/table/ListColumn.js.map +1 -1
- package/dist/base/components/tools/NavFilter.js.map +1 -1
- package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js +1 -0
- package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js +5 -3
- package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js.map +1 -1
- package/dist/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.js +10 -0
- package/dist/base/configs/endpoints.config/centralNfe/config/vinculoUnidadeMedida.js.map +1 -0
- package/dist/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.js +10 -0
- package/dist/base/configs/navigation.config/modules.submenu/centralNfe/submenu.centralNfe.js.map +1 -1
- package/dist/base/hooks/flux/useAceitarProcesso.js.map +1 -1
- package/dist/base/hooks/flux/useAdicionarHistorico.js.map +1 -1
- package/dist/base/hooks/flux/useCancelarProcesso.js.map +1 -1
- package/dist/base/hooks/flux/useConcluirProcesso.js.map +1 -1
- package/dist/base/hooks/flux/useReabrirProcesso.js.map +1 -1
- package/dist/base/hooks/flux/useRetornarFluxoAtendimento.js.map +1 -1
- package/dist/base/hooks/flux/useTransferirParaAtendente.js.map +1 -1
- package/dist/base/hooks/flux/useTransferirParaSolicitante.js.map +1 -1
- package/dist/base/hooks/flux/useTransferirProcesso.js.map +1 -1
- package/dist/base/services/modules/Ticket/TicketService.js +17 -9
- package/dist/base/services/modules/Ticket/TicketService.js.map +1 -1
- package/dist/base/services/modules/centralNfe/index.js +13 -3
- package/dist/base/services/modules/centralNfe/index.js.map +1 -1
- package/dist/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.js +37 -0
- package/dist/base/services/modules/centralNfe/vinculoUnidadeMedida/VinculoUnidadeMedidaService.js.map +1 -0
- package/dist/base/services/modules/modules.query.js +7 -6
- package/dist/base/services/modules/modules.query.js.map +1 -1
- package/dist/base/services/query.js.map +1 -1
- package/dist/base/utils/functions/formUtils.js.map +1 -1
- package/dist/base/utils/functions/handleInputChangeUtils.js.map +1 -1
- package/dist/base/utils/functions/stringUtils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useThemeSchema.js","sources":["../../../../lib/@ecme/utils/hooks/useThemeSchema.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport { useThemeStore } from '@/store/themeStore'\nimport presetThemeSchemaConfig from '@/configs/preset-theme-schema.config'\n\nexport type ThemeVariables = Record<\n 'primary' | 'primaryDeep' | 'primaryMild' | 'primarySubtle' | 'neutral',\n string\n>\n\nexport interface MappedTheme {\n [key: string]: string\n}\n\nexport const mapTheme = (variables: ThemeVariables): MappedTheme => {\n return {\n '--primary': variables.primary || '',\n '--primary-deep': variables.primaryDeep || '',\n '--primary-mild': variables.primaryMild || '',\n '--primary-subtle': variables.primarySubtle || '',\n '--neutral': variables.neutral || '',\n }\n}\n\nfunction useThemeSchema() {\n const themeSchema = useThemeStore((state) => state.themeSchema)\n const mode = useThemeStore((state) => state.mode)\n\n const applyTheme = (theme: string): void => {\n if (presetThemeSchemaConfig[theme][mode]) {\n const themeObject = mapTheme(presetThemeSchemaConfig[theme][mode])\n if (!themeObject) return\n\n const root = document.documentElement\n\n Object.keys(themeObject).forEach((property) => {\n if (property === 'name') {\n return\n }\n\n root.style.setProperty(property, themeObject[property])\n })\n }\n }\n\n useEffect(() => {\n if (themeSchema) {\n applyTheme(themeSchema)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [themeSchema, mode])\n}\n\nexport default useThemeSchema\n"],"names":["mapTheme","variables","useThemeSchema","themeSchema","useThemeStore","state","mode","applyTheme","theme","presetThemeSchemaConfig","themeObject","root","property","useEffect"],"mappings":";;;AAaO,MAAMA,IAAW,CAACC,OACd;AAAA,EACH,aAAaA,EAAU,WAAW;AAAA,EAClC,kBAAkBA,EAAU,eAAe;AAAA,EAC3C,kBAAkBA,EAAU,eAAe;AAAA,EAC3C,oBAAoBA,EAAU,iBAAiB;AAAA,EAC/C,aAAaA,EAAU,WAAW;AAAA;AAI1C,SAASC,IAAiB;AACtB,QAAMC,IAAcC,EAAc,CAACC,MAAUA,EAAM,WAAW,GACxDC,IAAOF,EAAc,CAACC,MAAUA,EAAM,IAAI,GAE1CE,IAAa,CAACC,MAAwB;AACxC,QAAIC,EAAwBD,CAAK,EAAEF,CAAI,GAAG;AACtC,YAAMI,IAAcV,EAASS,EAAwBD,CAAK,EAAEF,CAAI,CAAC;AACjE,UAAI,CAACI,EAAa;AAElB,YAAMC,IAAO,SAAS;AAEtB,aAAO,KAAKD,CAAW,EAAE,QAAQ,CAACE,MAAa;AAC3C,QAAIA,MAAa,UAIjBD,EAAK,MAAM,YAAYC,GAAUF,EAAYE,CAAQ,CAAC;AAAA,
|
|
1
|
+
{"version":3,"file":"useThemeSchema.js","sources":["../../../../lib/@ecme/utils/hooks/useThemeSchema.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport { useThemeStore } from '@/store/themeStore'\nimport presetThemeSchemaConfig from '@/configs/preset-theme-schema.config'\n\nexport type ThemeVariables = Record<\n 'primary' | 'primaryDeep' | 'primaryMild' | 'primarySubtle' | 'neutral',\n string\n>\n\nexport interface MappedTheme {\n [key: string]: string\n}\n\nexport const mapTheme = (variables: ThemeVariables): MappedTheme => {\n return {\n '--primary': variables.primary || '',\n '--primary-deep': variables.primaryDeep || '',\n '--primary-mild': variables.primaryMild || '',\n '--primary-subtle': variables.primarySubtle || '',\n '--neutral': variables.neutral || '',\n }\n}\n\nfunction useThemeSchema() {\n const themeSchema = useThemeStore((state) => state.themeSchema)\n const mode = useThemeStore((state) => state.mode)\n\n const applyTheme = (theme: string): void => {\n if (presetThemeSchemaConfig[theme][mode]) {\n const themeObject = mapTheme(presetThemeSchemaConfig[theme][mode])\n if (!themeObject) return\n\n const root = document.documentElement\n\n Object.keys(themeObject).forEach((property) => {\n if (property === 'name') {\n return\n }\n\n root.style.setProperty(property, themeObject[property])\n })\n }\n }\n\n useEffect(() => {\n if (themeSchema) {\n applyTheme(themeSchema)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [themeSchema, mode])\n}\n\nexport default useThemeSchema\n"],"names":["mapTheme","variables","useThemeSchema","themeSchema","useThemeStore","state","mode","applyTheme","theme","presetThemeSchemaConfig","themeObject","root","property","useEffect"],"mappings":";;;AAaO,MAAMA,IAAW,CAACC,OACd;AAAA,EACH,aAAaA,EAAU,WAAW;AAAA,EAClC,kBAAkBA,EAAU,eAAe;AAAA,EAC3C,kBAAkBA,EAAU,eAAe;AAAA,EAC3C,oBAAoBA,EAAU,iBAAiB;AAAA,EAC/C,aAAaA,EAAU,WAAW;AAAA;AAI1C,SAASC,IAAiB;AACtB,QAAMC,IAAcC,EAAc,CAACC,MAAUA,EAAM,WAAW,GACxDC,IAAOF,EAAc,CAACC,MAAUA,EAAM,IAAI,GAE1CE,IAAa,CAACC,MAAwB;AACxC,QAAIC,EAAwBD,CAAK,EAAEF,CAAI,GAAG;AACtC,YAAMI,IAAcV,EAASS,EAAwBD,CAAK,EAAEF,CAAI,CAAC;AACjE,UAAI,CAACI,EAAa;AAElB,YAAMC,IAAO,SAAS;AAEtB,aAAO,KAAKD,CAAW,EAAE,QAAQ,CAACE,MAAa;AAC3C,QAAIA,MAAa,UAIjBD,EAAK,MAAM,YAAYC,GAAUF,EAAYE,CAAQ,CAAC;AAAA,MAC1D,CAAC;AAAA,IACL;AAAA,EACJ;AAEA,EAAAC,EAAU,MAAM;AACZ,IAAIV,KACAI,EAAWJ,CAAW;AAAA,EAG9B,GAAG,CAACA,GAAaG,CAAI,CAAC;AAC1B;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTimeOutMessage.js","sources":["../../../../lib/@ecme/utils/hooks/useTimeOutMessage.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nfunction useTimeOutMessage(\n interval = 3000,\n): [string, React.Dispatch<React.SetStateAction<string>>] {\n const [message, setMessage] = useState('')\n\n useEffect(() => {\n if (message) {\n const timeout = setTimeout(() => setMessage(''), interval)\n return () => {\n clearTimeout(timeout)\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [message])\n\n return [message, setMessage]\n}\n\nexport default useTimeOutMessage\n"],"names":["useTimeOutMessage","interval","message","setMessage","useState","useEffect","timeout"],"mappings":";AAEA,SAASA,EACLC,IAAW,KAC2C;AACtD,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE;AAEzC,SAAAC,EAAU,MAAM;AACZ,QAAIH,GAAS;AACT,YAAMI,IAAU,WAAW,MAAMH,EAAW,EAAE,GAAGF,CAAQ;AACzD,aAAO,MAAM;AACT,qBAAaK,CAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"useTimeOutMessage.js","sources":["../../../../lib/@ecme/utils/hooks/useTimeOutMessage.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nfunction useTimeOutMessage(\n interval = 3000,\n): [string, React.Dispatch<React.SetStateAction<string>>] {\n const [message, setMessage] = useState('')\n\n useEffect(() => {\n if (message) {\n const timeout = setTimeout(() => setMessage(''), interval)\n return () => {\n clearTimeout(timeout)\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [message])\n\n return [message, setMessage]\n}\n\nexport default useTimeOutMessage\n"],"names":["useTimeOutMessage","interval","message","setMessage","useState","useEffect","timeout"],"mappings":";AAEA,SAASA,EACLC,IAAW,KAC2C;AACtD,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAE;AAEzC,SAAAC,EAAU,MAAM;AACZ,QAAIH,GAAS;AACT,YAAMI,IAAU,WAAW,MAAMH,EAAW,EAAE,GAAGF,CAAQ;AACzD,aAAO,MAAM;AACT,qBAAaK,CAAO;AAAA,MACxB;AAAA,IACJ;AAAA,EAEJ,GAAG,CAACJ,CAAO,CAAC,GAEL,CAACA,GAASC,CAAU;AAC/B;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reorderDragable.js","sources":["../../../lib/@ecme/utils/reorderDragable.ts"],"sourcesContent":["import reoderArray from './reoderArray'\nimport type { DraggableLocation } from '@hello-pangea/dnd'\n\nexport const reorderDragable = <T extends Record<string, unknown[]>>({\n quoteMap,\n source,\n destination,\n}: {\n quoteMap: T\n source: DraggableLocation\n destination: DraggableLocation\n}) => {\n const current = [...quoteMap[source.droppableId]]\n const next = [...quoteMap[destination.droppableId]]\n const target = current[source.index]\n\n // moving to same list\n if (source.droppableId === destination.droppableId) {\n const reordered = reoderArray(current, source.index, destination.index)\n const result = {\n ...quoteMap,\n [source.droppableId]: reordered,\n }\n return {\n quoteMap: result,\n }\n }\n current.splice(source.index, 1)\n next.splice(destination.index, 0, target)\n const result = {\n ...quoteMap,\n [source.droppableId]: current,\n [destination.droppableId]: next,\n }\n\n return {\n quoteMap: result,\n }\n}\n\nexport default reorderDragable\n"],"names":["reorderDragable","quoteMap","source","destination","current","next","target","reordered","reoderArray"],"mappings":";AAGO,MAAMA,IAAkB,CAAsC;AAAA,EACjE,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC;AACJ,MAIM;AACF,QAAMC,IAAU,CAAC,GAAGH,EAASC,EAAO,WAAW,CAAC,GAC1CG,IAAO,CAAC,GAAGJ,EAASE,EAAY,WAAW,CAAC,GAC5CG,IAASF,EAAQF,EAAO,KAAK;AAGnC,MAAIA,EAAO,gBAAgBC,EAAY,aAAa;AAChD,UAAMI,IAAYC,EAAYJ,GAASF,EAAO,OAAOC,EAAY,KAAK;AAKtE,WAAO;AAAA,MACH,UALW;AAAA,QACX,GAAGF;AAAA,QACH,CAACC,EAAO,WAAW,GAAGK;AAAA,MAAA;AAAA,IAGZ;AAAA,
|
|
1
|
+
{"version":3,"file":"reorderDragable.js","sources":["../../../lib/@ecme/utils/reorderDragable.ts"],"sourcesContent":["import reoderArray from './reoderArray'\nimport type { DraggableLocation } from '@hello-pangea/dnd'\n\nexport const reorderDragable = <T extends Record<string, unknown[]>>({\n quoteMap,\n source,\n destination,\n}: {\n quoteMap: T\n source: DraggableLocation\n destination: DraggableLocation\n}) => {\n const current = [...quoteMap[source.droppableId]]\n const next = [...quoteMap[destination.droppableId]]\n const target = current[source.index]\n\n // moving to same list\n if (source.droppableId === destination.droppableId) {\n const reordered = reoderArray(current, source.index, destination.index)\n const result = {\n ...quoteMap,\n [source.droppableId]: reordered,\n }\n return {\n quoteMap: result,\n }\n }\n current.splice(source.index, 1)\n next.splice(destination.index, 0, target)\n const result = {\n ...quoteMap,\n [source.droppableId]: current,\n [destination.droppableId]: next,\n }\n\n return {\n quoteMap: result,\n }\n}\n\nexport default reorderDragable\n"],"names":["reorderDragable","quoteMap","source","destination","current","next","target","reordered","reoderArray"],"mappings":";AAGO,MAAMA,IAAkB,CAAsC;AAAA,EACjE,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC;AACJ,MAIM;AACF,QAAMC,IAAU,CAAC,GAAGH,EAASC,EAAO,WAAW,CAAC,GAC1CG,IAAO,CAAC,GAAGJ,EAASE,EAAY,WAAW,CAAC,GAC5CG,IAASF,EAAQF,EAAO,KAAK;AAGnC,MAAIA,EAAO,gBAAgBC,EAAY,aAAa;AAChD,UAAMI,IAAYC,EAAYJ,GAASF,EAAO,OAAOC,EAAY,KAAK;AAKtE,WAAO;AAAA,MACH,UALW;AAAA,QACX,GAAGF;AAAA,QACH,CAACC,EAAO,WAAW,GAAGK;AAAA,MAAA;AAAA,IAGZ;AAAA,EAElB;AACA,SAAAH,EAAQ,OAAOF,EAAO,OAAO,CAAC,GAC9BG,EAAK,OAAOF,EAAY,OAAO,GAAGG,CAAM,GAOjC;AAAA,IACH,UAPW;AAAA,MACX,GAAGL;AAAA,MACH,CAACC,EAAO,WAAW,GAAGE;AAAA,MACtB,CAACD,EAAY,WAAW,GAAGE;AAAA,IAAA;AAAA,EAIjB;AAElB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortBy.js","sources":["../../../lib/@ecme/utils/sortBy.ts"],"sourcesContent":["type Primitive = string | number | boolean\n\nexport type Primer = (value: Primitive) => Primitive\n\nconst sortBy = <T extends Record<string, Primitive>>(\n field: keyof T,\n reverse: boolean,\n primer?: (value: Primitive) => Primitive,\n) => {\n const key = primer\n ? function (x: T) {\n return primer(x[field])\n }\n : function (x: T) {\n return x[field]\n }\n const isReverse = !reverse ? 1 : -1\n return function (a: T, b: T) {\n const valueA = key(a)\n const valueB = key(b)\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return isReverse * valueA.localeCompare(valueB)\n }\n return isReverse * (valueA > valueB ? 1 : valueB > valueA ? -1 : 0)\n }\n}\n\nexport default sortBy\n"],"names":["sortBy","field","reverse","primer","key","x","isReverse","a","b","valueA","valueB"],"mappings":"AAIA,MAAMA,IAAS,CACXC,GACAC,GACAC,MACC;AACD,QAAMC,IAAMD,IACN,SAAUE,GAAM;AACZ,WAAOF,EAAOE,EAAEJ,CAAK,CAAC;AAAA,
|
|
1
|
+
{"version":3,"file":"sortBy.js","sources":["../../../lib/@ecme/utils/sortBy.ts"],"sourcesContent":["type Primitive = string | number | boolean\n\nexport type Primer = (value: Primitive) => Primitive\n\nconst sortBy = <T extends Record<string, Primitive>>(\n field: keyof T,\n reverse: boolean,\n primer?: (value: Primitive) => Primitive,\n) => {\n const key = primer\n ? function (x: T) {\n return primer(x[field])\n }\n : function (x: T) {\n return x[field]\n }\n const isReverse = !reverse ? 1 : -1\n return function (a: T, b: T) {\n const valueA = key(a)\n const valueB = key(b)\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return isReverse * valueA.localeCompare(valueB)\n }\n return isReverse * (valueA > valueB ? 1 : valueB > valueA ? -1 : 0)\n }\n}\n\nexport default sortBy\n"],"names":["sortBy","field","reverse","primer","key","x","isReverse","a","b","valueA","valueB"],"mappings":"AAIA,MAAMA,IAAS,CACXC,GACAC,GACAC,MACC;AACD,QAAMC,IAAMD,IACN,SAAUE,GAAM;AACZ,WAAOF,EAAOE,EAAEJ,CAAK,CAAC;AAAA,EAC1B,IACA,SAAUI,GAAM;AACZ,WAAOA,EAAEJ,CAAK;AAAA,EAClB,GACAK,IAAaJ,IAAc,KAAJ;AAC7B,SAAO,SAAUK,GAAMC,GAAM;AACzB,UAAMC,IAASL,EAAIG,CAAC,GACdG,IAASN,EAAII,CAAC;AACpB,WAAI,OAAOC,KAAW,YAAY,OAAOC,KAAW,WACzCJ,IAAYG,EAAO,cAAcC,CAAM,IAE3CJ,KAAaG,IAASC,IAAS,IAAIA,IAASD,IAAS,KAAK;AAAA,EACrE;AACJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wildCardSearch.js","sources":["../../../lib/@ecme/utils/wildCardSearch.ts"],"sourcesContent":["export default function wildCardSearch(\n list: Array<Record<string, string | number>>,\n input: string,\n specifyKey?: string,\n) {\n const searchText = (item: Record<string, string | number>) => {\n for (const key in item) {\n if (item[specifyKey ? specifyKey : key] == null) {\n continue\n }\n if (\n item[specifyKey ? specifyKey : key]\n .toString()\n .toUpperCase()\n .indexOf(input.toString().toUpperCase()) !== -1\n ) {\n return true\n }\n }\n }\n const result = list.filter((value) => searchText(value))\n return result\n}\n"],"names":["wildCardSearch","list","input","specifyKey","searchText","item","key","value"],"mappings":"AAAA,SAAwBA,EACpBC,GACAC,GACAC,GACF;AACE,QAAMC,IAAa,CAACC,MAA0C;AAC1D,eAAWC,KAAOD;AACd,UAAIA,EAAKF,KAA0BG,CAAG,KAAK,QAIvCD,EAAKF,KAA0BG,CAAG,EAC7B,WACA,YAAA,EACA,QAAQJ,EAAM,SAAA,EAAW,YAAA,CAAa,MAAM;AAEjD,eAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"wildCardSearch.js","sources":["../../../lib/@ecme/utils/wildCardSearch.ts"],"sourcesContent":["export default function wildCardSearch(\n list: Array<Record<string, string | number>>,\n input: string,\n specifyKey?: string,\n) {\n const searchText = (item: Record<string, string | number>) => {\n for (const key in item) {\n if (item[specifyKey ? specifyKey : key] == null) {\n continue\n }\n if (\n item[specifyKey ? specifyKey : key]\n .toString()\n .toUpperCase()\n .indexOf(input.toString().toUpperCase()) !== -1\n ) {\n return true\n }\n }\n }\n const result = list.filter((value) => searchText(value))\n return result\n}\n"],"names":["wildCardSearch","list","input","specifyKey","searchText","item","key","value"],"mappings":"AAAA,SAAwBA,EACpBC,GACAC,GACAC,GACF;AACE,QAAMC,IAAa,CAACC,MAA0C;AAC1D,eAAWC,KAAOD;AACd,UAAIA,EAAKF,KAA0BG,CAAG,KAAK,QAIvCD,EAAKF,KAA0BG,CAAG,EAC7B,WACA,YAAA,EACA,QAAQJ,EAAM,SAAA,EAAW,YAAA,CAAa,MAAM;AAEjD,eAAO;AAAA,EAGnB;AAEA,SADeD,EAAK,OAAO,CAACM,MAAUH,EAAWG,CAAK,CAAC;AAE3D;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForgotPassword.js","sources":["../../../../../lib/@ecme/views/auth/ForgotPassword/ForgotPassword.tsx"],"sourcesContent":["import ActionLink from '@/components/shared/ActionLink'\nimport Alert from '@/components/ui/Alert'\nimport Button from '@/components/ui/Button'\nimport useTimeOutMessage from '@/utils/hooks/useTimeOutMessage'\nimport { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { Navigate, useNavigate } from 'react-router-dom'\nimport ForgotPasswordForm from './components/ForgotPasswordForm'\n\ntype ForgotPasswordProps = {\n signInUrl?: string\n}\n\nexport const ForgotPasswordBase = ({\n signInUrl = '/sign-in',\n}: ForgotPasswordProps) => {\n const [emailSent, setEmailSent] = useState(false)\n const [message, setMessage] = useTimeOutMessage()\n\n const navigate = useNavigate()\n\n const handleContinue = () => {\n navigate(signInUrl)\n }\n\n const { t } = useTranslation()\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center text-center\">\n {emailSent ? (\n <>\n <h3 className=\"mb-2\">\n {t('pages.auth.forgotPassword.mailSent')}\n </h3>\n <p className=\"font-semibold\">\n {t('pages.auth.forgotPassword.mailSentDesc')}\n </p>\n <Navigate to=\"/reset-password\" />\n </>\n ) : (\n <>\n <h3 className=\"mb-2\">\n {t('pages.auth.forgotPassword.title')}\n </h3>\n <p className=\"font-semibold\">\n {t('pages.auth.forgotPassword.desc')}\n </p>\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ForgotPasswordForm\n emailSent={emailSent}\n setMessage={setMessage}\n setEmailSent={setEmailSent}\n >\n <Button\n block\n variant=\"solid\"\n type=\"button\"\n onClick={handleContinue}\n >\n {t('common.actions.continue')}\n </Button>\n </ForgotPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n {t('common.actions.back')}\n </ActionLink>\n </div>\n </div>\n )\n}\n\nconst ForgotPassword = () => {\n return <ForgotPasswordBase />\n}\n\nexport default ForgotPassword\n"],"names":["ForgotPasswordBase","signInUrl","emailSent","setEmailSent","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","handleContinue","useTranslation","jsx","jsxs","Fragment","Navigate","Alert","ForgotPasswordForm","Button","ActionLink","ForgotPassword"],"mappings":";;;;;;;;;;;AAaO,MAAMA,IAAqB,CAAC;AAAA,EAC/B,WAAAC,IAAY;AAChB,MAA2B;AACvB,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAASC,CAAU,IAAIC,EAAA,GAExBC,IAAWC,EAAA,GAEXC,IAAiB,MAAM;AACzB,IAAAF,EAASP,CAAS;AAAA,
|
|
1
|
+
{"version":3,"file":"ForgotPassword.js","sources":["../../../../../lib/@ecme/views/auth/ForgotPassword/ForgotPassword.tsx"],"sourcesContent":["import ActionLink from '@/components/shared/ActionLink'\nimport Alert from '@/components/ui/Alert'\nimport Button from '@/components/ui/Button'\nimport useTimeOutMessage from '@/utils/hooks/useTimeOutMessage'\nimport { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { Navigate, useNavigate } from 'react-router-dom'\nimport ForgotPasswordForm from './components/ForgotPasswordForm'\n\ntype ForgotPasswordProps = {\n signInUrl?: string\n}\n\nexport const ForgotPasswordBase = ({\n signInUrl = '/sign-in',\n}: ForgotPasswordProps) => {\n const [emailSent, setEmailSent] = useState(false)\n const [message, setMessage] = useTimeOutMessage()\n\n const navigate = useNavigate()\n\n const handleContinue = () => {\n navigate(signInUrl)\n }\n\n const { t } = useTranslation()\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center text-center\">\n {emailSent ? (\n <>\n <h3 className=\"mb-2\">\n {t('pages.auth.forgotPassword.mailSent')}\n </h3>\n <p className=\"font-semibold\">\n {t('pages.auth.forgotPassword.mailSentDesc')}\n </p>\n <Navigate to=\"/reset-password\" />\n </>\n ) : (\n <>\n <h3 className=\"mb-2\">\n {t('pages.auth.forgotPassword.title')}\n </h3>\n <p className=\"font-semibold\">\n {t('pages.auth.forgotPassword.desc')}\n </p>\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ForgotPasswordForm\n emailSent={emailSent}\n setMessage={setMessage}\n setEmailSent={setEmailSent}\n >\n <Button\n block\n variant=\"solid\"\n type=\"button\"\n onClick={handleContinue}\n >\n {t('common.actions.continue')}\n </Button>\n </ForgotPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n {t('common.actions.back')}\n </ActionLink>\n </div>\n </div>\n )\n}\n\nconst ForgotPassword = () => {\n return <ForgotPasswordBase />\n}\n\nexport default ForgotPassword\n"],"names":["ForgotPasswordBase","signInUrl","emailSent","setEmailSent","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","handleContinue","useTranslation","jsx","jsxs","Fragment","Navigate","Alert","ForgotPasswordForm","Button","ActionLink","ForgotPassword"],"mappings":";;;;;;;;;;;AAaO,MAAMA,IAAqB,CAAC;AAAA,EAC/B,WAAAC,IAAY;AAChB,MAA2B;AACvB,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAASC,CAAU,IAAIC,EAAA,GAExBC,IAAWC,EAAA,GAEXC,IAAiB,MAAM;AACzB,IAAAF,EAASP,CAAS;AAAA,EACtB,GAEM,EAAE,EAAA,IAAMU,EAAA;AAEd,2BACK,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,gDACV,UAAAV,IACG,gBAAAW,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAF,EAAC,MAAA,EAAG,WAAU,QACT,UAAA,EAAE,oCAAoC,GAC3C;AAAA,wBACC,KAAA,EAAE,WAAU,iBACR,UAAA,EAAE,wCAAwC,GAC/C;AAAA,MACA,gBAAAA,EAACG,GAAA,EAAS,IAAG,kBAAA,CAAkB;AAAA,IAAA,EAAA,CACnC,IAEA,gBAAAF,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAF,EAAC,MAAA,EAAG,WAAU,QACT,UAAA,EAAE,iCAAiC,GACxC;AAAA,wBACC,KAAA,EAAE,WAAU,iBACR,UAAA,EAAE,gCAAgC,EAAA,CACvC;AAAA,IAAA,EAAA,CACJ,EAAA,CAER;AAAA,IACCP,KACG,gBAAAO,EAACI,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,UAClC,UAAA,gBAAAJ,EAAC,QAAA,EAAK,WAAU,aAAa,aAAQ,GACzC;AAAA,IAEJ,gBAAAA;AAAA,MAACK;AAAA,MAAA;AAAA,QACG,WAAAf;AAAA,QACA,YAAAI;AAAA,QACA,cAAAH;AAAA,QAEA,UAAA,gBAAAS;AAAA,UAACM;AAAA,UAAA;AAAA,YACG,OAAK;AAAA,YACL,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,SAASR;AAAA,YAER,YAAE,yBAAyB;AAAA,UAAA;AAAA,QAAA;AAAA,MAChC;AAAA,IAAA;AAAA,IAEJ,gBAAAE,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA,gBAAAA;AAAA,MAACO;AAAA,MAAA;AAAA,QACG,IAAIlB;AAAA,QACJ,WAAU;AAAA,QACV,YAAY;AAAA,QAEX,YAAE,qBAAqB;AAAA,MAAA;AAAA,IAAA,EAC5B,CACJ;AAAA,EAAA,GACJ;AAER,GAEMmB,IAAiB,wBACXpB,GAAA,EAAmB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForgotPasswordForm.js","sources":["../../../../../../lib/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport { apiForgotPassword } from '@/services/AuthService'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface ForgotPasswordFormProps extends CommonProps {\n emailSent: boolean\n setEmailSent?: (compplete: boolean) => void\n setMessage?: (message: string) => void\n}\n\ntype ForgotPasswordFormSchema = {\n email: string\n}\n\nconst validationSchema: ZodType<ForgotPasswordFormSchema> = z.object({\n email: z.string().email().min(5),\n})\n\nconst ForgotPasswordForm = (props: ForgotPasswordFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { className, setMessage, setEmailSent, emailSent, children } = props\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ForgotPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onForgotPassword = async (values: ForgotPasswordFormSchema) => {\n const { email } = values\n\n setSubmitting(true)\n\n try {\n const resp = await apiForgotPassword<boolean>({ email })\n if (resp) {\n setSubmitting(false)\n setEmailSent?.(true)\n }\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Erro ao enviar email.',\n )\n setSubmitting(false)\n }\n\n setSubmitting(false)\n }\n\n return (\n <div className={className}>\n {!emailSent ? (\n <Form onSubmit={handleSubmit(onForgotPassword)}>\n <FormItem\n label=\"Email\"\n invalid={Boolean(errors.email)}\n errorMessage={errors.email?.message}\n >\n <Controller\n name=\"email\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"email\"\n placeholder=\"Email\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n className=\"mt-5\"\n >\n {isSubmitting ? 'Enviando...' : 'Enviar'}\n </Button>\n </Form>\n ) : (\n <>{children}</>\n )}\n </div>\n )\n}\n\nexport default ForgotPasswordForm\n"],"names":["validationSchema","z","ForgotPasswordForm","props","isSubmitting","setSubmitting","useState","className","setMessage","setEmailSent","emailSent","children","handleSubmit","errors","control","useForm","zodResolver","jsx","Fragment","Form","values","email","apiForgotPassword","FormItem","_a","Controller","field","Input","Button"],"mappings":";;;;;;;;;;;;;AAqBA,MAAMA,IAAsDC,EAAE,OAAO;AAAA,EACjE,OAAOA,EAAE,OAAA,EAAS,MAAA,EAAQ,IAAI,CAAC;AACnC,CAAC,GAEKC,IAAqB,CAACC,MAAmC;;AAC3D,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,WAAAC,GAAW,YAAAC,GAAY,cAAAC,GAAc,WAAAC,GAAW,UAAAC,MAAaR,GAE/D;AAAA,IACF,cAAAS;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACAC,EAAkC;AAAA,IAClC,UAAUC,EAAYhB,CAAgB;AAAA,EAAA,CACzC;AAuBD,SACI,gBAAAiB,EAAC,OAAA,EAAI,WAAAV,GACA,UAACG,IA+BE,gBAAAO,EAAAC,GAAA,EAAG,UAAAP,EAAA,CAAS,sBA9BXQ,GAAA,EAAK,UAAUP,EAxBH,OAAOQ,MAAqC;AACjE,UAAM,EAAE,OAAAC,MAAUD;AAElB,IAAAf,EAAc,EAAI;AAElB,QAAI;AAEA,MADa,MAAMiB,EAA2B,EAAE,OAAAD,GAAO,MAEnDhB,EAAc,EAAK,GACnBI,KAAA,QAAAA,EAAe;AAAA,
|
|
1
|
+
{"version":3,"file":"ForgotPasswordForm.js","sources":["../../../../../../lib/@ecme/views/auth/ForgotPassword/components/ForgotPasswordForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport { apiForgotPassword } from '@/services/AuthService'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface ForgotPasswordFormProps extends CommonProps {\n emailSent: boolean\n setEmailSent?: (compplete: boolean) => void\n setMessage?: (message: string) => void\n}\n\ntype ForgotPasswordFormSchema = {\n email: string\n}\n\nconst validationSchema: ZodType<ForgotPasswordFormSchema> = z.object({\n email: z.string().email().min(5),\n})\n\nconst ForgotPasswordForm = (props: ForgotPasswordFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { className, setMessage, setEmailSent, emailSent, children } = props\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ForgotPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onForgotPassword = async (values: ForgotPasswordFormSchema) => {\n const { email } = values\n\n setSubmitting(true)\n\n try {\n const resp = await apiForgotPassword<boolean>({ email })\n if (resp) {\n setSubmitting(false)\n setEmailSent?.(true)\n }\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Erro ao enviar email.',\n )\n setSubmitting(false)\n }\n\n setSubmitting(false)\n }\n\n return (\n <div className={className}>\n {!emailSent ? (\n <Form onSubmit={handleSubmit(onForgotPassword)}>\n <FormItem\n label=\"Email\"\n invalid={Boolean(errors.email)}\n errorMessage={errors.email?.message}\n >\n <Controller\n name=\"email\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"email\"\n placeholder=\"Email\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n className=\"mt-5\"\n >\n {isSubmitting ? 'Enviando...' : 'Enviar'}\n </Button>\n </Form>\n ) : (\n <>{children}</>\n )}\n </div>\n )\n}\n\nexport default ForgotPasswordForm\n"],"names":["validationSchema","z","ForgotPasswordForm","props","isSubmitting","setSubmitting","useState","className","setMessage","setEmailSent","emailSent","children","handleSubmit","errors","control","useForm","zodResolver","jsx","Fragment","Form","values","email","apiForgotPassword","FormItem","_a","Controller","field","Input","Button"],"mappings":";;;;;;;;;;;;;AAqBA,MAAMA,IAAsDC,EAAE,OAAO;AAAA,EACjE,OAAOA,EAAE,OAAA,EAAS,MAAA,EAAQ,IAAI,CAAC;AACnC,CAAC,GAEKC,IAAqB,CAACC,MAAmC;;AAC3D,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,WAAAC,GAAW,YAAAC,GAAY,cAAAC,GAAc,WAAAC,GAAW,UAAAC,MAAaR,GAE/D;AAAA,IACF,cAAAS;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACAC,EAAkC;AAAA,IAClC,UAAUC,EAAYhB,CAAgB;AAAA,EAAA,CACzC;AAuBD,SACI,gBAAAiB,EAAC,OAAA,EAAI,WAAAV,GACA,UAACG,IA+BE,gBAAAO,EAAAC,GAAA,EAAG,UAAAP,EAAA,CAAS,sBA9BXQ,GAAA,EAAK,UAAUP,EAxBH,OAAOQ,MAAqC;AACjE,UAAM,EAAE,OAAAC,MAAUD;AAElB,IAAAf,EAAc,EAAI;AAElB,QAAI;AAEA,MADa,MAAMiB,EAA2B,EAAE,OAAAD,GAAO,MAEnDhB,EAAc,EAAK,GACnBI,KAAA,QAAAA,EAAe;AAAA,IAEvB,SAASI,GAAQ;AACb,MAAAL,KAAA,QAAAA;AAAA,QACI,OAAOK,KAAW,WAAWA,IAAS;AAAA,SAE1CR,EAAc,EAAK;AAAA,IACvB;AAEA,IAAAA,EAAc,EAAK;AAAA,EACvB,CAKyD,GACzC,UAAA;AAAA,IAAA,gBAAAY;AAAA,MAACM;AAAA,MAAA;AAAA,QACG,OAAM;AAAA,QACN,SAAS,EAAQV,EAAO;AAAA,QACxB,eAAcW,IAAAX,EAAO,UAAP,gBAAAW,EAAc;AAAA,QAE5B,UAAA,gBAAAP;AAAA,UAACQ;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,SAAAX;AAAA,YACA,QAAQ,CAAC,EAAE,OAAAY,EAAA,MACP,gBAAAT;AAAA,cAACU;AAAA,cAAA;AAAA,gBACG,MAAK;AAAA,gBACL,aAAY;AAAA,gBACZ,cAAa;AAAA,gBACZ,GAAGD;AAAA,cAAA;AAAA,YAAA;AAAA,UACR;AAAA,QAAA;AAAA,MAER;AAAA,IAAA;AAAA,IAEJ,gBAAAT;AAAA,MAACW;AAAA,MAAA;AAAA,QACG,OAAK;AAAA,QACL,SAASxB;AAAA,QACT,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,WAAU;AAAA,QAET,cAAe,gBAAgB;AAAA,MAAA;AAAA,IAAA;AAAA,EACpC,EAAA,CACJ,EAEY,CAEpB;AAER;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtpVerification.js","sources":["../../../../../lib/@ecme/views/auth/OtpVerification/OtpVerification.tsx"],"sourcesContent":["import Alert from '@/components/ui/Alert'\nimport OtpVerificationForm from './components/OtpVerificationForm'\nimport sleep from '@/utils/sleep'\nimport useTimeOutMessage from '@/utils/hooks/useTimeOutMessage'\n\nexport const OtpVerificationBase = () => {\n const [otpVerified, setOtpVerified] = useTimeOutMessage()\n const [otpResend, setOtpResend] = useTimeOutMessage()\n const [message, setMessage] = useTimeOutMessage()\n\n const handleResendOtp = async () => {\n try {\n /** simulate api call with sleep */\n await sleep(500)\n setOtpResend('We have sent you One Time Password.')\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Some error occured!',\n )\n }\n }\n\n return (\n <div>\n <div className=\"mb-8\">\n <h3 className=\"mb-2\">OTP Verification</h3>\n <p className=\"font-semibold heading-text\">\n We have sent you One Time Password to your email.\n </p>\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n {otpResend && (\n <Alert showIcon className=\"mb-4\" type=\"info\">\n <span className=\"break-all\">{otpResend}</span>\n </Alert>\n )}\n {otpVerified && (\n <Alert showIcon className=\"mb-4\" type=\"success\">\n <span className=\"break-all\">{otpVerified}</span>\n </Alert>\n )}\n <OtpVerificationForm\n setMessage={setMessage}\n setOtpVerified={setOtpVerified}\n />\n <div className=\"mt-4 text-center\">\n <span className=\"font-semibold\">Din't receive OTP? </span>\n <button\n className=\"heading-text font-bold underline\"\n onClick={handleResendOtp}\n >\n Resend OTP\n </button>\n </div>\n </div>\n )\n}\n\nconst OtpVerification = () => {\n return <OtpVerificationBase />\n}\n\nexport default OtpVerification\n"],"names":["OtpVerificationBase","otpVerified","setOtpVerified","useTimeOutMessage","otpResend","setOtpResend","message","setMessage","jsxs","jsx","Alert","OtpVerificationForm","sleep","errors","OtpVerification"],"mappings":";;;;;;AAKO,MAAMA,IAAsB,MAAM;AACrC,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAA,GAChC,CAACC,GAAWC,CAAY,IAAIF,EAAA,GAC5B,CAACG,GAASC,CAAU,IAAIJ,EAAA;AAc9B,2BACK,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,QACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,oBAAgB;AAAA,MACrC,gBAAAA,EAAC,KAAA,EAAE,WAAU,8BAA6B,UAAA,oDAAA,CAE1C;AAAA,IAAA,GACJ;AAAA,IACCH,KACG,gBAAAG,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,UAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAQ,GACzC;AAAA,IAEHL,KACG,gBAAAK,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,QAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAU,GAC3C;AAAA,IAEHR,KACG,gBAAAQ,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,WAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAY,GAC7C;AAAA,IAEJ,gBAAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,YAAAJ;AAAA,QACA,gBAAAL;AAAA,MAAA;AAAA,IAAA;AAAA,IAEJ,gBAAAM,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,uBAAwB;AAAA,MACxD,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,SA3CQ,YAAY;AAChC,gBAAI;AAEA,oBAAMG,EAAM,GAAG,GACfP,EAAa,qCAAqC;AAAA,
|
|
1
|
+
{"version":3,"file":"OtpVerification.js","sources":["../../../../../lib/@ecme/views/auth/OtpVerification/OtpVerification.tsx"],"sourcesContent":["import Alert from '@/components/ui/Alert'\nimport OtpVerificationForm from './components/OtpVerificationForm'\nimport sleep from '@/utils/sleep'\nimport useTimeOutMessage from '@/utils/hooks/useTimeOutMessage'\n\nexport const OtpVerificationBase = () => {\n const [otpVerified, setOtpVerified] = useTimeOutMessage()\n const [otpResend, setOtpResend] = useTimeOutMessage()\n const [message, setMessage] = useTimeOutMessage()\n\n const handleResendOtp = async () => {\n try {\n /** simulate api call with sleep */\n await sleep(500)\n setOtpResend('We have sent you One Time Password.')\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Some error occured!',\n )\n }\n }\n\n return (\n <div>\n <div className=\"mb-8\">\n <h3 className=\"mb-2\">OTP Verification</h3>\n <p className=\"font-semibold heading-text\">\n We have sent you One Time Password to your email.\n </p>\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n {otpResend && (\n <Alert showIcon className=\"mb-4\" type=\"info\">\n <span className=\"break-all\">{otpResend}</span>\n </Alert>\n )}\n {otpVerified && (\n <Alert showIcon className=\"mb-4\" type=\"success\">\n <span className=\"break-all\">{otpVerified}</span>\n </Alert>\n )}\n <OtpVerificationForm\n setMessage={setMessage}\n setOtpVerified={setOtpVerified}\n />\n <div className=\"mt-4 text-center\">\n <span className=\"font-semibold\">Din't receive OTP? </span>\n <button\n className=\"heading-text font-bold underline\"\n onClick={handleResendOtp}\n >\n Resend OTP\n </button>\n </div>\n </div>\n )\n}\n\nconst OtpVerification = () => {\n return <OtpVerificationBase />\n}\n\nexport default OtpVerification\n"],"names":["OtpVerificationBase","otpVerified","setOtpVerified","useTimeOutMessage","otpResend","setOtpResend","message","setMessage","jsxs","jsx","Alert","OtpVerificationForm","sleep","errors","OtpVerification"],"mappings":";;;;;;AAKO,MAAMA,IAAsB,MAAM;AACrC,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAA,GAChC,CAACC,GAAWC,CAAY,IAAIF,EAAA,GAC5B,CAACG,GAASC,CAAU,IAAIJ,EAAA;AAc9B,2BACK,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,QACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,oBAAgB;AAAA,MACrC,gBAAAA,EAAC,KAAA,EAAE,WAAU,8BAA6B,UAAA,oDAAA,CAE1C;AAAA,IAAA,GACJ;AAAA,IACCH,KACG,gBAAAG,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,UAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAQ,GACzC;AAAA,IAEHL,KACG,gBAAAK,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,QAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAU,GAC3C;AAAA,IAEHR,KACG,gBAAAQ,EAACC,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,WAClC,UAAA,gBAAAD,EAAC,QAAA,EAAK,WAAU,aAAa,aAAY,GAC7C;AAAA,IAEJ,gBAAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACG,YAAAJ;AAAA,QACA,gBAAAL;AAAA,MAAA;AAAA,IAAA;AAAA,IAEJ,gBAAAM,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,uBAAwB;AAAA,MACxD,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,SA3CQ,YAAY;AAChC,gBAAI;AAEA,oBAAMG,EAAM,GAAG,GACfP,EAAa,qCAAqC;AAAA,YACtD,SAASQ,GAAQ;AACb,cAAAN,KAAA,QAAAA;AAAA,gBACI,OAAOM,KAAW,WAAWA,IAAS;AAAA;AAAA,YAE9C;AAAA,UACJ;AAAA,UAkCa,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAED,EAAA,CACJ;AAAA,EAAA,GACJ;AAER,GAEMC,IAAkB,wBACZd,GAAA,EAAoB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtpVerificationForm.js","sources":["../../../../../../lib/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport OtpInput from '@/components/shared/OtpInput'\nimport sleep from '@/utils/sleep'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface OtpVerificationFormProps extends CommonProps {\n setOtpVerified?: (message: string) => void\n setMessage?: (message: string) => void\n}\n\ntype ForgotPasswordFormSchema = {\n otp: string\n}\n\nconst OTP_LENGTH = 6\n\nconst validationSchema: ZodType<ForgotPasswordFormSchema> = z.object({\n otp: z.string().min(OTP_LENGTH, { message: 'Please enter a valid OTP' }),\n})\n\nconst OtpVerificationForm = (props: OtpVerificationFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { className, setMessage, setOtpVerified } = props\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ForgotPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onOtpSend = async (values: ForgotPasswordFormSchema) => {\n const { otp } = values\n setSubmitting(true)\n try {\n /** simulate api call with sleep */\n await sleep(1000)\n setSubmitting(false)\n setOtpVerified?.('OTP verified!')\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Some error occured!',\n )\n setSubmitting(false)\n }\n\n console.log('otp', otp)\n setSubmitting(false)\n }\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onOtpSend)}>\n <FormItem\n invalid={Boolean(errors.otp)}\n errorMessage={errors.otp?.message}\n >\n <Controller\n name=\"otp\"\n control={control}\n render={({ field }) => (\n <OtpInput\n placeholder=\"\"\n inputClass=\"h-[58px]\"\n length={OTP_LENGTH}\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? 'Verifying...' : 'Verify OTP'}\n </Button>\n </Form>\n </div>\n )\n}\n\nexport default OtpVerificationForm\n"],"names":["OTP_LENGTH","validationSchema","z","OtpVerificationForm","props","isSubmitting","setSubmitting","useState","className","setMessage","setOtpVerified","handleSubmit","errors","control","useForm","zodResolver","jsx","jsxs","Form","values","otp","sleep","FormItem","_a","Controller","field","OtpInput","Button"],"mappings":";;;;;;;;;;;;AAoBA,MAAMA,IAAa,GAEbC,IAAsDC,EAAE,OAAO;AAAA,EACjE,KAAKA,EAAE,OAAA,EAAS,IAAIF,GAAY,EAAE,SAAS,2BAAA,CAA4B;AAC3E,CAAC,GAEKG,IAAsB,CAACC,MAAoC;;AAC7D,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,WAAAC,GAAW,YAAAC,GAAY,gBAAAC,EAAA,IAAmBN,GAE5C;AAAA,IACF,cAAAO;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACAC,EAAkC;AAAA,IAClC,UAAUC,EAAYd,CAAgB;AAAA,EAAA,CACzC;AAqBD,SACI,gBAAAe,EAAC,SAAI,WAAAR,GACD,UAAA,gBAAAS,EAACC,KAAK,UAAUP,EArBN,OAAOQ,MAAqC;AAC1D,UAAM,EAAE,KAAAC,MAAQD;AAChB,IAAAb,EAAc,EAAI;AAClB,QAAI;AAEA,YAAMe,EAAM,GAAI,GAChBf,EAAc,EAAK,GACnBI,KAAA,QAAAA,EAAiB;AAAA,
|
|
1
|
+
{"version":3,"file":"OtpVerificationForm.js","sources":["../../../../../../lib/@ecme/views/auth/OtpVerification/components/OtpVerificationForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport OtpInput from '@/components/shared/OtpInput'\nimport sleep from '@/utils/sleep'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface OtpVerificationFormProps extends CommonProps {\n setOtpVerified?: (message: string) => void\n setMessage?: (message: string) => void\n}\n\ntype ForgotPasswordFormSchema = {\n otp: string\n}\n\nconst OTP_LENGTH = 6\n\nconst validationSchema: ZodType<ForgotPasswordFormSchema> = z.object({\n otp: z.string().min(OTP_LENGTH, { message: 'Please enter a valid OTP' }),\n})\n\nconst OtpVerificationForm = (props: OtpVerificationFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { className, setMessage, setOtpVerified } = props\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ForgotPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onOtpSend = async (values: ForgotPasswordFormSchema) => {\n const { otp } = values\n setSubmitting(true)\n try {\n /** simulate api call with sleep */\n await sleep(1000)\n setSubmitting(false)\n setOtpVerified?.('OTP verified!')\n } catch (errors) {\n setMessage?.(\n typeof errors === 'string' ? errors : 'Some error occured!',\n )\n setSubmitting(false)\n }\n\n console.log('otp', otp)\n setSubmitting(false)\n }\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onOtpSend)}>\n <FormItem\n invalid={Boolean(errors.otp)}\n errorMessage={errors.otp?.message}\n >\n <Controller\n name=\"otp\"\n control={control}\n render={({ field }) => (\n <OtpInput\n placeholder=\"\"\n inputClass=\"h-[58px]\"\n length={OTP_LENGTH}\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? 'Verifying...' : 'Verify OTP'}\n </Button>\n </Form>\n </div>\n )\n}\n\nexport default OtpVerificationForm\n"],"names":["OTP_LENGTH","validationSchema","z","OtpVerificationForm","props","isSubmitting","setSubmitting","useState","className","setMessage","setOtpVerified","handleSubmit","errors","control","useForm","zodResolver","jsx","jsxs","Form","values","otp","sleep","FormItem","_a","Controller","field","OtpInput","Button"],"mappings":";;;;;;;;;;;;AAoBA,MAAMA,IAAa,GAEbC,IAAsDC,EAAE,OAAO;AAAA,EACjE,KAAKA,EAAE,OAAA,EAAS,IAAIF,GAAY,EAAE,SAAS,2BAAA,CAA4B;AAC3E,CAAC,GAEKG,IAAsB,CAACC,MAAoC;;AAC7D,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,WAAAC,GAAW,YAAAC,GAAY,gBAAAC,EAAA,IAAmBN,GAE5C;AAAA,IACF,cAAAO;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACAC,EAAkC;AAAA,IAClC,UAAUC,EAAYd,CAAgB;AAAA,EAAA,CACzC;AAqBD,SACI,gBAAAe,EAAC,SAAI,WAAAR,GACD,UAAA,gBAAAS,EAACC,KAAK,UAAUP,EArBN,OAAOQ,MAAqC;AAC1D,UAAM,EAAE,KAAAC,MAAQD;AAChB,IAAAb,EAAc,EAAI;AAClB,QAAI;AAEA,YAAMe,EAAM,GAAI,GAChBf,EAAc,EAAK,GACnBI,KAAA,QAAAA,EAAiB;AAAA,IACrB,SAASE,GAAQ;AACb,MAAAH,KAAA,QAAAA;AAAA,QACI,OAAOG,KAAW,WAAWA,IAAS;AAAA,SAE1CN,EAAc,EAAK;AAAA,IACvB;AAEA,YAAQ,IAAI,OAAOc,CAAG,GACtBd,EAAc,EAAK;AAAA,EACvB,CAI8C,GAClC,UAAA;AAAA,IAAA,gBAAAU;AAAA,MAACM;AAAA,MAAA;AAAA,QACG,SAAS,EAAQV,EAAO;AAAA,QACxB,eAAcW,IAAAX,EAAO,QAAP,gBAAAW,EAAY;AAAA,QAE1B,UAAA,gBAAAP;AAAA,UAACQ;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,SAAAX;AAAA,YACA,QAAQ,CAAC,EAAE,OAAAY,EAAA,MACP,gBAAAT;AAAA,cAACU;AAAAA,cAAA;AAAA,gBACG,aAAY;AAAA,gBACZ,YAAW;AAAA,gBACX,QAAQ1B;AAAA,gBACP,GAAGyB;AAAA,cAAA;AAAA,YAAA;AAAA,UACR;AAAA,QAAA;AAAA,MAER;AAAA,IAAA;AAAA,IAEJ,gBAAAT;AAAA,MAACW;AAAA,MAAA;AAAA,QACG,OAAK;AAAA,QACL,SAAStB;AAAA,QACT,SAAQ;AAAA,QACR,MAAK;AAAA,QAEJ,cAAe,iBAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,EACrC,EAAA,CACJ,EAAA,CACJ;AAER;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetPassword.js","sources":["../../../../../lib/@ecme/views/auth/ResetPassword/ResetPassword.tsx"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport Alert from \"@/components/ui/Alert\";\nimport Button from \"@/components/ui/Button\";\nimport ActionLink from \"@/components/shared/ActionLink\";\nimport ResetPasswordForm from \"./components/ResetPasswordForm\";\nimport useTimeOutMessage from \"@/utils/hooks/useTimeOutMessage\";\nimport { useNavigate, useSearchParams } from \"react-router-dom\";\nimport { TAlterarPasswordType } from \"@base/@types/models/auth\";\nimport Logo from \"@/components/template/Logo\";\nimport { getLogoFilename } from \"@base/utils\";\nimport { useThemeStore } from \"@/store\";\nimport { useAuth } from \"@/auth\";\n\ntype ResetPasswordProps = {\n signInUrl?: string;\n type: TAlterarPasswordType;\n token?: string;\n};\n\nexport const ResetPasswordBase = ({\n signInUrl = \"/sign-in\",\n type,\n token,\n}: ResetPasswordProps) => {\n const [resetComplete, setResetComplete] = useState(false);\n\n const [message, setMessage] = useTimeOutMessage();\n\n const navigate = useNavigate();\n\n const handleContinue = () => {\n navigate(signInUrl);\n };\n\n const { mode } = useThemeStore();\n const { user } = useAuth();\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center\">\n {resetComplete ? (\n <>\n <h3 className=\"mb-2 text-success\">Operação finalizada</h3>\n <p className=\"font-semibold\">Sua senha foi alterada com sucesso!</p>\n </>\n ) : (\n <>\n {type === \"RECUPERARSENHA\" ? (\n <>\n <h3 className=\"mb-2\">Crie sua nova senha</h3>\n <p className=\"font-semibold\">\n Digite e confirme sua nova senha abaixo.\n </p>\n </>\n ) : (\n <>\n <Logo\n imgClass=\"mb-6 max-h-20\"\n name={getLogoFilename(true, mode)}\n />\n <h3 className=\"mb-2\">Primeiro Acesso</h3>{\" \"}\n <p className=\"font-semibold\">Digite uma nova senha.</p>\n </>\n )}\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ResetPasswordForm\n resetComplete={resetComplete}\n setMessage={setMessage}\n setResetComplete={setResetComplete}\n type={type}\n userId={user.userId ?? undefined}\n token={token}\n >\n <Button block variant=\"solid\" type=\"button\" onClick={handleContinue}>\n Continuar\n </Button>\n </ResetPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n Voltar\n </ActionLink>\n </div>\n </div>\n );\n};\n\nconst ResetPassword = () => {\n const [searchParams] = useSearchParams();\n const [token, setToken] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n const tokenFromUrl = searchParams.get(\"token\");\n\n if (tokenFromUrl) {\n setToken(tokenFromUrl);\n } else {\n setError(\"Link de redefinição inválido ou token não encontrado.\");\n }\n }, [searchParams]);\n\n if (error) {\n return <div className=\"text-center text-red-500\">{error}</div>;\n }\n\n if (!token) {\n return <div className=\"text-center\">Carregando...</div>;\n }\n\n return <ResetPasswordBase type=\"RECUPERARSENHA\" token={token} />;\n};\n\nexport default ResetPassword;\n"],"names":["ResetPasswordBase","signInUrl","type","token","resetComplete","setResetComplete","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","handleContinue","mode","useThemeStore","user","useAuth","jsx","jsxs","Fragment","Logo","getLogoFilename","Alert","ResetPasswordForm","Button","ActionLink","ResetPassword","searchParams","useSearchParams","setToken","error","setError","useEffect","tokenFromUrl"],"mappings":";;;;;;;;;;;;;;;;;AAmBO,MAAMA,IAAoB,CAAC;AAAA,EAChC,WAAAC,IAAY;AAAA,EACZ,MAAAC;AAAA,EACA,OAAAC;AACF,MAA0B;AACxB,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAS,EAAK,GAElD,CAACC,GAASC,CAAU,IAAIC,EAAA,GAExBC,IAAWC,EAAA,GAEXC,IAAiB,MAAM;AAC3B,IAAAF,EAAST,CAAS;AAAA,
|
|
1
|
+
{"version":3,"file":"ResetPassword.js","sources":["../../../../../lib/@ecme/views/auth/ResetPassword/ResetPassword.tsx"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport Alert from \"@/components/ui/Alert\";\nimport Button from \"@/components/ui/Button\";\nimport ActionLink from \"@/components/shared/ActionLink\";\nimport ResetPasswordForm from \"./components/ResetPasswordForm\";\nimport useTimeOutMessage from \"@/utils/hooks/useTimeOutMessage\";\nimport { useNavigate, useSearchParams } from \"react-router-dom\";\nimport { TAlterarPasswordType } from \"@base/@types/models/auth\";\nimport Logo from \"@/components/template/Logo\";\nimport { getLogoFilename } from \"@base/utils\";\nimport { useThemeStore } from \"@/store\";\nimport { useAuth } from \"@/auth\";\n\ntype ResetPasswordProps = {\n signInUrl?: string;\n type: TAlterarPasswordType;\n token?: string;\n};\n\nexport const ResetPasswordBase = ({\n signInUrl = \"/sign-in\",\n type,\n token,\n}: ResetPasswordProps) => {\n const [resetComplete, setResetComplete] = useState(false);\n\n const [message, setMessage] = useTimeOutMessage();\n\n const navigate = useNavigate();\n\n const handleContinue = () => {\n navigate(signInUrl);\n };\n\n const { mode } = useThemeStore();\n const { user } = useAuth();\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center\">\n {resetComplete ? (\n <>\n <h3 className=\"mb-2 text-success\">Operação finalizada</h3>\n <p className=\"font-semibold\">Sua senha foi alterada com sucesso!</p>\n </>\n ) : (\n <>\n {type === \"RECUPERARSENHA\" ? (\n <>\n <h3 className=\"mb-2\">Crie sua nova senha</h3>\n <p className=\"font-semibold\">\n Digite e confirme sua nova senha abaixo.\n </p>\n </>\n ) : (\n <>\n <Logo\n imgClass=\"mb-6 max-h-20\"\n name={getLogoFilename(true, mode)}\n />\n <h3 className=\"mb-2\">Primeiro Acesso</h3>{\" \"}\n <p className=\"font-semibold\">Digite uma nova senha.</p>\n </>\n )}\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ResetPasswordForm\n resetComplete={resetComplete}\n setMessage={setMessage}\n setResetComplete={setResetComplete}\n type={type}\n userId={user.userId ?? undefined}\n token={token}\n >\n <Button block variant=\"solid\" type=\"button\" onClick={handleContinue}>\n Continuar\n </Button>\n </ResetPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n Voltar\n </ActionLink>\n </div>\n </div>\n );\n};\n\nconst ResetPassword = () => {\n const [searchParams] = useSearchParams();\n const [token, setToken] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n const tokenFromUrl = searchParams.get(\"token\");\n\n if (tokenFromUrl) {\n setToken(tokenFromUrl);\n } else {\n setError(\"Link de redefinição inválido ou token não encontrado.\");\n }\n }, [searchParams]);\n\n if (error) {\n return <div className=\"text-center text-red-500\">{error}</div>;\n }\n\n if (!token) {\n return <div className=\"text-center\">Carregando...</div>;\n }\n\n return <ResetPasswordBase type=\"RECUPERARSENHA\" token={token} />;\n};\n\nexport default ResetPassword;\n"],"names":["ResetPasswordBase","signInUrl","type","token","resetComplete","setResetComplete","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","handleContinue","mode","useThemeStore","user","useAuth","jsx","jsxs","Fragment","Logo","getLogoFilename","Alert","ResetPasswordForm","Button","ActionLink","ResetPassword","searchParams","useSearchParams","setToken","error","setError","useEffect","tokenFromUrl"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetPasswordForm.js","sources":["../../../../../../lib/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport Button from \"@/components/ui/Button\";\nimport { FormItem, Form } from \"@/components/ui/Form\";\nimport PasswordInput from \"@/components/shared/PasswordInput\";\nimport { apiResetPassword } from \"@/services/AuthService\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { z } from \"zod\";\nimport type { ZodType } from \"zod\";\nimport type { CommonProps } from \"@/@types/common\";\nimport { TAlterarPasswordType } from \"@base/@types/models/auth\";\nimport { useAuth } from \"@/auth\";\nimport { useNavigate } from \"react-router-dom\";\nimport appConfig from \"@/configs/app.config\";\nimport { useThemeStore } from \"@/store/themeStore\";\nimport { LAYOUT_COLLAPSIBLE_SIDE } from \"@/constants/theme.constant\";\n\ninterface ResetPasswordFormProps extends CommonProps {\n resetComplete: boolean;\n setResetComplete?: (compplete: boolean) => void;\n setMessage?: (message: string) => void;\n type: TAlterarPasswordType;\n userId?: string;\n token?: string;\n}\n\ntype ResetPasswordFormSchema = {\n newPassword: string;\n confirmPassword: string;\n};\n\nconst validationSchema: ZodType<ResetPasswordFormSchema> = z\n .object({\n token: z.string().optional(),\n id: z.string().optional(),\n newPassword: z.string({ required_error: \"Por favor digite uma senha\" }),\n confirmPassword: z.string({\n required_error: \"Confirme sua nova senha.\",\n }),\n })\n .refine((data) => data.newPassword === data.confirmPassword, {\n message: \"As senhas não são iguais.\",\n path: [\"confirmPassword\"],\n });\n\nconst ResetPasswordForm = (props: ResetPasswordFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false);\n const navigate = useNavigate();\n const { updateUserSession } = useAuth();\n const setLayout = useThemeStore((state) => state.setLayout);\n\n const {\n className,\n setMessage,\n setResetComplete,\n resetComplete,\n children,\n type,\n userId,\n token,\n } = props;\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ResetPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n });\n\n const onResetPassword = async (values: ResetPasswordFormSchema) => {\n const { newPassword } = values;\n setSubmitting(true);\n\n try {\n let payload;\n if (type === \"RECUPERARSENHA\") {\n if (!token) {\n throw new Error(\"Token de recuperação não fornecido.\");\n }\n payload = { token, password: newPassword };\n } else {\n payload = { id: userId ?? \"\", password: newPassword };\n }\n await apiResetPassword(payload);\n\n setSubmitting(false);\n setResetComplete?.(true);\n updateUserSession({ primeiroAcesso: false });\n setLayout(LAYOUT_COLLAPSIBLE_SIDE);\n navigate(appConfig.authenticatedEntryPath);\n } catch (errors) {\n setMessage?.(\n typeof errors === \"string\"\n ? errors\n : \"Houve um erro ao alterar sua senha.\"\n );\n setSubmitting(false);\n }\n\n setSubmitting(false);\n };\n\n return (\n <div className={className}>\n {!resetComplete ? (\n <Form onSubmit={handleSubmit(onResetPassword)}>\n <FormItem\n label=\"Senha\"\n invalid={Boolean(errors.newPassword)}\n errorMessage={errors.newPassword?.message}\n >\n <Controller\n name=\"newPassword\"\n control={control}\n render={({ field }) => (\n <PasswordInput\n autoComplete=\"off\"\n placeholder=\"••••••••••••\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Confirmar Senha\"\n invalid={Boolean(errors.confirmPassword)}\n errorMessage={errors.confirmPassword?.message}\n >\n <Controller\n name=\"confirmPassword\"\n control={control}\n render={({ field }) => (\n <PasswordInput\n autoComplete=\"off\"\n placeholder=\"Confirm Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n className=\"mt-5\"\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? \"Enviando...\" : \"Enviar\"}\n </Button>\n </Form>\n ) : (\n <>{children}</>\n )}\n </div>\n );\n};\n\nexport default ResetPasswordForm;\n"],"names":["validationSchema","z","data","ResetPasswordForm","props","isSubmitting","setSubmitting","useState","navigate","useNavigate","updateUserSession","useAuth","setLayout","useThemeStore","state","className","setMessage","setResetComplete","resetComplete","children","type","userId","token","handleSubmit","errors","control","useForm","zodResolver","jsx","Fragment","Form","values","newPassword","payload","apiResetPassword","LAYOUT_COLLAPSIBLE_SIDE","appConfig","FormItem","_a","Controller","field","PasswordInput","_b","Button"],"mappings":";;;;;;;;;;;;;;;;;;AA+BA,MAAMA,IAAqDC,EACxD,OAAO;AAAA,EACN,OAAOA,EAAE,OAAA,EAAS,SAAA;AAAA,EAClB,IAAIA,EAAE,OAAA,EAAS,SAAA;AAAA,EACf,aAAaA,EAAE,OAAO,EAAE,gBAAgB,8BAA8B;AAAA,EACtE,iBAAiBA,EAAE,OAAO;AAAA,IACxB,gBAAgB;AAAA,EAAA,CACjB;AACH,CAAC,EACA,OAAO,CAACC,MAASA,EAAK,gBAAgBA,EAAK,iBAAiB;AAAA,EAC3D,SAAS;AAAA,EACT,MAAM,CAAC,iBAAiB;AAC1B,CAAC,GAEGC,KAAoB,CAACC,MAAkC;;AAC3D,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GACvDC,IAAWC,EAAA,GACX,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxBC,IAAYC,EAAc,CAACC,MAAUA,EAAM,SAAS,GAEpD;AAAA,IACJ,WAAAC;AAAA,IACA,YAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,QAAAC;AAAA,IACA,OAAAC;AAAA,EAAA,IACElB,GAEE;AAAA,IACJ,cAAAmB;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACEC,EAAiC;AAAA,IACnC,UAAUC,EAAY3B,CAAgB;AAAA,EAAA,CACvC;AAmCD,SACE,gBAAA4B,EAAC,OAAA,EAAI,WAAAb,GACF,UAACG,IA+CA,gBAAAU,EAAAC,GAAA,EAAG,UAAAV,EAAA,CAAS,sBA9CXW,GAAA,EAAK,UAAUP,EApCE,OAAOQ,MAAoC;AACjE,UAAM,EAAE,aAAAC,MAAgBD;AACxB,IAAAzB,EAAc,EAAI;AAElB,QAAI;AACF,UAAI2B;AACJ,UAAIb,MAAS,kBAAkB;AAC7B,YAAI,CAACE;AACH,gBAAM,IAAI,MAAM,qCAAqC;AAEvD,QAAAW,IAAU,EAAE,OAAAX,GAAO,UAAUU,EAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ResetPasswordForm.js","sources":["../../../../../../lib/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport Button from \"@/components/ui/Button\";\nimport { FormItem, Form } from \"@/components/ui/Form\";\nimport PasswordInput from \"@/components/shared/PasswordInput\";\nimport { apiResetPassword } from \"@/services/AuthService\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { z } from \"zod\";\nimport type { ZodType } from \"zod\";\nimport type { CommonProps } from \"@/@types/common\";\nimport { TAlterarPasswordType } from \"@base/@types/models/auth\";\nimport { useAuth } from \"@/auth\";\nimport { useNavigate } from \"react-router-dom\";\nimport appConfig from \"@/configs/app.config\";\nimport { useThemeStore } from \"@/store/themeStore\";\nimport { LAYOUT_COLLAPSIBLE_SIDE } from \"@/constants/theme.constant\";\n\ninterface ResetPasswordFormProps extends CommonProps {\n resetComplete: boolean;\n setResetComplete?: (compplete: boolean) => void;\n setMessage?: (message: string) => void;\n type: TAlterarPasswordType;\n userId?: string;\n token?: string;\n}\n\ntype ResetPasswordFormSchema = {\n newPassword: string;\n confirmPassword: string;\n};\n\nconst validationSchema: ZodType<ResetPasswordFormSchema> = z\n .object({\n token: z.string().optional(),\n id: z.string().optional(),\n newPassword: z.string({ required_error: \"Por favor digite uma senha\" }),\n confirmPassword: z.string({\n required_error: \"Confirme sua nova senha.\",\n }),\n })\n .refine((data) => data.newPassword === data.confirmPassword, {\n message: \"As senhas não são iguais.\",\n path: [\"confirmPassword\"],\n });\n\nconst ResetPasswordForm = (props: ResetPasswordFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false);\n const navigate = useNavigate();\n const { updateUserSession } = useAuth();\n const setLayout = useThemeStore((state) => state.setLayout);\n\n const {\n className,\n setMessage,\n setResetComplete,\n resetComplete,\n children,\n type,\n userId,\n token,\n } = props;\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<ResetPasswordFormSchema>({\n resolver: zodResolver(validationSchema),\n });\n\n const onResetPassword = async (values: ResetPasswordFormSchema) => {\n const { newPassword } = values;\n setSubmitting(true);\n\n try {\n let payload;\n if (type === \"RECUPERARSENHA\") {\n if (!token) {\n throw new Error(\"Token de recuperação não fornecido.\");\n }\n payload = { token, password: newPassword };\n } else {\n payload = { id: userId ?? \"\", password: newPassword };\n }\n await apiResetPassword(payload);\n\n setSubmitting(false);\n setResetComplete?.(true);\n updateUserSession({ primeiroAcesso: false });\n setLayout(LAYOUT_COLLAPSIBLE_SIDE);\n navigate(appConfig.authenticatedEntryPath);\n } catch (errors) {\n setMessage?.(\n typeof errors === \"string\"\n ? errors\n : \"Houve um erro ao alterar sua senha.\"\n );\n setSubmitting(false);\n }\n\n setSubmitting(false);\n };\n\n return (\n <div className={className}>\n {!resetComplete ? (\n <Form onSubmit={handleSubmit(onResetPassword)}>\n <FormItem\n label=\"Senha\"\n invalid={Boolean(errors.newPassword)}\n errorMessage={errors.newPassword?.message}\n >\n <Controller\n name=\"newPassword\"\n control={control}\n render={({ field }) => (\n <PasswordInput\n autoComplete=\"off\"\n placeholder=\"••••••••••••\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Confirmar Senha\"\n invalid={Boolean(errors.confirmPassword)}\n errorMessage={errors.confirmPassword?.message}\n >\n <Controller\n name=\"confirmPassword\"\n control={control}\n render={({ field }) => (\n <PasswordInput\n autoComplete=\"off\"\n placeholder=\"Confirm Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n className=\"mt-5\"\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? \"Enviando...\" : \"Enviar\"}\n </Button>\n </Form>\n ) : (\n <>{children}</>\n )}\n </div>\n );\n};\n\nexport default ResetPasswordForm;\n"],"names":["validationSchema","z","data","ResetPasswordForm","props","isSubmitting","setSubmitting","useState","navigate","useNavigate","updateUserSession","useAuth","setLayout","useThemeStore","state","className","setMessage","setResetComplete","resetComplete","children","type","userId","token","handleSubmit","errors","control","useForm","zodResolver","jsx","Fragment","Form","values","newPassword","payload","apiResetPassword","LAYOUT_COLLAPSIBLE_SIDE","appConfig","FormItem","_a","Controller","field","PasswordInput","_b","Button"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OauthSignIn.js","sources":["../../../../../../lib/@ecme/views/auth/SignIn/components/OauthSignIn.tsx"],"sourcesContent":["import Button from '@/components/ui/Button'\nimport { useAuth } from '@/auth'\nimport {\n apiGoogleOauthSignIn,\n apiGithubOauthSignIn,\n} from '@/services/OAuthServices'\n\ntype OauthSignInProps = {\n setMessage?: (message: string) => void\n disableSubmit?: boolean\n}\n\nconst OauthSignIn = ({ setMessage, disableSubmit }: OauthSignInProps) => {\n const { oAuthSignIn } = useAuth()\n\n const handleGoogleSignIn = async () => {\n if (!disableSubmit) {\n oAuthSignIn(async ({ redirect, onSignIn }) => {\n try {\n const resp = await apiGoogleOauthSignIn()\n if (resp) {\n const { token, user } = resp\n onSignIn({ accessToken: token }, user)\n redirect()\n }\n } catch (error) {\n setMessage?.((error as string)?.toString() || '')\n }\n })\n }\n }\n\n const handleGithubSignIn = async () => {\n if (!disableSubmit) {\n oAuthSignIn(async ({ redirect, onSignIn }) => {\n try {\n const resp = await apiGithubOauthSignIn()\n if (resp) {\n const { token, user } = resp\n onSignIn({ accessToken: token }, user)\n redirect()\n }\n } catch (error) {\n setMessage?.((error as string)?.toString() || '')\n }\n })\n }\n }\n\n return (\n <div className=\"flex items-center gap-2\">\n <Button\n className=\"flex-1\"\n type=\"button\"\n onClick={handleGoogleSignIn}\n >\n <div className=\"flex items-center justify-center gap-2\">\n <img\n className=\"h-[25px] w-[25px]\"\n src=\"/img/others/google.png\"\n alt=\"Google sign in\"\n />\n <span>Google</span>\n </div>\n </Button>\n <Button\n className=\"flex-1\"\n type=\"button\"\n onClick={handleGithubSignIn}\n >\n <div className=\"flex items-center justify-center gap-2\">\n <img\n className=\"h-[25px] w-[25px]\"\n src=\"/img/others/github.png\"\n alt=\"Google sign in\"\n />\n <span>Github</span>\n </div>\n </Button>\n </div>\n )\n}\n\nexport default OauthSignIn\n"],"names":["OauthSignIn","setMessage","disableSubmit","oAuthSignIn","useAuth","jsxs","jsx","Button","redirect","onSignIn","resp","apiGoogleOauthSignIn","token","user","error","apiGithubOauthSignIn"],"mappings":";;;;;;AAYA,MAAMA,IAAc,CAAC,EAAE,YAAAC,GAAY,eAAAC,QAAsC;AACrE,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA;AAoCxB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAvCe,YAAY;AACnC,UAAKL,KACDC,EAAY,OAAO,EAAE,UAAAK,GAAU,UAAAC,QAAe;AAC1C,gBAAI;AACA,oBAAMC,IAAO,MAAMC,EAAA;AACnB,kBAAID,GAAM;AACN,sBAAM,EAAE,OAAAE,GAAO,MAAAC,EAAA,IAASH;AACxB,gBAAAD,EAAS,EAAE,aAAaG,EAAA,GAASC,CAAI,GACrCL,EAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"OauthSignIn.js","sources":["../../../../../../lib/@ecme/views/auth/SignIn/components/OauthSignIn.tsx"],"sourcesContent":["import Button from '@/components/ui/Button'\nimport { useAuth } from '@/auth'\nimport {\n apiGoogleOauthSignIn,\n apiGithubOauthSignIn,\n} from '@/services/OAuthServices'\n\ntype OauthSignInProps = {\n setMessage?: (message: string) => void\n disableSubmit?: boolean\n}\n\nconst OauthSignIn = ({ setMessage, disableSubmit }: OauthSignInProps) => {\n const { oAuthSignIn } = useAuth()\n\n const handleGoogleSignIn = async () => {\n if (!disableSubmit) {\n oAuthSignIn(async ({ redirect, onSignIn }) => {\n try {\n const resp = await apiGoogleOauthSignIn()\n if (resp) {\n const { token, user } = resp\n onSignIn({ accessToken: token }, user)\n redirect()\n }\n } catch (error) {\n setMessage?.((error as string)?.toString() || '')\n }\n })\n }\n }\n\n const handleGithubSignIn = async () => {\n if (!disableSubmit) {\n oAuthSignIn(async ({ redirect, onSignIn }) => {\n try {\n const resp = await apiGithubOauthSignIn()\n if (resp) {\n const { token, user } = resp\n onSignIn({ accessToken: token }, user)\n redirect()\n }\n } catch (error) {\n setMessage?.((error as string)?.toString() || '')\n }\n })\n }\n }\n\n return (\n <div className=\"flex items-center gap-2\">\n <Button\n className=\"flex-1\"\n type=\"button\"\n onClick={handleGoogleSignIn}\n >\n <div className=\"flex items-center justify-center gap-2\">\n <img\n className=\"h-[25px] w-[25px]\"\n src=\"/img/others/google.png\"\n alt=\"Google sign in\"\n />\n <span>Google</span>\n </div>\n </Button>\n <Button\n className=\"flex-1\"\n type=\"button\"\n onClick={handleGithubSignIn}\n >\n <div className=\"flex items-center justify-center gap-2\">\n <img\n className=\"h-[25px] w-[25px]\"\n src=\"/img/others/github.png\"\n alt=\"Google sign in\"\n />\n <span>Github</span>\n </div>\n </Button>\n </div>\n )\n}\n\nexport default OauthSignIn\n"],"names":["OauthSignIn","setMessage","disableSubmit","oAuthSignIn","useAuth","jsxs","jsx","Button","redirect","onSignIn","resp","apiGoogleOauthSignIn","token","user","error","apiGithubOauthSignIn"],"mappings":";;;;;;AAYA,MAAMA,IAAc,CAAC,EAAE,YAAAC,GAAY,eAAAC,QAAsC;AACrE,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA;AAoCxB,SACI,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAvCe,YAAY;AACnC,UAAKL,KACDC,EAAY,OAAO,EAAE,UAAAK,GAAU,UAAAC,QAAe;AAC1C,gBAAI;AACA,oBAAMC,IAAO,MAAMC,EAAA;AACnB,kBAAID,GAAM;AACN,sBAAM,EAAE,OAAAE,GAAO,MAAAC,EAAA,IAASH;AACxB,gBAAAD,EAAS,EAAE,aAAaG,EAAA,GAASC,CAAI,GACrCL,EAAA;AAAA,cACJ;AAAA,YACJ,SAASM,GAAO;AACZ,cAAAb,KAAA,QAAAA,GAAca,KAAA,gBAAAA,EAAkB,eAAc;AAAA,YAClD;AAAA,UACJ,CAAC;AAAA,QAET;AAAA,QA0BY,UAAA,gBAAAT,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,UAAA,gBAAAC;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,WAAU;AAAA,cACV,KAAI;AAAA,cACJ,KAAI;AAAA,YAAA;AAAA,UAAA;AAAA,UAER,gBAAAA,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,QAAA,EAAA,CAChB;AAAA,MAAA;AAAA,IAAA;AAAA,IAEJ,gBAAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SApCe,YAAY;AACnC,UAAKL,KACDC,EAAY,OAAO,EAAE,UAAAK,GAAU,UAAAC,QAAe;AAC1C,gBAAI;AACA,oBAAMC,IAAO,MAAMK,EAAA;AACnB,kBAAIL,GAAM;AACN,sBAAM,EAAE,OAAAE,GAAO,MAAAC,EAAA,IAASH;AACxB,gBAAAD,EAAS,EAAE,aAAaG,EAAA,GAASC,CAAI,GACrCL,EAAA;AAAA,cACJ;AAAA,YACJ,SAASM,GAAO;AACZ,cAAAb,KAAA,QAAAA,GAAca,KAAA,gBAAAA,EAAkB,eAAc;AAAA,YAClD;AAAA,UACJ,CAAC;AAAA,QAET;AAAA,QAuBY,UAAA,gBAAAT,EAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,UAAA,gBAAAC;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,WAAU;AAAA,cACV,KAAI;AAAA,cACJ,KAAI;AAAA,YAAA;AAAA,UAAA;AAAA,UAER,gBAAAA,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,QAAA,EAAA,CAChB;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAER;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignInForm.js","sources":["../../../../../../lib/@ecme/views/auth/SignIn/components/SignInForm.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport Input from \"@/components/ui/Input\";\nimport Button from \"@/components/ui/Button\";\nimport { FormItem, Form } from \"@/components/ui/Form\";\nimport PasswordInput from \"@/components/shared/PasswordInput\";\nimport classNames from \"@/utils/classNames\";\nimport { useAuth } from \"@/auth\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { z, ZodType } from \"zod\";\nimport type { CommonProps } from \"@/@types/common\";\n\ninterface SignInFormProps extends CommonProps {\n disableSubmit?: boolean;\n passwordHint?: string | ReactNode;\n setMessage?: (message: string) => void;\n}\n\ntype SignInFormSchema = {\n username: string;\n password: string;\n};\n\nconst validationSchema: ZodType<SignInFormSchema> = z.object({\n username: z\n .string({ required_error: \"Por favor digite um login.\" })\n .min(1, { message: \"Por favor digite um login válido.\" }),\n password: z\n .string({ required_error: \"Por favor digite uma senha.\" })\n .min(1, { message: \"Por favor digite uma senha válida.\" }),\n});\n\nconst SignInForm = (props: SignInFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false);\n\n const { disableSubmit = false, className, setMessage, passwordHint } = props;\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<SignInFormSchema>({\n defaultValues: {\n username: \"\",\n password: \"\",\n },\n resolver: zodResolver(validationSchema),\n });\n\n const { signIn } = useAuth();\n\n const onSignIn = async (values: SignInFormSchema) => {\n const { username, password } = values;\n\n if (!disableSubmit) {\n setSubmitting(true);\n\n const result = await signIn({ username, password });\n\n if (result?.status === \"failed\") {\n setMessage?.(result.message);\n }\n }\n\n setSubmitting(false);\n };\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onSignIn)}>\n <FormItem\n label=\"Login\"\n invalid={Boolean(errors.username)}\n errorMessage={errors.username?.message}\n >\n <Controller\n name=\"username\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n placeholder=\"Login\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Senha\"\n invalid={Boolean(errors.password)}\n errorMessage={errors.password?.message}\n className={classNames(\n passwordHint ? \"mb-0\" : \"\",\n errors.password?.message ? \"mb-8\" : \"\"\n )}\n >\n <Controller\n name=\"password\"\n control={control}\n rules={{ required: true }}\n render={({ field }) => (\n <PasswordInput\n type=\"text\"\n placeholder=\"Senha\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n {passwordHint}\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n className=\"mt-6\"\n >\n {isSubmitting ? \"Entrando...\" : \"Entrar\"}\n </Button>\n </Form>\n </div>\n );\n};\n\nexport default SignInForm;\n"],"names":["validationSchema","z","SignInForm","props","isSubmitting","setSubmitting","useState","disableSubmit","className","setMessage","passwordHint","handleSubmit","errors","control","useForm","zodResolver","signIn","useAuth","jsx","jsxs","Form","values","username","password","result","FormItem","_a","Controller","field","Input","_b","classNames","_c","PasswordInput","Button"],"mappings":";;;;;;;;;;;;;;;;AAuBA,MAAMA,IAA8CC,EAAE,OAAO;AAAA,EAC3D,UAAUA,EACP,OAAO,EAAE,gBAAgB,6BAAA,CAA8B,EACvD,IAAI,GAAG,EAAE,SAAS,qCAAqC;AAAA,EAC1D,UAAUA,EACP,OAAO,EAAE,gBAAgB,+BAA+B,EACxD,IAAI,GAAG,EAAE,SAAS,sCAAsC;AAC7D,CAAC,GAEKC,IAAa,CAACC,MAA2B;;AAC7C,QAAM,CAACC,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,eAAAC,IAAgB,IAAO,WAAAC,GAAW,YAAAC,GAAY,cAAAC,MAAiBP,GAEjE;AAAA,IACJ,cAAAQ;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACEC,EAA0B;AAAA,IAC5B,eAAe;AAAA,MACb,UAAU;AAAA,MACV,UAAU;AAAA,IAAA;AAAA,IAEZ,UAAUC,EAAYf,CAAgB;AAAA,EAAA,CACvC,GAEK,EAAE,QAAAgB,EAAA,IAAWC,EAAA;AAkBnB,SACE,gBAAAC,EAAC,SAAI,WAAAV,GACH,UAAA,gBAAAW,EAACC,KAAK,UAAUT,EAlBH,OAAOU,MAA6B;AACnD,UAAM,EAAE,UAAAC,GAAU,UAAAC,EAAA,IAAaF;AAE/B,QAAI,CAACd,GAAe;AAClB,MAAAF,EAAc,EAAI;AAElB,YAAMmB,IAAS,MAAMR,EAAO,EAAE,UAAAM,GAAU,UAAAC,GAAU;AAElD,OAAIC,KAAA,gBAAAA,EAAQ,YAAW,aACrBf,KAAA,QAAAA,EAAae,EAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"SignInForm.js","sources":["../../../../../../lib/@ecme/views/auth/SignIn/components/SignInForm.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport Input from \"@/components/ui/Input\";\nimport Button from \"@/components/ui/Button\";\nimport { FormItem, Form } from \"@/components/ui/Form\";\nimport PasswordInput from \"@/components/shared/PasswordInput\";\nimport classNames from \"@/utils/classNames\";\nimport { useAuth } from \"@/auth\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { z, ZodType } from \"zod\";\nimport type { CommonProps } from \"@/@types/common\";\n\ninterface SignInFormProps extends CommonProps {\n disableSubmit?: boolean;\n passwordHint?: string | ReactNode;\n setMessage?: (message: string) => void;\n}\n\ntype SignInFormSchema = {\n username: string;\n password: string;\n};\n\nconst validationSchema: ZodType<SignInFormSchema> = z.object({\n username: z\n .string({ required_error: \"Por favor digite um login.\" })\n .min(1, { message: \"Por favor digite um login válido.\" }),\n password: z\n .string({ required_error: \"Por favor digite uma senha.\" })\n .min(1, { message: \"Por favor digite uma senha válida.\" }),\n});\n\nconst SignInForm = (props: SignInFormProps) => {\n const [isSubmitting, setSubmitting] = useState<boolean>(false);\n\n const { disableSubmit = false, className, setMessage, passwordHint } = props;\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<SignInFormSchema>({\n defaultValues: {\n username: \"\",\n password: \"\",\n },\n resolver: zodResolver(validationSchema),\n });\n\n const { signIn } = useAuth();\n\n const onSignIn = async (values: SignInFormSchema) => {\n const { username, password } = values;\n\n if (!disableSubmit) {\n setSubmitting(true);\n\n const result = await signIn({ username, password });\n\n if (result?.status === \"failed\") {\n setMessage?.(result.message);\n }\n }\n\n setSubmitting(false);\n };\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onSignIn)}>\n <FormItem\n label=\"Login\"\n invalid={Boolean(errors.username)}\n errorMessage={errors.username?.message}\n >\n <Controller\n name=\"username\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n placeholder=\"Login\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Senha\"\n invalid={Boolean(errors.password)}\n errorMessage={errors.password?.message}\n className={classNames(\n passwordHint ? \"mb-0\" : \"\",\n errors.password?.message ? \"mb-8\" : \"\"\n )}\n >\n <Controller\n name=\"password\"\n control={control}\n rules={{ required: true }}\n render={({ field }) => (\n <PasswordInput\n type=\"text\"\n placeholder=\"Senha\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n {passwordHint}\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n className=\"mt-6\"\n >\n {isSubmitting ? \"Entrando...\" : \"Entrar\"}\n </Button>\n </Form>\n </div>\n );\n};\n\nexport default SignInForm;\n"],"names":["validationSchema","z","SignInForm","props","isSubmitting","setSubmitting","useState","disableSubmit","className","setMessage","passwordHint","handleSubmit","errors","control","useForm","zodResolver","signIn","useAuth","jsx","jsxs","Form","values","username","password","result","FormItem","_a","Controller","field","Input","_b","classNames","_c","PasswordInput","Button"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignUpForm.js","sources":["../../../../../../lib/@ecme/views/auth/SignUp/components/SignUpForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport { useAuth } from '@/auth'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface SignUpFormProps extends CommonProps {\n disableSubmit?: boolean\n setMessage?: (message: string) => void\n}\n\ntype SignUpFormSchema = {\n userName: string\n password: string\n email: string\n confirmPassword: string\n}\n\nconst validationSchema: ZodType<SignUpFormSchema> = z\n .object({\n email: z.string({ required_error: 'Please enter your email' }),\n userName: z.string({ required_error: 'Please enter your name' }),\n password: z.string({ required_error: 'Password Required' }),\n confirmPassword: z.string({\n required_error: 'Confirm Password Required',\n }),\n })\n .refine((data) => data.password === data.confirmPassword, {\n message: 'Password not match',\n path: ['confirmPassword'],\n })\n\nconst SignUpForm = (props: SignUpFormProps) => {\n const { disableSubmit = false, className, setMessage } = props\n\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { signUp } = useAuth()\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<SignUpFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onSignUp = async (values: SignUpFormSchema) => {\n const { userName, password, email } = values\n\n if (!disableSubmit) {\n setSubmitting(true)\n const result = await signUp({ userName, password, email })\n\n if (result?.status === 'failed') {\n setMessage?.(result.message)\n }\n\n setSubmitting(false)\n }\n }\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onSignUp)}>\n <FormItem\n label=\"User name\"\n invalid={Boolean(errors.userName)}\n errorMessage={errors.userName?.message}\n >\n <Controller\n name=\"userName\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n placeholder=\"User Name\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Email\"\n invalid={Boolean(errors.email)}\n errorMessage={errors.email?.message}\n >\n <Controller\n name=\"email\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"email\"\n placeholder=\"Email\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Password\"\n invalid={Boolean(errors.password)}\n errorMessage={errors.password?.message}\n >\n <Controller\n name=\"password\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"password\"\n autoComplete=\"off\"\n placeholder=\"Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Confirm Password\"\n invalid={Boolean(errors.confirmPassword)}\n errorMessage={errors.confirmPassword?.message}\n >\n <Controller\n name=\"confirmPassword\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"password\"\n autoComplete=\"off\"\n placeholder=\"Confirm Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? 'Creating Account...' : 'Sign Up'}\n </Button>\n </Form>\n </div>\n )\n}\n\nexport default SignUpForm\n"],"names":["validationSchema","z","data","SignUpForm","props","disableSubmit","className","setMessage","isSubmitting","setSubmitting","useState","signUp","useAuth","handleSubmit","errors","control","useForm","zodResolver","jsx","jsxs","Form","values","userName","password","email","result","FormItem","_a","Controller","field","Input","_b","_c","_d","Button"],"mappings":";;;;;;;;;;;;;;AAuBA,MAAMA,IAA8CC,EAC/C,OAAO;AAAA,EACJ,OAAOA,EAAE,OAAO,EAAE,gBAAgB,2BAA2B;AAAA,EAC7D,UAAUA,EAAE,OAAO,EAAE,gBAAgB,0BAA0B;AAAA,EAC/D,UAAUA,EAAE,OAAO,EAAE,gBAAgB,qBAAqB;AAAA,EAC1D,iBAAiBA,EAAE,OAAO;AAAA,IACtB,gBAAgB;AAAA,EAAA,CACnB;AACL,CAAC,EACA,OAAO,CAACC,MAASA,EAAK,aAAaA,EAAK,iBAAiB;AAAA,EACtD,SAAS;AAAA,EACT,MAAM,CAAC,iBAAiB;AAC5B,CAAC,GAECC,IAAa,CAACC,MAA2B;;AAC3C,QAAM,EAAE,eAAAC,IAAgB,IAAO,WAAAC,GAAW,YAAAC,MAAeH,GAEnD,CAACI,GAAcC,CAAa,IAAIC,EAAkB,EAAK,GAEvD,EAAE,QAAAC,EAAA,IAAWC,EAAA,GAEb;AAAA,IACF,cAAAC;AAAA,IACA,WAAW,EAAE,QAAAC,EAAA;AAAA,IACb,SAAAC;AAAA,EAAA,IACAC,EAA0B;AAAA,IAC1B,UAAUC,EAAYjB,CAAgB;AAAA,EAAA,CACzC;AAiBD,SACI,gBAAAkB,EAAC,SAAI,WAAAZ,GACD,UAAA,gBAAAa,EAACC,KAAK,UAAUP,EAjBP,OAAOQ,MAA6B;AACjD,UAAM,EAAE,UAAAC,GAAU,UAAAC,GAAU,OAAAC,EAAA,IAAUH;AAEtC,QAAI,CAAChB,GAAe;AAChB,MAAAI,EAAc,EAAI;AAClB,YAAMgB,IAAS,MAAMd,EAAO,EAAE,UAAAW,GAAU,UAAAC,GAAU,OAAAC,GAAO;AAEzD,OAAIC,KAAA,gBAAAA,EAAQ,YAAW,aACnBlB,KAAA,QAAAA,EAAakB,EAAO,WAGxBhB,EAAc,EAAK;AAAA,
|
|
1
|
+
{"version":3,"file":"SignUpForm.js","sources":["../../../../../../lib/@ecme/views/auth/SignUp/components/SignUpForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { FormItem, Form } from '@/components/ui/Form'\nimport { useAuth } from '@/auth'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\nimport type { CommonProps } from '@/@types/common'\n\ninterface SignUpFormProps extends CommonProps {\n disableSubmit?: boolean\n setMessage?: (message: string) => void\n}\n\ntype SignUpFormSchema = {\n userName: string\n password: string\n email: string\n confirmPassword: string\n}\n\nconst validationSchema: ZodType<SignUpFormSchema> = z\n .object({\n email: z.string({ required_error: 'Please enter your email' }),\n userName: z.string({ required_error: 'Please enter your name' }),\n password: z.string({ required_error: 'Password Required' }),\n confirmPassword: z.string({\n required_error: 'Confirm Password Required',\n }),\n })\n .refine((data) => data.password === data.confirmPassword, {\n message: 'Password not match',\n path: ['confirmPassword'],\n })\n\nconst SignUpForm = (props: SignUpFormProps) => {\n const { disableSubmit = false, className, setMessage } = props\n\n const [isSubmitting, setSubmitting] = useState<boolean>(false)\n\n const { signUp } = useAuth()\n\n const {\n handleSubmit,\n formState: { errors },\n control,\n } = useForm<SignUpFormSchema>({\n resolver: zodResolver(validationSchema),\n })\n\n const onSignUp = async (values: SignUpFormSchema) => {\n const { userName, password, email } = values\n\n if (!disableSubmit) {\n setSubmitting(true)\n const result = await signUp({ userName, password, email })\n\n if (result?.status === 'failed') {\n setMessage?.(result.message)\n }\n\n setSubmitting(false)\n }\n }\n\n return (\n <div className={className}>\n <Form onSubmit={handleSubmit(onSignUp)}>\n <FormItem\n label=\"User name\"\n invalid={Boolean(errors.userName)}\n errorMessage={errors.userName?.message}\n >\n <Controller\n name=\"userName\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"text\"\n placeholder=\"User Name\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Email\"\n invalid={Boolean(errors.email)}\n errorMessage={errors.email?.message}\n >\n <Controller\n name=\"email\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"email\"\n placeholder=\"Email\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Password\"\n invalid={Boolean(errors.password)}\n errorMessage={errors.password?.message}\n >\n <Controller\n name=\"password\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"password\"\n autoComplete=\"off\"\n placeholder=\"Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <FormItem\n label=\"Confirm Password\"\n invalid={Boolean(errors.confirmPassword)}\n errorMessage={errors.confirmPassword?.message}\n >\n <Controller\n name=\"confirmPassword\"\n control={control}\n render={({ field }) => (\n <Input\n type=\"password\"\n autoComplete=\"off\"\n placeholder=\"Confirm Password\"\n {...field}\n />\n )}\n />\n </FormItem>\n <Button\n block\n loading={isSubmitting}\n variant=\"solid\"\n type=\"submit\"\n >\n {isSubmitting ? 'Creating Account...' : 'Sign Up'}\n </Button>\n </Form>\n </div>\n )\n}\n\nexport default SignUpForm\n"],"names":["validationSchema","z","data","SignUpForm","props","disableSubmit","className","setMessage","isSubmitting","setSubmitting","useState","signUp","useAuth","handleSubmit","errors","control","useForm","zodResolver","jsx","jsxs","Form","values","userName","password","email","result","FormItem","_a","Controller","field","Input","_b","_c","_d","Button"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActivityLog.js","sources":["../../../../../../lib/@ecme/views/concepts/accounts/ActivityLog/ActivityLog.tsx"],"sourcesContent":["import { useState, useEffect } from 'react'\nimport AdaptiveCard from '@/components/shared/AdaptiveCard'\nimport Log from './components/Log'\nimport LogAction from './components/LogAction'\nimport { apiGetLogs } from '@/services/LogService'\nimport {\n UPDATE_TICKET,\n COMMENT,\n COMMENT_MENTION,\n ASSIGN_TICKET,\n ADD_TAGS_TO_TICKET,\n ADD_FILES_TO_TICKET,\n CREATE_TICKET,\n} from '@/components/view/Activity/constants'\nimport type { GetActivityLogResponse, Activity } from './types'\n\nconst defaultSelectedType = [\n UPDATE_TICKET,\n COMMENT,\n COMMENT_MENTION,\n ASSIGN_TICKET,\n ADD_TAGS_TO_TICKET,\n ADD_FILES_TO_TICKET,\n CREATE_TICKET,\n]\n\nconst ActivityLog = () => {\n const [isLoading, setIsLoading] = useState(false)\n const [loadable, seLoadable] = useState(true)\n const [activities, setActivities] = useState<Activity[]>([])\n const [activityIndex, setActivityIndex] = useState(1)\n const [showMentionedOnly, setShowMentionedOnly] = useState(false)\n const [selectedType, setSelectedType] =\n useState<string[]>(defaultSelectedType)\n\n const getLogs = async (index: number) => {\n setIsLoading(true)\n const resp = await apiGetLogs<\n GetActivityLogResponse,\n { activityIndex: number }\n >({ activityIndex: index })\n setActivities((prevActivities) => [...prevActivities, ...resp.data])\n seLoadable(resp.loadable)\n setIsLoading(false)\n }\n\n useEffect(() => {\n getLogs(activityIndex)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleFilterChange = (selected: string) => {\n setShowMentionedOnly(false)\n if (selectedType.includes(selected)) {\n setSelectedType((prevData) =>\n prevData.filter((prev) => prev !== selected),\n )\n } else {\n setSelectedType((prevData) => [...prevData, ...[selected]])\n }\n }\n\n const handleLoadMore = () => {\n setActivityIndex((prevIndex) => prevIndex + 1)\n getLogs(activityIndex + 1)\n }\n\n const handleCheckboxChange = (bool: boolean) => {\n setShowMentionedOnly(bool)\n if (bool) {\n setSelectedType([COMMENT_MENTION])\n } else {\n setSelectedType(defaultSelectedType)\n }\n }\n\n return (\n <AdaptiveCard>\n <div className=\"max-w-[800px] mx-auto\">\n <div className=\"flex flex-col sm:flex-row sm:items-center justify-between gap-4 mb-6\">\n <h3>Acitvity log</h3>\n <LogAction\n selectedType={selectedType}\n showMentionedOnly={showMentionedOnly}\n onFilterChange={handleFilterChange}\n onCheckboxChange={handleCheckboxChange}\n />\n </div>\n <Log\n isLoading={isLoading}\n loadable={loadable}\n activities={activities}\n filter={selectedType}\n onLoadMore={handleLoadMore}\n />\n </div>\n </AdaptiveCard>\n )\n}\n\nexport default ActivityLog\n"],"names":["defaultSelectedType","UPDATE_TICKET","COMMENT","COMMENT_MENTION","ASSIGN_TICKET","ADD_TAGS_TO_TICKET","ADD_FILES_TO_TICKET","CREATE_TICKET","ActivityLog","isLoading","setIsLoading","useState","loadable","seLoadable","activities","setActivities","activityIndex","setActivityIndex","showMentionedOnly","setShowMentionedOnly","selectedType","setSelectedType","getLogs","index","resp","apiGetLogs","prevActivities","useEffect","jsx","AdaptiveCard","jsxs","LogAction","selected","prevData","prev","bool","Log","prevIndex"],"mappings":";;;;;;;AAgBA,MAAMA,IAAsB;AAAA,EACxBC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AACJ,GAEMC,IAAc,MAAM;AACtB,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAAUC,CAAU,IAAIF,EAAS,EAAI,GACtC,CAACG,GAAYC,CAAa,IAAIJ,EAAqB,CAAA,CAAE,GACrD,CAACK,GAAeC,CAAgB,IAAIN,EAAS,CAAC,GAC9C,CAACO,GAAmBC,CAAoB,IAAIR,EAAS,EAAK,GAC1D,CAACS,GAAcC,CAAe,IAChCV,EAAmBX,CAAmB,GAEpCsB,IAAU,OAAOC,MAAkB;AACrC,IAAAb,EAAa,EAAI;AACjB,UAAMc,IAAO,MAAMC,EAGjB,EAAE,eAAeF,GAAO;AAC1B,IAAAR,EAAc,CAACW,MAAmB,CAAC,GAAGA,GAAgB,GAAGF,EAAK,IAAI,CAAC,GACnEX,EAAWW,EAAK,QAAQ,GACxBd,EAAa,EAAK;AAAA,
|
|
1
|
+
{"version":3,"file":"ActivityLog.js","sources":["../../../../../../lib/@ecme/views/concepts/accounts/ActivityLog/ActivityLog.tsx"],"sourcesContent":["import { useState, useEffect } from 'react'\nimport AdaptiveCard from '@/components/shared/AdaptiveCard'\nimport Log from './components/Log'\nimport LogAction from './components/LogAction'\nimport { apiGetLogs } from '@/services/LogService'\nimport {\n UPDATE_TICKET,\n COMMENT,\n COMMENT_MENTION,\n ASSIGN_TICKET,\n ADD_TAGS_TO_TICKET,\n ADD_FILES_TO_TICKET,\n CREATE_TICKET,\n} from '@/components/view/Activity/constants'\nimport type { GetActivityLogResponse, Activity } from './types'\n\nconst defaultSelectedType = [\n UPDATE_TICKET,\n COMMENT,\n COMMENT_MENTION,\n ASSIGN_TICKET,\n ADD_TAGS_TO_TICKET,\n ADD_FILES_TO_TICKET,\n CREATE_TICKET,\n]\n\nconst ActivityLog = () => {\n const [isLoading, setIsLoading] = useState(false)\n const [loadable, seLoadable] = useState(true)\n const [activities, setActivities] = useState<Activity[]>([])\n const [activityIndex, setActivityIndex] = useState(1)\n const [showMentionedOnly, setShowMentionedOnly] = useState(false)\n const [selectedType, setSelectedType] =\n useState<string[]>(defaultSelectedType)\n\n const getLogs = async (index: number) => {\n setIsLoading(true)\n const resp = await apiGetLogs<\n GetActivityLogResponse,\n { activityIndex: number }\n >({ activityIndex: index })\n setActivities((prevActivities) => [...prevActivities, ...resp.data])\n seLoadable(resp.loadable)\n setIsLoading(false)\n }\n\n useEffect(() => {\n getLogs(activityIndex)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const handleFilterChange = (selected: string) => {\n setShowMentionedOnly(false)\n if (selectedType.includes(selected)) {\n setSelectedType((prevData) =>\n prevData.filter((prev) => prev !== selected),\n )\n } else {\n setSelectedType((prevData) => [...prevData, ...[selected]])\n }\n }\n\n const handleLoadMore = () => {\n setActivityIndex((prevIndex) => prevIndex + 1)\n getLogs(activityIndex + 1)\n }\n\n const handleCheckboxChange = (bool: boolean) => {\n setShowMentionedOnly(bool)\n if (bool) {\n setSelectedType([COMMENT_MENTION])\n } else {\n setSelectedType(defaultSelectedType)\n }\n }\n\n return (\n <AdaptiveCard>\n <div className=\"max-w-[800px] mx-auto\">\n <div className=\"flex flex-col sm:flex-row sm:items-center justify-between gap-4 mb-6\">\n <h3>Acitvity log</h3>\n <LogAction\n selectedType={selectedType}\n showMentionedOnly={showMentionedOnly}\n onFilterChange={handleFilterChange}\n onCheckboxChange={handleCheckboxChange}\n />\n </div>\n <Log\n isLoading={isLoading}\n loadable={loadable}\n activities={activities}\n filter={selectedType}\n onLoadMore={handleLoadMore}\n />\n </div>\n </AdaptiveCard>\n )\n}\n\nexport default ActivityLog\n"],"names":["defaultSelectedType","UPDATE_TICKET","COMMENT","COMMENT_MENTION","ASSIGN_TICKET","ADD_TAGS_TO_TICKET","ADD_FILES_TO_TICKET","CREATE_TICKET","ActivityLog","isLoading","setIsLoading","useState","loadable","seLoadable","activities","setActivities","activityIndex","setActivityIndex","showMentionedOnly","setShowMentionedOnly","selectedType","setSelectedType","getLogs","index","resp","apiGetLogs","prevActivities","useEffect","jsx","AdaptiveCard","jsxs","LogAction","selected","prevData","prev","bool","Log","prevIndex"],"mappings":";;;;;;;AAgBA,MAAMA,IAAsB;AAAA,EACxBC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AAAA,EACAC;AACJ,GAEMC,IAAc,MAAM;AACtB,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAAUC,CAAU,IAAIF,EAAS,EAAI,GACtC,CAACG,GAAYC,CAAa,IAAIJ,EAAqB,CAAA,CAAE,GACrD,CAACK,GAAeC,CAAgB,IAAIN,EAAS,CAAC,GAC9C,CAACO,GAAmBC,CAAoB,IAAIR,EAAS,EAAK,GAC1D,CAACS,GAAcC,CAAe,IAChCV,EAAmBX,CAAmB,GAEpCsB,IAAU,OAAOC,MAAkB;AACrC,IAAAb,EAAa,EAAI;AACjB,UAAMc,IAAO,MAAMC,EAGjB,EAAE,eAAeF,GAAO;AAC1B,IAAAR,EAAc,CAACW,MAAmB,CAAC,GAAGA,GAAgB,GAAGF,EAAK,IAAI,CAAC,GACnEX,EAAWW,EAAK,QAAQ,GACxBd,EAAa,EAAK;AAAA,EACtB;AAEA,SAAAiB,EAAU,MAAM;AACZ,IAAAL,EAAQN,CAAa;AAAA,EAEzB,GAAG,CAAA,CAAE,GA4BD,gBAAAY,EAACC,GAAA,EACG,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,yBACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,wEACX,UAAA;AAAA,MAAA,gBAAAF,EAAC,QAAG,UAAA,eAAA,CAAY;AAAA,MAChB,gBAAAA;AAAA,QAACG;AAAA,QAAA;AAAA,UACG,cAAAX;AAAA,UACA,mBAAAF;AAAA,UACA,gBAjCO,CAACc,MAAqB;AAC7C,YAAAb,EAAqB,EAAK,GACtBC,EAAa,SAASY,CAAQ,IAC9BX;AAAA,cAAgB,CAACY,MACbA,EAAS,OAAO,CAACC,MAASA,MAASF,CAAQ;AAAA,YAAA,IAG/CX,EAAgB,CAACY,MAAa,CAAC,GAAGA,GAAcD,CAAS,CAAC;AAAA,UAElE;AAAA,UAyBoB,kBAlBS,CAACG,MAAkB;AAC5C,YAAAhB,EAAqBgB,CAAI,GAErBd,EADAc,IACgB,CAAChC,CAAe,IAEhBH,CAFiB;AAAA,UAIzC;AAAA,QAWsC;AAAA,MAAA;AAAA,IACtB,GACJ;AAAA,IACA,gBAAA4B;AAAA,MAACQ;AAAA,MAAA;AAAA,QACG,WAAA3B;AAAA,QACA,UAAAG;AAAA,QACA,YAAAE;AAAA,QACA,QAAQM;AAAA,QACR,YA/BO,MAAM;AACzB,UAAAH,EAAiB,CAACoB,MAAcA,IAAY,CAAC,GAC7Cf,EAAQN,IAAgB,CAAC;AAAA,QAC7B;AAAA,MA4B4B;AAAA,IAAA;AAAA,EAChB,EAAA,CACJ,EAAA,CACJ;AAER;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Segment from '@/components/ui/Segment'\nimport classNames from '@/utils/classNames'\nimport sleep from '@/utils/sleep'\nimport { usePricingStore } from '../store/pricingStore'\nimport { TbCheck, TbCreditCard, TbMail } from 'react-icons/tb'\nimport {\n NumericFormat,\n PatternFormat,\n NumberFormatBase,\n} from 'react-number-format'\nimport { useNavigate } from 'react-router-dom'\nimport { PaymentCycle } from '../types'\n\nfunction limit(val: string, max: string) {\n if (val.length === 1 && val[0] > max[0]) {\n val = '0' + val\n }\n\n if (val.length === 2) {\n if (Number(val) === 0) {\n val = '01'\n } else if (val > max) {\n val = max\n }\n }\n\n return val\n}\n\nfunction cardExpiryFormat(val: string) {\n const month = limit(val.substring(0, 2), '12')\n const date = limit(val.substring(2, 4), '31')\n\n return month + (date.length ? '/' + date : '')\n}\n\nconst PaymentDialog = () => {\n const [loading, setLoading] = useState(false)\n const [paymentSuccessful, setPaymentSuccessful] = useState(false)\n\n const navigate = useNavigate()\n\n const { paymentDialog, setPaymentDialog, selectedPlan, setSelectedPlan } =\n usePricingStore()\n\n const handleDialogClose = async () => {\n setPaymentDialog(false)\n await sleep(200)\n setSelectedPlan({})\n setPaymentSuccessful(false)\n }\n\n const handlePaymentChange = (paymentCycle: PaymentCycle) => {\n setSelectedPlan({\n ...selectedPlan,\n paymentCycle,\n })\n }\n\n const handlePay = async () => {\n setLoading(true)\n await sleep(500)\n setLoading(false)\n setPaymentSuccessful(true)\n }\n\n const handleManageSubscription = async () => {\n navigate('/concepts/account/settings?view=billing')\n await handleDialogClose()\n }\n\n return (\n <Dialog\n isOpen={paymentDialog}\n closable={!paymentSuccessful}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n {paymentSuccessful ? (\n <>\n <div className=\"text-center mt-6 mb-2\">\n <div className=\"inline-flex rounded-full p-5 bg-success\">\n <TbCheck className=\"text-5xl text-white\" />\n </div>\n <div className=\"mt-6\">\n <h4>Thank you for your purchase!</h4>\n <p className=\"text-base max-w-[400px] mx-auto mt-4 leading-relaxed\">\n We've received your order and are\n processing it now. You'll get an email with\n your order details soon\n </p>\n </div>\n <div className=\"grid grid-cols-2 gap-2 mt-8\">\n <Button block onClick={handleManageSubscription}>\n Manage subscription\n </Button>\n <Button\n block\n variant=\"solid\"\n onClick={handleDialogClose}\n >\n Close\n </Button>\n </div>\n </div>\n </>\n ) : (\n <>\n <h4>{selectedPlan.planName} plan</h4>\n <div className=\"mt-6\">\n <Segment\n defaultValue={selectedPlan.paymentCycle}\n className=\"gap-4 flex bg-transparent\"\n onChange={(value) =>\n handlePaymentChange(value as PaymentCycle)\n }\n >\n {Object.entries(selectedPlan.price || {}).map(\n ([key, value]) => (\n <Segment.Item key={key} value={key}>\n {({ active, onSegmentItemClick }) => {\n return (\n <div\n className={classNames(\n 'flex justify-between border rounded-xl border-gray-300 py-5 px-4 select-none ring-1 w-1/2',\n active\n ? 'ring-primary border-primary '\n : 'ring-transparent bg-gray-100',\n )}\n role=\"button\"\n onClick={onSegmentItemClick}\n >\n <div>\n <div className=\"heading-text mb-0.5\">\n Pay{' '}\n {key === 'monthly'\n ? 'monthly'\n : 'anually'}\n </div>\n <span className=\"text-lg font-bold heading-text flex gap-0.5\">\n <NumericFormat\n displayType=\"text\"\n value={value}\n prefix={'$'}\n thousandSeparator={\n true\n }\n />\n <span>{'/'}</span>\n <span>\n {key ===\n 'monthly'\n ? 'month'\n : 'year'}\n </span>\n </span>\n </div>\n {active && (\n <TbCheck className=\"text-primary text-xl\" />\n )}\n </div>\n )\n }}\n </Segment.Item>\n ),\n )}\n </Segment>\n </div>\n <div className=\"mt-6 border border-gray-200 dark:border-gray-600 rounded-lg\">\n <div className=\"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-600\">\n <div className=\"w-full\">\n <span>Billing email</span>\n <div className=\"flex items-center gap-2 mt-2\">\n <TbMail className=\"text-2xl\" />\n <input\n className=\"focus:outline-none heading-text flex-1\"\n placeholder=\"Enter email\"\n type=\"email\"\n />\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between p-4\">\n <div className=\"w-full\">\n <span>Credit card</span>\n <div className=\"flex items-center gap-2 mt-2\">\n <div className=\"flex-1\">\n <TbCreditCard className=\"text-2xl\" />\n </div>\n <PatternFormat\n className=\"focus:outline-none heading-text w-full\"\n placeholder=\"Credit card number\"\n format=\"#### #### #### ####\"\n />\n <NumberFormatBase\n className=\"focus:outline-none heading-text max-w-12 sm:max-w-28\"\n placeholder=\"MM/YY\"\n format={cardExpiryFormat}\n />\n <PatternFormat\n className=\"focus:outline-none heading-text max-w-12 sm:max-w-28\"\n placeholder=\"CVC\"\n format=\"###\"\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"mt-6 flex flex-col items-end\">\n <h4>\n <span>Bill now: </span>\n <span>\n <NumericFormat\n displayType=\"text\"\n value={\n selectedPlan.price?.[\n selectedPlan.paymentCycle as PaymentCycle\n ]\n }\n prefix={'$'}\n thousandSeparator={true}\n />\n </span>\n </h4>\n <div className=\"max-w-[350px] ltr:text-right rtl:text-left leading-none mt-2 opacity-80\">\n <small>\n By clicking "Pay", you agree to be\n charged $399 every month, you can cancel this\n subscription any time.\n </small>\n </div>\n </div>\n <div className=\"mt-6\">\n <Button\n block\n variant=\"solid\"\n loading={loading}\n onClick={handlePay}\n >\n Pay\n </Button>\n </div>\n </>\n )}\n </Dialog>\n )\n}\n\nexport default PaymentDialog\n"],"names":["limit","val","max","cardExpiryFormat","month","date","PaymentDialog","loading","setLoading","useState","paymentSuccessful","setPaymentSuccessful","navigate","useNavigate","paymentDialog","setPaymentDialog","selectedPlan","setSelectedPlan","usePricingStore","handleDialogClose","sleep","handlePaymentChange","paymentCycle","handlePay","jsx","Dialog","Fragment","jsxs","TbCheck","Button","Segment","value","key","active","onSegmentItemClick","classNames","NumericFormat","TbMail","TbCreditCard","PatternFormat","NumberFormatBase","_a"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PaymentDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/accounts/Pricing/components/PaymentDialog.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Button from '@/components/ui/Button'\nimport Dialog from '@/components/ui/Dialog'\nimport Segment from '@/components/ui/Segment'\nimport classNames from '@/utils/classNames'\nimport sleep from '@/utils/sleep'\nimport { usePricingStore } from '../store/pricingStore'\nimport { TbCheck, TbCreditCard, TbMail } from 'react-icons/tb'\nimport {\n NumericFormat,\n PatternFormat,\n NumberFormatBase,\n} from 'react-number-format'\nimport { useNavigate } from 'react-router-dom'\nimport { PaymentCycle } from '../types'\n\nfunction limit(val: string, max: string) {\n if (val.length === 1 && val[0] > max[0]) {\n val = '0' + val\n }\n\n if (val.length === 2) {\n if (Number(val) === 0) {\n val = '01'\n } else if (val > max) {\n val = max\n }\n }\n\n return val\n}\n\nfunction cardExpiryFormat(val: string) {\n const month = limit(val.substring(0, 2), '12')\n const date = limit(val.substring(2, 4), '31')\n\n return month + (date.length ? '/' + date : '')\n}\n\nconst PaymentDialog = () => {\n const [loading, setLoading] = useState(false)\n const [paymentSuccessful, setPaymentSuccessful] = useState(false)\n\n const navigate = useNavigate()\n\n const { paymentDialog, setPaymentDialog, selectedPlan, setSelectedPlan } =\n usePricingStore()\n\n const handleDialogClose = async () => {\n setPaymentDialog(false)\n await sleep(200)\n setSelectedPlan({})\n setPaymentSuccessful(false)\n }\n\n const handlePaymentChange = (paymentCycle: PaymentCycle) => {\n setSelectedPlan({\n ...selectedPlan,\n paymentCycle,\n })\n }\n\n const handlePay = async () => {\n setLoading(true)\n await sleep(500)\n setLoading(false)\n setPaymentSuccessful(true)\n }\n\n const handleManageSubscription = async () => {\n navigate('/concepts/account/settings?view=billing')\n await handleDialogClose()\n }\n\n return (\n <Dialog\n isOpen={paymentDialog}\n closable={!paymentSuccessful}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n {paymentSuccessful ? (\n <>\n <div className=\"text-center mt-6 mb-2\">\n <div className=\"inline-flex rounded-full p-5 bg-success\">\n <TbCheck className=\"text-5xl text-white\" />\n </div>\n <div className=\"mt-6\">\n <h4>Thank you for your purchase!</h4>\n <p className=\"text-base max-w-[400px] mx-auto mt-4 leading-relaxed\">\n We've received your order and are\n processing it now. You'll get an email with\n your order details soon\n </p>\n </div>\n <div className=\"grid grid-cols-2 gap-2 mt-8\">\n <Button block onClick={handleManageSubscription}>\n Manage subscription\n </Button>\n <Button\n block\n variant=\"solid\"\n onClick={handleDialogClose}\n >\n Close\n </Button>\n </div>\n </div>\n </>\n ) : (\n <>\n <h4>{selectedPlan.planName} plan</h4>\n <div className=\"mt-6\">\n <Segment\n defaultValue={selectedPlan.paymentCycle}\n className=\"gap-4 flex bg-transparent\"\n onChange={(value) =>\n handlePaymentChange(value as PaymentCycle)\n }\n >\n {Object.entries(selectedPlan.price || {}).map(\n ([key, value]) => (\n <Segment.Item key={key} value={key}>\n {({ active, onSegmentItemClick }) => {\n return (\n <div\n className={classNames(\n 'flex justify-between border rounded-xl border-gray-300 py-5 px-4 select-none ring-1 w-1/2',\n active\n ? 'ring-primary border-primary '\n : 'ring-transparent bg-gray-100',\n )}\n role=\"button\"\n onClick={onSegmentItemClick}\n >\n <div>\n <div className=\"heading-text mb-0.5\">\n Pay{' '}\n {key === 'monthly'\n ? 'monthly'\n : 'anually'}\n </div>\n <span className=\"text-lg font-bold heading-text flex gap-0.5\">\n <NumericFormat\n displayType=\"text\"\n value={value}\n prefix={'$'}\n thousandSeparator={\n true\n }\n />\n <span>{'/'}</span>\n <span>\n {key ===\n 'monthly'\n ? 'month'\n : 'year'}\n </span>\n </span>\n </div>\n {active && (\n <TbCheck className=\"text-primary text-xl\" />\n )}\n </div>\n )\n }}\n </Segment.Item>\n ),\n )}\n </Segment>\n </div>\n <div className=\"mt-6 border border-gray-200 dark:border-gray-600 rounded-lg\">\n <div className=\"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-600\">\n <div className=\"w-full\">\n <span>Billing email</span>\n <div className=\"flex items-center gap-2 mt-2\">\n <TbMail className=\"text-2xl\" />\n <input\n className=\"focus:outline-none heading-text flex-1\"\n placeholder=\"Enter email\"\n type=\"email\"\n />\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between p-4\">\n <div className=\"w-full\">\n <span>Credit card</span>\n <div className=\"flex items-center gap-2 mt-2\">\n <div className=\"flex-1\">\n <TbCreditCard className=\"text-2xl\" />\n </div>\n <PatternFormat\n className=\"focus:outline-none heading-text w-full\"\n placeholder=\"Credit card number\"\n format=\"#### #### #### ####\"\n />\n <NumberFormatBase\n className=\"focus:outline-none heading-text max-w-12 sm:max-w-28\"\n placeholder=\"MM/YY\"\n format={cardExpiryFormat}\n />\n <PatternFormat\n className=\"focus:outline-none heading-text max-w-12 sm:max-w-28\"\n placeholder=\"CVC\"\n format=\"###\"\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"mt-6 flex flex-col items-end\">\n <h4>\n <span>Bill now: </span>\n <span>\n <NumericFormat\n displayType=\"text\"\n value={\n selectedPlan.price?.[\n selectedPlan.paymentCycle as PaymentCycle\n ]\n }\n prefix={'$'}\n thousandSeparator={true}\n />\n </span>\n </h4>\n <div className=\"max-w-[350px] ltr:text-right rtl:text-left leading-none mt-2 opacity-80\">\n <small>\n By clicking "Pay", you agree to be\n charged $399 every month, you can cancel this\n subscription any time.\n </small>\n </div>\n </div>\n <div className=\"mt-6\">\n <Button\n block\n variant=\"solid\"\n loading={loading}\n onClick={handlePay}\n >\n Pay\n </Button>\n </div>\n </>\n )}\n </Dialog>\n )\n}\n\nexport default PaymentDialog\n"],"names":["limit","val","max","cardExpiryFormat","month","date","PaymentDialog","loading","setLoading","useState","paymentSuccessful","setPaymentSuccessful","navigate","useNavigate","paymentDialog","setPaymentDialog","selectedPlan","setSelectedPlan","usePricingStore","handleDialogClose","sleep","handlePaymentChange","paymentCycle","handlePay","jsx","Dialog","Fragment","jsxs","TbCheck","Button","Segment","value","key","active","onSegmentItemClick","classNames","NumericFormat","TbMail","TbCreditCard","PatternFormat","NumberFormatBase","_a"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plans.js","sources":["../../../../../../../lib/@ecme/views/concepts/accounts/Pricing/components/Plans.tsx"],"sourcesContent":["import Button from '@/components/ui/Button'\nimport Tag from '@/components/ui/Tag'\nimport { usePricingStore } from '../store/pricingStore'\nimport { apiGetPricingPlans } from '@/services/AccontsService'\nimport { featuresList } from '../constants'\nimport classNames from '@/utils/classNames'\nimport isLastChild from '@/utils/isLastChild'\nimport useQuery from '@/utils/hooks/useQuery'\nimport useSWR from 'swr'\nimport { NumericFormat } from 'react-number-format'\nimport { TbCheck } from 'react-icons/tb'\nimport type { GetPricingPanResponse } from '../types'\n\nconst Plans = () => {\n const { paymentCycle, setPaymentDialog, setSelectedPlan } =\n usePricingStore()\n\n const query = useQuery()\n const subcription = query.get('subcription')\n const cycle = query.get('cycle')\n\n const { data } = useSWR(\n ['/api/pricing'],\n () => apiGetPricingPlans<GetPricingPanResponse>(),\n {\n revalidateOnFocus: false,\n revalidateIfStale: false,\n revalidateOnReconnect: false,\n },\n )\n\n return (\n <div className=\"grid grid-cols-1 xl:grid-cols-3 gap-8 xl:gap-4\">\n {data?.plans.map((plan, index) => (\n <div\n key={plan.id}\n className={classNames(\n 'px-6 pt-2 flex flex-col justify-between',\n !isLastChild(data.plans, index) &&\n 'border-r-0 xl:border-r border-gray-200 dark:border-gray-700',\n )}\n >\n <div>\n <h5 className=\"mb-6 flex items-center gap-2\">\n <span>{plan.name}</span>\n {plan.recommended && (\n <Tag className=\"rounded-full bg-green-200 font-bold\">\n Recommended\n </Tag>\n )}\n </h5>\n <div className=\"\">{plan.description}</div>\n <div className=\"mt-6\">\n <NumericFormat\n className=\"h1\"\n displayType=\"text\"\n value={plan.price[paymentCycle]}\n prefix={'$'}\n thousandSeparator={true}\n />\n <span className=\"text-lg font-bold\">\n {' '}\n /{' '}\n {paymentCycle === 'monthly' ? 'month' : 'year'}\n </span>\n </div>\n <div className=\"flex flex-col gap-4 border-t border-gray-200 dark:border-gray-700 mt-6 pt-6\">\n {featuresList.map((feature) => (\n <div\n key={feature.id}\n className=\"flex items-center gap-4 font-semibold heading-text\"\n >\n {plan.features.includes(feature.id) && (\n <>\n <TbCheck\n className={classNames(\n 'text-2xl',\n plan.features.includes(\n feature.id,\n )\n ? 'text-primary'\n : 'text-gray-100',\n )}\n />\n <span>\n {\n feature.description[\n plan.id as string\n ]\n }\n </span>\n </>\n )}\n </div>\n ))}\n </div>\n </div>\n <div className=\"mt-10\">\n <Button\n block\n disabled={\n subcription === plan.id &&\n cycle === paymentCycle\n }\n onClick={() => {\n setSelectedPlan({\n paymentCycle,\n planName: plan.name,\n price: plan.price,\n })\n setPaymentDialog(true)\n }}\n >\n {subcription === plan.id && cycle === paymentCycle\n ? 'Current plan'\n : 'Select plan'}\n </Button>\n </div>\n </div>\n ))}\n </div>\n )\n}\n\nexport default Plans\n"],"names":["Plans","paymentCycle","setPaymentDialog","setSelectedPlan","usePricingStore","query","useQuery","subcription","cycle","data","useSWR","apiGetPricingPlans","jsx","plan","index","jsxs","classNames","isLastChild","Tag","NumericFormat","featuresList","feature","Fragment","TbCheck","Button"],"mappings":";;;;;;;;;;;;;;AAaA,MAAMA,IAAQ,MAAM;AAChB,QAAM,EAAE,cAAAC,GAAc,kBAAAC,GAAkB,iBAAAC,EAAA,IACpCC,EAAA,GAEEC,IAAQC,EAAA,GACRC,IAAcF,EAAM,IAAI,aAAa,GACrCG,IAAQH,EAAM,IAAI,OAAO,GAEzB,EAAE,MAAAI,MAASC;AAAA,IACb,CAAC,cAAc;AAAA,IACf,MAAMC,EAAA;AAAA,IACN;AAAA,MACI,mBAAmB;AAAA,MACnB,mBAAmB;AAAA,MACnB,uBAAuB;AAAA,IAAA;AAAA,EAC3B;AAGJ,SACI,gBAAAC,EAAC,SAAI,WAAU,kDACV,iCAAM,MAAM,IAAI,CAACC,GAAMC,MACpB,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MAEG,WAAWC;AAAA,QACP;AAAA,QACA,CAACC,EAAYR,EAAK,OAAOK,CAAK,KAC1B;AAAA,MAAA;AAAA,MAGR,UAAA;AAAA,QAAA,gBAAAC,EAAC,OAAA,EACG,UAAA;AAAA,UAAA,gBAAAA,EAAC,MAAA,EAAG,WAAU,gCACV,UAAA;AAAA,YAAA,gBAAAH,EAAC,QAAA,EAAM,YAAK,KAAA,CAAK;AAAA,YAChBC,EAAK,eACF,gBAAAD,EAACM,GAAA,EAAI,WAAU,uCAAsC,UAAA,cAAA,CAErD;AAAA,UAAA,GAER;AAAA,UACA,gBAAAN,EAAC,OAAA,EAAI,WAAU,IAAI,YAAK,aAAY;AAAA,UACpC,gBAAAG,EAAC,OAAA,EAAI,WAAU,QACX,UAAA;AAAA,YAAA,gBAAAH;AAAA,cAACO;AAAA,cAAA;AAAA,gBACG,WAAU;AAAA,gBACV,aAAY;AAAA,gBACZ,OAAON,EAAK,MAAMZ,CAAY;AAAA,gBAC9B,QAAQ;AAAA,gBACR,mBAAmB;AAAA,cAAA;AAAA,YAAA;AAAA,YAEvB,gBAAAc,EAAC,QAAA,EAAK,WAAU,qBACX,UAAA;AAAA,cAAA;AAAA,cAAI;AAAA,cACH;AAAA,cACDd,MAAiB,YAAY,UAAU;AAAA,YAAA,EAAA,CAC5C;AAAA,UAAA,GACJ;AAAA,4BACC,OAAA,EAAI,WAAU,+EACV,UAAAmB,EAAa,IAAI,CAACC,MACf,gBAAAT;AAAA,YAAC;AAAA,YAAA;AAAA,cAEG,WAAU;AAAA,cAET,YAAK,SAAS,SAASS,EAAQ,EAAE,KAC9B,gBAAAN,EAAAO,GAAA,EACI,UAAA;AAAA,gBAAA,gBAAAV;AAAA,kBAACW;AAAA,kBAAA;AAAA,oBACG,WAAWP;AAAA,sBACP;AAAA,sBACAH,EAAK,SAAS;AAAA,wBACVQ,EAAQ;AAAA,sBAAA,IAEN,iBACA;AAAA,oBAAA;AAAA,kBACV;AAAA,gBAAA;AAAA,kCAEH,QAAA,EAEO,UAAAA,EAAQ,YACJR,EAAK,EACT,EAAA,CAER;AAAA,cAAA,EAAA,CACJ;AAAA,YAAA;AAAA,YAtBCQ,EAAQ;AAAA,UAAA,CAyBpB,EAAA,CACL;AAAA,QAAA,GACJ;AAAA,QACA,gBAAAT,EAAC,OAAA,EAAI,WAAU,SACX,UAAA,gBAAAA;AAAA,UAACY;AAAA,UAAA;AAAA,YACG,OAAK;AAAA,YACL,UACIjB,MAAgBM,EAAK,MACrBL,MAAUP;AAAA,YAEd,SAAS,MAAM;AACX,cAAAE,EAAgB;AAAA,gBACZ,cAAAF;AAAA,gBACA,UAAUY,EAAK;AAAA,gBACf,OAAOA,EAAK;AAAA,cAAA,CACf,GACDX,EAAiB,EAAI;AAAA,
|
|
1
|
+
{"version":3,"file":"Plans.js","sources":["../../../../../../../lib/@ecme/views/concepts/accounts/Pricing/components/Plans.tsx"],"sourcesContent":["import Button from '@/components/ui/Button'\nimport Tag from '@/components/ui/Tag'\nimport { usePricingStore } from '../store/pricingStore'\nimport { apiGetPricingPlans } from '@/services/AccontsService'\nimport { featuresList } from '../constants'\nimport classNames from '@/utils/classNames'\nimport isLastChild from '@/utils/isLastChild'\nimport useQuery from '@/utils/hooks/useQuery'\nimport useSWR from 'swr'\nimport { NumericFormat } from 'react-number-format'\nimport { TbCheck } from 'react-icons/tb'\nimport type { GetPricingPanResponse } from '../types'\n\nconst Plans = () => {\n const { paymentCycle, setPaymentDialog, setSelectedPlan } =\n usePricingStore()\n\n const query = useQuery()\n const subcription = query.get('subcription')\n const cycle = query.get('cycle')\n\n const { data } = useSWR(\n ['/api/pricing'],\n () => apiGetPricingPlans<GetPricingPanResponse>(),\n {\n revalidateOnFocus: false,\n revalidateIfStale: false,\n revalidateOnReconnect: false,\n },\n )\n\n return (\n <div className=\"grid grid-cols-1 xl:grid-cols-3 gap-8 xl:gap-4\">\n {data?.plans.map((plan, index) => (\n <div\n key={plan.id}\n className={classNames(\n 'px-6 pt-2 flex flex-col justify-between',\n !isLastChild(data.plans, index) &&\n 'border-r-0 xl:border-r border-gray-200 dark:border-gray-700',\n )}\n >\n <div>\n <h5 className=\"mb-6 flex items-center gap-2\">\n <span>{plan.name}</span>\n {plan.recommended && (\n <Tag className=\"rounded-full bg-green-200 font-bold\">\n Recommended\n </Tag>\n )}\n </h5>\n <div className=\"\">{plan.description}</div>\n <div className=\"mt-6\">\n <NumericFormat\n className=\"h1\"\n displayType=\"text\"\n value={plan.price[paymentCycle]}\n prefix={'$'}\n thousandSeparator={true}\n />\n <span className=\"text-lg font-bold\">\n {' '}\n /{' '}\n {paymentCycle === 'monthly' ? 'month' : 'year'}\n </span>\n </div>\n <div className=\"flex flex-col gap-4 border-t border-gray-200 dark:border-gray-700 mt-6 pt-6\">\n {featuresList.map((feature) => (\n <div\n key={feature.id}\n className=\"flex items-center gap-4 font-semibold heading-text\"\n >\n {plan.features.includes(feature.id) && (\n <>\n <TbCheck\n className={classNames(\n 'text-2xl',\n plan.features.includes(\n feature.id,\n )\n ? 'text-primary'\n : 'text-gray-100',\n )}\n />\n <span>\n {\n feature.description[\n plan.id as string\n ]\n }\n </span>\n </>\n )}\n </div>\n ))}\n </div>\n </div>\n <div className=\"mt-10\">\n <Button\n block\n disabled={\n subcription === plan.id &&\n cycle === paymentCycle\n }\n onClick={() => {\n setSelectedPlan({\n paymentCycle,\n planName: plan.name,\n price: plan.price,\n })\n setPaymentDialog(true)\n }}\n >\n {subcription === plan.id && cycle === paymentCycle\n ? 'Current plan'\n : 'Select plan'}\n </Button>\n </div>\n </div>\n ))}\n </div>\n )\n}\n\nexport default Plans\n"],"names":["Plans","paymentCycle","setPaymentDialog","setSelectedPlan","usePricingStore","query","useQuery","subcription","cycle","data","useSWR","apiGetPricingPlans","jsx","plan","index","jsxs","classNames","isLastChild","Tag","NumericFormat","featuresList","feature","Fragment","TbCheck","Button"],"mappings":"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"}
|