mirror of
https://github.com/actualbudget/actual.git
synced 2026-04-29 11:04:12 -05:00
57 lines
1.5 KiB
TypeScript
57 lines
1.5 KiB
TypeScript
import React from 'react';
|
|
import type { CSSProperties } from 'react';
|
|
|
|
import { styles } from '@actual-app/components/styles';
|
|
import { theme } from '@actual-app/components/theme';
|
|
|
|
import { ToBudgetMenu } from '@desktop-client/components/budget/envelope/budgetsummary/ToBudgetMenu';
|
|
import {
|
|
Modal,
|
|
ModalCloseButton,
|
|
ModalHeader,
|
|
} from '@desktop-client/components/common/Modal';
|
|
import type { Modal as ModalType } from '@desktop-client/modals/modalsSlice';
|
|
|
|
type EnvelopeToBudgetMenuModalProps = Extract<
|
|
ModalType,
|
|
{ name: 'envelope-summary-to-budget-menu' }
|
|
>['options'];
|
|
|
|
export function EnvelopeToBudgetMenuModal({
|
|
onTransfer,
|
|
onCover,
|
|
onHoldBuffer,
|
|
onResetHoldBuffer,
|
|
onBudgetAction,
|
|
month,
|
|
}: EnvelopeToBudgetMenuModalProps) {
|
|
const defaultMenuItemStyle: CSSProperties = {
|
|
...styles.mobileMenuItem,
|
|
color: theme.menuItemText,
|
|
borderRadius: 0,
|
|
borderTop: `1px solid ${theme.pillBorder}`,
|
|
};
|
|
|
|
return (
|
|
<Modal name="envelope-summary-to-budget-menu">
|
|
{({ state }) => (
|
|
<>
|
|
<ModalHeader
|
|
showLogo
|
|
rightContent={<ModalCloseButton onPress={() => state.close()} />}
|
|
/>
|
|
<ToBudgetMenu
|
|
getItemStyle={() => defaultMenuItemStyle}
|
|
onTransfer={onTransfer}
|
|
onCover={onCover}
|
|
onHoldBuffer={onHoldBuffer}
|
|
onResetHoldBuffer={onResetHoldBuffer}
|
|
onBudgetAction={onBudgetAction}
|
|
month={month}
|
|
/>
|
|
</>
|
|
)}
|
|
</Modal>
|
|
);
|
|
}
|