From 2dc698c09a32d291ea83296f2e81edf182bb6de0 Mon Sep 17 00:00:00 2001 From: Joris Date: Sun, 12 Feb 2023 12:35:09 +0100 Subject: Fix double map child The rx-base was not added at the right location, and not cleaned up. --- src/example.ts | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'src/example.ts') diff --git a/src/example.ts b/src/example.ts index c23a4eb..360bf8b 100644 --- a/src/example.ts +++ b/src/example.ts @@ -126,9 +126,44 @@ const chrono = })) ]) +const doubleMapChild = + withVar(true, (isEven, updateIsEven) => + withVar('', (search, updateSearch) => { + const books = [...Array(50).keys()] + + const filteredBooks = isEven.flatMap(f => search.map(s => + books.filter(b => + (f ? b % 2 === 0 : b % 2 === 1) && + (s === '' || b.toString().includes(s))))) + + return [ + checkboxComponent({ + label: 'Even?', + isChecked: isEven, + onCheck: checked => updateIsEven(_ => checked) + }), + h( + 'input', + { oninput: (event: Event) => updateSearch(_ => (event.target as HTMLInputElement).value) + , style: 'margin-left: 1rem' + } + ), + h('hr'), + isEven.map(b => + b + ? filteredBooks.map(xs => `isEven (${xs.length})`) + : filteredBooks.map(xs => `isOdd (${xs.length})`) + ), + h('hr'), + filteredBooks.map(bs => bs.map(b => h('div', b))), + h('hr') + ] + }) + ) + const view = h('main', h('h1', 'Rx'), - chrono + doubleMapChild ) mount(view) -- cgit v1.2.3