feat: view details.

This commit is contained in:
elforjani3
2021-07-29 23:18:40 +02:00
parent 720dc5b7d7
commit e04ba7e030
31 changed files with 522 additions and 34 deletions

View File

@@ -0,0 +1,23 @@
import React from 'react';
import { Tabs, Tab } from '@blueprintjs/core';
import intl from 'react-intl-universal';
import JournalEntriesTable from '../../JournalEntriesTable/JournalEntriesTable';
/**
* Receipt view detail.
*/
export default function ReceiptDetail() {
return (
<div className="view-detail-drawer">
<Tabs animate={true} large={true} defaultSelectedTabId="journal_entries">
<Tab title={intl.get('details')} id={'details'} disabled={true} />
<Tab
title={intl.get('journal_entries')}
id={'journal_entries'}
panel={<JournalEntriesTable journal={[]} />}
/>
</Tabs>
</div>
);
}

View File

@@ -0,0 +1,20 @@
import React from 'react';
import 'style/components/Drawers/ViewDetail/ViewDetail.scss';
import ReceiptDetail from './ReceiptDetail';
import { ReceiptDetailDrawerProvider } from './ReceiptDetailDrawerProvider';
/**
* Receipt detail drawer content.
*/
export default function ReceiptDetailDrawerContent({
// #ownProp
receipt,
}) {
return (
<ReceiptDetailDrawerProvider receiptId={receipt}>
<ReceiptDetail />
</ReceiptDetailDrawerProvider>
);
}

View File

@@ -0,0 +1,27 @@
import React from 'react';
import intl from 'react-intl-universal';
import { DrawerHeaderContent, DashboardInsider } from 'components';
const ReceiptDetailDrawerContext = React.createContext();
/**
* Receipt detail provider.
*/
function ReceiptDetailDrawerProvider({ receiptId, ...props }) {
//provider.
const provider = {};
return (
<DashboardInsider>
<DrawerHeaderContent
name="receipt-detail-drawer"
title={intl.get('receipt_details')}
/>
<ReceiptDetailDrawerContext.Provider value={provider} {...props} />
</DashboardInsider>
);
}
const useReceiptDetailDrawerContext = () =>
React.useContext(ReceiptDetailDrawerContext);
export { ReceiptDetailDrawerProvider, useReceiptDetailDrawerContext };

View File

@@ -0,0 +1,29 @@
import React from 'react';
import { Drawer, DrawerSuspense } from 'components';
import withDrawers from 'containers/Drawer/withDrawers';
import { compose } from 'utils';
const ReceiptDetailDrawerContent = React.lazy(() =>
import('./ReceiptDetailDrawerContent'),
);
/**
* Receipt Detail drawer.
*/
function ReceiptDetailDrawer({
name,
// #withDrawer
isOpen,
payload: { receiptId },
}) {
return (
<Drawer isOpen={isOpen} name={name} size={'750px'}>
<DrawerSuspense>
<ReceiptDetailDrawerContent receipt={receiptId} />
</DrawerSuspense>
</Drawer>
);
}
export default compose(withDrawers())(ReceiptDetailDrawer);