26 lines
641 B
TypeScript
26 lines
641 B
TypeScript
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
|
|
import { register } from 'astal';
|
|
import { Gtk, type ConstructProps } from 'astal/gtk4';
|
|
|
|
import astalify from './astalify';
|
|
|
|
|
|
type CalendarSignals = Record<`on${string}`, unknown[]> & {
|
|
onDaySelected: []
|
|
onNextMonth: []
|
|
onNextYear: []
|
|
onPrevMonth: []
|
|
onPrevYear: []
|
|
|
|
};
|
|
export type CalendarProps = ConstructProps<
|
|
Calendar,
|
|
Gtk.Calendar.ConstructorProps & { css: string },
|
|
CalendarSignals
|
|
>;
|
|
|
|
@register({ GTypeName: 'Calendar' })
|
|
export class Calendar extends astalify(Gtk.Calendar) {
|
|
constructor(props?: CalendarProps) { super(props as any); }
|
|
}
|