summaryrefslogtreecommitdiff
path: root/lang/gjs/src/_astal.ts
diff options
context:
space:
mode:
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