Compare commits

..

8 Commits

Author SHA1 Message Date
Ahmed Bouhuolia
ded4e2bb59 Merge pull request #560 from bigcapitalhq/fix-onboarding-on-small-screens
fix: Onboarding layout on small screens
2024-08-01 19:53:09 +02:00
Ahmed Bouhuolia
219e6fb466 fix: onboarding page layout on small screens 2024-08-01 19:51:25 +02:00
Ahmed Bouhuolia
4cd0405078 fix: quick payment received and payment made form initial values 2024-07-30 11:06:45 +02:00
Ahmed Bouhuolia
783102449f fix: create quick payment received and payment made transactions 2024-07-30 11:06:35 +02:00
Denis
ae617b2e1d Fixed Quick Payment Dialogs
PaymentReceives and BillsPayments Controllers expect 'amount' parameter, but webapp sends 'payment_amount'
2024-07-30 11:06:24 +02:00
Ahmed Bouhuolia
53f37f4f48 Merge pull request #546 from bigcapitalhq/remove-views-tabs
feat: Remove the views tabs bar from all tables
2024-07-25 19:21:50 +02:00
Ahmed Bouhuolia
0a7b522b87 chore: remove unused import 2024-07-25 19:21:16 +02:00
Ahmed Bouhuolia
9e6500ac79 feat: remove the views tabs bar from all tables 2024-07-25 19:17:54 +02:00
26 changed files with 108 additions and 137 deletions

View File

