);
-}
\ No newline at end of file
+}
diff --git a/src/containers/Drawers/CustomerDetailsDrawer/CustomerDetailsActionsBar.js b/src/containers/Drawers/CustomerDetailsDrawer/CustomerDetailsActionsBar.js
index 62d903e79..42763b866 100644
--- a/src/containers/Drawers/CustomerDetailsDrawer/CustomerDetailsActionsBar.js
+++ b/src/containers/Drawers/CustomerDetailsDrawer/CustomerDetailsActionsBar.js
@@ -108,7 +108,7 @@ function CustomerDetailsActionsBar({
}
- text={intl.get('edit_contact', { name: contact?.contact_service })}
+ text={intl.get('customer.drawer.action.edit')}
onClick={handleEditContact}
/>
diff --git a/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerFooter.js b/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerFooter.js
index 48d21cb91..3661ce341 100644
--- a/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerFooter.js
+++ b/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerFooter.js
@@ -1,7 +1,7 @@
import React from 'react';
import { useManualJournalDrawerContext } from './ManualJournalDrawerProvider';
-import { FormatNumber } from '../../../components';
+import { T, FormatNumber } from '../../../components';
/**
* Manual journal readonly details footer.
@@ -15,7 +15,9 @@ export default function ManualJournalDrawerFooter() {
-
Subtotal
+
+
+
@@ -24,7 +26,9 @@ export default function ManualJournalDrawerFooter() {
-
TOTAL
+
+
+
{formatted_amount}
{formatted_amount}
diff --git a/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerHeader.js b/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerHeader.js
index eb6edc735..e9b4315f7 100644
--- a/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerHeader.js
+++ b/src/containers/Drawers/ManualJournalDrawer/ManualJournalDrawerHeader.js
@@ -43,7 +43,10 @@ export default function ManualJournalDrawerHeader() {
- Description: {defaultTo(description, '—')}
+
+
+
+ : {defaultTo(description, '—')}
);
diff --git a/src/containers/Drawers/VendorDetailsDrawer/VendorDetailsActionsBar.js b/src/containers/Drawers/VendorDetailsDrawer/VendorDetailsActionsBar.js
index f46444664..81b001faa 100644
--- a/src/containers/Drawers/VendorDetailsDrawer/VendorDetailsActionsBar.js
+++ b/src/containers/Drawers/VendorDetailsDrawer/VendorDetailsActionsBar.js
@@ -91,7 +91,7 @@ function VendorDetailsActionsBar({
}
- text={}
+ text={}
onClick={safeCallback(onEditContact)}
/>
diff --git a/src/containers/Purchases/PaymentMades/PaymentsLanding/PaymentMadesEmptyStatus.js b/src/containers/Purchases/PaymentMades/PaymentsLanding/PaymentMadesEmptyStatus.js
index 3f008d876..ada8352ba 100644
--- a/src/containers/Purchases/PaymentMades/PaymentsLanding/PaymentMadesEmptyStatus.js
+++ b/src/containers/Purchases/PaymentMades/PaymentsLanding/PaymentMadesEmptyStatus.js
@@ -9,7 +9,7 @@ export default function PaymentMadesEmptyStatus() {
return (
}
+ title={}
description={
diff --git a/src/lang/ar/index.json b/src/lang/ar/index.json
index 840644b29..016b4b8d3 100644
--- a/src/lang/ar/index.json
+++ b/src/lang/ar/index.json
@@ -1100,7 +1100,7 @@
"receiving_customer_payments_is_one_pleasant_accounting_tasks": "استلام المدفوعات أحد مهام المحاسبية الأكثر متعة. ستظهر معاملات المدفوعات بمجرد استلام المدفوعات للفواتير.",
"estimate_is_used_to_create_bid_proposal_or_quote": "تستخدم العروض لإنشاء عطاء أو اقتراح أو عرض أسعار منتجات. يمكن تحويل العرض إلى أمر مبيعات أو فاتورة.",
"payment_made_empty_status_description": "ستظهر معاملات المدفوعات بمجرد سداد فواتير المشتريات.",
- "bill_empty_status_description": "",
+ "bill_empty_status_description": "تسجل المشتريات من الموردين الذين تم او لم يتم الدفع لهم ، لتتبع حساب الذمم الدائنة مع الموردين. ",
"invoices_empty_status_description": "فواتير المبيعات للعملاء الذين لا يسددون أي مدفوعات جزئية أو يسددونها ، مع مساعدتك في تتبع الحسابات المستحقة مع الزبائن.",
"receipt_empty_status_description": "إيصالات المبيعات للمبيعات التي يدفع فيها الزبون فورًا مقابل المنتجات أو الخدمات في وقت البيع.",
"there_were_no_purchases_during_the_selected_date_range": "لا توجد مشتريات خلال النطاق الزمني المحدد.",
@@ -1248,6 +1248,9 @@
"invoice.details.payment_amount": "مبلغ المدفوع",
"expense.details.subtotal": "المجموع",
"expense.details.total": "إجمالي",
+ "manual_journal.details.subtotal": "المجموع",
+ "manual_journal.details.total": "إجمالي",
+ "manual_journal.details.description": "الوصف",
"setup.left_side.title": "سجل منشأة جديدة الأن.",
"setup.left_side.description": "حسابك علي Bigcapital",
"setup.left_side.footer_help": "نحن هنا للمساعدة!",
@@ -1308,6 +1311,7 @@
"customer.drawer.action.new_payment": "سند زبون جديد",
"customer.drawer.action.new_receipt": "إيصال جديد",
"customer.drawer.action.new_transaction": "معاملة جديدة",
+ "customer.drawer.action.edit": "تعديل",
"customer.drawer.label.outstanding_receivable": "مستحق القبض",
"customer.drawer.label.customer_name": "اسم الزبون",
"customer.drawer.label.customer_type": "نوع الزبون",
@@ -1333,6 +1337,7 @@
"vendor.drawer.action.new_transaction": "معاملة جديدة",
"vendor.drawer.action.new_payment": "سند مورد جديد",
"vendor.drawer.action.new_invoice": "فاتورة شراء جديدة",
+ "vendor.drawer.action.edit": "تعديل",
"expenses.empty_status.title": "إضافة وإدارة مصاريف مؤسستك",
"expenses.empty_status.description": "قم بإنشاء وإدارة المصروفات التي تُعد جزء من التكاليف التشغيلية لمؤسستك.",
"manual_journals.empty_status.title": "قم بإدخال اول القيود اليدوية علي شجرة الحسابات.",
@@ -1359,7 +1364,14 @@
"estimate.field.error.estimate_number_required": "رقم العرض حقل مطلوب ، استخدم وضع الزيادة التلقائي أو أدخل يدويًا.",
"invoice.field.error.invoice_no_required": "رقم الفاتورة حقل مطلوب ، استخدم وضع الزيادة التلقائي أو أدخل يدويًا.",
"payment_receive.field.error.payment_receive_no_required": "رقم سند الدفع حقل مطلوب ، استخدم وضع الزيادة التلقائي أو أدخل يدويًا.",
- "receipt.field.error.receipt_number_required": "رقم الإيصال حقل مطلوب ، استخدم وضع الزيادة التلقائي أو أدخل يدويًا."
+ "receipt.field.error.receipt_number_required": "رقم الإيصال حقل مطلوب ، استخدم وضع الزيادة التلقائي أو أدخل يدويًا.",
+ "dashboard.rows_height": "ارتفاع الصفوف",
+ "dashboard.row_small": "صغير",
+ "dashboard.row_medium": "متوسط",
+ "filter.select_option": "اختر خيار",
+ "filter.enter_date": "أدخل تاريخ",
+ "filter.value": "قيمة",
+ "payment_made.empty_status.title": "المنشأة لم تدفع اي اموال إلي الموردين ، إلي حد الأن!."
}
diff --git a/src/lang/en/index.json b/src/lang/en/index.json
index 88d9fbe27..a3b057077 100644
--- a/src/lang/en/index.json
+++ b/src/lang/en/index.json
@@ -1219,6 +1219,8 @@
"bill.details.due_amount": "Due amount",
"expense.details.subtotal": "Subtotal",
"expense.details.total": "Total",
+ "manual_journal.details.subtotal": "Subtotal",
+ "manual_journal.details.total": "Total",
"setup.left_side.title": "Register a New Organization now!.",
"setup.left_side.description": "You have a Bigcapital account",
"setup.left_side.footer_help": "We’re Here to Help!",
@@ -1279,6 +1281,7 @@
"customer.drawer.action.new_payment": "New payment",
"customer.drawer.action.new_receipt": "New receipt",
"customer.drawer.action.new_transaction": "New transaction",
+ "customer.drawer.action.edit": "Edit",
"customer.drawer.label.outstanding_receivable": "Outstanding receivable",
"customer.drawer.label.customer_name": "Customer name",
"customer.drawer.label.customer_type": "Customer type",
@@ -1304,6 +1307,7 @@
"vendor.drawer.action.new_transaction": "New transaction",
"vendor.drawer.action.new_payment": "New payment",
"vendor.drawer.action.new_invoice": "New purchase invoice",
+ "vendor.drawer.action.edit": "Edit",
"manual_journals.empty_status.description": "Manual journals can be used to record financial transactions manually, used by accountants to work with the ledger.",
"manual_journals.empty_status.title": "Create your first journal entries on accounts chart.",
"expenses.empty_status.description": "Create and manage expeses that are part of your organization's operating costs.",
@@ -1330,5 +1334,12 @@
"estimate.field.error.estimate_number_required": "Estimate number is required, use auto-increment mode or enter manually.",
"invoice.field.error.invoice_no_required": "Invoice number is required, use auto-increment mode or enter manually",
"payment_receive.field.error.payment_receive_no_required": "Payment receive number is required, use auto-increment mode or enter manually",
- "receipt.field.error.receipt_number_required": "Receipt number is required, use auto-increment mode or enter manually"
-}
\ No newline at end of file
+ "receipt.field.error.receipt_number_required": "Receipt number is required, use auto-increment mode or enter manually",
+ "dashboard.rows_height": "Rows height",
+ "dashboard.row_small": "Small",
+ "dashboard.row_medium": "Medium",
+ "filter.select_option": "Select an option",
+ "filter.enter_date": "Enter date",
+ "filter.value": "Value",
+ "payment_made.empty_status.title": "The organization doesn't pay to vendors, yet!"
+}
diff --git a/src/store/dashboard/dashboard.actions.js b/src/store/dashboard/dashboard.actions.js
index f7df3e671..d1ef01274 100644
--- a/src/store/dashboard/dashboard.actions.js
+++ b/src/store/dashboard/dashboard.actions.js
@@ -84,4 +84,22 @@ export function appIntlIsLoading(toggle) {
type: t.APP_INTL_IS_LOADING,
payload: { isLoading: toggle },
};
+}
+
+/**
+ * Splash start loading.
+ */
+export function splashStartLoading() {
+ return {
+ type: t.SPLASH_START_LOADING,
+ };
+}
+
+/**
+ * Splash stop loading.
+ */
+export function splashStopLoading() {
+ return {
+ type: t.SPLASH_STOP_LOADING,
+ }
}
\ No newline at end of file
diff --git a/src/store/dashboard/dashboard.reducer.js b/src/store/dashboard/dashboard.reducer.js
index 2107975fa..4108cf3af 100644
--- a/src/store/dashboard/dashboard.reducer.js
+++ b/src/store/dashboard/dashboard.reducer.js
@@ -1,5 +1,5 @@
import { createReducer } from '@reduxjs/toolkit';
-import { isUndefined } from 'lodash';
+import { isUndefined, isNumber } from 'lodash';
import t from 'store/types';
import { persistReducer, purgeStoredState } from 'redux-persist';
import storage from 'redux-persist/lib/storage';
@@ -16,6 +16,7 @@ const initialState = {
topbarEditViewId: null,
requestsLoading: 0,
backLink: false,
+ splashScreenLoading: null,
appIsLoading: true,
appIntlIsLoading: true,
};
@@ -102,14 +103,17 @@ const reducerInstance = createReducer(initialState, {
state.backLink = backLink;
},
- [t.APP_IS_LOADING]: (state, action) => {
- const { isLoading } = action.payload;
- state.appIsLoading = isLoading;
+ [t.SPLASH_START_LOADING]: (state) => {
+ if (isNumber(state.splashScreenLoading)) {
+ state.splashScreenLoading += 1;
+ } else {
+ state.splashScreenLoading = 1;
+ }
},
- [t.APP_INTL_IS_LOADING]: (state, action) => {
- const { isLoading } = action.payload;
- state.appIntlIsLoading = isLoading;
+ [t.SPLASH_STOP_LOADING]: (state) => {
+ state.splashScreenLoading -= 1;
+ state.splashScreenLoading = Math.max(state.splashScreenLoading, 0);
},
[t.RESET]: () => {
diff --git a/src/store/dashboard/dashboard.types.js b/src/store/dashboard/dashboard.types.js
index cc8885a30..d63cddd01 100644
--- a/src/store/dashboard/dashboard.types.js
+++ b/src/store/dashboard/dashboard.types.js
@@ -14,6 +14,6 @@ export default {
SET_TOPBAR_EDIT_VIEW: 'SET_TOPBAR_EDIT_VIEW',
SIDEBAR_EXPEND_TOGGLE: 'SIDEBAR_EXPEND_TOGGLE',
SET_DASHBOARD_BACK_LINK: 'SET_DASHBOARD_BACK_LINK',
- APP_IS_LOADING: 'APP_IS_LOADING',
- APP_INTL_IS_LOADING: 'APP_INTL_IS_LOADING'
+ SPLASH_START_LOADING: 'SPLASH_START_LOADING',
+ SPLASH_STOP_LOADING: 'SPLASH_STOP_LOADING',
};