Merge branch 'featrue/roles-permission' of https://github.com/bigcapitalhq/client into featrue/roles-permission

This commit is contained in:
a.bouhuolia
2021-11-26 22:27:37 +02:00
58 changed files with 443 additions and 494 deletions

View File

@@ -1,6 +1,6 @@
export const AbilitySubject = {
Item: 'Item',
Inventory_Adjustment: 'InventoryAdjustment',
InventoryAdjustment: 'InventoryAdjustment',
Estimate: 'SaleEstimate',
Invoice: 'SaleInvoice',
Receipt: 'SaleReceipt',
@@ -16,110 +16,116 @@ export const AbilitySubject = {
Report: 'Report',
Preferences: 'Preferences',
ExchangeRate: 'ExchangeRate',
SubscriptionBilling: 'SubscriptionBilling'
SubscriptionBilling: 'SubscriptionBilling',
};
export const Item_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const ItemAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
};
export const Inventory_Adjustment_Abilities = {
Create: 'create',
View: 'view',
Delete: 'delete',
export const InventoryAdjustmentAction = {
Create: 'Create',
Edit: 'Edit',
View: 'View',
Delete: 'Delete',
};
export const Estimate_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const SaleEstimateAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
NotifyBySms: 'NotifyBySms',
};
export const Invoice_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
BadDebt: 'bad-debt',
export const SaleInvoiceAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
Writeoff: 'Writeoff',
NotifyBySms: 'NotifyBySms',
};
export const Receipt_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const SaleReceiptAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
NotifyBySms: 'NotifyBySms',
};
export const Payment_Receive_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const PaymentReceiveAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
NotifyBySms: 'NotifyBySms',
};
export const Bill_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const BillAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
NotifyBySms: 'NotifyBySms',
};
export const Payment_Made_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const PaymentMadeAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
};
export const Customer_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const CustomerAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
};
export const Vendor_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const VendorAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
};
export const Account_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
Transactions_Locking: 'TransactionsLocking',
export const AccountAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
TransactionsLocking: 'TransactionsLocking',
};
export const Manual_Journal_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
TransactionLocking: 'TransactionLocking'
export const ManualJournalAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
TransactionLocking: 'TransactionLocking',
};
export const Expense_Abilities = {
View: 'view',
Create: 'create',
Edit: 'edit',
Delete: 'delete',
export const ExpenseAction = {
View: 'View',
Create: 'Create',
Edit: 'Edit',
Delete: 'Delete',
};
export const Cashflow_Abilities = {
View: 'view',
Create: 'create',
Delete: 'delete',
export const CashflowAction = {
View: 'View',
Create: 'Create',
Delete: 'Delete',
};
export const Report_Abilities = {
ALL:'all',
export const ReportsAction = {
ALL: 'all',
READ_BALANCE_SHEET: 'read-balance-sheet',
READ_TRIAL_BALANCE_SHEET: 'read-trial-balance-sheet',
READ_PROFIT_LOSS: 'read-profit-loss',
@@ -140,16 +146,16 @@ export const Report_Abilities = {
};
export const PreferencesAbility = {
Mutate: 'Mutate'
}
Mutate: 'Mutate',
};
export const ExchangeRateAbility ={
export const ExchangeRateAbility = {
View: 'view',
Create: 'create',
Delete: 'delete',
}
Delete: 'delete',
};
export const SubscriptionBillingAbility = {
View: 'view',
Payment: 'payment'
}
Payment: 'payment',
};

View File

@@ -1,20 +1,20 @@
import React from 'react';
import { FormattedMessage as T } from 'components';
import {
Invoice_Abilities,
Estimate_Abilities,
SaleInvoiceAction,
SaleEstimateAction,
AbilitySubject,
Receipt_Abilities,
Customer_Abilities,
Payment_Receive_Abilities,
Bill_Abilities,
Vendor_Abilities,
Payment_Made_Abilities,
Account_Abilities,
Manual_Journal_Abilities,
Expense_Abilities,
Item_Abilities,
Report_Abilities,
SaleReceiptAction,
CustomerAction,
PaymentReceiveAction,
BillAction,
VendorAction,
PaymentMadeAction,
AccountAction,
ManualJournalAction,
ExpenseAction,
ItemAction,
ReportsAction,
} from '../common/abilityOption';
export const accountsReceivable = [
@@ -26,28 +26,28 @@ export const accountsReceivable = [
description: <T id={'tracking_sales_invoices_with_your_customers'} />,
link: '/invoices',
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.View,
ability: SaleInvoiceAction.View,
},
{
title: <T id={'sales_estimates'} />,
description: <T id={'manage_your_sales_estimates_to_create_quotes'} />,
link: '/estimates',
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.View,
ability: SaleEstimateAction.View,
},
{
title: <T id={'sales_receipts'} />,
description: <T id={'manage_sales_receipts_for_sales_that_get_paid'} />,
link: '/receipts',
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.View,
ability: SaleReceiptAction.View,
},
{
title: <T id={'customers'} />,
description: <T id={'manage_the_customers_relations_with_customer'} />,
link: '/customers',
subject: AbilitySubject.Customer,
ability: Customer_Abilities.View,
ability: CustomerAction.View,
},
{
title: <T id={'customers_payments'} />,
@@ -56,7 +56,7 @@ export const accountsReceivable = [
),
link: '/payment-receives',
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.View,
ability: PaymentReceiveAction.View,
},
],
},
@@ -73,7 +73,7 @@ export const accountsPayable = [
),
link: '/bills',
subject: AbilitySubject.Bill,
ability: Bill_Abilities.View,
ability: BillAction.View,
},
{
title: <T id={'vendors'} />,
@@ -82,14 +82,14 @@ export const accountsPayable = [
),
link: '/vendors',
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.View,
ability: VendorAction.View,
},
{
title: <T id={'vendors_payments'} />,
description: <T id={'manage_payments_transactions_to_your_vendors'} />,
link: '/payment-mades',
subject: AbilitySubject.PaymentMade,
ability: Payment_Made_Abilities.View,
ability: PaymentMadeAction.View,
},
],
},
@@ -110,7 +110,7 @@ export const financialAccounting = [
),
link: '/accounts',
subject: AbilitySubject.Account,
ability: Account_Abilities.View,
ability: AccountAction.View,
},
{
title: <T id={'manual_journal'} />,
@@ -119,7 +119,7 @@ export const financialAccounting = [
),
link: '/manual-journals',
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.View,
ability: ManualJournalAction.View,
},
{
title: <T id={'expenses'} />,
@@ -128,7 +128,7 @@ export const financialAccounting = [
),
link: '/expenses',
subject: AbilitySubject.Expense,
ability: Expense_Abilities.View,
ability: ExpenseAction.View,
},
{
title: <T id={'financial_statements'} />,
@@ -137,7 +137,7 @@ export const financialAccounting = [
),
link: '/financial-reports',
subject: AbilitySubject.Report,
ability: Report_Abilities.ALL,
ability: ReportsAction.ALL,
},
],
},
@@ -154,7 +154,7 @@ export const productsServices = [
),
link: '/items',
subject: AbilitySubject.Item,
ability: Item_Abilities.View,
ability: ItemAction.View,
},
{
title: <T id={'products_services_categories'} />,
@@ -167,8 +167,8 @@ export const productsServices = [
<T id={'manage_your_inventory_adjustment_of_inventory_items'} />
),
link: '/inventory-adjustments',
subject: AbilitySubject.Inventory_Adjustment,
ability: Invoice_Abilities.View,
subject: AbilitySubject.InventoryAdjustment,
ability: SaleInvoiceAction.View,
},
],
},

View File

