Moved to Angular v20 and Tailwind v4 plus all related dependencies

Renamed Docker directory.

Also serving static files from FastAPI.
This commit is contained in:
tanshu committed 2025-06-26 06:46:17 +00:00
1 parent 05b395af00
commit cb2b650375
253 files changed
+8626 -1995

No files matched your search

+31 -33
View File
@@ -1,33 +1,36 @@
import { SelectionModel } from '@angular/cdk/collections';
import { AsyncPipe, CurrencyPipe } from '@angular/common';
import { AfterViewInit, Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';
import { AfterViewInit, Component, ElementRef, HostListener, inject, OnInit, ViewChild } from '@angular/core';
import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
import { MatAutocompleteSelectedEvent, MatAutocompleteTrigger, MatAutocomplete } from '@angular/material/autocomplete';
import { MatIconButton, MatButton } from '@angular/material/button';
import { MatCard, MatCardHeader, MatCardTitleGroup, MatCardTitle, MatCardContent } from '@angular/material/card';
import { MatAutocomplete, MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete';
import { MatButton, MatIconButton } from '@angular/material/button';
import { MatCard, MatCardContent, MatCardHeader, MatCardTitle, MatCardTitleGroup } from '@angular/material/card';
import { MatCheckbox } from '@angular/material/checkbox';
import { MatChip, MatChipSet } from '@angular/material/chips';
import { MatOption } from '@angular/material/core';
import { MatDatepickerInput, MatDatepickerToggle, MatDatepicker } from '@angular/material/datepicker';
import { MatDatepicker, MatDatepickerInput, MatDatepickerToggle } from '@angular/material/datepicker';
import { MatDialog } from '@angular/material/dialog';
import { MatFormField, MatLabel, MatSuffix } from '@angular/material/form-field';
import { MatIcon } from '@angular/material/icon';
import { MatInput } from '@angular/material/input';
import { MatPaginator } from '@angular/material/paginator';
import { MatSelect } from '@angular/material/select';
import { MatSort, MatSortHeader } from '@angular/material/sort';
import { MatCheckbox } from '@angular/material/checkbox';
import {
MatTable,
MatColumnDef,
MatHeaderCellDef,
MatHeaderCell,
MatCellDef,
MatCell,
MatFooterCellDef,
MatCellDef,
MatColumnDef,
MatFooterCell,
MatHeaderRowDef,
MatHeaderRow,
MatRowDef,
MatRow,
MatFooterRowDef,
MatFooterCellDef,
MatFooterRow,
MatFooterRowDef,
MatHeaderCell,
MatHeaderCellDef,
MatHeaderRow,
MatHeaderRowDef,
MatRow,
MatRowDef,
MatTable,
} from '@angular/material/table';
import { ActivatedRoute, Router, RouterLink } from '@angular/router';
import moment from 'moment';
@@ -39,22 +42,17 @@ import { AccountService } from '../core/account.service';
import { AccountingPipe } from '../shared/accounting.pipe';
import { ClearPipe } from '../shared/clear.pipe';
import { ToCsvService } from '../shared/to-csv.service';
import { TagDialogComponent } from '../tag-dialog/tag-dialog.component';
import { Tag } from '../tag/tag';
import { TagService } from '../tag/tag.service';
import { Ledger } from './ledger';
import { LedgerDataSource } from './ledger-datasource';
import { MatSelect } from '@angular/material/select';
import { MatChip, MatChipSet } from '@angular/material/chips';
import { LedgerItem } from './ledger-item';
import { MatDialog } from '@angular/material/dialog';
import { TagService } from '../tag/tag.service';
import { Tag } from '../tag/tag';
import { TagDialogComponent } from '../tag-dialog/tag-dialog.component';
@Component({
selector: 'app-ledger',
templateUrl: './ledger.component.html',
styleUrls: ['./ledger.component.css'],
standalone: true,
imports: [
MatCard,
MatCardHeader,
@@ -104,6 +102,13 @@ import { TagDialogComponent } from '../tag-dialog/tag-dialog.component';
],
})
export class LedgerComponent implements OnInit, AfterViewInit {
private route = inject(ActivatedRoute);
private router = inject(Router);
private dialog = inject(MatDialog);
private toCsv = inject(ToCsvService);
private accountSer = inject(AccountService);
private tagSer = inject(TagService);
@ViewChild('accountElement', { static: true }) accountElement!: ElementRef<HTMLInputElement>;
@ViewChild('startDateElement', { static: true }) startDate!: ElementRef<HTMLInputElement>;
@ViewChild(MatPaginator, { static: true }) paginator!: MatPaginator;
@@ -136,14 +141,7 @@ export class LedgerComponent implements OnInit, AfterViewInit {
this.startDate.nativeElement.select();
}
constructor(
private route: ActivatedRoute,
private router: Router,
private dialog: MatDialog,
private toCsv: ToCsvService,
private accountSer: AccountService,
private tagSer: TagService,
) {
constructor() {
this.form = new FormGroup({
startDate: new FormControl(new Date(), { nonNullable: true }),
finishDate: new FormControl(new Date(), { nonNullable: true }),