support setting timezone type in reconciliation statement dialog / page

This commit is contained in:
MaysWind
2026-01-04 00:36:00 +08:00
parent 43154832b6
commit 43bc04012d
10 changed files with 213 additions and 124 deletions
+17 -1
View File
@@ -2,6 +2,18 @@ import type { TypeAndName, TypeAndDisplayName } from '@/core/base.ts';
import type { CalendarType, ChineseCalendarLocaleData, PersianCalendarLocaleData } from '@/core/calendar.ts';
import type { NumeralSystem } from '@/core/numeral.ts';
export type DateTimeUnit = 'years' | 'months' | 'days' | 'hours' | 'minutes' | 'seconds';
export interface DateTimeSetObject {
year?: number;
month?: number;
dayOfMonth?: number;
hour?: number;
minute?: number;
second?: number;
millisecond?: number;
}
export interface DateTime {
getUnixTime(): number;
getLocalizedCalendarYear(options: DateTimeFormatOptions): string;
@@ -28,7 +40,11 @@ export interface DateTime {
getSecond(): number;
getDisplayAMPM(options: DateTimeFormatOptions): string;
getTimezoneUtcOffsetMinutes(): number;
getDateTimeAfterDays(day: number): DateTime;
setTimezoneByUtcOffsetMinutes(offsetMinutes: number): DateTime;
setTimezoneByIANATimeZoneName(zoneName: string): DateTime;
add(amount: number, unit: DateTimeUnit): DateTime;
subtract(amount: number, unit: DateTimeUnit): DateTime;
set(value: DateTimeSetObject): DateTime;
toGregorianCalendarYearMonthDay(): YearMonthDay;
toGregorianCalendarYear0BasedMonth(): Year0BasedMonth;
format(format: string, options: DateTimeFormatOptions): string;