Files
tabungin/apps/api/dist/wallets/wallets.controller.d.ts
dwindown 49d60676d0 feat: Add FAB with asset price update, mobile optimizations, and localized financial trend
- Add Floating Action Button (FAB) with 3 quick actions
- Implement Asset Price Update dialog for bulk price updates
- Add bulk price update API endpoint with transaction support
- Optimize multiselect, calendar, and dropdown options for mobile (44px touch targets)
- Add custom date range popover to save space in Overview header
- Localize number format suffixes (k/m/b for EN, rb/jt/m for ID)
- Localize date format in Financial Trend (Oct 8 vs 8 Okt)
- Fix negative values in trend line chart (domain auto)
- Improve Asset Price Update dialog layout (compact horizontal)
- Add mobile-optimized calendar with responsive cells
- Fix FAB overlay and close button position
- Add translations for FAB and asset price updates
2025-10-12 23:30:54 +07:00

118 lines
4.1 KiB
TypeScript

import { WalletsService } from './wallets.service';
import { TransactionsService } from '../transactions/transactions.service';
interface RequestWithUser {
user: {
userId: string;
};
}
export declare class WalletsController {
private readonly wallets;
private readonly transactions;
constructor(wallets: WalletsService, transactions: TransactionsService);
list(req: RequestWithUser): import("@prisma/client").Prisma.PrismaPromise<{
id: string;
userId: string;
createdAt: Date;
updatedAt: Date;
kind: string;
name: string;
currency: string | null;
unit: string | null;
initialAmount: import("@prisma/client/runtime/library").Decimal | null;
pricePerUnit: import("@prisma/client/runtime/library").Decimal | null;
deletedAt: Date | null;
}[]>;
getAllTransactions(req: RequestWithUser): Promise<{
id: string;
userId: string;
createdAt: Date;
walletId: string;
date: Date;
amount: import("@prisma/client/runtime/library").Decimal;
direction: string;
category: string | null;
memo: string | null;
recurrenceId: string | null;
}[]>;
create(req: RequestWithUser, body: {
name: string;
currency?: string;
kind?: 'money' | 'asset';
unit?: string;
initialAmount?: number;
pricePerUnit?: number;
}): import("@prisma/client").Prisma.Prisma__WalletClient<{
id: string;
userId: string;
createdAt: Date;
updatedAt: Date;
kind: string;
name: string;
currency: string | null;
unit: string | null;
initialAmount: import("@prisma/client/runtime/library").Decimal | null;
pricePerUnit: import("@prisma/client/runtime/library").Decimal | null;
deletedAt: Date | null;
}, never, import("@prisma/client/runtime/library").DefaultArgs, import("@prisma/client").Prisma.PrismaClientOptions> | {
error: string;
};
update(req: RequestWithUser, id: string, body: {
name?: string;
currency?: string;
kind?: 'money' | 'asset';
unit?: string;
initialAmount?: number;
pricePerUnit?: number;
}): import("@prisma/client").Prisma.Prisma__WalletClient<{
id: string;
userId: string;
createdAt: Date;
updatedAt: Date;
kind: string;
name: string;
currency: string | null;
unit: string | null;
initialAmount: import("@prisma/client/runtime/library").Decimal | null;
pricePerUnit: import("@prisma/client/runtime/library").Decimal | null;
deletedAt: Date | null;
}, never, import("@prisma/client/runtime/library").DefaultArgs, import("@prisma/client").Prisma.PrismaClientOptions>;
bulkUpdatePrices(req: RequestWithUser, body: {
updates: Array<{
walletId: string;
pricePerUnit: number;
}>;
}): Promise<{
success: boolean;
updated: number;
wallets: {
id: string;
userId: string;
createdAt: Date;
updatedAt: Date;
kind: string;
name: string;
currency: string | null;
unit: string | null;
initialAmount: import("@prisma/client/runtime/library").Decimal | null;
pricePerUnit: import("@prisma/client/runtime/library").Decimal | null;
deletedAt: Date | null;
}[];
}> | {
error: string;
};
delete(req: RequestWithUser, id: string): import("@prisma/client").Prisma.Prisma__WalletClient<{
id: string;
userId: string;
createdAt: Date;
updatedAt: Date;
kind: string;
name: string;
currency: string | null;
unit: string | null;
initialAmount: import("@prisma/client/runtime/library").Decimal | null;
pricePerUnit: import("@prisma/client/runtime/library").Decimal | null;
deletedAt: Date | null;
}, never, import("@prisma/client/runtime/library").DefaultArgs, import("@prisma/client").Prisma.PrismaClientOptions>;
}
export {};