wrolpi/app/src/components
Roland 41b789bf8f
ui: FileBrowser.js and FilePreview.js off Semantic
Migrated both files onto the token-driven ./ui component library: Table,
Modal, Button/IconButton, Checkbox, Header, Panel, Progress, Placeholder,
Skeleton, ActionInput/TextInput, IconStack, Menu/ButtonGroup for the slicer
split-button, and native <img>/<form> in place of Semantic's Image/Form.

Notable adaptations:
- Semantic's per-row `disabled` styling (no visual equivalent in the new
  Table) is reproduced with inline opacity/pointer-events instead.
- DirectorySearch's autoFocus now passes straight through as a prop instead
  of a nested `input={{autoFocus}}` object, matching SearchBox's API.
- The responsive icon+label footer buttons keep a single Button and toggle
  children instead of swapping component type.
- FileBrowser.test.js: two upload-button assertions keyed off a literal
  Semantic `.green` class; broadened to also match on the icon, mirroring
  the sibling assertion already using that fallback.

Preserved as-is (reported, not fixed): getVideoPreviewModal's
`<Header as='h5'>{path['path']}</Header>` indexes a string with `['path']`,
which was already dead/undefined before this migration.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-30 13:11:01 -06:00
..
admin ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00
calculators ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
collections ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
inventory ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
ui ui: fix the cypress failures, and two real defects behind them 2026-07-30 12:54:24 -06:00
AddToPlaylist.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Apps.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Archive.js ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00
ArchivePreview.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
BulkTagModal.js Converting Theme.js to typescript so we can use shorthands like Card.Icon. 2025-12-07 12:41:10 -07:00
BulkTagModal.test.js Converting Theme.js to typescript so we can use shorthands like Card.Icon. 2025-12-07 12:41:10 -07:00
Calculators.js ui: fix the cypress failures, and two real defects behind them 2026-07-30 12:54:24 -06:00
CbzViewer.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Channels.cy.js Moving form fields. 2025-12-06 15:11:37 -07:00
Channels.js ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00
Common.js ui: fix the cypress failures, and two real defects behind them 2026-07-30 12:54:24 -06:00
Common.test.js ui: fix search suggestion selection, rendering, and clipping 2026-07-30 11:55:39 -06:00
DatesSelector.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
DesktopToggle.test.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Docs.js ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00
DomainEditPage.test.js app: handle form fetch failures without unhandled rejection 2026-07-16 19:40:28 -06:00
DomainsPage.test.js Reformatting code. 2025-12-06 15:11:37 -07:00
DomainTagging.test.js Reformatting code. 2025-12-06 15:11:37 -07:00
DonatePage.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
Download.cy.js Adding edit form for Scrape downloader. 2024-12-03 12:44:38 -07:00
Download.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
Download.test.js Reformatting code. 2025-12-06 15:11:37 -07:00
ErrorBoundary.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
FileBrowser.js ui: FileBrowser.js and FilePreview.js off Semantic 2026-07-30 13:11:01 -06:00
FileBrowser.test.js ui: FileBrowser.js and FilePreview.js off Semantic 2026-07-30 13:11:01 -06:00
FilePreview.js ui: FileBrowser.js and FilePreview.js off Semantic 2026-07-30 13:11:01 -06:00
FilePreview.test.js File preview: Open in Slicer button for STL/3MF files. 2026-07-05 13:31:40 -06:00
Files.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
Flasher.js Flasher: show connect error next to the detect button too 2026-07-02 17:26:45 -06:00
Flasher.test.js Address Greptile review: fix chip-id map (17=C5, 18=P4) and drop stale mock 2026-07-02 17:26:37 -06:00
Headline.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
HelpModal.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
KeyboardShortcutsProvider.js ui: fix the cypress failures, and two real defects behind them 2026-07-30 12:54:24 -06:00
Map.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
MapSearchView.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
MapViewer.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
Nav.js Moving OTP and Vin decoder to calculators to save Navbar space. Reworking calculators to purpose groups, and adding colors. 2026-07-01 18:48:06 -06:00
otp.js Move One-Time Pad encryption to the browser (#479) 2026-06-13 13:52:34 -06:00
otp.test.js Move One-Time Pad encryption to the browser (#479) 2026-06-13 13:52:34 -06:00
Placeholder.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Playlists.js ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00
Playlists.test.js Add ordered collections (playlists): polymorphic items + item API (#475) 2026-06-11 19:46:34 -06:00
Search.js ui: fix the cypress failures, and two real defects behind them 2026-07-30 12:54:24 -06:00
SearchFilterModal.test.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
Share.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
ShortcutHint.js Displaying cmd+k/ctrl+k global search keyboard shortcut suggestion. 2026-02-23 16:07:22 -07:00
SortableTable.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
Tables.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
TaggedDeleteConfirmModal.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
TaggedDeleteConfirmModal.test.js Models like Archive/Video/Doc can be deleted, even if they are tagged. User is shown a warning and must confirm deletion of tagged files. 2026-05-03 19:14:15 -06:00
Theme.test.js Fix "node.contains is not a function" crash on Modal/Popup triggers 2026-07-20 11:43:14 -06:00
Theme.tsx ui: media filtering is a per-theme setting, not a night-mode hardcode 2026-07-30 09:15:04 -06:00
ThemeProvider.test.js ui: media filtering is a per-theme setting, not a night-mode hardcode 2026-07-30 09:15:04 -06:00
ThemeSamplePage.js ui: nine leaf files off Semantic, and the components they needed 2026-07-30 11:55:39 -06:00
Upload.js Reformatting code. 2025-12-06 15:11:37 -07:00
Vars.js Restore "Most Views" download order 2026-07-07 16:34:50 -06:00
VideoPlayer.js videos: address review — tighten auto-caption detection 2026-07-16 18:29:18 -06:00
VideoPlayer.test.js videos: address review — tighten auto-caption detection 2026-07-16 18:29:18 -06:00
Videos.js ui: thirty-five files off Semantic, leaving fifteen 2026-07-30 12:54:24 -06:00
VncToggle.test.js ui: Common.js and thirteen more files off Semantic 2026-07-30 11:55:39 -06:00
Zim.js ui: keep the unmigrated pages' notifications working 2026-07-30 12:54:24 -06:00