@@ -1,11 +1,11 @@
import intl from 'react-intl-universal';
import {
AbilitySubject,
Invoice_Abilities,
Customer_Abilities,
Vendor_Abilities,
Manual_Journal_Abilities,
Expense_Abilities,
SaleInvoiceAction,
CustomerAction,
VendorAction,
ManualJournalAction,
ExpenseAction,
} from '../common/abilityOption';
import { useAbilitiesFilter } from '../hooks';
@@ -15,7 +15,7 @@ export const getQuickNewActions = () => [
name: intl.get('sale_invoice'),
permission: {
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.Create,
ability: SaleInvoiceAction.Create,
},
},
{
@@ -23,7 +23,7 @@ export const getQuickNewActions = () => [
name: intl.get('purchase_invoice'),
permission: {
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.Create,
ability: SaleInvoiceAction.Create,
},
},
{
@@ -31,7 +31,7 @@ export const getQuickNewActions = () => [
name: intl.get('manual_journal'),
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.Create,
ability: ManualJournalAction.Create,
},
},
{
@@ -39,7 +39,7 @@ export const getQuickNewActions = () => [
name: intl.get('expense'),
permission: {
subject: AbilitySubject.Expense,
ability: Expense_Abilities.Create,
ability: ExpenseAction.Create,
},
},
{
@@ -47,7 +47,7 @@ export const getQuickNewActions = () => [
name: intl.get('customer'),
permission: {
subject: AbilitySubject.Customer,
ability: Customer_Abilities.Create,
ability: CustomerAction.Create,
},
},
{
@@ -55,7 +55,7 @@ export const getQuickNewActions = () => [
name: intl.get('vendor'),
permission: {
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.Vendor,
ability: VendorAction.Vendor,
},
},
];

View File

@@ -1,6 +1,6 @@
import React from 'react';
import { FormattedMessage as T } from 'components';
import { Report_Abilities, AbilitySubject } from '../common/abilityOption';
import { ReportsAction, AbilitySubject } from '../common/abilityOption';
export const financialReportMenus = [
{
@@ -13,7 +13,7 @@ export const financialReportMenus = [
),
link: '/financial-reports/balance-sheet',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_BALANCE_SHEET,
ability: ReportsAction.READ_BALANCE_SHEET,
},
{
title: <T id={'trial_balance_sheet'} />,
@@ -22,14 +22,14 @@ export const financialReportMenus = [
),
link: '/financial-reports/trial-balance-sheet',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_TRIAL_BALANCE_SHEET,
ability: ReportsAction.READ_TRIAL_BALANCE_SHEET,
},
{
title: <T id={'profit_loss_report'} />,
desc: <T id={'reports_the_revenues_costs_and_expenses'} />,
link: '/financial-reports/profit-loss-sheet',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PROFIT_LOSS,
ability: ReportsAction.READ_PROFIT_LOSS,
},
{
title: <T id={'cash_flow_statement'} />,
@@ -38,21 +38,21 @@ export const financialReportMenus = [
),
link: '/financial-reports/cash-flow',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CASHFLOW,
ability: ReportsAction.READ_CASHFLOW,
},
{
title: <T id={'journal_report'} />,
desc: <T id={'the_debit_and_credit_entries_of_system_transactions'} />,
link: '/financial-reports/journal-sheet',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_JOURNAL,
ability: ReportsAction.READ_JOURNAL,
},
{
title: <T id={'general_ledger_report'} />,
desc: <T id={'reports_every_transaction_going_in_and_out_of_your'} />,
link: '/financial-reports/general-ledger',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_GENERAL_LEDGET,
ability: ReportsAction.READ_GENERAL_LEDGET,
},
{
title: <T id={'receivable_aging_summary'} />,
@@ -61,14 +61,14 @@ export const financialReportMenus = [
),
link: '/financial-reports/receivable-aging-summary',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_AR_AGING_SUMMARY,
ability: ReportsAction.READ_AR_AGING_SUMMARY,
},
{
title: <T id={'payable_aging_summary'} />,
desc: <T id={'summarize_total_unpaid_balances_of_vendors_purchase'} />,
link: '/financial-reports/payable-aging-summary',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_AP_AGING_SUMMARY,
ability: ReportsAction.READ_AP_AGING_SUMMARY,
},
],
},
@@ -89,7 +89,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/purchases-by-items',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PURCHASES_BY_ITEMS,
ability: ReportsAction.READ_PURCHASES_BY_ITEMS,
},
{
title: <T id={'sales_by_items'} />,
@@ -102,7 +102,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/sales-by-items',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_SALES_BY_ITEMS,
ability: ReportsAction.READ_SALES_BY_ITEMS,
},
{
title: <T id={'inventory_valuation'} />,
@@ -115,7 +115,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/inventory-valuation',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_VALUATION_SUMMARY,
ability: ReportsAction.READ_INVENTORY_VALUATION_SUMMARY,
},
{
title: <T id={'customers_balance_summary'} />,
@@ -128,7 +128,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/customers-balance-summary',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_SUMMARY_BALANCE,
ability: ReportsAction.READ_CUSTOMERS_SUMMARY_BALANCE,
},
{
title: <T id={'vendors_balance_summary'} />,
@@ -137,7 +137,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/vendors-balance-summary',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_SUMMARY_BALANCE,
ability: ReportsAction.READ_VENDORS_SUMMARY_BALANCE,
},
{
title: <T id={'customers_transactions'} />,
@@ -148,7 +148,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/transactions-by-customers',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_TRANSACTIONS,
ability: ReportsAction.READ_CUSTOMERS_TRANSACTIONS,
},
{
title: <T id={'vendors_transactions'} />,
@@ -161,7 +161,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/transactions-by-vendors',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_TRANSACTIONS,
ability: ReportsAction.READ_VENDORS_TRANSACTIONS,
},
{
title: <T id={'inventory_item_details'} />,
@@ -170,7 +170,7 @@ export const SalesAndPurchasesReportMenus = [
),
link: '/financial-reports/inventory-item-details',
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_ITEM_DETAILS,
ability: ReportsAction.READ_INVENTORY_ITEM_DETAILS,
},
],
},

View File

