diff options
author | Aylur <[email protected]> | 2024-06-04 23:05:41 +0200 |
---|---|---|
committer | Aylur <[email protected]> | 2024-06-04 23:05:41 +0200 |
commit | ca74fb7ad016f9ceee3756a973baa2d87a8aa1d6 (patch) | |
tree | d935caa5959c1344ce9e99ae3ca9be699426ad2a /node/src | |
parent | cfe3244e61207d4d761f2522546cb2bfb1c539f3 (diff) |
small fixes
* export Gdk
* flatten jsx children
Diffstat (limited to 'node/src')
-rw-r--r-- | node/src/application.ts | 2 | ||||
-rw-r--r-- | node/src/astalify.ts | 15 | ||||
-rw-r--r-- | node/src/imports.ts | 1 | ||||
-rw-r--r-- | node/src/index.ts | 2 |
4 files changed, 13 insertions, 7 deletions
diff --git a/node/src/application.ts b/node/src/application.ts index 552f2a9..13a999c 100644 --- a/node/src/application.ts +++ b/node/src/application.ts @@ -2,7 +2,7 @@ import gi from "node-gtk" const Astal = gi.require("Astal", "0.1") type RequestHandler = { - (request: string, res: (response: string) => void): void + (request: string, res: (response: any) => void): void } type Config = Partial<{ diff --git a/node/src/astalify.ts b/node/src/astalify.ts index bae6cc7..9f83e71 100644 --- a/node/src/astalify.ts +++ b/node/src/astalify.ts @@ -167,14 +167,19 @@ type BindableProps<T> = { [K in keyof T]: Binding<NonNullable<T[K]>> | T[K]; } +type SigHandler< + W extends { new(...args: any): Gtk.Widget }, + Args extends Array<unknown>, +> = ((self: Widget<W>, ...args: Args) => unknown) | string | string[] + export type ConstructProps< Self extends { new(...args: any[]): any }, Props = unknown, - Signals extends Record<string, Array<unknown>> = Record<string, []> -> = { - [Key in `on${string}`]: (self: Widget<Self>) => unknown -} & Partial<{ - [sig in keyof Signals]: (self: Widget<Self>, ...args: Signals[sig]) => unknown + Signals extends Record<`on${string}`, Array<unknown>> = Record<`on${string}`, any[]> +> = Partial<{ + [S in keyof Signals]: SigHandler<Self, Signals[S]> +}> & Partial<{ + [Key in `on${string}`]: SigHandler<Self, any[]> }> & BindableProps<Props & { className?: string css?: string diff --git a/node/src/imports.ts b/node/src/imports.ts index 47f582a..c2a9c71 100644 --- a/node/src/imports.ts +++ b/node/src/imports.ts @@ -2,6 +2,7 @@ import gi from "node-gtk" export { gi } export const Gtk = gi.require("Gtk", "3.0") +export const Gdk = gi.require("Gdk", "3.0") export const GLib = gi.require("GLib", "2.0") export const Gio = gi.require("Gio", "3.0") export const GObject = gi.require("GObject", "2.0") diff --git a/node/src/index.ts b/node/src/index.ts index 77fba88..5270469 100644 --- a/node/src/index.ts +++ b/node/src/index.ts @@ -6,4 +6,4 @@ export * as Widget from "./widgets.js" export { App } from "./application.js" // for convinience -export { Astal, Gtk, GLib, GObject, Gio, gi } from "./imports.js" +export { Astal, Gtk, Gdk, GLib, GObject, Gio, gi } from "./imports.js" |