import { Box, Group, Stack } from '@/components'; import { PaperTemplate, PaperTemplateProps, } from '../../Invoices/InvoiceCustomize/PaperTemplate'; import { DefaultPdfTemplateTerms, DefaultPdfTemplateItemDescription, DefaultPdfTemplateStatement, DefaultPdfTemplateItemName, DefaultPdfTemplateAddressBilledTo, DefaultPdfTemplateAddressBilledFrom, } from '@/constants/PdfTemplates'; export interface ReceiptPaperTemplateProps extends PaperTemplateProps { // # Company logo showCompanyLogo?: boolean; companyLogoUri?: string; // # Company name companyName?: string; // Addresses showCustomerAddress?: boolean; customerAddress?: string; showCompanyAddress?: boolean; companyAddress?: string; billedToLabel?: string; // Total total?: string; showTotal?: boolean; totalLabel?: string; // Subtotal subtotal?: string; showSubtotal?: boolean; subtotalLabel?: string; // Customer Note showCustomerNote?: boolean; customerNote?: string; customerNoteLabel?: string; // Terms & Conditions showTermsConditions?: boolean; termsConditions?: string; termsConditionsLabel?: string; // Lines lines?: Array<{ item: string; description: string; rate: string; quantity: string; total: string; }>; // Receipt Date. receiptDateLabel?: string; showReceiptDate?: boolean; receiptDate?: string; // Receipt Number receiptNumebr?: string; receiptNumberLabel?: string; showReceiptNumber?: boolean; } export function ReceiptPaperTemplate({ // # Colors primaryColor, secondaryColor, // # Company logo showCompanyLogo = true, companyLogoUri, // # Company name companyName = 'Bigcapital Technology, Inc.', // # Address showCustomerAddress = true, customerAddress = DefaultPdfTemplateAddressBilledTo, showCompanyAddress = true, companyAddress = DefaultPdfTemplateAddressBilledFrom, billedToLabel = 'Billed To', total = '$1000.00', totalLabel = 'Total', showTotal = true, subtotal = '1000/00', subtotalLabel = 'Subtotal', showSubtotal = true, showCustomerNote = true, customerNoteLabel = 'Customer Note', customerNote = DefaultPdfTemplateStatement, showTermsConditions = true, termsConditionsLabel = 'Terms & Conditions', termsConditions = DefaultPdfTemplateTerms, lines = [ { item: DefaultPdfTemplateItemName, description: DefaultPdfTemplateItemDescription, rate: '1', quantity: '1000', total: '$1000.00', }, ], showReceiptNumber = true, receiptNumberLabel = 'Receipt Number', receiptNumebr = '346D3D40-0001', receiptDate = 'September 3, 2024', showReceiptDate = true, receiptDateLabel = 'Receipt Date', }: ReceiptPaperTemplateProps) { return ( {showReceiptNumber && ( {receiptNumebr} )} {showReceiptDate && ( {receiptDate} )} {companyLogoUri && showCompanyLogo && ( )} {showCompanyAddress && ( )} {showCustomerAddress && ( {billedToLabel} )} {showSubtotal && ( )} {showTotal && ( )} {showCustomerNote && ( {customerNote} )} {showTermsConditions && ( {termsConditions} )} ); }