import React from 'react';
import clsx from 'classnames';
import { Intent } from '@blueprintjs/core';
import styled from 'styled-components';
import * as R from 'ramda';
import { Alert, ButtonLink } from 'components';
import { TransactionsLockingProvider } from './TransactionsLockingProvider';
import {
TransactionLockingContent,
TransactionLockingItemLoading,
} from './components';
import { useTransactionsLockingContext } from './TransactionsLockingProvider';
import withDialogActions from 'containers/Dialog/withDialogActions';
function Paragraph({ className, children }) {
return
{children}
;
}
function TransactionsLockingList({ items, onlock, onUnlock, onUnlockPartial }) {
return items.map(({ is_enabled, formatted_module, description }) => (
));
}
function TransactionsLockingFull({ onLock, onUnlock, onUnlockPartial }) {
const {
transactionsLocking: { all },
} = useTransactionsLockingContext();
return (
);
}
function TransactionLockingSkeletonList() {
return (
<>
>
);
}
function TransactionsLockingAlert() {
const { transactionLockingType, setTransactionLockingType } =
useTransactionsLockingContext();
// Handle all lock link click.
const handleAllLockClick = () => {
setTransactionLockingType('all');
};
const handleUndividualLockClick = () => {
setTransactionLockingType('partial');
};
return transactionLockingType !== 'all' ? (
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua.
Lock All Transactions At Once →
) : (
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua.
Lock Modules Individually →
);
}
function TransactionsLockingBodyJsx({
// #withDialogActions
openDialog,
}) {
const {
transactionsLocking: { modules },
isTransactionLockingLoading,
transactionLockingType,
} = useTransactionsLockingContext();
// Handle locking transactions.
const handleLockingTransactions = () => {
openDialog('locking-transactions', {});
};
// Handle unlocking transactions
const handleUnlockTransactions = () => {
openDialog('unlocking-transactions', {});
};
// Handle unlocking transactions
const handleUnlockingPartial = () => {
openDialog('unlocking-partial-transactions', {});
};
return !isTransactionLockingLoading ? (
transactionLockingType === 'partial' ? (
) : (
)
) : (
);
}
const TransactionsLockingBody = R.compose(withDialogActions)(
TransactionsLockingBodyJsx,
);
/**
* Transactions locking list.
*/
export default function TransactionsLockingListPage() {
return (
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem
ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua.
);
}
const TransactionsLocking = styled.div`
display: flex;
flex-direction: column;
padding: 32px 40px;
max-width: 800px;
`;
const TransactionsLockingParagraph = styled(Paragraph)`
margin-bottom: 25px;
`;
const TransLockingDesc = styled.p``;
const LockAllAlert = styled(Alert)`
margin-bottom: 0;
margin-top: 20px;
background: transparent;
`;