chore: atualizar dependências e aplicar formatação
- Atualizar package.json e pnpm-lock.yaml - Aplicar formatação Biome em widgets do dashboard - Pequenos ajustes de estilo em componentes diversos Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -59,7 +59,7 @@
|
||||
--sidebar-ring: oklch(69.18% 0.18855 38.353);
|
||||
|
||||
/* Layout */
|
||||
--radius: 1rem;
|
||||
--radius: 0.8rem;
|
||||
|
||||
/* Shadows - warm tinted for cohesion */
|
||||
--shadow-2xs: 0 1px 2px 0px oklch(35% 0.02 45 / 0.04);
|
||||
|
||||
@@ -172,7 +172,7 @@ export function BoletosWidget({ boletos }: BoletosWidgetProps) {
|
||||
className="flex items-center justify-between border-b border-dashed last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-3 py-2">
|
||||
<EstabelecimentoLogo name={boleto.name} size={38} />
|
||||
<EstabelecimentoLogo name={boleto.name} size={37} />
|
||||
|
||||
<div className="min-w-0">
|
||||
<span className="block truncate text-sm font-medium text-foreground">
|
||||
|
||||
@@ -259,13 +259,13 @@ export function InvoicesWidget({ invoices }: InvoicesWidgetProps) {
|
||||
className="flex items-center justify-between border-b border-dashed last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-2 py-2">
|
||||
<div className="flex size-10 shrink-0 items-center justify-center overflow-hidden rounded-lg">
|
||||
<div className="flex size-9.5 shrink-0 items-center justify-center overflow-hidden rounded-lg">
|
||||
{logo ? (
|
||||
<Image
|
||||
src={logo}
|
||||
alt={`Logo do cartão ${invoice.cardName}`}
|
||||
width={44}
|
||||
height={44}
|
||||
width={36}
|
||||
height={36}
|
||||
className="h-full w-full object-contain"
|
||||
/>
|
||||
) : (
|
||||
|
||||
@@ -15,7 +15,7 @@ type PaymentConditionsWidgetProps = {
|
||||
};
|
||||
|
||||
const CONDITION_ICON_CLASSES =
|
||||
"flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground";
|
||||
"flex size-9.5 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground";
|
||||
|
||||
const CONDITION_ICONS: Record<string, ReactNode> = {
|
||||
"À vista": <RiCheckLine className="size-5" aria-hidden />,
|
||||
|
||||
@@ -10,7 +10,7 @@ type PaymentMethodsWidgetProps = {
|
||||
};
|
||||
|
||||
const ICON_WRAPPER_CLASS =
|
||||
"flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground";
|
||||
"flex size-9.5 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground";
|
||||
|
||||
const formatPercentage = (value: number) =>
|
||||
new Intl.NumberFormat("pt-BR", {
|
||||
|
||||
@@ -162,7 +162,7 @@ export function PurchasesByCategoryWidget({
|
||||
className="flex items-center justify-between gap-3 border-b border-dashed py-2 last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-3">
|
||||
<EstabelecimentoLogo name={transaction.name} size={38} />
|
||||
<EstabelecimentoLogo name={transaction.name} size={37} />
|
||||
|
||||
<div className="min-w-0">
|
||||
<p className="truncate text-sm font-medium text-foreground">
|
||||
|
||||
@@ -41,7 +41,7 @@ export function RecentTransactionsWidget({
|
||||
className="flex items-center justify-between gap-3 border-b border-dashed py-2 last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-3">
|
||||
<EstabelecimentoLogo name={transaction.name} size={38} />
|
||||
<EstabelecimentoLogo name={transaction.name} size={37} />
|
||||
|
||||
<div className="min-w-0">
|
||||
<p className="truncate text-sm font-medium text-foreground">
|
||||
|
||||
@@ -39,7 +39,7 @@ export function RecurringExpensesWidget({
|
||||
key={expense.id}
|
||||
className="flex items-center gap-3 border-b border-dashed pb-2 last:border-b-0 last:pb-0"
|
||||
>
|
||||
<EstabelecimentoLogo name={expense.name} size={38} />
|
||||
<EstabelecimentoLogo name={expense.name} size={37} />
|
||||
|
||||
<div className="min-w-0 flex-1">
|
||||
<div className="flex items-center justify-between">
|
||||
|
||||
@@ -35,7 +35,7 @@ export function TopEstablishmentsWidget({
|
||||
className="flex items-center justify-between gap-3 border-b border-dashed py-2 last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-3">
|
||||
<EstabelecimentoLogo name={establishment.name} size={38} />
|
||||
<EstabelecimentoLogo name={establishment.name} size={37} />
|
||||
|
||||
<div className="min-w-0">
|
||||
<p className="truncate text-sm font-medium text-foreground">
|
||||
|
||||
@@ -114,7 +114,7 @@ export function TopExpensesWidget({
|
||||
className="flex items-center justify-between gap-3 border-b border-dashed py-2 last:border-b-0 last:pb-0"
|
||||
>
|
||||
<div className="flex min-w-0 flex-1 items-center gap-3">
|
||||
<EstabelecimentoLogo name={expense.name} size={38} />
|
||||
<EstabelecimentoLogo name={expense.name} size={37} />
|
||||
|
||||
<div className="min-w-0">
|
||||
<p className="truncate text-sm font-medium text-foreground">
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
type DotIconProps = {
|
||||
bg_dot: string;
|
||||
color: string;
|
||||
};
|
||||
|
||||
export default function DotIcon({ bg_dot }: DotIconProps) {
|
||||
export default function DotIcon({ color }: DotIconProps) {
|
||||
return (
|
||||
<span>
|
||||
<span className={`${bg_dot} flex size-2 rounded-full`}></span>
|
||||
<span className={`${color} flex size-2 rounded-full`}></span>
|
||||
</span>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -286,7 +286,7 @@ export function InvoiceSummaryCard({
|
||||
value={
|
||||
cardStatus ? (
|
||||
<div className="flex items-center gap-1.5">
|
||||
<DotIcon bg_dot={getCardStatusDotColor(cardStatus)} />
|
||||
<DotIcon color={getCardStatusDotColor(cardStatus)} />
|
||||
<span className="truncate">{cardStatus}</span>
|
||||
</div>
|
||||
) : (
|
||||
|
||||
@@ -56,7 +56,7 @@ export function TransactionTypeSelectContent({ label }: { label: string }) {
|
||||
|
||||
return (
|
||||
<span className="flex items-center gap-2">
|
||||
<DotIcon bg_dot={colorMap[label]} />
|
||||
<DotIcon color={colorMap[label]} />
|
||||
<span>{label}</span>
|
||||
</span>
|
||||
);
|
||||
|
||||
@@ -56,7 +56,7 @@ export function EstabelecimentoLogo({
|
||||
return (
|
||||
<div
|
||||
className={cn(
|
||||
"flex items-center justify-center rounded-md text-white font-medium shrink-0 ",
|
||||
"flex items-center justify-center rounded-lg text-white font-bold shrink-0",
|
||||
colorClass,
|
||||
className,
|
||||
)}
|
||||
|
||||
@@ -75,7 +75,7 @@ export function EstablishmentsList({
|
||||
<div className="flex items-center justify-between gap-3">
|
||||
<div className="flex min-w-0 flex-1 items-center gap-2">
|
||||
{/* Rank number - same size as icon containers */}
|
||||
<div className="flex size-10 shrink-0 items-center justify-center overflow-hidden rounded-lg bg-muted">
|
||||
<div className="flex size-9 shrink-0 items-center justify-center overflow-hidden rounded-lg bg-muted">
|
||||
<span className="text-sm font-semibold text-muted-foreground">
|
||||
{index + 1}
|
||||
</span>
|
||||
|
||||
@@ -56,7 +56,7 @@ export function TypeBadge({ type, className }: TypeBadgeProps) {
|
||||
className,
|
||||
)}
|
||||
>
|
||||
<DotIcon bg_dot={dotColor} />
|
||||
<DotIcon color={dotColor} />
|
||||
{label}
|
||||
</Badge>
|
||||
);
|
||||
|
||||
22
package.json
22
package.json
@@ -27,13 +27,13 @@
|
||||
"docker:rebuild": "docker compose up --build --force-recreate"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ai-sdk/anthropic": "^3.0.23",
|
||||
"@ai-sdk/google": "^3.0.13",
|
||||
"@ai-sdk/openai": "^3.0.19",
|
||||
"@ai-sdk/anthropic": "^3.0.31",
|
||||
"@ai-sdk/google": "^3.0.18",
|
||||
"@ai-sdk/openai": "^3.0.23",
|
||||
"@dnd-kit/core": "^6.3.1",
|
||||
"@dnd-kit/sortable": "^10.0.0",
|
||||
"@dnd-kit/utilities": "^3.2.2",
|
||||
"@openrouter/ai-sdk-provider": "^2.0.2",
|
||||
"@openrouter/ai-sdk-provider": "^2.1.1",
|
||||
"@radix-ui/react-accordion": "^1.2.12",
|
||||
"@radix-ui/react-alert-dialog": "1.1.15",
|
||||
"@radix-ui/react-avatar": "1.1.11",
|
||||
@@ -55,13 +55,13 @@
|
||||
"@radix-ui/react-toggle": "1.1.10",
|
||||
"@radix-ui/react-toggle-group": "1.1.11",
|
||||
"@radix-ui/react-tooltip": "1.2.8",
|
||||
"@remixicon/react": "4.8.0",
|
||||
"@remixicon/react": "4.9.0",
|
||||
"@tanstack/react-table": "8.21.3",
|
||||
"@vercel/analytics": "^1.6.1",
|
||||
"@vercel/speed-insights": "^1.3.1",
|
||||
"ai": "^6.0.50",
|
||||
"ai": "^6.0.62",
|
||||
"babel-plugin-react-compiler": "^1.0.0",
|
||||
"better-auth": "1.4.17",
|
||||
"better-auth": "1.4.18",
|
||||
"class-variance-authority": "0.7.1",
|
||||
"clsx": "2.1.1",
|
||||
"cmdk": "^1.1.1",
|
||||
@@ -70,14 +70,14 @@
|
||||
"jspdf": "^4.0.0",
|
||||
"jspdf-autotable": "^5.0.7",
|
||||
"motion": "^12.29.2",
|
||||
"next": "16.1.5",
|
||||
"next": "16.1.6",
|
||||
"next-themes": "0.4.6",
|
||||
"pg": "8.17.2",
|
||||
"react": "19.2.4",
|
||||
"react-day-picker": "^9.13.0",
|
||||
"react-dom": "19.2.4",
|
||||
"recharts": "3.7.0",
|
||||
"resend": "^6.9.0",
|
||||
"resend": "^6.9.1",
|
||||
"sonner": "2.0.7",
|
||||
"tailwind-merge": "3.4.0",
|
||||
"vaul": "1.1.2",
|
||||
@@ -88,11 +88,11 @@
|
||||
"@biomejs/biome": "2.3.13",
|
||||
"@tailwindcss/postcss": "4.1.18",
|
||||
"@types/d3-array": "^3.2.2",
|
||||
"@types/node": "25.0.10",
|
||||
"@types/node": "25.1.0",
|
||||
"@types/pg": "^8.16.0",
|
||||
"@types/react": "19.2.10",
|
||||
"@types/react-dom": "19.2.3",
|
||||
"baseline-browser-mapping": "^2.9.18",
|
||||
"baseline-browser-mapping": "^2.9.19",
|
||||
"depcheck": "^1.4.7",
|
||||
"dotenv": "^17.2.3",
|
||||
"drizzle-kit": "0.31.8",
|
||||
|
||||
469
pnpm-lock.yaml
generated
469
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user