Files
bigcapital/client/src/routes/dashboard.js
2021-02-16 14:03:43 +02:00

468 lines
12 KiB
JavaScript

import { lazy } from 'react';
import { formatMessage } from 'services/intl';
// const BASE_URL = '/dashboard';
export default [
// Homepage
{
path: `/homepage`,
component: lazy(() => import('containers/Homepage/Homepage')),
breadcrumb: 'Home',
pageTitle: 'Homepage',
},
// Accounts.
{
path: `/accounts`,
component: lazy(() => import('containers/Accounts/AccountsChart')),
breadcrumb: 'Accounts Chart',
hotkey: 'shift+a',
pageTitle: 'Accounts Chart',
},
// Custom views.
{
path: `/custom_views/:resource_slug/new`,
component: lazy(() => import('containers/Views/ViewFormPage')),
breadcrumb: 'New',
},
{
path: `/custom_views/:view_id/edit`,
component: lazy(() => import('containers/Views/ViewFormPage')),
breadcrumb: 'Edit',
},
// Accounting.
{
path: `/make-journal-entry`,
component: lazy(() =>
import('containers/Accounting/MakeJournal/MakeJournalEntriesPage'),
),
breadcrumb: 'Make Journal Entry',
hotkey: 'ctrl+shift+m',
pageTitle: formatMessage({ id: 'new_journal' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/manual-journals/:id/edit`,
component: lazy(() =>
import('containers/Accounting/MakeJournal/MakeJournalEntriesPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_journal' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/manual-journals`,
component: lazy(() =>
import('containers/Accounting/JournalsLanding/ManualJournalsList'),
),
breadcrumb: 'Manual Journals',
hotkey: 'shift+m',
},
{
path: `/items/categories`,
component: lazy(() =>
import('containers/ItemsCategories/ItemCategoriesList'),
),
breadcrumb: 'Categories',
pageTitle: formatMessage({ id: 'category_list' }),
},
// Items.
{
path: `/items/:id/edit`,
component: lazy(() => import('containers/Items/ItemFormPage')),
breadcrumb: 'Edit Item',
pageTitle: formatMessage({ id: 'edit_item' }),
backLink: true,
},
{
path: `/items/new`,
component: lazy(() => import('containers/Items/ItemFormPage')),
breadcrumb: 'New Item',
hotkey: 'ctrl+shift+w',
pageTitle: formatMessage({ id: 'new_item' }),
backLink: true,
},
{
path: `/items`,
component: lazy(() => import('containers/Items/ItemsList')),
breadcrumb: 'Items',
hotkey: 'shift+w',
},
// Inventory adjustments.
{
path: `/inventory-adjustments`,
component: lazy(() =>
import('containers/InventoryAdjustments/InventoryAdjustmentList'),
),
breadcrumb: 'Inventory a adjustments',
pageTitle: formatMessage({ id: 'inventory_adjustment_list' }),
},
// Financial Reports.
{
path: `/financial-reports/general-ledger`,
component: lazy(() =>
import('containers/FinancialStatements/GeneralLedger/GeneralLedger'),
),
breadcrumb: 'General Ledger',
hotkey: 'shift+4',
},
{
path: `/financial-reports/balance-sheet`,
component: lazy(() =>
import('containers/FinancialStatements/BalanceSheet/BalanceSheet'),
),
breadcrumb: 'Balance Sheet',
hotkey: 'shift+1',
pageTitle: formatMessage({ id: 'balance_sheet' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/financial-reports/trial-balance-sheet`,
component: lazy(() =>
import(
'containers/FinancialStatements/TrialBalanceSheet/TrialBalanceSheet'
),
),
breadcrumb: 'Trial Balance Sheet',
hotkey: 'shift+5',
},
{
path: `/financial-reports/profit-loss-sheet`,
component: lazy(() =>
import('containers/FinancialStatements/ProfitLossSheet/ProfitLossSheet'),
),
breadcrumb: 'Profit Loss Sheet',
hotkey: 'shift+2',
},
{
path: '/financial-reports/receivable-aging-summary',
component: lazy(() =>
import('containers/FinancialStatements/ARAgingSummary/ARAgingSummary'),
),
breadcrumb: 'Receivable Aging Summary',
},
{
path: `/financial-reports/journal-sheet`,
component: lazy(() =>
import('containers/FinancialStatements/Journal/Journal'),
),
breadcrumb: 'Journal Sheet',
hotkey: 'shift+3',
},
{
path: '/financial-reports',
component: lazy(() =>
import('containers/FinancialStatements/FinancialReports'),
),
breadcrumb: 'Financial Reports',
pageTitle: formatMessage({ id: 'all_financial_reports' }),
},
// Exchange Rates
{
path: `/exchange-rates`,
component: lazy(() => import('containers/ExchangeRates/ExchangeRatesList')),
breadcrumb: 'Exchange Rates',
},
// Expenses.
{
path: `/expenses/new`,
component: lazy(() =>
import('containers/Expenses/ExpenseForm/ExpenseFormPage'),
),
breadcrumb: 'Expenses',
hotkey: 'ctrl+shift+x',
pageTitle: formatMessage({ id: 'new_expense' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/expenses/:id/edit`,
component: lazy(() =>
import('containers/Expenses/ExpenseForm/ExpenseFormPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_expense' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/expenses`,
component: lazy(() =>
import('containers/Expenses/ExpensesLanding/ExpensesList'),
),
breadcrumb: 'Expenses List',
pageTitle: formatMessage({ id: 'expenses_list' }),
hotkey: 'shift+x',
},
// Customers
{
path: `/customers/:id/edit`,
component: lazy(() =>
import('containers/Customers/CustomerForm/CustomerFormPage'),
),
breadcrumb: 'Edit Customer',
pageTitle: formatMessage({ id: 'edit_customer' }),
backLink: true,
},
{
path: `/customers/new`,
component: lazy(() =>
import('containers/Customers/CustomerForm/CustomerFormPage'),
),
breadcrumb: 'New Customer',
hotkey: 'ctrl+shift+c',
pageTitle: formatMessage({ id: 'new_customer' }),
backLink: true,
},
{
path: `/customers`,
component: lazy(() =>
import('containers/Customers/CustomersLanding/CustomersList'),
),
breadcrumb: 'Customers',
hotkey: 'shift+c',
pageTitle: formatMessage({ id: 'customers_list' }),
},
// Vendors
{
path: `/vendors/:id/edit`,
component: lazy(() =>
import('containers/Vendors/VendorForm/VendorFormPage'),
),
breadcrumb: 'Edit Vendor',
pageTitle: formatMessage({ id: 'edit_vendor' }),
backLink: true,
},
{
path: `/vendors/new`,
component: lazy(() =>
import('containers/Vendors/VendorForm/VendorFormPage'),
),
breadcrumb: 'New Vendor',
hotkey: 'ctrl+shift+v',
pageTitle: formatMessage({ id: 'new_vendor' }),
backLink: true,
},
{
path: `/vendors`,
component: lazy(() =>
import('containers/Vendors/VendorsLanding/VendorsList'),
),
breadcrumb: 'Vendors',
hotkey: 'shift+v',
pageTitle: formatMessage({ id: 'vendors_list' }),
},
// Estimates
{
path: `/estimates/:id/edit`,
component: lazy(() =>
import('containers/Sales/Estimates/EstimateForm/EstimateFormPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_estimate' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/estimates/new`,
component: lazy(() =>
import('containers/Sales/Estimates/EstimateForm/EstimateFormPage'),
),
breadcrumb: 'New Estimate',
hotkey: 'ctrl+shift+e',
pageTitle: formatMessage({ id: 'new_estimate' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/estimates`,
component: lazy(() =>
import('containers/Sales/Estimates/EstimatesLanding/EstimatesList'),
),
breadcrumb: 'Estimates List',
hotkey: 'shift+e',
pageTitle: formatMessage({ id: 'estimates_list' }),
},
// Invoices.
{
path: `/invoices/:id/edit`,
component: lazy(() =>
import('containers/Sales/Invoices/InvoiceForm/InvoiceFormPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_invoice' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/invoices/new`,
component: lazy(() =>
import('containers/Sales/Invoices/InvoiceForm/InvoiceFormPage'),
),
breadcrumb: 'New Invoice',
hotkey: 'ctrl+shift+i',
pageTitle: formatMessage({ id: 'new_invoice' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/invoices`,
component: lazy(() =>
import('containers/Sales/Invoices/InvoicesLanding/InvoicesList'),
),
breadcrumb: 'Invoices List',
hotkey: 'shift+i',
pageTitle: formatMessage({ id: 'invoices_list' }),
},
// Sales Receipts.
{
path: `/receipts/:id/edit`,
component: lazy(() =>
import('containers/Sales/Receipts/ReceiptForm/ReceiptFormPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_receipt' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/receipts/new`,
component: lazy(() =>
import('containers/Sales/Receipts/ReceiptForm/ReceiptFormPage'),
),
breadcrumb: 'New Receipt',
hotkey: 'ctrl+shift+r',
pageTitle: formatMessage({ id: 'new_receipt' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/receipts`,
component: lazy(() =>
import('containers/Sales/Receipts/ReceiptsLanding/ReceiptsList'),
),
breadcrumb: 'Receipts List',
hotkey: 'shift+r',
pageTitle: formatMessage({ id: 'receipts_list' }),
},
// Payment receives
{
path: `/payment-receives/:id/edit`,
component: lazy(() =>
import(
'containers/Sales/PaymentReceives/PaymentReceiveForm/PaymentReceiveFormPage'
),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_payment_receive' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/payment-receives/new`,
component: lazy(() =>
import(
'containers/Sales/PaymentReceives/PaymentReceiveForm/PaymentReceiveFormPage'
),
),
breadcrumb: 'New Payment Receive',
pageTitle: formatMessage({ id: 'new_payment_receive' }),
backLink: true,
sidebarShrink: true,
},
{
path: `/payment-receives`,
component: lazy(() =>
import(
'containers/Sales/PaymentReceives/PaymentsLanding/PaymentReceivesList'
),
),
breadcrumb: 'Payment Receives List',
},
// Bills
{
path: `/bills/:id/edit`,
component: lazy(() =>
import('containers/Purchases/Bills/BillForm/BillFormPage'),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_bill' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/bills/new`,
component: lazy(() =>
import('containers/Purchases/Bills/BillForm/BillFormPage'),
),
breadcrumb: 'New Bill',
hotkey: 'ctrl+shift+b',
pageTitle: formatMessage({ id: 'new_bill' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/bills`,
component: lazy(() =>
import('containers/Purchases/Bills/BillsLanding/BillsList'),
),
breadcrumb: 'Bills List',
hotkey: 'shift+b',
pageTitle: formatMessage({ id: 'bills_list' }),
},
// Subscription billing.
{
path: `/billing`,
component: lazy(() => import('containers/Subscriptions/BillingForm')),
breadcrumb: 'New Billing',
},
// Payment modes.
{
path: `/payment-mades/:id/edit`,
component: lazy(() =>
import(
'containers/Purchases/PaymentMades/PaymentForm/PaymentMadeFormPage'
),
),
breadcrumb: 'Edit',
pageTitle: formatMessage({ id: 'edit_payment_made' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/payment-mades/new`,
component: lazy(() =>
import(
'containers/Purchases/PaymentMades/PaymentForm/PaymentMadeFormPage'
),
),
breadcrumb: 'New Payment Made',
pageTitle: formatMessage({ id: 'edit_payment_made' }),
sidebarShrink: true,
backLink: true,
},
{
path: `/payment-mades`,
component: lazy(() =>
import(
'containers/Purchases/PaymentMades/PaymentsLanding/PaymentMadeList'
),
),
breadcrumb: 'Payment Made List',
pageTitle: formatMessage({ id: 'payment_made_list' }),
},
];