fix: Abilities keys.

This commit is contained in:
elforjani13
2021-11-26 20:56:00 +02:00
parent ca3ff3fd8f
commit 63cb3f9fef
58 changed files with 443 additions and 494 deletions

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')}