{"version":3,"sources":["utility/Utils.js","configs/themeConfig.js","utility/services/api.service.js","components/MessageModel.js","views/apps/deshboard/store/index.js","redux/authentication.js","@core/components/spinner/Fallback-spinner.js","views/apps/receiving/store/index.js","@core/auth/jwt/jwtDefaultConfig.js","@core/auth/jwt/jwtService.js","auth/jwt/useJwt.js","@core/auth/jwt/useJwt.js","utility/context/ThemeColors.js","views/apps/templates/store/index.js","components/LocationBankSelector/store/index.js","views/apps/invoice-customization-estimate/store/index.js","assets/images/logo/logo.png","views/apps/invoice-customization-expense/store/index.js","utility/context/Can.js","views/apps/invoice-customization/store/index.js","views/apps/invoice-customization-purchase-return/store/index.js","views/apps/sales/customer-invoice/store/index.js","views/apps/invoice-customization-po/store/index.js","views/apps/invoice-customization-grn/store/index.js","views/apps/invoice-customization-pr/store/index.js","views/apps/invoice-customization-grn-return/store/index.js","redux/layout.js","views/apps/invoice-customization-sale-return/store/index.js","views/apps/invoice-customization-purchase/store/index.js","views/settings/company/form-view/steps/preferences/customer-invoice/store/index.js","views/apps/invoice-export-packing-customization/store/index.js","views/apps/invoice-customization-delivery-notes/store/index.js","views/apps/projects/project-dashboard/detailed-cards/transactions/store/index.js","views/apps/sales/customers/store/index.js","views/apps/invoice-customization-demand/store/index.js","views/apps/inventory/adjustment-type/store/index.js","views/apps/accounts/coa/store/index.js","views/apps/purchases/expense/store/index.js","views/apps/payments/store/index.js","views/apps/purchases/vendors/store/index.js","views/apps/stocks/receipt-in-location/store/index.js","views/apps/invoice-customization-jv/store/index.js","views/apps/invoice-customization-itl/store/index.js","views/apps/invoice-customization-ril/store/index.js","views/apps/invoice-customization-recoveries/store/index.js","views/settings/company/form-view/steps/preferences/purchase-return/store/index.js","views/settings/company/form-view/steps/preferences/sales-return/store/index.js","views/settings/subscriptions/store/index.js","views/apps/journal/store/index.js","views/apps/purchases/vendor-invoice/store/index.js","views/apps/stocks/issue-to-location/store/index.js","views/apps/invoice-customization-payment-made/store/index.js","views/settings/company/form-view/steps/preferences/expense/store/index.js","views/tickets-system/store/index.js","views/settings/company/form-view/steps/preferences/purchase-order/store/index.js","views/settings/company/form-view/steps/dynamic-fields/inventoryFields/store/index.js","views/settings/company/form-view/steps/preferences/goods-received-note/store/index.js","views/settings/company/form-view/steps/preferences/delivery-note/store/index.js","views/settings/company/form-view/steps/preferences/purchase-request/store/index.js","views/settings/company/form-view/steps/preferences/demand/store/index.js","views/settings/company/form-view/steps/preferences/vendor-invoice/store/index.js","views/settings/company/form-view/steps/preferences/estimate/store/index.js","views/apps/vat-return/store/index.js","views/apps/cash-and-banks/store/index.js","views/apps/sales/estimates/store/index.js","views/apps/pos-shifts/store/index.js","views/apps/saleInvoice-packingSlip-customization/store/index.js","views/settings/company/form-view/steps/advance-settings/store/index.js","views/settings/company/form-view/steps/pos-settings/store/index.js","views/reports/general_ledger/store/index.js","views/apps/budgets/store/index.js","redux/navbar.js","redux/mapAccounts.js","redux/notifications.js","views/apps/file-system/store/index.js","views/apps/attachments-file-system/store/index.js","views/apps/purchases/purchase-orders/store/index.js","views/apps/purchases/return-outwards/store/index.js","views/apps/sales/return-inwards/store/index.js","views/apps/sales/delivery-note/store/index.js","views/apps/sales-man/store/index.js","views/apps/user-roles/store/index.js","views/reports/aging/store/index.js","views/reports/customer-aging/store/index.js","views/apps/saleInvoice-deliveryNote-customization/store/index.js","views/settings/company/form-view/steps/preferences/customer/store/index.js","views/settings/company/form-view/steps/taxes/store/index.js","views/settings/company/form-view/steps/taxes/wht/store/index.js","views/settings/company/form-view/steps/reporting-tags/store/index.js","views/reports/purchase_report/store/index.js","views/reports/bank_ledgers/store/index.js","views/apps/vat-corporate/store/index.js","views/apps/payroll/store/index.js","views/apps/pay-payments/store/index.js","views/apps/todo/store/index.js","views/apps/invoice/store/index.js","views/settings/areas/store/index.js","views/tables/data-tables/store/index.js","views/apps/stocks/opening-stock/store/index.js","components/AccountDetailSelector_v2/store/index.js","redux/rootReducer.js","redux/store.js","views/apps/user/store/index.js","views/apps/journal-recurrence/store/index.js","views/apps/stocks/demands/store/index.js","views/apps/stocks/demand/store/index.js","views/apps/purchases/purchase-request/store/index.js","views/apps/currency/store/index.js","views/apps/purchases/recurring-bill/store/index.js","views/apps/purchases/recurring-expense/store/index.js","views/settings/tax-types/store/index.js","views/apps/purchases/goods-received-note/store/index.js","views/apps/purchases/goods-received-note-return/store/index.js","views/apps/sales/recurrence-invoice/store/index.js","views/apps/inventory/items/store/index.js","views/apps/inventory/brands/store/index.js","views/apps/inventory/colors/store/index.js","views/apps/inventory/cost-centers/store/index.js","views/apps/inventory/departments/store/index.js","views/apps/credit-terms/store/index.js","views/apps/pos-tills/store/index.js","views/apps/pos-cash-transfer/store/index.js","views/apps/pos/store/index.js","views/apps/inventory/measuring-units/store/index.js","views/apps/inventory/seasons/store/index.js","views/apps/inventory/sizes/store/index.js","views/apps/inventory/category/store/index.js","views/apps/inventory/sub-category/store/index.js","views/apps/employees/store/index.js","views/apps/employees/definitions/designations/store/index.js","views/apps/employees/definitions/departments/store/index.js","views/apps/employees/definitions/allowances/store/index.js","views/apps/pay-allowances/store/index.js","views/apps/pay-deductions/store/index.js","views/apps/pay-leaves/store/index.js","views/apps/pay-advances/store/index.js","views/apps/employees/definitions/deductions/store/index.js","views/apps/cost-centers/store/index.js","views/apps/financial-year/store/index.js","views/reports/profit-loss/store/index.js","views/reports/project-profit-loss/store/index.js","views/reports/balance-sheet/store/index.js","views/reports/trail_balance/store/index.js","views/reports/customerAdvance/store/index.js","views/reports/tax-code-report/store/index.js","views/reports/tax-code-report/tax-code-report-detail/store/index.js","views/reports/vendorAdvance/store/index.js","views/reports/vendorBalances/store/index.js","views/reports/CustomerBalance/store/index.js","views/reports/payableSummary/store/index.js","views/reports/paymentMade/store/index.js","views/reports/stock-reports/store/index.js","views/reports/single-item-ledger/store/index.js","views/reports/item-valuation-report/store/index.js","views/apps/inventory/item-adjustment/store/index.js","views/apps/inventory/item-consumption/store/index.js","views/settings/company/form-view/steps/approvals/billApprovals/store/index.js","views/settings/company/form-view/steps/approvals/customerInvoiceApprovals/store/index.js","views/settings/company/form-view/steps/approvals/jvApprovals/store/index.js","views/settings/company/form-view/steps/approvals/expenseApprovals/store/index.js","views/settings/company/form-view/steps/preferences/vendor/store/index.js","views/settings/company/form-view/steps/email/customer-invoice/store/index.js","views/reports/paymentReceived/store/index.js","views/reports/creditNoteDetail/store/index.js","views/reports/vendorCreditDetail/store/index.js","views/reports/invoice-detail/store/index.js","views/reports/billable-detail/store/index.js","views/reports/project-invoices/store/index.js","views/reports/BillsDetail/store/index.js","views/reports/sales_report/store/index.js","views/apps/pos/form-view/tabs/invoices/store/index.js","views/apps/projects/store/index.js","views/apps/vat-payment/store/index.js","views/apps/vat-corporate-payment/store/index.js","views/apps/pay-periods/store/index.js","utility/context/AppDefaults.js","configs/acl/ability.js","configs/acl/initialAbility.js","assets/images/logo/smart_logo.png","@core/components/ripple-button/index.js","configs/i18n/index.js","index.js","serviceWorker.js"],"names":["getMonthName","monthIndex","kFormatter","num","toFixed","formatDate","value","formatting","month","day","year","Intl","DateTimeFormat","format","Date","tablesDateFormat","formatCurrency","defaultCurrency","showCurrency","roundingDigits","options","user","JSON","parse","localStorage","getItem","roundingDigit","minimumFractionDigits","maximumFractionDigits","style","currency","code","currencyDisplay","formatter","NumberFormat","imageUrlToBase64","url","a","fetch","response","blob","Promise","resolve","reject","reader","FileReader","onloadend","result","onerror","readAsDataURL","console","error","inWords","number","ToWords","localeCode","converterOptions","ignoreDecimal","ignoreZeroCurrency","doNotAddOnly","currencyOptions","name","plural","symbol","fractionalUnit","subUnit","convert","getTotal","data","total","childs","length","map","e","subTotal","amount","childAmount","getTotalCompare","column","dynamicColumns","collectChilds","columns","data_list","i","undefined","array","j","push","isAllZero","every","item","cChilds","getTotalTrialBalance","c_total_obdr","c_total_obcr","c_total_dr","c_total_cr","c_total_cbdr","c_total_cbcr","total_open_dr","total_open_cr","total_dr","total_cr","total_close_dr","total_close_cr","closeBalance","obdr","dr","obcr","cr","cbdr","cbcr","totalCloseBalance","isUserLoggedIn","getHomeRouteForLoggedInUser","userRole","selectThemeColors","theme","colors","primary25","primary","neutral10","neutral20","neutral30","conditionalRowStylesForms","when","row","isDeleted","display","debounce","callback","timer","timeout","args","clearTimeout","setTimeout","getFingerprint","RTCPeerConnection","window","webkitRTCPeerConnection","mozRTCPeerConnection","addrs","Object","create","rtc","iceServers","createDataChannel","reliable","updateDisplay","newAddr","grepSDP","sdp","split","forEach","line","indexOf","parts","addr","displayAddrs","keys","filter","k","onicecandidate","evt","candidate","concat","createOffer","offerDesc","setLocalDescription","warn","fingerprint","filterConfigurationList","listName","listsConfigurations","columnName","toLowerCase","slice","checkAndSetNumVal","val","old","maxFloat","key","target","log","includes","isNaN","parseFloat","checkAndSetNumValPR","allowNegative","cvalue","calculateValuesAndTax","invoice","tempDetail","exAmount","qty","transactionCurrencyRate","totalAmount","discountAmount","discountType","discountVal","taxPer","invoiceTaxType","taxAmount","inAmount","taxType","taxText","groupBy","xs","reduce","rv","x","getDateFromTerm","term","invDate","dueDate","toUTCString","setDate","getDate","getFullYear","getMonth","days","parseInt","UTC","getTransactionalRate","base_rate","conversionRate","printPageStyle","printPageStyleTable","printPage80Style","pageHeight","convertFoldersToArray","converted_array","tempObj","subFolders","encodeParameters","parameters","base64url","encode","queryString","stringify","decodeParameters","encoded","decodedParams","decode","showTax","userData","date","isTaxRegistered","getTime","taxRegistrationDate","replace","checkApprovalStatus","approval_data","invoiceDetail","type","status","isSalesApprovalLvl1RightsEnabled","lvl1","isSalesApprovalLvl2RightsEnabled","lvl2","isSalesApprovalLvl3RightsEnabled","lvl3","isSalesApprovalLvl4RightsEnabled","lvl4","arabicDayNames","arabicMonthNames","englishDayNames","serverUrlAddress","englishMonthNames","themeConfig","app","appName","process","appLogoImage","require","default","layout","isRTL","skin","routerTransition","contentWidth","menu","isHidden","isCollapsed","navbar","backgroundColor","footer","customizer","scrollTop","API_LOGIN","API_FORGOT_PASSWORD","API_FORGOT_PASSWORD_RESET","API_FORGOT_PASSWORD_RESET_SUBMIT","API_REGISTER","Post","uri","axios","post","er","message","title","errors","Put","put","Get","params","get","Delete","delete","MySwal","withReactContent","Swal","fireMessage","icon","props","replaceAll","fire","html","customClass","confirmButton","cancelButton","buttonsStyling","confirmButtonText","t","setLoading","createAsyncThunk","loadingState","getData","dispatch","getRevenueStats","getPaymentPurchaseStats","getProfitAndLoss","getProfit","getTotalSales","getMonthlyPurchases","getPrevMonthlyPurchases","getTotalRecoveriesStats","getMonthlyExpenses","getPeriodSales","getAllSales","getCustomerStats","getVendorPayables","getTopExpenses","getTotalPaymentStats","getTotalPaymentStatistics","getTotalPrevPaymentStatistics","getTotalExpenseStatistics","getTotalPrevExpenseStatistics","getEstimateStats","getActivityLogs","FavStoreSlice","createSlice","initialState","total_sales","estimate_stats","customer_stats","period_sales","revenue_data","all_sales","recoveries_stats","logs_data","profit_loss","purchases_stats","expenses_stats","top_expenses","vendor_stats","payment_purchase_stats","total_payment_stats","total_payment_statistics","total_expense_statistics","totalRecords","total_logs","recovery_params","all_d_sales_params","profit_loss_params","purchases_params","expenses_params","payment_purchase_params","total_payment_params","total_payment_stats_params","total_expense_stats_params","top_expenses_params","vendor_params","all_sales_params","revenue_params","total_sales_params","logs_params","reducers","extraReducers","builder","addCase","fulfilled","state","action","payload","list","periodRecords","period_params","estimate_params","purchases_stats_prev","purchases_params_prev","total_payment_statistics_prev","total_payment_stats_params_prev","total_expense_statistics_prev","total_expense_stats_params_prev","config","useJwt","jwtConfig","initialUser","handleUserProfile","userDetails","headers","accessToken","rightsResponse","isSuccessFull","allAcl","subject","right","acls","viewScreen","screenDescription","addScreen","updateScreen","deleteScreen","ability","update","authSlice","loggedIn","loginUserId","unautorized","hideState","handleUpdateUser","storageTokenKeyName","storageRefreshTokenKeyName","setItem","refreshToken","handleLogin","instanceURL","defaults","baseURL","handleAuthChanged","handleProfileChanged","profileImageURL","handleUnAuthorized","removeItem","handleLogout","sessionOut","actions","SpinnerComponent","className","src","logo","alt","width","tabs","CustomerAdvance","formType","listType","voucherType","CustomerPayment","TransferFromAccount","OtherIncome","ExpenseRefund","DepositFromAccounts","OwnerContribution","VendorCreditRefund","VendorPaymentRefund","VendorAdvance","VendorPayment","TransferToAccount","CardPayment","OwnerDrawings","DepositToAccounts","CreditNoteRefund","PaymentRefund","EmployeeReimbursement","withBalance","getTransactions","tab","avoidVoucher","clearTransactions","getVoucher","recno","getTransactionAccount","appReceivings","voucher","transactions","account","trans_params","loginEndpoint","registerEndpoint","forgotPasswordEndPoint","refreshEndpoint","logoutEndpoint","tokenType","JwtService","jwtOverrideConfig","jwtDefaultConfig","isAlreadyFetchingAccessToken","subscribers","this","cancelTokenSource","CancelToken","source","interceptors","request","use","cancelToken","token","getToken","Authorization","forgotPasswordResetEndPoint","forgotPasswordResetSubmitEndPoint","getRefreshToken","service","jwt","ThemeColors","createContext","ThemeContext","children","useState","setColors","useEffect","getHex","color","getComputedStyle","document","body","getPropertyValue","trim","obj","light","main","secondary","success","danger","warning","info","dark","Provider","templateTabs","SalesInvoice","default_uri","post_uri","templateType","SalesReturnInvoice","PurchaseInvoice","PurchaseReturnInvoice","ExpenseInvoice","GRNs","DeliveryNotes","IssueToLocation","GoodsReceivedNoteReturn","PurchaseOrder","PurchaseRequest","Estimate","setOpenEdit","template","getDefaultData","addTemplate","templateName","saved_template","setStoreSelectedTemplate","id","openEdit","getLocation","locationValue","location","locationId","templateStoreSlice","employees","defaultData","locationInfo","totalDefaultRecords","selectedParams","defaultParams","locationParams","selectedTemplate","branchBanksSlice","selectedBank","selectPermission","signatureImage","signatureImageBase64","stampImage","stampImageBase64","showWaterImage","showWaterImageBase64","getBank","EstimateCustomizationSlice","bank_data","ExpenseCustomizationSlice","AbilityContext","createContextualCan","Consumer","showHeaderImage","headerImage","headerImageBase64","showFooterBackground","footerBackgroundImage","footerBackgroundImage64","SaleInvoiceCustomizationSlice","PurchaseInvoiceReturnCustomizationSlice","getState","customerInvoice","forceLoad","PageNo","Page","PageSize","responseConsolidated","consolidated","consolidatedTotalRecords","getInvoiceActivityLogData","getReportingTags","getTypeData","getJournal","getColumns","res","appCustomerInvoiceSlice","deleteInvoice","vendorInvoice","activityLogs","reportingTags","totalLogsRecords","typeData","totalTypeRecords","typeParams","journal","cols","sort","b","sortNo","PurchaseOrderCustomizationSlice","GRNCustomizationSlice","PurchaseRequestCustomizationSlice","GrnReturnCustomizationSlice","layoutSlice","initialSkin","initialDirection","lastLayout","menuCollapsed","initialMenuCollapsed","footerType","navbarType","menuHidden","navbarColor","toolbarItems","handleRTL","handleSkin","handleLayout","handleFooterType","handleNavbarType","handleMenuHidden","handleLastLayout","handleNavbarColor","handleContentWidth","handleMenuCollapsed","handleRouterTransition","handleToolbarItems","SaleInvoiceReturnCustomizationSlice","PurchaseInvoiceCustomizationSlice","responseColumns","getCodeCustomization","customerInvoicePref","terms","notes","codeCustomization","columnSeq","SaleExportInvoiceCustomizationSlice","deliveryNotesCustomizationSlice","getInvoiceData","projectTransactions","invoiceParams","invoiceData","invoiceTotal","getSalesReturnData","getEstimateData","estParams","estData","estTotal","getPOData","getBillsData","getBillsReturnData","getExpensesData","getJournalData","projectTransactionsSlice","invoiceReturnData","journalData","expData","billsData","poData","billsReturnData","invoiceReturnTotal","poTotal","journalTotal","billsTotal","billsReturnTotal","expTotal","invoiceReturnParams","poParams","billsParams","journalParams","billsReturnParams","expParams","setShowDetail","showDetail","setSelectedIndex","selectedIndex","setSelectedCustomer","paramData","customers","selectedCustomer","loadDetail","withAmount","appCustomerSlice","employee","DemandCustomizationSlice","AdjustmentTypes","getAccountTypes","getAccountDetailTypes","getAccountSubDetailTypes","getAccounts","getAccountsCategories","getAccessableLocations","getDefaultLocations","coaAccountsSlice","accounts","accountCategories","accessableLocations","defaultLocations","accountTypes","accountDetailTypes","accountSubDetailTypes","sortedList","coaBalance","ServiceInvoice","consolidated_response","getExpenseActivityLogData","appPurchaseSlice","appPurchase","Expense","appPayments","setSelectedVendor","selectedVendor","appVendorSlice","appReceiptInLocationNotesSlice","JVCustomizationSlice","itlCustomizationSlice","rilCustomizationSlice","RecoveriesCustomizationSlice","responseCatColumns","cat_columns","purchaseReturnPref","salesReturnPref","responsePayment","BillHistory","paymentPlan","getCardsDetail","getCardsData","responseCurrent","cardsDetail","appInvoiceSlice","addingCard","consolidatedResponse","getJvActivityLogData","appJournalSlice","totalRecordsConsolidated","getPurchaseActivityLogData","appIssueToLocationNotesSlice","PaymentMadeCustomizationSlice","expensePreference","getStatus","getchat","getmsgs","getPriorityList","priorityList","fetchDetailData","ticketDetail","purchaseOrderPref","inventoryFieldsSlice","grnPref","deliveryNotePref","purchaseRequestPref","demandPref","purchaseInvoicePref","estimatePref","copyNotesToInvoice","copyTermsToInvoice","getDetailData","Recno","getSerialData","getAdjustmentData","appVatReturnsSlice","detail_data","serial_data","serial_header","totalSerialRecords","adjustment_data","adjustment_header","totalAdjustmentRecords","adjustment_params","detail_params","getUnCategories","getBanksChart","appBRS","bank_chart","un_categories","bank_chart_params","totalUnRecords","un_cat_params","salesOrdersInvoiceSlice","getUnAssigned","tillId","appPOSShifts","un_data","getApprovalData","advanceSettings","approval_params","posSettings","Customer","Vendor","ledgerReport","appBudgetSlice","getBookmarks","suggestions","bookmarks","updateBookmarked","query","handleSearchQuery","objectToUpdate","find","isBookmarked","bookmarkIndex","findIndex","splice","getMapAccounts","responseDefault","mapAccountsSlice","getNotifications","getAnnouncement","notificationSlice","notifications","announcement","getStorage","getFolderData","folderId","AccountFileManagerSlice","folder_data","files_data","storage_data","storage_params","folder_params","folders","files","tempParent","parentFolderId","AttachmentFileManagerSlice","appPurchaseOrdersSlice","purchaseOrders","appPurchaseReturnSlice","returnOutwards","appReturnInwardsSlice","appDeliveryNotesSlice","appEmployeeSlice","getRights","PolicyId","LocationId","FyearId","total_rights","rights","params_rights","getPolicyUsers","getUsers","total_users","policyUsers","params_policy","addPolicy","assignUser","permission","permissions","policy","updatePermission","updateRights","bulkUpdateRights","permissionsSlice","update_res","allData","selected","grouping","allRights","policyId","screenName","screenGroup","params_users","index","f","subIndex","AgingStore","data_detail","totalRecordsDetail","CustomerAgingStore","customerPref","getCorporateData","taxesSettings","corporate_data","getTaxSetting","withHeldTaxSlice","taxSetting","totalDetailRecords","reportingTagsSlice","vendorBalances","Amount","Exclusive_Amount","Inclusive_Amount","Rate","getLedgerData","bankLedgerReport","ledgerData","ledgerParams","appCorporateTaxSlice","appPayrollSlice","appPayrollPaymentsSlice","getTasks","appTodoSlice","task","todo","taskId","tasks","selectedTask","q","tag","reOrderTasks","selectTask","invoices","totalPages","appAreas","datatablesSlice","OpeningStockSlice","accountDetailSlice","rootReducer","auth","coa","users","mapAccounts","demands","demand","purchaseRequests","deliveryNotes","customerRecurrenceInvoice","customerEstimate","issueToLocations","receiptInLocations","journalRecurrence","returnInwards","taxTypes","areas","GRN","GRNReturn","payments","receiving","vendors","designations","departments","allowances","payAllowances","payDeductions","payLeaves","payAdvances","deductions","salesMan","costCenter","creditTerms","fYear","dataTables","inventoryItems","inventoryBrands","inventoryColors","inventoryCostCenters","inventoryDepartments","inventoryMeasuringUnits","inventorySeasons","inventorySizes","inventoryCategories","inventorySubCategories","TenantCurrencies","profit","projectProfit","balanceSheet","trialBalance","aging","customerAging","TaxCodeReport","TaxCodeDetailReport","saleInvoiceCustomization","SalesPackingSlipCustomization","SalesDeliveryNoteCustomization","saleInvoiceReturnCustomization","purchaseInvoiceCustomization","purchaseInvoiceReturnCustomization","expenseInvoiceCustomization","stockReports","singleItemReport","itemAdjustment","adjustmentTypes","favStore","poCustomization","prCustomization","demandCustomization","grnCustomization","deliveryNotesCustomization","itlCustomization","rilCustomization","openingStock","estimateCustomization","recoveriesCustomization","paymentMadeCustomization","grnReturnCustomization","saleExportInvoiceCustomization","templateStore","vendorPref","expense","customerInvoiceEmail","customerAdvance","vendorAdvance","CustomerBalance","payableSummary","paymentMade","PaymentReceived","creditNoteDetail","VendorCreditDetail","InvoiceDetail","projectInvoiceDetail","BillsDetail","branchBanks","accountDetailSelector","JVCustomization","itemValuation","salesReport","purchaseReport","recurringBill","recurringExpense","fileManager","attachmentManager","posTills","posShifts","posCashTransfer","posEntry","subscriptionInformation","tickets","customerPOSInvoice","projects","vatReturn","vatPayment","corporatePayment","brs","budget","payroll","payrollPayment","payPeriods","BillableDetail","itemConsumption","billsApprovals","customerInvoiceApprovals","jvApprovals","expenseApprovals","corporateTax","withHeldTax","inventoryFields","appReducer","combineReducers","rootReducers","store","configureStore","reducer","middleware","getDefaultMiddleware","serializableCheck","getAllData","getUser","appUsersSlice","selectedUser","appRecurringJournalSlice","appDemandsSlice","appDemandSlice","appPurchaseRequestsSlice","appTenantCurrencies","appRecurringBillSlice","appRecurringExpenseSlice","appTaxTypes","l","recNo","appGRNSlice","appGRNReturnsSlice","GRNReturns","customerRecurrenceInvoiceSlice","appInventoryItem","appInventoryBrand","appInventoryColor","appInventoryCostCenter","appInventoryDepartment","appCreditTerms","appPOSTills","appPOSCashTransfer","POSEntrySlice","appInventoryMeasuringUnit","appInventorySeason","appinventorySize","appInventoryCategory","appInventorySubCategory","appDesignations","appDepartments","appAllowances","appPayAllowancesSlice","appPayDeductionsSlice","appPayLeavesSlice","appPayAdvancesSlice","appDeductions","appCostCenter","appFinancialYear","getCompareData","compareWith","ProfitLossStore","compare_data","compare_columns","compare_params","dataList","r","grossData","incomeList","sortLvl","income","costSaleList","costOSale","expenseList","otherExpList","otherExp","otherIncomeList","otherIncome","headName","formula","netProfit","netData","net","detailData","list_item","projectId","ProjectProfitLossStore","transactionCurrency","transactionCurrencyCode","transactionCurrencySymbol","transactionCurrencyName","BalanceSheetStore","currentAssetsList","cAssets","caceList","cashACE","accountRecList","accountRec","nonCAssetsList","nonCAssets","fixedAssetsList","fixedAssets","ownerEqList","ownerEq","ownerEq2","cLiabilitiesList","cLiabilities","accPayableList","accPayable","creditCardList","creditCard","nonCLiabilitiesList","nonCLiabilities","totalAssets","spliceIndex","totalLiabilities","Location","TrailBalanceStore","d","TaxCodeReportDetail","TaxCodeDetailReportDetail","getDataLocation","StockReportSlice","SingleItemReportSlice","ItemValuationReportSlice","useDispatch","useParams","ItemAdjustmentSlice","ItemConsumptionSlice","responseVeri","responseLv3","responseLv4","allUsers","veriData","lv3Data","lv4Data","approvers","verifiers","lv3Users","lv4Users","paymentReceived","billableDetail","overdue","appCustomerPOSInvoiceSlice","appProjectsSlice","appVatPaymentsSlice","appCorporatePaymentsSlice","appPayPeriodsSlice","AppDefaultsContext","AppDefaultsProvider","useSelector","setDefaultCurrency","currencies","setCurrencies","unauthorized","setUnauthorized","defaultCostLocation","setDefaultCostLocation","defaultTanent","setDefaultTanent","ip","long","lat","systemInfo","setSystemInfo","loadDefaultCostLocation","loginLocationId","loadDefaultTanent","loginTenantId","tenantDetails","tanent","ele","tenantId","then","base64","base64Logo","catch","setDefaultResetAuthorized","loadTenantCurrencies","defCurrency","isDefaultCurrency","getIp","json","ipApiResponse","getGeoLocation","showError","showPosition","position","coords","longitude","latitude","navigator","geolocation","getCurrentPosition","getSystemFingerprint","fingerPrint","updateTanantLogo","updated","values","useMemo","all","existingAbility","Ability","Button","Ripple","onClick","rest","mounted","setMounted","isRippling","setIsRippling","y","setCoords","classnames","rect","getBoundingClientRect","clientX","left","clientY","top","i18n","Backend","LanguageDetector","initReactI18next","init","lng","backend","loadPath","fallbackLng","debug","keySeparator","react","useSuspense","interpolation","escapeValue","formatSeparator","register","serviceWorker","registration","scope","LazyApp","lazy","ReactDOM","render","StrictMode","fallback","AppDefaults","newestOnTop","getElementById"],"mappings":"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","file":"static/js/main.d915fa77.chunk.js","sourcesContent":["// ** Checks if an object is empty (returns boolean)\nimport {ToWords} from \"to-words\";\nimport base64url from \"base64-url\";\nimport queryString from \"query-string\";\n\nexport const isObjEmpty = obj => Object.keys(obj).length === 0\n\n\nexport const getMonthName = (monthIndex) => {\n switch (monthIndex) {\n case 1:\n return \"January\";\n case 2:\n return \"February\";\n case 3:\n return \"March\";\n case 4:\n return \"April\";\n case 5:\n return \"May\";\n case 6:\n return \"June\";\n case 7:\n return \"July\";\n case 8:\n return \"August\";\n case 9:\n return \"September\";\n case 10:\n return \"October\";\n case 11:\n return \"November\";\n case 12:\n return \"December\";\n default:\n return \"\";\n }\n};\n// ** Returns K format from a number\nexport const kFormatter = num => {\n if (num > 999 && num < 999999) {\n return `${(num / 1000).toFixed(1)}k`\n } else if (num > 999999 && num < 999999999) {\n return `${(num / 1000000).toFixed(1)}M`\n } else if (num > 999999999 && num < 999999999999) {\n return `${(num / 1000000000).toFixed(1)}B`\n } else if (num > 999999999) {\n return `${(num / 1000000000).toFixed(1)}T`\n } else if (num < -999 && num > -999999) {\n return `${(num / 1000).toFixed(1)}k`\n } else if (num < -999999 && num > -999999999) {\n return `${(num / 1000000).toFixed(1)}M`\n } else if (num < -999999999 && num > -999999999999) {\n return `${(num / 1000000000).toFixed(1)}B`\n } else if (num < -999999999) {\n return `${(num / 1000000000).toFixed(1)}T`\n } else {\n return (num > 999 || num < -999 ? `${(num / 1000).toFixed(1)}k` : num)\n }\n}\n\n// ** Converts HTML to string\nexport const htmlToString = html => html.replace(/<\\/?[^>]+(>|$)/g, '')\n\n// ** Checks if the passed date is today\nconst isToday = date => {\n const today = new Date()\n return (\n /* eslint-disable operator-linebreak */\n date.getDate() === today.getDate() &&\n date.getMonth() === today.getMonth() &&\n date.getFullYear() === today.getFullYear()\n /* eslint-enable */\n )\n}\n\n/**\n ** Format and return date in Humanize format\n ** Intl docs: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/format\n ** Intl Constructor: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat\n * @param {String} value date to format\n * @param {Object} formatting Intl object to format with\n */\nexport const formatDate = (value, formatting = {month: 'short', day: 'numeric', year: 'numeric'}) => {\n if (!value) return value\n return new Intl.DateTimeFormat('en-US', formatting).format(new Date(value))\n}\n\n// ** Returns short month of passed date\nexport const formatDateToMonthShort = (value, toTimeForCurrentDay = true) => {\n const date = new Date(value)\n let formatting = {month: 'short', day: 'numeric'}\n\n if (toTimeForCurrentDay && isToday(date)) {\n formatting = {hour: 'numeric', minute: 'numeric'}\n }\n\n return new Intl.DateTimeFormat('en-GB', formatting).format(new Date(value))\n}\n\nexport const tablesDateFormat = 'mmm d, yyyy';\n\nexport const formatCurrency = (value = 0, defaultCurrency, showCurrency = true, roundingDigits = 2) => {\n let options = {};\n\n let user = JSON.parse(localStorage.getItem('userData'));\n if(user) {\n roundingDigits = user.roundingDigit;\n }\n if (roundingDigits > -1) {\n options = {\n minimumFractionDigits: roundingDigits > 2 ? 2 : roundingDigits, // (this suffices for whole numbers, but will print 2500.10 as $2,500.1)\n maximumFractionDigits: roundingDigits, // (causes 2500.99 to be printed as $2,501)\n };\n }\n if (showCurrency) {\n options.style = 'currency';\n options.currency = `${defaultCurrency?.code !== \"\" ? defaultCurrency?.code ?? \"USD\" : \"USD\"}`;\n options.currencyDisplay = `code`;\n }\n\n let formatter = new Intl.NumberFormat('en-US', options);\n\n return formatter.format(value);\n}\n\nexport const imageUrlToBase64 = async (url) => {\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n resolve(reader.result);\n };\n reader.onerror = reject;\n reader.readAsDataURL(blob);\n });\n } catch (error) {\n console.error('Error converting image to base64:', error);\n }\n}\n\nexport const inWords = (number, defaultCurrency) => {\n const toWords = new ToWords({\n localeCode: 'en-US',\n converterOptions: {\n currency: true,\n ignoreDecimal: false,\n ignoreZeroCurrency: false,\n doNotAddOnly: false,\n currencyOptions: { // can be used to override defaults for the selected locale\n name: defaultCurrency?.code,\n plural: defaultCurrency?.code,\n symbol: defaultCurrency.symbol,\n fractionalUnit: {\n name: defaultCurrency.subUnit ?? \"\",\n plural: defaultCurrency.subUnit ?? \"\",\n symbol: '',\n },\n }\n }\n });\n return toWords.convert(number);\n}\n\nexport const getTotal = (data) => {\n\n let total = 0;\n\n if ((data?.childs || []).length > 0) {\n data.childs.map(e => {\n let subTotal = 0;\n total += e.amount;\n subTotal += e.amount;\n if (e.childs) {\n total += getTotal(e)\n e.childAmount = subTotal - e.amount;\n }\n })\n }\n\n return total;\n}\n\nexport const getTotalCompare = (data, column) => {\n\n let total = 0;\n\n if ((data?.childs || []).length > 0) {\n data.childs.map(e => {\n let subTotal = 0;\n total += e.dynamicColumns ? e.dynamicColumns[column] : 0;\n subTotal += e.dynamicColumns ? e.dynamicColumns[column] : 0;\n if (e.childs) {\n total += getTotalCompare(e, column)\n }\n })\n }\n\n return total;\n}\n\nexport const collectChilds = (data, columns) => {\n let data_list = [];\n\n for (let i = 0; i < (data ?? []).length; i++) {\n let childs = data[i].childs ?? [];\n data[i].childs = undefined;\n let array = [];\n for (let j = 0; j < columns.length; j++) {\n array.push(data[i].dynamicColumns[columns[j]]);\n }\n const isAllZero = array.every(item => item === 0);\n const cChilds = collectChilds(childs, columns);\n if (!isAllZero || cChilds.length > 0) {\n data_list.push({...data[i]})\n }\n data_list.push(...cChilds);\n }\n\n return data_list;\n}\n\nexport const getTotalTrialBalance = (data) => {\n let c_total_obdr = 0;\n let c_total_obcr = 0;\n let c_total_dr = 0;\n let c_total_cr = 0;\n let c_total_cbdr = 0;\n let c_total_cbcr = 0;\n for (let i = 0; i < data.childs.length; i++) {\n let {\n total_open_dr,\n total_open_cr,\n total_dr,\n total_cr,\n total_close_dr,\n total_close_cr\n } = (data.childs[i].childs || []).length > 0 ? getTotalTrialBalance(data.childs[i]) : {\n total_open_dr: 0,\n total_open_cr: 0,\n total_dr: 0,\n total_cr: 0,\n total_close_dr: 0,\n total_close_cr: 0\n };\n let closeBalance = (data.childs[i].obdr + data.childs[i].dr) - (data.childs[i].obcr + data.childs[i].cr);\n if (closeBalance >= 0) {\n data.childs[i].cbdr = closeBalance;\n data.childs[i].cbcr = 0;\n } else {\n data.childs[i].cbcr = -1 * closeBalance;\n data.childs[i].cbdr = 0;\n }\n data.childs[i].total_open_dr = (total_open_dr + data.childs[i].obdr);\n data.childs[i].total_open_cr = total_open_cr + data.childs[i].obcr;\n data.childs[i].total_dr = total_dr + data.childs[i].dr;\n data.childs[i].total_cr = total_cr + data.childs[i].cr;\n data.childs[i].total_close_dr = total_close_dr + data.childs[i].cbdr;\n data.childs[i].total_close_cr = total_close_cr + data.childs[i].cbcr;\n\n let totalCloseBalance = (data.childs[i].total_open_dr + data.childs[i].total_dr) - (data.childs[i].total_open_cr + data.childs[i].total_cr);\n\n if (totalCloseBalance >= 0) {\n data.childs[i].total_close_dr = totalCloseBalance;\n data.childs[i].total_close_cr = 0;\n } else {\n data.childs[i].total_close_cr = -1 * totalCloseBalance;\n data.childs[i].total_close_dr = 0;\n }\n\n c_total_obdr += data.childs[i].total_open_dr;\n c_total_obcr += data.childs[i].total_open_cr;\n c_total_dr += data.childs[i].total_dr;\n c_total_cr += data.childs[i].total_cr;\n c_total_cbdr += data.childs[i].total_close_dr;\n c_total_cbcr += data.childs[i].total_close_cr;\n }\n data.total_open_dr = c_total_obdr;\n data.total_open_cr = c_total_obcr;\n data.total_dr = c_total_dr;\n data.total_cr = c_total_cr;\n data.total_close_dr = c_total_cbdr;\n data.total_close_cr = c_total_cbcr;\n return data;\n}\n/**\n ** Return if user is logged in\n ** This is completely up to you and how you want to store the token in your frontend application\n * ? e.g. If you are using cookies to store the application please update this function\n */\nexport const isUserLoggedIn = () => localStorage.getItem('userData')\nexport const getUserData = () => JSON.parse(localStorage.getItem('userData'))\n\n/**\n ** This function is used for demo purpose route navigation\n ** In real app you won't need this function because your app will navigate to same route for each users regardless of ability\n ** Please note role field is just for showing purpose it's not used by anything in frontend\n ** We are checking role just for ease\n * ? NOTE: If you have different pages to navigate based on user ability then this function can be useful. However, you need to update it.\n * @param {String} userRole Role of user\n */\nexport const getHomeRouteForLoggedInUser = userRole => {\n if (userRole === 'admin') return '/'\n if (userRole === 'client') return '/'// '/access-control'\n // return '/login'\n return '/'\n}\n\n// ** React Select Theme Colors\nexport const selectThemeColors = theme => ({\n ...theme,\n colors: {\n ...theme.colors,\n primary25: '#1F20541a', // for option hover bg-color\n primary: '#1F2054', // for selected option bg-color\n neutral10: '#2d2e8f', // for tags bg-color\n neutral20: '#ededed', // for input border-color\n neutral30: '#ededed' // for input hover border-color\n }\n})\n\nexport const conditionalRowStylesForms = [\n {\n when: (row) => row.isDeleted,\n style: {\n display: 'none',\n },\n },\n];\n\n\nexport const debounce = (callback, timeout = 300) => {\n let timer\n return (...args) => {\n clearTimeout(timer)\n timer = setTimeout(() => {\n callback(...args)\n }, timeout)\n }\n}\n\nexport function asyncDebounce(inner, ms = 0) {\n let timer = null\n let resolves = []\n\n return function (...args) {\n // Run the function after a certain amount of time\n clearTimeout(timer)\n timer = setTimeout(() => {\n // Get the result of the inner function, then apply it to the resolve function of\n // each promise that has been created since the last time the inner function was run\n const result = inner(...args)\n resolves.forEach(r => r(result))\n resolves = []\n }, ms)\n\n return new Promise(r => resolves.push(r))\n }\n}\n\nexport const getFingerprint = (callback) => {\n const RTCPeerConnection = window.webkitRTCPeerConnection || window.mozRTCPeerConnection\n\n const addrs = Object.create(null)\n addrs[\"0.0.0.0\"] = false\n\n const fingerprint = () => {\n const rtc = new RTCPeerConnection({iceServers: []})\n if (1 || window.mozRTCPeerConnection) {\n rtc.createDataChannel('', {reliable: false})\n }\n const updateDisplay = (newAddr) => {\n if (!(newAddr in addrs)) addrs[newAddr] = true\n }\n\n const grepSDP = (sdp) => {\n sdp.split('\\r\\n').forEach((line) => {\n if (~line.indexOf(\"a=candidate\")) {\n const parts = line.split(' '),\n addr = parts[4],\n type = parts[7]\n if (type === 'host') updateDisplay(addr)\n } else if (~line.indexOf(\"c=\")) {\n const parts = line.split(' '),\n addr = parts[2]\n updateDisplay(addr)\n }\n })\n const displayAddrs = Object.keys(addrs).filter((k) => addrs[k])\n callback(displayAddrs)\n }\n\n rtc.onicecandidate = (evt) => evt.candidate && grepSDP(\"a=\".concat(evt.candidate.candidate))\n\n rtc.createOffer((offerDesc) => {\n grepSDP(offerDesc.sdp)\n rtc.setLocalDescription(offerDesc)\n }, (e) => {\n console.warn(\"offer failed\", e)\n })\n }\n\n\n if (RTCPeerConnection) {\n fingerprint()\n } else {\n callback([])\n }\n}\n\nconst Base64toBlob = (b64Data, contentType = '', sliceSize = 512) => {\n const byteCharacters = Buffer.from(b64Data, 'base64')\n const byteArrays = []\n\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize)\n\n const byteNumbers = new Array(slice.length)\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i)\n }\n\n const byteArray = new Uint8Array(byteNumbers)\n byteArrays.push(byteArray)\n }\n\n const blob = new Blob(byteArrays, {type: contentType})\n return blob\n}\n\nexport const filterConfigurationList = (listName, listsConfigurations) => {\n return listsConfigurations?.filter((item) => item.listName === listName)?.map(item => {\n return {\n ...item,\n columnName: item.columnName[0].toLowerCase() + item.columnName.slice(1, item.columnName.length)\n }\n }) || []\n}\n\nexport const checkAndSetNumVal = (val, old, maxFloat, key = null) => {\n\n let value = val.target.value\n console.log(value.includes('-'), value !== \"\", value)\n if (value !== \"\") {\n if (isNaN(value)) {\n value = old\n } else if (value.includes('-')) {\n value = \"\"\n } else if (value.includes('.')) {\n value = parseFloat((parseFloat(value)).toFixed(maxFloat))\n }\n }\n\n // value = isNaN(parseFloat(value))?''\n return key ? {[key]: value} : {target: {name: val.target.name, value}}\n\n}\n\nexport const checkAndSetNumValPR = (val, old, maxFloat, allowNegative, key = null) => {\n\n let value = val.target.value\n console.log(value.includes('-'), value !== \"\", value)\n if (value !== \"\") {\n if (isNaN(value)) {\n value = old\n } else if (value.includes('-') && !allowNegative) {\n value = \"\"\n } else if (value.includes('.')) {\n value = parseFloat((parseFloat(value)).toFixed(maxFloat))\n }\n }\n\n // value = isNaN(parseFloat(value))?''\n return key ? {[key]: value} : {target: {name: val.target.name, value}}\n\n}\n\nconst cvalue = (value) => {\n return isNaN(parseFloat(value)) ? 0 : parseFloat(value);\n};\n\nexport const calculateValuesAndTax = (invoice, tempDetail, roundingDigit) => {\n const exAmount = cvalue(tempDetail.qty) * cvalue(tempDetail.transactionCurrencyRate);\n const totalAmount = cvalue(tempDetail.qty) * cvalue(tempDetail.transactionCurrencyRate);\n tempDetail.exAmount = cvalue((exAmount ?? 0));\n tempDetail.discountAmount = tempDetail.discountType === \"\" || tempDetail.discountType === \"%\" || tempDetail.discountType === \"DT\" ? exAmount * (cvalue(tempDetail.discountVal) / 100) : (tempDetail.qty) * cvalue(tempDetail.discountVal);\n tempDetail.discountAmount = cvalue(tempDetail.discountAmount);\n tempDetail.totalAmount = totalAmount;\n tempDetail.exAmount = cvalue((tempDetail.exAmount - tempDetail.discountAmount));\n\n const taxPer = tempDetail.taxPer !== null ? tempDetail.taxPer : invoice.taxPer;\n if (invoice.invoiceTaxType === \"Exclusive\") {\n\n if (taxPer) {\n tempDetail.taxAmount = cvalue(cvalue(tempDetail.exAmount) * (taxPer / 100));\n } else {\n tempDetail.taxAmount = 0;\n }\n tempDetail.exAmount = cvalue(tempDetail.exAmount);\n tempDetail.inAmount = cvalue((parseFloat(tempDetail.exAmount) + parseFloat((tempDetail.taxAmount ?? 0))));\n } else if (invoice.invoiceTaxType === \"OutOfScope\") {\n tempDetail.taxType = null;\n tempDetail.taxPer = 0;\n tempDetail.taxText = \"\";\n tempDetail.taxAmount = 0;\n tempDetail.inAmount = cvalue((parseFloat(tempDetail.exAmount) + parseFloat((tempDetail.taxAmount ?? 0))));\n } else {\n if (taxPer) {\n tempDetail.taxAmount = cvalue((cvalue(tempDetail.exAmount) / (taxPer + 100)) * taxPer);\n } else {\n tempDetail.taxAmount = 0;\n }\n tempDetail.inAmount = cvalue(tempDetail.exAmount);\n tempDetail.exAmount = cvalue((tempDetail.exAmount - tempDetail.taxAmount));\n }\n\n return tempDetail;\n}\n\nexport const generateTrailBalance = (trail_balance, level) => {\n let result;\n if (level === 5)\n result = groupBy(trail_balance, (c) => c.l5recno);\n else if (level === 4)\n result = groupBy(trail_balance, (c) => c.l4recno);\n else if (level === 3)\n result = groupBy(trail_balance, (c) => c.l3recno);\n else if (level === 2)\n result = groupBy(trail_balance, (c) => c.l2recno);\n else if (level === 1)\n result = groupBy(trail_balance, (c) => c.l1recno);\n else\n result = [];\n return result;\n}\n\nexport const generateTrailBalanceData = (trail_balance, levelsAvailability) => {\n let resultGenerated = [];\n let result = generateTrailBalance(trail_balance, 1);\n Object.keys(result).forEach(function (key, index) {\n let data = {\n key: key,\n Level_Name: \"\",\n Level_Code: \"\",\n total_open_dr: 0,\n total_open_cr: 0,\n dr: 0,\n cr: 0,\n total_close_dr: 0,\n total_close_cr: 0,\n }\n\n let totalOpenDr = 0;\n let totalOpenCr = 0;\n let totalCloseDr = 0;\n let totalCloseCr = 0;\n let totalDr = 0;\n let totalCr = 0;\n\n result[key].map((groupedItems, i) => {\n data.Level_Name = groupedItems.Level_1_Name;\n data.Level_Code = groupedItems.Level_1_Code;\n data.total_open_dr = groupedItems.obdr;\n data.total_open_cr = groupedItems.obcr;\n data.dr = groupedItems.dr;\n data.cr = groupedItems.cr;\n result[key][i].cbdr = groupedItems.obdr + groupedItems.dr;\n result[key][i].cbcr = groupedItems.obcr + groupedItems.cr;\n\n if (result[key][i].cbdr - result[key][i].cbcr > 0) {\n result[key][i].cbdr = result[key][i].cbdr - result[key][i].cbcr;\n result[key][i].cbcr = 0;\n } else {\n result[key][i].cbcr = (result[key][i].cbdr - result[key][i].cbcr) * -1;\n result[key][i].cbdr = 0;\n }\n\n totalOpenDr += groupedItems.obdr;\n totalOpenCr += groupedItems.obcr;\n let valueClose = (groupedItems.obdr + groupedItems.dr) - (groupedItems.obcr + groupedItems.cr);\n totalCloseDr += (valueClose > 0 ? valueClose : 0);\n totalCloseCr += (valueClose >= 0 ? 0 : (valueClose * -1));\n totalDr += groupedItems.dr;\n totalCr += groupedItems.cr;\n });\n\n let resultGenerated2 = [];\n if (levelsAvailability.l2 && levelsAvailability.l3) {\n let result2 = generateTrailBalance(result[key], 2);\n Object.keys(result2).forEach(function (key2, index2) {\n let data2 = {\n key: key2,\n Level_Name: \"\",\n Level_Code: \"\",\n total_open_dr: 0,\n total_open_cr: 0,\n dr: 0,\n cr: 0,\n total_close_dr: 0,\n total_close_cr: 0,\n }\n\n let totalOpenDr2 = 0;\n let totalOpenCr2 = 0;\n let totalCloseDr2 = 0;\n let totalCloseCr2 = 0;\n let totalDr2 = 0;\n let totalCr2 = 0;\n\n result2[key2].map((groupedItems, i) => {\n data2.Level_Name = groupedItems.Level_2_Name;\n data2.Level_Code = groupedItems.Level_2_Code;\n data2.total_open_dr = groupedItems.obdr;\n data2.total_open_cr = groupedItems.obcr;\n data2.dr = groupedItems.dr;\n data2.cr = groupedItems.cr;\n result2[key2][i].cbdr = groupedItems.obdr + groupedItems.dr;\n result2[key2][i].cbcr = groupedItems.obcr + groupedItems.cr;\n if (result2[key2][i].cbdr - result2[key2][i].cbcr > 0) {\n result2[key2][i].cbdr = result2[key2][i].cbdr - result2[key2][i].cbcr;\n result2[key2][i].cbcr = 0;\n } else {\n result2[key2][i].cbcr = (result2[key2][i].cbdr - result2[key2][i].cbcr) * -1;\n result2[key2][i].cbdr = 0;\n }\n totalOpenDr2 += groupedItems.obdr;\n totalOpenCr2 += groupedItems.obcr;\n let valueClose = (groupedItems.obdr + groupedItems.dr) - (groupedItems.obcr + groupedItems.cr);\n totalCloseDr2 += (valueClose >= 0 ? valueClose : 0);\n totalCloseCr2 += (valueClose >= 0 ? 0 : (valueClose * -1));\n totalDr2 += groupedItems.dr;\n totalCr2 += groupedItems.cr;\n });\n\n let resultGenerated3 = [];\n\n if (levelsAvailability.l3 && levelsAvailability.l4) {\n let result3 = generateTrailBalance(result2[key2], 3);\n Object.keys(result3).forEach(function (key3, index2) {\n let data3 = {\n key: key3,\n Level_Code: \"\",\n Level_Name: \"\",\n total_open_dr: 0,\n total_open_cr: 0,\n dr: 0,\n cr: 0,\n total_close_dr: 0,\n total_close_cr: 0,\n }\n\n let totalOpenDr3 = 0;\n let totalOpenCr3 = 0;\n let totalCloseDr3 = 0;\n let totalCloseCr3 = 0;\n let totalDr3 = 0;\n let totalCr3 = 0;\n\n result3[key3].map((groupedItems, i) => {\n data3.Level_Name = groupedItems.Level_3_Name;\n data3.Level_Code = groupedItems.Level_3_Code;\n data3.total_open_dr = groupedItems.obdr;\n data3.total_open_cr = groupedItems.obcr;\n data3.dr = groupedItems.dr;\n data3.cr = groupedItems.cr;\n result3[key3][i].cbdr = groupedItems.obdr + groupedItems.dr;\n result3[key3][i].cbcr = groupedItems.obcr + groupedItems.cr;\n if (result3[key3][i].cbdr - result3[key3][i].cbcr > 0) {\n result3[key3][i].cbdr = result3[key3][i].cbdr - result3[key3][i].cbcr;\n result3[key3][i].cbcr = 0;\n } else {\n result3[key3][i].cbcr = (result3[key3][i].cbdr - result3[key3][i].cbcr) * -1;\n result3[key3][i].cbdr = 0;\n }\n totalOpenDr3 += groupedItems.obdr;\n totalOpenCr3 += groupedItems.obcr;\n let valueClose = (groupedItems.obdr + groupedItems.dr) - (groupedItems.obcr + groupedItems.cr);\n totalCloseDr3 += (valueClose >= 0 ? valueClose : 0);\n totalCloseCr3 += (valueClose >= 0 ? 0 : (valueClose * -1));\n totalDr3 += groupedItems.dr;\n totalCr3 += groupedItems.cr;\n });\n\n data3.total_open_dr = totalOpenDr3;\n data3.total_open_cr = totalOpenCr3;\n data3.total_close_dr = totalCloseDr3;\n data3.total_close_cr = totalCloseCr3;\n data3.dr = totalDr3;\n data3.cr = totalCr3;\n data3.children = result3[key3];\n resultGenerated3.push(data3);\n })\n }\n\n data2.total_open_dr = totalOpenDr2;\n data2.total_open_cr = totalOpenCr2;\n data2.total_close_dr = totalCloseDr2;\n data2.total_close_cr = totalCloseCr2;\n data2.dr = totalDr2;\n data2.cr = totalCr2;\n if (levelsAvailability.l3 && levelsAvailability.l4) {\n data2.child = resultGenerated3;\n } else {\n data2.children = result2[key2];\n }\n resultGenerated2.push(data2);\n })\n }\n\n data.total_open_dr = totalOpenDr;\n data.total_open_cr = totalOpenCr;\n data.total_close_dr = totalCloseDr;\n data.total_close_cr = totalCloseCr;\n data.dr = totalDr;\n data.cr = totalCr;\n if (levelsAvailability.l2 && levelsAvailability.l3) {\n data.child = resultGenerated2;\n } else {\n data.children = result[key];\n }\n resultGenerated.push(data);\n });\n return resultGenerated;\n}\n\nexport const groupBy = function (xs, key) {\n console.log(xs, key, \"<><><><><>\")\n return xs?.reduce(function (rv, x) {\n (rv[x[key]] = rv[x[key]] || []).push(x);\n return rv;\n }, {});\n};\n\nexport const getDateFromTerm = (term = \"\", invDate = new Date()) => {\n let dueDate = new Date(new Date(invDate).toUTCString());\n \n if (term.toLowerCase() === \"due on receipt\") {\n dueDate.setDate(dueDate.getDate());\n } else if (term.toLowerCase() === \"net 15\") {\n dueDate.setDate(dueDate.getDate() + 15);\n } else if (term.toLowerCase() === \"net 30\") {\n dueDate.setDate(dueDate.getDate() + 30);\n } else if (term.toLowerCase() === \"net 45\") {\n dueDate.setDate(dueDate.getDate() + 45);\n } else if (term.toLowerCase() === \"net 60\") {\n dueDate.setDate(dueDate.getDate() + 60);\n\n } else if (term.toLowerCase() === \"due end of the month\") {\n dueDate = new Date(dueDate.getFullYear(), dueDate.getMonth() + 1, 0);\n } else if (term.toLowerCase() === \"due end of next month\") {\n dueDate = new Date(dueDate.getFullYear(), dueDate.getMonth() + 2, 0);\n } else {\n let days = 0;\n try {\n days = parseInt(term);\n } catch (e) {\n days = 0;\n }\n dueDate.setDate(dueDate.getDate() + (isNaN(days) ? 0 : days));\n }\n\n return new Date(parseInt(`${Date.UTC(dueDate.getFullYear(), dueDate.getMonth(), dueDate.getDate())}`));\n}\n\nexport const getTransactionalRate = (base_rate, conversionRate, roundingDigit = 2) => {\n if (!base_rate) {\n base_rate = 0;\n }\n\n if (!conversionRate || conversionRate === 0) {\n conversionRate = 1;\n }\n\n return parseFloat((base_rate / conversionRate))\n}\n\nexport const printPageStyle = `\n @media print {\n .table-blue-footer {\n position: absolute;\n bottom: 0px;\n left: 0px;\n width: 100%;\n }\n\n body {\n position: relative;\n zoom: 1.3;\n width: 100%;\n margin: 0;\n padding: 0;\n overflow: visible;\n }\n\n #footer {\n page-break-after: always !important;\n position: fixed !important;\n bottom: 0px !important;\n left: 0px !important;\n width: 100% !important;\n }\n\n @page {\n marginLeft: 0.5mm;\n marginRight: 0.5mm;\n marginTop: 0mm;\n marginBottom: 0mm;\n }\n\n header,\n footer {\n display: none !important;\n }\n}`;\n\nexport const printPageStyleTable = `\n @media print {\n .table-blue-footer {\n position: absolute;\n bottom: 0px;\n left: 0px;\n width: 100%;\n }\n\n body {\n position: relative;\n zoom: 0.6;\n width: 100%;\n margin: 0;\n padding: 0;\n overflow: visible;\n }\n\n #footer {\n page-break-after: always !important;\n position: fixed !important;\n bottom: 0px !important;\n left: 0px !important;\n width: 100% !important;\n }\n\n @page {\n marginLeft: 0.5mm;\n marginRight: 0.5mm;\n marginTop: 0mm;\n marginBottom: 0mm;\n }\n\n header,\n footer {\n display: none !important;\n }\n}`;\n\nexport const printPage80Style = (pageHeight) => { return `\n @media print {\n width: 80mm;\n height: ${pageHeight * 10 + 100}mm;\n .table-blue-footer {\n position: absolute;\n bottom: 0px;\n left: 0px;\n width: 100%;\n } \n \n body {\n position: relative;\n zoom: 1.3;\n width: 100%;\n margin: 0;\n padding: 0;\n overflow: visible;\n }\n \n #footer {\n page-break-after: always !important;\n position: fixed !important;\n bottom: 0px !important;\n left: 0px !important;\n width: 100% !important;\n }\n \n @page {\n marginLeft: 0.5mm;\n marginRight: 0.5mm;\n marginTop: 0mm;\n marginBottom: 0mm;\n }\n \n header,\n footer {\n display: none !important;\n }\n}`\n};\n\n\nexport const convertFoldersToArray = (array = []) => {\n let converted_array = [];\n\n for(let i = 0 ; i < array.length; i++){\n let tempObj = {...array[i]};\n let subFolders = tempObj.subFolders??[];\n tempObj.subFolders = undefined;\n converted_array.push(tempObj);\n\n if(subFolders.length > 0){\n converted_array.push(...(convertFoldersToArray(subFolders)))\n }\n }\n\n return converted_array;\n}\n\nexport const encodeParameters = (parameters) => {\n return base64url.encode((queryString.stringify(parameters)))\n}\n\nexport const decodeParameters = (encoded) => {\n let decodedParams = base64url.decode(encoded);\n return queryString.parse(decodedParams);\n}\n\nexport const showTax = (userData, date) => {\n return userData.isTaxRegistered || new Date(date??(new Date())).getTime() <= new Date((userData?.taxRegistrationDate??'1990-01-01T00:00:00').replace('T00:00:00', 'T23:59:59')).getTime();\n}\n\nexport const checkApprovalStatus = (approval_data, invoiceDetail, type) => {\n\n let status = true\n\n if(type.toLowerCase() === 'customerinvoice'){\n if(approval_data.isSalesApprovalLvl1RightsEnabled){\n if(!invoiceDetail[0].lvl1){\n status = false\n }\n }\n if(approval_data.isSalesApprovalLvl2RightsEnabled){\n if(!invoiceDetail[0].lvl2){\n status = false\n }\n }\n if(approval_data.isSalesApprovalLvl3RightsEnabled){\n if(!invoiceDetail[0].lvl3){\n status = false\n }\n }\n if(approval_data.isSalesApprovalLvl4RightsEnabled){\n if(!invoiceDetail[0].lvl4){\n status = false\n }\n }\n }\n\n return status\n}\n\nexport const arabicDayNames = [\n \"الأحد\",\n \"الإثنين\",\n \"الثلاثاء\",\n \"الأربعاء\",\n \"الخميس\",\n \"الجمعة\",\n \"السبت\",\n \"الأحد\",\n \"الإثنين\",\n \"الثلاثاء\",\n \"الأربعاء\",\n \"الخميس\",\n \"الجمعة\",\n \"السبت\",\n];\n\nexport const arabicMonthNames = [\n \"يناير\",\n \"فبراير\",\n \"مارس\",\n \"أبريل\",\n \"مايو\",\n \"يونيو\",\n \"يوليو\",\n \"أغسطس\",\n \"سبتمبر\",\n \"أكتوبر\",\n \"نوفمبر\",\n \"ديسمبر\",\n \"يناير\",\n \"فبراير\",\n \"مارس\",\n \"أبريل\",\n \"مايو\",\n \"يونيو\",\n \"يوليو\",\n \"أغسطس\",\n \"سبتمبر\",\n \"أكتوبر\",\n \"نوفمبر\",\n \"ديسمبر\",\n];\n\nexport const englishDayNames = [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\",\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n];\n\nexport const serverUrlAddress = 'serverUrlAddress';\n\nexport const englishMonthNames = [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n];","// You can customize the template with the help of this file\n\n//Template config options\nconst themeConfig = {\n app: {\n appName: `${process.env.REACT_APP_NAME}`,\n appLogoImage: require('@src/assets/images/logo/smart_logo.png').default\n },\n layout: {\n isRTL: localStorage.getItem(\"direction\") ?? false,\n skin: 'light', // light, dark, bordered, semi-dark\n routerTransition: 'fadeInLeft', // fadeIn, fadeInLeft, zoomIn, none or check this for more transition https://animate.style/\n type: 'vertical', // vertical, horizontal\n contentWidth: 'boxed', // full, boxed\n menu: {\n isHidden: false,\n isCollapsed: true\n },\n navbar: {\n // ? For horizontal menu, navbar type will work for navMenu type\n type: 'sticky', // static , sticky , floating, hidden\n backgroundColor: 'white' // BS color options [primary, success, etc]\n },\n footer: {\n type: 'hidden' // static, sticky, hidden\n },\n customizer: false,\n scrollTop: true // Enable scroll to top button\n }\n}\n\nexport default themeConfig\n","// ** Axios Imports\nimport axios from 'axios'\n\nexport const API_LOGIN = '/Login'\nexport const API_FORGOT_PASSWORD = '/Login/forgotpassword'\nexport const API_FORGOT_PASSWORD_RESET = '/Login/forgotpasswordreset'\nexport const API_FORGOT_PASSWORD_RESET_SUBMIT = '/Login/forgotpasswordresetsubmit'\nexport const API_REGISTER = '/Signup'\nexport const API_LOGIN_LOCATIONS = '/Login/PostLocations'\nexport const API_LOGIN_TOKEN = '/Login/PostToken'\n\nexport const Post = async (uri, data) => {\n try {\n\n const response = await axios.post(uri, data)\n return response.data\n } catch (error) {\n let er = error\n if (error.response) {\n er = error.response.data\n }\n return Promise.reject(er.error || er.message || er.title || er.errors || er)\n }\n}\n\nexport const Put = async (uri, data) => {\n try {\n const response = await axios.put(uri, data)\n return response.data\n } catch (error) {\n let er = error\n if (error.response) {\n er = error.response.data\n }\n return Promise.reject(er.error || er.message || er.title || er.errors || er)\n }\n}\n\nexport const Get = async (uri, params) => {\n try {\n const response = await axios.get(uri, { params })\n return response.data\n } catch (error) {\n let er = error\n if (error.response) {\n er = error.response.data\n }\n return Promise.reject(er.error || er.message || er.title || er.errors || er)\n }\n}\n\nexport const Delete = async (uri) => {\n try {\n const response = await axios.delete(uri)\n return response.data\n } catch (error) {\n let er = error\n if (error.response) {\n er = error.response.data\n }\n return Promise.reject(er.error || er.message || er.title || er.errors || er)\n }\n}\n\n","import { Fragment } from 'react'\nimport { Button, Modal, ModalBody, ModalFooter, ModalHeader } from 'reactstrap'\nimport Swal from 'sweetalert2'\nimport withReactContent from 'sweetalert2-react-content'\nimport {useTranslation} from \"react-i18next\";\n\nconst MySwal = withReactContent(Swal)\n\nexport const fireMessage = async (message, title = \"Message\", icon, props = {}) => {\n\n if(typeof message !== 'string'){\n message = message?.response?.data?.message || message?.data?.message || message?.message || message\n }\n\n if(icon === 'error'){\n icon = 'warning'\n }\n\n if(title.toLowerCase().includes('error')){\n title = title.replaceAll('Error' , 'Warning')\n title = title.replaceAll('ERROR' , 'WARNING')\n title = title.replaceAll('error' , 'warning')\n }\n return await MySwal.fire({\n icon,\n title,\n html: message,\n // footer: 'Why do I have this issue?',\n customClass: {\n confirmButton: 'btn btn-primary mx-1',\n cancelButton: 'btn btn-danger mx-1'\n },\n buttonsStyling: false,\n confirmButtonText: props.t ? props.t(\"Close\") : \"Close\",\n ...props\n })\n\n}\n\nconst MessageModal = ({ visible, setVisible, message, title = \"Message\", ...props}) => {\n\n const {t} = useTranslation();\n\n const hideModel = () => {\n setVisible(false)\n if(props.onCickAction){\n props.onCickAction();\n }\n }\n\n const renderModal = (\n \n \n \n {title}\n \n \n {message}\n \n \n \n \n \n \n )\n\n return
{renderModal}
\n}\nexport default MessageModal","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('FavStore/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('FavStore/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/UserFavourites/GetFavouritesList', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getRevenueStats = createAsyncThunk('FavStore/getRevenueStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetRevenueStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getPaymentPurchaseStats = createAsyncThunk('FavStore/getPaymentPurchaseStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetPurchasePaymentStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getProfitAndLoss = createAsyncThunk('FavStore/getProfitAndLoss', async (params, { dispatch }) => {\n dispatch(setLoading({ getProfit: true }))\n const response = await axios.get('/Dashboard/GetProfitAndLossDetails', { params })\n dispatch(setLoading({ getProfit: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalSales = createAsyncThunk('FavStore/getTotalSales', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetSalesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getMonthlyPurchases = createAsyncThunk('FavStore/getMonthlyPurchases', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetPurchaseStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getPrevMonthlyPurchases = createAsyncThunk('FavStore/getPrevMonthlyPurchases', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetPurchaseStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalRecoveriesStats = createAsyncThunk('FavStore/getTotalRecoveriesStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTotalRecoveriesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getMonthlyExpenses = createAsyncThunk('FavStore/getMonthlyExpenses', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTypeWiseExpensesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getPeriodSales = createAsyncThunk('FavStore/getPeriodSales', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetSalesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const getAllSales = createAsyncThunk('FavStore/getAllSales', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetSalesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getCustomerStats = createAsyncThunk('FavStore/getCustomerStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetCustomerWiseReceivalbeStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const getVendorPayables = createAsyncThunk('FavStore/getVendorPayables', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetVendorWisePayalbeStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTopExpenses = createAsyncThunk('FavStore/getTopExpenses', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetExpensesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalPaymentStats = createAsyncThunk('FavStore/getTotalPaymentStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetGroupTotalPaymentsStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalPaymentStatistics = createAsyncThunk('FavStore/getTotalPaymentStatistics', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTotalPaymentsStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalPrevPaymentStatistics = createAsyncThunk('FavStore/getTotalPrevPaymentStatistics', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTotalPaymentsStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalExpenseStatistics = createAsyncThunk('FavStore/getTotalExpenseStatistics', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTotalExpensesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTotalPrevExpenseStatistics = createAsyncThunk('FavStore/getTotalPrevExpenseStatistics', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetTotalExpensesStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const getEstimateStats = createAsyncThunk('FavStore/getEstimateStats', async (params, { dispatch }) => {\n const response = await axios.get('/Dashboard/GetSalesEstimateStats', { params })\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const getActivityLogs = createAsyncThunk('FavStore/getActivityLogs', async (params, { dispatch }) => {\n dispatch(setLoading({ getActivityLogs: true }))\n const response = await axios.get('/UserProfile/GetUserLog', { params })\n dispatch(setLoading({ getActivityLogs: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const FavStoreSlice = createSlice({\n name: 'FavStore',\n initialState: {\n data: [],\n total_sales: [],\n estimate_stats: {data: []},\n customer_stats: [],\n period_sales: [],\n revenue_data: [],\n all_sales: [],\n recoveries_stats: {},\n logs_data: [],\n profit_loss: {},\n purchases_stats: [],\n expenses_stats: [],\n top_expenses: [],\n vendor_stats: [],\n payment_purchase_stats: {},\n total_payment_stats: {},\n total_payment_statistics: {},\n total_expense_statistics: {},\n totalRecords: 1,\n total_logs: 1,\n params: {},\n recovery_params: {},\n all_d_sales_params: {},\n profit_loss_params: {},\n purchases_params: {},\n expenses_params: {},\n payment_purchase_params: {},\n total_payment_params: {},\n total_payment_stats_params: {},\n total_expense_stats_params: {},\n top_expenses_params: {},\n vendor_params: {},\n all_sales_params: {},\n revenue_params: {},\n total_sales_params: {},\n logs_params: {},\n loadingState: { getData: false, getActivityLogs: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getRevenueStats.fulfilled, (state, action) => {\n state.revenue_data = action.payload.data.data\n state.revenue_params = action.payload.params\n })\n .addCase(getTotalSales.fulfilled, (state, action) => {\n state.total_sales = action.payload.data.data\n state.total_sales_params = action.payload.params\n })\n .addCase(getCustomerStats.fulfilled, (state, action) => {\n state.customer_stats = action.payload.data.data\n state.total_sales_params = action.payload.params\n })\n .addCase(getTotalRecoveriesStats.fulfilled, (state, action) => {\n state.recoveries_stats = action.payload.data.data\n state.recovery_params = action.payload.params\n })\n .addCase(getPeriodSales.fulfilled, (state, action) => {\n state.period_sales = action.payload.data.data\n state.periodRecords = action.payload.data.totalRecords\n state.period_params = action.payload.params\n })\n .addCase(getProfitAndLoss.fulfilled, (state, action) => {\n state.profit_loss = action.payload.data.data\n state.profit_loss_params = action.payload.params\n })\n .addCase(getEstimateStats.fulfilled, (state, action) => {\n state.estimate_stats = action.payload.data.data\n state.estimate_params = action.payload.params\n })\n .addCase(getMonthlyPurchases.fulfilled, (state, action) => {\n state.purchases_stats = action.payload.data.data\n state.purchases_params = action.payload.params\n })\n .addCase(getPrevMonthlyPurchases.fulfilled, (state, action) => {\n state.purchases_stats_prev = action.payload.data.data\n state.purchases_params_prev = action.payload.params\n })\n .addCase(getMonthlyExpenses.fulfilled, (state, action) => {\n state.expenses_stats = action.payload.data.data\n state.expenses_params = action.payload.params\n })\n .addCase(getVendorPayables.fulfilled, (state, action) => {\n state.vendor_stats = action.payload.data.data\n state.vendor_params = action.payload.params\n })\n .addCase(getTopExpenses.fulfilled, (state, action) => {\n state.top_expenses = action.payload.data.data\n state.top_expenses_params = action.payload.params\n })\n .addCase(getPaymentPurchaseStats.fulfilled, (state, action) => {\n state.payment_purchase_stats = (action.payload.data?.data??[]).length > 0 ? action.payload.data?.data[0] : {}\n state.payment_purchase_params = action.payload.params\n })\n .addCase(getTotalPaymentStats.fulfilled, (state, action) => {\n state.total_payment_stats = action.payload.data.data\n state.total_payment_params = action.payload.params\n })\n .addCase(getTotalPaymentStatistics.fulfilled, (state, action) => {\n state.total_payment_statistics = action.payload.data.data\n state.total_payment_stats_params = action.payload.params\n })\n .addCase(getTotalPrevPaymentStatistics.fulfilled, (state, action) => {\n state.total_payment_statistics_prev = action.payload.data.data\n state.total_payment_stats_params_prev = action.payload.params\n })\n .addCase(getTotalExpenseStatistics.fulfilled, (state, action) => {\n state.total_expense_statistics = action.payload.data.data\n state.total_expense_stats_params = action.payload.params\n })\n .addCase(getTotalPrevExpenseStatistics.fulfilled, (state, action) => {\n state.total_expense_statistics_prev = action.payload.data.data\n state.total_expense_stats_params_prev = action.payload.params\n })\n .addCase(getAllSales.fulfilled, (state, action) => {\n state.all_sales = action.payload.data.data\n state.all_d_sales_params = action.payload.params\n })\n .addCase(getActivityLogs.fulfilled, (state, action) => {\n state.logs_data = action.payload.data.data.list\n state.total_logs = action.payload.data.totalRecords\n state.logs_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default FavStoreSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n\n// ** UseJWT import to get config\nimport useJwt from '@src/auth/jwt/useJwt'\nimport axios from \"axios\";\nimport {serverUrlAddress, tablesDateFormat} from \"../utility/Utils\";\n\nconst config = useJwt.jwtConfig\n\nconst initialUser = () => {\n\n const item = window.localStorage.getItem('userData')\n //** Parse stored json or if none return initialValue\n\n return item && item !== \"undefined\" ? JSON.parse(item) : {}\n}\nexport const handleUserProfile = createAsyncThunk('authentication/userProfile', async (params) => {\n\n try {\n const response = await axios.get('/Login/GetUserProfile')\n\n const user = {\n ...response?.data?.data, userDetails: undefined, ...response?.data?.data.userDetails\n }\n\n const options = {\n headers: {\n 'Authorization': 'Bearer ' + user.accessToken,\n 'Content-Type': 'application/x-www-form-urlencoded',\n }\n }\n\n const {data: rightsResponse} = await axios.get('/UserRights/GetUserRights', options)\n\n if (rightsResponse.isSuccessFull) {\n const allAcl = [{\n action: 'view',\n subject: 'DashboardMain'\n }]\n rightsResponse.data?.list?.forEach(right => {\n const acls = []\n if (right.viewScreen) {\n acls.push({action: 'view', subject: right.screenDescription})\n acls.push({action: 'read', subject: right.screenDescription})\n }\n\n if (right.addScreen) {\n acls.push({action: 'new', subject: right.screenDescription})\n acls.push({action: 'create', subject: right.screenDescription})\n }\n\n if (right.updateScreen) {\n acls.push({action: 'edit', subject: right.screenDescription})\n acls.push({action: 'update', subject: right.screenDescription})\n }\n\n if (right.deleteScreen) {\n acls.push({action: 'delete', subject: right.screenDescription})\n }\n allAcl.push(...acls)\n })\n user.ability = allAcl\n delete user.userDetails\n\n if (params?.ability) {\n params?.ability.update(user.ability)\n }\n }\n\n return user\n } catch (e) {\n return null;\n }\n})\n\nexport const authSlice = createSlice({\n name: 'authentication',\n initialState: {\n userData: initialUser(),\n loggedIn: !!initialUser().loginUserId,\n unautorized: false,\n hideState: null\n },\n reducers: {\n // handleMenuHide: (state, action) => {\n // state.hideState = new Date()\n // localStorage.setItem('hideState', JSON.stringify(new Date()))\n // },\n // handleMenuShow: (state, action) => {\n // state.hideState = null\n // localStorage.removeItem('hideState')\n // },\n handleUpdateUser: (state, action) => {\n state.userData = action.payload\n state.loggedIn = !!action.payload.loginUserId\n state[config.storageTokenKeyName] = action.payload[config.storageTokenKeyName]\n state[config.storageRefreshTokenKeyName] = action.payload[config.storageRefreshTokenKeyName]\n localStorage.setItem('userData', JSON.stringify(action.payload))\n localStorage.setItem(config.storageTokenKeyName, action.payload.accessToken)\n localStorage.setItem(config.storageRefreshTokenKeyName, action.payload.refreshToken)\n },\n handleLogin: (state, action) => {\n state.userData = action.payload\n state.loggedIn = !!action.payload.loginUserId\n state[config.storageTokenKeyName] = action.payload[config.storageTokenKeyName]\n state[config.storageRefreshTokenKeyName] = action.payload[config.storageRefreshTokenKeyName]\n localStorage.setItem('userData', JSON.stringify(action.payload))\n localStorage.setItem(serverUrlAddress, action.payload.instanceURL ? `${(action.payload.instanceURL)}/` : process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`])\n localStorage.setItem(config.storageTokenKeyName, action.payload.accessToken)\n localStorage.setItem(config.storageRefreshTokenKeyName, action.payload.refreshToken)\n axios.defaults.baseURL = action.payload.instanceURL ? `${action.payload.instanceURL}/` + \"en/\" : process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`] + \"en/\";\n },\n handleAuthChanged: (state, action) => {\n state.userData = action.payload\n state.loggedIn = !!action.payload.loginUserId\n state[config.storageTokenKeyName] = action.payload[config.storageTokenKeyName]\n state[config.storageRefreshTokenKeyName] = action.payload[config.storageRefreshTokenKeyName]\n localStorage.setItem('userData', JSON.stringify(action.payload))\n localStorage.setItem(serverUrlAddress, action.payload.instanceURL ? `${(action.payload.instanceURL)}/` : process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`])\n localStorage.setItem(config.storageTokenKeyName, action.payload.accessToken)\n localStorage.setItem(config.storageRefreshTokenKeyName, action.payload.refreshToken)\n axios.defaults.baseURL = action.payload.instanceURL ? `${action.payload.instanceURL}/` + \"en/\" : process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`] + \"en/\";\n },\n handleProfileChanged: (state, action) => {\n let userData = JSON.parse(localStorage.getItem('userData'));\n userData.profileImageURL = action.payload.profileImageURL;\n userData.name = action.payload.name;\n localStorage.setItem('userData', JSON.stringify(userData))\n state.userData = userData;\n },\n handleUnAuthorized: state => {\n state.hideState = null\n state.userData = {}\n state.unautorized = true\n state.loggedIn = false\n state[config.storageTokenKeyName] = null\n state[config.storageRefreshTokenKeyName] = null\n // ** Remove user, accessToken & refreshToken from localStorage\n localStorage.removeItem('userData')\n localStorage.removeItem('hideState')\n localStorage.removeItem('fYearData')\n localStorage.removeItem('locationData')\n localStorage.removeItem(serverUrlAddress)\n localStorage.removeItem(config.storageTokenKeyName)\n localStorage.removeItem(config.storageRefreshTokenKeyName)\n },\n handleLogout: state => {\n state.hideState = null\n state.userData = {}\n state.loggedIn = false\n state.unautorized = false\n state.sessionOut = false\n state[config.storageTokenKeyName] = null\n state[config.storageRefreshTokenKeyName] = null\n // ** Remove user, accessToken & refreshToken from localStorage\n localStorage.removeItem('userData')\n localStorage.removeItem('hideState')\n localStorage.removeItem('fYearData')\n localStorage.removeItem('locationData')\n localStorage.removeItem(serverUrlAddress)\n localStorage.removeItem(config.storageTokenKeyName)\n localStorage.removeItem(config.storageRefreshTokenKeyName)\n }\n },\n extraReducers: builder => {\n builder\n .addCase(handleUserProfile.fulfilled, (state, action) => {\n if(action.payload) {\n const user = action.payload;\n state.userData = user\n state.loggedIn = !!user.loginUserId\n state[config.storageTokenKeyName] = user[config.storageTokenKeyName]\n state[config.storageRefreshTokenKeyName] = user[config.storageRefreshTokenKeyName]\n localStorage.setItem('userData', JSON.stringify(user))\n localStorage.setItem(config.storageTokenKeyName, user.accessToken)\n localStorage.setItem(config.storageRefreshTokenKeyName, user.refreshToken)\n } else {\n state.hideState = null\n state.userData = {}\n state.loggedIn = false\n state.unautorized = false\n state[config.storageTokenKeyName] = null\n state[config.storageRefreshTokenKeyName] = null\n // ** Remove user, accessToken & refreshToken from localStorage\n localStorage.removeItem('userData')\n localStorage.removeItem('hideState')\n localStorage.removeItem('fYearData')\n localStorage.removeItem('locationData')\n localStorage.removeItem(config.storageTokenKeyName)\n localStorage.removeItem(config.storageRefreshTokenKeyName)\n }\n })\n }\n})\n\nexport const { handleLogin, handleUpdateUser, handleAuthChanged, handleProfileChanged, handleUnAuthorized, handleLogout } = authSlice.actions\n\nexport default authSlice.reducer\n","// ** Logo\nimport logo from '@src/assets/images/logo/logo.png'\n\nconst SpinnerComponent = () => {\n return (\n
\n logo\n
\n
\n
\n
\n
\n
\n )\n}\n\nexport default SpinnerComponent\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const tabs = {\n // InterestIncome: { type: 'Income', uri: '/CRV', formType: 'CRV', listType: 'CRV', voucherType: \"II\" },\n CustomerAdvance: { type: 'Customer Advance', uri: '/Recoveries', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"CA\" },\n CustomerPayment: { type: 'Customer Receiving', uri: '/Recoveries', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"CP\" },\n // RetainerPayment: { type: 'Retainer Payment', uri: '/CRV', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"RP\" },\n TransferFromAccount: { type: 'Transfer From Another Account', uri: '/Recoveries', formType: 'Recoveries', listType: 'Recoveries', voucherType: \"TFA\" },\n OtherIncome: { type: 'Other Income', uri: '/CRV', formType: 'CRV', listType: 'DC NOTE', voucherType: \"OI\" },\n ExpenseRefund: { type: 'Expense Refund', uri: '/CRV', formType: 'CRV', listType: 'CRV', voucherType: \"ER\" },\n DepositFromAccounts: { type: 'Deposit From Other Accounts', uri: '/Recoveries', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"DOA\" },\n OwnerContribution: { type: 'Owner\\'s Contribution', uri: '/CRV', formType: 'CRV', listType: 'CRV', voucherType: \"OC\" },\n VendorCreditRefund: { type: 'Vendor Credit Refund', uri: '/Recoveries', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"VCR\" },\n VendorPaymentRefund: { type: 'Vendor Payment Refund', uri: '/Recoveries', formType: 'Recoveries', listType: 'DC NOTE', voucherType: \"VPR\" },\n // Expense: { type: 'Exepnse', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"EXP\" },\n VendorAdvance: { type: 'Vendor Advance', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VA\" },\n VendorPayment: { type: 'Vendor Payment', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VP\" },\n TransferToAccount: { type: 'Transfer To Another Account', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"TTA\" },\n CardPayment: { type: 'Card Payment', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"CRP\" },\n OwnerDrawings: { type: 'Owner Drawings', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"OD\" },\n // ExpenseRefund: { type: 'Expense Refund', uri: '/CPV', formType: 'CPV' },\n DepositToAccounts: { type: 'Deposit To Other Accounts', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"DTA\" },\n CreditNoteRefund: { type: 'Credit Note Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"CNR\" },\n PaymentRefund: { type: 'Payment Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"PR\" },\n // VendorCreditRefund: { type: 'Vendor Credit Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VCR\" },\n EmployeeReimbursement: { type: 'Employee Advance', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"ER\" }\n}\n\nexport const setLoading = createAsyncThunk('appPayments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPayments/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n let response;\n if(params.withBalance) {\n response = await axios.get('/Defaults/DetailCashBankCOAListWithBalances', {params})\n } else{\n response = await axios.get('/Defaults/DetailCashBankCOAList', {params})\n }\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getTransactions = createAsyncThunk('appReceivings/getTransactions', async (params, { dispatch }) => {\n dispatch(setLoading({ getTransactions: true }))\n let response;\n const formType = tabs[params.tab].formType;\n\n if(!(params.avoidVoucher)) {\n params.voucherType = tabs[params.tab].voucherType;\n }\n delete params.tab\n if (formType === \"CRV\") {\n response = await axios.get(`/CRV/List`, { params })\n }else if (formType === \"CPV\"){\n response = await axios.get(`/CPV/List`, { params })\n } else if (formType === \"Payments\"){\n response = await axios.get(`/Payments/List`, { params })\n } else {\n response = await axios.get(`/Recoveries/List`, { params })\n\n }\n dispatch(setLoading({ getTransactions: false }))\n return {\n data: response.data,\n params\n }\n\n})\n\nexport const clearTransactions = createAsyncThunk('appReceivings/clearTransactions', async () => {\n return []\n})\n\nexport const getVoucher = createAsyncThunk('appReceivings/getVoucher', async (recno, { dispatch }) => {\n dispatch(setLoading({ getVoucher: true }))\n const response = await axios.get(`/CPV/${recno}`)\n dispatch(setLoading({ getVoucher: false }))\n\n return response.data\n})\n\nexport const getTransactionAccount = createAsyncThunk('appReceivings/getTransactionAccount', async (recno, { dispatch }) => {\n dispatch(setLoading({ getTransactionAccount: true }))\n dispatch(clearTransactions())\n const response = await axios.get(`/Defaults/DetailCashBankCOAList?Recno=${recno}`)\n dispatch(setLoading({ getTransactionAccount: false }))\n return response.data\n})\n\nexport const appReceivings = createSlice({\n name: 'appReceivings',\n initialState: {\n voucher: {},\n data: [],\n transactions: [],\n account: null,\n totalRecords: 1,\n params: {},\n trans_params: {},\n loadingState: { getData: false, getVoucher: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTransactionAccount.fulfilled, (state, action) => {\n state.account = action.payload.data.length ? action.payload.data[0] : null\n })\n .addCase(getTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.trans_params = action.payload.params\n })\n .addCase(clearTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload\n state.totalRecords = 0\n state.params = {}\n })\n .addCase(getVoucher.fulfilled, (state, action) => {\n state.voucher = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appReceivings.reducer\n","// ** Auth Endpoints\nexport default {\n loginEndpoint: '/jwt/login',\n registerEndpoint: '/jwt/register',\n forgotPasswordEndPoint: '/jwt/forgot-password',\n refreshEndpoint: '/jwt/refresh-token',\n logoutEndpoint: '/jwt/logout',\n\n // ** This will be prefixed in authorization header with token\n // ? e.g. Authorization: Bearer \n tokenType: 'Bearer',\n\n // ** Value of this property will be used as key to store JWT token in storage\n storageTokenKeyName: 'accessToken',\n storageRefreshTokenKeyName: 'refreshToken'\n}\n","import axios from 'axios'\nimport jwtDefaultConfig from './jwtDefaultConfig'\nimport {serverUrlAddress} from \"../../../utility/Utils\";\n\nexport default class JwtService {\n // ** jwtConfig <= Will be used by this service\n jwtConfig = { ...jwtDefaultConfig }\n\n // ** For Refreshing Token\n isAlreadyFetchingAccessToken = false\n\n // ** For Refreshing Token\n subscribers = []\n\n constructor(jwtOverrideConfig) {\n this.jwtConfig = { ...this.jwtConfig, ...jwtOverrideConfig }\n\n const { CancelToken } = axios;\n const cancelTokenSource = CancelToken.source();\n\n // ** Request Interceptor\n axios.interceptors.request.use(\n config => {\n\n config.baseURL = (localStorage.getItem(serverUrlAddress)??process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`]) + `/${localStorage.getItem('i18nextLng')??\"end\"}/`;\n config.cancelToken = cancelTokenSource.token;\n\n // ** Get token from localStorage\n const accessToken = this.getToken()\n\n // ** If token is present add it to request's Authorization Header\n if (accessToken) {\n // ** eslint-disable-next-line no-param-reassign\n config.headers.Authorization = `${this.jwtConfig.tokenType} ${accessToken}`\n }\n return config\n },\n error => Promise.reject(error)\n )\n\n // ** Add request/response interceptor\n axios.interceptors.response.use(\n response => response,\n error => {\n // ** const { config, response: { status } } = error\n const { config, response } = error\n const originalRequest = config\n\n // ** if (status === 401) {\n if (response && response.status === 401) {\n return Promise.reject(error)\n if (!this.isAlreadyFetchingAccessToken) {\n this.isAlreadyFetchingAccessToken = true\n this.refreshToken().then(r => {\n this.isAlreadyFetchingAccessToken = false\n\n // ** Update accessToken in localStorage\n this.setToken(r.data.accessToken)\n this.setRefreshToken(r.data.refreshToken)\n\n this.onAccessTokenFetched(r.data.accessToken)\n }).catch(e => {\n\n })\n }\n const retryOriginalRequest = new Promise(resolve => {\n this.addSubscriber(accessToken => {\n // ** Make sure to assign accessToken according to your response.\n // ** Check: https://pixinvent.ticksy.com/ticket/2413870\n // ** Change Authorization header\n originalRequest.headers.Authorization = `${this.jwtConfig.tokenType} ${accessToken}`\n resolve(this.axios(originalRequest))\n })\n })\n return retryOriginalRequest\n }\n return Promise.reject(error)\n }\n )\n }\n\n onAccessTokenFetched(accessToken) {\n this.subscribers = this.subscribers.filter(callback => callback(accessToken))\n }\n\n addSubscriber(callback) {\n this.subscribers.push(callback)\n }\n\n getToken() {\n return localStorage.getItem(this.jwtConfig.storageTokenKeyName)\n }\n\n getRefreshToken() {\n return localStorage.getItem(this.jwtConfig.storageRefreshTokenKeyName)\n }\n\n setToken(value) {\n localStorage.setItem(this.jwtConfig.storageTokenKeyName, value)\n }\n\n setRefreshToken(value) {\n localStorage.setItem(this.jwtConfig.storageRefreshTokenKeyName, value)\n }\n\n login(...args) {\n return axios.post(this.jwtConfig.loginEndpoint, ...args)\n }\n\n forgotPassword(...args) {\n return axios.post(this.jwtConfig.forgotPasswordEndPoint, ...args)\n }\n\n forgotPasswordResetGet(...args) {\n return axios.post(this.jwtConfig.forgotPasswordResetEndPoint, ...args)\n }\n\n forgotPasswordReset(...args) {\n return axios.post(this.jwtConfig.forgotPasswordResetSubmitEndPoint, ...args)\n }\n\n register(...args) {\n return axios.post(this.jwtConfig.registerEndpoint, ...args)\n }\n\n refreshToken() {\n return axios.post(this.jwtConfig.refreshEndpoint, {\n refreshToken: this.getRefreshToken()\n })\n }\n}\n","// ** Core JWT Import\nimport * as service from '@api/api.service'\nimport useJwt from '@src/@core/auth/jwt/useJwt'\n\nconst config = {\n loginEndpoint: service.API_LOGIN,\n registerEndpoint: service.API_REGISTER,\n forgotPasswordEndPoint: service.API_FORGOT_PASSWORD,\n forgotPasswordResetEndPoint: service.API_FORGOT_PASSWORD_RESET,\n forgotPasswordResetSubmitEndPoint: service.API_FORGOT_PASSWORD_RESET_SUBMIT,\n refreshEndpoint: '/jwt/refresh-token',\n logoutEndpoint: '/jwt/logout',\n\n // ** This will be prefixed in authorization header with token\n // ? e.g. Authorization: Bearer \n tokenType: 'Bearer',\n\n // ** Value of this property will be used as key to store JWT token in storage\n storageTokenKeyName: 'accessToken',\n storageRefreshTokenKeyName: 'refreshToken'\n}\n\nconst { jwt } = useJwt(config) // eslint-disable-line\n\nexport default jwt\n","// ** JWT Service Import\nimport JwtService from './jwtService'\n\n// ** Export Service as useJwt\nexport default function useJwt(jwtOverrideConfig) {\n const jwt = new JwtService(jwtOverrideConfig)\n\n return {\n jwt\n }\n}\n","// ** React Imports\nimport { useEffect, useState, createContext } from 'react'\n\n// ** Create Context\nconst ThemeColors = createContext()\n\nconst ThemeContext = ({ children }) => {\n // ** State\n const [colors, setColors] = useState({})\n\n //** ComponentDidMount\n useEffect(() => {\n if (window !== 'undefined') {\n //** Get variable value\n const getHex = color => window.getComputedStyle(document.body).getPropertyValue(color).trim()\n\n //** Colors obj\n const obj = {\n primary: {\n light: getHex('--bs-primary').concat('1a'),\n main: getHex('--bs-primary')\n },\n secondary: {\n light: getHex('--bs-secondary').concat('1a'),\n main: getHex('--bs-secondary')\n },\n success: {\n light: getHex('--bs-success').concat('1a'),\n main: getHex('--bs-success')\n },\n danger: {\n light: getHex('--bs-danger').concat('1a'),\n main: getHex('--bs-danger')\n },\n warning: {\n light: getHex('--bs-warning').concat('1a'),\n main: getHex('--bs-warning')\n },\n info: {\n light: getHex('--bs-info').concat('1a'),\n main: getHex('--bs-info')\n },\n dark: {\n light: getHex('--bs-dark').concat('1a'),\n main: getHex('--bs-dark')\n }\n }\n\n setColors({ ...obj })\n }\n }, [])\n\n return {children}\n}\n\nexport { ThemeColors, ThemeContext }\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\nimport { fireMessage } from \"../../../../components/MessageModel\";\n\nexport const templateTabs = {\n SalesInvoice: { name: \"Sales Invoice\", uri: \"/InvoicePreviewCustomization/GetSalesInvoicePreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultSalesInvoicePreviewTemplates\", post_uri: \"/InvoicePreviewCustomization/AddSalesInvoicePreviewTemplate\", templateType: \"SalesInvoice\" },\n SalesReturnInvoice: { name: \"Sales Return Invoice\", uri: \"/InvoicePreviewCustomization/GetSalesReturnInvoicePreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultSalesReturnInvoicePreviewTemplates\", post_uri: \"/InvoicePreviewCustomization/AddSalesReturnInvoicePreviewTemplate\", templateType: \"SalesReturnInvoice\" },\n PurchaseInvoice: { name: \"Bill\", uri: \"/InvoicePreviewCustomization/GetPurchaseInvoicePreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaltPurchaseInvoicePreviewTemplates\", templateType: \"PurchaseInvoice\", post_uri: \"/InvoicePreviewCustomization/AddPurchaseInvoicePreviewTemplate\" },\n PurchaseReturnInvoice: { name: \"Purchase Return Invoice\", uri: \"/InvoicePreviewCustomization/GetPurchaseReturnInvoicePreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultPurchaseReturnInvoicePreviewTemplates\", templateType: \"PurchaseReturnInvoice\", post_uri: \"/InvoicePreviewCustomization/AddPurchaseReturnInvoicePreviewTemplate\" },\n ExpenseInvoice: { name: \"Expense\", uri: \"/InvoicePreviewCustomization/GetExpensesPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultExpensesPreviewTemplates\", templateType: \"ExpenseInvoice\", post_uri: \"/InvoicePreviewCustomization/AddExpensesPreviewTemplate\" },\n GRNs: { name: \"Goods Received Note\", uri: \"/InvoicePreviewCustomization/GetGRNPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultGRNPreviewTemplates\", templateType: \"GRNs\", post_uri: \"/InvoicePreviewCustomization/AddGRNPreviewTemplate\" },\n DeliveryNotes: { name: \"Delivery Notes\", uri: \"/InvoicePreviewCustomization/GetDeliveryNotesPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultDeliveryNotesPreviewTemplates\", templateType: \"DeliveryNotes\", post_uri: \"/InvoicePreviewCustomization/AddDeliveryNotesPreviewTemplate\" },\n IssueToLocation: { name: \"Issue To Location\", uri: \"/InvoicePreviewCustomization/GetITLPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultITLPreviewTemplates\", templateType: \"IssueToLocation\", post_uri: \"/InvoicePreviewCustomization/AddITLPreviewTemplate\" },\n GoodsReceivedNoteReturn: { name: \"Goods Received Note Return\", uri: \"/InvoicePreviewCustomization/GetGRNReturnPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultGRNReturnPreviewTemplates\", templateType: \"GoodsReceivedNote\", post_uri: \"/InvoicePreviewCustomization/AddGRNReturnPreviewTemplates\" },\n PurchaseOrder: { name: \"Purchase Order\", uri: \"/InvoicePreviewCustomization/GetPurchaseOrderPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultPurchaseOrderPreviewTemplates\", templateType: \"PurchaseOrder\", post_uri: \"/InvoicePreviewCustomization/AddPurchaseOrderPreviewTemplate\" },\n PurchaseRequest: { name: \"Purchase Request\", uri: \"/InvoicePreviewCustomization/GetPurchaseRequestPreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultPurchaseRequestPreviewTemplates\", post_uri: \"/InvoicePreviewCustomization/AddPurchaseRequestPreviewTemplate\", templateType: \"PurchaseRequest\" },\n Estimate: { name: \"Estimate\", uri: \"/InvoicePreviewCustomization/GetSalesEstimatePreviewTemplates\", default_uri: \"/InvoicePreviewCustomization/GetDefaultSalesEstimatePreviewTemplates\", post_uri: \"/InvoicePreviewCustomization/AddSalesEstimatePreviewTemplate\", templateType: \"Estimate\" },\n};\nexport const setLoading = createAsyncThunk(\"templateStore/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const setOpenEdit = createAsyncThunk(\"templateStore/setOpenEdit\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"templateStore/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n let template = templateTabs[params?.template];\n let response = await axios.get(template.uri, { params });\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getDefaultData = createAsyncThunk(`templateStore/getDefaultData`, async (params, { dispatch }) => {\n dispatch(setLoading({ getDefaultData: true }));\n let template = templateTabs[params?.template];\n let response = await axios.get(template.default_uri, { params });\n dispatch(setLoading({ getDefaultData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const addTemplate = createAsyncThunk(\"templateStore/addTemplate\", async (params, { dispatch }) => {\n dispatch(setLoading({ addTemplate: true }));\n let template = templateTabs[params?.template];\n let response;\n let success = false;\n try {\n response = await axios.post(template.post_uri, params?.data);\n let saved_template;\n\n for (let j = 0; j < response.data.data.list.length; j++) {\n if (response.data.data.list[j].templateName === params.data.templateName) {\n saved_template = response.data.data.list[j];\n }\n }\n fireMessage(\"Template added successfully\", \"Success\", \"success\");\n success = true;\n dispatch(getData(params));\n dispatch(setStoreSelectedTemplate({ id: saved_template.recno, data: saved_template }));\n } catch (e) {\n response = e.response || e;\n fireMessage(response.data.message || e, \"Error\", \"error\");\n } finally {\n dispatch(setLoading({ addTemplate: false }));\n }\n return success;\n});\n\nexport const setStoreSelectedTemplate = createAsyncThunk(\"templateStore/setStoreSelectedTemplate\", async (params, { dispatch }) => {\n dispatch(setOpenEdit({ openEdit: params?.data !== undefined }));\n\n return {\n params,\n data: params?.data,\n };\n});\n\nexport const getLocation = createAsyncThunk(\"templateStore/getLocation\", async (params, { dispatch }) => {\n dispatch(setLoading({ getLocation: true }));\n const locationValue = localStorage.getItem(\"locationData\");\n const location = JSON.parse(locationValue);\n const response = await axios.get(\"/Defaults/LocationDetails?Recno=\" + location.locationId, { params });\n dispatch(setLoading({ getLocation: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const templateStoreSlice = createSlice({\n name: \"templateStore\",\n initialState: {\n employees: {},\n data: [],\n defaultData: [],\n locationInfo: {},\n totalRecords: 1,\n totalDefaultRecords: 1,\n params: {},\n selectedParams: {},\n defaultParams: {},\n locationParams: {},\n selectedTemplate: undefined,\n openEdit: false,\n loadingState: { getData: false, getDefaultData: false, addTemplate: false, getLocation: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getDefaultData.fulfilled, (state, action) => {\n state.defaultData = action.payload.data.data.list;\n state.totalDefaultRecords = action.payload.data.totalRecords;\n state.defaultParams = action.payload.params;\n })\n .addCase(getLocation.fulfilled, (state, action) => {\n state.locationInfo = action.payload.data.data.length > 0 ? action.payload.data.data[0] : {};\n state.locationParams = action.payload.params;\n })\n .addCase(setStoreSelectedTemplate.fulfilled, (state, action) => {\n state.selectedTemplate = action.payload.data;\n state.selectedParams = action.payload.params;\n })\n .addCase(setOpenEdit.fulfilled, (state, action) => {\n state.openEdit = action.payload.openEdit;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default templateStoreSlice.reducer;\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getData = createAsyncThunk('locationBanks/getData', async params => {\n\n const response = await axios.get('/Defaults/LocationBanksDetails', { params })\n return {\n params: response.data.params,\n data: response.data\n }\n})\n\nexport const getDefaultData = createAsyncThunk('locationBanks/getDefaultData', async params => {\n const response = await axios.get('/Defaults/LocationBanksDetails', { params })\n console.log(\"getDefaultData\",response.data)\n return {\n params: response.data.params,\n data: response.data.data[0]\n }\n})\n\nexport const branchBanksSlice = createSlice({\n name: 'branchBanks',\n initialState: {\n data: [],\n total: 1,\n params: {},\n selectedBank: {},\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n }).addCase(getDefaultData.fulfilled, (state, action) => {\n state.selectedBank = action.payload.data\n state.params = action.payload.params\n })\n }\n})\n\nexport const { selectPermission } = branchBanksSlice.actions\n\nexport default branchBanksSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('EstimateCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('EstimateCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetSalesEstimateCustomization', { params })\n dispatch(setLoading({ getData: false }))\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.stampImage) {\n try {\n response.data.data.stampImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.stampImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showWaterImage) {\n try {\n response.data.data.showWaterImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.showWaterImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('EstimateCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const EstimateCustomizationSlice = createSlice({\n name: 'EstimateCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default EstimateCustomizationSlice.reducer\n","export default __webpack_public_path__ + \"static/media/logo.4e30137f.png\";","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"ExpenseCustomization/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"ExpenseCustomization/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/InvoicePreviewCustomization/GetExpensesCustomization\", { params });\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getBank = createAsyncThunk(\"ExpenseCustomization/getBank\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Locations/GetBankDetails\", { params });\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const ExpenseCustomizationSlice = createSlice({\n name: \"ExpenseCustomization\",\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default ExpenseCustomizationSlice.reducer;\n","// ** Imports createContext function\nimport { createContext } from 'react'\n\n// ** Imports createContextualCan function\nimport { createContextualCan } from '@casl/react'\n\n// ** Create Context\nexport const AbilityContext = createContext()\n\n// ** Init Can Context\nexport const Can = createContextualCan(AbilityContext.Consumer)\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('SaleInvoiceCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SaleInvoiceCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n dispatch(getBank())\n const response = await axios.get('/InvoicePreviewCustomization/GetSalesInvoiceCustomization', { params })\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.stampImage) {\n try {\n response.data.data.stampImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.stampImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showWaterImage) {\n try {\n response.data.data.showWaterImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.showWaterImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showHeaderImage && response.data.data.headerImage) {\n try {\n response.data.data.headerImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.headerImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showFooterBackground && response.data.data.footerBackgroundImage) {\n try {\n response.data.data.footerBackgroundImage64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.footerBackgroundImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('SaleInvoiceCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const SaleInvoiceCustomizationSlice = createSlice({\n name: 'SaleInvoiceCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SaleInvoiceCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('PurchaseInvoiceReturnCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PurchaseInvoiceReturnCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPurchaseReturnInvoiceCustomization', { params })\n if(response.data.data.showHeaderImage && response.data.data.headerImage) {\n try {\n response.data.data.headerImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.headerImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('PurchaseInvoiceReturnCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const PurchaseInvoiceReturnCustomizationSlice = createSlice({\n name: 'PurchaseInvoiceReturnCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default PurchaseInvoiceReturnCustomizationSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCustomerInvoice/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appCustomerInvoice/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n if (JSON.stringify(params) !== JSON.stringify(getState().customerInvoice?.params) || params.forceLoad) {\n try {\n if (!params.PageNo) {\n params.PageNo = getState().customerInvoice?.params.Page ?? 1;\n }\n\n if (!params.PageSize) {\n params.PageSize = getState().customerInvoice?.params.PageSize ?? 20;\n }\n\n const responseConsolidated = await axios.get('/SalesInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: {data: {list: []}, totalRecords: 0}\n }\n }\n } else {\n dispatch(setLoading({getData: false}))\n return {\n params: getState().customerInvoice?.params,\n data: {\n data: {\n list: getState().customerInvoice?.data ?? [],\n totalRecords: getState().customerInvoice?.totalRecords ?? 0\n }\n },\n consolidated: {\n data: {list: getState().customerInvoice?.consolidated ?? []},\n totalRecords: getState().customerInvoice?.consolidatedTotalRecords ?? 0\n }\n }\n }\n})\n\nexport const getInvoiceActivityLogData = createAsyncThunk('appPurchase/getInvoiceActivityLogData', async (recno, {dispatch}) => {\n dispatch(setLoading({getInvoiceActivityLogData: true}))\n const response = await axios.get(`/SalesInvoices/GetSalesLog/${recno}`)\n dispatch(setLoading({getInvoiceActivityLogData: false}))\n return {\n data: response.data\n }\n})\n\nexport const getReportingTags = createAsyncThunk('appPurchase/getReportingTags', async ({dispatch}) => {\n dispatch(setLoading({getReportingTags: true}))\n const response = await axios.get(`/Defaults/GetReportingTags`)\n dispatch(setLoading({getReportingTags: false}))\n return {\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appCustomerInvoice/getTypeData', async () => {\n // dispatch(setLoading({ getTypeData: true }))\n // const response = await axios.get('/JVTypes/List', { params })\n // dispatch(setLoading({ getTypeData: false }))\n // return {\n // params,\n // data: response.data\n // }\n return null\n})\n\nexport const getJournal = createAsyncThunk('appCustomerInvoice/getJournal', async () => {\n // dispatch(setLoading({ getJournal: true }))\n // const response = await axios.get(`/SalesInvoices/${recno}`)\n // dispatch(setLoading({ getJournal: false }))\n\n // return response.data\n return null\n})\n\n\n\nexport const getColumns = createAsyncThunk('appCustomerInvoice/getColumns', async (params, { dispatch }) => {\n dispatch(setLoading({ getColumns: true }))\n const res = await axios.get('/Prefrences/GetSalesFormListColumns', { params })\n dispatch(setLoading({ getColumns: false }))\n return {\n params,\n data: res.data??{data: []}\n }\n})\n\nexport const deleteInvoice = createAsyncThunk('appCustomerInvoice/deleteInvoice', async (id, {dispatch, getState}) => {\n dispatch(setLoading({deleteInvoice: true}))\n await axios.delete('/apps/invoice/delete', {id})\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({deleteInvoice: false}))\n return id\n})\n\nexport const appCustomerInvoiceSlice = createSlice({\n name: 'appCustomerInvoice',\n initialState: {\n vendorInvoice: {},\n data: [],\n columns: [],\n consolidated: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n activityLogs: [],\n reportingTags: [],\n totalLogsRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: {getData: false, getTypeData: false, getJournal: false, getReportingTags: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated?.data?.list ?? []\n state.totalRecords = action.payload.consolidated.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getInvoiceActivityLogData.fulfilled, (state, action) => {\n state.activityLogs = action.payload.data.data.list\n state.totalLogsRecords = action.payload.data.totalRecords\n })\n .addCase(getReportingTags.fulfilled, (state, action) => {\n state.reportingTags = action.payload.data.data\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(getColumns.fulfilled, (state, action) => {\n let cols = [...action.payload.data.data];\n cols.sort((a,b) => a.sortNo - b.sortNo);\n state.columns = cols\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appCustomerInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('PurchaseOrderCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PurchaseOrderCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPurchaseOrderCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('PurchaseOrderCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const PurchaseOrderCustomizationSlice = createSlice({\n name: 'PurchaseOrderCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default PurchaseOrderCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('GRNCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('GRNCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetGRNCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('GRNCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const GRNCustomizationSlice = createSlice({\n name: 'GRNCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default GRNCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('PurchaseRequestCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PurchaseRequestCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPurchaseRequestCustomization', { params })\n dispatch(setLoading({ getData: false }))\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('PurchaseRequestCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const PurchaseRequestCustomizationSlice = createSlice({\n name: 'PurchaseRequestCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default PurchaseRequestCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('GrnReturnCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('GrnReturnCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetGRNReturnCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('GrnReturnCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const GrnReturnCustomizationSlice = createSlice({\n name: 'GrnReturnCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default GrnReturnCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createSlice } from '@reduxjs/toolkit'\n\n// ** ThemeConfig Import\nimport themeConfig from '@configs/themeConfig'\n\nconst initialMenuCollapsed = () => {\n const item = window.localStorage.getItem('menuCollapsed')\n //** Parse stored json or if none return initialValue\n return item ? JSON.parse(item) : themeConfig.layout.menu.isCollapsed\n}\n\nconst initialDirection = () => {\n const item = window.localStorage.getItem('direction')\n //** Parse stored json or if none return initialValue\n return item ? JSON.parse(item) : themeConfig.layout.isRTL\n}\n\nconst initialSkin = () => {\n const item = window.localStorage.getItem('skin')\n\n //** Parse stored json or if none return initialValue\n return item ? JSON.parse(item) : themeConfig.layout.skin\n}\n\nexport const layoutSlice = createSlice({\n name: 'layout',\n initialState: {\n skin: initialSkin(),\n isRTL: initialDirection(),\n layout: themeConfig.layout.type,\n lastLayout: themeConfig.layout.type,\n menuCollapsed: initialMenuCollapsed(),\n footerType: themeConfig.layout.footer.type,\n navbarType: themeConfig.layout.navbar.type,\n menuHidden: themeConfig.layout.menu.isHidden,\n contentWidth: themeConfig.layout.contentWidth,\n routerTransition: themeConfig.layout.routerTransition,\n navbarColor: themeConfig.layout.navbar.backgroundColor,\n toolbarItems: null\n },\n reducers: {\n handleRTL: (state, action) => {\n state.isRTL = action.payload\n window.localStorage.setItem('direction', JSON.stringify(action.payload))\n },\n handleSkin: (state, action) => {\n state.skin = action.payload\n window.localStorage.setItem('skin', JSON.stringify(action.payload))\n },\n handleLayout: (state, action) => {\n state.layout = action.payload\n },\n handleFooterType: (state, action) => {\n state.footerType = action.payload\n },\n handleNavbarType: (state, action) => {\n state.navbarType = action.payload\n },\n handleMenuHidden: (state, action) => {\n state.menuHidden = action.payload\n },\n handleLastLayout: (state, action) => {\n state.lastLayout = action.payload\n },\n handleNavbarColor: (state, action) => {\n state.navbarColor = action.payload\n },\n handleContentWidth: (state, action) => {\n state.contentWidth = action.payload\n },\n handleMenuCollapsed: (state, action) => {\n state.menuCollapsed = action.payload\n window.localStorage.setItem('menuCollapsed', JSON.stringify(action.payload))\n },\n handleRouterTransition: (state, action) => {\n state.routerTransition = action.payload\n },\n handleToolbarItems: (state, action) => {\n state.toolbarItems = action.payload\n }\n }\n})\n\nexport const {\n handleRTL,\n handleSkin,\n handleLayout,\n handleLastLayout,\n handleMenuHidden,\n handleNavbarType,\n handleFooterType,\n handleNavbarColor,\n handleContentWidth,\n handleMenuCollapsed,\n handleRouterTransition,\n handleToolbarItems\n} = layoutSlice.actions\n\nexport default layoutSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('SaleInvoiceReturnCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SaleInvoiceReturnCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetSalesReturnInvoiceCustomization', { params })\n dispatch(setLoading({ getData: false }))\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n\n if(response.data.data.stampImage) {\n try {\n response.data.data.stampImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.stampImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showWaterImage) {\n try {\n response.data.data.showWaterImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.showWaterImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n\n\n if(response.data.data.showHeaderImage && response.data.data.headerImage) {\n try {\n response.data.data.headerImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.headerImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n\n return {\n params,\n data: response.data,\n\n }\n})\n\nexport const getBank = createAsyncThunk('SaleInvoiceReturnCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const SaleInvoiceReturnCustomizationSlice = createSlice({\n name: 'SaleInvoiceReturnCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SaleInvoiceReturnCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('PurchaseInvoiceCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PurchaseInvoiceCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPurchaseInvoiceCustomization', { params })\n dispatch(setLoading({ getData: false }))\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n\n if(response.data.data.showHeaderImage && response.data.data.headerImage) {\n try {\n response.data.data.headerImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.headerImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showFooterBackground && response.data.data.footerBackgroundImage) {\n try {\n response.data.data.footerBackgroundImage64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.footerBackgroundImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('PurchaseInvoiceCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const PurchaseInvoiceCustomizationSlice = createSlice({\n name: 'PurchaseInvoiceCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default PurchaseInvoiceCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('customerInvoicePref/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('customerInvoicePref/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Prefrences/GetSalesInvoicePrefrences', { params })\n const responseColumns = await axios.get('/Prefrences/GetSalesFormColumns', {})\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n columns: responseColumns.data\n }\n})\n\nexport const getCodeCustomization = createAsyncThunk('customerInvoicePref/getCodeCustomization', async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }))\n const response = await axios.get('/Prefrences/GetDocumentCodesPrefrences', { params })\n\n dispatch(setLoading({ getCodeCustomization: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const customerInvoicePref = createSlice({\n name: 'customerInvoicePref',\n initialState: {\n data: [],\n columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms\n state.notes = action.payload.data.data.notes\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default customerInvoicePref.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('SaleExportInvoiceCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SaleExportInvoiceCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n dispatch(getBank())\n const response = await axios.get('/InvoicePreviewCustomization/SelectExportPackingListCustomization', { params })\n dispatch(setLoading({ getData: false }))\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.stampImage) {\n try {\n response.data.data.stampImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.stampImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n if(response.data.data.showWaterImage) {\n try {\n response.data.data.showWaterImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.showWaterImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('SaleExportInvoiceCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const SaleExportInvoiceCustomizationSlice = createSlice({\n name: 'SaleExportInvoiceCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SaleExportInvoiceCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('DeliveryNotesCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('DeliveryNotesCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetDeliveryNotesCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('DeliveryNotesCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const deliveryNotesCustomizationSlice = createSlice({\n name: 'deliveryNotesCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default deliveryNotesCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('projectTransactions/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('projectTransactions/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getInvoiceData: true }))\n if (JSON.stringify(params) !== JSON.stringify(getState().projectTransactions?.invoiceParams) || params.forceLoad) {\n try {\n const responseConsolidated = await axios.get('/SalesInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getInvoiceData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getInvoiceData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n } else {\n dispatch(setLoading({getInvoiceData: false}))\n return {\n params: getState().projectTransactions?.invoiceParams,\n data: {data: {list: getState().projectTransactions?.invoiceData??[], totalRecords: getState().projectTransactions?.invoiceTotal??0}},\n }\n }\n})\n\nexport const getSalesReturnData = createAsyncThunk('projectTransactions/getSalesReturnData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getSalesReturnData: true }))\n try {\n const responseConsolidated = await axios.get('/SalesReturnInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getSalesReturnData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getSalesReturnData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const getEstimateData = createAsyncThunk('projectTransactions/getEstimateData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getEstimateData: true }))\n if (JSON.stringify(params) !== JSON.stringify(getState().projectTransactions?.invoiceParams) || params.forceLoad) {\n try {\n const responseConsolidated = await axios.get('/SalesOrders/ConsolidatedList', {params})\n dispatch(setLoading({getEstimateData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getEstimateData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n } else {\n dispatch(setLoading({getEstimateData: false}))\n return {\n params: getState().projectTransactions?.estParams,\n data: {data: {list: getState().projectTransactions?.estData??[], totalRecords: getState().projectTransactions?.estTotal??0}},\n }\n }\n})\n\nexport const getPOData = createAsyncThunk('projectTransactions/getPOData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getPOData: true }))\n try {\n const responseConsolidated = await axios.get('/PurchaseOrders/ConsolidatedList', {params})\n dispatch(setLoading({getPOData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getPOData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const getBillsData = createAsyncThunk('projectTransactions/getBillsData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getBillsData: true }))\n try {\n const responseConsolidated = await axios.get('/PurchaseInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getBillsData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getBillsData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const getBillsReturnData = createAsyncThunk('projectTransactions/getBillsReturnData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getBillsReturnData: true }))\n try {\n const responseConsolidated = await axios.get('/PurchaseReturnInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getBillsReturnData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getBillsReturnData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const getExpensesData = createAsyncThunk('projectTransactions/getExpensesData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getExpensesData: true }))\n try {\n const responseConsolidated = await axios.get('/Expenses/ConsolidatedList', {params})\n dispatch(setLoading({getExpensesData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getExpensesData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const getJournalData = createAsyncThunk('projectTransactions/getJournalData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getJournalData: true }))\n try {\n const responseConsolidated = await axios.get('/JV/ConsolidatedList', {params})\n dispatch(setLoading({getJournalData: false}))\n return {\n params,\n data: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getJournalData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n }\n }\n})\n\nexport const projectTransactionsSlice = createSlice({\n name: 'projectTransactions',\n initialState: {\n invoiceData: [],\n invoiceReturnData: [],\n journalData: [],\n estData: [],\n expData: [],\n billsData: [],\n poData: [],\n billsReturnData: [],\n invoiceTotal: 0,\n invoiceReturnTotal: 0,\n poTotal: 0,\n journalTotal: 0,\n billsTotal: 0,\n billsReturnTotal: 0,\n estTotal: 0,\n expTotal: 0,\n invoiceParams: {},\n invoiceReturnParams: {},\n poParams: {},\n billsParams: {},\n journalParams: {},\n billsReturnParams: {},\n estParams: {},\n expParams: {},\n loadingState: { getInvoiceData: false, getEstimateData: false, getBillsData: false, getExpensesData: false, getSalesReturnData: false, getBillsReturnData: false, getPOData: false, getJournalData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.invoiceData = action.payload.data.data.list\n state.invoiceTotal = action.payload.data.totalRecords\n state.invoiceParams = action.payload.params\n })\n .addCase(getSalesReturnData.fulfilled, (state, action) => {\n state.invoiceReturnData = action.payload.data.data.list\n state.invoiceReturnTotal = action.payload.data.totalRecords\n state.invoiceReturnParams = action.payload.params\n })\n .addCase(getEstimateData.fulfilled, (state, action) => {\n state.estData = action.payload.data.data.list\n state.estTotal = action.payload.data.totalRecords\n state.estParams = action.payload.params\n })\n .addCase(getExpensesData.fulfilled, (state, action) => {\n state.expData = action.payload.data.data.list\n state.expTotal = action.payload.data.totalRecords\n state.expParams = action.payload.params\n })\n .addCase(getBillsData.fulfilled, (state, action) => {\n state.billsData = action.payload.data.data.list\n state.billsTotal = action.payload.data.totalRecords\n state.billsParams = action.payload.params\n })\n .addCase(getPOData.fulfilled, (state, action) => {\n state.poData = action.payload.data.data.list\n state.poTotal = action.payload.data.totalRecords\n state.poParams = action.payload.params\n })\n .addCase(getBillsReturnData.fulfilled, (state, action) => {\n state.billsReturnData = action.payload.data.data.list\n state.billsReturnTotal = action.payload.data.totalRecords\n state.billsReturnParams = action.payload.params\n })\n .addCase(getJournalData.fulfilled, (state, action) => {\n state.journalData = action.payload.data.data.list\n state.journalTotal = action.payload.data.totalRecords\n state.journalParams = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default projectTransactionsSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCustomer/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const setShowDetail = createAsyncThunk('appCustomer/setShowDetail', async (showDetail) => ({...showDetail}))\n\nexport const setSelectedIndex = createAsyncThunk('appCustomer/setSelectedIndex', async (selectedIndex) => ({selectedIndex}))\n\nexport const setSelectedCustomer = createAsyncThunk('appCustomer/setSelectedCustomer', async (paramData, {\n dispatch,\n getState\n}) => {\n dispatch(setShowDetail({showDetail: paramData.showDetail}))\n if (getState().customers?.selectedCustomer?.recno !== paramData?.selectedCustomer?.recno) {\n if (paramData.selectedCustomer) {\n dispatch(setLoading({loadDetail: true}))\n const res = await axios.get(`/Customers/GetDetails/${paramData.selectedCustomer.recno}`)\n dispatch(setLoading({loadDetail: false}))\n return {\n selectedCustomer: res.data.data\n }\n } else {\n return {\n selectedCustomer: paramData.selectedCustomer\n }\n }\n } else {\n return {\n selectedCustomer: getState().customers?.selectedCustomer\n }\n }\n})\n\nexport const getData = createAsyncThunk('appCustomer/getData', async (params, {dispatch}) => {\n dispatch(setLoading({getTypeData: true}))\n dispatch(setLoading({getData: true}))\n let response;\n if (params.withAmount) {\n response = await axios.get('/Customers/List', {params})\n } else {\n response = await axios.get('/Customers/List', {params})\n }\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appCustomer/getTypeData', async (params, {dispatch}) => {\n dispatch(setLoading({getTypeData: true}))\n const response = await axios.get('/Customers/List', {params})\n dispatch(setLoading({getTypeData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appCustomer/getJournal', async (recno, {dispatch}) => {\n dispatch(setLoading({getJournal: true}))\n const response = await axios.get(`/Customers/${recno}`)\n dispatch(setLoading({getJournal: false}))\n\n return response.data\n})\n\n\nexport const deleteInvoice = createAsyncThunk('appCustomer/deleteInvoice', async (id, {dispatch, getState}) => {\n dispatch(setLoading({deleteInvoice: true}))\n await axios.delete('/apps/invoice/delete', {id})\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({deleteInvoice: false}))\n return id\n})\n\n\nexport const getColumns = createAsyncThunk('appCustomer/getColumns', async (params, { dispatch }) => {\n dispatch(setLoading({ getColumns: true }))\n const res = await axios.get('/Prefrences/GetCustomerFormListColumns', { params })\n dispatch(setLoading({ getColumns: false }))\n return {\n params,\n data: res.data??{data: []}\n }\n})\n\n\nexport const appCustomerSlice = createSlice({\n name: 'appCustomer',\n initialState: {\n employees: {},\n data: [],\n columns: [],\n totalRecords: 1,\n selectedIndex: 0,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n selectedCustomer: {},\n loadingState: {getData: false, getTypeData: false, getJournal: false, loadDetail: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.employee = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n .addCase(setSelectedCustomer.fulfilled, (state, action) => {\n state.selectedCustomer = action.payload.selectedCustomer\n })\n .addCase(setShowDetail.fulfilled, (state, action) => {\n if (!action.payload.showDetail) {\n state.selectedIndex = 0\n }\n\n state.showDetail = action.payload.showDetail\n })\n .addCase(getColumns.fulfilled, (state, action) => {\n let cols = [...action.payload.data.data];\n cols.sort((a, b) => a.sortNo - b.sortNo);\n state.columns = cols\n })\n .addCase(setSelectedIndex.fulfilled, (state, action) => {\n state.selectedIndex = action.payload.selectedIndex\n })\n }\n})\n\nexport default appCustomerSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('DemandCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('DemandCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetDemandCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('DemandCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const DemandCustomizationSlice = createSlice({\n name: 'DemandCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default DemandCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('AdjustmentTypes/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('AdjustmentTypes/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryAdjustmentTypes/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const AdjustmentTypes = createSlice({\n name: 'AdjustmentTypes',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default AdjustmentTypes.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('coaAccounts/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getAccountTypes = createAsyncThunk('coaAccounts/getAccountTypes', async () => {\n const response = await axios.get('/Defaults/COATypes')\n return response.data\n})\n\nexport const getAccountDetailTypes = createAsyncThunk('coaAccounts/getAccountDetailTypes', async (params) => {\n const response = await axios.get(`/Defaults/COALevel2TypeWiseControlCOAList?Type=${params?.type}`)\n return response.data\n})\n\nexport const getAccountSubDetailTypes = createAsyncThunk('coaAccounts/getAccountSubDetailTypes', async (params) => {\n const response = await axios.get(`/Defaults/DetailTypeWiseCOAList?Type=${params?.type}`)\n return response.data\n})\n\nexport const getAccounts = createAsyncThunk('coaAccounts/getAccounts', async (params,{ dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n if(!params){\n params = {}\n }\n const response = await axios.get('/COA/ListV2', {params})\n dispatch(setLoading({getData: false}))\n return response.data\n})\n\nexport const getAccountsCategories = createAsyncThunk('coaAccounts/getAccountCategorirs', async () => {\n const response = await axios.get('/Defaults/COACategories')\n return response.data\n})\n\nexport const getAccessableLocations = createAsyncThunk('coaAccounts/getAccessableLocations', async () => {\n const response = await axios.get('/Defaults/COAAccessibleLocations')\n return response.data\n})\n\nexport const getDefaultLocations = createAsyncThunk('coaAccounts/getDefaultLocations', async () => {\n const response = await axios.get('/Defaults/Locations')\n return response.data\n})\n\n// export const selectChat = createAsyncThunk('coaAccounts/selectChat', async (id, { dispatch }) => {\n// const response = await axios.get('/apps/chat/get-chat', { id })\n// await dispatch(getChatContacts())\n// return response.data\n// })\n\n// export const sendMsg = createAsyncThunk('coaAccounts/sendMsg', async (obj, { dispatch }) => {\n// const response = await axios.post('/apps/chat/send-msg', { obj })\n// await dispatch(selectChat(obj.contact.id))\n// return response.data\n// })\n\nexport const coaAccountsSlice = createSlice({\n name: 'coaAccounts',\n initialState: {\n accounts: [],\n totalRecords: 0,\n accountCategories: [],\n accessableLocations: [],\n defaultLocations: [],\n accountTypes: [],\n accountDetailTypes: [],\n accountSubDetailTypes: [],\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n // .addCase(getUserProfile.fulfilled, (state, action) => {\n // state.userProfile = action.payload\n // })\n .addCase(getAccountTypes.fulfilled, (state, action) => {\n state.accountTypes = action.payload.data\n })\n .addCase(getAccountDetailTypes.fulfilled, (state, action) => {\n state.accountDetailTypes = action.payload.data\n })\n .addCase(getAccountSubDetailTypes.fulfilled, (state, action) => {\n state.accountSubDetailTypes = action.payload.data\n })\n .addCase(getAccounts.fulfilled, (state, action) => {\n let sortedList = action.payload.data.list.sort((a,b) => ((b.coaBalance??0) - (a.coaBalance??0)))\n state.accounts = sortedList\n state.totalRecords = action.payload.totalRecords\n })\n .addCase(getAccountsCategories.fulfilled, (state, action) => {\n state.accountCategories = action.payload.data\n })\n .addCase(getAccessableLocations.fulfilled, (state, action) => {\n state.accessableLocations = action.payload.data\n })\n .addCase(getDefaultLocations.fulfilled, (state, action) => {\n state.defaultLocations = action.payload.data\n }).addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default coaAccountsSlice.reducer\n","import { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('expense/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('expense/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const consolidated_response = await axios.get('/Expenses/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: consolidated_response.data\n }\n})\n\nexport const getExpenseActivityLogData = createAsyncThunk('appPurchase/getExpenseActivityLogData', async (recno, { dispatch }) => {\n dispatch(setLoading({ getExpenseActivityLogData: true }))\n const response = await axios.get(`/Expenses/GetExpenseLog/${recno}`)\n dispatch(setLoading({ getExpenseActivityLogData: false }))\n return {\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('expense/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/Expenses/List/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('expense/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/Expenses/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('expense/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/expenses', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appPurchaseSlice = createSlice({\n name: 'expense',\n initialState: {\n appPurchase: {},\n data: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n activityLogs: [],\n totalLogsRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(getExpenseActivityLogData.fulfilled, (state, action) => {\n state.activityLogs = action.payload.data.data.list\n state.totalLogsRecords = action.payload.data.totalRecords\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPurchaseSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const tabs = {\n Expense: { type: 'Exepnse', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"EXP\" },\n VendorAdvance: { type: 'Vendor Advance', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VA\" },\n VendorPayment: { type: 'Vendor Payment', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VP\" },\n TransferToAccount: { type: 'Transfer To Another Account', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"TTA\" },\n CardPayment: { type: 'Card Payment', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"CP\" },\n OwnerDrawings: { type: 'Owner Drawings', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"OD\" },\n // ExpenseRefund: { type: 'Expense Refund', uri: '/CPV', formType: 'CPV' },\n DepositToAccounts: { type: 'Deposit To Other Accounts', uri: '/CPV', formType: 'CPV', listType: 'CPV', voucherType: \"DTA\" },\n CreditNoteRefund: { type: 'Credit Note Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"CNR\" },\n PaymentRefund: { type: 'Payment Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"PR\" },\n // VendorCreditRefund: { type: 'Vendor Credit Refund', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"VCR\" },\n EmployeeReimbursement: { type: 'Employee Advance', uri: '/Payments', formType: 'Payments', listType: 'DCNOTE(Payment)', voucherType: \"ER\" }\n}\n\nexport const setLoading = createAsyncThunk('appPayments/setLoading', async (loadingState) => ({ ...loadingState }))\nexport const getData = createAsyncThunk('appPayments/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Defaults/DetailCashBankCOAList', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\nexport const getTransactions = createAsyncThunk('appPayments/getTransactions', async (params, { dispatch }) => {\n dispatch(setLoading({ getTransactions: true }))\n let response;\n const formType = tabs[params.tab].formType\n if(!(params.avoidVoucher)) {\n params.voucherType = tabs[params.tab].voucherType\n }\n if (formType === \"CPV\") {\n response = await axios.get(`/CPV/List`, { params })\n }\n else {\n response = await axios.get(`/Payments/List`, { params })\n }\n dispatch(setLoading({ getTransactions: false }))\n return response.data\n\n})\n\nexport const clearTransactions = createAsyncThunk('appPayments/clearTransactions', async () => {\n return []\n})\n\nexport const getVoucher = createAsyncThunk('appPayments/getVoucher', async (recno, { dispatch }) => {\n dispatch(setLoading({ getVoucher: true }))\n const response = await axios.get(`/CPV/${recno}`)\n dispatch(setLoading({ getVoucher: false }))\n return response.data\n})\n\nexport const getTransactionAccount = createAsyncThunk('appPayments/getTransactionAccount', async (recno, { dispatch }) => {\n dispatch(setLoading({ getTransactionAccount: true }))\n dispatch(clearTransactions())\n const response = await axios.get(`/Defaults/DetailCashBankCOAList?Recno=${recno}`)\n dispatch(setLoading({ getTransactionAccount: false }))\n\n return response.data\n})\n\nexport const appPayments = createSlice({\n name: 'appPayments',\n initialState: {\n voucher: {},\n data: [],\n transactions: [],\n account: null,\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getVoucher: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTransactionAccount.fulfilled, (state, action) => {\n state.account = action.payload.data.length ? action.payload.data[0] : null\n })\n .addCase(getTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload.data.list\n state.totalRecords = action.payload.totalRecords\n state.params = action.payload.params\n })\n .addCase(clearTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload\n state.totalRecords = 0\n state.params = {}\n })\n .addCase(getVoucher.fulfilled, (state, action) => {\n state.voucher = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPayments.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appVendor/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appVendor/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Vendors/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const setShowDetail = createAsyncThunk('appVendor/setShowDetail', async (showDetail) => ({ ...showDetail }))\n\n\nexport const setSelectedVendor = createAsyncThunk('appVendor/setSelectedVendor', async (paramData, {dispatch}) => {\n\n dispatch(setShowDetail({ showDetail: paramData.showDetail }))\n if(paramData.selectedVendor) {\n dispatch(setLoading({ loadDetail: true }))\n const res = await axios.get(`/Vendors/GetDetails/${paramData.selectedVendor.recno}`)\n dispatch(setLoading({ loadDetail: false }))\n return {\n selectedVendor: res.data.data\n }\n }else {\n return {\n selectedVendor: paramData.selectedVendor\n }\n }\n})\n\n\nexport const getTypeData = createAsyncThunk('appVendor/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/Vendors/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appVendor/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/Vendors/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\n\nexport const deleteInvoice = createAsyncThunk('appVendor/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appVendorSlice = createSlice({\n name: 'appVendor',\n initialState: {\n employees: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n selectedVendor: {},\n showDetail: false,\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.employee = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n .addCase(setSelectedVendor.fulfilled, (state, action) => {\n state.selectedVendor = action.payload.selectedVendor\n })\n .addCase(setShowDetail.fulfilled, (state, action) => {\n state.showDetail = action.payload.showDetail\n })\n }\n})\n\nexport default appVendorSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appReceiptInLocationNotes/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appReceiptInLocationNotes/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n if (JSON.stringify(params) !== JSON.stringify(getState().customerInvoice?.params) || params.forceLoad) {\n try {\n if(!params.Page) {\n params.Page = getState().customerInvoice?.params.Page??1;\n }\n\n if(!params.PageSize) {\n params.PageSize = getState().customerInvoice?.params.PageSize??20;\n }\n\n const responseConsolidated = await axios.get('/ReceiptInLocations/ConsolidatedList', {params})\n\n console.log(\"responseConsolidated\",responseConsolidated)\n\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: [],\n consolidated: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: {data: {list: [], totalRecords: 0}}\n }\n }\n } else {\n dispatch(setLoading({getData: false}))\n return {\n params: getState().customerInvoice?.params,\n data: {data: {list: getState().customerInvoice?.data??[], totalRecords: getState().customerInvoice?.totalRecords??0}},\n consolidated: {data: {list: getState().customerInvoice?.consolidated??[], totalRecords: getState().customerInvoice?.consolidatedTotalRecords??0}}\n }\n }\n})\n\nexport const getTypeData = createAsyncThunk('appReceiptInLocationNotes/getTypeData', async () => {\n // dispatch(setLoading({ getTypeData: true }))\n // const response = await axios.get('/JVTypes/List', { params })\n // dispatch(setLoading({ getTypeData: false }))\n // return {\n // params,\n // data: response.data\n // }\n return null\n})\n\nexport const getJournal = createAsyncThunk('appReceiptInLocationNotes/getJournal', async () => {\n // dispatch(setLoading({ getJournal: true }))\n // const response = await axios.get(`/SalesInvoices/${recno}`)\n // dispatch(setLoading({ getJournal: false }))\n\n // return response.data\n return null\n})\n\nexport const deleteInvoice = createAsyncThunk('appReceiptInLocationNotes/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appReceiptInLocationNotesSlice = createSlice({\n name: 'appReceiptInLocationNotes',\n initialState: {\n vendorInvoice: {},\n data: [],\n consolidated: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appReceiptInLocationNotesSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('JVCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('JVCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n dispatch(getBank())\n const response = await axios.get('/InvoicePreviewCustomization/GetJVCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('JVCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const JVCustomizationSlice = createSlice({\n name: 'JVCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default JVCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('ITLCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('ITLCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetITLCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('ITLCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const itlCustomizationSlice = createSlice({\n name: 'itlCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default itlCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('RILCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('RILCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetRILCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getBank = createAsyncThunk('RILCustomization/getBank', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Locations/GetBankDetails', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const rilCustomizationSlice = createSlice({\n name: 'rilCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getBank.fulfilled, (state, action) => {\n state.bank_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default rilCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('RecoveriesCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('RecoveriesCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetRecoveryCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const RecoveriesCustomizationSlice = createSlice({\n name: 'RecoveriesCustomization',\n initialState: {\n data: {},\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default RecoveriesCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"purchaseReturnPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"purchaseReturnPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetPurchaseReturnInvoicePrefrences\", { params });\n const responseColumns = await axios.get('/Prefrences/GetPurchaseReturnInvoiceFormColumns', {})\n const responseCatColumns = await axios.get('/Prefrences/GetPurchaseReturnInvoiceAccountsFormColumns', {})\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n columns: responseColumns.data,\n cat_columns: responseCatColumns.data\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"purchaseReturnPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const purchaseReturnPref = createSlice({\n name: \"purchaseReturnPref\",\n initialState: {\n data: [],\n columns: [],\n cat_columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.cat_columns = (action.payload.cat_columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default purchaseReturnPref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"salesReturnPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"salesReturnPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetSalesReturnInvoicePrefrences\", { params });\n const responseColumns = await axios.get('/Prefrences/GetSalesReturnFormColumns', {})\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n columns: responseColumns.data\n }\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"salesReturnPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const salesReturnPref = createSlice({\n name: \"salesReturnPref\",\n initialState: {\n data: [],\n columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms\n state.notes = action.payload.data.data.notes\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default salesReturnPref.reducer;\n","// ** Redux Imports\nimport {createSlice, createAsyncThunk} from '@reduxjs/toolkit'\nimport axios from 'axios'\n\n\nexport const setLoading = createAsyncThunk('subscriptionInformation/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('subscriptionInformation/getData', async (params, {dispatch}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/OrgPaymentInvoices/GetOrganizationCurrentSubscriptionDetails', params)\n const responsePayment = await axios.get('OrgPaymentInvoices/GetOrganizationCurrentPaymentDetails', params)\n const BillHistory = await axios.get('/OrgPaymentInvoices/List', params)\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {...response.data.data, ...responsePayment.data.data},\n paymentPlan: BillHistory.data.data.list,\n\n }\n})\n\nexport const getCardsDetail = createAsyncThunk('subscriptionInformation/getCardsDetail', async (params, {dispatch}) => {\n dispatch(setLoading({getCardsData: true}))\n const response = await axios.get('/OrgPaymentInvoices/GetStripeRegistedCards', params)\n const responseCurrent = await axios.get('/OrgPaymentInvoices/GetOrganizationCurrentSubscriptionDetails', params)\n const responsePayment = await axios.get('OrgPaymentInvoices/GetOrganizationCurrentPaymentDetails', params)\n dispatch(setLoading({getCardsData: false}))\n return {\n params,\n data: {...responseCurrent.data.data, ...responsePayment.data.data},\n cardsDetail: response.data.data.list,\n\n }\n})\n\nexport const appInvoiceSlice = createSlice({\n name: 'subscriptionInformation',\n initialState: {\n data: [],\n paymentPlan: [],\n cardsDetail: [],\n loadingState: {getData: false, getCardsData: false, addingCard: false}\n\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n state.paymentPlan = action.payload.paymentPlan\n }).addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...(state.loadingState), ...action.payload}\n })\n .addCase(getCardsDetail.fulfilled, (state, action) => {\n state.cardsDetail = action.payload.cardsDetail\n state.data = action.payload.data\n })\n }\n})\n\nexport default appInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appJournal/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appJournal/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/JV/List', { params })\n const consolidatedResponse = await axios.get('/JV/ConsolidatedList', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n consolidated: consolidatedResponse.data,\n }\n})\n\nexport const getJvActivityLogData = createAsyncThunk('appJournal/getJvActivityLogData', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJvActivityLogData: true }))\n const response = await axios.get(`/JV/GetJVLog/${recno}`)\n dispatch(setLoading({ getJvActivityLogData: false }))\n return {\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appJournal/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appJournal/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/JV/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\n\nexport const deleteInvoice = createAsyncThunk('appJournal/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appJournalSlice = createSlice({\n name: 'appJournal',\n initialState: {\n journal: {},\n data: [],\n consolidated: [],\n totalRecords: 1,\n totalRecordsConsolidated: 1,\n activityLogs: [],\n totalLogsRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.totalRecordsConsolidated = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getJvActivityLogData.fulfilled, (state, action) => {\n state.activityLogs = action.payload.data.data.list\n state.totalLogsRecords = action.payload.data.totalRecords\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appJournalSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPurchase/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPurchase/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const consolidated_response = await axios.get('/PurchaseInvoices/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: consolidated_response.data\n }\n})\n\nexport const getPurchaseActivityLogData = createAsyncThunk('appPurchase/getPurchaseActivityLogData', async (recno, { dispatch }) => {\n dispatch(setLoading({ getPurchaseActivityLogData: true }))\n const response = await axios.get(`/PurchaseInvoices/GetPurchaseLog/${recno}`)\n dispatch(setLoading({ getPurchaseActivityLogData: false }))\n return {\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appPurchase/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appPurchase/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appPurchase/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appPurchaseSlice = createSlice({\n name: 'appPurchase',\n initialState: {\n vendorInvoice: {},\n data: [],\n activityLogs: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n totalLogsRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(getPurchaseActivityLogData.fulfilled, (state, action) => {\n state.activityLogs = action.payload.data.data.list\n state.totalLogsRecords = action.payload.data.totalRecords\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPurchaseSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appIssueToLocationNotes/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appIssueToLocationNotes/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n if (JSON.stringify(params) !== JSON.stringify(getState().customerInvoice?.params) || params.forceLoad) {\n try {\n if(!params.Page) {\n params.Page = getState().customerInvoice?.params.Page??1;\n }\n\n if(!params.PageSize) {\n params.PageSize = getState().customerInvoice?.params.PageSize??20;\n }\n\n const responseConsolidated = await axios.get('/IssueToLocations/ConsolidatedList', {params})\n\n console.log(\"responseConsolidated\",responseConsolidated)\n\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: [],\n consolidated: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: {data: {list: [], totalRecords: 0}}\n }\n }\n } else {\n dispatch(setLoading({getData: false}))\n return {\n params: getState().customerInvoice?.params,\n data: {data: {list: getState().customerInvoice?.data??[], totalRecords: getState().customerInvoice?.totalRecords??0}},\n consolidated: {data: {list: getState().customerInvoice?.consolidated??[], totalRecords: getState().customerInvoice?.consolidatedTotalRecords??0}}\n }\n }\n})\n\nexport const getTypeData = createAsyncThunk('appIssueToLocationNotes/getTypeData', async () => {\n // dispatch(setLoading({ getTypeData: true }))\n // const response = await axios.get('/JVTypes/List', { params })\n // dispatch(setLoading({ getTypeData: false }))\n // return {\n // params,\n // data: response.data\n // }\n return null\n})\n\nexport const getJournal = createAsyncThunk('appIssueToLocationNotes/getJournal', async () => {\n // dispatch(setLoading({ getJournal: true }))\n // const response = await axios.get(`/SalesInvoices/${recno}`)\n // dispatch(setLoading({ getJournal: false }))\n\n // return response.data\n return null\n})\n\nexport const deleteInvoice = createAsyncThunk('appIssueToLocationNotes/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appIssueToLocationNotesSlice = createSlice({\n name: 'appIssueToLocationNotes',\n initialState: {\n vendorInvoice: {},\n data: [],\n consolidated: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appIssueToLocationNotesSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('PaymentMadeCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PaymentMadeCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPaymentsCustomization', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const PaymentMadeCustomizationSlice = createSlice({\n name: 'PaymentMadeCustomization',\n initialState: {\n data: {},\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default PaymentMadeCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('expensePreference/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('expensePreference/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Prefrences/GetExpensesPrefrences', { params })\n const responseColumns = await axios.get('/Prefrences/GetExpensesFormColumns', {})\n const responseCatColumns = await axios.get('/Prefrences/GetExpensesAccountsFormColumns', {})\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n columns: responseColumns.data,\n cat_columns: responseCatColumns.data\n };\n})\n\nexport const getCodeCustomization = createAsyncThunk('expensePreference/getCodeCustomization', async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }))\n const response = await axios.get('/Prefrences/GetDocumentCodesPrefrences', { params })\n\n dispatch(setLoading({ getCodeCustomization: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const expensePreference = createSlice({\n name: 'expensePreference',\n initialState: {\n data: [],\n columns: [],\n cat_columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.cat_columns = (action.payload.cat_columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms\n state.notes = action.payload.data.data.notes\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default expensePreference.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('tickets/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('tickets/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Tickets/TicketsList', params)\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data.data.list,\n }\n})\n\nexport const getStatus = createAsyncThunk('tickets/getStatus', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Defaults/GetTicketStatuses', params)\n dispatch(setLoading({ getData: false }))\n return {\n params,\n getStatus: response.data.data,\n }\n})\n\nexport const getchat = createAsyncThunk('tickets/getchat', async (recno, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get(`/Tickets/GetTicketThreads/${recno}`)\n dispatch(setLoading({ getData: false }))\n return {\n params,\n getmsgs: response.data.data,\n }\n})\n\nexport const getPriorityList = createAsyncThunk('tickets/getPriorityList', async (params, { dispatch }) => {\n dispatch(setLoading({ getPriorityList: true })) // Updated action type\n const response = await axios.get('/Defaults/GetPriorityTypes', params)\n dispatch(setLoading({ getPriorityList: false })) // Updated action type\n return {\n params,\n priorityList: response.data.data,\n }\n})\n\nexport const fetchDetailData = createAsyncThunk('tickets/fetchDetailData', async (recno, { dispatch }) => { // Updated action type\n dispatch(setLoading({ fetchDetailData: true })) // Updated action type\n const response = await axios.get(`/Tickets/GetSingleTicketDetails/${recno}`)\n dispatch(setLoading({ fetchDetailData: false }))\n return {\n ticketDetail: response.data.data,\n }\n})\n\nexport const appInvoiceSlice = createSlice({\n name: 'tickets',\n initialState: {\n data: [],\n priorityList: [],\n ticketDetail: [],\n getmsgs:[],\n getStatus:[],\n loadingState: { getData: false, getPriorityList: false, fetchDetailData: false }, // Updated action types\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getPriorityList.fulfilled, (state, action) => {\n state.priorityList = action.payload.priorityList\n })\n builder.addCase(fetchDetailData.fulfilled, (state, action) => {\n state.ticketDetail = action.payload.ticketDetail\n })\n builder.addCase(getchat.fulfilled, (state, action) => {\n state.getmsgs = action.payload.getmsgs\n })\n builder.addCase(getStatus.fulfilled, (state, action) => {\n state.getStatus = action.payload.getStatus\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = { ...state.loadingState, ...action.payload }\n })\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n })\n\n }\n})\n\nexport default appInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"purchaseOrderPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"purchaseOrderPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetPurchaseOrderPrefrences\", { params });\n const responseColumns = await axios.get('/Prefrences/GetPurchaseOrderFormColumns', {})\n const responseCatColumns = await axios.get('/Prefrences/GetPurchaseOrderAccountsFormColumns', {})\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n columns: responseColumns.data,\n cat_columns: responseCatColumns.data\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"purchaseOrderPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const purchaseOrderPref = createSlice({\n name: \"purchaseOrderPref\",\n initialState: {\n data: [],\n columns: [],\n cat_columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.cat_columns = (action.payload.cat_columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default purchaseOrderPref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('inventoryFieldsSlice/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('inventoryFieldsSlice/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/DynamicFields/List', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const inventoryFieldsSlice = createSlice({\n name: 'inventoryFieldsSlice',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default inventoryFieldsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"grnPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"grnPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetGRNPrefrences\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"grnPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const grnPref = createSlice({\n name: \"grnPref\",\n initialState: {\n data: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default grnPref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"deliveryNotePref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"deliveryNotePref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetDeliveryNotePrefrences\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"deliveryNotePref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const deliveryNotePref = createSlice({\n name: \"deliveryNotePref\",\n initialState: {\n data: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default deliveryNotePref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"purchaseRequestPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"purchaseRequestPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetPurchaseRequestPrefrences\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"purchaseRequestPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const purchaseRequestPref = createSlice({\n name: \"purchaseRequestPref\",\n initialState: {\n data: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default purchaseRequestPref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"demandPref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"demandPref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetDemandPrefrences\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"demandPref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const demandPref = createSlice({\n name: \"demandPref\",\n initialState: {\n data: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default demandPref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"purchaseInvoicePref/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"purchaseInvoicePref/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Prefrences/GetPurchaseInvoicePrefrences\", { params });\n const responseColumns = await axios.get('/Prefrences/GetPurchaseInvoiceFormColumns', {})\n const responseCatColumns = await axios.get('/Prefrences/GetPurchaseInvoiceAccountsFormColumns', {})\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n columns: responseColumns.data,\n cat_columns: responseCatColumns.data\n };\n});\n\nexport const getCodeCustomization = createAsyncThunk(\"purchaseInvoicePref/getCodeCustomization\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }));\n const response = await axios.get(\"/Prefrences/GetDocumentCodesPrefrences\", { params });\n\n dispatch(setLoading({ getCodeCustomization: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const purchaseInvoicePref = createSlice({\n name: \"purchaseInvoicePref\",\n initialState: {\n data: [],\n columns: [],\n cat_columns: [],\n terms: \"\",\n notes: \"\",\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.cat_columns = (action.payload.cat_columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms;\n state.notes = action.payload.data.data.notes;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default purchaseInvoicePref.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('estimatePref/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('estimatePref/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Prefrences/GetSalesEstimatePrefrences', { params })\n const responseColumns = await axios.get('/Prefrences/GetSalesEstimateFormColumns', {})\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n columns: responseColumns.data\n }\n})\n\nexport const getCodeCustomization = createAsyncThunk('estimatePref/getCodeCustomization', async (params, { dispatch }) => {\n dispatch(setLoading({ getCodeCustomization: true }))\n const response = await axios.get('/Prefrences/GetDocumentCodesPrefrences', { params })\n\n dispatch(setLoading({ getCodeCustomization: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const estimatePref = createSlice({\n name: 'estimatePref',\n initialState: {\n data: [],\n columns: [],\n terms: \"\",\n notes: \"\",\n copyNotesToInvoice: false,\n copyTermsToInvoice: false,\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.columns = (action.payload.columns.data??[]).sort((a, b) => a.columnSeq - b.columnSeq)\n state.terms = action.payload.data.data.terms\n state.notes = action.payload.data.data.notes\n state.copyNotesToInvoice = action.payload.data.data.copyNotesToInvoice\n state.copyTermsToInvoice = action.payload.data.data.copyTermsToInvoice\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getCodeCustomization.fulfilled, (state, action) => {\n state.codeCustomization = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default estimatePref.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appVatReturns/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appVatReturns/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/VatReturns/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getDetailData = createAsyncThunk('appVatReturns/getDetailData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getDetailData: true }))\n const response = await axios.get(`/VatReturns/GetDetail/${params.Recno}`, {params})\n dispatch(setLoading({getDetailData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getSerialData = createAsyncThunk('appVatReturns/getSerialData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getSerialData: true }))\n const response = await axios.get(`/VatReturns/SelectFileVatReturnReportDetails`, {params})\n dispatch(setLoading({getSerialData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getAdjustmentData = createAsyncThunk('appVatReturns/getAdjustmentData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getAdjustmentData: true }))\n const response = await axios.get(`/VatReturns/SelectFileVatReturnReportAdjustmentDetails`, {params})\n dispatch(setLoading({getAdjustmentData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appVatReturnsSlice = createSlice({\n name: 'appVatReturns',\n initialState: {\n data: [],\n detail_data: {},\n serial_data: [],\n serial_header: {},\n totalSerialRecords: 1,\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getSerialData.fulfilled, (state, action) => {\n state.serial_data = action.payload.data.data.list\n state.serial_header = action.payload.data.data\n state.totalSerialRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getAdjustmentData.fulfilled, (state, action) => {\n state.adjustment_data = action.payload.data.data.list\n state.adjustment_header = action.payload.data.data\n state.totalAdjustmentRecords = action.payload.data.data.totalRecords\n state.adjustment_params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.detail_data = action.payload.data.data\n state.detail_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appVatReturnsSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getAllSales} from \"../../deshboard/store\";\n\nexport const setLoading = createAsyncThunk('appPayments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPayments/getData', async (params, { dispatch }) => {\n let response;\n if(params.withBalance) {\n response = await axios.get('/Defaults/DetailCashBankCOAListWithBalances', {params})\n } else{\n response = await axios.get('/Defaults/DetailCashBankCOAList', {params})\n }\n return {\n params,\n data: response.data\n }\n})\n\n\nexport const getTransactions = createAsyncThunk('appBRS/getTransactions', async (params, { dispatch }) => {\n dispatch(setLoading({ getTransactions: true }))\n let response = await axios.get(`/BRS/GetSystemAllTransactions`, { params })\n dispatch(setLoading({ getTransactions: false }))\n return {\n data: response.data,\n params\n }\n\n})\n\n\nexport const getUnCategories = createAsyncThunk('appBRS/getUnCategories', async (params, { dispatch }) => {\n dispatch(setLoading({ getUnCategories: true }))\n let response = await axios.get(`/BRS/GetUnCategorizedTransactions`, { params })\n dispatch(setLoading({ getUnCategories: false }))\n return {\n data: response.data,\n params\n }\n\n})\n\nexport const clearTransactions = createAsyncThunk('appBRS/clearTransactions', async () => {\n return []\n})\n\n\n\nexport const getBanksChart = createAsyncThunk('FavStore/getBanksChart', async (params, { dispatch }) => {\n const response = await axios.get('/BRS/GetBRSBankChart', { params })\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const getTransactionAccount = createAsyncThunk('appBRS/getTransactionAccount', async (recno, { dispatch }) => {\n dispatch(clearTransactions())\n const response = await axios.get(`/Defaults/DetailCashBankCOAList?Recno=${recno}`)\n return response.data\n})\n\nexport const appBRS = createSlice({\n name: 'appBRS',\n initialState: {\n voucher: {},\n data: [],\n transactions: [],\n bank_chart: [],\n un_categories: [],\n account: null,\n totalRecords: 1,\n params: {},\n trans_params: {},\n bank_chart_params: {},\n loadingState: { getData: false, getVoucher: false, getTransactions: true, getUnCategories: true }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(getTransactionAccount.fulfilled, (state, action) => {\n state.account = action.payload.data.length ? action.payload.data[0] : null\n })\n .addCase(getTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.trans_params = action.payload.params\n })\n .addCase(getUnCategories.fulfilled, (state, action) => {\n state.un_categories = action.payload.data.data.list\n state.totalUnRecords = action.payload.data.totalRecords\n state.un_cat_params = action.payload.params\n })\n .addCase(getBanksChart.fulfilled, (state, action) => {\n state.bank_chart = action.payload.data.data\n state.bank_chart_params = action.payload.params\n })\n .addCase(clearTransactions.fulfilled, (state, action) => {\n state.transactions = action.payload\n state.totalRecords = 0\n state.params = {}\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appBRS.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('salesOrdersInvoice/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('salesOrdersInvoice/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const responseConsolidated = await axios.get('/SalesOrders/ConsolidatedList', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n consolidated: responseConsolidated.data\n }\n})\n\nexport const getColumns = createAsyncThunk('salesOrdersInvoice/getColumns', async (params, { dispatch }) => {\n dispatch(setLoading({ getColumns: true }))\n const res = await axios.get('/Prefrences/GetSalesEstimateFormListColumns', { params })\n dispatch(setLoading({ getColumns: false }))\n return {\n params,\n data: res.data??{data: []}\n }\n})\n\nexport const salesOrdersInvoiceSlice = createSlice({\n name: 'salesOrdersInvoice',\n initialState: {\n vendorInvoice: {},\n consolidated: [],\n data: [],\n columns: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n totalTypeRecords: 1,\n params: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = []\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = 0\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getColumns.fulfilled, (state, action) => {\n let cols = [...action.payload.data.data];\n cols.sort((a,b) => a.sortNo - b.sortNo);\n state.columns = cols\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default salesOrdersInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPOSShifts/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPOSShifts/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/POSShifts/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getUnAssigned = createAsyncThunk('appPOSShifts/getUnAssigned', async (params, { dispatch }) => {\n dispatch(setLoading({ getUnAssigned: true }))\n const response = await axios.get(`/Defaults/GetBranchTillUnassignedShifts/${params.tillId}`, { params })\n dispatch(setLoading({ getUnAssigned: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appPOSShifts = createSlice({\n name: 'appPOSShifts',\n initialState: {\n data: [],\n un_data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getUnAssigned: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getUnAssigned.fulfilled, (state, action) => {\n state.un_data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPOSShifts.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('SalesPackingSlipCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SalesPackingSlipCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetPackingListCustomization', { params })\n\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const SaleInvoiceCustomizationSlice = createSlice({\n name: 'SalesPackingSlipCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SaleInvoiceCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"advanceSettings/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"advanceSettings/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Settings/SelectOrganizationAdvancedSettings\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getApprovalData = createAsyncThunk(\"advanceSettings/getApprovalData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Settings/SelectOrganizationApprovalWorkFlowSettingsDetails\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const advanceSettings = createSlice({\n name: \"advanceSettings\",\n initialState: {\n data: {},\n approval_data: {},\n params: {},\n approval_params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(getApprovalData.fulfilled, (state, action) => {\n state.approval_data = action.payload.data.data;\n state.approval_params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default advanceSettings.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"posSettings/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"posSettings/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Settings/SelectOrganizationPosSettings\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const posSettings = createSlice({\n name: \"posSettings\",\n initialState: {\n data: {},\n params: {},\n loadingState: { getData: false, getCodeCustomization: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default posSettings.reducer;\n","import { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"ledgerReport/setLoading\", async (loadingState) => ({ ...loadingState }));\n\n\nexport const getData = createAsyncThunk(\"ledgerReport/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response;\n if(params.Customer){\n response = await axios.get(`/AccountsReports/JournalLedgerCOACustomerLocationList`, {params});\n } else if(params.Vendor){\n response = await axios.get(`/AccountsReports/JournalLedgerCOAVendorLocationList`, {params});\n }else {\n response = await axios.get(`/AccountsReports/JournalLedgerCOALocationList`, {params});\n }\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const ledgerReport = createSlice({\n name: \"ledgerReport\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default ledgerReport.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appBudget/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appBudget/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n try {\n const responseConsolidated = await axios.get('/Budgets/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: responseConsolidated.data,\n }\n } catch (e) {\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}}\n }\n }\n})\n\n\nexport const appBudgetSlice = createSlice({\n name: 'appBudget',\n initialState: {\n vendorInvoice: {},\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appBudgetSlice.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getBookmarks = createAsyncThunk('layout/getBookmarks', async () => {\n const response = await axios.get('/api/bookmarks/data')\n return {\n data: response.data.suggestions,\n bookmarks: response.data.bookmarks\n }\n})\n\nexport const updateBookmarked = createAsyncThunk('layout/updateBookmarked', async id => {\n await axios.post('/api/bookmarks/update', { id })\n return id\n})\n\nexport const layoutSlice = createSlice({\n name: 'layout',\n initialState: {\n query: '',\n bookmarks: [],\n suggestions: []\n },\n reducers: {\n handleSearchQuery: (state, action) => {\n state.query = action.payload\n }\n },\n extraReducers: builder => {\n builder\n .addCase(getBookmarks.fulfilled, (state, action) => {\n state.suggestions = action.payload.data\n state.bookmarks = action.payload.bookmarks\n })\n .addCase(updateBookmarked.fulfilled, (state, action) => {\n let objectToUpdate\n\n // ** find & update object\n state.suggestions.find(item => {\n if (item.id === action.payload) {\n item.isBookmarked = !item.isBookmarked\n objectToUpdate = item\n }\n })\n\n // ** Get index to add or remove bookmark from array\n const bookmarkIndex = state.bookmarks.findIndex(x => x.id === action.payload)\n\n if (bookmarkIndex === -1) {\n state.bookmarks.push(objectToUpdate)\n } else {\n state.bookmarks.splice(bookmarkIndex, 1)\n }\n })\n }\n})\n\nexport const { handleSearchQuery } = layoutSlice.actions\n\nexport default layoutSlice.reducer\n","// ** Redux Imports\nimport {\n createSlice\n , createAsyncThunk\n} from '@reduxjs/toolkit'\nimport axios from 'axios'\n\nexport const getMapAccounts = createAsyncThunk('mapAccounts/getMapAccounts', async () => {\n const response = await axios.get('/MapAccounts')\n const responseDefault = await axios.get('/MapAccounts/GetBranchWiseAccounts')\n return {data: {...response.data.data, ...responseDefault.data.data}}\n})\n\nexport const mapAccountsSlice = createSlice({\n name: 'mapAccounts',\n initialState: {\n accounts: {}\n },\n reducers: {\n },\n extraReducers: builder => {\n builder\n .addCase(getMapAccounts.fulfilled, (state, action) => {\n state.accounts = action.payload.data\n })\n }\n\n})\n\nexport default mapAccountsSlice.reducer\n","// ** Redux Imports\nimport {\n createSlice\n , createAsyncThunk\n} from '@reduxjs/toolkit'\nimport axios from 'axios'\n\nexport const getNotifications = createAsyncThunk('notification/getNotifications', async () => {\n const response = await axios.get('/Login/GetNotifications?NotificationType=Notification&PageNo=1&PageSize=50')\n return {data: response?.data?.data?.list??[]}\n})\n\nexport const getAnnouncement = createAsyncThunk('notification/getAnnouncement', async () => {\n const response = await axios.get('/Login/GetNotifications?NotificationType=Announcement&PageNo=1&PageSize=50')\n return {data: response?.data?.data?.list??[]}\n})\n\nexport const notificationSlice = createSlice({\n name: 'notification',\n initialState: {\n notifications: [],\n announcement: [],\n },\n reducers: {\n },\n extraReducers: builder => {\n builder\n .addCase(getNotifications.fulfilled, (state, action) => {\n state.notifications = action.payload.data\n })\n .addCase(getAnnouncement.fulfilled, (state, action) => {\n state.announcement = action.payload.data\n });\n }\n\n})\n\nexport default notificationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('AccountFileManager/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('AccountFileManager/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/FileFoldersUpload/SelectFoldersTreeMenu', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getStorage = createAsyncThunk('AccountFileManager/getStorage', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/FileFoldersUpload/GetOrgUsedSpaceStats', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getFolderData = createAsyncThunk('AccountFileManager/getFolderData', async (params, { dispatch }) => {\n dispatch(setLoading({ getFolderData: true }))\n\n let response;\n\n if(`${params?.folderId}`=== '0') {\n response = await axios.get('/FileFoldersUpload/SelectMainFoldersList', {params})\n } else {\n response = await axios.get(`/FileFoldersUpload/GetFolderData/${params?.folderId}`, {params})\n }\n\n dispatch(setLoading({ getFolderData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const AccountFileManagerSlice = createSlice({\n name: 'AccountFileManager',\n initialState: {\n data: [],\n folder_data: [],\n files_data: [],\n storage_data: {},\n totalRecords: 1,\n params: {},\n storage_params: {},\n folder_params: {},\n loadingState: { getData: false, getFolderData: false, getStorage: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getStorage.fulfilled, (state, action) => {\n state.storage_data = action.payload.data.data\n state.storage_params = action.payload.params\n })\n .addCase(getFolderData.fulfilled, (state, action) => {\n if(`${action?.payload.params?.folderId}`=== '0') {\n state.folder_data = action.payload.data.data.list\n state.files_data = []\n } else {\n state.folder_data = action.payload.data?.data?.folders??[]\n state.files_data = action.payload.data.data.files\n }\n state.folder_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default AccountFileManagerSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('AttachmentFileManager/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('AttachmentFileManager/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/FileUpload/SelectFoldersTreeMenu', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getStorage = createAsyncThunk('AttachmentFileManager/getStorage', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/FileFoldersUpload/GetOrgUsedSpaceStats', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getFolderData = createAsyncThunk('AttachmentFileManager/getFolderData', async (params, { dispatch }) => {\n dispatch(setLoading({ getFolderData: true }))\n\n let response;\n\n if(`${params?.folderId}`=== '0') {\n response = await axios.get('/FileUpload/SelectMainFoldersList', {params})\n } else {\n let tempParent = params?.parentFolderId;\n params.parentFolderId = params?.parentFolderId === 0 ? params?.folderId : params?.parentFolderId;\n params.folderId = tempParent === 0 ? undefined : params?.folderId;\n response = await axios.get(`/FileUpload/GetFolderData/${params?.parentFolderId??params?.folderId}`, {params})\n }\n\n dispatch(setLoading({ getFolderData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const AttachmentFileManagerSlice = createSlice({\n name: 'AttachmentFileManager',\n initialState: {\n data: [],\n folder_data: [],\n files_data: [],\n storage_data: {},\n totalRecords: 1,\n params: {},\n storage_params: {},\n folder_params: {},\n loadingState: { getData: false, getFolderData: false, getStorage: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getStorage.fulfilled, (state, action) => {\n state.storage_data = action.payload.data.data\n state.storage_params = action.payload.params\n })\n .addCase(getFolderData.fulfilled, (state, action) => {\n if(`${action?.payload.params?.folderId}`=== '0') {\n state.folder_data = action.payload.data.data.list\n state.files_data = []\n } else {\n state.folder_data = action.payload.data?.data?.folders??[]\n state.files_data = action.payload.data.data.files\n }\n state.folder_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default AttachmentFileManagerSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPurchaseOrders/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPurchaseOrders/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const consolidated_response = await axios.get('/PurchaseOrders/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: consolidated_response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appPurchaseOrders/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\n\nexport const appPurchaseOrdersSlice = createSlice({\n name: 'appPurchaseOrders',\n initialState: {\n purchaseOrders: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPurchaseOrdersSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPurchaseReturn/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPurchaseReturn/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const responseConsolidated = await axios.get('/PurchaseReturnInvoices/ConsolidatedList', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: responseConsolidated.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appPurchaseReturn/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appPurchaseReturn/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appPurchaseReturn/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appPurchaseReturnSlice = createSlice({\n name: 'appPurchaseReturn',\n initialState: {\n returnOutwards: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPurchaseReturnSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appReturnInwards/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appReturnInwards/getData', async (params, {dispatch}) => {\n dispatch(setLoading({getData: true}))\n const responseConsolidated = await axios.get('/SalesReturnInvoices/ConsolidatedList', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: responseConsolidated.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appReturnInwards/getTypeData', async (params, {}) => {\n // dispatch(setLoading({ getTypeData: true }))\n // const response = await axios.get('/JVTypes/List', { params })\n // dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: {}\n }\n // return\n})\n\nexport const getJournal = createAsyncThunk('appReturnInwards/getJournal', async () => {\n // dispatch(setLoading({ getJournal: true }))\n // const response = await axios.get(`/PurchaseInvoice/${recno}`)\n // dispatch(setLoading({ getJournal: false }))\n\n // return response.data\n return null\n})\n\nexport const deleteInvoice = createAsyncThunk('appReturnInwards/deleteInvoice', async (id, {dispatch, getState}) => {\n dispatch(setLoading({deleteInvoice: true}))\n await axios.delete('/apps/invoice/delete', {id})\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({deleteInvoice: false}))\n return id\n})\n\n\nexport const getColumns = createAsyncThunk('appReturnInwards/getColumns', async (params, { dispatch }) => {\n dispatch(setLoading({ getColumns: true }))\n const res = await axios.get('/Prefrences/GetSalesReturnFormListColumns', { params })\n dispatch(setLoading({ getColumns: false }))\n return {\n params,\n data: res.data??{data: []}\n }\n})\n\n\nexport const appReturnInwardsSlice = createSlice({\n name: 'appReturnInwards',\n initialState: {\n vendorInvoice: {},\n data: [],\n columns: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: {getData: false, getTypeData: false, getJournal: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidated = action.payload.consolidated.data.list\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(getColumns.fulfilled, (state, action) => {\n let cols = [...action.payload.data.data];\n cols.sort((a, b) => a.sortNo - b.sortNo);\n state.columns = cols\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appReturnInwardsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDeliveryNotes/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDeliveryNotes/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n if (JSON.stringify(params) !== JSON.stringify(getState().customerInvoice?.params) || params.forceLoad) {\n try {\n if(!params.Page) {\n params.Page = getState().customerInvoice?.params.Page??1;\n }\n\n if(!params.PageSize) {\n params.PageSize = getState().customerInvoice?.params.PageSize??20;\n }\n\n // const response = await axios.get('/DeliveryNotes/List', {params})\n\n const responseConsolidated = await axios.get('/DeliveryNotes/ConsolidatedList', {params})\n\n console.log(\"responseConsolidated\",responseConsolidated)\n\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: [],\n consolidated: responseConsolidated.data\n }\n } catch (e) {\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: {data: {list: [], totalRecords: 0}},\n consolidated: {data: {list: [], totalRecords: 0}}\n }\n }\n } else {\n dispatch(setLoading({getData: false}))\n return {\n params: getState().customerInvoice?.params,\n data: {data: {list: getState().customerInvoice?.data??[], totalRecords: getState().customerInvoice?.totalRecords??0}},\n consolidated: {data: {list: getState().customerInvoice?.consolidated??[], totalRecords: getState().customerInvoice?.consolidatedTotalRecords??0}}\n }\n }\n})\n\nexport const getTypeData = createAsyncThunk('appDeliveryNotes/getTypeData', async () => {\n // dispatch(setLoading({ getTypeData: true }))\n // const response = await axios.get('/JVTypes/List', { params })\n // dispatch(setLoading({ getTypeData: false }))\n // return {\n // params,\n // data: response.data\n // }\n return null\n})\n\nexport const getJournal = createAsyncThunk('appDeliveryNotes/getJournal', async () => {\n // dispatch(setLoading({ getJournal: true }))\n // const response = await axios.get(`/SalesInvoices/${recno}`)\n\n // dispatch(setLoading({ getJournal: false }))\n\n // return response.data\n return null\n})\n\nexport const deleteInvoice = createAsyncThunk('appDeliveryNotes/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appDeliveryNotesSlice = createSlice({\n name: 'appDeliveryNotes',\n initialState: {\n vendorInvoice: {},\n data: [],\n consolidated: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDeliveryNotesSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appEmployee/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appEmployee/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Salesmen/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appEmployee/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/Employees/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appEmployee/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/Employees/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\n\nexport const deleteInvoice = createAsyncThunk('appEmployee/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appEmployeeSlice = createSlice({\n name: 'appEmployee',\n initialState: {\n employees: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.employee = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appEmployeeSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\nimport {groupBy} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('appPayments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('permissions/getData', async (params, {dispatch}) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/UserRights/GetPoliciesList', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n total: response.data.totalRecords,\n data: response.data.data.list\n }\n})\n\nexport const getRights = createAsyncThunk('permissions/getRights', async (params, {dispatch}) => {\n dispatch(setLoading({ getRights: true }))\n\n const response = await axios.get(`/UserRights/GetPolicyRights/${params.PolicyId}/${params.LocationId}/${params.FyearId}`, { params })\n\n dispatch(setLoading({ getRights: false }))\n return {\n total_rights: response.data.totalRecords,\n rights: response.data.data.list,\n params_rights: params,\n }\n})\n\nexport const getPolicyUsers = createAsyncThunk('permissions/getPolicyUsers', async (params, {dispatch}) => {\n dispatch(setLoading({ getUsers: true }))\n\n const response = await axios.get(`/UserRights/GetOrgUsersDetails`, { params })\n\n dispatch(setLoading({ getUsers: false }))\n return {\n total_users: response.data.totalRecords,\n policyUsers: response.data.data,\n params_policy: params,\n }\n})\n\nexport const assignUser = createAsyncThunk('permissions/assignUser', async (params, {dispatch}) => {\n dispatch(setLoading({ assignUser: true }))\n\n const response = await axios.post(`/UserRights/AddPolicyUsers`, params )\n\n dispatch(setLoading({ assignUser: false }))\n return response.data;\n})\n\nexport const addPermission = createAsyncThunk(\n 'permissions/addPermission',\n async (permission, { dispatch, getState }) => {\n await axios.post('/apps/permissions/add-permission', { permission })\n await dispatch(getData(getState().permissions.params))\n return permission\n }\n)\n\nexport const addPolicy = createAsyncThunk(\n 'permissions/addPolicy',\n async (policy, { dispatch }) => {\n await axios.post('/UserRights/AddPolicy', policy.data)\n await dispatch(getData(policy.params))\n return policy\n }\n)\n\nexport const updatePermission = createAsyncThunk(\n 'permissions/updatePermission',\n async (params, { dispatch, state }) => {\n try {\n let res = await axios.post('/UserRights/AddPolicyRights', params.data)\n await dispatch(getData(params.state))\n return {\n data: res.data,\n params\n };\n } catch(e) {\n return {\n data: e.response,\n params\n };\n }\n }\n)\n\nexport const updateRights = createAsyncThunk(\n 'permissions/updateRights',\n async (params, { dispatch}) => {\n return params;\n }\n)\n\nexport const bulkUpdateRights = createAsyncThunk(\n 'permissions/bulkUpdateRights',\n async (params, { dispatch}) => {\n return params;\n }\n)\n\nexport const deletePermission = createAsyncThunk('permissions/deletePermission', async (id, { dispatch, getState }) => {\n await axios.delete('/apps/permissions/delete', { id })\n await dispatch(getData(getState().permissions.params))\n return id\n})\n\nexport const permissionsSlice = createSlice({\n name: 'permissions',\n initialState: {\n data: [],\n rights: [],\n policyUsers: [],\n total: 1,\n params: {},\n update_res: {},\n allData: [],\n selected: null,\n loadingState: { getData: false, getRights: false, updateRights: false, getUsers: false}\n },\n reducers: {\n selectPermission: (state, action) => {\n if (action.payload === null) {\n state.selected = null\n } else {\n state.selected = action.payload\n }\n }\n },\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n state.total = action.payload.total\n state.params = action.payload.params\n state.allData = action.payload.allData\n })\n .addCase(getRights.fulfilled, (state, action) => {\n let grouping = groupBy(action.payload.rights, 'screenGroup');\n let allRights = [];\n\n Object.keys(grouping).forEach((key) => {\n let viewScreen = true;\n let addScreen = true;\n let updateScreen = true;\n let deleteScreen = true;\n\n for(let i = 0 ; i < grouping[key].length; i++) {\n if(!grouping[key][i].viewScreen) {\n viewScreen = false;\n }\n\n if(!grouping[key][i].addScreen) {\n addScreen = false;\n }\n\n if(!grouping[key][i].updateScreen) {\n updateScreen = false;\n }\n\n if(!grouping[key][i].deleteScreen) {\n deleteScreen = false;\n }\n }\n allRights.push({\n policyId: grouping[key][0].policyId,\n locationId: grouping[key][0].locationId,\n screenName: grouping[key][0].screenGroup,\n screenDescription: grouping[key][0].screenGroup,\n screenGroup: grouping[key][0].screenGroup,\n viewScreen: viewScreen,\n addScreen: addScreen,\n updateScreen: updateScreen,\n deleteScreen: deleteScreen,\n list: grouping[key]\n })\n })\n\n state.rights = allRights\n state.total_rights = action.payload.total_rights\n state.params_rights = action.payload.params_rights\n })\n .addCase(updatePermission.fulfilled, (state, action) => {\n state.update_res = action.payload.data\n })\n .addCase(getPolicyUsers.fulfilled, (state, action) => {\n state.policyUsers = action.payload.policyUsers\n state.total_users = action.payload.total_users\n state.params_users = action.payload.params_users\n })\n .addCase(updateRights.fulfilled, (state, action) => {\n state.rights = state.rights.map((e, index) => {\n if(index === action.payload.index){\n let viewScreen = true;\n let addScreen = true;\n let updateScreen = true;\n let deleteScreen = true;\n e.list = e.list.map((f, subIndex) => {\n if(subIndex === action.payload.subIndex) {\n if(!action.payload.viewScreen) {\n viewScreen = false;\n }\n\n if(!action.payload.addScreen) {\n addScreen = false;\n }\n\n if(!action.payload.updateScreen) {\n updateScreen = false;\n }\n\n if(!action.payload.deleteScreen) {\n deleteScreen = false;\n }\n } else {\n if(!f.viewScreen) {\n viewScreen = false;\n }\n\n if(!f.addScreen) {\n addScreen = false;\n }\n\n if(!f.updateScreen) {\n updateScreen = false;\n }\n\n if(!f.deleteScreen) {\n deleteScreen = false;\n }\n }\n return subIndex === action.payload.subIndex ? action.payload : f;\n });\n e.viewScreen = viewScreen;\n e.addScreen = addScreen;\n e.updateScreen = updateScreen;\n e.deleteScreen = deleteScreen;\n return e;\n } else {\n return e;\n }\n })\n })\n .addCase(bulkUpdateRights.fulfilled, (state, action) => {\n state.rights = state.rights.map((e, index) => {\n return index === action.payload.index ? action.payload : e\n })\n })\n }\n})\n\nexport const { selectPermission } = permissionsSlice.actions\n\nexport default permissionsSlice.reducer","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('Aging/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('Aging/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response = await axios.get('/PurchaseReports/GetVendorsAgingList', {params})\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\nexport const getDetailData = createAsyncThunk('Aging/getDetailData', async (params, { dispatch }) => {\n dispatch(setLoading({ getDetailData: true }))\n try {\n let response = await axios.get('/PurchaseReports/GetVendorWiseAgingList', {params})\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getDetailData: false }))\n }\n\n})\n\nexport const deleteInvoice = createAsyncThunk('Aging/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const AgingStore = createSlice({\n name: 'Aging',\n initialState: {\n data: [],\n data_detail: [],\n totalRecords: 1,\n totalRecordsDetail: 1,\n params: {},\n loadingState: { getData: false, getDetailData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.data_detail = action.payload.data.data.list\n state.totalRecordsDetail = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default AgingStore.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('CustomerAging/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('CustomerAging/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response = await axios.get('/SalesReports/GetCustomersAgingList', {params})\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\nexport const getDetailData = createAsyncThunk('CustomerAging/getDetailData', async (params, { dispatch }) => {\n dispatch(setLoading({ getDetailData: true }))\n try {\n let response = await axios.get('/SalesReports/GetCustomerWiseAgingList', {params})\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getDetailData: false }))\n }\n\n})\n\nexport const deleteInvoice = createAsyncThunk('CustomerAging/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const CustomerAgingStore = createSlice({\n name: 'CustomerAging',\n initialState: {\n data: [],\n data_detail: [],\n totalRecords: 1,\n totalRecordsDetail: 1,\n params: {},\n loadingState: { getData: false, getDetailData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.data_detail = action.payload.data.data.list\n state.totalRecordsDetail = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default CustomerAgingStore.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {imageUrlToBase64} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('SalesDeliveryNoteCustomization/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SalesDeliveryNoteCustomization/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InvoicePreviewCustomization/GetDeliveryNoteCustomization', { params })\n\n\n if(response.data.data.signatureImage) {\n try {\n response.data.data.signatureImageBase64 = await imageUrlToBase64(process.env.REACT_APP_API_URL_production + response.data.data.signatureImage);\n } catch(error) {\n console.log(error);\n }\n }\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const SaleInvoiceCustomizationSlice = createSlice({\n name: 'SalesDeliveryNoteCustomization',\n initialState: {\n data: {},\n bank_data: {},\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SaleInvoiceCustomizationSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('customerPref/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('customerPref/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Prefrences/GetCustomerFormMandatoryFields', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const customerPref = createSlice({\n name: 'customerPref',\n initialState: {\n data: [],\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default customerPref.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"taxesSettings/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"taxesSettings/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Organizations/GetTaxDetails\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getCorporateData = createAsyncThunk(\"taxesSettings/getCorporateData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getCorporateData: true }));\n const response = await axios.get(\"/Organizations/GetCorporateTaxDetails\", { params });\n\n dispatch(setLoading({ getCorporateData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const taxesSettings = createSlice({\n name: \"taxesSettings\",\n initialState: {\n data: {},\n corporate_data: {},\n params: {},\n loadingState: { getData: false, getCodeCustomization: false, getCorporateData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(getCorporateData.fulfilled, (state, action) => {\n state.corporate_data = action.payload.data.data;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default taxesSettings.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('withHeldTax/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk(\"withHeldTax/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/Settings/SelectWithHeldTaxSettingsList\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getDetailData = createAsyncThunk(\"withHeldTax/getDetailData\", async (recno, { dispatch }) => {\n dispatch(setLoading({ getDetailData: true }));\n const response = await axios.get(`/Settings/SelectSingleWithHeldTaxSetting/${recno}`);\n\n dispatch(setLoading({ getDetailData: false }));\n return {\n data: response.data,\n };\n});\n\nexport const getTaxSetting = createAsyncThunk(\"withHeldTax/getTaxSetting\", async (params, { dispatch }) => {\n dispatch(setLoading({ getTaxSetting: true }));\n const response = await axios.get(`/Settings/SelectOrganizationTaxSettings`);\n\n dispatch(setLoading({ getTaxSetting: false }));\n return {\n data: response.data,\n };\n});\n\nexport const withHeldTaxSlice = createSlice({\n name: 'withHeldTax',\n initialState: {\n data: [],\n data_detail: [],\n taxSetting: {},\n totalDetailRecords: 1,\n params: {},\n loadingState: { getData: false, getDetailData: false, getTaxSetting: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.data_detail = action.payload?.data?.data\n state.totalDetailRecords = action.payload.data.totalRecords\n })\n .addCase(getTaxSetting.fulfilled, (state, action) => {\n state.taxSetting = action.payload?.data?.data\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default withHeldTaxSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('reportingTags/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk(\"reportingTags/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n const response = await axios.get(\"/ReportingTags/SelectReportingTagsList\", { params });\n\n dispatch(setLoading({ getData: false }));\n return {\n params,\n data: response.data,\n };\n});\n\nexport const getDetailData = createAsyncThunk(\"reportingTags/getDetailData\", async (recno, { dispatch }) => {\n dispatch(setLoading({ getDetailData: true }));\n const response = await axios.get(`/ReportingTags/SelectSingleReportingTag/${recno}`);\n\n dispatch(setLoading({ getDetailData: false }));\n return {\n data: response.data,\n };\n});\n\nexport const reportingTagsSlice = createSlice({\n name: 'reportingTags',\n initialState: {\n data: [],\n data_detail: {},\n params: {},\n loadingState: { getData: false, getDetailData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.data_detail = action.payload?.data?.data\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default reportingTagsSlice.reducer\n","import { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"purchaseReport/setLoading\", async (loadingState) => ({ ...loadingState }));\n\n\nexport const getData = createAsyncThunk(\"purchaseReport/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response = await axios.get(\"/PurchaseReports/PurchaseWReturnList\", { params });\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const vendorBalances = createSlice({\n name: \"purchaseReport\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n for(let i = 0; i < action.payload.data.data.list.length; i++){\n if (action.payload.data.data.list[i][\"Invoice_Tax_Type\"]===\"Exclusive\"){\n let Amount = action.payload.data.data.list[i].Exclusive_Amount + (action.payload.data.data.list[i].Inclusive_Amount - action.payload.data.data.list[i].Exclusive_Amount);\n action.payload.data.data.list[i].Amount = action.payload.data.data.list[i].Rate < 0 ? (-1 * Amount) : Amount;\n } else {\n let Amount = action.payload.data.data.list[i].Inclusive_Amount;\n action.payload.data.data.list[i].Amount = action.payload.data.data.list[i].Rate < 0 ? (-1 * Amount) : Amount;\n }\n }\n\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default vendorBalances.reducer;\n","import { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"bankLedgerReport/setLoading\", async (loadingState) => ({ ...loadingState }));\n\n\nexport const getData = createAsyncThunk(\"bankLedgerReport/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response = await axios.get(`/AccountsReports/BankJournalLedgerSummaryCOALocationList`, {params});\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const getLedgerData = createAsyncThunk(\"bankLedgerReport/getLedgerData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getLedgerData: true }));\n\n try {\n let response = await axios.get(`/AccountsReports/BankJournalLedgerCOALocationList`, {params});\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getLedgerData: false }));\n }\n});\n\nexport const bankLedgerReport = createSlice({\n name: \"bankLedgerReport\",\n initialState: {\n data: [],\n ledgerData: [],\n totalRecords: 1,\n params: {},\n ledgerParams: {},\n loadingState: { getData: false , getLedgerData: false},\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(getLedgerData.fulfilled, (state, action) => {\n state.ledgerData = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.ledgerParams = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default bankLedgerReport.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCorporateTax/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appCorporateTax/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/CorporateTaxReturns/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getDetailData = createAsyncThunk('appCorporateTax/getDetailData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getDetailData: true }))\n const response = await axios.get(`/CorporateTaxReturns/GetDetail/${params.Recno}`, {params})\n dispatch(setLoading({getDetailData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getSerialData = createAsyncThunk('appCorporateTax/getSerialData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getSerialData: true }))\n const response = await axios.get(`/VatReturns/SelectFileVatReturnReportDetails`, {params})\n dispatch(setLoading({getSerialData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appCorporateTaxSlice = createSlice({\n name: 'appCorporateTax',\n initialState: {\n data: [],\n detail_data: {},\n serial_data: [],\n serial_header: {},\n totalSerialRecords: 1,\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getSerialData.fulfilled, (state, action) => {\n state.serial_data = action.payload.data.data.list\n state.serial_header = action.payload.data.data\n state.totalSerialRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.detail_data = action.payload.data.data\n state.detail_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appCorporateTaxSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayroll/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayroll/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriodPayRuns/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayrollSlice = createSlice({\n name: 'appPayroll',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayrollSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayrollPayments/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayrollPayments/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n let response;\n\n if(params?.type === 0) {\n response = await axios.get('/PayPeriodPayRunPayments/GetPayRollPayRunDues', {params})\n } else {\n response = await axios.get('/PayPeriodPayRunPayments/GetPayRollPayRunPaymentHistory', {params})\n }\n\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayrollPaymentsSlice = createSlice({\n name: 'appPayrollPayments',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayrollPaymentsSlice.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getTasks = createAsyncThunk('appTodo/getTasks', async params => {\n const response = await axios.get('/apps/todo/tasks', { params })\n\n return {\n params,\n data: response.data\n }\n})\n\nexport const addTask = createAsyncThunk('appTodo/addTask', async (task, { dispatch, getState }) => {\n const response = await axios.post('/apps/todo/add-tasks', { task })\n await dispatch(getTasks(getState().todo.params))\n return response.data\n})\n\nexport const updateTask = createAsyncThunk('appTodo/updateTask', async (task, { dispatch, getState }) => {\n const response = await axios.post('/apps/todo/update-task', { task })\n await dispatch(getTasks(getState().todo.params))\n return response.data\n})\n\nexport const deleteTask = createAsyncThunk('appTodo/deleteTask', async (taskId, { dispatch, getState }) => {\n const response = await axios.delete('/apps/todo/delete-task', { taskId })\n await dispatch(getTasks(getState().todo.params))\n return response.data\n})\n\nexport const appTodoSlice = createSlice({\n name: 'appTodo',\n initialState: {\n tasks: [],\n selectedTask: {},\n params: {\n filter: '',\n q: '',\n sort: '',\n tag: ''\n }\n },\n reducers: {\n reOrderTasks: (state, action) => {\n state.tasks = action.payload\n },\n selectTask: (state, action) => {\n state.selectedTask = action.payload\n }\n },\n extraReducers: builder => {\n builder.addCase(getTasks.fulfilled, (state, action) => {\n state.tasks = action.payload.data\n state.params = action.payload.params\n })\n }\n})\n\nexport const { reOrderTasks, selectTask } = appTodoSlice.actions\n\nexport default appTodoSlice.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getData = createAsyncThunk('appInvoice/getData', async params => {\n const response = await axios.get('/apps/invoice/invoices', params)\n return {\n params,\n data: response.data.invoices,\n allData: response.data.allData,\n totalPages: response.data.total\n }\n})\n\nexport const deleteInvoice = createAsyncThunk('appInvoice/deleteInvoice', async (id, { dispatch, getState }) => {\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n return id\n})\n\nexport const appInvoiceSlice = createSlice({\n name: 'appInvoice',\n initialState: {\n data: [],\n total: 1,\n params: {},\n allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n state.allData = action.payload.allData\n state.total = action.payload.totalPages\n state.params = action.payload.params\n })\n }\n})\n\nexport default appInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appAreas/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appAreas/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Areas/List', { params })\n \n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appAreas = createSlice({\n name: 'appAreas',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appAreas.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getData = createAsyncThunk('datatables/getData', async params => {\n const response = await axios.get('/api/datatables/data', params)\n return { allData: response.data.allData, data: response.data.invoices, totalPages: response.data.total, params }\n})\n\nexport const datatablesSlice = createSlice({\n name: 'datatables',\n initialState: {\n data: [],\n total: 1,\n params: {},\n allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n state.params = action.payload.params\n state.allData = action.payload.allData\n state.total = action.payload.totalPages\n })\n }\n})\n\nexport default datatablesSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('OpeningStock/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('OpeningStock/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/OpeningStock/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const OpeningStockSlice = createSlice({\n name: 'OpeningStock',\n initialState: {\n vendorInvoice: {},\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default OpeningStockSlice.reducer\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getData = createAsyncThunk('accountDetailSelector/getData', async params => {\n\n const response = await axios.get('/Defaults/DetailCOAList', { params })\n return {\n params: response.data.params,\n data: response.data\n }\n})\n\nexport const getDefaultData = createAsyncThunk('accountDetailSelector/getDefaultData', async params => {\n const response = await axios.get('/Defaults/DetailCOAList', { params })\n\n return {\n params: response.data.params,\n data: response.data.data[0]\n }\n})\n\nexport const accountDetailSlice= createSlice({\n name: 'accountDetailSelector',\n initialState: {\n data: [],\n total: 1,\n params: {},\n selectedBank: {},\n },\n reducers: {},\n extraReducers: builder => {\n builder.addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n }).addCase(getDefaultData.fulfilled, (state, action) => {\n state.selectedBank = action.payload.data\n state.params = action.payload.params\n })\n }\n})\n\nexport const { selectPermission } = accountDetailSlice.actions\n\nexport default accountDetailSlice.reducer\n","// ** Reducers Imports\nimport navbar from \"./navbar\";\nimport layout from \"./layout\";\nimport mapAccounts from \"./mapAccounts\";\nimport auth from \"./authentication\";\nimport notifications from \"./notifications\";\nimport todo from \"@src/views/apps/todo/store\";\nimport coa from \"@src/views/apps/accounts/coa/store\";\nimport users from \"@src/views/apps/user/store\";\nimport fileManager from \"@src/views/apps/file-system/store\";\nimport attachmentManager from \"@src/views/apps/attachments-file-system/store\";\nimport invoice from \"@src/views/apps/invoice/store\";\nimport journal from \"@src/views/apps/journal/store\";\nimport journalRecurrence from \"@src/views/apps/journal-recurrence/store\";\nimport demands from \"@src/views/apps/stocks/demands/store\";\nimport demand from \"@src/views/apps/stocks/demand/store\";\nimport purchaseRequests from \"@src/views/apps/purchases/purchase-request/store\";\nimport TenantCurrencies from \"@src/views/apps/currency/store\";\nimport expense from \"@src/views/apps/purchases/expense/store\";\nimport vendorInvoice from \"@src/views/apps/purchases/vendor-invoice/store\";\nimport recurringBill from \"@src/views/apps/purchases/recurring-bill/store\";\nimport recurringExpense from \"@src/views/apps/purchases/recurring-expense/store\";\nimport taxTypes from \"@src/views/settings/tax-types/store\";\nimport areas from \"@src/views/settings/areas/store\";\nimport purchaseOrders from \"@src/views/apps/purchases/purchase-orders/store\";\nimport GRN from \"@src/views/apps/purchases/goods-received-note/store\";\nimport GRNReturn from \"@src/views/apps/purchases/goods-received-note-return/store\";\nimport returnOutwards from \"@src/views/apps/purchases/return-outwards/store\";\nimport returnInwards from \"@src/views/apps/sales/return-inwards/store\";\nimport customerInvoice from \"@src/views/apps/sales/customer-invoice/store\";\nimport deliveryNotes from \"@src/views/apps/sales/delivery-note/store\";\nimport customerRecurrenceInvoice from \"@src/views/apps/sales/recurrence-invoice/store\";\nimport customerEstimate from \"@src/views/apps/sales/estimates/store\";\nimport payments from \"@src/views/apps/payments/store\";\nimport inventoryItems from \"@src/views/apps/inventory/items/store\";\nimport inventoryBrands from \"@src/views/apps/inventory/brands/store\";\nimport inventoryColors from \"@src/views/apps/inventory/colors/store\";\nimport inventoryCostCenters from \"@src/views/apps/inventory/cost-centers/store/index.js\";\nimport inventoryDepartments from \"@src/views/apps/inventory/departments/store\";\nimport creditTerms from \"@src/views/apps/credit-terms/store\";\nimport posTills from \"@src/views/apps/pos-tills/store\";\nimport posShifts from \"@src/views/apps/pos-shifts/store\";\nimport posCashTransfer from \"@src/views/apps/pos-cash-transfer/store\";\nimport posEntry from \"@src/views/apps/pos/store\";\nimport inventoryMeasuringUnits from \"@src/views/apps/inventory/measuring-units/store\";\nimport inventorySeasons from \"@src/views/apps/inventory/seasons/store\";\nimport inventorySizes from \"@src/views/apps/inventory/sizes/store\";\nimport inventoryCategories from \"@src/views/apps/inventory/category/store\";\nimport inventorySubCategories from \"@src/views/apps/inventory/sub-category/store\";\nimport vendors from \"@src/views/apps/purchases/vendors/store\";\nimport employees from \"@src/views/apps/employees/store\";\nimport designations from \"@src/views/apps/employees/definitions/designations/store\";\nimport departments from \"@src/views/apps/employees/definitions/departments/store\";\nimport allowances from \"@src/views/apps/employees/definitions/allowances/store\";\nimport payAllowances from \"@src/views/apps/pay-allowances/store\";\nimport payDeductions from \"@src/views/apps/pay-deductions/store\";\nimport payLeaves from \"@src/views/apps/pay-leaves/store\";\nimport payAdvances from \"@src/views/apps/pay-advances/store\";\nimport deductions from \"@src/views/apps/employees/definitions/deductions/store\";\nimport salesMan from \"@src/views/apps/sales-man/store\";\nimport customers from \"@src/views/apps/sales/customers/store\";\nimport costCenter from \"@src/views/apps/cost-centers/store\";\nimport fYear from \"@src/views/apps/financial-year/store\";\nimport receiving from \"@src/views/apps/receiving/store\";\nimport dataTables from \"@src/views/tables/data-tables/store\";\nimport permissions from \"@src/views/apps/user-roles/store\";\nimport issueToLocations from \"@src/views/apps/stocks/issue-to-location/store\";\nimport receiptInLocations from \"@src/views/apps/stocks/receipt-in-location/store\";\nimport openingStock from \"@src/views/apps/stocks/opening-stock/store\";\nimport profit from \"@src/views/reports/profit-loss/store\";\nimport projectProfit from \"@src/views/reports/project-profit-loss/store\";\nimport balanceSheet from \"@src/views/reports/balance-sheet/store\";\nimport trialBalance from \"@src/views/reports/trail_balance/store\";\nimport customerAdvance from \"@src/views/reports/customerAdvance/store\";\nimport aging from \"@src/views/reports/aging/store\";\nimport customerAging from \"@src/views/reports/customer-aging/store\";\nimport TaxCodeReport from \"@src/views/reports/tax-code-report/store\";\nimport TaxCodeDetailReport from \"@src/views/reports/tax-code-report/tax-code-report-detail/store\";\nimport saleInvoiceCustomization from \"@src/views/apps/invoice-customization/store\";\nimport saleExportInvoiceCustomization from \"@src/views/apps/invoice-export-packing-customization/store\";\nimport SalesPackingSlipCustomization from '@src/views/apps/saleInvoice-packingSlip-customization/store'\nimport SalesDeliveryNoteCustomization from '@src/views/apps/saleInvoice-deliveryNote-customization/store'\nimport saleInvoiceReturnCustomization from \"@src/views/apps/invoice-customization-sale-return/store\";\nimport purchaseInvoiceReturnCustomization from \"@src/views/apps/invoice-customization-purchase-return/store\";\nimport purchaseInvoiceCustomization from \"@src/views/apps/invoice-customization-purchase/store\";\nimport JVCustomization from \"@src/views/apps/invoice-customization-jv/store\";\nimport vendorAdvance from \"@src/views/reports/vendorAdvance/store\";\nimport vendorBalances from \"@src/views/reports/vendorBalances/store\";\nimport CustomerBalance from \"@src/views/reports/CustomerBalance/store\";\nimport payableSummary from \"@src/views/reports/payableSummary/store\";\nimport paymentMade from \"@src/views/reports/paymentMade/store\";\nimport expenseInvoiceCustomization from \"@src/views/apps/invoice-customization-expense/store\";\nimport poCustomization from \"@src/views/apps/invoice-customization-po/store\";\nimport prCustomization from \"@src/views/apps/invoice-customization-pr/store\";\nimport demandCustomization from \"@src/views/apps/invoice-customization-demand/store\";\nimport grnCustomization from \"@src/views/apps/invoice-customization-grn/store\";\nimport deliveryNotesCustomization from \"@src/views/apps/invoice-customization-delivery-notes/store\";\nimport itlCustomization from \"@src/views/apps/invoice-customization-itl/store\";\nimport rilCustomization from \"@src/views/apps/invoice-customization-ril/store\";\nimport grnReturnCustomization from \"@src/views/apps/invoice-customization-grn-return/store\";\nimport estimateCustomization from \"@src/views/apps/invoice-customization-estimate/store\";\nimport recoveriesCustomization from \"@src/views/apps/invoice-customization-recoveries/store\";\nimport paymentMadeCustomization from \"@src/views/apps/invoice-customization-payment-made/store\";\nimport stockReports from \"@src/views/reports/stock-reports/store\";\nimport singleItemReport from \"@src/views/reports/single-item-ledger/store\";\nimport itemValuation from \"@src/views/reports/item-valuation-report/store\";\nimport itemAdjustment from \"@src/views/apps/inventory/item-adjustment/store\";\nimport itemConsumption from \"@src/views/apps/inventory/item-consumption/store\";\nimport adjustmentTypes from \"@src/views/apps/inventory/adjustment-type/store\";\nimport favStore from \"@src/views/apps/deshboard/store\";\nimport templateStore from \"@src/views/apps/templates/store\";\nimport purchaseOrderPref from \"@src/views/settings/company/form-view/steps/preferences/purchase-order/store\";\nimport billsApprovals from \"@src/views/settings/company/form-view/steps/approvals/billApprovals/store\";\nimport inventoryFields from \"@src/views/settings/company/form-view/steps/dynamic-fields/inventoryFields/store\";\nimport customerInvoiceApprovals from \"@src/views/settings/company/form-view/steps/approvals/customerInvoiceApprovals/store\";\nimport jvApprovals from \"@src/views/settings/company/form-view/steps/approvals/jvApprovals/store\";\nimport expenseApprovals from \"@src/views/settings/company/form-view/steps/approvals/expenseApprovals/store\";\nimport grnPref from \"@src/views/settings/company/form-view/steps/preferences/goods-received-note/store\";\nimport deliveryNotePref from \"@src/views/settings/company/form-view/steps/preferences/delivery-note/store\";\nimport purchaseRequestPref from \"@src/views/settings/company/form-view/steps/preferences/purchase-request/store\";\nimport demandPref from \"@src/views/settings/company/form-view/steps/preferences/demand/store\";\nimport purchaseInvoicePref from \"@src/views/settings/company/form-view/steps/preferences/vendor-invoice/store\";\nimport customerInvoicePref from \"@src/views/settings/company/form-view/steps/preferences/customer-invoice/store\";\nimport purchaseReturnPref from \"@src/views/settings/company/form-view/steps/preferences/purchase-return/store\";\nimport salesReturnPref from \"@src/views/settings/company/form-view/steps/preferences/sales-return/store\";\nimport expensePreference from \"@src/views/settings/company/form-view/steps/preferences/expense/store\";\nimport estimatePref from \"@src/views/settings/company/form-view/steps/preferences/estimate/store\";\nimport customerPref from \"@src/views/settings/company/form-view/steps/preferences/customer/store\";\nimport vendorPref from \"@src/views/settings/company/form-view/steps/preferences/vendor/store\";\nimport customerInvoiceEmail from \"@src/views/settings/company/form-view/steps/email/customer-invoice/store\";\nimport taxesSettings from \"@src/views/settings/company/form-view/steps/taxes/store\";\nimport withHeldTax from \"@src/views/settings/company/form-view/steps/taxes/wht/store\"\nimport reportingTags from \"@src/views/settings/company/form-view/steps/reporting-tags/store\"\nimport advanceSettings from \"@src/views/settings/company/form-view/steps/advance-settings/store\";\nimport posSettings from \"@src/views/settings/company/form-view/steps/pos-settings/store\";\nimport PaymentReceived from \"@src/views/reports/paymentReceived/store\";\nimport creditNoteDetail from \"@src/views/reports/creditNoteDetail/store\";\nimport VendorCreditDetail from \"@src/views/reports/vendorCreditDetail/store\";\nimport InvoiceDetail from \"@src/views/reports/invoice-detail/store\";\nimport BillableDetail from \"@src/views/reports/billable-detail/store\";\nimport projectInvoiceDetail from \"@src/views/reports/project-invoices/store\";\nimport BillsDetail from \"@src/views/reports/BillsDetail/store\";\nimport branchBanks from \"@src/components/LocationBankSelector/store\";\nimport accountDetailSelector from \"@src/components/AccountDetailSelector_v2/store\";\nimport salesReport from \"@src/views/reports/sales_report/store\";\nimport purchaseReport from \"@src/views/reports/purchase_report/store\";\nimport ledgerReport from \"@src/views/reports/general_ledger/store\";\nimport bankLedgerReport from \"@src/views/reports/bank_ledgers/store\";\nimport subscriptionInformation from \"@src/views/settings/subscriptions/store\"\nimport tickets from \"@src/views/tickets-system/store\"\nimport customerPOSInvoice from \"@src/views/apps/pos/form-view/tabs/invoices/store\"\nimport projects from \"@src/views/apps/projects/store\"\nimport vatReturn from \"@src/views/apps/vat-return/store\"\nimport corporateTax from \"@src/views/apps/vat-corporate/store\"\nimport vatPayment from \"@src/views/apps/vat-payment/store\"\nimport corporatePayment from \"@src/views/apps/vat-corporate-payment/store\"\nimport brs from \"@src/views/apps/cash-and-banks/store\"\nimport budget from \"@src/views/apps/budgets/store\"\nimport payroll from \"@src/views/apps/payroll/store\"\nimport payrollPayment from \"@src/views/apps/pay-payments/store\"\nimport payPeriods from \"@src/views/apps/pay-periods/store\"\nimport projectTransactions from \"@src/views/apps/projects/project-dashboard/detailed-cards/transactions/store\"\nimport { combineReducers } from 'redux';\n\n\nconst rootReducer = {\n auth,\n notifications,\n coa,\n todo,\n users,\n navbar,\n layout,\n mapAccounts,\n invoice,\n demands,\n demand,\n purchaseRequests,\n customerInvoice,\n deliveryNotes,\n customerRecurrenceInvoice,\n customerEstimate,\n issueToLocations,\n receiptInLocations,\n journal,\n journalRecurrence,\n vendorInvoice,\n returnOutwards,\n returnInwards,\n purchaseOrders,\n taxTypes,\n areas,\n GRN,\n GRNReturn,\n payments,\n receiving,\n vendors,\n employees,\n designations,\n departments,\n allowances,\n payAllowances,\n payDeductions,\n payLeaves,\n payAdvances,\n deductions,\n salesMan,\n customers,\n costCenter,\n creditTerms,\n fYear,\n dataTables,\n permissions,\n inventoryItems,\n inventoryBrands,\n inventoryColors,\n inventoryCostCenters,\n inventoryDepartments,\n inventoryMeasuringUnits,\n inventorySeasons,\n inventorySizes,\n inventoryCategories,\n inventorySubCategories,\n TenantCurrencies,\n profit,\n projectProfit,\n balanceSheet,\n trialBalance,\n aging,\n customerAging,\n TaxCodeReport,\n TaxCodeDetailReport,\n saleInvoiceCustomization,\n SalesPackingSlipCustomization,\n SalesDeliveryNoteCustomization,\n saleInvoiceReturnCustomization,\n purchaseInvoiceCustomization,\n purchaseInvoiceReturnCustomization,\n expenseInvoiceCustomization,\n stockReports,\n singleItemReport,\n itemAdjustment,\n adjustmentTypes,\n favStore,\n poCustomization,\n prCustomization,\n demandCustomization,\n grnCustomization,\n deliveryNotesCustomization,\n itlCustomization,\n rilCustomization,\n openingStock,\n estimateCustomization,\n recoveriesCustomization,\n paymentMadeCustomization,\n grnReturnCustomization,\n saleExportInvoiceCustomization,\n templateStore,\n purchaseOrderPref,\n grnPref,\n deliveryNotePref,\n purchaseRequestPref,\n demandPref,\n purchaseInvoicePref,\n customerPref,\n vendorPref,\n customerInvoicePref,\n purchaseReturnPref,\n salesReturnPref,\n expense,\n expensePreference,\n estimatePref,\n customerInvoiceEmail,\n customerAdvance,\n vendorAdvance,\n vendorBalances,\n CustomerBalance,\n payableSummary,\n paymentMade,\n PaymentReceived,\n creditNoteDetail,\n VendorCreditDetail,\n InvoiceDetail,\n projectInvoiceDetail,\n BillsDetail,\n branchBanks,\n accountDetailSelector,\n JVCustomization,\n itemValuation,\n salesReport,\n purchaseReport,\n ledgerReport,\n bankLedgerReport,\n recurringBill,\n recurringExpense,\n fileManager,\n attachmentManager,\n posTills,\n posShifts,\n posCashTransfer,\n posEntry,\n subscriptionInformation,\n tickets,\n customerPOSInvoice,\n projects,\n vatReturn,\n vatPayment,\n corporatePayment,\n taxesSettings,\n advanceSettings,\n projectTransactions,\n brs,\n budget,\n payroll,\n payrollPayment,\n payPeriods,\n posSettings,\n BillableDetail,\n itemConsumption,\n billsApprovals,\n customerInvoiceApprovals,\n jvApprovals,\n expenseApprovals,\n corporateTax,\n withHeldTax,\n inventoryFields,\n reportingTags\n};\n\nconst appReducer = combineReducers(rootReducer);\n\nconst rootReducers = (state, action) => {\n if (action.type === 'LOGOUT') {\n state = {\n mapAccounts: state.mapAccounts,\n navbar: state.navbar,\n layout: state.layout,\n auth: state.auth\n };\n }\n return appReducer(state, action);\n};\n\nexport default rootReducers;\n","// ** Redux Imports\n\nimport rootReducer from './rootReducer'\nimport { configureStore } from '@reduxjs/toolkit'\n\nconst store = configureStore({\n reducer: rootReducer,\n middleware: getDefaultMiddleware => {\n return getDefaultMiddleware({\n serializableCheck: false\n })\n }\n})\n\nexport { store }\n","// ** Redux Imports\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const getAllData = createAsyncThunk('appUsers/getAllData', async () => {\n const response = await axios.get('/api/users/list/all-data')\n return response.data\n})\n\nexport const getData = createAsyncThunk('appUsers/getData', async params => {\n const response = await axios.get('/api/users/list/data', params)\n return {\n params,\n data: response.data.users,\n totalPages: response.data.total\n }\n})\n\nexport const getUser = createAsyncThunk('appUsers/getUser', async id => {\n const response = await axios.get('/api/users/user', { id })\n return response.data.user\n})\n\nexport const addUser = createAsyncThunk('appUsers/addUser', async (user, { dispatch, getState }) => {\n await axios.post('/apps/users/add-user', user)\n await dispatch(getData(getState().users.params))\n await dispatch(getAllData())\n return user\n})\n\nexport const deleteUser = createAsyncThunk('appUsers/deleteUser', async (id, { dispatch, getState }) => {\n await axios.delete('/apps/users/delete', { id })\n await dispatch(getData(getState().users.params))\n await dispatch(getAllData())\n return id\n})\n\nexport const appUsersSlice = createSlice({\n name: 'appUsers',\n initialState: {\n data: [],\n total: 1,\n params: {},\n allData: [],\n selectedUser: null\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getAllData.fulfilled, (state, action) => {\n state.allData = action.payload\n })\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data\n state.params = action.payload.params\n state.total = action.payload.totalPages\n })\n .addCase(getUser.fulfilled, (state, action) => {\n state.selectedUser = action.payload\n })\n }\n})\n\nexport default appUsersSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appRecurringJournal/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appRecurringJournal/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const consolidatedResponse = await axios.get('/JV/RecurringVoucherList', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: {data: {list: []}},\n consolidated: consolidatedResponse.data,\n }\n})\n\nexport const appRecurringJournalSlice = createSlice({\n name: 'appRecurringJournal',\n initialState: {\n journal: {},\n data: [],\n consolidated: [],\n totalRecords: 1,\n totalRecordsConsolidated: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.totalRecordsConsolidated = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appRecurringJournalSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDemands/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDemands/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Demands/List', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appDemandsSlice = createSlice({\n name: 'appDemands',\n initialState: {\n demands: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDemandsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDemand/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDemand/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Demands/List', { params: { ...params, ServiceInvoice: false } })\n const consolidated_response = await axios.get('/Demands/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n consolidated: consolidated_response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appDemand/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appDemand/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/Demands/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appDemand/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appDemandSlice = createSlice({\n name: 'appDemand',\n initialState: {\n purchaseRequests: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDemandSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPurchaseRequests/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPurchaseRequests/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/PurchaseRequests/List', { params: { ...params, ServiceInvoice: false } })\n const consolidated_response = await axios.get('/PurchaseRequests/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n consolidated: consolidated_response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appPurchaseRequests/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appPurchaseRequests/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appPurchaseRequests/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appPurchaseRequestsSlice = createSlice({\n name: 'appPurchaseRequests',\n initialState: {\n purchaseRequests: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPurchaseRequestsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appTenantCurrencies/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appTenantCurrencies/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/TenantCurrencies/List', { params })\n \n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appTenantCurrencies = createSlice({\n name: 'appTenantCurrencies',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appTenantCurrencies.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appRecurringBill/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appRecurringBill/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const consolidated_response = await axios.get('/PurchaseInvoices/RecurringInvoicesList', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n consolidated: consolidated_response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appRecurringBill/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appRecurringBill/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appRecurringBill/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appRecurringBillSlice = createSlice({\n name: 'appRecurringBill',\n initialState: {\n vendorInvoice: {},\n data: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.consolidatedTotalRecords = action.payload.consolidated?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appRecurringBillSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appRecurringExpense/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appRecurringExpense/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const consolidated_response = await axios.get('/Expenses/RecurringExpensesList', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n consolidated: consolidated_response.data\n }\n})\n\nexport const appRecurringExpenseSlice = createSlice({\n name: 'appRecurringExpense',\n initialState: {\n vendorInvoice: {},\n data: [],\n totalRecords: 1,\n consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.consolidated = action.payload.consolidated?.data?.list??[]\n state.consolidatedTotalRecords = action.payload.consolidated?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appRecurringExpenseSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appTaxTypes/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appTaxTypes/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/TaxTypes/List', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appTaxTypes = createSlice({\n name: 'appTaxTypes',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list.map(l => ({ ...l, recno: l.recNo }))\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appTaxTypes.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appGRN/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appGRN/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/GRNs/List', { params: { ...params, ServiceInvoice: false } })\n const consolidated_response = await axios.get('/GRNs/ConsolidatedList', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n consolidated: consolidated_response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appGRN/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appGRN/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appGRN/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appGRNSlice = createSlice({\n name: 'appGRN',\n initialState: {\n GRN: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appGRNSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appGRNReturns/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appGRNReturns/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/GRNReturns/List', { params: { ...params, ServiceInvoice: false } })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appGRNReturns/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appGRNReturns/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/PurchaseInvoice/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\nexport const deleteInvoice = createAsyncThunk('appGRNReturns/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appGRNReturnsSlice = createSlice({\n name: 'appGRNReturns',\n initialState: {\n GRNReturns: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n // console.log(state, action)\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appGRNReturnsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('customerRecurrenceInvoice/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('customerRecurrenceInvoice/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/SalesInvoices/RecurringInvoicesList', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const customerRecurrenceInvoiceSlice = createSlice({\n name: 'customerRecurrenceInvoice',\n initialState: {\n vendorInvoice: {},\n data: [],\n // consolidated: [],\n totalRecords: 1,\n // consolidatedTotalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n // state.consolidated = action.payload.consolidated.data.list\n state.totalRecords = action.payload.data.totalRecords\n // state.consolidatedTotalRecords = action.payload.consolidated.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default customerRecurrenceInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryItem/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryItem/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryItems/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getTypeData = createAsyncThunk('appInventoryItem/getTypeData', async (params, { dispatch }) => {\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/JVTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getJournal = createAsyncThunk('appInventoryItem/getJournal', async (recno, { dispatch }) => {\n dispatch(setLoading({ getJournal: true }))\n const response = await axios.get(`/JV/${recno}`)\n dispatch(setLoading({ getJournal: false }))\n\n return response.data\n})\n\n\nexport const deleteInvoice = createAsyncThunk('appInventoryItem/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const appInventoryItem = createSlice({\n name: 'appInventoryItem',\n initialState: {\n journal: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(getJournal.fulfilled, (state, action) => {\n state.journal = action.payload\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryItem.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryBrand/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryBrand/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryBrands/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryBrand = createSlice({\n name: 'appInventoryBrand',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryBrand.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryColor/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryColor/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryColors/List', { params })\n \n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryColor = createSlice({\n name: 'appInventoryColor',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryColor.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryCostCenter/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryCostCenter/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryCostCenters/List', { params })\n \n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryCostCenter = createSlice({\n name: 'appInventoryCostCenter',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryCostCenter.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryDepartment/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryDepartment/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryDepartments/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryDepartment = createSlice({\n name: 'appInventoryDepartment',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryDepartment.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCreditTerms/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appCreditTerms/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/TenantCreditTerms/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appCreditTerms = createSlice({\n name: 'appCreditTerms',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appCreditTerms.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPOSTills/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPOSTills/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/POSTills/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appPOSTills = createSlice({\n name: 'appPOSTills',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPOSTills.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPOSCashTransfer/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appPOSCashTransfer/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/TillAmountTransfers/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const getUnAssigned = createAsyncThunk('appPOSCashTransfer/getUnAssigned', async (params, { dispatch }) => {\n dispatch(setLoading({ getUnAssigned: true }))\n const response = await axios.get(`/Defaults/GetBranchTillUnassignedShifts/${params.tillId}`, { params })\n dispatch(setLoading({ getUnAssigned: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appPOSCashTransfer = createSlice({\n name: 'appPOSCashTransfer',\n initialState: {\n data: [],\n un_data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getUnAssigned: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getUnAssigned.fulfilled, (state, action) => {\n state.un_data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appPOSCashTransfer.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('POSEntry/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('POSEntry/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.put('/SalesInvoices/GetCurrentActiveShift', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response?.data,\n }\n})\n\nexport const POSEntrySlice = createSlice({\n name: 'POSEntry',\n initialState: {\n data: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data??{message: \"Not found\"}\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default POSEntrySlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryMeasuringUnit/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryMeasuringUnit/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryMeasuringUnits/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryMeasuringUnit = createSlice({\n name: 'appInventoryMeasuringUnit',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryMeasuringUnit.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventorySeason/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventorySeason/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventorySeasons/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventorySeason = createSlice({\n name: 'appInventorySeason',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventorySeason.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appinventorySize/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appinventorySize/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/inventorySizes/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appinventorySize = createSlice({\n name: 'appinventorySize',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appinventorySize.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventoryCategory/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventoryCategory/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryCategories/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventoryCategory = createSlice({\n name: 'appInventoryCategory',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventoryCategory.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appInventorySubCategory/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appInventorySubCategory/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventorySubCategories/List', { params })\n // consle.log({ response })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appInventorySubCategory = createSlice({\n name: 'appInventorySubCategory',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appInventorySubCategory.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appEmployee/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appEmployee/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/PayRollEmployees/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appEmployeeSlice = createSlice({\n name: 'appEmployee',\n initialState: {\n employees: {},\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appEmployeeSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDesignations/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDesignations/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/EmployeeDesignations/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appDesignations = createSlice({\n name: 'appDesignations',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDesignations.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDepartments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDepartments/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/EmployeeDepartments/List', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data\n }\n})\n\nexport const appDepartments = createSlice({\n name: 'appDepartments',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDepartments.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appAllowances/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appAllowances/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/PayRollAllowances/List', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data\n }\n})\n\nexport const appAllowances = createSlice({\n name: 'appAllowances',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appAllowances.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayAllowances/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayAllowances/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriodAllowances/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayAllowancesSlice = createSlice({\n name: 'appPayAllowances',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayAllowancesSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayDeductions/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayDeductions/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriodDeductions/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayDeductionsSlice = createSlice({\n name: 'appPayDeductions',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayDeductionsSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayLeaves/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayLeaves/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriodLeaves/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayLeavesSlice = createSlice({\n name: 'appPayLeaves',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayLeavesSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayAdvances/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayAdvances/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriodAdvances/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayAdvancesSlice = createSlice({\n name: 'appPayAdvances',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayAdvancesSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appDeductions/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appDeductions/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/PayRollDeductions/List', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data\n }\n})\n\nexport const appDeductions = createSlice({\n name: 'appDeductions',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appDeductions.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCostCenter/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appCostCenter/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryCostCenters/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appCostCenter = createSlice({\n name: 'appCostCenter',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appCostCenter.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appFinancialYear/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appFinancialYear/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Fyears/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appFinancialYear = createSlice({\n name: 'appFinancialYear',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appFinancialYear.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {collectChilds, getTotal, getTotalCompare} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('ProfitReport/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('ProfitReport/getData', async (params, {dispatch}) => {\n dispatch(setLoading({getData: true}))\n try {\n let response;\n if (params.LocationId) {\n response = await axios.get('/AccountsReports/LocationProfitAndLossReport', {params})\n } else {\n response = await axios.get('/AccountsReports/ProfitAndLossReport', {params})\n }\n return {\n params,\n data: response.data,\n }\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: []\n }\n }\n }\n } finally {\n dispatch(setLoading({getData: false}))\n }\n\n})\n\n\nexport const getCompareData = createAsyncThunk('ProfitReport/getCompareData', async (params, {dispatch}) => {\n dispatch(setLoading({getCompareData: true}))\n try {\n let response;\n if(params.compareWith === 'class'){\n response = await axios.get('/AccountsReports/ProfitAndLossCostCenterWiseComparisonReport', {params})\n } else {\n response = await axios.get('/AccountsReports/ProfitAndLossComparisonReport', {params})\n }\n return {\n params,\n data: response.data,\n }\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n columns: []\n }\n }\n }\n } finally {\n dispatch(setLoading({getCompareData: false}))\n }\n\n})\n\nexport const ProfitLossStore = createSlice({\n name: 'ProfitReport',\n initialState: {\n data: [],\n compare_data: [],\n compare_columns: [],\n totalRecords: 1,\n params: {},\n compare_params: {},\n loadingState: {getData: false, getCompareData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n if (data) {\n data.map((e => {\n let a = {...e};\n if (a.accounts) {\n let totalAmount = 0;\n a.accounts.map((r => {\n totalAmount += r.amount;\n if ((r.childs || []).length > 0) {\n r.childAmount = getTotal(r);\n totalAmount += r.childAmount;\n }\n }))\n a.amount = totalAmount;\n }\n dataList.push(a);\n }));\n\n let incomeList = dataList.filter(e => e.sortLvl === 1);\n let income = incomeList.length > 0 ? incomeList[0] : null;\n let costSaleList = dataList.filter(e => e.sortLvl === 2);\n let costOSale = costSaleList.length > 0 ? costSaleList[0] : null;\n let expenseList = dataList.filter(e => e.sortLvl === 3);\n let expense = expenseList.length > 0 ? expenseList[0] : null;\n let otherExpList = dataList.filter(e => e.sortLvl === 4);\n let otherExp = otherExpList.length > 0 ? otherExpList[0] : null;\n let otherIncomeList = dataList.filter(e => e.sortLvl === 5);\n let otherIncome = otherIncomeList.length > 0 ? otherIncomeList[0] : null;\n\n let grossData;\n if (income && costOSale) {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: costOSale.formula === \"-\" ? income.amount - costOSale.amount : income.amount - costOSale.amount,\n accounts: []\n }\n } else {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: 0,\n accounts: []\n }\n }\n\n dataList.splice(2, 0, grossData)\n let netProfit = grossData.amount;\n\n if (expense) {\n netProfit -= expense.amount ?? 0;\n }\n\n if (otherExp) {\n netProfit -= otherExp.amount ?? 0;\n }\n\n if (otherIncome) {\n netProfit += otherIncome.amount ?? 0;\n }\n\n let netData = {\n headName: netProfit > -1 ? \"Net Profit\" : \"Net Loss\",\n total: true,\n net: true,\n amount: netProfit,\n accounts: []\n }\n\n dataList.push(netData)\n\n }\n state.data = dataList\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getCompareData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n let columns = action.payload.data.data.columns;\n\n\n if (data) {\n data.map((e => {\n let a = {...e};\n if (a.accounts) {\n a.dynamicColumns = {};\n for(let i = 0 ; i < columns.length; i++) {\n let totalAmount = 0;\n a.accounts.map((r => {\n totalAmount += r.dynamicColumns[columns[i]];\n if ((r.childs || []).length > 0) {\n r.childAmount = getTotalCompare(r, columns[i]);\n totalAmount += r.childAmount;\n }\n }))\n a.dynamicColumns[columns[i]] = totalAmount;\n }\n }\n dataList.push(a);\n }));\n\n let incomeList = dataList.filter(e => e.sortLvl === 1);\n let income = incomeList.length > 0 ? incomeList[0] : null;\n let costSaleList = dataList.filter(e => e.sortLvl === 2);\n let costOSale = costSaleList.length > 0 ? costSaleList[0] : null;\n let expenseList = dataList.filter(e => e.sortLvl === 3);\n let expense = expenseList.length > 0 ? expenseList[0] : null;\n let otherExpList = dataList.filter(e => e.sortLvl === 4);\n let otherExp = otherExpList.length > 0 ? otherExpList[0] : null;\n let otherIncomeList = dataList.filter(e => e.sortLvl === 5);\n let otherIncome = otherIncomeList.length > 0 ? otherIncomeList[0] : null;\n\n let grossData;\n if (income && costOSale) {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: 0,\n accounts: [],\n dynamicColumns: {}\n }\n\n for(let i = 0 ; i < columns.length; i++){\n grossData.dynamicColumns[columns[i]] = costOSale.formula === \"-\" ? income.dynamicColumns[columns[i]] - costOSale.dynamicColumns[columns[i]] : income.dynamicColumns[columns[i]] - costOSale.dynamicColumns[columns[i]]\n }\n\n } else {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: 0,\n accounts: [],\n dynamicColumns: {}\n }\n\n for(let i = 0 ; i < columns.length; i++){\n grossData.dynamicColumns[columns[i]] = 0\n }\n }\n\n dataList.splice(2, 0, grossData)\n\n let netData = {\n headName: \"Net Profit\",\n total: true,\n net: true,\n accounts: [],\n dynamicColumns: {}\n };\n\n\n for(let i = 0 ; i < columns.length; i++){\n let netProfit = grossData.dynamicColumns[columns[i]];\n\n if (expense) {\n netProfit -= expense.dynamicColumns[columns[i]] ?? 0;\n }\n\n if (otherExp) {\n netProfit -= otherExp.dynamicColumns[columns[i]] ?? 0;\n }\n\n if (otherIncome) {\n netProfit += otherIncome.dynamicColumns[columns[i]] ?? 0;\n }\n\n netData.dynamicColumns[columns[i]] = netProfit;\n }\n\n dataList.push(netData)\n }\n\n let detailData = [];\n\n for(let i = 0 ; i < dataList.length; i++){\n let list_item = {...dataList[i]}\n let accounts = list_item?.accounts??[];\n list_item.accounts = undefined;\n detailData.push({...list_item});\n for(let j = 0; j < accounts.length; j++) {\n let childs = accounts[j].childs??[];\n accounts[j].childs = undefined;\n let array = [];\n for(let k = 0; k < columns.length; k++){\n array.push(accounts[j].dynamicColumns[columns[k]]);\n }\n const isAllZero = array.every(item => item === 0);\n const cChilds = collectChilds(childs, columns);\n if(!isAllZero || cChilds.length > 0 ) {\n detailData.push({...accounts[j]})\n }\n\n if(cChilds.length > 0) {\n detailData.push(...cChilds)\n }\n }\n }\n\n state.compare_data = detailData\n state.compare_columns = columns\n state.totalRecords = action.payload.data.data.totalRecords\n state.compare_params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default ProfitLossStore.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {collectChilds, getTotal, getTotalCompare} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('ProjectProfitReport/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('ProjectProfitReport/getData', async (params, {dispatch}) => {\n dispatch(setLoading({getData: true}))\n try {\n if(params?.projectId) {\n let response = await axios.get(`/Projects/ProfitAndLossReport/${params.projectId}`, {params})\n\n return {\n params,\n data: response.data,\n }\n } else {\n return {\n params,\n data: {\n data: {\n list: []\n }\n }\n } \n }\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: []\n }\n }\n }\n } finally {\n dispatch(setLoading({getData: false}))\n }\n\n})\n\nexport const ProjectProfitLossStore = createSlice({\n name: 'ProjectProfitReport',\n initialState: {\n data: [],\n transactionCurrency: {code: \"AED\", symbol: \"AED\", name: \"United Arab Emirates Direm\"},\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list\n let transactionCurrency = {code: \"AED\", symbol: \"AED\", name: \"United Arab Emirates Direm\"};\n\n let dataList = [];\n if (data) {\n data.map((e => {\n let a = {...e};\n\n transactionCurrency = {\n code: e.transactionCurrencyCode??\"AED\",\n symbol: e.transactionCurrencySymbol??\"AED\",\n name: e.transactionCurrencyName??\"United Arab Emirates Direm\"\n };\n\n if (a.accounts) {\n let totalAmount = 0;\n a.accounts.map((r => {\n totalAmount += r.amount;\n if ((r.childs || []).length > 0) {\n r.childAmount = getTotal(r);\n totalAmount += r.childAmount;\n }\n }))\n a.amount = totalAmount;\n }\n dataList.push(a);\n }));\n\n let incomeList = dataList.filter(e => e.sortLvl === 1);\n let income = incomeList.length > 0 ? incomeList[0] : null;\n let costSaleList = dataList.filter(e => e.sortLvl === 2);\n let costOSale = costSaleList.length > 0 ? costSaleList[0] : null;\n let expenseList = dataList.filter(e => e.sortLvl === 3);\n let expense = expenseList.length > 0 ? expenseList[0] : null;\n let otherExpList = dataList.filter(e => e.sortLvl === 4);\n let otherExp = otherExpList.length > 0 ? otherExpList[0] : null;\n let otherIncomeList = dataList.filter(e => e.sortLvl === 5);\n let otherIncome = otherIncomeList.length > 0 ? otherIncomeList[0] : null;\n\n let grossData;\n if (income && costOSale) {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: costOSale.formula === \"-\" ? income.amount - costOSale.amount : income.amount - costOSale.amount,\n accounts: []\n }\n } else {\n grossData = {\n headName: \"Gross Profit\",\n total: true,\n amount: 0,\n accounts: []\n }\n }\n\n dataList.splice(2, 0, grossData)\n let netProfit = grossData.amount;\n\n if (expense) {\n netProfit -= expense.amount ?? 0;\n }\n\n if (otherExp) {\n netProfit -= otherExp.amount ?? 0;\n }\n\n if (otherIncome) {\n netProfit += otherIncome.amount ?? 0;\n }\n\n let netData = {\n headName: netProfit > -1 ? \"Net Profit\" : \"Net Loss\",\n total: true,\n net: true,\n amount: netProfit,\n accounts: []\n }\n\n dataList.push(netData)\n\n }\n state.data = dataList\n state.transactionCurrency = transactionCurrency\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default ProjectProfitLossStore.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotal} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('BalanceSheet/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('BalanceSheet/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.LocationId) {\n response = await axios.get('/AccountsReports/LocationBalanceSheetReport', {params})\n } else {\n response = await axios.get('/AccountsReports/BalanceSheetReport', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\nexport const deleteInvoice = createAsyncThunk('BalanceSheet/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const BalanceSheetStore = createSlice({\n name: 'BalanceSheet',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n if(data){\n data.map((e => {\n let a = {...e};\n if(a.accounts){\n let totalAmount = 0;\n a.accounts.map((r => {\n totalAmount += r.amount;\n if((r.childs || []).length > 0){\n r.childAmount = getTotal(r);\n totalAmount += r.childAmount;\n }\n }))\n a.amount = totalAmount;\n }\n dataList.push(a);\n }));\n\n let currentAssetsList = dataList.filter(e => e.sortLvl === 1);\n let cAssets = currentAssetsList.length > 0 ? currentAssetsList[0] : null;\n\n let caceList = dataList.filter(e => e.sortLvl === 2);\n let cashACE = caceList.length > 0 ? caceList[0] : null;\n\n let accountRecList = dataList.filter(e => e.sortLvl === 3);\n let accountRec = accountRecList.length > 0 ? accountRecList[0] : null;\n\n let nonCAssetsList = dataList.filter(e => e.sortLvl === 4);\n let nonCAssets = nonCAssetsList.length > 0 ? nonCAssetsList[0] : null;\n\n let fixedAssetsList = dataList.filter(e => e.sortLvl === 5);\n let fixedAssets = fixedAssetsList.length > 0 ? fixedAssetsList[0] : null;\n\n let ownerEqList = dataList.filter(e => e.sortLvl === 6);\n let ownerEq = ownerEqList.length > 0 ? ownerEqList[0] : null;\n let ownerEq2 = ownerEqList.length > 1 ? ownerEqList[1] : null;\n\n let cLiabilitiesList = dataList.filter(e => e.sortLvl === 7);\n let cLiabilities = cLiabilitiesList.length > 0 ? cLiabilitiesList[0] : null;\n\n let accPayableList = dataList.filter(e => e.sortLvl === 8);\n let accPayable = accPayableList.length > 0 ? accPayableList[0] : null;\n\n let creditCardList = dataList.filter(e => e.sortLvl === 9);\n let creditCard = creditCardList.length > 0 ? creditCardList[0] : null;\n\n let nonCLiabilitiesList = dataList.filter(e => e.sortLvl === 10);\n let nonCLiabilities = nonCLiabilitiesList.length > 0 ? nonCLiabilitiesList[0] : null;\n\n let totalAssetsCount = (cAssets?.amount??0) + (cashACE?.amount??0) + (accountRec?.amount??0) + (nonCAssets?.amount??0) + (fixedAssets?.amount??0)\n let totalAssets = {\n headName: \"Total Assets\",\n total: true,\n amount: totalAssetsCount,\n accounts: []\n }\n\n let spliceIndex = 0;\n\n if(cAssets !== null){\n spliceIndex++;\n }\n\n if(cashACE !== null){\n spliceIndex++;\n }\n\n if(accountRec !== null){\n spliceIndex++;\n }\n\n if(nonCAssets !== null){\n spliceIndex++;\n }\n\n if(fixedAssets !== null){\n spliceIndex++;\n }\n\n\n dataList.splice(spliceIndex, 0, totalAssets)\n\n let totalLiabilities = 0;\n\n if(ownerEq){\n totalLiabilities += (ownerEq.amount??0);\n }\n\n if(ownerEq2){\n totalLiabilities += (ownerEq2.amount??0);\n }\n\n if(cLiabilities){\n totalLiabilities += (cLiabilities.amount??0);\n }\n\n if(accPayable){\n totalLiabilities += (accPayable.amount??0);\n }\n\n if(creditCard){\n totalLiabilities += (creditCard.amount??0);\n }\n\n if(nonCLiabilities){\n totalLiabilities += (nonCLiabilities.amount??0);\n }\n\n let netData = {\n headName: \"Total Liabilities\",\n total: true,\n net: true,\n amount: totalLiabilities,\n accounts: []\n }\n\n dataList.push(netData)\n\n }\n state.data = dataList\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default BalanceSheetStore.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('TrailBalance/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('TrailBalance/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/AccountsReports/TrailBalanceLocationV2', {params})\n } else {\n response = await axios.get('/AccountsReports/TrailBalanceV2', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\nexport const deleteInvoice = createAsyncThunk('TrailBalance/deleteInvoice', async (id, { dispatch, getState }) => {\n dispatch(setLoading({ deleteInvoice: true }))\n await axios.delete('/apps/invoice/delete', { id })\n await dispatch(getData(getState().invoice.params))\n dispatch(setLoading({ deleteInvoice: false }))\n return id\n})\n\nexport const TrailBalanceStore = createSlice({\n name: 'TrailBalance',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n for(let i = 0 ;i < data.length ;i++) {\n let d = {...data[i]};\n let { total_open_dr, total_open_cr, total_dr, total_cr, total_close_dr, total_close_cr } = (d.childs || []).length > 0 ? getTotalTrialBalance(d) : { total_open_dr: 0, total_open_cr: 0, total_dr: 0, total_cr: 0, total_close_dr: 0, total_close_cr: 0};\n let closeBalance = (d.obdr + d.dr) - (d.obcr + d.cr);\n if(closeBalance >= 0){\n d.cbdr = closeBalance;\n d.cbcr = 0;\n }else{\n d.cbcr = -1 * closeBalance;\n d.cbdr = 0;\n }\n // alert(total_open_dr)\n // alert(d.obdr)\n d.total_open_dr = total_open_dr + d.obdr;\n d.total_open_cr = total_open_cr + d.obcr;\n d.total_dr = total_dr + (d.dr /*> 0 ? d.dr : (-1 * d.dr)*/);\n d.total_cr = total_cr + (d.cr /*> 0 ? d.cr : (-1 * d.cr)*/);\n\n let totalCloseBalance = (d.total_open_dr + d.total_dr) - (d.total_open_cr + d.total_cr);\n\n if(totalCloseBalance >= 0){\n d.total_close_dr = totalCloseBalance;\n d.total_close_cr = 0;\n }else{\n d.total_close_cr = -1 * totalCloseBalance;\n d.total_close_dr = 0;\n }\n\n dataList.push(d);\n }\n console.log(`TOTAL VALUE DR CR ${JSON.stringify(dataList)}`);\n state.data = dataList\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default TrailBalanceStore.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\nimport { getTotalTrialBalance } from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk(\"CustomerAdvance/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"CustomerAdvance/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/CustomerAdvancesSummary\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/CustomerAdvancesSummary\", { params });\n }\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const CustomerAdvance = createSlice({\n name: \"CustomerAdvance\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n for (let i = 0; i < data.length; i++) {\n let d = { ...data[i] };\n let { total_open_dr, total_open_cr, total_dr, total_cr, total_close_dr, total_close_cr } = (d.childs || []).length > 0 ? getTotalTrialBalance(d) : { total_open_dr: 0, total_open_cr: 0, total_dr: 0, total_cr: 0, total_close_dr: 0, total_close_cr: 0 };\n let closeBalance = d.obdr + d.dr - (d.obcr + d.cr);\n if (closeBalance >= 0) {\n d.cbdr = closeBalance;\n d.cbcr = 0;\n } else {\n d.cbcr = -1 * closeBalance;\n d.cbdr = 0;\n }\n // alert(total_open_dr)\n // alert(d.obdr)\n d.total_open_dr = total_open_dr + d.obdr;\n d.total_open_cr = total_open_cr + d.obcr;\n d.total_dr = total_dr + d.dr /*> 0 ? d.dr : (-1 * d.dr)*/;\n d.total_cr = total_cr + d.cr /*> 0 ? d.cr : (-1 * d.cr)*/;\n\n let totalCloseBalance = d.total_open_dr + d.total_dr - (d.total_open_cr + d.total_cr);\n\n if (totalCloseBalance >= 0) {\n d.total_close_dr = totalCloseBalance;\n d.total_close_cr = 0;\n } else {\n d.total_close_cr = -1 * totalCloseBalance;\n d.total_close_dr = 0;\n }\n\n dataList.push(d);\n }\n console.log(`TOTAL VALUE DR CR ${JSON.stringify(dataList)}`);\n state.data = dataList;\n state.totalRecords = action.payload.data.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default CustomerAdvance.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('TaxCodeReport/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('TaxCodeReport/getData', async (params, { dispatch }) => {\n\n dispatch(setLoading({ getData: true }))\n\n try {\n let response = await axios.get('/AccountsReports/GetTransactionSummaryByTaxCodeReport', {params})\n\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\nexport const TaxCodeReportDetail = createSlice({\n name: 'TaxCodeReport',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n state.data = action.payload.data.data;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default TaxCodeReportDetail.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('TaxCodeDetailReport/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getDetailData = createAsyncThunk('TaxCodeDetailReport/getDetailData', async (params, { dispatch }) => {\n\n dispatch(setLoading({ getDetailData: true }))\n\n try {\n let response = await axios.get('/AccountsReports/GetTransactionDetailByTaxCodeReport', {params})\n\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getDetailData: false }))\n }\n\n})\n\nexport const TaxCodeDetailReportDetail = createSlice({\n name: 'TaxCodeDetailReport',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getDetailData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getDetailData.fulfilled, (state, action) => {\n state.data = action.payload.data.data;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default TaxCodeDetailReportDetail.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\nimport { getTotalTrialBalance } from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk(\"vendorAdvance/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"vendorAdvance/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/VendorAdvancesSummary\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/VendorAdvancesSummary\", { params });\n }\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const vendorAdvance = createSlice({\n name: \"vendorAdvance\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n let data = action.payload.data.data.list;\n let dataList = [];\n for (let i = 0; i < data.length; i++) {\n let d = { ...data[i] };\n let { total_open_dr, total_open_cr, total_dr, total_cr, total_close_dr, total_close_cr } = (d.childs || []).length > 0 ? getTotalTrialBalance(d) : { total_open_dr: 0, total_open_cr: 0, total_dr: 0, total_cr: 0, total_close_dr: 0, total_close_cr: 0 };\n let closeBalance = d.obdr + d.dr - (d.obcr + d.cr);\n if (closeBalance >= 0) {\n d.cbdr = closeBalance;\n d.cbcr = 0;\n } else {\n d.cbcr = -1 * closeBalance;\n d.cbdr = 0;\n }\n // alert(total_open_dr)\n // alert(d.obdr)\n d.total_open_dr = total_open_dr + d.obdr;\n d.total_open_cr = total_open_cr + d.obcr;\n d.total_dr = total_dr + d.dr /*> 0 ? d.dr : (-1 * d.dr)*/;\n d.total_cr = total_cr + d.cr /*> 0 ? d.cr : (-1 * d.cr)*/;\n\n let totalCloseBalance = d.total_open_dr + d.total_dr - (d.total_open_cr + d.total_cr);\n\n if (totalCloseBalance >= 0) {\n d.total_close_dr = totalCloseBalance;\n d.total_close_cr = 0;\n } else {\n d.total_close_cr = -1 * totalCloseBalance;\n d.total_close_dr = 0;\n }\n\n dataList.push(d);\n }\n console.log(`TOTAL VALUE DR CR ${JSON.stringify(dataList)}`);\n state.data = dataList;\n state.totalRecords = action.payload.data.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default vendorAdvance.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"vendorBalances/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"vendorBalances/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/VendorBalances\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/VendorBalances\", { params });\n }\n\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n // console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const vendorBalances = createSlice({\n name: \"vendorBalances\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default vendorBalances.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\nimport { getTotalTrialBalance } from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk(\"CustomerBalance/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"CustomerBalance/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/CustomerBalances\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/CustomerBalances\", { params });\n }\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n // console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const CustomerBalance = createSlice({\n name: \"CustomerBalance\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default CustomerBalance.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"payableSummary/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"payableSummary/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/VendorPayableSummary\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/VendorPayableSummary\", { params });\n }\n\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n // console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const payableSummary = createSlice({\n name: \"payableSummary\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default payableSummary.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\n// ** Axios Imports\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"paymentMade/setLoading\", async (loadingState) => ({ ...loadingState }));\n\nexport const getData = createAsyncThunk(\"paymentMade/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response;\n if (params.Location) {\n response = await axios.get(\"/AccountsReports/VendorPaymentsMade\", { params });\n } else {\n response = await axios.get(\"/AccountsReports/VendorPaymentsMade\", { params });\n }\n\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n // console.log(e);\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const paymentMade = createSlice({\n name: \"paymentMade\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default paymentMade.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('StockReport/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('StockReport/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/StockReports/StockMovement', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\n\nexport const getDataLocation = createAsyncThunk('StockReport/getDataLocation', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/StockReports/StockMovementLocation', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const StockReportSlice = createSlice({\n name: 'StockReport',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDataLocation.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default StockReportSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('SingleItemReport/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('SingleItemReport/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n try {\n response = await axios.get('/StockReports/SingleItemLedger', {params})\n }catch (e){\n response = {\n data: {\n data: {\n list: []\n }\n }\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n return {\n params,\n data: response.data\n }\n})\n\n\nexport const getDataLocation = createAsyncThunk('SingleItemReport/getDataLocation', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n try {\n response = await axios.get('/StockReports/SingleItemLedgerLocation', { params })\n }catch (e){\n response = {\n data: {\n data: {\n list: []\n }\n }\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n return {\n params,\n data: response.data\n }\n})\n\nexport const SingleItemReportSlice = createSlice({\n name: 'SingleItemReport',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDataLocation.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default SingleItemReportSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('ItemValuationReport/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('ItemValuationReport/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n try {\n response = await axios.get('/StockReports/InventoryAvgValuation', {params})\n }catch (e){\n response = {\n data: {\n data: {\n list: []\n }\n }\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n return {\n params,\n data: response.data\n }\n})\n\n\nexport const getDataLocation = createAsyncThunk('ItemValuationReport/getDataLocation', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n try {\n response = await axios.get('/StockReports/InventoryAvgValuationLocation', { params })\n }catch (e){\n response = {\n data: {\n data: {\n list: []\n }\n }\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n return {\n params,\n data: response.data\n }\n})\n\nexport const ItemValuationReportSlice = createSlice({\n name: 'ItemValuationReport',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false}\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getDataLocation.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default ItemValuationReportSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {useDispatch} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\n\nexport const setLoading = createAsyncThunk('ItemAdjustment/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('ItemAdjustment/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryAdjustments/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTypeData = createAsyncThunk('ItemAdjustment/getTypeData', async () => {\n const dispatch = useDispatch()\n const params= useParams()\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/InventoryAdjustmentTypes/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n typeData: response.data\n }\n})\n\nexport const ItemAdjustmentSlice = createSlice({\n name: 'ItemAdjustment',\n initialState: {\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default ItemAdjustmentSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {useDispatch} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\n\nexport const setLoading = createAsyncThunk('ItemConsumption/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('ItemConsumption/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/InventoryConsumption/List', { params })\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const getTypeData = createAsyncThunk('ItemConsumption/getTypeData', async () => {\n const dispatch = useDispatch()\n const params= useParams()\n dispatch(setLoading({ getTypeData: true }))\n const response = await axios.get('/InventoryConsumption/List', { params })\n dispatch(setLoading({ getTypeData: false }))\n return {\n params,\n typeData: response.data\n }\n})\n\nexport const ItemConsumptionSlice = createSlice({\n name: 'ItemConsumption',\n initialState: {\n data: [],\n totalRecords: 1,\n typeData: [],\n totalTypeRecords: 1,\n params: {},\n typeParams: {},\n loadingState: { getData: false, getTypeData: false, getJournal: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getTypeData.fulfilled, (state, action) => {\n state.typeData = action.payload.data.data.list\n state.totalTypeRecords = action.payload.data.totalRecords\n state.typeParams = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default ItemConsumptionSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('billsApprovals/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('billsApprovals/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/UserRights/GetPurchaseInvoiceApproveableUsersList', { params })\n const responseVeri = await axios.get('/UserRights/GetPurchaseInvoiceVerifyableUsersList', { params })\n const responseLv3 = await axios.get('/UserRights/GetPurchaseInvoiceApproveableLvl3UsersList', { params })\n const responseLv4 = await axios.get('/UserRights/GetPurchaseInvoiceApproveableLvl4UsersList', { params })\n const allUsers = await axios.get('/Defaults/GetOrganizationUsers', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n veriData: responseVeri.data,\n lv3Data: responseLv3.data,\n lv4Data: responseLv4.data,\n allUsers: allUsers.data,\n }\n})\n\nexport const getApprovalData = createAsyncThunk('billsApprovals/getApprovalData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Settings/SelectOrganizationApprovalSettings/Purchase Bill', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const billsApprovals = createSlice({\n name: 'billsApprovals',\n initialState: {\n approval_data: {},\n approvers: [],\n verifiers: [],\n lv3Users: [],\n lv4Users: [],\n users: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.approvers = action.payload.data.data\n state.verifiers = action.payload.veriData.data\n state.lv3Users = action.payload.lv3Data.data\n state.lv4Users = action.payload.lv4Data.data\n state.users = action.payload.allUsers.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getApprovalData.fulfilled, (state, action) => {\n state.approval_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default billsApprovals.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('customerInvoiceApprovals/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('customerInvoiceApprovals/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/UserRights/GetSalesInvoiceApproveableLvl1USersList', { params })\n const responseVeri = await axios.get('/UserRights/GetSalesInvoiceApproveableLvl2USersList', { params })\n const responseLv3 = await axios.get('/UserRights/GetSalesInvoiceApproveableLvl3USersList', { params })\n const responseLv4 = await axios.get('/UserRights/GetSalesInvoiceApproveableLvl4USersList', { params })\n const allUsers = await axios.get('/Defaults/GetOrganizationUsers', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n veriData: responseVeri.data,\n lv3Data: responseLv3.data,\n lv4Data: responseLv4.data,\n allUsers: allUsers.data,\n }\n})\n\nexport const getApprovalData = createAsyncThunk('customerInvoiceApprovals/getApprovalData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Settings/SelectOrganizationApprovalSettings/Sales Invoice', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const customerInvoiceApprovals = createSlice({\n name: 'customerInvoiceApprovals',\n initialState: {\n approval_data: {},\n approvers: [],\n verifiers: [],\n lv3Users: [],\n lv4Users: [],\n users: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.approvers = action.payload.data.data\n state.verifiers = action.payload.veriData.data\n state.lv3Users = action.payload.lv3Data.data\n state.lv4Users = action.payload.lv4Data.data\n state.users = action.payload.allUsers.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getApprovalData.fulfilled, (state, action) => {\n state.approval_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default customerInvoiceApprovals.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('jvApprovals/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('jvApprovals/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/UserRights/GetJVApproveableLvl1USersList', { params })\n const responseVeri = await axios.get('/UserRights/GetJVApproveableLvl2USersList', { params })\n const responseLv3 = await axios.get('/UserRights/GetJVApproveableLvl3USersList', { params })\n const responseLv4 = await axios.get('/UserRights/GetJVApproveableLvl4USersList', { params })\n const allUsers = await axios.get('/Defaults/GetOrganizationUsers', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n veriData: responseVeri.data,\n lv3Data: responseLv3.data,\n lv4Data: responseLv4.data,\n allUsers: allUsers.data,\n }\n})\n\nexport const getApprovalData = createAsyncThunk('jvApprovals/getApprovalData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Settings/SelectOrganizationApprovalSettings/Journal Voucher', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const jvApprovals = createSlice({\n name: 'jvApprovals',\n initialState: {\n approval_data: {},\n approvers: [],\n verifiers: [],\n lv3Users: [],\n lv4Users: [],\n users: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.approvers = action.payload.data.data\n state.verifiers = action.payload.veriData.data\n state.lv3Users = action.payload.lv3Data.data\n state.lv4Users = action.payload.lv4Data.data\n state.users = action.payload.allUsers.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getApprovalData.fulfilled, (state, action) => {\n state.approval_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default jvApprovals.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('expenseApprovals/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('expenseApprovals/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/UserRights/GetExpenseApproveableLvl1UsersList', { params })\n const responseVeri = await axios.get('/UserRights/GetExpenseApproveableLvl2UsersList', { params })\n const responseLv3 = await axios.get('/UserRights/GetExpenseApproveableLvl3UsersList', { params })\n const responseLv4 = await axios.get('/UserRights/GetExpenseApproveableLvl4UsersList', { params })\n const allUsers = await axios.get('/Defaults/GetOrganizationUsers', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n veriData: responseVeri.data,\n lv3Data: responseLv3.data,\n lv4Data: responseLv4.data,\n allUsers: allUsers.data,\n }\n})\n\nexport const getApprovalData = createAsyncThunk('expenseApprovals/getApprovalData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Settings/SelectOrganizationApprovalSettings/Expense', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\nexport const expenseApprovals = createSlice({\n name: 'expenseApprovals',\n initialState: {\n approval_data: {},\n approvers: [],\n verifiers: [],\n lv3Users: [],\n lv4Users: [],\n users: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.approvers = action.payload.data.data\n state.verifiers = action.payload.veriData.data\n state.lv3Users = action.payload.lv3Data.data\n state.lv4Users = action.payload.lv4Data.data\n state.users = action.payload.allUsers.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(getApprovalData.fulfilled, (state, action) => {\n state.approval_data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default expenseApprovals.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('vendorPref/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('vendorPref/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/Prefrences/GetVendorFormMandatoryFields', { params })\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data,\n }\n})\n\nexport const vendorPref = createSlice({\n name: 'vendorPref',\n initialState: {\n data: [],\n codeCustomization: {},\n totalRecords: 1,\n params: {},\n loadingState: { getData: false, getCodeCustomization: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default vendorPref.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('customerInvoiceEmail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('customerInvoiceEmail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Prefrences/GetSalesInvoiceEmailTemplate', { params })\n\n console.log(\"responseee\",response)\n\n dispatch(setLoading({ getData: false }))\n return {\n params,\n data: response.data\n }\n})\n\nexport const customerInvoiceEmail = createSlice({\n name: 'customerInvoiceEmail',\n initialState: {\n data: {},\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default customerInvoiceEmail.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('PaymentReceived/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('PaymentReceived/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/AccountsReports/CustomerPaymentsReceived', {params})\n console.log(response,\"response Data\")\n } else {\n response = await axios.get('/AccountsReports/CustomerPaymentsReceived', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const paymentReceived = createSlice({\n name: 'PaymentReceived',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default paymentReceived.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('creditNoteDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('creditNoteDetail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/SalesReports/CustomerCreditDetails', {params})\n } else {\n response = await axios.get('/SalesReports/CustomerCreditDetails', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const creditNoteDetail = createSlice({\n name: 'creditNoteDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default creditNoteDetail.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('VendorCreditDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('VendorCreditDetail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/PurchaseReports/VendorCreditDetails', {params})\n } else {\n response = await axios.get('/PurchaseReports/VendorCreditDetails', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const creditNoteDetail = createSlice({\n name: 'VendorCreditDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default creditNoteDetail.reducer\n","import { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\nimport axios from 'axios'\n\n\nexport const setLoading = createAsyncThunk('InvoiceDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('InvoiceDetail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/SalesReports/InvoiceDetailsList', {params})\n } else {\n response = await axios.get('/SalesReports/InvoiceDetailsList', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const creditNoteDetail = createSlice({\n name: 'InvoiceDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default creditNoteDetail.reducer\n","import { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\nimport axios from 'axios'\n\n\nexport const setLoading = createAsyncThunk('BillableDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('BillableDetail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response = await axios.get('/AccountsReports/GetBillableDetails', {params})\n\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const billableDetail = createSlice({\n name: 'BillableDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default billableDetail.reducer\n","import { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\nimport axios from 'axios'\n\n\nexport const setLoading = createAsyncThunk('projectInvoiceDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('projectInvoiceDetail/getData', async (params, { dispatch }) => {\n if(params?.projectId) {\n dispatch(setLoading({getData: true}))\n try {\n let response;\n if (params.overdue) {\n response = await axios.get(`/Projects/GetProjectOverDueInvoices/${params?.projectId}`, {params})\n } else {\n response = await axios.get(`/Projects/GetProjectOpenInvoices/${params?.projectId}`, {params})\n }\n return {\n params,\n data: response.data,\n }\n } catch (e) {\n console.log(e);\n return {\n params,\n data: {\n data: {\n list: []\n }\n }\n }\n } finally {\n dispatch(setLoading({getData: false}))\n }\n } else {\n return {\n params,\n data: {\n data: {\n list: []\n }\n }\n }\n }\n\n})\n\n\n\nexport const projectInvoiceDetail = createSlice({\n name: 'projectInvoiceDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default projectInvoiceDetail.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\nimport {getTotalTrialBalance} from \"../../../../utility/Utils\";\n\nexport const setLoading = createAsyncThunk('BillsDetail/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('BillsDetail/getData', async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }))\n try {\n let response;\n if (params.Location) {\n response = await axios.get('/PurchaseReports/BillDetails', {params})\n } else {\n response = await axios.get('/PurchaseReports/BillDetails', {params})\n }\n return {\n params,\n data: response.data,\n }\n }catch (e){\n console.log(e);\n return {\n params,\n data: {data: {\n list: []\n }}\n }\n }finally {\n dispatch(setLoading({ getData: false }))\n }\n\n})\n\n\n\nexport const creditNoteDetail = createSlice({\n name: 'BillsDetail',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n})\n\nexport default creditNoteDetail.reducer\n","import { createAsyncThunk, createSlice } from \"@reduxjs/toolkit\";\nimport axios from \"axios\";\n\nexport const setLoading = createAsyncThunk(\"salesReport/setLoading\", async (loadingState) => ({ ...loadingState }));\n\n\nexport const getData = createAsyncThunk(\"salesReport/getData\", async (params, { dispatch }) => {\n dispatch(setLoading({ getData: true }));\n\n try {\n let response = await axios.get(\"/SalesReports/SalesWReturnList\", { params });\n return {\n params,\n data: response.data,\n };\n } catch (e) {\n return {\n params,\n data: {\n data: {\n list: [],\n },\n },\n };\n } finally {\n dispatch(setLoading({ getData: false }));\n }\n});\n\nexport const vendorBalances = createSlice({\n name: \"salesReport\",\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false },\n // allData: []\n },\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n for(let i = 0; i < action.payload.data.data.list.length; i++){\n // console.log( action.payload.data.list[i])\n if (action.payload.data.data.list[i][\"Invoice_Tax_Type\"]===\"Exclusive\"){\n let Amount = action.payload.data.data.list[i].Exclusive_Amount + (action.payload.data.data.list[i].Inclusive_Amount - action.payload.data.data.list[i].Exclusive_Amount);\n action.payload.data.data.list[i].Amount = action.payload.data.data.list[i].Rate < 0 ? (-1 * Amount) : Amount;\n } else {\n let Amount = action.payload.data.data.list[i].Inclusive_Amount;\n action.payload.data.data.list[i].Amount = action.payload.data.data.list[i].Rate < 0 ? (-1 * Amount) : Amount;\n }\n }\n\n state.data = action.payload.data.data.list;\n state.totalRecords = action.payload.data.totalRecords;\n state.params = action.payload.params;\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload;\n });\n },\n});\n\nexport default vendorBalances.reducer;\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCustomerPOSInvoice/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appCustomerPOSInvoice/getData', async (params, { dispatch }) => {\n\n dispatch(setLoading({ getData: true }))\n\n const response = await axios.get('/SalesInvoices/ConsolidatedList', { params })\n\n dispatch(setLoading({ getData: false }))\n\n return {\n params,\n data: response.data,\n }\n})\n\n\nexport const appCustomerPOSInvoiceSlice = createSlice({\n name: 'appCustomerPOSInvoice',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data?.data?.list??[]\n state.totalRecords = action.payload.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appCustomerPOSInvoiceSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appProjects/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appProjects/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n const response = await axios.get('/Projects/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appProjectsSlice = createSlice({\n name: 'appProjects',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appProjectsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appVatPayments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appVatPayments/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n\n if(params?.type === 0) {\n response = await axios.get('/VatReturnPayments/GetVatReturnDues', {params})\n } else {\n response = await axios.get('/VatReturnPayments/GetVatReturnPaymentHistory', {params})\n }\n\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appVatPaymentsSlice = createSlice({\n name: 'appVatPayments',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appVatPaymentsSlice.reducer\n","// ** Redux Imports\nimport { createAsyncThunk, createSlice } from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appCorporatePayments/setLoading', async (loadingState) => ({ ...loadingState }))\n\nexport const getData = createAsyncThunk('appCorporatePayments/getData', async (params, { dispatch, getState }) => {\n dispatch(setLoading({ getData: true }))\n let response;\n\n if(params?.type === 0) {\n response = await axios.get('/CorporateTaxPayments/GetCorporateTaxReturnDues', {params})\n } else {\n response = await axios.get('/CorporateTaxPayments/GetCorporateTaxReturnPaymentHistory', {params})\n }\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response.data\n }\n})\n\nexport const appCorporatePaymentsSlice = createSlice({\n name: 'appCorporatePayments',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: { getData: false }\n // allData: []\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload.data.data.list\n state.totalRecords = action.payload.data.data.totalRecords\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = action.payload\n })\n }\n})\n\nexport default appCorporatePaymentsSlice.reducer\n","// ** Redux Imports\nimport {createAsyncThunk, createSlice} from '@reduxjs/toolkit'\n// ** Axios Imports\nimport axios from 'axios'\n\nexport const setLoading = createAsyncThunk('appPayPeriods/setLoading', async (loadingState) => ({...loadingState}))\n\nexport const getData = createAsyncThunk('appPayPeriods/getData', async (params, {dispatch, getState}) => {\n dispatch(setLoading({getData: true}))\n const response = await axios.get('/PayPeriods/List', {params})\n dispatch(setLoading({getData: false}))\n return {\n params,\n data: response?.data\n }\n})\n\nexport const appPayPeriodsSlice = createSlice({\n name: 'appPayPeriods',\n initialState: {\n data: [],\n totalRecords: 1,\n params: {},\n loadingState: {getData: false}\n },\n reducers: {},\n extraReducers: builder => {\n builder\n .addCase(getData.fulfilled, (state, action) => {\n state.data = action.payload?.data?.data?.list??[]\n state.totalRecords = action.payload?.data?.data?.totalRecords??0\n state.params = action.payload.params\n })\n .addCase(setLoading.fulfilled, (state, action) => {\n state.loadingState = {...state.loadingState, ...action.payload}\n })\n }\n})\n\nexport default appPayPeriodsSlice.reducer\n","// ** React Imports\nimport * as service from '@api/api.service'\nimport {createContext, useEffect, useMemo, useState} from 'react'\nimport {useSelector} from 'react-redux'\nimport {getFingerprint, imageUrlToBase64} from '../Utils'\nimport {useHistory} from \"react-router-dom\";\n\n// ** Create Context\nconst AppDefaultsContext = createContext()\n\nconst AppDefaultsProvider = ({children}) => {\n // ** Hooks\n const store = useSelector(state => state.auth)\n const userData = store.userData\n\n // ** State\n const [defaultCurrency, setDefaultCurrency] = useState({code: \"AED\"})\n const [currencies, setCurrencies] = useState([])\n const [unauthorized, setUnauthorized] = useState(false)\n const [defaultCostLocation, setDefaultCostLocation] = useState()\n const [defaultTanent, setDefaultTanent] = useState()\n const [systemInfo, setSystemInfo] = useState({ip: undefined, long: undefined, lat: undefined, name: undefined})\n\n const loadDefaultCostLocation = async () => {\n try {\n const response = await service.Get('/Defaults/Locations', {Recno: userData.loginLocationId});\n setDefaultCostLocation(response.data.length ? response.data[0] : undefined)\n setUnauthorized(false)\n } catch (e) {\n if (typeof e === \"string\") {\n if (e === \"You are Not autherized\") {\n setUnauthorized(true)\n }\n } else {\n setUnauthorized(false)\n }\n }\n }\n\n const loadDefaultTanent = async () => {\n try {\n const response = await service.Get('/Defaults/TenantDetails', {Recno: userData.loginTenantId});\n\n if(userData?.tenantDetails.length) {\n let tanent = userData?.tenantDetails.find((ele) => ele.tenantId === userData.loginTenantId);\n if(tanent?.logo) {\n imageUrlToBase64(`${process.env.REACT_APP_API_URL_production}${tanent.logo}`)\n .then(base64 => {\n setDefaultTanent(response.data.length ? {...response.data[0], base64Logo: base64} : undefined)\n setUnauthorized(false)\n console.log(`BASE64 LOGO ${base64}`); // Logs the base64 string\n })\n .catch(error => {\n console.error(error);\n setDefaultTanent(response.data.length ? response.data[0] : undefined)\n setUnauthorized(false)\n });\n } else {\n setDefaultTanent(response.data.length ? response.data[0] : undefined)\n setUnauthorized(false)\n }\n } else {\n setDefaultTanent(response.data.length ? response.data[0] : undefined)\n setUnauthorized(false)\n }\n } catch (e) {\n if (typeof e === \"string\") {\n if (e === \"You are Not autherized\") {\n setUnauthorized(true)\n }\n } else {\n setUnauthorized(false)\n }\n }\n }\n\n const setDefaultResetAuthorized = () => {\n setUnauthorized(false)\n }\n\n const loadTenantCurrencies = async () => {\n const response = await service.Get(`/Defaults/TenantCurrencies`)\n const defCurrency = response.data.find(e => e.isDefaultCurrency)\n setDefaultCurrency(defCurrency??{code: \"AED\"})\n setCurrencies(response.data)\n return response.data\n }\n\n const getIp = async () => {\n try {\n const ipApiResponse = await fetch(`https://api.ipify.org/?format=json`).then(body => body.json())\n setSystemInfo(info => ({...info, ...ipApiResponse}))\n } catch (_ignored) {\n\n }\n }\n\n const getGeoLocation = async () => {\n function showError() {\n // console.log('GeoLocation Error', { error })\n }\n\n function showPosition(position) {\n setSystemInfo(info => ({...info, long: `${position.coords.longitude}`, lat: `${position.coords.latitude}`}))\n }\n\n navigator.geolocation?.getCurrentPosition(showPosition, showError)\n }\n\n const getSystemFingerprint = async () => {\n const fingerPrint = localStorage.getItem('fingerprint')\n if (!!fingerPrint) {\n setSystemInfo(info => ({...info, name: JSON.parse(fingerPrint)}))\n } else {\n getFingerprint(name => {\n localStorage.setItem('fingerprint', JSON.stringify(name))\n setSystemInfo(info => ({...info, name}))\n })\n }\n }\n\n const updateTanantLogo = (updated) => {\n setDefaultTanent(({...defaultTanent, ...updated}))\n }\n\n\n const values = useMemo(() => ({\n currencies,\n unauthorized,\n defaultCurrency,\n defaultCostLocation,\n defaultTanent,\n updateTanantLogo,\n systemInfo,\n userData,\n setDefaultResetAuthorized,\n loadDefaultTanent,\n loadTenantCurrencies\n }),\n [\n currencies,\n unauthorized,\n defaultCurrency,\n defaultCostLocation,\n defaultTanent,\n systemInfo,\n updateTanantLogo,\n setDefaultResetAuthorized,\n loadDefaultTanent,\n userData\n ]\n )\n\n\n //** ComponentDidMount\n useEffect(() => {\n if (userData && Object.keys(userData).length > 0) {\n Promise.all([\n loadDefaultCostLocation(),\n loadDefaultTanent(),\n loadTenantCurrencies()\n ])\n }\n }, [userData])\n\n useEffect(() => {\n Promise.all([\n getIp(),\n getGeoLocation(),\n getSystemFingerprint()\n ])\n }, [])\n\n return {children}\n}\n\nexport {AppDefaultsContext, AppDefaultsProvider}\n\n","import { Ability } from '@casl/ability'\nimport { initialAbility } from './initialAbility'\n\n// Read ability from localStorage\n// * Handles auto fetching previous abilities if already logged in user\n// ? You can update this if you store user abilities to more secure place\n// ! Anyone can update localStorage so be careful and please update this\nconst userData = JSON.parse(localStorage.getItem('userData') && localStorage.getItem('userData') !== \"undefined\" ? localStorage.getItem('userData') : \"{}\")\nconst existingAbility = userData ? userData.ability : null\n\nexport default new Ability(existingAbility || initialAbility)\n","// ** Initial user ability\nexport const initialAbility = [\n {\n action: 'read',\n subject: 'Auth'\n }\n]\n\nexport const _ = undefined\n","export default \"data:image/png;base64,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\"","// ** React Imports\nimport { useState, useEffect } from 'react'\n\n// ** Third Party Components\nimport classnames from 'classnames'\n\n// ** Reactstrap Imports\nimport { Button } from 'reactstrap'\n\n// ** Styles\nimport './ripple-button.scss'\n\nconst RippleButton = ({ className, children, onClick, ...rest }) => {\n // ** States\n const [mounted, setMounted] = useState(false)\n const [isRippling, setIsRippling] = useState(false)\n const [coords, setCoords] = useState({ x: -1, y: -1 })\n\n // ** Toggle mounted on mount & unmount\n useEffect(() => {\n setMounted(true)\n return () => setMounted(false)\n }, [])\n\n // ** Check for coords and set ripple\n useEffect(() => {\n if (mounted) {\n if (coords.x !== -1 && coords.y !== -1) {\n setIsRippling(true)\n setTimeout(() => setIsRippling(false), 500)\n } else {\n setIsRippling(false)\n }\n }\n }, [coords])\n\n // ** Reset Coords on ripple end\n useEffect(() => {\n if (mounted) {\n if (!isRippling) setCoords({ x: -1, y: -1 })\n }\n }, [isRippling])\n\n return (\n {\n const rect = e.target.getBoundingClientRect()\n setCoords({ x: e.clientX - rect.left, y: e.clientY - rect.top })\n if (onClick) {\n onClick(e)\n }\n }}\n {...rest}\n >\n {children}\n {isRippling ? (\n \n ) : null}\n \n )\n}\n\n// ** PropTypes\nRippleButton.propTypes = {\n ...Button.propTypes\n}\n\nButton.Ripple = RippleButton\n","// ** I18n Imports\nimport i18n from 'i18next'\nimport Backend from 'i18next-xhr-backend'\nimport { initReactI18next } from 'react-i18next'\nimport LanguageDetector from 'i18next-browser-languagedetector'\n\ni18n\n\n // Enables the i18next backend\n .use(Backend)\n\n // Enable automatic language detection\n .use(LanguageDetector)\n\n // Enables the hook initialization module\n .use(initReactI18next)\n .init({\n lng: 'en',\n backend: {\n /* translation file path */\n loadPath: '/assets/data/locales/{{lng}}.json'\n },\n fallbackLng: 'en',\n debug: false,\n keySeparator: false,\n react: {\n useSuspense: false\n },\n interpolation: {\n escapeValue: false,\n formatSeparator: ','\n }\n })\n\nexport default i18n\n","// ** React Imports\n// ** React Toastify\nimport '@styles/react/libs/toastify/toastify.scss'\nimport axios from 'axios'\n// ** PrismJS\nimport 'prismjs'\nimport 'prismjs/components/prism-jsx.min'\nimport 'prismjs/themes/prism-tomorrow.css'\nimport React, {lazy, Suspense, useContext} from 'react'\nimport ReactDOM from 'react-dom'\n// ** React Perfect Scrollbar\nimport 'react-perfect-scrollbar/dist/css/styles.css'\n// ** Redux Imports\nimport { Provider } from 'react-redux'\nimport { ToastContainer } from 'react-toastify'\n// ** Core styles\nimport './@core/assets/fonts/feather/iconfont.css'\n// ** Ripple Button\nimport './@core/components/ripple-button'\n// ** Spinner (Splash Screen)\nimport Spinner from './@core/components/spinner/Fallback-spinner'\nimport './@core/scss/core.scss'\nimport './index.scss'\n// ** Fake Database\n// import './@fake-db'\nimport './assets/scss/style.scss'\n// ** Intl, CASL & ThemeColors Context\nimport ability from './configs/acl/ability'\n// ** i18n\nimport './configs/i18n'\nimport { store } from './redux/store'\nimport { AppDefaultsProvider } from './utility/context/AppDefaults'\nimport { AbilityContext } from './utility/context/Can'\nimport { ThemeContext } from './utility/context/ThemeColors'\nimport i18n from \"i18next\";\nimport {handleUserProfile} from \"./redux/authentication\";\n\n\nimport { register } from './serviceWorker';\n\n\n// ** Service Worker\nimport * as serviceWorker from './serviceWorker'\nimport {serverUrlAddress} from \"./utility/Utils\";\n\n// ** Lazy load app\nconst LazyApp = lazy(() => import('./App'))\n\nif (!!process.env.REACT_APP_ENV) {\n\n axios.defaults.baseURL = (localStorage.getItem(serverUrlAddress)??process.env[`REACT_APP_API_URL_${process.env.REACT_APP_ENV}`]) + \"/en/\";\n\n // const newColor = '#ff6347'; // New color value\n // document.documentElement.style.setProperty('--bs-primary', newColor);\n\n if (process.env.REACT_APP_ENV === 'dev') {\n const observer = new MutationObserver(() => document.querySelector('iframe')?.remove())\n observer.observe(document.getRootNode(), { attributes: true, childList: true, subtree: true })\n }\n}\n\nReactDOM.render(\n \n \n }>\n \n \n \n \n \n \n \n \n \n \n \n , document.getElementById('root')\n)\n\nregister();\n\n// ReactDOM.MutationObserver\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\n// serviceWorker.unregister()\nserviceWorker.register();","/*\n/!*eslint-disable *!/\n// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n)\n\nexport function register(config) {\n if (typeof process != 'undefined' && process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets see https://github.com/facebook/create-react-app/issues/2374\n return\n }\n\n window.addEventListener('load', () => {\n const swUrl = `firebase-messaging-sw.js`\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n // navigator.serviceWorker.register(\"./firebase-messaging-sw.js\");\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n )\n })\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config)\n }\n })\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n // navigator.serviceWorker\n // .register('https://betaaccounts.connect-sol.com/firebase-messaging-sw.js')\n // .then(function (registration) {\n // console.log(registration, \"Firebase Service Success\")\n // return registration.scope;\n // })\n // .catch(function (err) {\n // console.log(err, \"Firebase Service Error\")\n // return err;\n // });\n\n navigator.serviceWorker\n .register(swUrl, { scope: \"./\" })\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n if (installingWorker === null) {\n return\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n )\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration)\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n\n console.log('Content is cached for offline use.')\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration)\n }\n }\n }\n }\n }\n })\n .catch(error => {\n console.error('Error during service worker registration:', error)\n })\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type')\n if (response.status === 404 || (contentType !== null && contentType.indexOf('javascript') === -1)) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config)\n }\n })\n .catch(() => {\n console.log('No internet connection found. App is running in offline mode.')\n })\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister()\n })\n }\n}\n*/\n\n\nexport const register = () => {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker\n .register('/firebase-messaging-sw.js')\n .then((registration) => {\n console.log('Service Worker registered with scope:', registration.scope);\n })\n .catch((error) => {\n console.error('Error registering service worker:', error);\n });\n }\n};"],"sourceRoot":""}