diff options
author | Aylur <[email protected]> | 2024-12-20 22:27:25 +0100 |
---|---|---|
committer | Aylur <[email protected]> | 2024-12-20 22:27:25 +0100 |
commit | 53bfc0929d62263547c1282b388040b9616a377e (patch) | |
tree | 2b2c776ecc57209179203eb7b8638ee7502a286e /lang/gjs/src/_astal.ts | |
parent | 2f09ed83386b334f0dfb7f376b99739b15e49fc9 (diff) | |
parent | d7d11b341db85ce9768fa06b6f225d713621ec56 (diff) |
Merge branch 'main' into feat/jsx-gtk4
Diffstat (limited to 'lang/gjs/src/_astal.ts')
-rw-r--r-- | lang/gjs/src/_astal.ts | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lang/gjs/src/_astal.ts b/lang/gjs/src/_astal.ts index cfd8c9f..6f3285b 100644 --- a/lang/gjs/src/_astal.ts +++ b/lang/gjs/src/_astal.ts @@ -65,8 +65,16 @@ export function hook<Widget extends Connectable>( export function construct<Widget extends Connectable & { [setChildren]: (children: any[]) => void }>(widget: Widget, config: any) { const { setup, child, children = [], ...props } = config - if (child) + if (child) { children.unshift(child) + } + + // remove undefined values + for (const [key, value] of Object.entries(props)) { + if (value === undefined) { + delete props[key] + } + } // collect bindings const bindings: Array<[string, Binding<any>]> = Object |