Compare commits

...

1 Commits

Author SHA1 Message Date
Ahmed Bouhuolia
14d1f0bd1d fix: Multi-lines transactions statements 2024-08-12 16:31:36 +02:00
22 changed files with 96 additions and 23 deletions

View File

@@ -1,6 +1,6 @@
// @ts-nocheck // @ts-nocheck
import React from 'react'; import React from 'react';
import classNames from 'classnames'; import clsx from 'classnames';
import '@/style/components/Details.scss'; import '@/style/components/Details.scss';
@@ -24,7 +24,7 @@ export function DetailsMenu({
}) { }) {
return ( return (
<div <div
className={classNames( className={clsx(
'details-menu', 'details-menu',
{ {
'details-menu--vertical': direction === DIRECTION.VERTICAL, 'details-menu--vertical': direction === DIRECTION.VERTICAL,
@@ -44,16 +44,24 @@ export function DetailsMenu({
/** /**
* Detail item. * Detail item.
*/ */
export function DetailItem({ label, children, name, align, className }) { export function DetailItem({
label,
children,
name,
align,
multiline,
className,
}) {
const { minLabelSize } = useDetailsMenuContext(); const { minLabelSize } = useDetailsMenuContext();
return ( return (
<div <div
className={classNames( className={clsx(
'detail-item', 'detail-item',
{ {
[`detail-item--${name}`]: name, [`detail-item--${name}`]: name,
[`align-${align}`]: align, [`align-${align}`]: align,
[`detail-item--multilines`]: multiline,
}, },
className, className,
)} )}
@@ -66,7 +74,7 @@ export function DetailItem({ label, children, name, align, className }) {
> >
{label} {label}
</div> </div>
<div>{children}</div> <div className={clsx('detail-item__content')}>{children}</div>
</div> </div>
); );
} }

View File

@@ -15,6 +15,8 @@ export function MakeJournalFormFooterLeft() {
<FEditableText <FEditableText
name={'description'} name={'description'}
placeholder={intl.get('make_jorunal.decscrption.placeholder')} placeholder={intl.get('make_jorunal.decscrption.placeholder')}
multiline
fastField
/> />
</DescriptionFormGroup> </DescriptionFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -20,7 +20,9 @@ export default function BillDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={bill.note}> <If condition={bill.note}>
<DetailItem label={<T id={'note'} />}>{bill.note}</DetailItem> <DetailItem label={<T id={'note'} />} multiline>
{bill.note}
</DetailItem>
</If> </If>
</DetailsMenu> </DetailsMenu>
</CommercialDocFooter> </CommercialDocFooter>

View File

@@ -9,7 +9,10 @@ export function CashflowTransactionDrawerFooter() {
return ( return (
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<DetailItem label={<T id={'cash_flow.drawer.label.statement'} />}> <DetailItem
label={<T id={'cash_flow.drawer.label.statement'} />}
multiline
>
{cashflowTransaction.description} {cashflowTransaction.description}
</DetailItem> </DetailItem>
</DetailsMenu> </DetailsMenu>

View File

@@ -21,11 +21,15 @@ export default function CreditNoteDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={creditNote.terms_conditions}> <If condition={creditNote.terms_conditions}>
<DetailItem label={<T id={'note'} />} children={creditNote.note} /> <DetailItem
label={<T id={'note'} />}
children={creditNote.note}
multiline
/>
</If> </If>
<If condition={creditNote.terms_conditions}> <If condition={creditNote.terms_conditions}>
<DetailItem label={<T id={'terms_conditions'} />}> <DetailItem label={<T id={'terms_conditions'} />} multiline>
{creditNote.terms_conditions} {creditNote.terms_conditions}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -21,12 +21,15 @@ export default function EstimateDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={estimate.terms_conditions}> <If condition={estimate.terms_conditions}>
<DetailItem label={<T id={'estimate.details.terms_conditions'} />}> <DetailItem
label={<T id={'estimate.details.terms_conditions'} />}
multiline
>
{estimate.terms_conditions} {estimate.terms_conditions}
</DetailItem> </DetailItem>
</If> </If>
<If condition={estimate.note}> <If condition={estimate.note}>
<DetailItem label={<T id={'estimate.details.note'} />}> <DetailItem label={<T id={'estimate.details.note'} />} multiline>
{estimate.note} {estimate.note}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -23,13 +23,16 @@ export function InvoiceDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={invoice.terms_conditions}> <If condition={invoice.terms_conditions}>
<DetailItem label={<T id={'terms_conditions'} />}> <DetailItem label={<T id={'terms_conditions'} />} multiline>
{invoice.terms_conditions} {invoice.terms_conditions}
</DetailItem> </DetailItem>
</If> </If>
<If condition={invoice.invoice_message}> <If condition={invoice.invoice_message}>
<DetailItem label={<T id={'invoice.details.invoice_message'} />}> <DetailItem
label={<T id={'invoice.details.invoice_message'} />}
multiline
>
{invoice.invoice_message} {invoice.invoice_message}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -20,7 +20,10 @@ export function PaymentMadeDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={paymentMade.statement}> <If condition={paymentMade.statement}>
<DetailItem label={<T id={'payment_made.details.statement'} />}> <DetailItem
label={<T id={'payment_made.details.statement'} />}
multiline
>
{paymentMade.statement} {paymentMade.statement}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -21,7 +21,10 @@ export default function PaymentReceiveDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={paymentReceive.statement}> <If condition={paymentReceive.statement}>
<DetailItem label={<T id={'payment_receive.details.statement'} />}> <DetailItem
label={<T id={'payment_receive.details.statement'} />}
multiline
>
{paymentReceive.statement} {paymentReceive.statement}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -21,12 +21,15 @@ export default function ReceiptDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'180px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'180px'}>
<If condition={receipt.statement}> <If condition={receipt.statement}>
<DetailItem label={<T id={'receipt.details.statement'} />}> <DetailItem label={<T id={'receipt.details.statement'} />} multiline>
{receipt.statement} {receipt.statement}
</DetailItem> </DetailItem>
</If> </If>
<If condition={receipt.receipt_message}> <If condition={receipt.receipt_message}>
<DetailItem label={<T id={'receipt.details.receipt_message'} />}> <DetailItem
label={<T id={'receipt.details.receipt_message'} />}
multiline
>
{receipt.receipt_message} {receipt.receipt_message}
</DetailItem> </DetailItem>
</If> </If>

View File

@@ -16,7 +16,11 @@ export function VendorCreditDetailFooter() {
<CommercialDocFooter> <CommercialDocFooter>
<DetailsMenu direction={'horizantal'} minLabelSize={'150px'}> <DetailsMenu direction={'horizantal'} minLabelSize={'150px'}>
<If condition={vendorCredit.note}> <If condition={vendorCredit.note}>
<DetailItem label={<T id={'note'} />} children={vendorCredit.note} /> <DetailItem
label={<T id={'note'} />}
children={vendorCredit.note}
multiline
/>
</If> </If>
</DetailsMenu> </DetailsMenu>
</CommercialDocFooter> </CommercialDocFooter>

View File

@@ -14,6 +14,8 @@ export function ExpenseFormFooterLeft() {
<FEditableText <FEditableText
name={'description'} name={'description'}
placeholder={<T id={'expenses.decscrption.placeholder'} />} placeholder={<T id={'expenses.decscrption.placeholder'} />}
multiline
fastField
/> />
</DescriptionFormGroup> </DescriptionFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -15,6 +15,8 @@ export function BillFormFooterLeft() {
<FEditableText <FEditableText
name={'note'} name={'note'}
placeholder={intl.get('bill_form.label.note.placeholder')} placeholder={intl.get('bill_form.label.note.placeholder')}
fastField
multiline
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -15,6 +15,8 @@ export function VendorCreditNoteFormFooterLeft() {
<FEditableText <FEditableText
name={'note'} name={'note'}
placeholder={intl.get('vendor_credit_form.note.placeholder')} placeholder={intl.get('vendor_credit_form.note.placeholder')}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -20,7 +20,8 @@ export function PaymentMadeFormFooterLeft() {
<FEditableText <FEditableText
name={'statement'} name={'statement'}
placeholder={intl.get('payment_made.form.internal_note.placeholder')} placeholder={intl.get('payment_made.form.internal_note.placeholder')}
fastField={true} fastField
multiline
/> />
</InternalNoteFormGroup> </InternalNoteFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -15,6 +15,8 @@ export function CreditNoteFormFooterLeft() {
<FEditableText <FEditableText
name={'note'} name={'note'}
placeholder={intl.get('credit_note.label_customer_note.placeholder')} placeholder={intl.get('credit_note.label_customer_note.placeholder')}
multiline
fastField
/> />
</CreditNoteMsgFormGroup> </CreditNoteMsgFormGroup>
{/* --------- Terms and conditions --------- */} {/* --------- Terms and conditions --------- */}
@@ -27,6 +29,8 @@ export function CreditNoteFormFooterLeft() {
placeholder={intl.get( placeholder={intl.get(
'credit_note.label_terms_and_conditions.placeholder', 'credit_note.label_terms_and_conditions.placeholder',
)} )}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -16,6 +16,8 @@ export function EstimateFormFooterLeft() {
<FEditableText <FEditableText
name={'note'} name={'note'}
placeholder={intl.get('estimate_form.customer_note.placeholder')} placeholder={intl.get('estimate_form.customer_note.placeholder')}
multiline
fastField
/> />
</EstimateMsgFormGroup> </EstimateMsgFormGroup>
@@ -26,7 +28,11 @@ export function EstimateFormFooterLeft() {
> >
<FEditableText <FEditableText
name={'terms_conditions'} name={'terms_conditions'}
placeholder={intl.get('estimate_form.terms_and_conditions.placeholder')} placeholder={intl.get(
'estimate_form.terms_and_conditions.placeholder',
)}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -15,6 +15,8 @@ export function InvoiceFormFooterLeft() {
<FEditableText <FEditableText
name={'invoice_message'} name={'invoice_message'}
placeholder={intl.get('invoice_form.invoice_message.placeholder')} placeholder={intl.get('invoice_form.invoice_message.placeholder')}
fastField
multiline
/> />
</InvoiceMsgFormGroup> </InvoiceMsgFormGroup>
@@ -28,6 +30,8 @@ export function InvoiceFormFooterLeft() {
placeholder={intl.get( placeholder={intl.get(
'invoice_form.terms_and_conditions.placeholder', 'invoice_form.terms_and_conditions.placeholder',
)} )}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -18,7 +18,8 @@ export function PaymentReceiveFormFootetLeft() {
placeholder={intl.get( placeholder={intl.get(
'payment_receive_form.internal_note.placeholder', 'payment_receive_form.internal_note.placeholder',
)} )}
fastField={true} fastField
multiline
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -16,6 +16,8 @@ export function ReceiptFormFooterLeft() {
<FEditableText <FEditableText
name={'receipt_message'} name={'receipt_message'}
placeholder={intl.get('receipt_form.receipt_message.placeholder')} placeholder={intl.get('receipt_form.receipt_message.placeholder')}
multiline
fastField
/> />
</ReceiptMsgFormGroup> </ReceiptMsgFormGroup>
@@ -29,6 +31,8 @@ export function ReceiptFormFooterLeft() {
placeholder={intl.get( placeholder={intl.get(
'receipt_form.terms_and_conditions.placeholder', 'receipt_form.terms_and_conditions.placeholder',
)} )}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -15,6 +15,8 @@ export function WarehouseTransferFormFooterLeft() {
<FEditableText <FEditableText
name={'reason'} name={'reason'}
placeholder={intl.get('warehouse_transfer.form.reason.placeholder')} placeholder={intl.get('warehouse_transfer.form.reason.placeholder')}
multiline
fastField
/> />
</TermsConditsFormGroup> </TermsConditsFormGroup>
</React.Fragment> </React.Fragment>

View File

@@ -48,6 +48,13 @@
&__content { &__content {
text-transform: capitalize; text-transform: capitalize;
} }
&.detail-item--multilines{
.detail-item__content{
white-space: pre-line;
}
}
} }
+ .details-menu{ + .details-menu{