@@ -1,22 +1,22 @@
import React from 'react';
import { FormattedMessage as T } from 'components';
import {
Report_Abilities,
ReportsAction,
AbilitySubject,
Item_Abilities,
Inventory_Adjustment_Abilities,
Estimate_Abilities,
Invoice_Abilities,
Receipt_Abilities,
Payment_Receive_Abilities,
Bill_Abilities,
Payment_Made_Abilities,
Customer_Abilities,
Vendor_Abilities,
Account_Abilities,
Manual_Journal_Abilities,
Expense_Abilities,
Cashflow_Abilities,
ItemAction,
InventoryAdjustmentAction,
SaleEstimateAction,
SaleInvoiceAction,
SaleReceiptAction,
PaymentReceiveAction,
BillAction,
PaymentMadeAction,
CustomerAction,
VendorAction,
AccountAction,
ManualJournalAction,
ExpenseAction,
CashflowAction,
PreferencesAbility,
ExchangeRateAbility,
SubscriptionBillingAbility,
@@ -35,28 +35,28 @@ export default [
permission: [
{
subject: AbilitySubject.Item,
ability: Item_Abilities.View,
ability: ItemAction.View,
},
{
subject: AbilitySubject.Inventory_Adjustment,
ability: Inventory_Adjustment_Abilities.View,
subject: AbilitySubject.InventoryAdjustment,
ability: InventoryAdjustmentAction.View,
},
{
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.View,
ability: SaleEstimateAction.View,
},
{
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.View,
ability: SaleInvoiceAction.View,
},
{
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.View,
ability: SaleReceiptAction.View,
},
{
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.View,
}
ability: PaymentReceiveAction.View,
},
],
},
{
@@ -67,15 +67,15 @@ export default [
href: '/items',
permission: {
subject: AbilitySubject.Item,
ability: Item_Abilities.View,
ability: ItemAction.View,
},
},
{
text: <T id={'inventory_adjustments'} />,
href: '/inventory-adjustments',
permission: {
subject: AbilitySubject.Inventory_Adjustment,
ability: Inventory_Adjustment_Abilities.View,
subject: AbilitySubject.InventoryAdjustment,
ability: InventoryAdjustmentAction.View,
},
},
{
@@ -83,7 +83,7 @@ export default [
href: '/items/categories',
permission: {
subject: AbilitySubject.Item,
ability: Item_Abilities.View,
ability: ItemAction.View,
},
},
{
@@ -92,7 +92,7 @@ export default [
permission: [
{
subject: AbilitySubject.Item,
ability: Item_Abilities.Create,
ability: ItemAction.Create,
},
],
},
@@ -101,7 +101,7 @@ export default [
permission: [
{
subject: AbilitySubject.Item,
ability: Item_Abilities.Create,
ability: ItemAction.Create,
},
],
},
@@ -110,7 +110,7 @@ export default [
href: '/items/new',
permission: {
subject: AbilitySubject.Item,
ability: Item_Abilities.Create,
ability: ItemAction.Create,
},
},
{
@@ -118,7 +118,7 @@ export default [
href: '/items/new',
permission: {
subject: AbilitySubject.Item,
ability: Item_Abilities.Create,
ability: ItemAction.Create,
},
},
{
@@ -126,7 +126,7 @@ export default [
href: '/items/categories/new',
permission: {
subject: AbilitySubject.Item,
ability: Item_Abilities.Create,
ability: ItemAction.Create,
},
},
],
@@ -139,7 +139,7 @@ export default [
href: '/estimates',
permission: {
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.View,
ability: SaleEstimateAction.View,
},
},
{
@@ -147,7 +147,7 @@ export default [
href: '/invoices',
permission: {
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.View,
ability: SaleInvoiceAction.View,
},
},
{
@@ -155,7 +155,7 @@ export default [
href: '/receipts',
permission: {
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.View,
ability: SaleReceiptAction.View,
},
},
{
@@ -163,7 +163,7 @@ export default [
href: '/payment-receives',
permission: {
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.View,
ability: PaymentReceiveAction.View,
},
},
{
@@ -172,19 +172,19 @@ export default [
permission: [
{
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.Create,
ability: SaleEstimateAction.Create,
},
{
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.Create,
ability: SaleInvoiceAction.Create,
},
{
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.Create,
ability: SaleReceiptAction.Create,
},
{
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.Create,
ability: PaymentReceiveAction.Create,
},
],
},
@@ -193,19 +193,19 @@ export default [
permission: [
{
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.Create,
ability: SaleEstimateAction.Create,
},
{
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.Create,
ability: SaleInvoiceAction.Create,
},
{
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.Create,
ability: SaleReceiptAction.Create,
},
{
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.Create,
ability: PaymentReceiveAction.Create,
},
],
},
@@ -214,7 +214,7 @@ export default [
href: '/estimates/new',
permission: {
subject: AbilitySubject.Estimate,
ability: Estimate_Abilities.Create,
ability: SaleEstimateAction.Create,
},
},
{
@@ -222,7 +222,7 @@ export default [
href: '/invoices/new',
permission: {
subject: AbilitySubject.Invoice,
ability: Invoice_Abilities.Create,
ability: SaleInvoiceAction.Create,
},
},
{
@@ -230,7 +230,7 @@ export default [
href: '/receipts/new',
permission: {
subject: AbilitySubject.Receipt,
ability: Receipt_Abilities.Create,
ability: SaleReceiptAction.Create,
},
},
{
@@ -238,7 +238,7 @@ export default [
href: '/payment-receives/new',
permission: {
subject: AbilitySubject.PaymentReceive,
ability: Payment_Receive_Abilities.Create,
ability: PaymentReceiveAction.Create,
},
},
],
@@ -251,7 +251,7 @@ export default [
href: '/bills',
permission: {
subject: AbilitySubject.Bill,
ability: Bill_Abilities.View,
ability: BillAction.View,
},
},
{
@@ -260,7 +260,7 @@ export default [
newTabHref: '/payment-mades/new',
permission: {
subject: AbilitySubject.PaymentMade,
ability: Payment_Made_Abilities.View,
ability: PaymentMadeAction.View,
},
},
{
@@ -269,11 +269,11 @@ export default [
permission: [
{
subject: AbilitySubject.Bill,
ability: Bill_Abilities.Create,
ability: BillAction.Create,
},
{
subject: AbilitySubject.PaymentMade,
ability: Payment_Made_Abilities.Create,
ability: PaymentMadeAction.Create,
},
],
},
@@ -282,11 +282,11 @@ export default [
permission: [
{
subject: AbilitySubject.Bill,
ability: Bill_Abilities.Create,
ability: BillAction.Create,
},
{
subject: AbilitySubject.PaymentMade,
ability: Payment_Made_Abilities.Create,
ability: PaymentMadeAction.Create,
},
],
},
@@ -295,7 +295,7 @@ export default [
href: '/bills/new',
permission: {
subject: AbilitySubject.Bill,
ability: Bill_Abilities.Create,
ability: BillAction.Create,
},
},
{
@@ -303,7 +303,7 @@ export default [
href: '/payment-mades/new',
permission: {
subject: AbilitySubject.PaymentMade,
ability: Payment_Made_Abilities.Create,
ability: PaymentMadeAction.Create,
},
},
],
@@ -316,7 +316,7 @@ export default [
href: '/customers',
permission: {
subject: AbilitySubject.Customer,
ability: Customer_Abilities.View,
ability: CustomerAction.View,
},
},
{
@@ -324,7 +324,7 @@ export default [
href: '/vendors',
permission: {
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.Create,
ability: VendorAction.Create,
},
},
{
@@ -333,11 +333,11 @@ export default [
permission: [
{
subject: AbilitySubject.Customer,
ability: Customer_Abilities.View,
ability: CustomerAction.View,
},
{
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.View,
ability: VendorAction.View,
},
],
},
@@ -346,11 +346,11 @@ export default [
permission: [
{
subject: AbilitySubject.Customer,
ability: Customer_Abilities.View,
ability: CustomerAction.View,
},
{
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.View,
ability: VendorAction.View,
},
],
},
@@ -359,7 +359,7 @@ export default [
href: '/customers/new',
permission: {
subject: AbilitySubject.Customer,
ability: Customer_Abilities.View,
ability: CustomerAction.View,
},
},
{
@@ -367,7 +367,7 @@ export default [
href: '/vendors/new',
permission: {
subject: AbilitySubject.Vendor,
ability: Vendor_Abilities.View,
ability: VendorAction.View,
},
},
],
@@ -378,11 +378,11 @@ export default [
permission: [
{
subject: AbilitySubject.Account,
ability: Account_Abilities.View,
ability: AccountAction.View,
},
{
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.View,
ability: ManualJournalAction.View,
},
],
},
@@ -394,7 +394,7 @@ export default [
href: '/accounts',
permission: {
subject: AbilitySubject.Account,
ability: Account_Abilities.View,
ability: AccountAction.View,
},
},
{
@@ -402,7 +402,7 @@ export default [
href: '/manual-journals',
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.View,
ability: ManualJournalAction.View,
},
},
{
@@ -410,7 +410,7 @@ export default [
href: '/transactions-locking',
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.TransactionLocking,
ability: ManualJournalAction.TransactionLocking,
},
},
{
@@ -426,14 +426,14 @@ export default [
label: true,
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.Create,
ability: ManualJournalAction.Create,
},
},
{
divider: true,
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.Create,
ability: ManualJournalAction.Create,
},
},
{
@@ -441,7 +441,7 @@ export default [
href: '/make-journal-entry',
permission: {
subject: AbilitySubject.ManualJournal,
ability: Manual_Journal_Abilities.Create,
ability: ManualJournalAction.Create,
},
},
],
@@ -454,7 +454,7 @@ export default [
href: '/cashflow-accounts',
permission: {
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.View,
ability: CashflowAction.View,
},
},
{
@@ -463,7 +463,7 @@ export default [
permission: [
{
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
],
},
@@ -472,7 +472,7 @@ export default [
permission: [
{
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
],
},
@@ -481,7 +481,7 @@ export default [
href: '/cashflow-accounts',
permission: {
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
},
{
@@ -489,7 +489,7 @@ export default [
href: '/cashflow-accounts',
permission: {
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
},
{
@@ -497,7 +497,7 @@ export default [
href: '/cashflow-accounts',
permission: {
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
},
{
@@ -505,7 +505,7 @@ export default [
href: '/cashflow-accounts',
permission: {
subject: AbilitySubject.Cashflow,
ability: Cashflow_Abilities.Create,
ability: CashflowAction.Create,
},
},
],
@@ -518,7 +518,7 @@ export default [
href: '/expenses',
permission: {
subject: AbilitySubject.Expense,
ability: Expense_Abilities.View,
ability: ExpenseAction.View,
},
},
{
@@ -526,14 +526,14 @@ export default [
label: true,
permission: {
subject: AbilitySubject.Expense,
ability: Expense_Abilities.Create,
ability: ExpenseAction.Create,
},
},
{
divider: true,
permission: {
subject: AbilitySubject.Expense,
ability: Expense_Abilities.Create,
ability: ExpenseAction.Create,
},
},
{
@@ -541,7 +541,7 @@ export default [
href: '/expenses/new',
permission: {
subject: AbilitySubject.Expense,
ability: Expense_Abilities.Create,
ability: ExpenseAction.Create,
},
},
],
@@ -554,7 +554,7 @@ export default [
href: '/financial-reports/balance-sheet',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_BALANCE_SHEET,
ability: ReportsAction.READ_BALANCE_SHEET,
},
},
{
@@ -562,7 +562,7 @@ export default [
href: '/financial-reports/trial-balance-sheet',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_TRIAL_BALANCE_SHEET,
ability: ReportsAction.READ_TRIAL_BALANCE_SHEET,
},
},
{
@@ -570,7 +570,7 @@ export default [
href: '/financial-reports/journal-sheet',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_JOURNAL,
ability: ReportsAction.READ_JOURNAL,
},
},
{
@@ -578,7 +578,7 @@ export default [
href: '/financial-reports/general-ledger',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_GENERAL_LEDGET,
ability: ReportsAction.READ_GENERAL_LEDGET,
},
},
{
@@ -586,7 +586,7 @@ export default [
href: '/financial-reports/profit-loss-sheet',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PROFIT_LOSS,
ability: ReportsAction.READ_PROFIT_LOSS,
},
},
{
@@ -594,7 +594,7 @@ export default [
href: '/financial-reports/cash-flow',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CASHFLOW_ACCOUNT_TRANSACTION,
ability: ReportsAction.READ_CASHFLOW_ACCOUNT_TRANSACTION,
},
},
{
@@ -602,7 +602,7 @@ export default [
href: '/financial-reports/receivable-aging-summary',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_AR_AGING_SUMMARY,
ability: ReportsAction.READ_AR_AGING_SUMMARY,
},
},
{
@@ -610,7 +610,7 @@ export default [
href: '/financial-reports/payable-aging-summary',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_AP_AGING_SUMMARY,
ability: ReportsAction.READ_AP_AGING_SUMMARY,
},
},
{
@@ -619,27 +619,27 @@ export default [
permission: [
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PURCHASES_BY_ITEMS,
ability: ReportsAction.READ_PURCHASES_BY_ITEMS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_SALES_BY_ITEMS,
ability: ReportsAction.READ_SALES_BY_ITEMS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_TRANSACTIONS,
ability: ReportsAction.READ_CUSTOMERS_TRANSACTIONS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_TRANSACTIONS,
ability: ReportsAction.READ_VENDORS_TRANSACTIONS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_SUMMARY_BALANCE,
ability: ReportsAction.READ_CUSTOMERS_SUMMARY_BALANCE,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_SUMMARY_BALANCE,
ability: ReportsAction.READ_VENDORS_SUMMARY_BALANCE,
},
],
},
@@ -648,27 +648,27 @@ export default [
permission: [
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PURCHASES_BY_ITEMS,
ability: ReportsAction.READ_PURCHASES_BY_ITEMS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_SALES_BY_ITEMS,
ability: ReportsAction.READ_SALES_BY_ITEMS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_TRANSACTIONS,
ability: ReportsAction.READ_CUSTOMERS_TRANSACTIONS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_TRANSACTIONS,
ability: ReportsAction.READ_VENDORS_TRANSACTIONS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_SUMMARY_BALANCE,
ability: ReportsAction.READ_CUSTOMERS_SUMMARY_BALANCE,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_SUMMARY_BALANCE,
ability: ReportsAction.READ_VENDORS_SUMMARY_BALANCE,
},
],
},
@@ -677,7 +677,7 @@ export default [
href: '/financial-reports/purchases-by-items',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_PURCHASES_BY_ITEMS,
ability: ReportsAction.READ_PURCHASES_BY_ITEMS,
},
},
{
@@ -685,7 +685,7 @@ export default [
href: '/financial-reports/sales-by-items',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_SALES_BY_ITEMS,
ability: ReportsAction.READ_SALES_BY_ITEMS,
},
},
{
@@ -693,7 +693,7 @@ export default [
href: '/financial-reports/transactions-by-customers',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_TRANSACTIONS,
ability: ReportsAction.READ_CUSTOMERS_TRANSACTIONS,
},
},
{
@@ -701,7 +701,7 @@ export default [
href: '/financial-reports/transactions-by-vendors',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_TRANSACTIONS,
ability: ReportsAction.READ_VENDORS_TRANSACTIONS,
},
},
{
@@ -709,7 +709,7 @@ export default [
href: '/financial-reports/customers-balance-summary',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_CUSTOMERS_SUMMARY_BALANCE,
ability: ReportsAction.READ_CUSTOMERS_SUMMARY_BALANCE,
},
},
{
@@ -717,7 +717,7 @@ export default [
href: '/financial-reports/vendors-balance-summary',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_VENDORS_SUMMARY_BALANCE,
ability: ReportsAction.READ_VENDORS_SUMMARY_BALANCE,
},
},
{
@@ -726,11 +726,11 @@ export default [
permission: [
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_ITEM_DETAILS,
ability: ReportsAction.READ_INVENTORY_ITEM_DETAILS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_VALUATION_SUMMARY,
ability: ReportsAction.READ_INVENTORY_VALUATION_SUMMARY,
},
],
},
@@ -739,11 +739,11 @@ export default [
permission: [
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_ITEM_DETAILS,
ability: ReportsAction.READ_INVENTORY_ITEM_DETAILS,
},
{
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_VALUATION_SUMMARY,
ability: ReportsAction.READ_INVENTORY_VALUATION_SUMMARY,
},
],
},
@@ -752,7 +752,7 @@ export default [
href: '/financial-reports/inventory-item-details',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_ITEM_DETAILS,
ability: ReportsAction.READ_INVENTORY_ITEM_DETAILS,
},
},
{
@@ -760,7 +760,7 @@ export default [
href: '/financial-reports/inventory-valuation',
permission: {
subject: AbilitySubject.Report,
ability: Report_Abilities.READ_INVENTORY_VALUATION_SUMMARY,
ability: ReportsAction.READ_INVENTORY_VALUATION_SUMMARY,
},
},
],

View File

@@ -28,7 +28,7 @@ import withSettings from '../../Settings/withSettings';
import { Can, If, DashboardActionViewsList } from 'components';
import {
Manual_Journal_Abilities,
ManualJournalAction,
AbilitySubject,
} from '../../../common/abilityOption';
import { compose } from 'utils';
@@ -89,10 +89,7 @@ function ManualJournalActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can
I={Manual_Journal_Abilities.Create}
a={AbilitySubject.ManualJournal}
>
<Can I={ManualJournalAction.Create} a={AbilitySubject.ManualJournal}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="plus" />}

View File

@@ -5,7 +5,7 @@ import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
AbilitySubject,
Manual_Journal_Abilities,
ManualJournalAction,
} from '../../../common/abilityOption';
export default function ManualJournalsEmptyStatus() {
@@ -21,10 +21,7 @@ export default function ManualJournalsEmptyStatus() {
}
action={
<>
<Can
I={Manual_Journal_Abilities.Create}
a={AbilitySubject.ManualJournal}
>
<Can I={ManualJournalAction.Create} a={AbilitySubject.ManualJournal}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -22,7 +22,7 @@ import {
Icon,
} from 'components';
import {
Manual_Journal_Abilities,
ManualJournalAction,
AbilitySubject,
} from '../../../common/abilityOption';
import { safeCallback } from 'utils';
@@ -161,7 +161,7 @@ export const ActionsMenu = ({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Manual_Journal_Abilities.Edit} a={AbilitySubject.ManualJournal}>
<Can I={ManualJournalAction.Edit} a={AbilitySubject.ManualJournal}>
<MenuDivider />
<If condition={!original.is_published}>
<MenuItem
@@ -171,14 +171,14 @@ export const ActionsMenu = ({
/>
</If>
</Can>
<Can I={Manual_Journal_Abilities.Edit} a={AbilitySubject.ManualJournal}>
<Can I={ManualJournalAction.Edit} a={AbilitySubject.ManualJournal}>
<MenuItem
icon={<Icon icon="pen-18" />}
text={intl.get('edit_journal')}
onClick={safeCallback(onEdit, original)}
/>
</Can>
<Can I={Manual_Journal_Abilities.Delete} a={AbilitySubject.ManualJournal}>
<Can I={ManualJournalAction.Delete} a={AbilitySubject.ManualJournal}>
<MenuItem
text={intl.get('delete_journal')}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -31,7 +31,7 @@ import withAlertActions from 'containers/Alert/withAlertActions';
import withAccountsTableActions from './withAccountsTableActions';
import withSettings from '../Settings/withSettings';
import withSettingsActions from '../Settings/withSettingsActions';
import { Account_Abilities, AbilitySubject } from '../../common/abilityOption';
import { AccountAction, AbilitySubject } from '../../common/abilityOption';
import { compose } from 'utils';
@@ -119,7 +119,7 @@ function AccountsActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Account_Abilities.Create} a={AbilitySubject.Account}>
<Can I={AccountAction.Create} a={AbilitySubject.Account}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="plus" />}
@@ -187,7 +187,7 @@ function AccountsActionsBar({
onChange={handleTableRowSizeChange}
/>
<NavbarDivider />
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<Switch
labelElement={<T id={'inactive'} />}
defaultChecked={accountsInactiveMode}

View File

@@ -11,7 +11,7 @@ import {
import { Can, Icon, Money, If } from 'components';
import intl from 'react-intl-universal';
import { safeCallback } from 'utils';
import { AbilitySubject, Account_Abilities } from '../../common/abilityOption';
import { AbilitySubject, AccountAction } from '../../common/abilityOption';
/**
* Accounts table actions menu.
@@ -35,7 +35,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -50,7 +50,7 @@ export function ActionsMenu({
/>
<MenuDivider />
</Can>
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<If condition={original.active}>
<MenuItem
text={intl.get('inactivate_account')}
@@ -66,7 +66,7 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<MenuItem
text={intl.get('delete_account')}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -7,10 +7,7 @@ import { MaterialProgressBar } from 'components';
import { Can, FormatDateCell, If, Icon } from 'components';
import { useAccountTransactionsContext } from './AccountTransactionsProvider';
import { TRANSACRIONS_TYPE } from 'common/cashflowOptions';
import {
AbilitySubject,
Cashflow_Abilities,
} from '../../../common/abilityOption';
import { AbilitySubject, CashflowAction } from '../../../common/abilityOption';
import { safeCallback } from 'utils';
export function ActionsMenu({
@@ -24,7 +21,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Cashflow_Abilities.Delete} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Delete} a={AbilitySubject.Cashflow}>
<If condition={TRANSACRIONS_TYPE.includes(original.reference_type)}>
<MenuDivider />
<MenuItem

View File

@@ -9,10 +9,7 @@ import {
} from '@blueprintjs/core';
import { Can, Icon, FormattedMessage as T } from 'components';
import { useRefreshCashflowAccounts } from 'hooks/query';
import {
Cashflow_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { CashflowAction, AbilitySubject } from '../../../common/abilityOption';
import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar';
@@ -60,7 +57,7 @@ function CashFlowAccountsActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Cashflow_Abilities.Create} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Create} a={AbilitySubject.Cashflow}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus-24'} iconSize={20} />}
@@ -92,7 +89,7 @@ function CashFlowAccountsActionsBar({
text={<T id={'import'} />}
/>
<NavbarDivider />
<Can I={Cashflow_Abilities.Edit} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Edit} a={AbilitySubject.Cashflow}>
<Switch
labelElement={<T id={'inactive'} />}
defaultChecked={false}

View File

@@ -16,8 +16,8 @@ import {
Can,
} from '../../../components';
import {
Account_Abilities,
Cashflow_Abilities,
AccountAction,
CashflowAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -228,7 +228,7 @@ function CashflowAccountContextMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewClick)}
/>
<Can I={Cashflow_Abilities.Create} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Create} a={AbilitySubject.Cashflow}>
<MenuDivider />
<MenuItem
text={<T id={'cash_flow_money_in'} />}
@@ -244,7 +244,7 @@ function CashflowAccountContextMenu({
<CashflowAccountMoneyOutContextMenu onClick={onMoneyOutClick} />
</MenuItem>
</Can>
<Can I={Cashflow_Abilities.Edit} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Edit} a={AbilitySubject.Cashflow}>
<MenuDivider />
<MenuItem
@@ -253,7 +253,7 @@ function CashflowAccountContextMenu({
onClick={safeCallback(onEditClick)}
/>
</Can>
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<MenuDivider />
<If condition={account.active}>
<MenuItem
@@ -270,7 +270,7 @@ function CashflowAccountContextMenu({
/>
</If>
</Can>
<Can I={Cashflow_Abilities.Delete} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Delete} a={AbilitySubject.Cashflow}>
<MenuItem
text={intl.get('delete_account')}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -30,10 +30,7 @@ import withCustomersActions from './withCustomersActions';
import withAlertActions from 'containers/Alert/withAlertActions';
import withSettingsActions from '../../Settings/withSettingsActions';
import withSettings from '../../Settings/withSettings';
import {
Customer_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { CustomerAction, AbilitySubject } from '../../../common/abilityOption';
import { compose } from 'utils';
@@ -108,7 +105,7 @@ function CustomerActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Customer_Abilities.Create} a={AbilitySubject.Item}>
<Can I={CustomerAction.Create} a={AbilitySubject.Item}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}
@@ -157,7 +154,7 @@ function CustomerActionsBar({
onChange={handleTableRowSizeChange}
/>
<NavbarDivider />
<Can I={Customer_Abilities.Edit} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Edit} a={AbilitySubject.Customer}>
<Switch
labelElement={<T id={'inactive'} />}
defaultChecked={accountsInactiveMode}

View File

@@ -3,10 +3,7 @@ import { Button, Intent } from '@blueprintjs/core';
import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
AbilitySubject,
Customer_Abilities,
} from '../../../common/abilityOption';
import { AbilitySubject, CustomerAction } from '../../../common/abilityOption';
export default function CustomersEmptyStatus() {
const history = useHistory();
@@ -21,7 +18,7 @@ export default function CustomersEmptyStatus() {
}
action={
<>
<Can I={Customer_Abilities.Create} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Create} a={AbilitySubject.Customer}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -5,10 +5,7 @@ import clsx from 'classnames';
import intl from 'react-intl-universal';
import { Can, Icon, Money, If, AvaterCell } from 'components';
import {
Customer_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { CustomerAction, AbilitySubject } from '../../../common/abilityOption';
import { safeCallback } from 'utils';
@@ -33,7 +30,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Customer_Abilities.Edit} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Edit} a={AbilitySubject.Customer}>
<MenuDivider />
<MenuItem
@@ -42,14 +39,14 @@ export function ActionsMenu({
onClick={safeCallback(onEdit, original)}
/>
</Can>
<Can I={Customer_Abilities.Create} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Create} a={AbilitySubject.Customer}>
<MenuItem
icon={<Icon icon="duplicate-16" />}
text={intl.get('duplicate')}
onClick={safeCallback(onDuplicate, original)}
/>
</Can>
<Can I={Customer_Abilities.Edit} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Edit} a={AbilitySubject.Customer}>
<If condition={original.active}>
<MenuItem
text={intl.get('inactivate_customer')}
@@ -65,7 +62,7 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Customer_Abilities.Delete} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Delete} a={AbilitySubject.Customer}>
<MenuItem
icon={<Icon icon="trash-16" iconSize={16} />}
text={intl.get('delete_customer')}

View File

@@ -14,10 +14,7 @@ import withDialogActions from 'containers/Dialog/withDialogActions';
import withAlertsActions from 'containers/Alert/withAlertActions';
import { safeCallback } from 'utils';
import {
Account_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { AccountAction, AbilitySubject } from '../../../common/abilityOption';
import { compose } from 'utils';
import { useAccountDrawerContext } from './AccountDrawerProvider';
@@ -57,7 +54,7 @@ function AccountDrawerActionBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Account_Abilities.Edit} a={AbilitySubject.Account}>
<Can I={AccountAction.Edit} a={AbilitySubject.Account}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -73,7 +70,7 @@ function AccountDrawerActionBar({
/>
<NavbarDivider />
</Can>
<Can I={Account_Abilities.Delete} a={AbilitySubject.Account}>
<Can I={AccountAction.Delete} a={AbilitySubject.Account}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -18,8 +18,8 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, If, Icon, FormattedMessage as T } from 'components';
import {
Bill_Abilities,
Payment_Made_Abilities,
BillAction,
PaymentMadeAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -58,7 +58,7 @@ function BillDetailActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Bill_Abilities.Edit} a={AbilitySubject.Bill}>
<Can I={BillAction.Edit} a={AbilitySubject.Bill}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -67,10 +67,7 @@ function BillDetailActionsBar({
/>
<NavbarDivider />
</Can>
<Can
I={Payment_Made_Abilities.Create}
a={AbilitySubject.PaymentMade}
>
<Can I={PaymentMadeAction.Create} a={AbilitySubject.PaymentMade}>
<If condition={bill.is_open && !bill.is_fully_paid}>
<Button
className={Classes.MINIMAL}
@@ -81,7 +78,7 @@ function BillDetailActionsBar({
</If>
<NavbarDivider />
</Can>
<Can I={Bill_Abilities.Delete} a={AbilitySubject.Bill}>
<Can I={BillAction.Delete} a={AbilitySubject.Bill}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -6,10 +6,7 @@ import { Can, FormattedMessage as T } from 'components';
import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar';
import { useCashflowTransactionDrawerContext } from './CashflowTransactionDrawerProvider';
import withAlertsActions from 'containers/Alert/withAlertActions';
import {
AbilitySubject,
Cashflow_Abilities,
} from '../../../common/abilityOption';
import { AbilitySubject, CashflowAction } from '../../../common/abilityOption';
import { compose } from 'utils';
/**
@@ -27,7 +24,7 @@ function CashflowTransactionDrawerActionBar({
};
return (
<Can I={Cashflow_Abilities.Delete} a={AbilitySubject.Cashflow}>
<Can I={CashflowAction.Delete} a={AbilitySubject.Cashflow}>
<DashboardActionsBar>
<NavbarGroup>
<Button

View File

@@ -24,11 +24,11 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, Icon, FormattedMessage as T } from 'components';
import {
AbilitySubject,
Invoice_Abilities,
Estimate_Abilities,
Receipt_Abilities,
Payment_Receive_Abilities,
Customer_Abilities,
SaleInvoiceAction,
SaleEstimateAction,
SaleReceiptAction,
PaymentReceiveAction,
CustomerAction,
} from '../../../common/abilityOption';
import { compose } from 'utils';
@@ -81,19 +81,19 @@ function CustomerDetailsActionsBar({
<Popover
content={
<Menu>
<Can I={Invoice_Abilities.Create} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Create} a={AbilitySubject.Invoice}>
<MenuItem
text={<T id={'customer.drawer.action.new_invoice'} />}
onClick={handleNewInvoiceClick}
/>
</Can>
<Can I={Estimate_Abilities.Create} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Create} a={AbilitySubject.Estimate}>
<MenuItem
text={<T id={'customer.drawer.action.new_estimate'} />}
onClick={handleNewEstimateClick}
/>
</Can>
<Can I={Receipt_Abilities.Create} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Create} a={AbilitySubject.Receipt}>
<MenuItem
text={<T id={'customer.drawer.action.new_receipt'} />}
onClick={handleNewReceiptClick}
@@ -101,7 +101,7 @@ function CustomerDetailsActionsBar({
</Can>
<Can
I={Payment_Receive_Abilities.Create}
I={PaymentReceiveAction.Create}
a={AbilitySubject.PaymentReceive}
>
<MenuItem
@@ -123,7 +123,7 @@ function CustomerDetailsActionsBar({
</Popover>
<NavbarDivider />
<Can I={Customer_Abilities.Edit} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Edit} a={AbilitySubject.Customer}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -132,7 +132,7 @@ function CustomerDetailsActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Customer_Abilities.Delete} a={AbilitySubject.Customer}>
<Can I={CustomerAction.Delete} a={AbilitySubject.Customer}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -15,7 +15,7 @@ import withDialogActions from 'containers/Dialog/withDialogActions';
import withAlertsActions from 'containers/Alert/withAlertActions';
import withDrawerActions from 'containers/Drawer/withDrawerActions';
import {
Estimate_Abilities,
SaleEstimateAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -63,7 +63,7 @@ function EstimateDetailActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Estimate_Abilities.Edit} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Edit} a={AbilitySubject.Estimate}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -72,7 +72,7 @@ function EstimateDetailActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Estimate_Abilities.View} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.View} a={AbilitySubject.Estimate}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="print-16" />}
@@ -80,7 +80,7 @@ function EstimateDetailActionsBar({
onClick={handlePrintEstimate}
/>
</Can>
<Can I={Estimate_Abilities.Delete} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Delete} a={AbilitySubject.Estimate}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -9,10 +9,7 @@ import {
NavbarDivider,
} from '@blueprintjs/core';
import { Can, FormattedMessage as T } from 'components';
import {
Expense_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { ExpenseAction, AbilitySubject } from '../../../common/abilityOption';
import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar';
import withAlertsActions from 'containers/Alert/withAlertActions';
import withDrawerActions from 'containers/Drawer/withDrawerActions';
@@ -47,7 +44,7 @@ function ExpenseDrawerActionBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Expense_Abilities.Edit} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Edit} a={AbilitySubject.Expense}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -56,7 +53,7 @@ function ExpenseDrawerActionBar({
/>
<NavbarDivider />
</Can>
<Can I={Expense_Abilities.Delete} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Delete} a={AbilitySubject.Expense}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -9,7 +9,7 @@ import withAlertsActions from 'containers/Alert/withAlertActions';
import { Icon, FormattedMessage as T, Can } from 'components';
import {
Inventory_Adjustment_Abilities,
InventoryAdjustmentAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -31,8 +31,8 @@ function InventoryAdjustmentDetailActionsBar({
return (
<Can
I={Inventory_Adjustment_Abilities.Delete}
a={AbilitySubject.Inventory_Adjustment}
I={InventoryAdjustmentAction.Delete}
a={AbilitySubject.InventoryAdjustment}
>
<DashboardActionsBar>
<NavbarGroup>

View File

@@ -18,8 +18,8 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { If, Can, Icon, FormattedMessage as T } from 'components';
import {
Invoice_Abilities,
Payment_Receive_Abilities,
SaleInvoiceAction,
PaymentReceiveAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -83,7 +83,7 @@ function InvoiceDetailActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Invoice_Abilities.Edit} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Edit} a={AbilitySubject.Invoice}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -93,7 +93,7 @@ function InvoiceDetailActionsBar({
<NavbarDivider />
</Can>
<Can I={Payment_Receive_Abilities.Create} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Create} a={AbilitySubject.PaymentReceive}>
<If condition={invoice.is_delivered && !invoice.is_fully_paid}>
<Button
className={Classes.MINIMAL}
@@ -104,7 +104,7 @@ function InvoiceDetailActionsBar({
</If>
<NavbarDivider />
</Can>
<Can I={Invoice_Abilities.View} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.View} a={AbilitySubject.Invoice}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="print-16" />}
@@ -112,7 +112,7 @@ function InvoiceDetailActionsBar({
onClick={handlePrintInvoice}
/>
</Can>
<Can I={Invoice_Abilities.Delete} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Delete} a={AbilitySubject.Invoice}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}
@@ -122,7 +122,7 @@ function InvoiceDetailActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Invoice_Abilities.BadDebt} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Writeoff} a={AbilitySubject.Invoice}>
<BadDebtMenuItem
payload={{
onBadDebt: handleBadDebtInvoice,

View File

@@ -10,7 +10,7 @@ import {
import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar';
import { useItemDetailDrawerContext } from './ItemDetailDrawerProvider';
import { Item_Abilities, AbilitySubject } from '../../../common/abilityOption';
import { ItemAction, AbilitySubject } from '../../../common/abilityOption';
import withAlertsActions from 'containers/Alert/withAlertActions';
import withDrawerActions from 'containers/Drawer/withDrawerActions';
@@ -48,7 +48,7 @@ function ItemDetailActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Item_Abilities.Edit} a={AbilitySubject.Item}>
<Can I={ItemAction.Edit} a={AbilitySubject.Item}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -58,7 +58,7 @@ function ItemDetailActionsBar({
<NavbarDivider />
</Can>
<Can I={Item_Abilities.Delete} a={AbilitySubject.Item}>
<Can I={ItemAction.Delete} a={AbilitySubject.Item}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -16,7 +16,7 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { useManualJournalDrawerContext } from './ManualJournalDrawerProvider';
import {
Manual_Journal_Abilities,
ManualJournalAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -49,7 +49,7 @@ function ManualJournalDrawerActionBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Manual_Journal_Abilities.Edit} a={AbilitySubject.ManualJournal}>
<Can I={ManualJournalAction.Edit} a={AbilitySubject.ManualJournal}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -58,10 +58,7 @@ function ManualJournalDrawerActionBar({
/>
<NavbarDivider />
</Can>
<Can
I={Manual_Journal_Abilities.Delete}
a={AbilitySubject.ManualJournal}
>
<Can I={ManualJournalAction.Delete} a={AbilitySubject.ManualJournal}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -18,7 +18,7 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, Icon, FormattedMessage as T } from 'components';
import {
Payment_Made_Abilities,
PaymentMadeAction,
AbilitySubject,
} from '../../../common/abilityOption';
import { compose } from 'utils';
@@ -51,7 +51,7 @@ function PaymentMadeDetailActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Payment_Made_Abilities.Edit} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Edit} a={AbilitySubject.PaymentMade}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -60,7 +60,7 @@ function PaymentMadeDetailActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Payment_Made_Abilities.Delete} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Delete} a={AbilitySubject.PaymentMade}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -17,7 +17,10 @@ import withAlertsActions from 'containers/Alert/withAlertActions';
import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, Icon, FormattedMessage as T, MoreMenuItems } from 'components';
import { Payment_Receive_Abilities, AbilitySubject } from '../../../common/abilityOption';
import {
PaymentReceiveAction,
AbilitySubject,
} from '../../../common/abilityOption';
import { compose } from 'utils';
@@ -58,7 +61,7 @@ function PaymentReceiveActionsBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Payment_Receive_Abilities.Edit} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Edit} a={AbilitySubject.PaymentReceive}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -67,7 +70,7 @@ function PaymentReceiveActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Payment_Receive_Abilities.Delete} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Delete} a={AbilitySubject.PaymentReceive}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -17,7 +17,7 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, Icon, FormattedMessage as T, MoreMenuItems } from 'components';
import { useReceiptDetailDrawerContext } from './ReceiptDetailDrawerProvider';
import {
Receipt_Abilities,
SaleReceiptAction,
AbilitySubject,
} from '../../../common/abilityOption';
@@ -58,7 +58,7 @@ function ReceiptDetailActionBar({
return (
<DashboardActionsBar>
<NavbarGroup>
<Can I={Receipt_Abilities.Edit} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Edit} a={AbilitySubject.Receipt}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -67,7 +67,7 @@ function ReceiptDetailActionBar({
/>
<NavbarDivider />
</Can>
<Can I={Receipt_Abilities.View} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.View} a={AbilitySubject.Receipt}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="print-16" />}
@@ -75,7 +75,7 @@ function ReceiptDetailActionBar({
onClick={safeCallback(onPrintReceipt)}
/>
</Can>
<Can I={Receipt_Abilities.Delete} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Delete} a={AbilitySubject.Receipt}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -23,9 +23,9 @@ import withDrawerActions from 'containers/Drawer/withDrawerActions';
import { Can, Icon, FormattedMessage as T } from 'components';
import {
AbilitySubject,
Invoice_Abilities,
Payment_Made_Abilities,
Vendor_Abilities,
SaleInvoiceAction,
PaymentMadeAction,
VendorAction,
} from '../../../common/abilityOption';
import { safeCallback, compose } from 'utils';
@@ -69,16 +69,13 @@ function VendorDetailsActionsBar({
<Popover
content={
<Menu>
<Can I={Invoice_Abilities.Create} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Create} a={AbilitySubject.Invoice}>
<MenuItem
text={<T id={'vendor.drawer.action.new_invoice'} />}
onClick={handleNewInvoiceClick}
/>
</Can>
<Can
I={Payment_Made_Abilities.Create}
a={AbilitySubject.PaymentMade}
>
<Can I={PaymentMadeAction.Create} a={AbilitySubject.PaymentMade}>
<MenuItem
text={<T id={'vendor.drawer.action.new_payment'} />}
onClick={handleNewPaymentClick}
@@ -97,7 +94,7 @@ function VendorDetailsActionsBar({
/>
</Popover>
<NavbarDivider />
<Can I={Vendor_Abilities.Edit} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Edit} a={AbilitySubject.Vendor}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="pen-18" />}
@@ -106,7 +103,7 @@ function VendorDetailsActionsBar({
/>
<NavbarDivider />
</Can>
<Can I={Vendor_Abilities.Delete} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Delete} a={AbilitySubject.Vendor}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'trash-16'} iconSize={16} />}

View File

@@ -23,10 +23,7 @@ import {
FormattedMessage as T,
} from 'components';
import {
Expense_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { ExpenseAction, AbilitySubject } from '../../../common/abilityOption';
import { useRefreshExpenses } from 'hooks/query/expenses';
import { useExpensesListContext } from './ExpensesListProvider';
@@ -97,7 +94,7 @@ function ExpensesActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Expense_Abilities.Create} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Create} a={AbilitySubject.Expense}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="plus" />}

View File

@@ -3,10 +3,7 @@ import { Button, Intent } from '@blueprintjs/core';
import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
AbilitySubject,
Expense_Abilities,
} from '../../../common/abilityOption';
import { AbilitySubject, ExpenseAction } from '../../../common/abilityOption';
export default function InvoicesEmptyStatus() {
const history = useHistory();
@@ -21,7 +18,7 @@ export default function InvoicesEmptyStatus() {
}
action={
<>
<Can I={Expense_Abilities.Create} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Create} a={AbilitySubject.Expense}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -12,10 +12,7 @@ import {
MenuDivider,
} from '@blueprintjs/core';
import intl from 'react-intl-universal';
import {
Expense_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { ExpenseAction, AbilitySubject } from '../../../common/abilityOption';
import {
FormatDateCell,
FormattedMessage as T,
@@ -58,7 +55,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Expense_Abilities.Edit} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Edit} a={AbilitySubject.Expense}>
<MenuDivider />
<If condition={!original.is_published}>
<MenuItem
@@ -68,14 +65,14 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Expense_Abilities.Edit} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Edit} a={AbilitySubject.Expense}>
<MenuItem
icon={<Icon icon="pen-18" />}
text={intl.get('edit_expense')}
onClick={safeCallback(onEdit, original)}
/>
</Can>
<Can I={Expense_Abilities.Delete} a={AbilitySubject.Expense}>
<Can I={ExpenseAction.Delete} a={AbilitySubject.Expense}>
<MenuItem
icon={<Icon icon="trash-16" iconSize={16} />}
text={intl.get('delete_expense')}

View File

@@ -17,7 +17,7 @@ import { isNumber } from 'lodash';
import { Icon, Money, If } from 'components';
import { isBlank, safeCallback } from 'utils';
import {
Inventory_Adjustment_Abilities,
InventoryAdjustmentAction,
AbilitySubject,
} from '../../common/abilityOption';
@@ -108,8 +108,8 @@ export const ActionsMenu = ({
/>
<Can
I={Inventory_Adjustment_Abilities.Create}
a={AbilitySubject.Inventory_Adjustment}
I={InventoryAdjustmentAction.Create}
a={AbilitySubject.InventoryAdjustment}
>
<MenuDivider />
<If condition={!original.is_published}>
@@ -121,8 +121,8 @@ export const ActionsMenu = ({
</If>
</Can>
<Can
I={Inventory_Adjustment_Abilities.Delete}
a={AbilitySubject.Inventory_Adjustment}
I={InventoryAdjustmentAction.Delete}
a={AbilitySubject.InventoryAdjustment}
>
<MenuItem
text={intl.get('delete_adjustment')}

View File

@@ -31,7 +31,7 @@ import withSettings from '../Settings/withSettings';
import { compose } from 'utils';
import withSettingsActions from '../Settings/withSettingsActions';
import { Item_Abilities, AbilitySubject } from '../../common/abilityOption';
import { ItemAction, AbilitySubject } from '../../common/abilityOption';
/**
* Items actions bar.
@@ -104,7 +104,7 @@ function ItemsActionsBar({
/>
<NavbarDivider />
<Can I={Item_Abilities.Create} a={AbilitySubject.Item}>
<Can I={ItemAction.Create} a={AbilitySubject.Item}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon="plus" />}
@@ -153,7 +153,7 @@ function ItemsActionsBar({
onChange={handleTableRowSizeChange}
/>
<NavbarDivider />
<Can I={Item_Abilities.Edit} a={AbilitySubject.Item}>
<Can I={ItemAction.Edit} a={AbilitySubject.Item}>
<Switch
labelElement={<T id={'inactive'} />}
defaultChecked={itemsInactiveMode}

View File

@@ -3,7 +3,7 @@ import { Button, Intent } from '@blueprintjs/core';
import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import { Item_Abilities, AbilitySubject } from '../../common/abilityOption';
import { ItemAction, AbilitySubject } from '../../common/abilityOption';
export default function ItemsEmptyStatus() {
const history = useHistory();
@@ -18,7 +18,7 @@ export default function ItemsEmptyStatus() {
}
action={
<>
<Can I={Item_Abilities.Create} a={AbilitySubject.Item}>
<Can I={ItemAction.Create} a={AbilitySubject.Item}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -16,8 +16,8 @@ import { FormattedMessage as T, Icon, Money, If, Can } from 'components';
import { isBlank, safeCallback } from 'utils';
import {
AbilitySubject,
Item_Abilities,
Inventory_Adjustment_Abilities,
ItemAction,
InventoryAdjustmentAction,
} from '../../common/abilityOption';
/**
@@ -95,7 +95,7 @@ export function ItemsActionMenuList({
text={<T id={'view_details'} />}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Item_Abilities.Edit} a={AbilitySubject.Item}>
<Can I={ItemAction.Edit} a={AbilitySubject.Item}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -103,14 +103,14 @@ export function ItemsActionMenuList({
onClick={safeCallback(onEditItem, original)}
/>
</Can>
<Can I={Item_Abilities.Create} a={AbilitySubject.Item}>
<Can I={ItemAction.Create} a={AbilitySubject.Item}>
<MenuItem
icon={<Icon icon="duplicate-16" />}
text={intl.get('duplicate')}
onClick={safeCallback(onDuplicate, original)}
/>
</Can>
<Can I={Item_Abilities.Edit} a={AbilitySubject.Item}>
<Can I={ItemAction.Edit} a={AbilitySubject.Item}>
<If condition={original.active}>
<MenuItem
text={intl.get('inactivate_item')}
@@ -128,8 +128,8 @@ export function ItemsActionMenuList({
</If>
</Can>
<Can
I={Inventory_Adjustment_Abilities.Edit}
a={AbilitySubject.Inventory_Adjustment}
I={InventoryAdjustmentAction.Edit}
a={AbilitySubject.InventoryAdjustment}
>
<If condition={original.type === 'inventory'}>
<MenuItem
@@ -139,7 +139,7 @@ export function ItemsActionMenuList({
/>
</If>
</Can>
<Can I={Item_Abilities.Delete} a={AbilitySubject.Item}>
<Can I={ItemAction.Delete} a={AbilitySubject.Item}>
<MenuItem
text={intl.get('delete_item')}
icon={<Icon icon="trash-16" iconSize={16} />}

View File

@@ -21,7 +21,7 @@ import {
AdvancedFilterPopover,
DashboardRowsHeightButton,
} from 'components';
import { Bill_Abilities, AbilitySubject } from '../../../../common/abilityOption';
import { BillAction, AbilitySubject } from '../../../../common/abilityOption';
import withBillsActions from './withBillsActions';
import withBills from './withBills';
@@ -88,7 +88,7 @@ function BillActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Bill_Abilities.Create} a={AbilitySubject.Bill}>
<Can I={BillAction.Create} a={AbilitySubject.Bill}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -3,10 +3,7 @@ import { Button, Intent } from '@blueprintjs/core';
import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Bill_Abilities,
AbilitySubject,
} from '../../../../common/abilityOption';
import { BillAction, AbilitySubject } from '../../../../common/abilityOption';
export default function BillsEmptyStatus() {
const history = useHistory();
@@ -21,7 +18,7 @@ export default function BillsEmptyStatus() {
}
action={
<>
<Can I={Bill_Abilities.Create} a={AbilitySubject.Bill}>
<Can I={BillAction.Create} a={AbilitySubject.Bill}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -20,8 +20,8 @@ import {
} from 'components';
import { formattedAmount, safeCallback, isBlank, calculateStatus } from 'utils';
import {
Bill_Abilities,
Payment_Made_Abilities,
BillAction,
PaymentMadeAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -46,7 +46,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Bill_Abilities.Edit} a={AbilitySubject.Bill}>
<Can I={BillAction.Edit} a={AbilitySubject.Bill}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -62,7 +62,7 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Payment_Made_Abilities.Create} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Create} a={AbilitySubject.PaymentMade}>
<If condition={original.is_open && !original.is_fully_paid}>
<MenuItem
icon={<Icon icon="quick-payment-16" iconSize={16} />}
@@ -76,7 +76,7 @@ export function ActionsMenu({
text={intl.get('allocate_landed_coast')}
onClick={safeCallback(onAllocateLandedCost, original)}
/>
<Can I={Bill_Abilities.Delete} a={AbilitySubject.Bill}>
<Can I={BillAction.Delete} a={AbilitySubject.Bill}>
<MenuItem
text={intl.get('delete_bill')}
intent={Intent.DANGER}

View File

@@ -31,7 +31,7 @@ import withSettings from 'containers/Settings/withSettings';
import { usePaymentMadesListContext } from './PaymentMadesListProvider';
import { useRefreshPaymentMades } from 'hooks/query/paymentMades';
import {
Payment_Made_Abilities,
PaymentMadeAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -90,7 +90,7 @@ function PaymentMadeActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Payment_Made_Abilities.Create} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Create} a={AbilitySubject.PaymentMade}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -4,7 +4,7 @@ import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Payment_Made_Abilities,
PaymentMadeAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -21,7 +21,7 @@ export default function PaymentMadesEmptyStatus() {
}
action={
<>
<Can I={Payment_Made_Abilities.Create} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Create} a={AbilitySubject.PaymentMade}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -12,7 +12,7 @@ import intl from 'react-intl-universal';
import { Icon, Money, FormatDateCell, Can } from 'components';
import {
Payment_Made_Abilities,
PaymentMadeAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -37,7 +37,7 @@ export function ActionsMenu({
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Payment_Made_Abilities.Edit} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Edit} a={AbilitySubject.PaymentMade}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -45,7 +45,7 @@ export function ActionsMenu({
onClick={safeCallback(onEdit, original)}
/>
</Can>
<Can I={Payment_Made_Abilities.Delete} a={AbilitySubject.PaymentMade}>
<Can I={PaymentMadeAction.Delete} a={AbilitySubject.PaymentMade}>
<MenuItem
text={intl.get('delete_payment_made')}
intent={Intent.DANGER}

View File

@@ -30,7 +30,7 @@ import withSettings from 'containers/Settings/withSettings';
import { useEstimatesListContext } from './EstimatesListProvider';
import { useRefreshEstimates } from 'hooks/query/estimates';
import {
Estimate_Abilities,
SaleEstimateAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -92,7 +92,7 @@ function EstimateActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Estimate_Abilities.Create} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Create} a={AbilitySubject.Estimate}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -4,7 +4,7 @@ import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Estimate_Abilities,
SaleEstimateAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -20,7 +20,7 @@ export default function EstimatesEmptyStatus() {
}
action={
<>
<Can I={Estimate_Abilities.Create} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Create} a={AbilitySubject.Estimate}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -3,7 +3,7 @@ import { Intent, Tag, Menu, MenuItem, MenuDivider } from '@blueprintjs/core';
import intl from 'react-intl-universal';
import clsx from 'classnames';
import {
Estimate_Abilities,
SaleEstimateAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -73,7 +73,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Estimate_Abilities.Edit} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Edit} a={AbilitySubject.Estimate}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -126,14 +126,14 @@ export function ActionsMenu({
</Choose.When>
</Choose>
</Can>
<Can I={Estimate_Abilities.View} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.View} a={AbilitySubject.Estimate}>
<MenuItem
icon={<Icon icon={'print-16'} iconSize={16} />}
text={intl.get('print')}
onClick={safeCallback(onPrint, original)}
/>
</Can>
<Can I={Estimate_Abilities.Delete} a={AbilitySubject.Estimate}>
<Can I={SaleEstimateAction.Delete} a={AbilitySubject.Estimate}>
<MenuItem
text={intl.get('delete_estimate')}
intent={Intent.DANGER}

View File

@@ -20,7 +20,7 @@ import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar';
import { Can, If, DashboardActionViewsList } from 'components';
import {
Invoice_Abilities,
SaleInvoiceAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -88,7 +88,7 @@ function InvoiceActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Invoice_Abilities.Create} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Create} a={AbilitySubject.Invoice}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -4,7 +4,7 @@ import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Invoice_Abilities,
SaleInvoiceAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -21,7 +21,7 @@ export default function EstimatesEmptyStatus() {
}
action={
<>
<Can I={Invoice_Abilities.Create} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Create} a={AbilitySubject.Invoice}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -22,8 +22,8 @@ import {
} from 'components';
import { formattedAmount, safeCallback, calculateStatus } from 'utils';
import {
Invoice_Abilities,
Payment_Receive_Abilities,
SaleInvoiceAction,
PaymentReceiveAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -120,7 +120,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Invoice_Abilities.Edit} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Edit} a={AbilitySubject.Invoice}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -136,7 +136,7 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Payment_Receive_Abilities.Create} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Create} a={AbilitySubject.PaymentReceive}>
<If condition={original.is_delivered && !original.is_fully_paid}>
<MenuItem
icon={<Icon icon="quick-payment-16" iconSize={16} />}
@@ -145,14 +145,14 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Invoice_Abilities.View} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.View} a={AbilitySubject.Invoice}>
<MenuItem
icon={<Icon icon={'print-16'} iconSize={16} />}
text={intl.get('print')}
onClick={safeCallback(onPrint, original)}
/>
</Can>
<Can I={Invoice_Abilities.Delete} a={AbilitySubject.Invoice}>
<Can I={SaleInvoiceAction.Delete} a={AbilitySubject.Invoice}>
<MenuItem
text={intl.get('delete_invoice')}
intent={Intent.DANGER}

View File

@@ -27,7 +27,7 @@ import withPaymentReceives from './withPaymentReceives';
import withSettingsActions from 'containers/Settings/withSettingsActions';
import withSettings from 'containers/Settings/withSettings';
import {
Payment_Receive_Abilities,
PaymentReceiveAction,
AbilitySubject,
} from '../../../../common/abilityOption';
import { compose } from 'utils';
@@ -88,7 +88,7 @@ function PaymentReceiveActionsBar({
onChange={handleTabChange}
/>
<NavbarDivider />
<Can I={Payment_Receive_Abilities.Create} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Create} a={AbilitySubject.PaymentReceive}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -4,7 +4,7 @@ import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Payment_Receive_Abilities,
PaymentReceiveAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -24,7 +24,7 @@ export default function PaymentReceivesEmptyStatus() {
action={
<>
<Can
I={Payment_Receive_Abilities.Create}
I={PaymentReceiveAction.Create}
a={AbilitySubject.PaymentReceive}
>
<Button

View File

@@ -15,7 +15,7 @@ import { FormatDateCell, Money, Icon, Can } from 'components';
import { safeCallback } from 'utils';
import { CLASSES } from '../../../../common/classes';
import {
Payment_Receive_Abilities,
PaymentReceiveAction,
AbilitySubject,
} from '../../../../common/abilityOption';
/**
@@ -32,7 +32,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, paymentReceive)}
/>
<Can I={Payment_Receive_Abilities.Edit} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Edit} a={AbilitySubject.PaymentReceive}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -40,7 +40,7 @@ export function ActionsMenu({
onClick={safeCallback(onEdit, paymentReceive)}
/>
</Can>
<Can I={Payment_Receive_Abilities.Delete} a={AbilitySubject.PaymentReceive}>
<Can I={PaymentReceiveAction.Delete} a={AbilitySubject.PaymentReceive}>
<MenuItem
text={intl.get('delete_payment_receive')}
intent={Intent.DANGER}

View File

@@ -29,7 +29,7 @@ import withSettings from 'containers/Settings/withSettings';
import { useReceiptsListContext } from './ReceiptsListProvider';
import { useRefreshReceipts } from 'hooks/query/receipts';
import {
Receipt_Abilities,
SaleReceiptAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -92,7 +92,7 @@ function ReceiptActionsBar({
/>
<NavbarDivider />
<Can I={Receipt_Abilities.Create} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Create} a={AbilitySubject.Receipt}>
<Button
className={Classes.MINIMAL}
icon={<Icon icon={'plus'} />}

View File

@@ -4,7 +4,7 @@ import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Receipt_Abilities,
SaleReceiptAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -21,7 +21,7 @@ export default function ReceiptsEmptyStatus() {
}
action={
<>
<Can I={Receipt_Abilities.Create} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Create} a={AbilitySubject.Receipt}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -17,7 +17,7 @@ import { CLASSES } from '../../../../common/classes';
import { safeCallback } from 'utils';
import { FormatDateCell, Choose, Money, Icon, If, Can } from 'components';
import {
Receipt_Abilities,
SaleReceiptAction,
AbilitySubject,
} from '../../../../common/abilityOption';
@@ -32,7 +32,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, receipt)}
/>
<Can I={Receipt_Abilities.Edit} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Edit} a={AbilitySubject.Receipt}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -48,14 +48,14 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Receipt_Abilities.View} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.View} a={AbilitySubject.Receipt}>
<MenuItem
icon={<Icon icon={'print-16'} iconSize={16} />}
text={intl.get('print')}
onClick={safeCallback(onPrint, receipt)}
/>
</Can>
<Can I={Receipt_Abilities.Delete} a={AbilitySubject.Receipt}>
<Can I={SaleReceiptAction.Delete} a={AbilitySubject.Receipt}>
<MenuItem
text={intl.get('delete_receipt')}
intent={Intent.DANGER}

View File

@@ -30,10 +30,7 @@ import withVendors from './withVendors';
import withSettingsActions from '../../Settings/withSettingsActions';
import withSettings from '../../Settings/withSettings';
import {
Vendor_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { VendorAction, AbilitySubject } from '../../../common/abilityOption';
import { compose } from 'utils';
/**
@@ -142,7 +139,7 @@ function VendorActionsBar({
onChange={handleTableRowSizeChange}
/>
<NavbarDivider />
<Can I={Vendor_Abilities.Edit} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Edit} a={AbilitySubject.Vendor}>
<Switch
labelElement={<T id={'inactive'} />}
defaultChecked={vendorsInactiveMode}

View File

@@ -3,10 +3,7 @@ import { Button, Intent } from '@blueprintjs/core';
import { useHistory } from 'react-router-dom';
import { EmptyStatus } from 'components';
import { Can, FormattedMessage as T } from 'components';
import {
Vendor_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { VendorAction, AbilitySubject } from '../../../common/abilityOption';
export default function VendorsEmptyStatus() {
const history = useHistory();
@@ -21,7 +18,7 @@ export default function VendorsEmptyStatus() {
}
action={
<>
<Can I={Vendor_Abilities.Create} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Create} a={AbilitySubject.Vendor}>
<Button
intent={Intent.PRIMARY}
large={true}

View File

@@ -11,10 +11,7 @@ import {
import intl from 'react-intl-universal';
import { Can, Icon, Money, If, AvaterCell } from 'components';
import {
Vendor_Abilities,
AbilitySubject,
} from '../../../common/abilityOption';
import { VendorAction, AbilitySubject } from '../../../common/abilityOption';
import { safeCallback, firstLettersArgs } from 'utils';
/**
@@ -38,7 +35,7 @@ export function ActionsMenu({
text={intl.get('view_details')}
onClick={safeCallback(onViewDetails, original)}
/>
<Can I={Vendor_Abilities.Edit} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Edit} a={AbilitySubject.Vendor}>
<MenuDivider />
<MenuItem
icon={<Icon icon="pen-18" />}
@@ -46,14 +43,14 @@ export function ActionsMenu({
onClick={safeCallback(onEdit, original)}
/>
</Can>
<Can I={Vendor_Abilities.Create} a={AbilitySubject.Customer}>
<Can I={VendorAction.Create} a={AbilitySubject.Customer}>
<MenuItem
icon={<Icon icon="duplicate-16" />}
text={intl.get('duplicate')}
onClick={safeCallback(onDuplicate, original)}
/>
</Can>
<Can I={Vendor_Abilities.Edit} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Edit} a={AbilitySubject.Vendor}>
<If condition={original.active}>
<MenuItem
text={intl.get('inactivate_item')}
@@ -69,7 +66,7 @@ export function ActionsMenu({
/>
</If>
</Can>
<Can I={Vendor_Abilities.Delete} a={AbilitySubject.Vendor}>
<Can I={VendorAction.Delete} a={AbilitySubject.Vendor}>
<MenuItem
icon={<Icon icon="trash-16" iconSize={16} />}
text={intl.get('delete_vendor')}