SEV-392: combobox setOptions() for reactive parent-fed option lists

Passing a parent component's reactive array into the nested combobox x-data
needs x-effect="setOptions(vpicMakes)" — a plain closure over the parent
scope doesn't track Alpine updates. Falls back to config.options for static
lists. 18/18 tests pass.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Bastian de Byl
2026-06-10 19:09:00 -04:00
parent 6789da1574
commit a943dd0ebd
2 changed files with 23 additions and 1 deletions
+10
View File
@@ -54,3 +54,13 @@ test('empty query lists all options (capped) (SEV-392)', () => {
c.query = '';
assert.equal(c.filtered.length, 3);
});
test('setOptions feeds reactive option lists (SEV-392)', () => {
const c = comboboxData({ allowFree: true });
c.setOptions([]); // async source not loaded yet
assert.equal(c.filtered.length, 0);
c.setOptions(['BMW', 'Tesla']); // makes arrive
assert.equal(c.filtered.length, 2);
c.query = 'tes';
assert.deepEqual(c.filtered.map((o) => o.value), ['Tesla']);
});