@@ -7,7 +7,6 @@ import { DashboardPageContent } from '@/components';
import { transformTableStateToQuery, compose } from '@/utils'; import { transformTableStateToQuery, compose } from '@/utils';
import { ManualJournalsListProvider } from './ManualJournalsListProvider'; import { ManualJournalsListProvider } from './ManualJournalsListProvider';
import ManualJournalsViewTabs from './ManualJournalsViewTabs';
import ManualJournalsDataTable from './ManualJournalsDataTable'; import ManualJournalsDataTable from './ManualJournalsDataTable';
import ManualJournalsActionsBar from './ManualJournalActionsBar'; import ManualJournalsActionsBar from './ManualJournalActionsBar';
import withManualJournals from './withManualJournals'; import withManualJournals from './withManualJournals';
@@ -29,7 +28,6 @@ function ManualJournalsTable({
<ManualJournalsActionsBar /> <ManualJournalsActionsBar />
<DashboardPageContent> <DashboardPageContent>
<ManualJournalsViewTabs />
<ManualJournalsDataTable /> <ManualJournalsDataTable />
</DashboardPageContent> </DashboardPageContent>
</ManualJournalsListProvider> </ManualJournalsListProvider>

View File

@@ -2,15 +2,15 @@
import React, { useEffect } from 'react'; import React, { useEffect } from 'react';
import '@/style/pages/Accounts/List.scss'; import '@/style/pages/Accounts/List.scss';
import { DashboardPageContent, DashboardContentTable } from '@/components';
import { DashboardPageContent, DashboardContentTable } from '@/components';
import { AccountsChartProvider } from './AccountsChartProvider'; import { AccountsChartProvider } from './AccountsChartProvider';
import AccountsViewsTabs from './AccountsViewsTabs';
import AccountsActionsBar from './AccountsActionsBar'; import AccountsActionsBar from './AccountsActionsBar';
import AccountsDataTable from './AccountsDataTable'; import AccountsDataTable from './AccountsDataTable';
import withAccounts from '@/containers/Accounts/withAccounts'; import withAccounts from '@/containers/Accounts/withAccounts';
import withAccountsTableActions from './withAccountsTableActions'; import withAccountsTableActions from './withAccountsTableActions';
import { transformAccountsStateToQuery } from './utils'; import { transformAccountsStateToQuery } from './utils';
import { compose } from '@/utils'; import { compose } from '@/utils';
@@ -41,8 +41,6 @@ function AccountsChart({
<AccountsActionsBar /> <AccountsActionsBar />
<DashboardPageContent> <DashboardPageContent>
<AccountsViewsTabs />
<DashboardContentTable> <DashboardContentTable>
<AccountsDataTable /> <AccountsDataTable />
</DashboardContentTable> </DashboardContentTable>

View File

@@ -6,7 +6,6 @@ import '@/style/pages/Customers/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import CustomersActionsBar from './CustomersActionsBar'; import CustomersActionsBar from './CustomersActionsBar';
import CustomersViewsTabs from './CustomersViewsTabs';
import CustomersTable from './CustomersTable'; import CustomersTable from './CustomersTable';
import { CustomersListProvider } from './CustomersListProvider'; import { CustomersListProvider } from './CustomersListProvider';
@@ -42,7 +41,6 @@ function CustomersList({
<CustomersActionsBar /> <CustomersActionsBar />
<DashboardPageContent> <DashboardPageContent>
<CustomersViewsTabs />
<CustomersTable /> <CustomersTable />
</DashboardPageContent> </DashboardPageContent>
</CustomersListProvider> </CustomersListProvider>

View File

@@ -3,15 +3,14 @@ import React from 'react';
import intl from 'react-intl-universal'; import intl from 'react-intl-universal';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { Intent } from '@blueprintjs/core'; import { Intent } from '@blueprintjs/core';
import { pick } from 'lodash'; import { omit } from 'lodash';
import { AppToaster } from '@/components'; import { AppToaster } from '@/components';
import { CreateQuickPaymentMadeFormSchema } from './QuickPaymentMade.schema'; import { CreateQuickPaymentMadeFormSchema } from './QuickPaymentMade.schema';
import { useQuickPaymentMadeContext } from './QuickPaymentMadeFormProvider'; import { useQuickPaymentMadeContext } from './QuickPaymentMadeFormProvider';
import QuickPaymentMadeFormContent from './QuickPaymentMadeFormContent'; import QuickPaymentMadeFormContent from './QuickPaymentMadeFormContent';
import withDialogActions from '@/containers/Dialog/withDialogActions'; import withDialogActions from '@/containers/Dialog/withDialogActions';
import { defaultPaymentMade, transformErrors } from './utils'; import { defaultPaymentMade, transformBillToForm, transformErrors } from './utils';
import { compose } from '@/utils'; import { compose } from '@/utils';
/** /**
@@ -21,31 +20,24 @@ function QuickPaymentMadeForm({
// #withDialogActions // #withDialogActions
closeDialog, closeDialog,
}) { }) {
const { bill, dialogName, createPaymentMadeMutate } =
const { useQuickPaymentMadeContext();
bill,
dialogName,
createPaymentMadeMutate,
} = useQuickPaymentMadeContext();
// Initial form values // Initial form values.
const initialValues = { const initialValues = {
...defaultPaymentMade, ...defaultPaymentMade,
...bill, ...transformBillToForm(bill),
}; };
// Handles the form submit. // Handles the form submit.
const handleFormSubmit = (values, { setSubmitting, setFieldError }) => { const handleFormSubmit = (values, { setSubmitting, setFieldError }) => {
const entries = [values] const entries = [
.filter((entry) => entry.id && entry.payment_amount) {
.map((entry) => ({ payment_amount: values.amount,
bill_id: entry.id, bill_id: values.bill_id,
...pick(entry, ['payment_amount']), },
})); ];
const form = { const form = {
...values, ...omit(values, ['bill_id']),
vendor_id: values?.vendor?.id,
entries, entries,
}; };

View File

@@ -124,7 +124,7 @@ function QuickPaymentMadeFormFields({
</Col> </Col>
</Row> </Row>
{/*------------ Amount Received -----------*/} {/*------------ Amount Received -----------*/}
<FastField name={'payment_amount'}> <FastField name={'amount'}>
{({ {({
form: { values, setFieldValue }, form: { values, setFieldValue },
field: { value }, field: { value },
@@ -135,7 +135,7 @@ function QuickPaymentMadeFormFields({
labelInfo={<FieldRequiredHint />} labelInfo={<FieldRequiredHint />}
className={classNames('form-group--payment_amount', CLASSES.FILL)} className={classNames('form-group--payment_amount', CLASSES.FILL)}
intent={inputIntent({ error, touched })} intent={inputIntent({ error, touched })}
helperText={<ErrorMessage name="payment_amount" />} helperText={<ErrorMessage name="amount" />}
> >
<ControlGroup> <ControlGroup>
<InputPrependText text={values.currency_code} /> <InputPrependText text={values.currency_code} />
@@ -144,7 +144,7 @@ function QuickPaymentMadeFormFields({
value={value} value={value}
minimal={true} minimal={true}
onChange={(amount) => { onChange={(amount) => {
setFieldValue('payment_amount', amount); setFieldValue('amount', amount);
}} }}
intent={inputIntent({ error, touched })} intent={inputIntent({ error, touched })}
inputRef={(ref) => (paymentMadeFieldRef.current = ref)} inputRef={(ref) => (paymentMadeFieldRef.current = ref)}

View File

@@ -1,5 +1,5 @@
// @ts-nocheck // @ts-nocheck
import React from 'react'; import React, { useMemo } from 'react';
import { DialogContent } from '@/components'; import { DialogContent } from '@/components';
import { import {
useBill, useBill,
@@ -11,7 +11,6 @@ import { Features } from '@/constants';
import { useFeatureCan } from '@/hooks/state'; import { useFeatureCan } from '@/hooks/state';
import { pick } from 'lodash'; import { pick } from 'lodash';
const QuickPaymentMadeContext = React.createContext(); const QuickPaymentMadeContext = React.createContext();
/** /**
@@ -40,13 +39,14 @@ function QuickPaymentMadeFormProvider({ query, billId, dialogName, ...props }) {
isSuccess: isBranchesSuccess, isSuccess: isBranchesSuccess,
} = useBranches(query, { enabled: isBranchFeatureCan }); } = useBranches(query, { enabled: isBranchFeatureCan });
const paymentBill = useMemo(
() => pick(bill, ['id', 'due_amount', 'vendor_id', 'currency_code']),
[bill],
);
// State provider. // State provider.
const provider = { const provider = {
bill: { bill: paymentBill,
...pick(bill, ['id', 'due_amount', 'vendor', 'currency_code']),
vendor_id: bill?.vendor?.display_name,
payment_amount: bill?.due_amount,
},
accounts, accounts,
branches, branches,
dialogName, dialogName,

View File

@@ -2,24 +2,25 @@
import React from 'react'; import React from 'react';
import moment from 'moment'; import moment from 'moment';
import intl from 'react-intl-universal'; import intl from 'react-intl-universal';
import { first } from 'lodash'; import { first, pick } from 'lodash';
import { useFormikContext } from 'formik';
import { Intent } from '@blueprintjs/core'; import { Intent } from '@blueprintjs/core';
import { AppToaster } from '@/components'; import { AppToaster } from '@/components';
import { useFormikContext } from 'formik';
import { useQuickPaymentMadeContext } from './QuickPaymentMadeFormProvider'; import { useQuickPaymentMadeContext } from './QuickPaymentMadeFormProvider';
import { PAYMENT_MADE_ERRORS } from '@/containers/Purchases/PaymentMades/constants'; import { PAYMENT_MADE_ERRORS } from '@/containers/Purchases/PaymentMades/constants';
// Default initial values of payment made. // Default initial values of payment made.
export const defaultPaymentMade = { export const defaultPaymentMade = {
bill_id: '',
vendor_id: '', vendor_id: '',
payment_account_id: '', payment_account_id: '',
payment_date: moment(new Date()).format('YYYY-MM-DD'), payment_date: moment(new Date()).format('YYYY-MM-DD'),
reference: '', reference: '',
payment_number: '', payment_number: '',
amount: '',
// statement: '', // statement: '',
exchange_rate: 1, exchange_rate: 1,
branch_id: '', branch_id: '',
entries: [{ bill_id: '', payment_amount: '' }],
}; };
export const transformErrors = (errors, { setFieldError }) => { export const transformErrors = (errors, { setFieldError }) => {
@@ -58,3 +59,11 @@ export const useSetPrimaryBranchToForm = () => {
} }
}, [isBranchesSuccess, setFieldValue, branches]); }, [isBranchesSuccess, setFieldValue, branches]);
}; };
export const transformBillToForm = (bill) => {
return {
...pick(bill, ['vendor_id', 'currency_code']),
amount: bill.due_amount,
bill_id: bill.id,
};
}

View File

@@ -3,7 +3,7 @@ import React from 'react';
import intl from 'react-intl-universal'; import intl from 'react-intl-universal';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { Intent } from '@blueprintjs/core'; import { Intent } from '@blueprintjs/core';
import { pick, defaultTo, omit } from 'lodash'; import { defaultTo, omit } from 'lodash';
import { AppToaster } from '@/components'; import { AppToaster } from '@/components';
import { useQuickPaymentReceiveContext } from './QuickPaymentReceiveFormProvider'; import { useQuickPaymentReceiveContext } from './QuickPaymentReceiveFormProvider';
@@ -12,7 +12,11 @@ import QuickPaymentReceiveFormContent from './QuickPaymentReceiveFormContent';
import withSettings from '@/containers/Settings/withSettings'; import withSettings from '@/containers/Settings/withSettings';
import withDialogActions from '@/containers/Dialog/withDialogActions'; import withDialogActions from '@/containers/Dialog/withDialogActions';
import { defaultInitialValues, transformErrors } from './utils'; import {
defaultInitialValues,
transformErrors,
transformInvoiceToForm,
} from './utils';
import { compose, transactionNumber } from '@/utils'; import { compose, transactionNumber } from '@/utils';
/** /**
@@ -26,14 +30,10 @@ function QuickPaymentReceiveForm({
paymentReceiveAutoIncrement, paymentReceiveAutoIncrement,
paymentReceiveNumberPrefix, paymentReceiveNumberPrefix,
paymentReceiveNextNumber, paymentReceiveNextNumber,
preferredDepositAccount preferredDepositAccount,
}) { }) {
const { dialogName, invoice, createPaymentReceiveMutate } =
const { useQuickPaymentReceiveContext();
dialogName,
invoice,
createPaymentReceiveMutate,
} = useQuickPaymentReceiveContext();
// Payment receive number. // Payment receive number.
const nextPaymentNumber = transactionNumber( const nextPaymentNumber = transactionNumber(
@@ -48,24 +48,22 @@ function QuickPaymentReceiveForm({
payment_receive_no: nextPaymentNumber, payment_receive_no: nextPaymentNumber,
}), }),
deposit_account_id: defaultTo(preferredDepositAccount, ''), deposit_account_id: defaultTo(preferredDepositAccount, ''),
...invoice, ...transformInvoiceToForm(invoice),
}; };
// Handles the form submit. // Handles the form submit.
const handleFormSubmit = (values, { setSubmitting, setFieldError }) => { const handleFormSubmit = (values, { setSubmitting, setFieldError }) => {
const entries = [values] const entries = [
.filter((entry) => entry.id && entry.payment_amount) {
.map((entry) => ({ invoice_id: values.invoice_id,
invoice_id: entry.id, payment_amount: values.amount,
...pick(entry, ['payment_amount']), },
})); ];
const form = { const form = {
...omit(values, ['payment_receive_no']), ...omit(values, ['payment_receive_no', 'invoice_id']),
...(!paymentReceiveAutoIncrement && { ...(!paymentReceiveAutoIncrement && {
payment_receive_no: values.payment_receive_no, payment_receive_no: values.payment_receive_no,
}), }),
customer_id: values.customer.id,
entries, entries,
}; };

View File

@@ -128,7 +128,7 @@ function QuickPaymentReceiveFormFields({
</Col> </Col>
</Row> </Row>
{/*------------ Amount Received -----------*/} {/*------------ Amount Received -----------*/}
<FastField name={'payment_amount'}> <FastField name={'amount'}>
{({ {({
form: { values, setFieldValue }, form: { values, setFieldValue },
field: { value }, field: { value },
@@ -139,7 +139,7 @@ function QuickPaymentReceiveFormFields({
labelInfo={<FieldRequiredHint />} labelInfo={<FieldRequiredHint />}
className={classNames('form-group--payment_amount', CLASSES.FILL)} className={classNames('form-group--payment_amount', CLASSES.FILL)}
intent={inputIntent({ error, touched })} intent={inputIntent({ error, touched })}
helperText={<ErrorMessage name="payment_amount" />} helperText={<ErrorMessage name="amount" />}
> >
<ControlGroup> <ControlGroup>
<InputPrependText text={values.currency_code} /> <InputPrependText text={values.currency_code} />
@@ -148,7 +148,7 @@ function QuickPaymentReceiveFormFields({
value={value} value={value}
minimal={true} minimal={true}
onChange={(amount) => { onChange={(amount) => {
setFieldValue('payment_amount', amount); setFieldValue('amount', amount);
}} }}
intent={inputIntent({ error, touched })} intent={inputIntent({ error, touched })}
inputRef={(ref) => (paymentReceiveFieldRef.current = ref)} inputRef={(ref) => (paymentReceiveFieldRef.current = ref)}

View File

@@ -1,5 +1,5 @@
// @ts-nocheck // @ts-nocheck
import React, { useContext, createContext } from 'react'; import React, { useContext, createContext, useMemo } from 'react';
import { pick } from 'lodash'; import { pick } from 'lodash';
import { DialogContent } from '@/components'; import { DialogContent } from '@/components';
import { Features } from '@/constants'; import { Features } from '@/constants';
@@ -47,15 +47,16 @@ function QuickPaymentReceiveFormProvider({
isSuccess: isBranchesSuccess, isSuccess: isBranchesSuccess,
} = useBranches(query, { enabled: isBranchFeatureCan }); } = useBranches(query, { enabled: isBranchFeatureCan });
const invoicePayment = useMemo(
() => pick(invoice, ['id', 'due_amount', 'customer_id', 'currency_code']),
[invoice],
);
// State provider. // State provider.
const provider = { const provider = {
accounts, accounts,
branches, branches,
invoice: { invoice: invoicePayment,
...pick(invoice, ['id', 'due_amount', 'customer', 'currency_code']),
customer_id: invoice?.customer?.display_name,
payment_amount: invoice.due_amount,
},
isAccountsLoading, isAccountsLoading,
isSettingsLoading, isSettingsLoading,
isBranchesSuccess, isBranchesSuccess,

View File

@@ -2,7 +2,7 @@
import React from 'react'; import React from 'react';
import moment from 'moment'; import moment from 'moment';
import intl from 'react-intl-universal'; import intl from 'react-intl-universal';
import { first } from 'lodash'; import { first, pick } from 'lodash';
import { Intent } from '@blueprintjs/core'; import { Intent } from '@blueprintjs/core';
import { AppToaster } from '@/components'; import { AppToaster } from '@/components';
@@ -10,15 +10,16 @@ import { useFormikContext } from 'formik';
import { useQuickPaymentReceiveContext } from './QuickPaymentReceiveFormProvider'; import { useQuickPaymentReceiveContext } from './QuickPaymentReceiveFormProvider';
export const defaultInitialValues = { export const defaultInitialValues = {
invoice_id: '',
customer_id: '', customer_id: '',
deposit_account_id: '', deposit_account_id: '',
payment_receive_no: '', payment_receive_no: '',
payment_date: moment(new Date()).format('YYYY-MM-DD'), payment_date: moment(new Date()).format('YYYY-MM-DD'),
reference_no: '', reference_no: '',
amount: '',
// statement: '', // statement: '',
exchange_rate: 1, exchange_rate: 1,
branch_id: '', branch_id: '',
entries: [{ invoice_id: '', payment_amount: '' }],
}; };
export const transformErrors = (errors, { setFieldError }) => { export const transformErrors = (errors, { setFieldError }) => {
@@ -44,7 +45,9 @@ export const transformErrors = (errors, { setFieldError }) => {
} }
if (getError('PAYMENT_ACCOUNT_CURRENCY_INVALID')) { if (getError('PAYMENT_ACCOUNT_CURRENCY_INVALID')) {
AppToaster.show({ AppToaster.show({
message: intl.get('payment_Receive.error.payment_account_currency_invalid'), message: intl.get(
'payment_Receive.error.payment_account_currency_invalid',
),
intent: Intent.DANGER, intent: Intent.DANGER,
}); });
} }
@@ -64,3 +67,11 @@ export const useSetPrimaryBranchToForm = () => {
} }
}, [isBranchesSuccess, setFieldValue, branches]); }, [isBranchesSuccess, setFieldValue, branches]);
}; };
export const transformInvoiceToForm = (invoice) => {
return {
...pick(invoice, ['customer_id', 'currency_code']),
amount: invoice.due_amount,
invoice_id: invoice.id,
};
};

View File

@@ -6,7 +6,6 @@ import '@/style/pages/Expense/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import ExpenseActionsBar from './ExpenseActionsBar'; import ExpenseActionsBar from './ExpenseActionsBar';
import ExpenseViewTabs from './ExpenseViewTabs';
import ExpenseDataTable from './ExpenseDataTable'; import ExpenseDataTable from './ExpenseDataTable';
import withExpenses from './withExpenses'; import withExpenses from './withExpenses';
@@ -42,7 +41,6 @@ function ExpensesList({
<ExpenseActionsBar /> <ExpenseActionsBar />
<DashboardPageContent> <DashboardPageContent>
<ExpenseViewTabs />
<ExpenseDataTable /> <ExpenseDataTable />
</DashboardPageContent> </DashboardPageContent>
</ExpensesListProvider> </ExpensesListProvider>

View File

@@ -8,7 +8,6 @@ import { DashboardPageContent } from '@/components';
import { ItemsListProvider } from './ItemsListProvider'; import { ItemsListProvider } from './ItemsListProvider';
import ItemsActionsBar from './ItemsActionsBar'; import ItemsActionsBar from './ItemsActionsBar';
import ItemsViewsTabs from './ItemsViewsTabs';
import ItemsDataTable from './ItemsDataTable'; import ItemsDataTable from './ItemsDataTable';
import withItems from './withItems'; import withItems from './withItems';
@@ -41,7 +40,6 @@ function ItemsList({
<ItemsActionsBar /> <ItemsActionsBar />
<DashboardPageContent> <DashboardPageContent>
<ItemsViewsTabs />
<ItemsDataTable /> <ItemsDataTable />
</DashboardPageContent> </DashboardPageContent>
</ItemsListProvider> </ItemsListProvider>

View File

@@ -7,7 +7,6 @@ import '@/style/pages/Bills/List.scss';
import { BillsListProvider } from './BillsListProvider'; import { BillsListProvider } from './BillsListProvider';
import BillsActionsBar from './BillsActionsBar'; import BillsActionsBar from './BillsActionsBar';
import BillsViewsTabs from './BillsViewsTabs';
import BillsTable from './BillsTable'; import BillsTable from './BillsTable';
import withBills from './withBills'; import withBills from './withBills';
@@ -42,7 +41,6 @@ function BillsList({
<BillsActionsBar /> <BillsActionsBar />
<DashboardPageContent> <DashboardPageContent>
<BillsViewsTabs />
<BillsTable /> <BillsTable />
</DashboardPageContent> </DashboardPageContent>
</BillsListProvider> </BillsListProvider>

View File

@@ -5,7 +5,6 @@ import '@/style/pages/VendorsCreditNote/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import VendorsCreditNoteActionsBar from './VendorsCreditNoteActionsBar'; import VendorsCreditNoteActionsBar from './VendorsCreditNoteActionsBar';
import VendorsCreditNoteViewTabs from './VendorsCreditNoteViewTabs';
import VendorsCreditNoteDataTable from './VendorsCreditNoteDataTable'; import VendorsCreditNoteDataTable from './VendorsCreditNoteDataTable';
import withVendorsCreditNotes from './withVendorsCreditNotes'; import withVendorsCreditNotes from './withVendorsCreditNotes';
@@ -37,7 +36,6 @@ function VendorsCreditNotesList({
> >
<VendorsCreditNoteActionsBar /> <VendorsCreditNoteActionsBar />
<DashboardPageContent> <DashboardPageContent>
<VendorsCreditNoteViewTabs />
<VendorsCreditNoteDataTable /> <VendorsCreditNoteDataTable />
</DashboardPageContent> </DashboardPageContent>
</VendorsCreditNoteListProvider> </VendorsCreditNoteListProvider>

View File

@@ -7,7 +7,6 @@ import { DashboardPageContent } from '@/components';
import { PaymentMadesListProvider } from './PaymentMadesListProvider'; import { PaymentMadesListProvider } from './PaymentMadesListProvider';
import PaymentMadeActionsBar from './PaymentMadeActionsBar'; import PaymentMadeActionsBar from './PaymentMadeActionsBar';
import PaymentMadesTable from './PaymentMadesTable'; import PaymentMadesTable from './PaymentMadesTable';
import PaymentMadeViewTabs from './PaymentMadeViewTabs';
import withPaymentMades from './withPaymentMade'; import withPaymentMades from './withPaymentMade';
import withPaymentMadeActions from './withPaymentMadeActions'; import withPaymentMadeActions from './withPaymentMadeActions';
@@ -41,7 +40,6 @@ function PaymentMadeList({
<PaymentMadeActionsBar /> <PaymentMadeActionsBar />
<DashboardPageContent> <DashboardPageContent>
<PaymentMadeViewTabs />
<PaymentMadesTable /> <PaymentMadesTable />
</DashboardPageContent> </DashboardPageContent>
</PaymentMadesListProvider> </PaymentMadesListProvider>

View File

@@ -5,7 +5,6 @@ import '@/style/pages/CreditNote/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import CreditNotesActionsBar from './CreditNotesActionsBar'; import CreditNotesActionsBar from './CreditNotesActionsBar';
import CreditNotesViewTabs from './CreditNotesViewTabs';
import CreditNotesDataTable from './CreditNotesDataTable'; import CreditNotesDataTable from './CreditNotesDataTable';
import withCreditNotes from './withCreditNotes'; import withCreditNotes from './withCreditNotes';
@@ -36,8 +35,8 @@ function CreditNotesList({
tableStateChanged={creditNoteTableStateChanged} tableStateChanged={creditNoteTableStateChanged}
> >
<CreditNotesActionsBar /> <CreditNotesActionsBar />
<DashboardPageContent> <DashboardPageContent>
<CreditNotesViewTabs />
<CreditNotesDataTable /> <CreditNotesDataTable />
</DashboardPageContent> </DashboardPageContent>
</CreditNotesListProvider> </CreditNotesListProvider>

View File

@@ -1,11 +1,10 @@
// @ts-nocheck // @ts-nocheck
import React from 'react'; import React from 'react';
import { DashboardContentTable, DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import '@/style/pages/SaleEstimate/List.scss'; import '@/style/pages/SaleEstimate/List.scss';
import EstimatesActionsBar from './EstimatesActionsBar'; import EstimatesActionsBar from './EstimatesActionsBar';
import EstimatesViewTabs from './EstimatesViewTabs';
import EstimatesDataTable from './EstimatesDataTable'; import EstimatesDataTable from './EstimatesDataTable';
import withEstimates from './withEstimates'; import withEstimates from './withEstimates';
@@ -41,7 +40,6 @@ function EstimatesList({
<EstimatesActionsBar /> <EstimatesActionsBar />
<DashboardPageContent> <DashboardPageContent>
<EstimatesViewTabs />
<EstimatesDataTable /> <EstimatesDataTable />
</DashboardPageContent> </DashboardPageContent>
</EstimatesListProvider> </EstimatesListProvider>

View File

@@ -6,7 +6,6 @@ import '@/style/pages/SaleInvoice/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import { InvoicesListProvider } from './InvoicesListProvider'; import { InvoicesListProvider } from './InvoicesListProvider';
import InvoiceViewTabs from './InvoiceViewTabs';
import InvoicesDataTable from './InvoicesDataTable'; import InvoicesDataTable from './InvoicesDataTable';
import InvoicesActionsBar from './InvoicesActionsBar'; import InvoicesActionsBar from './InvoicesActionsBar';
@@ -43,7 +42,6 @@ function InvoicesList({
<InvoicesActionsBar /> <InvoicesActionsBar />
<DashboardPageContent> <DashboardPageContent>
<InvoiceViewTabs />
<InvoicesDataTable /> <InvoicesDataTable />
</DashboardPageContent> </DashboardPageContent>
</InvoicesListProvider> </InvoicesListProvider>

View File

@@ -5,7 +5,6 @@ import '@/style/pages/PaymentReceive/List.scss';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import { PaymentReceivesListProvider } from './PaymentReceiptsListProvider'; import { PaymentReceivesListProvider } from './PaymentReceiptsListProvider';
import PaymentReceiveViewTabs from './PaymentReceiveViewTabs';
import PaymentReceivesTable from './PaymentReceivesTable'; import PaymentReceivesTable from './PaymentReceivesTable';
import PaymentReceiveActionsBar from './PaymentReceiveActionsBar'; import PaymentReceiveActionsBar from './PaymentReceiveActionsBar';
@@ -41,7 +40,6 @@ function PaymentReceiveList({
<PaymentReceiveActionsBar /> <PaymentReceiveActionsBar />
<DashboardPageContent> <DashboardPageContent>
<PaymentReceiveViewTabs />
<PaymentReceivesTable /> <PaymentReceivesTable />
</DashboardPageContent> </DashboardPageContent>
</PaymentReceivesListProvider> </PaymentReceivesListProvider>

View File

@@ -2,6 +2,7 @@
.root{ .root{
margin: 0 auto; margin: 0 auto;
padding: 0 40px; padding: 0 40px;
padding-right: 20px;
} }
.periodSwitch { .periodSwitch {

View File

@@ -6,7 +6,7 @@ export function SubscriptionPlans() {
const subscriptionPlans = useSubscriptionPlans(); const subscriptionPlans = useSubscriptionPlans();
return ( return (
<Group spacing={14} noWrap align="stretch"> <Group spacing={10} noWrap align="stretch">
{subscriptionPlans.map((plan, index) => ( {subscriptionPlans.map((plan, index) => (
<SubscriptionPlan <SubscriptionPlan
key={index} key={index}

View File

@@ -7,7 +7,6 @@ import { DashboardPageContent } from '@/components';
import { VendorsListProvider } from './VendorsListProvider'; import { VendorsListProvider } from './VendorsListProvider';
import VendorActionsBar from './VendorActionsBar'; import VendorActionsBar from './VendorActionsBar';
import VendorViewsTabs from './VendorViewsTabs';
import VendorsTable from './VendorsTable'; import VendorsTable from './VendorsTable';
import withVendors from './withVendors'; import withVendors from './withVendors';
@@ -42,7 +41,6 @@ function VendorsList({
<VendorActionsBar /> <VendorActionsBar />
<DashboardPageContent> <DashboardPageContent>
<VendorViewsTabs />
<VendorsTable /> <VendorsTable />
</DashboardPageContent> </DashboardPageContent>
</VendorsListProvider> </VendorsListProvider>

View File

@@ -3,7 +3,6 @@ import React from 'react';
import { DashboardPageContent } from '@/components'; import { DashboardPageContent } from '@/components';
import WarehouseTransfersActionsBar from './WarehouseTransfersActionsBar'; import WarehouseTransfersActionsBar from './WarehouseTransfersActionsBar';
import WarehouseTransfersViewTabs from './WarehouseTransfersViewTabs';
import WarehouseTransfersDataTable from './WarehouseTransfersDataTable'; import WarehouseTransfersDataTable from './WarehouseTransfersDataTable';
import withWarehouseTransfers from './withWarehouseTransfers'; import withWarehouseTransfers from './withWarehouseTransfers';
import withWarehouseTransfersActions from './withWarehouseTransfersActions'; import withWarehouseTransfersActions from './withWarehouseTransfersActions';
@@ -33,8 +32,8 @@ function WarehouseTransfersList({
tableStateChanged={warehouseTransferTableStateChanged} tableStateChanged={warehouseTransferTableStateChanged}
> >
<WarehouseTransfersActionsBar /> <WarehouseTransfersActionsBar />
<DashboardPageContent> <DashboardPageContent>
<WarehouseTransfersViewTabs />
<WarehouseTransfersDataTable /> <WarehouseTransfersDataTable />
</DashboardPageContent> </DashboardPageContent>
</WarehouseTransfersListProvider> </WarehouseTransfersListProvider>

View File

@@ -39,7 +39,7 @@
@import "section"; @import "section";
.App { .App {
min-width: 960px; min-width: 1100px;
} }
// ======= // =======

View File

@@ -1,36 +1,25 @@
@import "../../_base.scss"; @import "../../_base.scss";
.setup-page { .setup-page {
display: grid;
grid-template-columns: 40% 60%;
max-width: 1600px; max-width: 1600px;
min-height: 100vh;
@media only screen and (max-width: 1500px) {
grid-template-columns: 35% 65%;
}
@media only screen and (max-width: 1200px) {
grid-template-columns: 26% 74%;
}
&__right-section { &__right-section {
display: flex;
flex-direction: row;
width: 100%; width: 100%;
overflow: auto;
&:before {
content: '';
display: block;
width: 100%;
height: 1px;
max-width: 600px;
min-width: 600px;
@media only screen and (max-width: 1500px) {
min-width: 500px;
max-width: 500px;
}
@media only screen and (max-width: 1024px) {
min-width: 400px;
max-width: 400px;
}
}
h1 { h1 {
font-size: 22px; font-size: 22px;
} }
h1, h1,
h3 { h3 {
font-weight: 500; font-weight: 500;
@@ -44,22 +33,9 @@
} }
&__left-section { &__left-section {
position: fixed;
background-color: #2f3d6f; background-color: #2f3d6f;
overflow: auto;
z-index: 1; z-index: 1;
height: 100%;
width: 100%; width: 100%;
left: 0;
top: 0;
width: 600px;
@media only screen and (max-width: 1500px) {
width: 500px;
}
@media only screen and (max-width: 1024px) {
width: 400px;
}
.content { .content {
display: flex; display: flex;
@@ -76,6 +52,11 @@
padding-left: 10px; padding-left: 10px;
} }
&__header{
position: sticky;
top: 0;
}
&__title { &__title {
font-size: 50px; font-size: 50px;
font-weight: 100; font-weight: 100;
@@ -84,8 +65,8 @@
margin-top: 14px; margin-top: 14px;
color: rgba(255, 255, 255, 0.75); color: rgba(255, 255, 255, 0.75);
@media only screen and (max-width: 1024px) { @media only screen and (max-width: 1200px) {
font-size: 45px; font-size: 36px;
} }
} }
@@ -111,16 +92,20 @@
&__footer { &__footer {
margin-top: auto; margin-top: auto;
position: sticky;
bottom: 20px;
} }
&__links { &__links {
text-align: left; text-align: left;
opacity: 0.65; opacity: 0.65;
display: flex;
flex-direction: row;
gap: 10px;
flex-wrap: wrap;
>div { >div {
font-size: 13px; font-size: 13px;
margin-right: 15px;
display: inline;
a { a {
color: #fff; color: #fff;