feat: implement US-1 - add print button to MonthCard with i18n support

- Add PrintButton component with card styling matching AddLocationButton
- Integrate print button next to "Add a new realestate" with centered layout
- Add English/Croatian translations for print tooltips and labels
- Implement click handler to open print preview in new tab
- Create Sprint Playbook for barcode print functionality

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-09-14 09:08:40 +02:00
parent d8c3ad7228
commit ecea10e805
5 changed files with 239 additions and 3 deletions

32
app/ui/PrintButton.tsx Normal file
View File

@@ -0,0 +1,32 @@
"use client";
import { PrinterIcon } from '@heroicons/react/24/outline';
import { useTranslations } from 'next-intl';
import { YearMonth } from '../lib/db-types';
export interface PrintButtonProps {
yearMonth: YearMonth;
}
export const PrintButton: React.FC<PrintButtonProps> = ({ yearMonth }) => {
const t = useTranslations("home-page.month-card");
const handlePrintClick = () => {
window.open(`/print/${yearMonth.year}/${yearMonth.month}`, '_blank');
};
return (
<div className="card card-compact card-bordered bg-base-100 shadow-s my-1">
<button
className="card-body tooltip self-center cursor-pointer"
onClick={handlePrintClick}
data-tip={t("print-codes-tooltip")}
>
<span className='flex self-center mr-[-3em]'>
<PrinterIcon className="h-[1em] w-[1em] cursor-pointer text-4xl" />
<span className="ml-1 mt-[.4em] text-xs text-left leading-[1.2em] w-[6em]">{t("print-codes-label")}</span>
</span>
</button>
</div>
);
};