Files
actual/packages/desktop-client/src/components/modals/EnvelopeToBudgetMenuModal.tsx
Matiss Janis Aboltins bf1d220ced [AI] Lint: fix typescript/unbound-method problems (#7163)
* [AI] Refactor modal components and server modules

Made-with: Cursor

* Release notes
2026-03-10 18:06:50 +00:00

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