freezmo/components
Martin Dvorak 9d6ef90f02 Keep the library header steady across tabs; simplify the empty states
Header & action bar
- Import JSON no longer disappears on the Homework tab: it sits directly
  under the "Your icebox" header/subtitle, above the tab switcher, on every
  tab — so switching pools no longer shifts the layout or hides actions. It
  is one secondary button at all sizes now, not a quiet link when empty.
- The decks-only "Homework Solver" header action is gone; the homework tab's
  empty-state CTA and the drawer cover starting a new solve.

Empty states
- Dropped the "Using your own Ollama models — check the connection in
  Settings." line (and its two dictionary keys) everywhere.
- Both tabs share one structure: ice icon -> heading -> short description ->
  primary CTA button, starting at the same height:
    Study Decks: "No decks yet" -> "Freeze a page of notes into flashcards
    and quizzes." -> "Create study deck"
    Homework: "No homework yet" -> "Solved assignments and step-by-step
    guides show up here." -> "Solve homework"
- CTA labels read as actions on the standardized nouns; removed the now
  unused actionStudyDeck/actionHomework keys.

Tabs
- Link segments are 44px tall at every breakpoint (min-height in the base
  .segmented > a rule).

Service worker: freezmo-v11.

Verified: library-consistency suite 49/49 (Import visible with a fixed
position on both tabs, no Ollama text, empty states at the same y, primary
ice CTA buttons >=44px, deep links, deletion, redirects, desktop, 360px, axe
en+cs light+dark), mobile 51/51, i18n 27/27, desktop regression 74/74.
Lint + build clean.
2026-10-08 21:50:18 +00:00
..
activities Add “Make my homework”, and finish the mobile polish pass 2026-10-08 18:30:33 +00:00
homework Separate Study Decks and Homework in the library; drop the /create mode switch 2026-10-08 21:26:08 +00:00
ApiKeyGate.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
AppHeader.tsx Mobile UI pass: sheet swipe, ice-scene layering, contrast, touch targets 2026-10-08 17:37:51 +00:00
DeckCard.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
FolderBar.tsx Mobile UI pass: sheet swipe, ice-scene layering, contrast, touch targets 2026-10-08 17:37:51 +00:00
HomeworkCard.tsx Separate Study Decks and Homework in the library; drop the /create mode switch 2026-10-08 21:26:08 +00:00
IceBackdrop.tsx Frosted ice glass restyle 2026-10-08 10:11:55 +00:00
icons.tsx Fix the iOS install sheet: exact Safari flow, chips, iOS blue, layout 2026-10-07 08:49:32 +00:00
InstallSheet.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
LibraryScreen.tsx Keep the library header steady across tabs; simplify the empty states 2026-10-08 21:50:18 +00:00
ResultsScreen.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
ServiceWorkerRegistrar.tsx Freezmo: self-hosted notes-to-activities study app 2026-10-06 20:56:55 +00:00
SettingsDialog.tsx Add “Make my homework”, and finish the mobile polish pass 2026-10-08 18:30:33 +00:00
Sidebar.tsx Add “Make my homework”, and finish the mobile polish pass 2026-10-08 18:30:33 +00:00
StudyFeed.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
TabBar.tsx Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
ThemeToggle.tsx Add “Make my homework”, and finish the mobile polish pass 2026-10-08 18:30:33 +00:00
ui.tsx Mobile UI pass: sheet swipe, ice-scene layering, contrast, touch targets 2026-10-08 17:37:51 +00:00
UploadScreen.tsx Separate Study Decks and Homework in the library; drop the /create mode switch 2026-10-08 21:26:08 +00:00