feat(ui): add A1 dashboard and resumable onboarding

This commit is contained in:
cesnimda
2026-11-03 09:45:57 +01:00
parent 5e8a07d13e
commit c7d26d354c
61 changed files with 1522 additions and 23 deletions
@@ -42,7 +42,7 @@ test('mount and compaction do not save; completed resize keeps hidden geometry a
expect(change).toHaveBeenCalledTimes(1);
const saved = change.mock.calls[0][0];
expect(saved.revision).toBe(8);
expect(saved.widgets[1]).toMatchObject({ w: 8, h: 12, size: 'standard' });
expect(saved.widgets.find((widget: { id: string }) => widget.id === 'attention')).toMatchObject({ w: 8, h: 12, size: 'standard' });
expect(saved.widgets[2]).toEqual(layout.widgets[2]);
});
@@ -58,7 +58,7 @@ test('narrow viewport retains desktop geometry and keyboard height changes are b
fireEvent.change(screen.getByLabelText('Height for Today'), { target: { value: '25' } });
expect(change).not.toHaveBeenCalled();
fireEvent.change(screen.getByLabelText('Height for Today'), { target: { value: '12' } });
expect(change.mock.calls[0][0].widgets[1].h).toBe(12);
expect(change.mock.calls[0][0].widgets.find((widget: { id: string }) => widget.id === 'attention').h).toBe(12);
mockMeasuredWidth = 1200;
view.rerender(<I18nProvider><DashboardGrid layout={layout} editing disabled={false} onChange={change} childrenFor={widget => <p>{widget.id} content</p>} /></I18nProvider>);
expect(change).toHaveBeenCalledTimes(1);