Enhance filter panel with time range filter, search, and UI improvements#11
Merged
Enhance filter panel with time range filter, search, and UI improvements#11
Conversation
- Add time range filter (start/end datetime-local inputs) for both rosout and diagnostics, with timezone-aware conversion on toggle - Add export option to ignore time filter (checkbox with tooltip) - Add inline search for node/name filter lists with bulk select/deselect - Reorganize filter layout: merge message type radio with input field, move time range to bottom, expand nodes/names/search to full width - Improve display limit buttons as segmented control with min-width - Add filterDiagnostics startTime/endTime support in rosbagUtils - Add i18n keys (en/ja) for all new UI elements Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Update text input selectors to use placeholder attribute to distinguish keyword/regex input from the new node search input - Update preview limit button assertions from '1000' to '1,000' to match toLocaleString() formatted labels Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Remove "Coming Soon" label and add link to GitHub Releases page. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Move pre-built download to Option 2 for better discoverability. Mention fully offline capability and use generic HTML file reference. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
c2fe8b0 to
7eb3e42
Compare
Resolve conflicts: replace SQLite export with Parquet while keeping time-filter-ignore export logic using exportData variable. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
New tests: - Time range filter narrows displayed messages - Fill data range button populates start/end inputs - Node search + select shown / deselect shown - Export with "Ignore time filter" includes all rows - Timezone toggle preserves time filter values Fixes: - Fix Fill data range to use floor/ceil for sub-second timestamps - Set timezoneId: 'UTC' in playwright config for consistent tests - Use exact: true for select/deselect shown button selectors Also removes numbered prefixes from all e2e test names across all spec files while keeping section separator comments. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
2444d87 to
b94be85
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Changes
src/App.tsx— New state/helpers for time filter and list search, filter UI reorganization, export logic with time-filter-ignore optionsrc/rosbagUtils.ts— AddstartTime/endTimeparameters tofilterDiagnostics(matching existingfilterMessagessupport)src/i18n.ts— New translation keys (en/ja) for time range, list search, and export optionsTest plan
🤖 Generated with Claude Code