summaryrefslogtreecommitdiff
path: root/lang/gjs/src/_astal.ts
diff options
context:
space:
mode:
authorAylur <[email protected]>2024-12-20 22:27:25 +0100
committerAylur <[email protected]>2024-12-20 22:27:25 +0100
commit53bfc0929d62263547c1282b388040b9616a377e (patch)
tree2b2c776ecc57209179203eb7b8638ee7502a286e /lang/gjs/src/_astal.ts
parent2f09ed83386b334f0dfb7f376b99739b15e49fc9 (diff)
parentd7d11b341db85ce9768fa06b6f225d713621ec56 (diff)
Merge branch 'main' into feat/jsx-gtk4
Diffstat (limited to 'lang/gjs/src/_astal.ts')
-rw-r--r--lang/gjs/src/_astal.ts10
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